aboutsummaryrefslogtreecommitdiffstats
path: root/com32/lib/sys/vesa/initvesa.c
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2006-09-12 21:01:46 -0700
committerH. Peter Anvin <hpa@zytor.com>2006-09-12 21:01:46 -0700
commit888a4166d68822eb6fa2712cb9accd3632ac743c (patch)
treece841af3142303841bbe2a382f6c9a2567709931 /com32/lib/sys/vesa/initvesa.c
parent0fdf30000768ddb52bf2d0a5f0869e7b5262960c (diff)
downloadsyslinux-888a4166d68822eb6fa2712cb9accd3632ac743c.tar.gz
syslinux-888a4166d68822eb6fa2712cb9accd3632ac743c.tar.xz
syslinux-888a4166d68822eb6fa2712cb9accd3632ac743c.zip
initvesa: don't trust the BIOS when it says tty is supported
For too many BIOSes, tty output in VESA modes doesn't work in any useful sense, even if it is claimed.
Diffstat (limited to 'com32/lib/sys/vesa/initvesa.c')
-rw-r--r--com32/lib/sys/vesa/initvesa.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/com32/lib/sys/vesa/initvesa.c b/com32/lib/sys/vesa/initvesa.c
index 8d7ab479..c42a7b34 100644
--- a/com32/lib/sys/vesa/initvesa.c
+++ b/com32/lib/sys/vesa/initvesa.c
@@ -184,7 +184,13 @@ static int vesacon_set_mode(void)
/* Tell syslinux we changed video mode */
rm.eax.w[0] = 0x0017; /* Report video mode change */
- rm.ebx.w[0] = (mi->mode_attr & 4) ? 0x0007 : 0x000F;
+ /* In theory this should be:
+
+ rm.ebx.w[0] = (mi->mode_attr & 4) ? 0x0007 : 0x000f;
+
+ However, that would assume all systems that claim to handle text
+ output in VESA modes actually do that... */
+ rm.ebx.w[0] = 0x000f;
rm.ecx.w[0] = VIDEO_X_SIZE;
rm.edx.w[0] = VIDEO_Y_SIZE;
__intcall(0x22, &rm, NULL);