El juego de caracteres RPL es un juego de caracteres y codificación de 8 bits utilizado por la mayoría de las calculadoras RPL fabricadas por Hewlett-Packard, así como por la impresora térmica HP 82240B . [1] [2] A veces se lo denomina simplemente "ECMA-94" en la documentación, [1] [3] aunque en su mayor parte es un superconjunto de ISO/IEC 8859-1 / ECMA-94 en términos de caracteres imprimibles y se diferencia de ISO/IEC 8859-1 en que utiliza caracteres visualizables en lugar de caracteres de control en el rango de puntos de código de 0x80 a 0x9F .
En 1986, [3] la serie original de calculadoras RPL ( serie HP-28 ), así como la impresora térmica HP 82240A, utilizaban una variante modificada del juego de caracteres HP Roman-8 , de los cuales los caracteres superiores a 147 no se podían mostrar en la pantalla. calculadora, sólo se imprimirá. [4] [5] [6]
Esto cambió con la introducción de la impresora HP 82240B en 1989 [3] y la serie HP 48 en 1990, que vino con un nuevo juego de caracteres basado ahora en ECMA 94/ISO 8859-1 en lugar de HP Roman-8, pero con el Los códigos de control en el rango de 128 a 159 (0x80 a 0x9F) se reemplazan por caracteres visualizables adicionales. En comparación con ISO 8859-1, el punto de código 127 (0x7F) mostraba un cuadro gris sombreado medio como en el antiguo conjunto de caracteres basado en HP Roman-8. Los puntos de código 131 (0x83) a 142 (0x8E) también se tomaron del antiguo conjunto de caracteres basado en HP Roman-8. Además de esto, el punto de código 31 (0x1F) se usó para puntos suspensivos ( … ) [7] [8] y los puntos de código 169 (0xA9) y 174 (0xAE) mostraron glifos ambiguos que podrían verse como un número con un círculo inverso ❸ o derechos de autor. símbolo ( © ) y como ❷ o símbolo de marca registrada ( ® ), respectivamente. [1] [7] Esta primera versión del juego de caracteres también tenía un espacio continuo en la posición 160 (0xA0). [1] [7] [9]
Traducción del juego de caracteres HP-48 al HP-28: [10]
En una revisión de este conjunto de caracteres en 1999, el punto de código 160 (0xA0) se redefinió para contener el signo del euro (€) en la serie HP 49/50 (incluido el HP 48gII ), [8] [9] [11] [ 12] ahora se desvía de ISO 8859-1. Los puntos de código 169 (0xA9) y 174 (0xAE) ahora estaban claramente definidos como poseedores de los símbolos de copyright ( © ) y marca registrada ( ® ) de conformidad con ISO 8859-1, mientras que los glifos correspondientes todavía se parecían más a los números en círculos inversos. [8] La última calculadora que admitió esta variante del conjunto de caracteres fue la HP 50g introducida en 2006 y descontinuada en 2015.
En un desarrollo paralelo, el HP 38G también utilizó internamente el juego de caracteres de la serie HP 48. A partir del HP 39G en 2000, el superíndice 3 ( ³ ) en el punto de código 179 (0xB3) fue reemplazado por un superíndice -1 ( −1 ) en la serie HP 39/40 (excepto el HP 39gII , que comenzó a usar Unicódigo ). [13] El punto de código 160 (0xA0) también se cambió por el signo del euro (€) [13] en esta tercera variante del juego de caracteres. La última calculadora que admitió esta variante del conjunto de caracteres fue la HP 40gs introducida en 2006 y descontinuada alrededor de 2011.
Hewlett-Packard nunca definió una traducción oficial de Unicode, por lo que evolucionaron varias variantes en la comunidad, que difieren en los puntos de código 31 (0x1F), 127 (0x7F), 128 (0x80), 129 (0x81), 133 (0x85), 134 (0x86). ), 158 (0x9E), 160 (0xA0), 169 (0xA9), 174 (0xAE), 178 (0xB3), 181 (0xB5) y 223 (0xDF). [14] [15] [16] [17] [18] [19] [20]
El hecho de que el equivalente Unicode para x-bar en el punto de código 129 (0x81) sea una combinación de dos caracteres (x̅) podría causar problemas en las traducciones, por lo que se sugirió utilizar U+0101 (ā) en su lugar. [18] [19] [20]
Los caracteres que no pueden transcodificarse razonablemente deben asignarse al punto de código 127 (0x7F), similar a lo que hacen las calculadoras cuando se comunican con impresoras más antiguas como la HP 82240A. [21] [8]
Dado que las calculadoras permiten redefinir las fuentes (usando FONT→
, →FONT
, MINIFONT→
, →MINIFONT
), se pueden emular otras páginas de códigos siempre que los símbolos que están disponibles en el teclado o que la calculadora asocia con funciones específicas no sean reemplazados por símbolos no relacionados.
La siguiente tabla muestra el juego de caracteres HP RPL. Cada carácter se muestra con un posible equivalente Unicode en la información sobre herramientas. Cuando se definen códigos HP TIO especiales para ingresar el carácter, también se proporcionan. [2] [22] [7] [8] [23] Los demás caracteres se pueden ingresar utilizando la \nnn
sintaxis del código TIO, siendo nnn un número decimal de tres dígitos . [2] [7] [8] [23]
[…] Hay una lista interminable de cosas en el lado positivo, pero solo unas pocas cosas que extraño o no me gustan de la
HP48G(X)
. […] no hay
moneda euro
en el conjunto de símbolos. Una vez sugerí agregar esto en el punto de código 160 (de todos modos, es muy disculpable, ya que el símbolo no se definió antes de 1997) […]
hp 38g
original
solo tenía la función INVERSO(...) y el operador -1 se añadió por conveniencia en el
hp 39g
, lanzado en 2000. Para hacer esto, los creadores tuvieron que tomar prestado uno de los caracteres no utilizados existentes, el 3. carácter y convertirlo en el operador -1. Sin embargo, se olvidaron de cambiarlo en la vista CHARS y ¡este error nunca se solucionó en ninguno de los modelos sucesivos!