The Floppy controller interface is used by PCs to communicate with floppy drives. Controllers typically provide one or more 34-pin IDC headers (or on older devices, 34-pin PCB edge connectors) for connection to one or more drives.
Each controller provides one or more floppy buses. Each PC floppy bus can have up to four drives connected, however the standard 34-pin cable only allows connection of up to two drives. Some controllers support the older 34-pin Shugart cabling (with no twist) allowing four drives to be connected to the same cable. Other controllers provide two connectors, allowing two standard PC floppy cables to connect a total of four drives to the same floppy bus.
Some floppy controllers have jumpers that can be used to change the I/O address they respond to, allowing them to function as secondary floppy controllers. This is almost universally unsupported by any PC BIOS, so cards that do this require a custom driver or ROM in order to access the additional drives. Support for this is complicated by the fact that the IRQ and DMA addresses typically cannot be changed, so the driver must be able to share IRQ and DMA lines between the primary and secondary floppy controllers.
As only two controllers can be used, this puts the theoretical maximum limit on the number of floppy drives in a single PC at eight, assuming both a primary and secondary floppy controller that support four drives each. Going beyond this number typically requires moving to a different bus, such as using LS-120 drives which can read 3.5" floppy disks and connect to the IDE bus instead.
This is a list of all floppy controller cards in the wiki. This list also includes composite devices, such as those cards that include an IDE controller or parallel port.
|Device||Bus type||Bus width||Bus speed||8-bit ISA?||Floppy buses||Drives per bus||Secondary?||-5VDC?|
|AB-862G Super I∕O Card||ISA||16-bit||8 MHz||1||2||false||false|
|ACC Microelectronics KT-204||ISA||8-bit||8 MHz||true||2||2||true||false|
|Acculogic sIDE-4∕PLUS||ISA||16-bit||8 MHz||1||2||true||false|
|Asus XP55T2P4||PCI||32-bit||33 MHz||false||1||2||false|
|DTC 7287||ISA||16-bit||8 MHz||1||2||true||false|
|Elitegroup C190||ISA||16-bit||8 MHz||1||2||false||false|
|FIC 486-GIO-VP||VLB||32-bit||50 MHz||false||1||2||false|
|Gemlight PTI237W||ISA||16-bit||8 MHz||1||2||true||false|
|GoldStar Prime 2C MKIII||ISA||16-bit||8 MHz||1||2||true||false|
|Intel Advanced/EV||PCI||32-bit||33 MHz||false||1||2||false|
|Intel TE430VX||PCI||32-bit||33 MHz||false||1||2||false|
|Soltek SL-75KAV||PCI||32-bit||33 MHz||false||1||2||false|
|UMC TK-8663-2J-D02A||ISA||16-bit||8 MHz||1||2||false||false|