Each generation of floppy disk drive (FDD) began with a variety of incompatible interfaces but soon evolved into one de facto standard interface for the generations of 8-inch FDDs, 5.25-inch FDDs and 3.5-inch FDDs.
When multiple floppy disks are connected, many pins are shared, including the read and write data pins. As a result, early floppy drives required jumpers to be set on the drive to tell it which controller commands it should receive. When introducing the PC, IBM sliced the cable between the first and second drive, and twisted seven of the conductors, effectively flipping the four conductors which specifically addressed the first or second drive. (The remaining three were ground only, so were not affected by the twist.) As a result, all drives could have their jumpers set to be drive "B", but if they were connected after the twist, they would appear to the controller as drive "A". This eliminated the need to change selection jumpers in the drive, and eventually many floppy drives were manufactured without jumpers at all, instead being hardwired as drive "B". As the IBM PC created a market for clones and compatibles, many manufacturers adopted the same cable twist system, although jumpers may still be required on systems that are older, or not based on the IBM PC.
The following explanation of pinout is for reference only.
{| class="wikitable" style="border:1; display:inline-table"
|+Floppy drive connector pinout (host controller as a reference)
!Pin number
!Abbreviation
!Description
!Notes
!Type
|-
|2
|DENSEL
|Density Select 1=Low/0=High
|The default use is 0
|Output
|-
|4
|RSVD
|Reserved
|No connection or connect to the ground
|
|-
|6
|RSVD
|Reserved
|No connection or connect to the ground
|
|-
|8
|INDEX#
|Index
|0=Index
|Input
|-
|10
|MOTEA#
|Motor A Enable
|0=Motor Enable Drive 0
|Output
|-
|12
|DRVSB
|Drive Select B
|
|Output
|-
|14
|DRVSA
|Drive Select A
|
|Output
|-
|16
|MOTEB#
|Motor B Enable
|0=Motor Enable Drive 1
|Output
|-
|18
|DIR#
|Direction Select
|Low Current/Direction in uPD765 controller
|Output
|-
|20
|STEP#
|Head Step
|Fault Reset/Step in uPD765 controller
|Output
|-
|22
|WDATA
|Write Data
|
|Output
|-
|24
|WGATE#
|Floppy Write Enable
|0=Write Gate
|Output
|-
|26
|TRK0#
|Track 0
|Fault/Track 0 in uPD765 controller
|Input
|-
|28
|WPT#
|Write Protect
|0=Write Protect
|Input
|-
|30
|RDATA#
|Read Data
|
|Input
|-
|32
|HDSEL#/SIDE
|Head Select / Side select
|Two uses, see application or use for details. (Side select:1=Side 0/0=Side 1)
|Output
|-
|34
|DSKCHG#
|Disk Change
|1=Disk Change/0=Ready
|Input
|-
|3
|RSVD
|Reserved
|No connection or connect to the ground
|
|-
|5
|N/C
|No connection
|Pins usually do not exist here to prevent the male plug from being inserted in the opposite direction
|
|-
|Odd pins 1 thru 33
|GND
|Ground
|Except for the 3rd and 5th pins
|Power
|}
"#" indicates that the low electric level is effective (aka "active low").
Motor A,B is also known as Motor 0,1.
Since floppy disks are rarely used nowadays, "MOTEB#" and "DRVSB" pins are not connected in motherboards designed with floppy disk data interfaces, and only one floppy disk drive can be connected.
{| class="wikitable" style="border:1; display:inline-table"
|+Floppy drive A/B twist pinout
!Wire
!Controller
!Drive A
!Drive B
!Description
|-
|1-9
|1-9
|1-9
|1-9
|No Change
|-
|10
|10
|16
|10
|Motor Enable Drive 0/1
|-
|11
|11
|15
|11
|Ground, No Change
|-
|12
|12
|14
|12
|Drive Select 0/1
|-
|13
|13
|13
|13
|Ground, No Change
|-
|14
|14
|12
|14
|Drive Select 0/1
|-
|15
|15
|11
|15
|Ground, No Change
|-
|16
|16
|10
|16
|Motor Enable Drive 0/1
|-
|17-34
|17-34
|17-34
|17-34
|No Change
|}
See also
- Floppy disk controller
- Floppy drive power connector
References
</references>
Further reading
<!-- removing redundant links not likely to be used in article
- (5 pages)
- "Shugart-Bus", "Shugart-kompatibler Bus"
- https://www.ndr-nkc.de/download/docs/FLO3_BAU.PDF
- https://torlus.com/floppy/forum/viewtopic.php?t=3276 "floppy bus"
- https://retrocomputing.stackexchange.com/questions/5302/why-is-the-rdy-signal-on-floppy-disk-drives-disabled "original Shugart floppy bus specification"
- https://de.set18.net/Gepard_(Computer).html
- https://forum.classic-computing.de/forum/index.php?thread/14477-gould-logic-analyzer-k105-d-k115-d-disassembler-software-und-doku-gesucht/ "Standard-Shugart-Bus"
- https://www.c64-wiki.de/wiki/Alan_Shugart "Shugart-Bus" (Shugart bus), "Shugart-Stecker" (Shugart connector), "Floppy-Bus" (floppy bus)
- https://www.stcarchiv.de/stc1992/09_gehtdoch.php "Shugart-Bus"
- https://www.mikrocontroller.net/topic/458932 "Shugart-Bus", "Floppy-Bus"
-->
