Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Mar 2010 22:16:57 +0000 (UTC)
From:      Jung-uk Kim <jkim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r205550 - head/sys/dev/syscons
Message-ID:  <201003232216.o2NMGvvE004199@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jkim
Date: Tue Mar 23 22:16:57 2010
New Revision: 205550
URL: http://svn.freebsd.org/changeset/base/205550

Log:
  Separate 24-bit pixel draw from 32-bit case.  Although it is slower, we do
  not want to write a useless zero to inaccessible memory region.

Modified:
  head/sys/dev/syscons/scvgarndr.c

Modified: head/sys/dev/syscons/scvgarndr.c
==============================================================================
--- head/sys/dev/syscons/scvgarndr.c	Tue Mar 23 22:16:12 2010	(r205549)
+++ head/sys/dev/syscons/scvgarndr.c	Tue Mar 23 22:16:57 2010	(r205550)
@@ -181,9 +181,12 @@ static u_short mouse_or_mask[16] = {
 #define	vga_drawpxl(pos, color)						\
 	switch (scp->sc->adp->va_info.vi_depth) {			\
 		case 32:						\
-		case 24:						\
 			writel(pos, vga_palette32[color]);		\
 			break;						\
+		case 24:						\
+			writew(pos, vga_palette32[color]);		\
+			writeb(pos + 2, vga_palette32[color] >> 16);	\
+			break;						\
 		case 16:						\
 			if (scp->sc->adp->va_info.vi_pixel_fsizes[1] == 5)\
 				writew(pos, vga_palette15[color]);	\



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201003232216.o2NMGvvE004199>