[2185] 2009-05-04 Robert Millan <[email protected]>

Robert Millan <[email protected]>
Newsgroups gmane.comp.boot-loaders.grub.cvs
Message-ID <[email protected]>
Revision: 2185
          http://svn.sv.gnu.org/viewvc/?view=rev&root=grub&revision=2185
Author:   robertmh
Date:     2009-05-04 20:21:33 +0000 (Mon, 04 May 2009)
Log Message:
-----------
2009-05-04  Robert Millan  <[email protected]>

        * include/grub/i386/linux.h (GRUB_LINUX_VID_MODE_VESA_START): Set
        to 0x300.
        * loader/i386/linux.c (vga_modes, linux_vesafb_res): Add a few
        resolutions.
        (linux_vesafb_modes): Add a lot of additional modes to the list (based
        on documentation from Wikipedia).

Modified Paths:
--------------
    trunk/grub2/ChangeLog
    trunk/grub2/include/grub/i386/linux.h
    trunk/grub2/loader/i386/linux.c

Modified: trunk/grub2/ChangeLog
===================================================================
--- trunk/grub2/ChangeLog	2009-05-04 20:06:05 UTC (rev 2184)
+++ trunk/grub2/ChangeLog	2009-05-04 20:21:33 UTC (rev 2185)
@@ -1,3 +1,12 @@
+2009-05-04  Robert Millan  <[email protected]>
+
+	* include/grub/i386/linux.h (GRUB_LINUX_VID_MODE_VESA_START): Set
+	to 0x300.
+	* loader/i386/linux.c (vga_modes, linux_vesafb_res): Add a few
+	resolutions.
+	(linux_vesafb_modes): Add a lot of additional modes to the list (based
+	on documentation from Wikipedia).
+
 2009-05-04  Pavel Roskin  <[email protected]>
 
 	* disk/ata.c: Spelling fixes.

Modified: trunk/grub2/include/grub/i386/linux.h
===================================================================
--- trunk/grub2/include/grub/i386/linux.h	2009-05-04 20:06:05 UTC (rev 2184)
+++ trunk/grub2/include/grub/i386/linux.h	2009-05-04 20:21:33 UTC (rev 2185)
@@ -38,7 +38,7 @@
 #define GRUB_LINUX_VID_MODE_NORMAL	0xFFFF
 #define GRUB_LINUX_VID_MODE_EXTENDED	0xFFFE
 #define GRUB_LINUX_VID_MODE_ASK		0xFFFD
-#define GRUB_LINUX_VID_MODE_VESA_START	0x0301
+#define GRUB_LINUX_VID_MODE_VESA_START	0x0300
 
 #define GRUB_LINUX_SETUP_MOVE_SIZE	0x9100
 #define GRUB_LINUX_CL_MAGIC		0xA33F

Modified: trunk/grub2/loader/i386/linux.c
===================================================================
--- trunk/grub2/loader/i386/linux.c	2009-05-04 20:06:05 UTC (rev 2184)
+++ trunk/grub2/loader/i386/linux.c	2009-05-04 20:21:33 UTC (rev 2185)
@@ -102,46 +102,65 @@
   grub_uint16_t height;
 };
 
+struct linux_vesafb_mode
+{
+  grub_uint8_t res_index;
+  grub_uint8_t depth;
+};
+
 enum vga_modes
   {
+    VGA_320_200,
+    VGA_640_400,
     VGA_640_480,
+    VGA_800_500,
     VGA_800_600,
+    VGA_896_672,
+    VGA_1024_640,
     VGA_1024_768,
+    VGA_1152_720,
     VGA_1280_1024,
+    VGA_1440_900,
+    VGA_1600_1200,
   };
 
-struct linux_vesafb_mode
-{
-  grub_uint8_t res_index;
-  grub_uint8_t depth;
-};
-
 static struct linux_vesafb_res linux_vesafb_res[] =
   {
+    { 320, 200 },
+    { 640, 400 },
     { 640, 480 },
+    { 800, 500 },
     { 800, 600 },
+    { 896, 672 },
+    { 1024, 640 },
     { 1024, 768 },
-    { 1280, 1024 }
+    { 1152, 720 },
+    { 1280, 1024 },
+    { 1440, 900 },
+    { 1600, 1200 },
   };
 
