|Re: [hatari-devel] Re: Hatari floppy drive detection with EmuTOS|
[ Thread Index |
| More lists.tuxfamily.org/hatari-devel Archives
Le 16/01/2014 03:52, David Savinkoff a écrit :
I looked at a floppy disk drive specification and found that, on that drive,
index pulses were logically inhibited when the 3.5" floppy was ejected.
Note that a 3.5" floppy disk is locked to the floppy drive spindle in one
position only (unlike 5.25" disks).
So I guess you cannot expect index pulses from a 3.5" drive when there
is no floppy case present.
the fact that you don't receive index pulse from a drive unless a floppy
is inserted matches what I measured on my STF by monitoring the "IP" bit
in the status register of the FDC : it will never go to '1' unless a
disk is inserted, you can't measure the drive's RPM without a disk in it
(and this is already correctly emulated in Hatari).
But this still doesn't explain why Emutos detects a drive is not enabled
without using a soft timeout ; if the drive is OFF, you don't receive
index pulse, so spinup should spin forever.
I tested again today on my STF, if I do a restore+spinup (command 0x03)
when my drive is turned OFF, the command never completes (bit 5 of
fffa01 never goes to 0). I can wait 1 minute, then if I turn the drive
on, the spinup sequence completes and the restore is OK.
So, I'm still puzzled by the case where the drive is disconnected. I
will have a look at how normal TOS does its test.