Recommendations for improving bitmap display speed



Hi,

I'm working on an emulator at the moment, and I need to update the display
50 times a second. I'm using a 16-colour indexed bitmap, and generating it is
no problem (I'm using LockBits/UnlockBits and writing the data directly using
a lookup table). However, when it comes to outputing the bitmap to my form,
it's taking a long time - for the native resolution image (256 x 192) it's
around 3ms, but when I double the size to 512 x 384 it takes 10ms, which is
unacceptable. I have around 20ms for the whole emulation per-frame, so I'd
like the display to be as quick as possible.

I'm using NearestNeighbor interpolation when outputing at anything but the
native size, and I've experimented with double buffering and only updating
selective regions, but without much success.

Would anyone be able to recommend any way to improve things? I'm especially
interested in solutions for fast scaling to 2x or 3x sizes. Also, would I get
better speed by switching to managed DirectX? What about stretch blitting
using the Windows API through Interop?

I can post my current code if needed, which is written in C# for .NET 1.1.

Thanks for your time.

Cheers,

Dave
.



Relevant Pages

  • Re: Create Demo Application for Emaulator
    ... generate emulator images for our devices. ... two-line character LCD, no graphical display. ... You can emulate the serial port I/O using the hosting PC's serial port in ... because desktop PC's use drive letters, C:, D:, etc. while Windows CE does ...
    (microsoft.public.windowsce.app.development)
  • Re: Supercard
    ... particularly easy to try in an emulator, but it could also be used ... with a hardware VGA adapter. ... Just conscious of the fact that there's not that much more raster ... even on a modern display. ...
    (comp.sys.apple2)
  • Re: Supercard
    ... particularly easy to try in an emulator, but it could also be used ... with a hardware VGA adapter. ... There would only be as many horizontal pixels as there are on an ... even on a modern display. ...
    (comp.sys.apple2)
  • Re: Why are women too dumb to program a computer???
    ... rather than in a terminal emulator or otherwise displaying a ... But the capabilities of the display hardware/drivers aren't the same. ... - either focussed on some facts on which we disagree (e.g. about ...
    (comp.lang.java.programmer)
  • Problem converting to 32ARGB bitmap
    ... I can display an 8bpp indexed bitmap correctly but when i tried to ... clone this data but i can't really as i am not allowed to create it i ... smae file but using 3 bytes for every color instead of one. ...
    (microsoft.public.dotnet.languages.csharp)