[SeaBIOS] [PATCH 04/15] Report stdvga modes in VBE via int10 (AX = 4F00h)

Christian Gmeiner christian.gmeiner at gmail.com
Sat Sep 1 17:12:55 CEST 2012


As all supported graphic adapters are supporting VGA we should
list them in int10 (AX = 4F00h). Also clext.c and bochsvga.c
are haveing a function named like is_XXX_mode() which checks
if its a default VGA mode or a VESA mode. If its a normal VGA
mode stdvga_set_mode() gets called.

Signed-off-by: Christian Gmeiner <christian.gmeiner at gmail.com>
---
 vgasrc/stdvgamodes.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/vgasrc/stdvgamodes.c b/vgasrc/stdvgamodes.c
index 5497da8..1756ade 100644
--- a/vgasrc/stdvgamodes.c
+++ b/vgasrc/stdvgamodes.c
@@ -334,6 +334,16 @@ stdvga_find_mode(int mode)
 void
 stdvga_list_modes(u16 seg, u16 *dest, u16 *last)
 {
+    int i;
+    for (i = 0; i < ARRAY_SIZE(vga_modes); i++) {
+        struct stdvga_mode_s *stdmode_g = &vga_modes[i];
+        u16 mode = GET_GLOBAL(stdmode_g->mode);
+        if (mode == 0xffff)
+            continue;
+        SET_FARVAR(seg, *dest, mode);
+        dest++;
+    }
+
     SET_FARVAR(seg, *dest, 0xffff);
 }
 
-- 
1.7.11.rc2.5.g68f532f




More information about the SeaBIOS mailing list