stringtranslate.com

Conjunto de caracteres ZX80

El conjunto de caracteres ZX80 es la codificación de caracteres utilizada por el microordenador Sinclair Research ZX80 con su ROM BASIC 4K original . La codificación utiliza un byte por carácter para 256 puntos de código. No tiene relación con las establecidas previamente como ASCII o EBCDIC , pero está relacionada aunque no es idéntica al conjunto de caracteres del sucesor ZX81 .

Personajes imprimibles

Captura de pantalla de un programa BASIC ZX80 4KCHR$(1) que muestra todos los puntos de código, incluidas las palabras clave de BASIC y los caracteres no imprimibles, estos últimos representados como signos de interrogación, excepto que se representan como una cadena nula. Por lo tanto, la línea superior cubre los 33 puntos de código 0 a 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 a 63. Con el bit más significativo establecido, el carácter se genera en video inverso ; correspondiente a los puntos de código 128 a 191. Estos 128 valores son los únicos que se pueden mostrar en la memoria de video (conocida como archivo de visualización). Los puntos de código restantes (64 a 127 y 192 a 255) se utilizan como caracteres de control o palabras clave de Sinclair BASIC , mientras que algunos no se utilizan.

El pequeño rango efectivo de sólo 64 glifos únicos impide el soporte para letras minúsculas latinas y muchos símbolos ampliamente utilizados en informática, como el signo de exclamación o el signo 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 video inverso, estos 22 puntos de código proporcionan cada combinación de la celda de carácter dividida en píxeles de bloque en blanco y negro de 2 × 2 para gráficos de baja resolución de 64 × 48 píxeles, o en píxeles de bloque anchos en blanco, negro o gris difuminado de 1 × 2 para una resolución de 32 × 48. Las versiones 2 × 2 de estos también están presentes en el bloque Unicode de elementos de bloque .

El punto de código 1 es el carácter de comillas dobles "cuando se utiliza en el archivo de visualización, pero exclusivamente en el ZX80 se utiliza internamente como el carácter de terminación de cadena [1], por lo que la función BASIC CHR$(1)devuelve una cadena nula; [2] CHR$(212) se traduce al carácter " imprimible. [3]

Cambios en el ZX81

La ROM BASIC de 8K del modelo ZX81 posterior también estaba disponible como una actualización para el ZX80, reemplazando su ROM BASIC de 4K con solo números enteros. [4] Introdujo el conjunto de caracteres ZX81 modificado que tiene principalmente 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 posterior ZX Spectrum, toda la codificación de caracteres fue reemplazada por el conjunto 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 encajan en 7×6 píxeles, dejando un espacio horizontal de un píxel entre ellos. Esta fuente se modificó en la ROM de la ZX81 para incluir glifos ligeramente más estrechos de 6×6 píxeles con dos píxeles de espacio horizontal entre ellos, lo que mejoró el aspecto de los caracteres invertidos individuales al mostrar píxeles invertidos en ambos lados. Algunos glifos también recibieron un diseño diferente en la fuente del sistema ZX81, que se nota en el *, el 0 con barra y menos redondeado, y los $, C, G y J menos redondeados.

Conjunto de caracteres

La siguiente tabla muestra el conjunto de caracteres del ZX80. Cada carácter se muestra con un equivalente Unicode potencial . Los espacios y los caracteres de control se representan mediante las abreviaturas de sus nombres.

  Sinclair BASIC convierte 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 utiliza en la memoria de video (llamada archivo de visualización), pero se utiliza internamente como el carácter de terminación de cadena [1], por lo que CHR$(1)devuelve una cadena nula. El punto de código 212, CHR$(212), se traduce al carácter " imprimible.
  3. ^ ab Debido a que son rásteres grises al 50%, los puntos de código 9 y 137 tienen la misma apariencia aunque cada píxel está invertido .
  4. ^ El operador de elevación a una potencia de múltiples caracteres , convertido en un punto de código de un solo byte.

Referencias

  1. ^ abc Wearmouth, Geoff. "Lista 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 en BASIC: manual de funcionamiento de Sinclair ZX80. Science of Cambridge Ltd., págs. 75-77. Archivado desde el original el 8 de agosto de 2022.
  3. ^ de Davenport, Hugo (1980). Un curso de programación en BASIC: manual de funcionamiento de Sinclair ZX80. Science of Cambridge Ltd., págs. 116-117. Archivado desde el original el 8 de agosto de 2022.
  4. ^ Farrow, Paul. "Actualización de ROM básica de ZX80 a 8K". Centro de recursos de Sinclair ZX .
  5. ^ "Conjunto de caracteres Sinclair ZX80". OoCities.org .

Véase también