Wine Starcraft slowness
Vedran Rodic
vedran at zrs.hr
Sun Mar 4 04:55:25 CST 2001
Vedran Rodic wrote:
> 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?
Ok... With some help from Ove Kaaven I figured out how to modify the inline
asm. I've sent the patch to wine-patches, and I'm hoping to see it included
in the next wine release.
Starcraft and Fallout are playable now without DGA:)
Between releases, you can download my patch from
http://renata.irb.hr/~vedran/wine-patches/ to see if it helps.
More information about the wine-users
mailing list