-void
-floppy_13(struct bregs *regs, u8 driveid)
-{
- switch (regs->ah) {
- case 0x00: floppy_1300(regs, driveid); break;
- case 0x02: floppy_1302(regs, driveid); break;
- case 0x03: floppy_1303(regs, driveid); break;
- case 0x04: floppy_1304(regs, driveid); break;
- case 0x05: floppy_1305(regs, driveid); break;
-
- // These functions are the same as for hard disks
- case 0x01:
- case 0x08:
- case 0x15:
- case 0x16:
- disk_13(regs, driveid);
- break;
-
- default: floppy_13XX(regs, driveid); break;
+ switch (op->command) {
+ case CMD_RESET:
+ return floppy_reset(op);
+ case CMD_READ:
+ return floppy_read(op);
+ case CMD_WRITE:
+ return floppy_write(op);
+ case CMD_VERIFY:
+ return floppy_verify(op);
+ case CMD_FORMAT:
+ return floppy_format(op);
+ default:
+ op->count = 0;
+ return DISK_RET_EPARAM;