-/* This is the reverse of the table in [linux]/Documentation/fb/vesafb.txt.  */
+/* This is the reverse of the table in [linux]/Documentation/fb/vesafb.txt
+   plus a few more modes based on the table in
+   http://en.wikipedia.org/wiki/VESA_BIOS_Extensions  */
 struct linux_vesafb_mode linux_vesafb_modes[] =
   {
+    { VGA_640_400, 8 },		/* 0x300 */
     { VGA_640_480, 8 },		/* 0x301 */
-    { 0, 0 },
+    { VGA_800_600, 4 },		/* 0x302 */
     { VGA_800_600, 8 },		/* 0x303 */
-    { 0, 0 },
+    { VGA_1024_768, 4 },	/* 0x304 */
     { VGA_1024_768, 8 },	/* 0x305 */
-    { 0, 0 },
+    { VGA_1280_1024, 4 },	/* 0x306 */
     { VGA_1280_1024, 8 },	/* 0x307 */
     { 0, 0 },
     { 0, 0 },
     { 0, 0 },
     { 0, 0 },
     { 0, 0 },
-    { 0, 0 },
-    { 0, 0 },
-    { 0, 0 },
+    { VGA_320_200, 15 },	/* 0x30d */
+    { VGA_320_200, 16 },	/* 0x30e */
+    { VGA_320_200, 24 },	/* 0x30f */
     { VGA_640_480, 15 },	/* 0x310 */
     { VGA_640_480, 16 },	/* 0x311 */
     { VGA_640_480, 24 },	/* 0x312 */
@@ -154,6 +173,94 @@
     { VGA_1280_1024, 15 },	/* 0x319 */
     { VGA_1280_1024, 16 },	/* 0x31a */
     { VGA_1280_1024, 24 },	/* 0x31b */
+    { VGA_1600_1200, 8 },	/* 0x31c */
+    { VGA_1600_1200, 15 },	/* 0x31d */
+    { VGA_1600_1200, 16 },	/* 0x31e */
+    { VGA_1600_1200, 24 },	/* 0x31f */
+    { 0, 0 },
+    { VGA_640_400, 15 },	/* 0x321 */
+    { VGA_640_400, 16 },	/* 0x322 */
+    { VGA_640_400, 24 },	/* 0x323 */
+    { VGA_640_400, 32 },	/* 0x324 */
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { VGA_640_480, 32 },	/* 0x329 */
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { VGA_896_672, 8 },		/* 0x32f */
+    { VGA_896_672, 15 },	/* 0x330 */
+    { VGA_896_672, 16 },	/* 0x331 */
+    { VGA_896_672, 24 },	/* 0x332 */
+    { VGA_896_672, 32 },	/* 0x333 */
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { VGA_1600_1200, 32 },	/* 0x342 */
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { 0, 0 },
+    { VGA_1440_900, 8 },	/* 0x360 */
+    { VGA_1440_900, 15 },	/* 0x361 */
+    { VGA_1440_900, 16 },	/* 0x362 */
+    { VGA_1440_900, 24 },	/* 0x363 */
+    { VGA_1440_900, 32 },	/* 0x364 */
+    { VGA_1152_720, 8 },	/* 0x365 */
+    { VGA_1152_720, 15 },	/* 0x366 */
+    { VGA_1152_720, 16 },	/* 0x367 */
+    { VGA_1152_720, 24 },	/* 0x368 */
+    { VGA_1152_720, 32 },	/* 0x369 */
+    { VGA_1024_640, 8 },	/* 0x36a */
+    { VGA_1024_640, 15 },	/* 0x36b */
+    { VGA_1024_640, 16 },	/* 0x36c */
+    { VGA_1024_640, 24 },	/* 0x36d */
+    { VGA_1024_640, 32 },	/* 0x36e */
+    { VGA_800_500, 8 },		/* 0x36f */
+    { VGA_800_500, 15 },	/* 0x370 */
+    { VGA_800_500, 16 },	/* 0x371 */
+    { VGA_800_500, 24 },	/* 0x372 */
+    { VGA_800_500, 32 },	/* 0x373 */
   };
 
 static inline grub_size_t
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.