Wine Starcraft slowness

Vedran Rodic vedran at zrs.hr
Sat Mar 3 10:59:00 CST 2001


Nix N. Nix wrote:

> I am using the very latest: 20010216


Yes even the latest wine cvs is slow for DirectDraw with Xshm because every 
frame has to be converted from 8 bits per pixel to your higher display 
depth. This is especially noticable for continual full screen updates, like 
palette animation. 

I've been testing it somewhat, and I've found that 
X11DRV_DIB_SetImageBits_8 function in graphics/x11drv/dib.c may be the 
cause for general slowness together with the fact that the surface memory 
is copied again to 8 bit in DDraw Blit function. 

There is some asm in X11DRV_DIB_SetImageBits_8, but only for converting 8 
bpp to 16 bpp, nothing else, and on other cases it's uses "slow generic" 
method of XPutPixel. 

I don't yet have enough knowledge of gcc's inline asm to do this asm for 
other depths... Or maybe we should do depth conversion in DDraw Blt 
function? Or maybe implement DDraw in OpenGL?


Vedran Rodic




More information about the wine-users mailing list