[SeaBIOS] [PATCH 04/15] Report stdvga modes in VBE via int10 (AX = 4F00h)
Christian Gmeiner
christian.gmeiner at gmail.com
Mon Sep 3 18:07:28 CEST 2012
2012/9/3 Kevin O'Connor <kevin at koconnor.net>:
> On Sat, Sep 01, 2012 at 05:12:55PM +0200, Christian Gmeiner wrote:
>> 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.
> [...]
>> 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);
>> }
>
> This is a good idea. However, I don't think vbe_104f01() will
> correctly handle all the standard vga modes as it is coded today.
>
I will have a closer look at it during my following patches. If you want you
can skip this patch.
---
Christian Gmeiner, MSc
More information about the SeaBIOS
mailing list