On Sat, Apr 06, 2002 at 10:00:28PM +0100, Philip Blundell wrote:
> On Fri, 2002-04-05 at 23:11, Philip Blundell wrote:
> > Thirdly, I was getting "FBIOPUT_VSCREENINFO: Invalid argument" errors. 
> > This seemed to be caused by my choice of 24bpp as my colour depth. 
> > Changing to 16bpp allowed the X server to start without error but the
> > screen was completely blank.  8bpp appeared to work OK.
> 
> Some additional data I just discovered: in the 16bpp case the problem
> seems to be that the colourmap is wrong, with most colours being mapped
> to black.  If I allow the machine to boot as far as the GDM login
> screen, a few fragments of the window are visible but incorrectly
> coloured.

Hmm, sounds like X isn't changing the Linux default console colours.

The way we handle the VIDC's 16bpp, we turn it into an RGB555
direct colourmap display:

           5            8
  R bits --/--> R LUT --/--> R DAC
           5            8
  G bits --/--> G LUT --/--> G DAC
           5            8
  B bits --/--> B LUT --/--> B DAC

(The X code agrees with my understanding that this is a direct colourmap
display - see programs/Xserver/dix/colormap.c::AllocColor in X11 code.)

PseudoColor tries to look up a pixel value Vrgb for colour (RGB)
but DirectColor tries to look up a value Vr in R map, Vg in G map,
Vb in B map.

I'd imagine that the XFree's fbcon layer isn't correctly handling
direct colourmapped displays.

True color on the other hand would be something like:

           8
  R bits --/--> R DAC
           8
  G bits --/--> G DAC
           8
  B bits --/--> B DAC

ie, no LUT.  In this case, X would not need to set up the palette.

_______________________________________________
http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm
http://www.arm.linux.org.uk/armlinux/mailinglists.php
Please visit the above addresses for information on this list.

Reply via email to