aboutsummaryrefslogtreecommitdiff
path: root/vgasrc/vbe.c
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2011-12-31 18:19:22 -0500
committerKevin O'Connor <kevin@koconnor.net>2011-12-31 18:19:22 -0500
commit821d6b410e02897f84c4b732f3678f64e396c9cf (patch)
treec77eff40c3098d16f76c29f7332a2a367eb6afa7 /vgasrc/vbe.c
parentcecbc5da2c5826e35ba402b448f736fe3fa5008d (diff)
downloadseabios-821d6b410e02897f84c4b732f3678f64e396c9cf.zip
seabios-821d6b410e02897f84c4b732f3678f64e396c9cf.tar.gz
seabios-821d6b410e02897f84c4b732f3678f64e396c9cf.tar.bz2
vgabios: Refactor vga_set_mode and stdvga_set_mode.
Split out the BDA setup part of vga_set_mode to new function modeswitch_set_bda. Move the remaining parts (palette loading, screen clearing, font loading) of vga_set_mode into stdvga_set_mode. Add new mode switching flags and pass them to stdvga_set_mode, so it does not need to inspect modeset_ctl directly. Move code needed by stdvga_set_mode (perform_gray_scale_summing, clear_screen) to stdvga.c. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'vgasrc/vbe.c')
-rw-r--r--vgasrc/vbe.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/vgasrc/vbe.c b/vgasrc/vbe.c
index f598921..df95148 100644
--- a/vgasrc/vbe.c
+++ b/vgasrc/vbe.c
@@ -12,6 +12,7 @@
#include "util.h" // dprintf
#include "biosvar.h" // get_global_set
#include "bochsvga.h" // bochsvga_set_mode
+#include "stdvga.h" // stdvga_set_mode
static void
vbe_104f00(struct bregs *regs)
@@ -189,7 +190,7 @@ vbe_104f02(struct bregs *regs)
dprintf(1, "set VGA mode %x\n", mode);
bochsvga_hires_enable(0);
- vga_set_mode(mode, 0);
+ stdvga_set_mode(mode, 0);
} else { /* VBE */
rc = bochsvga_mode_info(mode & 0x1ff, &modeinfo);
if (rc) {