SDL_pixel.c on src/video/x11 seems to force an 8 bit framebuffer to be pseudocolor. There are system where you can set it as a direct or true color . I attach inline a patch to that file. --- SDL_pixels.c.orig 2005-01-03 21:42:33.000000000 +0100 +++ SDL_pixels.c 2005-01-04 22:33:44.698156027 +0100 @@ -135,7 +135,8 @@ format->Amask = 0; break; - case 8: + default: + if ((bpp == 8) && !Rmask && !Gmask && !Bmask) { /* Create an empty 256 color palette */ format->palette = (SDL_Palette *)malloc( sizeof(SDL_Palette)); @@ -168,9 +169,7 @@ format->Gmask = 0; format->Bmask = 0; format->Amask = 0; - break; - - default: + } else { /* No palette, just packed pixel info */ format->palette = NULL; format->Rshift = 0; @@ -209,6 +208,7 @@ format->Gmask = Gmask; format->Bmask = Bmask; format->Amask = Amask; + } break; } /* Calculate some standard bitmasks, if necessary Reproducible: Always Steps to Reproduce: 1. 2. 3.
Please please please don't inline patches, but now that you have, don't worry about it.
e-mailed patch upstream, i'll see what they say about it
upstream got their stuff in gear and created a much more extensive patch ive added that to cvs for 1.2.8-r1, thanks :)
This patch breaks Aleph One! Guess we'll have to investigate who's done wrong.