Skip to main content
Home Forums 68kMLA Possible? Mount FD through Parlallel Port? — #6
Post #6 by Gorgonops
Source Forum68kMLA
CategoryTroubleshooting
Post DateWed, 1 Jul 2009 - 18:10
Original URLhttps://68kmla.org/bb/threads/possible-mount-fd-through-parlallel-port.17822/
Post
This is probably a "doable" project, but it's going to involve at least some hardware. (IE, I don't think you'll be able to get away with just a cable linking bare pins on the parallel port to the Mac floppy connector.)

As previously noted, the IWM in the Macintosh is similar but not identical to the Apple ][ controller. There's a possible-to-build-yourself hardware device out there that emulates a physical floppy drive and works with the Apple ][ (through an additional hardware adapter) called the SVD, aka, Semi-Virtual-Disk. It's a fairly simple device involving about a dozen ICs (including the Apple ][ adapter) and a few discrete components. This device uses a microcontroller and built-in RAM to serve a disk image loaded it into via RS-232 serial, but someone with a bit of digital design experience could probably replace the microcontroller, RAM, and serial hardware with an EPP parallel port and use host software to drive the thing. (The remaining relevant circuitry is just NOR and NAND gates and signal conditioning.)

There's a decent page on parallel-port interfacing here. The software's going to be "tricky" unless you design the hardware to include an I/O buffer that can match the expected clock speed of incoming/outgoing data, because otherwise you're going to have to drive this with polling and software timing loops. (Off the top of my head I think in *theory* the PC's built-in timer chip *might* have sufficient resolution to regulate output, but... looking at it, maybe not. A "Double Density" floppy drive transfers data at about 250Kbps, a high-density one twice that, and... that's outputting a bit 500,000 times a second. PC timers are clocked at 1Mhz so... maybe not. Unless you make your interface board able to accept byte transfers and FIFO them out according to the disk controller's clock this might not work, since you *are* going to be bumping up against the limits of how fast you can bit-bang the parallel port. At the very least you're going to have to do this under DOS or a similar bare-metal environment where you're not going to task-switch away from the driver...)

Ramble ramble ramble...

mp.ls