From 07a47ca2b93c1767778307eedad99be373f64e7c Mon Sep 17 00:00:00 2001
From: Bernardo Innocenti <bernie@codewiz.org>
Date: Sun, 3 Jun 2007 01:31:02 -0400
Subject: [PATCH] black on white console color scheme
Organization: One Laptop Per Child

The penguin logo looks ugly with this scheme enabled
and needs to be either disabled or replaced.

Signed-off-by: Bernardo Innocenti <bernie@codewiz.org>
---
 drivers/char/Kconfig |   11 +++++++++++
 drivers/char/vt.c    |   19 ++++++++++++-------
 2 files changed, 23 insertions(+), 7 deletions(-)

diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
index d0c978f..f35c20e 100644
--- a/drivers/char/Kconfig
+++ b/drivers/char/Kconfig
@@ -35,6 +35,17 @@ config VT
 	  If unsure, say Y, or else you won't be able to do much with your new
 	  shiny Linux system :-)
 
+config VT_BRIGHT_SCHEME
+	bool "Virtual terminal black on white color scheme"
+	depends on VT
+	default n
+	---help---
+	Use by default a bright color scheme with black text on white background.
+
+	Say Y if you live in the 21st century. Say N for the traditional Linux
+	console colors.
+	
+
 config VT_CONSOLE
 	bool "Support for console on virtual terminal" if EMBEDDED
 	depends on VT
diff --git a/drivers/char/vt.c b/drivers/char/vt.c
index 1bbb45b..9c5b8f2 100644
--- a/drivers/char/vt.c
+++ b/drivers/char/vt.c
@@ -926,13 +926,18 @@ void vc_deallocate(unsigned int currcons)
 unsigned char color_table[] = { 0, 4, 2, 6, 1, 5, 3, 7,
 				       8,12,10,14, 9,13,11,15 };
 
-/* the default colour table, for VGA+ colour systems */
-int default_red[] = {0x00,0xaa,0x00,0xaa,0x00,0xaa,0x00,0xaa,
-    0x55,0xff,0x55,0xff,0x55,0xff,0x55,0xff};
-int default_grn[] = {0x00,0x00,0xaa,0x55,0x00,0x00,0xaa,0xaa,
-    0x55,0x55,0xff,0xff,0x55,0x55,0xff,0xff};
-int default_blu[] = {0x00,0x00,0x00,0x00,0xaa,0xaa,0xaa,0xaa,
-    0x55,0x55,0x55,0x55,0xff,0xff,0xff,0xff};
+#define CONFIG_VT_BRIGHT_SCHEME 1 // FIXME
+#ifdef CONFIG_VT_BRIGHT_SCHEME
+/* a modern, bright color scheme for the console */
+int default_red[] = {0xff,0x88,0x33,0x88,0x33,0x88,0x33,0x22,0x88,0xff,0x55,0xff,0x55,0xff,0x55,0x00};
+int default_grn[] = {0xff,0x33,0x88,0x66,0x33,0x33,0x88,0x22,0x88,0x55,0xff,0xff,0x55,0x55,0xff,0x00};
+int default_blu[] = {0xff,0x33,0x33,0x33,0x88,0x88,0x88,0x22,0x88,0x55,0x55,0x55,0xff,0xff,0xff,0x00};
+#else
+/* the default color table, for VGA+ color systems */
+int default_red[] = {0x00,0xaa,0x00,0xaa,0x00,0xaa,0x00,0xaa,0x55,0xff,0x55,0xff,0x55,0xff,0x55,0xff};
+int default_grn[] = {0x00,0x00,0xaa,0x55,0x00,0x00,0xaa,0xaa,0x55,0x55,0xff,0xff,0x55,0x55,0xff,0xff};
+int default_blu[] = {0x00,0x00,0x00,0x00,0xaa,0xaa,0xaa,0xaa,0x55,0x55,0x55,0x55,0xff,0xff,0xff,0xff};
+#endif
 
 /*
  * gotoxy() must verify all boundaries, because the arguments
-- 
1.5.2

