Las fuentes de este documento son dos archivos de texto PD, DART.DOC (de SJ Dibble) y AMS-SIO.DAT, que cubren únicamente el puerto serie. Se agradecería información sobre el puerto paralelo y cualquier otra interfaz serie/paralelo.
Richard Fairhurst , 1997
DIRECCIONES DE PUERTO
El CPS8256 utiliza las siguientes direcciones de E/S. Como referencia, los puertos equivalentes en las interfaces Amstrad, Pace y Cirkit para el CPC se incluyen entre paréntesis.
| &E0 | (&FADC) | Datos de DART |
| &E1 | (&FADD) | Control de DART |
| &E2 | (&FADE) | Datos de DART (puerto B) |
| &E3 | (&FADF) | Control DART (puerto B) |
| &E4 | (&FBDC) | 8253 contador 0 |
| &E5 | (&FBDD) | 8253 contador 1 |
| &E6 | (&FBDE) | no usado |
| &E7 | (&FBDF) | 8253 palabra en modo de escritura |
VELOCIDADES EN BAUDIOS
Para configurar la velocidad de transmisión, envíe &36 al puerto &E7 y dos valores de la tabla (en el orden indicado) al puerto &E4. Para configurar la velocidad de recepción, sustituya &36 por &76. Estos valores se obtienen con el CTC 8253 conectado a 1.84375 MHz.
Tenga en cuenta que el 8250 solo es fiable a velocidades de hasta 9600 baudios. Para velocidades más altas, debería sustituirlo por un chip 16550AF, compatible con el 8250. (Gracias a Rob Scott por esta información).
| 31250 | &00, &04 |
| 19200 | &00, &07 |
| 9600 | &00, &0D |
| 7200 | &00, &11 |
| 4800 | &00, &1A |
| 3600 | &00, &23 |
| 2400 | &00, &34 |
| 2000 | &00, &3F |
| 1800 | &00, &45 |
| 1200 | &00, &68 |
| 600 | &00, &D0 |
| 300 | &01, &A0 |
| 200 | &02, &71 |
| 150 | &03, &41 |
| 110 | &04, &70 |
| 75 | &06, &83 |
| 50 | &09, &C4 |
| 45 | &0A, &D9 |
REGISTROS DART
Otras funciones de control implican la programación del DART. Para escribir un valor en un registro, primero envíe el número de registro y luego el nuevo valor a &E1. Para leer un valor, envíe el número de registro y luego podrá ingresarlo desde el mismo puerto.
| &18: | restablecer puerto |
| &38: | restablecer bits de error |
| b7 y b6: | bits de datos Rx ( 118 bits, 107, 016, 005) |
| b5: | protocolo de enlace de hardware mediante RTS/CTS |
| b4 a b1: | deben ser 0 |
| b0: | habilita la línea de datos Rx |
| b7 y b6: | modo de reloj DART (establecido en 01) |
| b5 y b4: | no utilizados (establecidos en 0) |
| b3 y b2: | bits de parada ( 112 bits, 101, 011,5, 00ilegales) |
| b1: | tipo de paridad ( 1par, 0impar) |
| b0: | verificación de paridad activada/desactivada |
| b7: | DTR habilitado/deshabilitado |
| b6 | bits de datos de Tx ( 118 bits, 107, 016, 005) |
| b4: | interrupción de envío |
| b3: | habilitar línea de datos de Tx |
| b2: | no utilizado |
| b1: | RTS habilitado/deshabilitado |
| b0: | no utilizado |
| b7: | interrupción recibida |
| b6: | no utilizada |
| b5: | CTS |
| b4: | indicación de timbre |
| b3: | DCD (detección de portadora) |
| b2: | búfer de transmisión listo |
| b1: | relacionado con interrupción |
| b0: | carácter de recepción disponible |
| b7: | no utilizado |
| b6: | error de trama |
| b5: | error de desbordamiento de Rx |
| b4: | error de paridad |
| b3 a b1: | no utilizado |
| b0: | todos enviados |