:::An ATA controller works by writing binary-coded commands into registers implemented on each device.  One of these is called the Device register; each device has one (and several others).  Unlike in older interfaces like ST-506, there are no "device select" lines in the cable.  There are bits (the CS, chip select, and DA, device address) in the wires that indicate which register is being addressed, but whatever is sent is actually written into the selected registers of both devices on the cable.  The devices figure out which commands to pay attention to and which to ignore by looking at the DEV bit in the Device register.  When reading from device registers, only the device whose logical address ("device 0" or "device 1") matches this bit responds. Since there is only one bit there is no obvious way to support more than two devices!