Around 14 o'clock on Mar 29, Vladimir Dergachev wrote:

> > The Gatos code was a bit broken, working
> > for only depth 16 and depth 24 TrueColor visuals, but that was easy enough
> > to fix.
> 
> Keith, could you tell me what was broken in GATOS code ?

RADEONSetColorKey needs to convert a pixel value into a color, and then 
detect the valid bits in each component.  The GATOS code had two cases,
a 565 TrueColor case and an 888 TrueColor case.  Pseudo color, 555
TrueColor or any other visual class wouldn't get the right values.

Take a look at the patch I posted yesterday at

        http://keithp.com/~keithp/download/radeon_xv.diff

to see what that version of RADEONSetColorKey does.  I'm not completely 
happy with that code either; it assumes the LUT outputs will precisely 
match the X colormap values for non TrueColor visuals; I doubt that is 
correct in all cases.  I suspect that the code should check for 6-bit DACs
for Pseudo/Static visuals and also use the weights for Direct color.

More testing is clearly needed...

Keith Packard        XFree86 Core Team        Compaq Cambridge Research Lab


_______________________________________________
Xpert mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xpert

Reply via email to