On 5/28/23 07:54, Tony Duell via cctalk wrote:
> I'm suprised to hear you're familliar with
the GreaseWeasel but have
Most of my computers [1] use normal FM or MFM disks
and I would hope
the Greaseweazle software could handle that.If I can convert to/from a
disk image file I can probably carry on on my own.
One problem with the Greaseweazle is that there is no documentation. I
would at least have expected the equivalent of a man page. Knowing
what the options are, what it claims to be able to do, etc would be a
good start!
[1] I do have machines using GCR recording (Apple ][. Sirius (Victor
9000), etc). And M2FM (DEC RX02). And that odd double-density system
used by Intel in the MDS800. But I can manage without being able to
transfer to/from those, at least at the start.
All of these flux-transition gizmos, whether or not they're the
Applesauce, Greaseweazle, Catweasel, Fluxengine, Deviceside.... work
exactly the same way. A counter free-runs, and every time there's
change in direction of magnetization on a disk, the value of the counter
is sampled. The samples can be stored in memory, or send down a wire to
a host computer. The index pulse is usually included in the sample.
Microcontrollers are the natural choice for this, but you could
implement the same in SSI TTL if push came to shove, provided that your
design had the high-frequency headroom.
Writing the data back is essentially an exercise in PWM. Again, a good
fit for most microcontrollers.
All the rest, as they say, is software.
This is not the way a conventional floppy controller operates, since
they hail from the bad old days of slower-speed logic. Much of the way
they operate is encoded as a state machine in the form of specialized
microcode.
There is a fellow from Germany who managed program a PIC MCU (IIRC) to
act as a floppy controller (read/write) for (at least) PC MFM floppies.
I'll try to find the link in what I laughingly call my bookmarks, if
anyone's interested. My feeling is that it was a "proof of concept"
sort of thing and relied on some very tight loop code.
--Chuck