Parallel Bus Interface (PBI)
# Parallel Bus Interface (PBI)

El Parallel Bus Interface o PBI es un puerto de 50 pines presente en los ordenadores Atari 600XL y Atari 800XL. Proporciona acceso directo sin buffer a las líneas del bus del sistema (direcciones, datos y control) corriendo a la misma velocidad que la CPU MOS Technology 6502.

Parte de los ordenadores de la gama XE vienen con el Enhanced Cartridge Interface (ECI), un sistema funcionalmente similar y compatible a nivel de software.

## Detalles

Durante el arranque en caliente, el sistema operativo de los ordenadores Atari de 8 bits busca dispositivos PBI. Si los encuentra, carga el direccionador de información en su tabla de drivers e inicializa el dispositivo si es necesario. El dispositivo puede utilizar el Generic Parallel Device Handler que se le proporciona cuando la dirección es cargada en la tabla de manejadores.

El dispositivo conectado al PBI obtiene su espacio ROM mapeándose en lugar de las subrutinas de punto flotante del sistema operativo. Mientras que el dispositivo está seleccionado, no hay soporte de operaciones en coma flotante. Una vez deseleccionado, las rutinas se restauran.

## Patillaje

Parallel Bus Interface (PBI) - mirando por detrás :

| 1 | 3 | 5 | 7 | 9 | 11 | 13 | 15 | 17 | 19 | 21 | 23 | 25 | 27 | 29 | 31 | 33 | 35 | 37 | 39 | 41 | 43 | 45 | 47 | 49 |
| - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
| 2 | 4 | 6 | 8 | 10 | 12 | 14 | 16 | 18 | 20 | 22 | 24 | 26 | 28 | 30 | 32 | 34 | 36 | 38 | 40 | 42 | 44 | 46 | 48 | 50 |

Parallel Bus Interface (PBI) - Pinout :

| Pin | TOP | Pin | BOTTOM |
| - | - | - | - |
| 1 | GND Ground | 2 | External select |
| 3 | A0 Address output | 4 | A1 |
| 5 | A2 | 6 | A3 |
| 7 | A4 | 8 | A5 |
| 9 | A6 | 10 | GND |
| 11 | A7 | 12 | A8 |
| 13 | A9 | 14 | A10 |
| 15 | A11 | 16 | A12 |
| 17 | A13 | 18 | A14 |
| 19 | GND | 20 | A15 |
| 21 | D0 Data (bidirectional) | 22 | D1 |
| 23 | D2 | 24 | D3 |
| 25 | D4 | 26 | D5 |
| 27 | D6 | 28 | D7 |
| 29 | GND | 30 | GND |
| 31 | Phase 2 clock output | 32 | GND |
| 33 | NC Reserved | 34 | Reset output |
| 35 | (IRQ) Interrupt request | 36 | Ready input |
| 37 | NC | 38 | External decoder output |
| 39 | NC | 40 | Refresh output |
| 41 | Column address output | 42 | GND |
| 43 | MPD Math pack disable input | 44 | Row address strobe |
| 45 | GND | 46 | Latch read/write out |
| 47 | NC (+5V on 600XL only) | 48 | NC (+5V on 600XL only, used for 1064) |
| 49 | Audio input | 50 | GND |

## Dispositivos soportados

* Atari 1064 Memory Module - Diseñado específicamente para el Atari 600XL, actualiza la memoria del 600XL a 64kB. Es el único dispositivo para este bus lanzado por Atari.
* Atari 1090 Expansion System - Diseñado para proporcionar ranuras de expansión a los ordenadores XL. Nunca lanzado.
* ICD Multi I/O Board: proporciona un RAMdisk, un puerto paralelo de impresora, un puerto serie, spool de impresora y una interfaz de disco duro.
* CSS Black Box: proporciona una interfaz SCSI, un puerto paralelo de impresora, un puerto serie, una controladora de unidades de disquete y un menú de gestión del sistema.

Estos dos últimos dispositivos también soportan el Enhanced Cartridge Interface (ECI).

