summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMichael Brown2007-07-19 12:16:05 +0200
committerMichael Brown2007-07-19 12:16:05 +0200
commita8111e8ab71432b70f42843acf3623a2750da98e (patch)
treedbe9ed73839a3c87511e4289621df7c3d8111139 /src
parentCompleted definition of struct int13_cdrom_specification, and moved to (diff)
downloadipxe-a8111e8ab71432b70f42843acf3623a2750da98e.tar.gz
ipxe-a8111e8ab71432b70f42843acf3623a2750da98e.tar.xz
ipxe-a8111e8ab71432b70f42843acf3623a2750da98e.zip
Remove INT 13,4b handler; it represents an incomplete feature (CD-ROM
emulation support) for an unknown purpose, and breaks grub.
Diffstat (limited to 'src')
-rw-r--r--src/arch/i386/interface/pcbios/int13.c35
1 files changed, 0 insertions, 35 deletions
diff --git a/src/arch/i386/interface/pcbios/int13.c b/src/arch/i386/interface/pcbios/int13.c
index 7d9de7e02..94b573084 100644
--- a/src/arch/i386/interface/pcbios/int13.c
+++ b/src/arch/i386/interface/pcbios/int13.c
@@ -318,38 +318,6 @@ static int int13_get_extended_parameters ( struct int13_drive *drive,
}
/**
- * INT 13, 4b - Get CD-ROM status / terminate emulation
- *
- * @v drive Emulated drive
- * @v ds:si El Torito specification packet to fill in
- * @ret status Status code
- */
-static int int13_cdrom_status_terminate ( struct int13_drive *drive,
- struct i386_all_regs *ix86 ) {
- struct int13_cdrom_specification specification;
- unsigned int max_cylinder = drive->cylinders - 1;
- unsigned int max_head = drive->heads - 1;
- unsigned int max_sector = drive->sectors_per_track; /* sic */
-
- DBG ( "Get CD-ROM emulation parameters to %04x:%04x\n",
- ix86->segs.ds, ix86->regs.di );
-
- memset ( &specification, 0, sizeof ( specification ) );
- specification.size = sizeof ( specification );
- specification.drive = drive->drive;
- specification.cyl = ( max_cylinder & 0xff );
- specification.cyl_sector = ( ( ( max_cylinder >> 8 ) << 6 ) |
- max_sector );
- specification.head = max_head;
-
- DBG_HD ( &specification, sizeof ( specification ) );
-
- copy_to_real ( ix86->segs.ds, ix86->regs.si, &specification,
- sizeof ( specification ) );
- return 0;
-}
-
-/**
* INT 13 handler
*
*/
@@ -401,9 +369,6 @@ static void int13 ( struct i386_all_regs *ix86 ) {
case INT13_GET_EXTENDED_PARAMETERS:
status = int13_get_extended_parameters ( drive, ix86 );
break;
- case INT13_CDROM_STATUS_TERMINATE:
- status = int13_cdrom_status_terminate ( drive, ix86 );
- break;
default:
DBG ( "*** Unrecognised INT 13 ***\n" );
status = -INT13_STATUS_INVALID;