On 10 Apr 2007 at 0:13, Philip Pemberton wrote:
I've got the first stage of my floppy disc
reader working! Meaning, the
data separator and synchroniser works - I have a circuit that outputs a pulse
whenever the MFM 'magic sync sequence' (0x4489) is detected. In theory, I can
use that to sync the reader against sector boundaries on IBM-format discs, or
track boundaries on Amiga discs.
Philip, it sounds like an interesting project. However, I've got an
itch in my brain that I can't seem to scratch. If you're doing bit
transition timings, why even bother to have an AM detector or data
separator? You can do all of that in software. Are you restricting
your design to MFM and FM encodings?
I suspect it's just to read disks that don't start the track at the index
pulse (I'd wondered the same thing until his post about Amiga floppies).
Stitching bits of track buffer together is quite possibly impractical due to
slight fluctuations in drive RPM and hardware delays when an index pulse is
detected. I suspect the only way to reliably read such disks is to either do
the "start of track" detection in hardware, or to sample the track from the
first index pulse up to the third index pulse and decode in software.
It's an interesting problem, and not one I'd given any thought to: I'd made
the assumption that start-of-data was always going to follow some sort of
hardware-supplied pulse (either index alone or index + sector in the case of
hard-sectored disks)
cheers
Jules