On 8 Apr 2007 at 16:24, Jules Richardson wrote:
No - but when I last trawled the web for info on the
CW (about a year ago) I
was getting the impression that what little "officially sanctioned"
documentation and example code there was out there was squarely aimed at Windows.
There is definitely a register-level description and source code for
the MK3 out there that shows how to get the PCI resource values from
the BIOS. There's also a bunch of source code for the MK I.
Myself, I use my own code to drive the cards; I've never needed code
from others.
The interface to the card is brutally simple--unless the MK4 has
added some additional stuff. You step the drive by setting the
direction and pulsing the step line. None of this fancy stuff where
the CW actually remembers the current cylinder number. About the
only thing the CW will do for you is wait and collect data when the
the index pulse goes active--and then will stop when the index pulse
goes active again. There's a 128K SRAM that holds the data until
you're ready to read it back via programmed I/O.
The index feature may not be of particular value for some diskettes--
I've got some formats here that don't use the index for anything--
they just start formatting wherever the disk happens to be in its
rotation.
Generally, I'll collect data under DOS real mode (although Win 9x
works okay) and then digest it with a 32-bit program.
The data from the catweasel is basically a series of counts between
pulses. It's a bit difficult looking at a data stream from the CW
and figuring out what you're looking at. I've got a little Windows
utility that takes any track and plots the data on a time axis,
changing from 1 to 0 with every pulse. The graphical representation
really helps to figure things out, particularly when dealing with
someone's idea of GCR.
Cheers,
Chuck