es:puerto_serie
Diferencias
Muestra las diferencias entre dos versiones de la página.
| es:puerto_serie [2026/04/24 15:18] – creado jesus | es:puerto_serie [2026/04/24 15:19] (actual) – jesus | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| ~~NOTOC~~ | ~~NOTOC~~ | ||
| - | ===== GUIA DE REFERENCIA | + | ===== REFERENCIA |
| ---- | ---- | ||
| <WRAP justify> | <WRAP justify> | ||
| - | Esta es una guía incompleta del hardware | + | Las fuentes |
| - | Las fuentes incluyen "Todo lo que siempre quisiste saber..." | + | Richard Fairhurst , 1997 |
| - | + | ||
| - | Richard Fairhurst , 1996-1997 | + | |
| </ | </ | ||
| - | **INTRODUCCIÓN** | + | **DIRECCIONES DE PUERTO** |
| <WRAP justify> | <WRAP justify> | ||
| - | El sistema operativo | + | El CPS8256 utiliza las siguientes direcciones |
| - | + | ||
| - | El **BDOS** (Basic Disc Operating System) es el código del sistema operativo, escrito por Digital Research. Debería permanecer prácticamente igual en cualquier máquina que ejecute CP/M. | + | |
| - | + | ||
| - | La **BIOS** (Sistema Básico de Entrada/ | + | |
| - | + | ||
| - | También es relevante | + | |
| - | + | ||
| - | El **TPA** (Área de programa transitorio) es el área de memoria, que comienza en &0100 en un espacio de direcciones de 64k, donde los programas de usuario (archivos .COM) se cargan y se ejecutan. | + | |
| </ | </ | ||
| - | |||
| - | **PUERTOS DE E/S** | ||
| - | |||
| - | * **__Hardware externo/ | ||
| <WRAP box> | <WRAP box> | ||
| - | | &00 | I | Registro de estado de FDC | | + | | &E0 | (&FADC) | Datos de DART | |
| - | | &01 | E/S | Registro | + | | &E1 | (&FADD) | Control |
| - | |&88-&8F | | Puertos paralelos | | + | | &E2 | (&FADE) | Datos de DART (puerto B) | |
| - | | &9F | I | Joystick Kempston | | + | | &E3 | (&FADF) | Control DART (puerto B) | |
| - | | &A0 | I | Ratón AMX. Movimiento vertical: b0-3 contador ascendente | + | | &E4 | (&FBDC) | 8253 contador 0 | |
| - | | &A1 | I | Ratón AMX. Movimiento horizontal: b0-3 contador derecho de 4 bits, b4-7 contador izquierdo. | | + | | &E5 | (&FBDD) | 8253 contador 1 | |
| - | | &A2 | I | Ratón AMX. Estados | + | | &E6 | (&FBDE) | no usado | |
| - | | &A0-&A2 | | Interfaz MIDI EMR | | + | | &E7 | (&FBDF) | 8253 palabra en modo de escritura |
| - | | &A8-& | + | |
| - | | &C8-& | + | |
| - | | &D0-& | + | |
| - | | &DF | I | MasterScan: tinta b0 debajo del cabezal de escaneo. | | + | |
| - | | &E0 | I | Joystick Cascade/ | + | |
| - | | &E0-& | + | |
| </ | </ | ||
| - | | + | **VELOCIDADES EN BAUDIOS** |
| - | + | ||
| - | <WRAP box> | + | |
| - | | &F0 | EL | Seleccione el banco para &0000 | | + | |
| - | | &F1 | EL | Seleccione banco para &4000 | | + | |
| - | | &F2 | EL | Seleccione banco para &8000 | | + | |
| - | | &F3 | EL | Seleccione el banco para &C000. Normalmente, | + | |
| - | | &F4 | EL | b7-b4: cuando se configura, fuerza que las lecturas de memoria accedan al mismo banco que las escrituras para &C000, &0000, &8000 y &4000 respectivamente | | + | |
| - | | &F4 | I | Como &F8, con la condición de que b3-0 se restablezca al leer el puerto. Por lo tanto, lea para reactivar las interrupciones. | | + | |
| - | | &F5 | EL | Dirección de la RAM del rodillo. b7-5: banco (0-7). b4-1: dirección / 512. | | + | |
| - | | &F6 | EL | Posición de pantalla vertical | | + | |
| - | | &F7 | EL | b7: video inverso. b6: habilitación de pantalla. | | + | |
| - | | &F8 | EL | 0 finalizar arranque, 1 reiniciar, 2/3/4 conectar FDC a NMI/ | + | |
| - | | &F8 | I | b6: retorno de 1 línea, leer dos veces seguidas indica retorno de trama. b5: interrupción FDC. b4: indica pantalla de 32 líneas. b3-0: contador de interrupciones de 300 Hz: permanece en 1111 hasta que se restablece in a, | + | |
| - | | & | + | |
| - | | &FC | E/S | Datos de la impresora matricial | | + | |
| - | | &FD | EL | Comandos de impresora matricial | | + | |
| - | | &FD | I | Estado de la impresora matricial. Barra de seguridad b7 (0 fuera), papel b2 encontrado. | | + | |
| - | </ | + | |
| - | + | ||
| - | <WRAP justify> | + | |
| - | A diferencia del CPC, el PCW utiliza el método estándar Z80 para acceder a los puertos de E/S. El puerto se almacena como un número (de un solo byte) en C y out ( c ),a se utiliza una instrucción como [insertar número], o bien se pasa como parte de la instrucción out (& | + | |
| - | </ | + | |
| - | + | ||
| - | **INTERRUPCIONES/ | + | |
| <WRAP justify> | <WRAP justify> | ||
| - | Las interrupciones ocurren 300 veces por segundo, o 6 veces por fotograma | + | 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 |
| - | La velocidad de reloj del PCW es de 3,4 MHz, inferior | + | Tenga en cuenta que el 8250 solo es fiable |
| - | </ | + | |
| - | + | ||
| - | **MAPA DE MEMORIA** | + | |
| - | + | ||
| - | <WRAP justify> | + | |
| - | El PCW 8256 tiene 16 bancos de 16k cada uno. Las máquinas de 512k y las expandidas obviamente contienen más. El contenido predeterminado es: | + | |
| </ | </ | ||
| <WRAP box> | <WRAP box> | ||
| - | |0| &0000-&3FFF:| BIOS, jumpblock extendido| | + | | 31250 | &00, &04 | |
| - | |1| &0000-&192F:| BIOS| | + | | 19200 | &00, & |
| - | | | &1930-&3FFF:| pantalla| | + | | 9600 | &00, &0D | |
| - | |2| &0000-&332F:| pantalla| | + | | 7200 | &00, &11 | |
| - | | | &3600-&37FF:| roller RAM| | + | | 4800 | &00, &1A | |
| - | | | &3800-&3FFF:| conjunto de caracteres| | + | | 3600 | &00, &23 | |
| - | |3| &0000-&3FEF:| BIOS, BDOS| | + | | 2400 | &00, &34 | |
| - | | | &3FF0-&3FFF:| Mapa de teclado DMA| | + | | 2000 | &00, &3F | |
| - | |4| &0000-&00FF:| espacio de trabajo y saltos de BIOS/BDOS| | + | | 1800 | &00, & |
| - | | | &0100-&3FFF:| TPA| | + | | 1200 | &00, &68 | |
| - | |5| &0000-&3FFF:| TPA| | + | | 600 | &00, &D0 | |
| - | |6| &0000-&3FFF:| TPA| | + | | 300 | &01, &A0 | |
| - | |7| &0000-&2FFF:| RAM común (disponible para su uso en todas las configuraciones)| | + | | 200 | &02, &71 | |
| - | | | &3000-&3FFF:| espacio de trabajo CP/M| | + | | 150 | &03, &41 | |
| - | |8| &0000-&3FFF:| CCP, tablas hash, buffers de datos| | + | | 110 | &04, &70 | |
| - | |9-16| &0000-&3FFF:| Disco RAM (unidad M:)| | + | | 75 | &06, &83 | |
| + | | 50 | &09, &C4 | | ||
| + | | 45 | &0A, &D9 | | ||
| </ | </ | ||
| - | <WRAP justify> | + | **REGISTROS DART** |
| - | La RAM del rodillo y la memoria de pantalla pueden almacenarse en cualquiera de los bancos 0 a 7. Por lo tanto, los requisitos de acceso a los circuitos de vídeo ralentizan el acceso a código/ | + | |
| - | Cualquier banco puede mapearse en cualquiera | + | <WRAP justify> |
| + | Otras funciones | ||
| </ | </ | ||
| <WRAP box> | <WRAP box> | ||
| - | ^ ^ Pantalla ^ BDOS (0) ^ Extra (n+2) ^ TPA (1) ^ | + | * **__Escribir registro 0__** |
| - | | &C000 (&F3) | 7 comunes | 7 comunes | 7 comunes | 7 comunes | | + | |
| - | | &8000 (&F2) | 2 pantallas | 3 BDOS/BIOS | 3 BDOS/BIOS | 6 TPA | | + | |
| - | | &4000 (&F1) | 1 pantalla/ | + | |
| - | | &0000 (&F0) | 0 BIOS | 0 BIOS | 0 BIOS |4 TPA | | + | |
| - | </ | + | |
| - | <WRAP justify> | + | | &18: | restablecer puerto | |
| - | Al enviar el número de banco (con b7 activado) a uno de los puertos | + | | &38: | restablecer bits de error | |
| - | Como ejemplo de acceso de lectura/ | + | * **__Escribir registro 3__** |
| - | </ | + | |
| - | **MEMORIA DE PANTALLA** | + | | 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 | | ||
| - | <WRAP justify> | + | * **__Escribir registro 4__** |
| - | La pantalla PCW en los modelos de 50 Hz (no estadounidenses) tiene una resolución de 90 x 32 caracteres o 720 x 256 píxeles. Cada línea de píxel puede comenzar en cualquier dirección dentro de los primeros 128 kB de memoria: la dirección de cada línea se almacena en un área de memoria de 512 bytes conocida como RAM de rodillo. Por defecto, la RAM de rodillo se encuentra en &3600 (asignada a &B600) en el banco 2, pero esto puede cambiarse mediante el puerto &F5. Contiene 256 direcciones consecutivas, | + | |
| - | Cada línea tiene una longitud | + | |b7 y b6: |modo de reloj DART (establecido en 01)| |
| - | </WRAP> | + | |b5 y b4: |no utilizados (establecidos en 0)| |
| + | |b3 y b2: |bits de parada ( 112 bits, 101, 011,5, 00ilegales)| | ||
| + | |b1: |tipo de paridad | ||
| + | |b0: |verificación de paridad activada/desactivada| | ||
| - | | + | |
| - | (a+1) (a+9) (a+17) | + | |
| - | (a+2) (a+10) (a+18) | + | |
| - | (a+3) (a+11) (a+19) | + | |
| - | (a+4) (a+12) (a+20) | + | |
| - | (a+5) (a+13) (a+21) | + | |
| - | (a+6) (a+14) (a+22) | + | |
| - | (a+7) (a+15) (a+23) | + | |
| - | La posición vertical | + | |b7: |DTR habilitado/ |
| + | |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/ | ||
| + | |b0: |no utilizado| | ||
| - | **MAPEO DEL TECLADO** | + | |
| - | <WRAP justify> | + | |b7: |interrupción recibida| |
| - | El teclado del PCW se asigna directamente a los últimos 16 bytes del banco 3, incluso | + | |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 | ||
| + | |b0: |carácter de recepción disponible| | ||
| - | <WRAP box> | + | * **__Leer registro 1__** |
| - | | b7: | k2 k1 [+] . , espacio VXZ del< alt | | + | |
| - | | b6: | k3 k5 1/2 / MNBC bloquear k. | | + | |
| - | | b5: | k6 k4 shift ; KJFDA enter | | + | |
| - | | b4: | k9 k8 k7 ¤ LHGS tab f8 | | + | |
| - | | b3: | pegar copiar # PIYTWQ [-] | | + | |
| - | | b2: | f2 cortar regresar [ OURE parar puede | | + | |
| - | | b1: | k0 ptr ] - 9 7 5 3 2 extra | | + | |
| - | | b0: | f4 salir del> = 0 8 6 4 1 f6 | | + | |
| - | | | &3FF0 &3FF1 &3FF2 &3FF3 &3FF4 &3FF5 &3FF6 &3FF7 &3FF8 &3FF9 &3FFA | | + | |
| - | </ | + | |
| - | <WRAP justify> | + | |b7: |no utilizado| |
| - | Los bytes & | + | |b6: |error |
| + | |b5: |error | ||
| + | |b4: |error | ||
| + | |b3 a b1: |no utilizado| | ||
| + | |b0: |todos enviados| | ||
| </ | </ | ||
| - | |||
| - | <WRAP box> | ||
| - | | &3FFB | Teclado estándar | b7-b0 sin usar (0) | | ||
| - | | | KeyMouse | ||
| - | | &3FFC | KeyMouse | ||
| - | | &3FFD | Todos | b7 siempre establecido; | ||
| - | | | los teclados estándar | b3-b0 teclas de cursor, b4 tecla de matriz | | ||
| - | | | KeyMouse | ||
| - | | &3FFE | KeyMouse | ||
| - | </ | ||
| - | |||
| - | |||
es/puerto_serie.1777043923.txt.gz · Última modificación: por jesus
