![Image](http://www.io.com/~greens/temp/snes_ntsc.png)
Raw performance when blitting a 256x223 15-bit BGR SNES source image to a 684x223 16-bit RGB memory buffer is 740 frames per second on an Athlon 3500+ at 2.0 GHz and 150 frames per second on a 10-year-old 400 MHz G3 PowerMac. Changing the image parameters like brightness and sharpness takes 1/16 second on the Athlon and 1/4 second on the G3. About 4.5 MB of RAM is needed to hold the data table. It supports low-res and high-res (512 pixels horizontally) SNES graphics modes.
snes_ntsc-0.1.0.zip
Feedback appreciated, since this has only been tested a bit by byuu in bsnes over the weekend (apparently there wasn't enough time to post a WIP build of it).
EDIT: Argh, a problem I thought I fixed has manifested again (faint patterns in solid colored areas). And I realized that the raw test image is in big-endian format, which will make it appear as junk on a little-endian machine. Working on fixes...
EDIT 2: OK, fixed two problems that were causing patterns in solid colored areas (rounding issues). Raw test image is now in little-endian format, so at least it'll work in the SDL demo on an x86 PC. Above archive has been updated; same filename.