melamy at
earthlink.net wrote:
I seem to recollect that when I was working on hard
sector floppy drives
back in the Northstar Horizon system days, that the controller only wrote a
block of data for each sector with basically nothing in between. It saw an
index hole, wrote the block and then waited for the next index hole to write
the next sector. If you want to recreate index holes for reading a hard
sectored floppy, it seems you could detect the end of data from the previous
sector and then generate a accurate index hole for the upcoming sector. Use
the single index to reset the sector count if you are keeping track of that.
If I was going to do this, I'd use a PLL of some description, rigged up as a
frequency multiplier.
Your typical 3.5" drive spins at either 300 or 360 RPM. I'm going to assume
300RPM for the following, because it makes the maths easier...
300RPM is 5 rotations per second.
Say you want to emulate a disc with 20 sectors. 20*5 = 100Hz
But you also need to generate the track index pulse half-way between the
"last" and "first" sector index pulses. So design the PLL to generate
200Hz
from the 5Hz index signal.
Add a flip-flop, a counter, and a few gates. The FF toggles at 200Hz,
producing a 100Hz output. That's the index signal without the track-marker.
Use that to clock the counter, and rig some logic to reset the counter when it
counts up to 20. Also, when the value of the counter is between 19 and 20,
gate the 200Hz clock through to the output. OR that with the 100Hz output and
invert to taste.
Use a one-shot to clean up the trailing edge of the pulse if you deem it
necessary.
Probably easier with a CPLD, but just as doable with a small-ish board of TTL
(the latter being FAR easier to fix when it breaks).
I'd be a bit worried about timing jitter, though... with a reference clock as
slow as 5Hz, the PLL is probably going to take a while to reliably lock onto
the index signal.
Might be an interesting rainy-afternoon project for someone, but not me. The
disc analyser (half-done, third redesign) is eating up all my spare time as it is.
--
Phil.
classiccmp at philpem.me.uk
http://www.philpem.me.uk/