[parisc-linux-cvs] sticon fix for background colour

Richard Hirst rhirst@linuxcare.com
Mon, 11 Jun 2001 18:29:41 +0100


Hi Helge,
  This patch fixes my B180 so that the install has a nice solid blue
background.  I won't commit until give the ok.  Maybe sti_bmove() needs
a similar fix?

Without this, "setterm -background blue; clear" doesn't result in a
blue screen, only in blue behind any printed characters.

Richard



Index: drivers/video/sti/sticon.c
===================================================================
RCS file: /home/cvs/parisc/linux/drivers/video/sti/sticon.c,v
retrieving revision 1.7
diff -u -r1.7 sticon.c
--- sticon.c	2001/05/16 17:35:17	1.7
+++ sticon.c	2001/06/11 23:21:11
@@ -114,12 +114,12 @@
     switch (dir) {
     case SM_UP:
 	sti_bmove(sti, t + count, 0, t, 0, b - t - count, conp->vc_cols);
-	sti_clear(sti, b - count, 0, count, conp->vc_cols);
+	sti_clear(sti, b - count, 0, count, conp->vc_cols, conp->vc_video_erase_char);
 	break;
 
     case SM_DOWN:
 	sti_bmove(sti, t, 0, t + count, 0, b - t - count, conp->vc_cols);
-	sti_clear(sti, t, 0, count, conp->vc_cols);
+	sti_clear(sti, t, 0, count, conp->vc_cols, conp->vc_video_erase_char);
 	break;
     }
 
@@ -153,7 +153,7 @@
 static void sticon_clear(struct vc_data *conp, int sy, int sx, int height,
 			 int width)
 {
-    sti_clear(default_sti, sy, sx, height, width);
+    sti_clear(default_sti, sy, sx, height, width, conp->vc_video_erase_char);
 }
 
 static int sticon_switch(struct vc_data *conp)
Index: drivers/video/sti/sticore.c
===================================================================
RCS file: /home/cvs/parisc/linux/drivers/video/sti/sticore.c,v
retrieving revision 1.11
diff -u -r1.11 sticore.c
--- sticore.c	2001/05/30 00:29:22	1.11
+++ sticore.c	2001/06/11 23:21:12
@@ -165,10 +165,10 @@
 
 void
 sti_clear(struct sti_struct *sti, int src_y, int src_x,
-	  int height, int width)
+	  int height, int width, int c)
 {
 	struct sti_blkmv_inptr inptr = {
-		0, 0,
+		c_fg(sti, c), c_bg(sti, c),
 		src_x * sti->font_width, src_y * sti->font_height,
 		src_x * sti->font_width, src_y * sti->font_height,
 		width * sti->font_width, height* sti->font_height,
Index: drivers/video/sti/sticore.h
===================================================================
RCS file: /home/cvs/parisc/linux/drivers/video/sti/sticore.h,v
retrieving revision 1.11
diff -u -r1.11 sticore.h
--- sticore.h	2001/05/30 00:29:22	1.11
+++ sticore.h	2001/06/11 23:21:13
@@ -78,7 +78,7 @@
 void sti_set(struct sti_struct *sti, int src_y, int src_x,
 	     int height, int width, u8 color);
 void sti_clear(struct sti_struct *sti, int src_y, int src_x,
-	       int height, int width);
+	       int height, int width, int c);
 void sti_bmove(struct sti_struct *sti, int src_y, int src_x,
 	       int dst_y, int dst_x, int height, int width);