The floppy disk drive pinout and other info in the document

Started by archyx, Mar 26, 2006, 17:24

Previous topic - Next topic

archyx

I found quite a lot of unclear information from this document: http://pinouts.ru/data/InternalDisk_pinout.shtml

First of all, the pinout in the table is of the "IBM PC" floppy drive controller, not of the floppy drive. The pinout of an "IBM PC" floppy drive is very much the same as the standard Shugart interface pinout with the exceptions of pins 2 (/DCD on Shugart, /HDSEL on "IBM PC") and 34 (/RDY on Shugart, /DCD on "IBM PC") and some drives don't have /DS2 and /DS3 at all.

The standard Shugart pinout differs a little from its "IBM PC" version:

    2 = /DCD - Disk Change Detect
    4 = /DS3 - Device Select 3 (I'm not sure but Amiga 500's schematics reveal that this signal might be used for motor control of internal DF1: on the Amiga 2000)
    6 = /INUSE - A common open-collector LED driver signal? I have never seen this signal used anywhere.
    10 = /DS0 - Device Select 0
    12 = /DS1 - Device Select 1
    14 = /DS2 - Device Select 2
    16 = /MTRON - Motor On
    34 = /RDY - Drive Ready

And the pin #3 is not a ground pin, it's a key pin and it shouldn't even exist on any drives. The rest of the signals are the same.

And then a little more information about the "IBM PC" floppy drive cable and its twist... On a standard floppy drive there is absolutely no way to remap the motor on signal to another pin with jumpers. Therefore to have independent motor control for two drives the cable must provide this remapping with the traditional seven-conductor twist. If you jumper a floppy drive to work as drive A (unit 0) and connect it to an "IBM PC" controller with a direct cable, the drive will be selected when the controller tries to turn on the motor of drive A but nothing will happen and the drive's motor will rotate when drive B's motor is turned on.

The original Shugart interface (from which the "IBM PC" floppy interface is derived a long time ago) doesn't have separate motor on signals for the floppy drives but it does have a total of four device select lines. I have also seen floppy drives that won't turn on their motors unless the according device select signal is driven low. My guess is that this kind of drives strictly follow the original Shugart standard.

Also many synthesizers that have floppy drives use the standard Shugart interface pinout. This is why after replacing a faulty drive many people ask around the Internet why their new floppy drive doesn't work when connected to the synth but works fine on their PC.

The same thing affects the classic Amiga. It uses a very slightly modified Shugart interface pinout at the motherboard (the other /MTRON on pin 4) and a "PC" drive just doesn't work correctly unless the /DCD is remapped to its original pin. The correctly mapped /DCD is enough for AmigaOS but many trackloaders (X-Copy Pro for example) require the /RDY signal which the drive should set low when the motor rotation has stabilised. This signal does exist on most drives but at worst it requires relocating a soldered SMD jumper on the circuit board.

By the way, there are some pinouts (the 26-pin floppy connector used on laptops) and other interfacing information available at http://www.citizen.co.uk/fdd/. I provided a bit too much info here but feel free to use whatever you find useful and discard the rest.

Andrew