NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/46516: splashscreen picture corruption at 8 bit depth



>Number:         46516
>Category:       kern
>Synopsis:       splashscreen picture corruption at 8 bit depth
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Jun 02 14:05:00 +0000 2012
>Originator:     Nat Sloss
>Release:        NetBSD Current 6.99.6
>Organization:
>Environment:
NetBSD beast 6.99.6 NetBSD 6.99.6 (LOCKDEBUG) #54: Sat Jun  2 17:32:26 EST 2012 
 build@beast:/usr/src/sys/arch/i386/compile/obj/LOCKDEBUG i386

>Description:
If you boot with a splash screen at 8 bit depth the picture doesn't display 
correctly.

splash.c should increment by stride and not picture width.

Note: I found no problem in an qemu emulation but rather on real hardware.
>How-To-Repeat:
Boot up with the following options:

vesa 800x600x8
splash splash.bmp
boot

>Fix:
I fixed it with this patch:
===================================================================
RCS file: /cvsroot/src/sys/dev/splash/splash.c,v
retrieving revision 1.11
diff -u -r1.11 splash.c
--- sys/dev/splash/splash.c     8 Feb 2011 23:28:24 -0000       1.11
+++ sys/dev/splash/splash.c     2 Jun 2012 14:00:09 -0000
@@ -271,7 +271,7 @@
                        fb[x] = SPLASH_INDEX(pix[0], pix[1], pix[2]) +
                                    SPLASH_CMAP_OFFSET;
                }
-               fb += si->si_width;
+               fb += si->si_stride;
        }

        /* If we've just written to the shadow fb, copy it to the display */


Note:  This patch is my own work which I submit under the NetBSD license.

Regards,

Nat.



Home | Main Index | Thread Index | Old Index