Subject: Re: Floppy controller questions
From: Philip Pemberton <philpem at dsl.pipex.com>
Date: Wed, 24 Aug 2005 00:46:29 +0100
To: cctalk at
classiccmp.org
In message <m1E7h9n-000IyXC at p850ug1>
ard at p850ug1.demon.co.uk (Tony Duell) wrote:
Also be aware that many HD-capcable 5.25"
drives turn at 360 rpm all the
time. Which means the data rate if you put a DD (or for that matter an
SD) disk in them is 6/5 times what you'd get with that disk in a DD drive
(which turns at 300 rpm). You may well need to provide a suitable clock
for 300 kbps, for example.
Ick. Time to find a 24MHz crystal oscillator :-/
Divide by 3 gives 8MHz, div24 for 1MHz, div48 for 500kHz, div96 for 250kHz.
And none of those are powers of two. Yay. I think I'll just stick to 8MHz and
1M/500k write clocks.
Unless you use a drive that spins faster then the 500khz rate is fine.
I still need to deal with the "only 16uS to grab a
byte of data" issue.
That's going to be a major pain when the CPU is running at 2MHz... Thankfully
IDE/ATA is fairly speed independent.
I suppose I could use interrupt mode, and hijack the INT (or maybe the NMI)
vector whenever the FDD is being accessed.
Yep, remember the worst case for "fast is 13us! I'd plan for that.
Also the slow rates will give you nominal 32us (27us worst case).
Isn't learning fun?
Beats boredom by miles. ;)
data
separators. And I've seen a board of logic (the original IBM
controller, for example). But I've never seen a real 765 linked to an
I really should try and get a copy of the IBM PC Technical Reference manuals
at some point.
Oh the PC implmentations are generally the worst as a reference, they
really represent a stripped to bare minimum specific for PC encironment.
With just a bit more effort you can do something far more flexible than
that.
Or a S100 board like the Compupro Disk1A.
I've done this at enough times to loose count on S100, multibus, ISA8 and 16
Z80 raw cpu bus (single board), 8085 single board, 8088 single board and
even with an 8749. The Floppy side is largely done for you of you look at
the app nots, existing board manuals and that one site some had a pointer to.
Unless you are using the original Sony 3.5"
drives, which turn at 600
rpm, and thus use twice the data rate you might expect, 5.25" drives and
3.5? drives use the same data rates for the same modes.
All new-ish PC-type floppy drives here. I don't think I've got any of the
original Sony drives - most of mine are MFD920s, with one or two MFD520s (I
prefer the 520s - they're jumperable for DS0 and ideal for RiscPCs). Some of
the Citizen drives that Acorn used are pretty well made, too - I've never
seen one that didn't work properly. Well, except for the one that some oik
(not me) shoved a mini-CD into.
The MFD520 and 920 is good and for 5.25 I really like the teac FD55GFR
as that will do most 40 and 80 track reads including 1.2m. If you intend
to write honest 360k formats with 5.25" drives a FD55B is a good choice.
There are other 5.25 drive that would make goood equivelents to both teacs.
HD disks
(1.2Mbyte, 1.44Mbyte respectively) in their approriate drives
use the same data rates as 8". SD and DD disks are half of those rates
_apart from the 360rpm issue I mentioned above).
Easy way to solve the 360rpm issue: Find the SPEED_SEL pin on the motor
controller, lift the pin then wire it to the edge connector.
Yes, saves pain.
FWIW, 3"
are the same as those too (there never was a HD 3" disk AFAIK).
Heh. Amstrad 3" "indestructable" floppies. Those bring back some
memories...
Mostly dealing with disintegrating drive belts.
Only a problem if your doing them too. ;)
Allison