http://bugs.winehq.org/show_bug.cgi?id=13860
--- Comment #16 from Alexander Dorofeyev alexd4@inbox.lv 2008-07-18 16:47:11 --- (In reply to comment #15)
You can "emulate" palette texture support by forcing the mesa swraster driver. Simply set LIBGL_ALWAYS_SOFTWARE environment var to something != 0. Seems to requiere a git mesa though.
I have a second older computer with geforce 2 mx, so I don't need to emulate.
I recompiled up-to-date git on that computer, and visual problems, at least, are gone. It must have been a result of other bugs that got fixed. I checked out where palette messages (and difference between with ext_paletted_texture and without) are coming from in wined3d. It's this call - IWineD3DSurface_PreLoad(pDestinationSurface) - in IWineD3DDevice_UpdateSurface. The difference is because lack of real 8bpp textures implies software conversion, and UpdateSurface falls back to software BltFast for converted surfaces and just copies in system memory. Later the game does set the palette, so further messages like that are avoided. So everything is right there AFAICT.
A few things can be done in device_load though. I'll send a patch in next few days with some fixes to helper function of device_load that can prevent that.