From b00a03a49e28d518435deeb22d119bbd959e78a3 Mon Sep 17 00:00:00 2001 From: Nikolay Nikolov Date: Sat, 10 Feb 2018 13:52:13 +0200 Subject: floppy: hold the DOR reset bit low for 4 microseconds, when resetting Signed-off-by: Nikolay Nikolov --- src/hw/floppy.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src') diff --git a/src/hw/floppy.c b/src/hw/floppy.c index 3012b3aa..16989c29 100644 --- a/src/hw/floppy.c +++ b/src/hw/floppy.c @@ -328,6 +328,8 @@ floppy_enable_controller(void) dprintf(2, "Floppy_enable_controller\n"); // Clear the reset bit (enter reset state), but set 'enable IRQ and DMA' floppy_dor_mask(FLOPPY_DOR_RESET, FLOPPY_DOR_IRQ); + // Real hardware needs a 4 microsecond delay + usleep(4); // Set the reset bit (normal operation) and keep 'enable IRQ and DMA' on floppy_dor_mask(0, FLOPPY_DOR_IRQ | FLOPPY_DOR_RESET); int ret = floppy_wait_irq(); -- cgit