J
joseph2k
FyberOptic said:Looks like I ended up with more responses than I figured for such a
short time, so I'll condense my reply to one post before I get behind.
I went and found the service manual to the Commodore 1581 and skimmed
through it, which is starting to reinforce the idea that I'm probably
going to need a floppy controller IC. In the case of the 1581, which
runs off its own 6502 cpu, it uses the WD1770 controller. Since I own
an old dead Atari 810 floppy drive (whichs runs/ran from a 6507), I dug
up some schematics for it as well, and found it uses a WD1771
controller. Despite having not looked at the datasheets yet, I would
assume these are nearly identical.
In the case of the Apple II though, I had always heard how Woz
implemented such a simple controller based more around the main cpu,
which is what prompted me to think I could use something like the
parallel port in the first place, since it gave me the false impression
that it was easy to work with a floppy drive. So much does one learn
in a day's time which proves otherwise!
In things I've found since my initial post, and things written here, I
have a somewhat better understanding of how it's done, at least.
Though even if I did manage to put something together to read bits
accurately from the drive, I still come across the problem of reading
whole sectors. It'd be kind of pointless to have an interface which
was incapable of reading any floppies I wrote elsewhere, after all.
While from the programmer's standpoint we always see the sectors as 512
bytes (as far as PC floppy disks go), I'm sure there's probably some
extra bytes for each sector for error checking, and I have yet to find
any reference for what the structure actually is.
So again, it looks like doing all of this "manually" would require way
more support circuitry than I'd have room for on a breadboard. Even
using an IC might end up taking a bunch of space. But a quick glance
through the WD FD1771 datasheet says it can handle 512 byte sectors, so
I would assume this IC might be okay to read PC floppy disks, though
I'm unsure how compatible it is with whichever was actually used in
PCs.
The reason I mention using the 1771 is because I have that one
available in the 810 disk drive as mentioned above, and unless by some
small chance I got the drive itself going again, I'd be more likely to
just remove the chip (and possibly some other components) for my own
use, assuming it's not burnt out.
Having a chip write out the preamble, data block, crc and terminator as well
as time the inter record gaps and help with the interleave is a big
advantage.