Re: [PATCH] Framebuffer: Fix 16bpp colour output in Dreamcast pvr2fb

From: Adrian McMenamin
Date: Sat Jul 28 2007 - 13:59:27 EST


On 28/07/07, Ondrej Zajicek <santiago@xxxxxxxxxxxxx> wrote:
> On Sat, Jul 28, 2007 at 03:51:38PM +0100, Adrian McMenamin wrote:
> > Tony,
> >
> > This patch - on top of your others - fixes the colour output for 16bpp
> > RGB565 output in the Dreamcast - it was a simple out by one error in
> > the bit shift.
>
> > @@ -330,27 +331,28 @@ static int pvr2fb_setcolreg(unsigned int regno, unsigned int red,
> > case 16: /* RGB 565 */
> > tmp = (red & 0xf800) |
> > ((green & 0xfc00) >> 5) |
> > - ((blue & 0xf800) >> 11);
> > + ((blue & 0xf800) >> 10);
>
> This mixes lsb of green with msb of blue. If you want RGB 565,
> then >> 11 is correct. If you want RGB 555, green should
> be anded with 0xf800.
>
You are, of course, quite right, which makes it all the more the
strange that it appeared to fix the problem. Back to the drawing board
then.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/