ned@h-three.UUCP (ned) (09/27/88)
In article <4@cpro.UUCP>, asgard@cpro.UUCP (J.R. Stoner) writes: > From article <433@dragos.UUCP>, by ruiu@dragos.UUCP (Dragos Ruiu): > , It strikes me that a driver that talks to a tape drive that looks like a > , floppy should be easy. Can anyone help me ? > > I can't help you on specifics, but I can tell you from long and sad > experience a floppy-tape is not an easy task. How do I know? I wrote the [gory details deleted] Amen! I modified a floppy driver to support an Irwin tape drive on a '186 UNIX box using a Western Digital floppy controller (WD2793). It was far from easy. It's misleading to say that a floppy tape (at least, an Irwin) looks like a floppy drive to a controller. It's more accurate to say that a floppy tape is (awkwardly) manipulated via a floppy controller. For example, to position a real floppy drive's head one loads the 2793's data register with the desired track number. The 2793 then sends the floppy drive the appropriate number of step pulses (in the right direction) to actually position the head. Well, commands are sent to the Irwin floppy tape with step pulses. So, to send the Irwin a command, you 0 the floppy controller's track register, load the floppy tape command number in the data register, and issue the seek track command. The 2793 then sends the step pulses to the Irwin. The Irwin knows when a command has been sent when another step pulse hasn't arrived within a certain amount of time. Elegant, right? :-) But that's just one example of the special interface, and one that's relatively easy to deal with. The real headaches are in positioning the tape and responding to interrupts fast enough during reads and writes (even with DMA, which my machine had). I'll email details if requested (with condolences). -- Ned Robie uunet!h-three!ned