Using a 3.5" 720k disk...

Chuck Guzis cclist at
Sun Apr 19 11:24:43 CDT 2009

On 18 Apr 2009 at 22:54, Chris Elmquist wrote:

 > I use an ATMEL ATTiny2313 microcontroller and make heavy use of 
> > of the timer/counter units.  I have the counter running at 8 MHz/64
> > = 8uS period.

Chris, I  did the same thing with a Microchip 12F629 (another 8 pin 
uC) but applied to 5.25" drives, passing sector marks through when 
present, but otherwise generating 10 sector simulation.  I kept my 
sampling to 16 bits using roughly  that precision for a 167 msec rev 
and even timed each rev for the next one as I generated pulses for 
the current one to keep track of any long-term speed variations.  
Sector pulses were exactly 4 msec in length.

My finding (with the help of Andrew Lynch) was that the rev-to-rev 
speed variation on old 5.25" 100 tpi drives was nowhere near stable 
enough; if the speed error from rev to rev varied by more than a few 
msec., you were dead.  With the old open-loop DC tach circuit found 
on old 5.25" drives, this was more than likely.

I don't have any systems using HS diskettes here; if someone wants my 
code, they're welcome to it;  it's PIC assembly and will do both 300 
and 360 RPM drives with the ability to generate 32, 16 or 10 sector 
marks.  The same chip also generates a READY signal for drives that 
don't have them.

It was a work in progress and I'm happy that you found a solution 
using modern 3.5" drives.  My evaluation of 5.25" drives indicates to 
me that it would be a far better idea to physically mark sectors on 
the hub flywheel, use a sensor to grab them and then use a PIC to 
delay them to conform with the positon of the index hole.


More information about the cctech mailing list