mirror of https://github.com/ipxe/ipxe.git
[int13] Catch INT 13,4b when no explicit drive number is present
This allows older versions of ELTORITO.SYS (such as the version found on the FreeDOS installation CD-ROM) to use iPXE's emulated CD-ROM drive. Reported-by: Robin Smidsrød <robin@smidsrod.no> Signed-off-by: Michael Brown <mcb30@ipxe.org>pull/5/head
parent
57e65d2c4d
commit
62c9635166
|
@ -1187,12 +1187,17 @@ static __asmcall void int13 ( struct i386_all_regs *ix86 ) {
|
|||
bios_drive, int13->drive );
|
||||
ix86->regs.dl = int13->drive;
|
||||
return;
|
||||
}
|
||||
} else if ( ( ( bios_drive & 0x7f ) == 0x7f ) &&
|
||||
( command == INT13_CDROM_STATUS_TERMINATE )
|
||||
&& int13->is_cdrom ) {
|
||||
/* Catch non-drive-specific CD-ROM calls */
|
||||
} else {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
DBGC2 ( int13, "INT13,%02x (%02x): ",
|
||||
ix86->regs.ah, int13->drive );
|
||||
ix86->regs.ah, bios_drive );
|
||||
|
||||
switch ( command ) {
|
||||
case INT13_RESET:
|
||||
|
|
Loading…
Reference in New Issue