diff options
author | hpa <hpa> | 2004-02-03 06:16:03 +0000 |
---|---|---|
committer | hpa <hpa> | 2004-02-03 06:16:03 +0000 |
commit | 95d99866a4d6fb35eb47e694cac1697b8e521f0b (patch) | |
tree | b56087528df1d17e556ef64e5f4777c1982f9fde | |
parent | 5bb3f6793a4ea4ca9d209d88e4777974ec1ce70f (diff) | |
download | syslinux-95d99866a4d6fb35eb47e694cac1697b8e521f0b.tar.gz |
Actually handle mode adjustmentssyslinux-2.09-pre4
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | comboot.inc | 5 | ||||
-rw-r--r-- | font.inc | 2 |
3 files changed, 9 insertions, 0 deletions
@@ -9,6 +9,8 @@ Changes in 2.09: * Handle compiling on an x86-64 platform correctly. * Menu system from Murali Krishnan Ganapathy; see the menu directory for information. + * Allow COMBOOT programs to change screen text mode. + * Correct the documentation of how to detect SYSLINUX from COMBOOT!!!! Changes in 2.08: * Add new configuration command "ontimeout" to allow timeout diff --git a/comboot.inc b/comboot.inc index e421d67f..faac41a0 100644 --- a/comboot.inc +++ b/comboot.inc @@ -175,6 +175,8 @@ comboot_int21: cli mov es,bp mov bp,sp ; Set up stack frame + call adjust_screen ; The COMBOOT program might have changed the screen + mov cx,int21_count mov si,int21_table .again: lodsb @@ -211,6 +213,7 @@ comboot_exit_special: lss sp,[SavedSSSP] sti cld + call adjust_screen ; The COMBOOT program might have changed the screen and ax,ax je .nomsg mov si,KernelCName @@ -309,6 +312,8 @@ comboot_int22: mov es,bp mov bp,sp ; Set up stack frame + call adjust_screen ; The COMBOOT program might have changed the screen + cmp ax,int22_count jb .ok xor ax,ax ; Function 0 -> unimplemented @@ -101,6 +101,7 @@ lf_ret equ use_font.lf_ret ; This is a subroutine in case we're loading a custom font. ; adjust_screen: + pusha mov al,[BIOS_vidrows] and al,al jnz vidrows_ok @@ -111,5 +112,6 @@ vidrows_ok: mov [VidRows],al int 10h ; Read video state dec ah ; Store count-1 (same as rows) mov [VidCols],ah + popa ret |