On 16 Apr 2007 at 6:56, Jules Richardson wrote:
I'm not sure - remember the task is to emulate a
drive, not a controller.
Isn't an MFM ST506/412 drive just a bucket of rotating bits and a track stepper?
I'm not sure that it could even be categorized as a bucket of bits.
You get an index once every rev. You get raw data (differential)
read and write lines. You can step in and out. Like a big floppy,
but faster. ST506 didn't buffer seeks; ST412 did--but then I've got
a couple of floppy drives that buffer seeks too. I see no reason,
for example that one couldn't record GCR or FM data on one. Heck, if
you could goose a floppy controller to run fast enough, I don't think
there's any reason that you couldn't interface it to an ST506.
Since the old ST506/412 interface drives didn't get really large (ca.
150 MB for "normal" MFM recording) and the medium is non-removable,
why not use storage that's more amenable to multiple rewriting, like,
say, FRAM or battery-backed SRAM?
My point was not that this couldn't be done, but that it was going to
be messy. Maybe you could do bit-transition recording and record
that a la Catweasel, but I think most people would want to store
decoded data on whatever storage medium that was selected. That
means your little device would have to accommodate the varioius
encoding schemes used by the various controllers.
I recall that it was a source of frustration not being able to swap
MFM drives between controllers as one might swap floppies around. It
seemed that every time I turned around, there would be yet another
convention for address ID encoding and a different ECC used.
There's precious little public information on the guts of these
varioius encodings as far as I've been able to determine.
Cheers,
Chuck