What is the little twist in this floppy ribbon cable for?

if this is a floppy cable that twist serves to select how the first (before twist) and second drive (after the twist) will be A:or B:

from http://www.pcguide.com/ref/fdd/confCable-c.html

You will also notice that there is an odd "twist" in the floppy cable, located between the two pairs of connectors intended for the floppy drives. Despite the fact that this appears to be a "hack" (well, it really is a hack), this is in fact the correct construction of a standard floppy interface cable. There are some cables that do not have the twist, and it is these that are actually non-standard! What the twist does it to change the connection of the drive on the far end of the twist so that it is different than the drive before the twist. This is done to cause the drive at the end of the cable to appear as A: to the system and the one in the middle to be as B:.

On the PC floppy-drive cable, one of the wires is activated when a request is made to access drive A:, and another is activated when a request is made to access drive B:. Additionally, one wire is activated when the drive A: motor should turn on, while the other does likewise for drive B: (obviously when code is going to want to access drive A: it's going to turn on the motor, but having separate motor-control wires will mean that code which wants to access drive A: now but will be wanting to access drive B: again can turn on both motors). While it would have been possible to use jumpers on each drive to indicate whether it should respond to the first or second set of wires, standard practice has been to have all drives configured to respond to the drive-select and motor-start wires associated with drive B:, but then have a cable twisted between the two drive connectors so that the drive attached to the far-end connector will see the drive B: select wire when the controller is activating the drive A: wire.

While it might seem a little backward to have the drives respond to the drive B: wires in the absence of a twist, doing things that way makes it possible to use the full length of the cable when connecting a single drive A:, without requiring that the cable be twisted both before and after the middle connector.

Summarizing everything


The drive before the twist will be drive B while the one on the end will be A. This way, there is no need to "configure" the drives which drive (A or B) are they going to be and what they should listen to. They can be configured identically and the twist will swap the controlling input for them.

Or quoting sawdust, from this comment:

The cable twist allows both floppy drives to be configured identically (for drive selection) when installed (for manufacturing convenience), yet operationally, can be uniquely selected as either the first drive or the second drive based on cable position.

Pins and cabling

The twisted pins are from pin 10 to pin 16.

Pin setup

Cabling setup


Without the twist, we have to configure the drives and set them to be drive A for one and B for the other, because when the motherboard selects for example drive A, both drives would receive the select signal if they are both configured as a drive A. To avoid this, we should setup them by jumpers or by hard-wiring their role so there would be a drive set to be drive A that would listen to signals on the select A wire, while the other drive would be drive B that would listen to signals in select B.

This is totally doable, but we don't want to mess with the setting of the drives, just want to throw them into the PC case and plug in the cables.

Let's say both drives are hard-wired to be drive B. Now we don't have to setup them, but they both listened to the select B signal, while the motherboard would still want to send a signal to select A to select drive A. Here comes the twist! After the first drive, we twist the select cables so the drive A (that is still a hard-wired drive B) will listen to the select A controls, because we connected the select A pin to its select B pin (the only pin it listens to).

Now the drive before the twist will work as a drive B listening to select B signals, while the drive after the twist will work as drive A listening to select A signals. They're both hard-wired drive Bs that listen to their select B pin, but for one drive we connected the select A pin to its select B so the motherboard can control it through the select A bus.

With hobbs's words here:

The pins are in fact "Drive Select A", "Drive Select B", "Motor Enable A", and "Motor Enable B". The twist swaps Drive Select A<->B (pins 14 and 12, respectively) and Motor Enable A<->B (pins 10 and 16, respectively). All are outputs on the floppy controller and inputs on the drives.

and here:

The rest of the pins (read and write data, stepper motor control, head select, etc.) are bussed in the normal fashion, which is why the drive select pins are so critical. A drive has to ignore all input and produce no output when it's not selected

While hard-wired drives are usually a drive B, there is the chance to be a drive A as said by Tonny here:

I once had a whole afternoon of entertainment trying to figure out why a drive which came from a working system wouldn't work in another computer... It turned out to be hardwired for A and the original computer used a normal cable, but had the signals twisted on the motherboard itself!

Also, please note what Michael Hampton wrote here:

Certain non-PC-compatible systems (like the Radio Shack Color Computer) did actually use floppies without the cable twist, but required manually setting the jumpers, and could indeed use four drives at once. While this hack allows for the end user to not have to mess with jumpers, it also restricts the system to two floppy drives.