[Wine]256 colors (8bit) graphics not working
motub at planet.nl
Thu May 19 12:13:55 CDT 2005
Simon Kellett schreef:
> I am trying to get one of my kids Windows CDROM based programs to work
> under Linux/wine.
> With Google and man pages I got past some problems, but now the
> application starts and then exists saying that it want 256 colours to run
> best !! (It does the same on Win98 until you set the screen to 256
> colours, then it is OK. But with Linux I thought I could find a better
> solution !)
> I have X normally running at 24 bits, with 16 and 8 bit entries in my
> XFree86 config.
> Reading the docs I added this to my .wine/config
> "ScreenDepth" = "8"
> "PrivateColorMap" = "Y"
> I then run:
> export WINEDEBUG=+palette
> wine oshof32.exe
> Amongst the output I get:
> trace:palette:CreatePalette entries=20
> trace:palette:CreatePalette returning 0x44
> trace:palette:X11DRV_PALETTE_Init initializing palette manager...
> trace:palette:X11DRV_PALETTE_Init visual class 4 (1)
> trace:palette:GetPaletteEntries hpal = 0x44, count=20
> trace:palette:GetSystemPaletteEntries hdc=0x7c,start=0,count=0
> trace:palette:GetSystemPaletteEntries hdc=0x13a8,start=0,count=10
> trace:palette:GetSystemPaletteEntries hdc=0x13a8,start=246,count=10
> trace:palette:CreatePalette entries=256
> trace:palette:CreatePalette returning 0x13c0
> trace:palette:GDISelectPalette 0x13c4 0x13c0
> trace:palette:GDIRealizePalette 0x13c4...
> trace:palette:GDIRealizePalette realized 0 colors.
> To me "CreatePalette entries=256" looks good, but the "GDIRealizePalette
> realized 0 colors." does not (it appears 8 times).
> Any clues !!
> (I got another CDROM program to work OK: so the wine is basically setup
> (x86, Suse 9.1 + wine-20050419-0.1.i586.rpm)
> TIA, Simon
What video card do you have in there, and what drivers are you using to
provide 3D acceleration for it?
I ask because-- as far as I know, if Wine needs to switch color depth,
it should do that itself... but the proprietary ATI drivers only run at
24-bit color depth. So ATI cards using the fglrx drivers *can't* change
to 16 or 8 bit color depth, either manually or automatically.
If you do have an ATI card, you may be able to use different drivers,
depending on the model (if under the 9200, you can use the open-source
kernel drivers and the XFree MESA drivers, which afaik do allow all the
various color depths), or the qualities of the program (if it does not
need/use 3D hardware acceleration, you could probably run it with the
VESA drivers loaded). If above the 9200 and the application requires a
3D hardware accelerated graphics card, then you're kinda out of luck
afaik, until ATI gets their act together and allows their drivers to
work at other color depths than 24-bit, as only the fglrx drivers
provide 3D hardware acceleration for ATI cards above the 9200.
If you do not have an ATI card, you have a different issue, and
hopefully someone else can help you with it.
More information about the wine-users