stringtranslate.com

Conjunto de caracteres ZX80

El juego de caracteres ZX80 es la codificación de caracteres utilizada por la microcomputadora ZX80 de Sinclair Research con su ROM BÁSICA 4K original . La codificación utiliza un byte por carácter para 256 puntos de código. No tiene relación con otros previamente establecidos como ASCII o EBCDIC , pero está relacionado aunque no es idéntico al conjunto de caracteres del sucesor ZX81 .

Personajes imprimibles

Captura de pantalla de un programa ZX80 4K BASICCHR$(1) que muestra todos los puntos de código, incluidas las palabras clave BASIC y los caracteres no imprimibles, estos últimos representados como signos de interrogación, excepto como una cadena nula. Por lo tanto, la línea superior cubre los 33 puntos de código del 0 al 32, las 5 líneas siguientes cubren 32 cada una y las últimas líneas con palabras clave cubren aún menos.

El conjunto de caracteres tiene 64 glifos únicos presentes en los puntos de código 0–63. Con el bit más significativo configurado, el carácter se genera en vídeo inverso ; correspondiente a los puntos de código 128–191. Estos 128 valores son los únicos que se pueden mostrar permitidos en la memoria de video (conocida como archivo de visualización). Los puntos de código restantes (64–127 y 192–255) se utilizan como caracteres de control o palabras clave Sinclair BASIC , mientras que algunos no se utilizan.

El pequeño rango efectivo de sólo 64 glifos únicos impide la compatibilidad con letras minúsculas latinas y muchos símbolos utilizados ampliamente en informática, como el signo de exclamación o la arroba .

Hay 11 caracteres gráficos en bloque , contando el punto de código 0, que también funciona como espacio. Junto con las 11 versiones de vídeo inverso, estos 22 puntos de código proporcionan cada combinación de celdas de caracteres divididas en bloques de 2×2 píxeles en blanco y negro para gráficos de baja resolución de 64×48 píxeles, o en 1×2 en blanco, negro o difuminado. Píxeles grises de bloque ancho para una resolución de 32×48. Las versiones 2×2 de estos también están presentes en el bloque Unicode Block Elements .

El punto de código 1 es el carácter de comilla doble "cuando se usa en el archivo de visualización, pero únicamente en el ZX80 se usa internamente como carácter terminador de cadena [1] , por lo que la función BÁSICA CHR$(1)devuelve una cadena nula; [2] CHR$(212) se traduce en el carácter "imprimible". [3]

Cambios en el ZX81

La ROM BÁSICA 8K del siguiente modelo ZX81 también estaba disponible como actualización para el ZX80, reemplazando su ROM BÁSICA 4K de solo enteros. [4] Introdujo el juego de caracteres ZX81 modificado que tiene en su mayoría los mismos puntos de código, por ejemplo, para AZ y 0-9, pero los puntos de código son diferentes para los caracteres de gráficos de bloque, los símbolos ", -, +, *, /, =, >, < y los tokens de palabras clave BASIC (con muchos nuevos agregados). También hay cambios en los caracteres de control y el punto de código 1 ya no es un terminador de cadena no imprimible.

En el ZX Spectrum posterior , toda la codificación de caracteres fue reemplazada por el juego de caracteres ZX Spectrum , que es un derivado de ASCII e incluye letras minúsculas y más.

Fuente del sistema

La fuente del sistema ZX80 utiliza una cuadrícula de 8×8 píxeles por carácter donde la mayoría de los glifos caben en 7×6 píxeles dejando un píxel de espacio horizontal entre ellos. Esta fuente se modificó en la ROM del ZX81 a glifos de 6 × 6 píxeles ligeramente más estrechos con un espacio horizontal de dos píxeles entre ellos, lo que mejoró el aspecto de caracteres individuales invertidos al mostrar píxeles invertidos en ambos lados. Algunos glifos también recibieron un diseño diferente en la fuente del sistema ZX81, notable en el *, el 0 cortado y menos redondeado, y los menos redondeados $, C, G y J.

Conjunto de caracteres

La siguiente tabla muestra el juego de caracteres del ZX80. Cada carácter se muestra con un posible equivalente Unicode . Los caracteres de espacio y control están representados por las abreviaturas de sus nombres.

  Sinclair BASIC tokeniza palabras clave en puntos de código de un solo byte.

Notas

  1. ^ abc El manual de funcionamiento del ZX80 tiene un error y muestra los símbolos > y < en el orden incorrecto. [5]
  2. ^ ab El punto de código 1 es el símbolo de comillas dobles (") cuando se usa en la memoria de video (llamado archivo de visualización), pero se usa internamente como carácter terminador de cadena [1] , por lo que CHR$(1)devuelve una cadena nula. Punto de código 212, CHR$(212), se traduce como el carácter "imprimible".
  3. ^ ab Debido a que son 50% rásteres grises, los puntos de código 9 y 137 tienen la misma apariencia aunque cada píxel está invertido .
  4. ^ El ascenso a un poderoso operador de varios caracteres tokenizado en un punto de código de un solo byte.

Referencias

  1. ^ abc Wearmouth, Geoff. "Un listado de ensamblaje de la ROM del Sinclair ZX80". Archivado desde el original el 15 de agosto de 2015.
  2. ^ Davenport, Hugo (1980). Un curso de programación BÁSICA - Manual de funcionamiento del Sinclair ZX80. Science of Cambridge Ltd. págs. 75–77. Archivado desde el original el 8 de agosto de 2022.
  3. ^ ab Davenport, Hugo (1980). Un curso de programación BÁSICA - Manual de funcionamiento del Sinclair ZX80. Science of Cambridge Ltd. págs. 116-117. Archivado desde el original el 8 de agosto de 2022.
  4. ^ Farrow, Pablo. "ZX80 - Actualización de ROM BÁSICA 8K". Centro de recursos Sinclair ZX .
  5. ^ "Conjunto de caracteres Sinclair ZX80". OoCities.org .

Ver también