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

Next file: linux/drivers/video/fbcon-afb.h
Previous file: linux/drivers/video/fbcmap.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.108/linux/drivers/video/fbcon-afb.c linux/drivers/video/fbcon-afb.c
@@ -250,12 +250,10 @@
     u_short i, j;
     int fg, bg;
 
-    c &= 0xff;
-
     dest0 = p->screen_base+yy*p->fontheight*p->next_line+xx;
-    cdat0 = p->fontdata+c*p->fontheight;
-    fg = attr_fgcol(p,conp);
-    bg = attr_bgcol(p,conp);
+    cdat0 = p->fontdata+(c&0xff)*p->fontheight;
+    fg = attr_fgcol(p,c);
+    bg = attr_bgcol(p,c);
 
     i = p->var.bits_per_pixel;
     do {
@@ -282,8 +280,8 @@
      *  (cfr. fbcon_putcs_ilbm())
      */
 
-void fbcon_afb_putcs(struct vc_data *conp, struct display *p, const char *s,
-		     int count, int yy, int xx)
+void fbcon_afb_putcs(struct vc_data *conp, struct display *p, 
+		     const unsigned short *s, int count, int yy, int xx)
 {
     u8 *dest, *dest0, *dest1, *expand;
     u8 *cdat1, *cdat2, *cdat3, *cdat4, *cdat10, *cdat20, *cdat30, *cdat40;
@@ -292,8 +290,8 @@
     int fg0, bg0, fg, bg;
 
     dest0 = p->screen_base+yy*p->fontheight*p->next_line+xx;
-    fg0 = attr_fgcol(p,conp);
-    bg0 = attr_bgcol(p,conp);
+    fg0 = attr_fgcol(p,*s);
+    bg0 = attr_bgcol(p,*s);
 
     while (count--)
 	if (xx&3 || count < 3) {	/* Slow version */
@@ -416,6 +414,17 @@
     fbcon_afb_setup, fbcon_afb_bmove, fbcon_afb_clear, fbcon_afb_putc,
     fbcon_afb_putcs, fbcon_afb_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