patch-2.1.109 linux/drivers/video/fbcon-iplan2p8.c

Next file: linux/drivers/video/fbcon-iplan2p8.h
Previous file: linux/drivers/video/fbcon-iplan2p4.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.108/linux/drivers/video/fbcon-iplan2p8.c linux/drivers/video/fbcon-iplan2p8.c
@@ -348,13 +348,11 @@
     int bytes = p->next_line;
     u32 eorx1, eorx2, fgx1, fgx2, bgx1, bgx2, fdx;
 
-    c &= 0xff;
-
     dest = p->screen_base + yy * p->fontheight * bytes + (xx>>1)*16 + (xx & 1);
-    cdat = p->fontdata + (c * p->fontheight);
+    cdat = p->fontdata + (c & 0xff) * p->fontheight;
 
-    expand8dl(attr_fgcol(p,conp), &fgx1, &fgx2);
-    expand8dl(attr_bgcol(p,conp), &bgx1, &bgx2);
+    expand8dl(attr_fgcol(p,c), &fgx1, &fgx2);
+    expand8dl(attr_bgcol(p,c), &bgx1, &bgx2);
     eorx1 = fgx1 ^ bgx1; eorx2  = fgx2 ^ bgx2;
 
     for(rows = p->fontheight ; rows-- ; dest += bytes) {
@@ -364,7 +362,7 @@
 }
 
 void fbcon_iplan2p8_putcs(struct vc_data *conp, struct display *p,
-			  const char *s, int count, int yy, int xx)
+			  const unsigned short *s, int count, int yy, int xx)
 {
     u8 *dest, *dest0;
     u8 *cdat, c;
@@ -376,8 +374,8 @@
     dest0 = p->screen_base + yy * p->fontheight * bytes + (xx>>1)*16 +
 	    (xx & 1);
 
-    expand8dl(attr_fgcol(p,conp), &fgx1, &fgx2);
-    expand8dl(attr_bgcol(p,conp), &bgx1, &bgx2);
+    expand8dl(attr_fgcol(p,*s), &fgx1, &fgx2);
+    expand8dl(attr_bgcol(p,*s), &bgx1, &bgx2);
     eorx1 = fgx1 ^ bgx1; eorx2  = fgx2 ^ bgx2;
 
     while (count--) {
@@ -435,6 +433,17 @@
     fbcon_iplan2p8_setup, fbcon_iplan2p8_bmove, fbcon_iplan2p8_clear,
     fbcon_iplan2p8_putc, fbcon_iplan2p8_putcs, fbcon_iplan2p8_revc, NULL
 };
+
+
+#ifdef MODULE
+int init_module(void)
+{
+    return 0;
+}
+
+void cleanup_module(void)
+{}
+#endif /* MODULE */
 
 
     /*

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov