diff options
author | H. Peter Anvin <hpa@zytor.com> | 2008-06-30 22:21:47 -0700 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2008-06-30 22:21:47 -0700 |
commit | 5c2daee46d7bcba1e102d1567e7795fb1bff94a9 (patch) | |
tree | 4be2db30fb3caed47c5c7aef6a6ab5316ea22ec3 | |
parent | acf9a9fcc779b9b8afb926dbd1a3858aa0ba7af3 (diff) | |
download | syslinux-5c2daee46d7bcba1e102d1567e7795fb1bff94a9.tar.gz |
comboot: issue IRET for INT 2Fh
At least one laptop exists which calls INT 2Fh from inside the BIOS!
So just point INT 2Fh to IRET, and hope that's good enough.
-rw-r--r-- | core/comboot.inc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/core/comboot.inc b/core/comboot.inc index 40f8817c..659b3bb0 100644 --- a/core/comboot.inc +++ b/core/comboot.inc @@ -175,6 +175,10 @@ comboot_setup_api: stosd mov ax,comboot_int22 ; INT 22h = proprietary syscalls stosd + ; There exists at least one laptop where the VESA BIOS makes INT 2Fh calls + ; back into DOS, for unknown reason... + mov ax,comboot_iret ; INT 2Fh = DOS callbacks + mov [di+(2Fh-23h)*4],eax ret ; INT 21h: generic DOS system call @@ -210,6 +214,7 @@ comboot_resume: pop fs pop es pop ds +comboot_iret: iret comboot_bad_int21: |