Hi guys,
I've just spent an hour or so fixing more bugs in the DiscFerret
microcode. Turns out the hard-sector track mark detector I was so
pleased with... didn't actually work. What's that old saying about pride
coming right before a fall?
Anyway -- it's fixed now, along with a few other bugs. Basically, I
screwed up the logic which generates the 250us and 500us master clocks,
meaning the step rates were about 2x too fast. I'm surprised my drives
managed to keep up at the rate the DiscFerret was stepping them (1.5ms a
step for the 3.5in drive!)
I've done some tests with a 10-sector NorthStar disc, and managed to get
a valid read. Next up is adding NorthStar support to the disc analyser,
but that's going to have to wait until next weekend...
There's also a new feature in Mcode 001F -- index speed measurement.
This is essentially a frequency counter tied to the INDEX pin. With
this, you can measure the rotational speed of the disc -- which could be
useful for testing disc drives, and adjusting the rotational speed of
the spindle motor (on drives which have such adjustments).
The new registers have been added to the current 'TIP' version of the C
API, and the Python API (which still lives in the firmware repository,
under the 'test' directory).
As always, if you have any questions, ask away -- either on Classiccmp
(cctalk or cctech), discferret-l, or the Vintage Computer Forums (though
you may well have to PM me to get my attention!)
Thanks,
--
Phil.
classiccmp at philpem.me.uk
http://www.philpem.me.uk/