diff options
| author | Michael Brown | 2013-04-17 20:36:03 +0200 |
|---|---|---|
| committer | Michael Brown | 2013-04-17 20:36:03 +0200 |
| commit | 9909e7b10ab9c2e1fd9b81eaac59fbaec76b9613 (patch) | |
| tree | 3923a50763da9eb8613c6d610db1534f48aeb711 | |
| parent | [settings] Expose build architecture and platform via settings (diff) | |
| download | ipxe-9909e7b10ab9c2e1fd9b81eaac59fbaec76b9613.tar.gz ipxe-9909e7b10ab9c2e1fd9b81eaac59fbaec76b9613.tar.xz ipxe-9909e7b10ab9c2e1fd9b81eaac59fbaec76b9613.zip | |
[bios] Fix screen clearing on buggy BIOSes
The implementation of INT 10,06 on some BIOSes (observed with both
Hyper-V and a Dell OptiPlex 7010) seems to treat %dx=0xffff as a
special value meaning "do absolutely nothing". Fix by using
%dx=0xfefe, which should still be sufficient to cover any realistic
screen size.
Reported-by: John Clark <skyman@iastate.edu>
Tested-by: John Clark <skyman@iastate.edu>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
| -rw-r--r-- | src/arch/i386/firmware/pcbios/bios_console.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/arch/i386/firmware/pcbios/bios_console.c b/src/arch/i386/firmware/pcbios/bios_console.c index 25c8dad2d..213ebd92c 100644 --- a/src/arch/i386/firmware/pcbios/bios_console.c +++ b/src/arch/i386/firmware/pcbios/bios_console.c @@ -97,7 +97,7 @@ static void bios_handle_ed ( unsigned int count __unused, "int $0x10\n\t" "cli\n\t" ) : : "a" ( 0x0600 ), "b" ( bios_attr << 8 ), - "c" ( 0 ), "d" ( 0xffff ) ); + "c" ( 0 ), "d" ( 0xfefe ) ); } /** |
