summaryrefslogtreecommitdiff
path: root/com32/include/syslinux
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2007-11-14 20:51:23 -0800
committerH. Peter Anvin <hpa@zytor.com>2007-11-14 20:51:23 -0800
commit2c2fed8305e2cf52c27d8a5c1fd5b5982f541711 (patch)
treeed39fedc95bdb7f26b748ed1d1d7943465de4665 /com32/include/syslinux
parentd2520f1b46d08fe2879a93c81973df67834fea17 (diff)
downloadsyslinux-2c2fed8305e2cf52c27d8a5c1fd5b5982f541711.tar.gz
Preserve ES:DI instead of probing for $PnPsyslinux-3.53-pre5
The $PnP probe has been found to lock up at least one machine for reasons unknown. Drop it; instead, burn the extra few bytes in the bootsector to save away ES:DI for later restore.
Diffstat (limited to 'com32/include/syslinux')
-rw-r--r--com32/include/syslinux/config.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/com32/include/syslinux/config.h b/com32/include/syslinux/config.h
index d0cb4c26..8b2ed4c9 100644
--- a/com32/include/syslinux/config.h
+++ b/com32/include/syslinux/config.h
@@ -68,6 +68,7 @@ union syslinux_derivative_info {
uint16_t ax;
uint16_t cx;
uint16_t dx;
+ uint16_t _pad;
const void *esbx;
const void *fssi;
const void *gsdi;
@@ -79,13 +80,16 @@ union syslinux_derivative_info {
uint8_t ch;
uint8_t drive_number;
uint8_t dh;
+ uint16_t _pad;
const void *ptab_ptr;
+ const uint32_t *esdi_ptr;
} disk; /* syslinux/extlinux */
struct {
uint8_t filesystem;
uint8_t ah;
uint16_t cx;
uint16_t apiver;
+ uint16_t _pad;
const void *pxenvptr;
const void *stack;
} pxe; /* pxelinux */
@@ -96,7 +100,9 @@ union syslinux_derivative_info {
uint8_t ch;
uint8_t drive_number;
uint8_t dh;
+ uint16_t _pad;
const void *spec_packet;
+ const uint32_t *esdi_ptr;
} iso; /* isolinux */
};