diff options
-rw-r--r-- | com32/modules/linux.c | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/com32/modules/linux.c b/com32/modules/linux.c index c20536f3..90aab68b 100644 --- a/com32/modules/linux.c +++ b/com32/modules/linux.c @@ -204,8 +204,22 @@ int main(int argc, char *argv[]) if ((arg = find_argument(argp, "mem="))) mem_limit = saturate32(suffix_number(arg)); - if ((arg = find_argument(argp, "vga="))) - video_mode = strtoul(arg, NULL, 0); + if ((arg = find_argument(argp, "vga="))) { + switch (arg[0] | 0x20) { + case 'a': /* "ask" */ + video_mode = 0xfffd; + break; + case 'e': /* "ext" */ + video_mode = 0xfffe; + break; + case 'n': /* "normal" */ + video_mode = 0xffff; + break; + default: + video_mode = strtoul(arg, NULL, 0); + break; + } + } if ((arg = find_argument(argp, "initrd="))) { do { |