--- hardware.c 2010-06-03 01:16:13.000000000 -0400 +++ hardware.c 2010-06-03 01:17:17.000000000 -0400 @@ -470,6 +470,19 @@ } } + /* Some BIOS INT13hF48h report bad geomertry for CD-ROMs */ + if (DriveNumber >= 0x8a && SectorCount <= 2880) + { + DPRINTM(DPRINT_HWDETECT, "Forcing SectorSize = 2048 on DriveNumber: 0x%x\n" ,DriveNumber); + /* This is a CD-ROM device */ + SectorSize = 2048; + } + if (DriveNumber >= 0x8a && SectorSize > 4096) + { + DPRINTM(DPRINT_HWDETECT, "Forcing SectorSize = 2048 on DriveNumber: 0x%x\n" ,DriveNumber); + /* This is a CD-ROM device */ + SectorSize = 2048; + } if (DrivePartition != 0xff && DrivePartition != 0) { if (!DiskGetPartitionEntry(DriveNumber, DrivePartition, &PartitionTableEntry))