I had
forgotten this about ST506!
It appears that few people in this discussion have ever seriously looked
at the ST506 interface. I guess I had a mis-spent youth looking at hard
disk drive and controller schematics.
But hell, RAM costs being what they are, the whole disk image could be
kept in memory, with a dirty bit and/or timer to write changes to
permanent store to avoid data loss, in the simulator.
I would dispute that. It's 2Mbytes for one cylinder or thereabouts (128K
per trask, 16 heads). I don't know how many cylinders was the maximum on
ST506 drives, but certainly 1024 cylinder drives exist (and I think
getting on for double that...). Let's say 1024 cylinders. Thats 2
gigabytes of data for the emulated disk image.
Now, 2 Gigabytes is a lot of RAM (at least to me). Considering the
emulator RAM (at least for the cylinder currently being accessed) really
needs to be fast-ish static RAM, gettign 2 GB of that is going to be
unworkable...
Hmm... how about a hardware simulator, with a USB port on the back side
that connects to a host computer. You load the "ST506" image into the
simulator, copy it back out for safe keeping when you're done.
Maybe. Personally, I'd rather have a disk emulator that's transparent to
the user of the classic. Plug it in place of the old ST506 drive and go.
No commands _to_ the emulator (e.g. from the modern PC's keyboard). No
data loss if you forgwt to 'save the image' before turning off the classic.
-tony
But you really dont need 2G bytes of RAM... suitably encoded (instead of using
a wasteful bit stream, record and play back the delta-time between transitions
and then huffman encode/decode the result) This means you shouldn't end up
storing much more than the original disk data size...
a $15 FPGA and a $15 Sync SRAM is just about all thats needed + the hardware
interface for the specific drive family...
Peter Wallace