diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2014-10-17 21:37:23 -0400 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2014-10-27 11:00:32 -0400 |
commit | f7f22630fdf50f6da973d9df210b7c8e32849975 (patch) | |
tree | 16511aee5e7dc236a51210ddb00469b708bc98d8 /vgasrc/vgabios.h | |
parent | 9978d49d1c858087de518a1d7391ba88aa0f5109 (diff) | |
download | seabios-hppa-f7f22630fdf50f6da973d9df210b7c8e32849975.zip seabios-hppa-f7f22630fdf50f6da973d9df210b7c8e32849975.tar.gz seabios-hppa-f7f22630fdf50f6da973d9df210b7c8e32849975.tar.bz2 |
vgabios: Cache a pointer to the current mode struct in the BDA
Cache a pointer to the current mode 'vgamode_s' struct in the BDA to
avoid doing a linear scan of all available vga modes when the struct
is needed.
This uses an additional two bytes in the BDA (at offset 0xbc). It's
possible this could conflict with some other software, but that seams
unlikely because that part of the BDA seems reserved for BIOS and
VGABIOS uses. (And neither SeaBIOS nor Bochs BIOS currently make use
of that area.)
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'vgasrc/vgabios.h')
-rw-r--r-- | vgasrc/vgabios.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/vgasrc/vgabios.h b/vgasrc/vgabios.h index 70682c9..d17b48f 100644 --- a/vgasrc/vgabios.h +++ b/vgasrc/vgabios.h @@ -81,6 +81,7 @@ struct gfx_op { struct vga_bda_s { u8 vbe_flag; u16 vbe_mode; + u16 vgamode_offset; } PACKED; #define GET_BDA_EXT(var) \ |