Atari SIO
The Serial Input/Output system, universally known as SIO, was a proprietary peripheral bus and related software protocol stacks used on the Atari 8-bit family to provide most input/output duties for those computers. Unlike most I/O systems of the era, such as RS-232, SIO included a lightweight protocol that allowed multiple devices to be attached to a single daisy-chained port that supported dozens of devices. It also supported plug-and-play operations. SIO's designer, Joe Decuir, credits his work on the system as the basis of USB.
The ports of an Atari 800 with the SIO port second from the left. | |||
Type | serial bus | ||
---|---|---|---|
Production history | |||
Designer | Joe Decuir/Atari Inc. | ||
Designed | 1978 | ||
Manufacturer | Atari Inc. | ||
Produced | 1979 to 1992 | ||
General specifications | |||
Hot pluggable | in theory | ||
External | yes | ||
Pins | 13 | ||
Connector | D-subminiature variant | ||
Data | |||
Data signal | Bi-directional serial | ||
Width | 8 + start/stop = 10 | ||
Bitrate | ~120 kbit/s maximum | ||
Max. devices |
256 maximum 8 in use | ||
Protocol | Serial | ||
Pinout | |||
Pin 1 | CLOCKIN | Clock input | |
Pin 2 | CLOCKOUT | Clock output | |
Pin 3 | DATAIN | Data input | |
Pin 4 | GND | Ground | |
Pin 5 | DATAOUT | Data output | |
Pin 6 | GND | Ground | |
Pin 7 | COMMAND | Command | |
Pin 8 | MOTOR | Motor control | |
Pin 9 | PROCEED | Proceed | |
Pin 10 | +5V | +5V/Ready | |
Pin 11 | AUDIOIN | Audio in | |
Pin 12 | +12V | +12V (400/800 only) | |
Pin 13 | INTERUPT | Interrupt |
SIO was developed in order to allow expansion without using internal card slots as in the Apple II, due to problems with the FCC over radio interference. This required it to be fairly flexible in terms of device support. Devices that used the SIO interface included printers, floppy disk drives, cassette decks, modems and expansion boxes. Some devices had ROM based drivers that were copied to the host computer when booted allowing new devices to be supported without native support built into the computer itself.
SIO required logic in the peripherals to support the protocols, and in some cases a significant amount of processing power was required - the Atari 810 floppy disk drive included a MOS Technology 6507 for instance. Additionally, the large custom connector was expensive. These drove up costs of the SIO system, and Decuir blames this for "sinking the system". There were unsuccessful efforts to lower the cost of the system during the 8-bits' history.
The name "SIO" properly refers only to the sections of the operating system that handled the data exchange, in Atari documentation the bus itself is simply the "serial bus" or "interface bus", although this is also sometimes referred to as SIO. In common usage, SIO refers to the entire system from the operating system to the bus and even the physical connectors.