[SDL list: This is more interesting blitting information]

Ok, I’v made a benchmark preogram to know if this worth :

In this bench, I’m using copy octet to octet myself in software mode.

8 bit video 256 cl :
windows fullscreen
640x480 63 fps 48 fps
800x600 40 fps 30 fps
1024x768 23 fps 17 fps

On a K6 @ 225 Mhz, 64 Mb of RAM, RagePro with 8 MB video RAM

What do you think about thoses results ?

These are pretty good results, and consistent with frame-rates I’ve been

Is it the best we can expect from my config in software ?

No, you can get quite a bit of speed increase by using (Uint32 *) copies
as opposed to (Uint8 *) copies.

Will it change a lot in hardware ?


Isn’t there any possibilities tro mix soft and hardware to get high speed and cool effects ?

Yes, many video cards are very fast at hardware accelerated surface blits.

What you do:
Create video mode with SDL_SWSURFACE
Do all your fancy 2-D effects
Call SDL_UpdateRects(blahblah)

If the hardware supports accelerated blits, then this will be optimally fast.

Why is the windows mode faster than fullscreen ?

It shouldn’t be. The only reason I can think of is if you are creating the
video mode in hardware. It’s much faster to write to surfaces in system
memory and do block copies to video memory. This is because when you write
individual pixels to video memory, each memory access goes out over the bus.

See ya!
-Sam Lantinga (slouken at–
Author of Simple DirectMedia Layer -