https://bugs.winehq.org/show_bug.cgi?id=19471
--- Comment #29 from joaopa jeremielapuree@yahoo.fr --- this one: (quoted from Paul Gofman's comment)
1. Missing text The game renders text by preparing a set of textures each containing a letter and then drawing those textures. The problem happens at the texture preparation stage. The textures have _B4G4R4A4 format. Application creates temporary surface (of _B5G5R5A1 format), uses IDirectDrawSurface4_GetDC() to get surface's DC, and then doing SetTextColor(dc, 0xffffffff), DrawTextA(...). After that the application creates _B4G4R4A4 surface, locks both and sets the new surface data looking at alpha component of original surface samples. The problem is that gdi draws the text with color 0. This originates from get_pixel_color() returning 0 color (gdi32/dibdrv/objects). The color stored in context is correct, but make_rgb_colorref() decides that color is palette index and returns 0. The fix in the attached patch fixes the problem in the game, but the fix is likely wrong, I did not test that much enough. I can guess the correct decision on whether to ignore palette flags check likely has something to do with the DIB having alpha channel rather than with the color value itself.