Chip Pia
El circuito integrado del adaptador de interfaz periférica (PIA) es un microprocesador especial que se utiliza para controlar los puertos Atari, los conectores del controlador uno a cuatro. Los puertos se pueden utilizar tanto para la entrada como para la salida de forma simultánea o alternativa.
PORTA 54016 $D300
Leer o escribir datos desde los puertos del joystick, dependiendo de cómo se configure la dirección de los datos (por defecto es 0 "lectura/entrada"). Para fijar la dirección, ponga el Bit 2 de PACTL a 0 y defina la dirección fijando los bits de PORTA (0=lectura, 1=escritura) para cada línea de entrada/salida. A continuación, vuelva a poner el Bit 2 de PACTL a 1.
Bit | Función | N° Joystick | Pines de Joystick | Dirección | Paddle |
---|---|---|---|---|---|
7 | PA7 | Joystick 2 | Pin 4 | Derecha | Paddle 4 botón PTRIG3 |
6 | PA6 | Joystick 2 | Pin 3 | Izquierda | Paddle 3 botón PTRIG2 |
5 | PA5 | Joystick 2 | Pin 2 | Abajo | No usado |
4 | PA4 | Joystick 2 | Pin 1 | Arriba | No usado |
3 | PA3 | Joystick 1 | Pin 4 | Derecha | Paddle 2 botón PTRIG1 |
2 | PA2 | Joystick 1 | Pin 3 | Izquierda | Paddle 1 botón PTRIG0 |
1 | PA1 | Joystick 1 | Pin 2 | Abajo | No usado |
0 | PA0 | Joystick 1 | Pin 1 | Arriba | No usado |
PORTB 54017 $D301
Esta posicion cambia de funcion dependiendo del modelo, partimos con 400/800.
Leer o escribir datos desde los puertos del joystick, dependiendo de cómo se configure la dirección de los datos (por defecto es 0 "lectura/entrada"). Para fijar la dirección, ponga el Bit 2 de PBCTL a 0 y defina la dirección fijando los bits de PORTB (0=lectura, 1=escritura) para cada línea de entrada/salida. A continuación, vuelva a poner el Bit 2 de PBCTL a 1.
Bit | Función | N° Joystick | Pines de Joystick | Dirección | Paddle |
---|---|---|---|---|---|
7 | PA7 | Joystick 3 | Pin 4 | Derecha | Paddle 8 botón PTRIG7 |
6 | PA6 | Joystick 3 | Pin 3 | Izquierda | Paddle 7 botón PTRIG6 |
5 | PA5 | Joystick 3 | Pin 2 | Abajo | No usado |
4 | PA4 | Joystick 3 | Pin 1 | Arriba | No usado |
3 | PA3 | Joystick 4 | Pin 4 | Derecha | Paddle 6 botón PTRIG5 |
2 | PA2 | Joystick 4 | Pin 3 | Izquierda | Paddle 5 botón PTRIG4 |
1 | PA1 | Joystick 4 | Pin 2 | Abajo | No usado |
0 | PA0 | Joystick 4 | Pin 1 | Arriba | No usado |
En modelos XL/XE es para manejo de memoria :
Bit | Función | Dirección |
---|---|---|
7 | $5000-$57FF | 0=Self Test, 1=RAM |
6 | No usado | |
5 | ANTIC | 0=ANTIC tiene acceso a extra RAM, 1=ANTIC tiene acceso normal RAM |
4 | CPU | 0=CPU tiene acceso a extra RAM, 1=CPU tiene acceso normal RAM |
3 | Banco | Ver tabla de combinación |
2 | Banco | Ver tabla de combinación |
1 | $A000-$BFFF | 0=ATARI BASIC ROM, 1=RAM |
0 | $C000-$FFFF | 0=RAM, 1=OS-ROM |
Combinación de los bancos
Bit 2 | Bit 3 | N° Banco |
---|---|---|
0 | 0 | Numero 0 |
0 | 1 | Numero 1 |
1 | 0 | Numero 2 |
1 | 1 | Numero 3 |
PACTL 54018 $D302
Control del PORTA, dependiendo del valor es su función según la siguiente tabla :
Bit | Función | Descripción |
---|---|---|
7 | PA7 | Sólo lectura: Estado de interrupción de PROCEED, 1=Interrupción |
6 | PA6 | Siempre 0 |
5 | PA5 | Siempre 1 |
4 | PA4 | Siempre 1 |
3 | PA3 | Control del motor del reproductor de cassettes: 0=Encendido, 1=Apagado |
2 | PA2 | 1=Utilizar el PORTA para la entrada/salida de datos, 0=Definir la dirección de los datos |
1 | PA1 | Siempre 0 |
0 | PA0 | Interrupción de la línea PROCEED on/off, puesta a 0 por el OS |
Para definir la dirección de datos del PORTA, establezca el bit 2 de PACTL en 0. Luego escriba un byte en PORTA, donde los bits establecidos en 1 indican ESCRITURA y los bits establecidos en 0 indican LECTURA. Normalmente, PORTA se establece en %00000000 "todas las entradas".
PBCTL 54019 $D303
Control del PORTB "Sólo modelos 400/800", dependiendo del valor es su función según la siguiente tabla :
Bit | Función | Descripción |
---|---|---|
7 | PA7 | Interrupción del estado de SIO |
6 | PA6 | Siempre 0 |
5 | PA5 | Siempre 1 |
4 | PA4 | Siempre 1 |
3 | PA3 | Estado de la línea de comando de SIO |
2 | PA2 | 1=Utilizar el PORTB para la entrada/salida de datos, 0=Definir la dirección de los datos |
1 | PA1 | Siempre 0 |
0 | PA0 | Interrupción de la línea PROCEED on/off, puesta a 0 por el OS |
Para definir la dirección de datos del PORTB, establezca el bit 2 de PBCTL en 0. Luego escriba un byte en PORTB, donde los bits establecidos en 1 indican ESCRITURA y los bits establecidos en 0 indican LECTURA. Normalmente, PORTB se establece en %00000000 "todas las entradas".