- dprintf(3, "floppy f08\n");
-
- regs->ax = 0;
- regs->dx = GET_GLOBAL(Drives.floppycount);
-
- u8 floppyid = GET_GLOBAL(Drives.drives[driveid].cntl_id);
- u8 ftype = GET_GLOBAL(FloppyTypes[floppyid]);
- regs->bx = ftype;
-
- u16 nlc = GET_GLOBAL(Drives.drives[driveid].lchs.cylinders);
- u16 nlh = GET_GLOBAL(Drives.drives[driveid].lchs.heads);
- u16 nlspt = GET_GLOBAL(Drives.drives[driveid].lchs.spt);
- nlc -= 1; // 0 based
- nlh -= 1;
-
- regs->ch = nlc & 0xff;
- regs->cl = ((nlc >> 2) & 0xc0) | (nlspt & 0x3f);
- regs->dh = nlh;
-
- /* set es & di to point to 11 byte diskette param table in ROM */
- regs->es = SEG_BIOS;
- regs->di = (u32)&diskette_param_table2;
- /* disk status not changed upon success */
- set_success(regs);
-}
-
-// read diskette drive type
-static void
-floppy_1315(struct bregs *regs, u8 driveid)
-{
- dprintf(6, "floppy f15\n");
- regs->ah = 1;
- set_success(regs);
-}
-
-// get diskette change line status
-static void
-floppy_1316(struct bregs *regs, u8 driveid)
-{
- floppy_ret(regs, DISK_RET_ECHANGED);
-}
-
-static void
-floppy_13XX(struct bregs *regs, u8 driveid)
-{
- floppy_ret(regs, DISK_RET_EPARAM);
-}