El teclado de PC: los primeros cinco años

Publicado el 3 de septiembre de 2019 por Michal Necasek

La gran mayoría de los usuarios de PC a día de hoy no recordaran cómo se veían los teclados de PC antes de que llegara el diseño estándar de los modelos de teclas 101/102, a pesar de que varios fabricantes de equipos originales hacen todo lo posible para destruir el diseño estándar para minimizar la usabilidad, especialmente en las computadoras portátiles. Dejando de lado las modificaciones específicas de OEM, el diseño básico del bloque principal de claves alfanuméricas no ha cambiado en más de 30 años, desde 1986.

Sin embargo, hasta ese momento la distribución del teclado de la PC y el hardware del teclado cambiaron bastante, y mirar las Referencias Técnicas de IBM de 1981-1986 es clave para entender

  1. por qué los códigos de escaneo del teclado estándar son tan complejos, y
  2. por qué hay tantas modificaciones específicas del proveedor aparentemente extrañas del diseño estándar.
Diseño de 83 teclas, 1981
Todos los diagramas de teclado fueron tomados de IBM Technical References. El teclado original de la PC (1981) se veía así:
Teclado original de 83 teclas- PC - 1981
Teclado original de 83 teclas- PC – 1981

Desde la perspectiva actual, ese teclado parece bastante extraño por varias razones:

  1. la tecla Intro es grande en el teclado de EE.UU.;
  2. la tecla Esc está en un lugar extraño;
  3. la tecla Ctrl es donde está ahora el bloqueo de mayúsculas y el bloqueo de mayúsculas es donde está ahora la tecla Ctrl derecha;
  4. solo hay una tecla Alt y una tecla Ctrl;
  5. la tecla La tecla PrtSc está atascada en un espacio extraño debajo de la tecla Intro;
  6. y el bloque numérico apenas es reconocible también.

Que las teclas de función (F1-F10) estén organizadas en dos columnas a la izquierda es una diferencia comparativamente menor. Es más, hay algunos modelos de teclados tipo Gamer que han recuperado esa posición para estás teclas, que a su vez pueden ser utilizadas como macros y guardar grabación de acciones complejas.

A nivel técnico, es importante comprender un hecho básico pero quizás no obvio: las teclas tienen números correspondientes a su ubicación en el teclado. El comportamiento de todas las teclas (es decir, qué datos envían cuando se presionan/liberan) es puramente una función de su número. No tiene absolutamente nada que ver con las etiquetas en las tapas de las teclas, eso es estrictamente cosmético.

Diseño de 84 teclas, 1984
Cuando IBM PC/AT salió en 1984, lucía un teclado nuevo y diferente. A primera vista, el teclado se parecía al teclado original de la PC con teclas de función a la izquierda; la mayor diferencia visual era que ahora había una clara separación entre el bloque alfanumérico principal y el bloque numérico:
Teclado original de 84 teclas - año 84
Teclado original de 84 teclas – año 84

Pero en una mirada más cercana, hubo cambios muy sustanciales. Por un lado, la tecla Esc se movió a un lugar totalmente diferente, y ahora vivía en la esquina superior izquierda del bloque numérico. La tecla de barra invertida se movió de al lado del Shift izquierdo a la otra esquina, junto a la tecla Retroceso. La tecla Intro cambió de forma y obligó a la tecla de retroceso (`) a moverse donde vivía Esc. La nueva clave 84 fue SysRq (Solicitud del sistema), nunca se usó mucho.

Una diferencia significativa no aparente del diagrama anterior es que el teclado AT tiene tres indicadores LED. Muestran el estado actual de Bloq Mayús, Bloq Num y Bloqueo de desplazamiento. Otra característica nueva que no se ve en los diagramas es el control tipográfico: el teclado AT tiene un retraso programable y una frecuencia de repetición para las teclas presionadas durante un período de tiempo más largo.

Con ese fin, el teclado AT proporciona comunicación bidireccional entre el host (controlador del teclado) y el teclado mismo. Tenga en cuenta que los LED están completamente bajo el control del sistema host, y es solo una convención que muestren los estados de bloqueo. El BIOS del sistema normalmente administra el estado del LED, o un SO lo hace.

Hubo otro cambio técnico: por razones que no son del todo obvias, el teclado AT envía códigos de escaneo bastante diferentes en comparación con el teclado original de la PC. El controlador de teclado en la placa base del sistema traduce los códigos de escaneo del teclado en códigos de escaneo compatibles con PC de escaneo, de modo que el software escrito para tratar con los códigos de escaneo de PC (y XT) continúa funcionando en los AT.

Hay ecos del diseño AT de 84 teclas que se pueden encontrar en varios teclados OEM. Hay teclados de 102 teclas con Enter de estilo AT y retroceso pequeño, por ejemplo.

Diseño mejorado de 101/102 teclas, 1986
En 1986, IBM finalmente llegó al diseño de teclado “mejorado” que todos conocen:
Diseño mejorado de 101/102 teclas, 1986
Diseño mejorado de 101/102 teclas, 1986

Hubo una gran cantidad de cambios con respecto al diseño AT anterior de 84 teclas:

  • las teclas de función se movieron de la izquierda a la parte superior, con F11 y F12 añadidas.
  • Se agregaron teclas de movimiento y cursor «gris» completamente nuevas entre el bloque alfanumérico principal y el bloque numérico.
  • Debido a que las teclas de función se reubicaron, el tamaño general del teclado no cambió significativamente.
  • La tecla Esc se movió a la esquina superior izquierda, similar a donde estaba en el teclado original de la PC.
  • El bloqueo de mayúsculas (Caps Lock) se movió debajo de la tecla Tabulador (Tab), y las teclas Ctrl y Alt ahora vienen en variantes izquierda y derecha.
  • En el diseño estadounidense de 101 teclas, la tecla Enter perdió peso; la tecla de barra invertida se movió a donde solía estar la parte superior del Enter grande, dejando espacio para una tecla de Retroceso ← de doble tamaño.

Las diferencias se describen mejor utilizando los números de posición clave. Enter sigue siendo la clave número 43; la tecla 29 (barra invertida) desapareció, pero reaparece efectivamente cerca como la tecla 42 sobre la tecla Mayús derecha, con el mismo código de escaneo. La tecla 45 (a la derecha de la tecla Shift izquierda más pequeña) es la tecla 102 adicional.

Los diseños de 102 teclas no estadounidenses eran muy similares; este es, por ejemplo, el diseño del Reino Unido:

El teclado mejorado tiene varias características nuevas no obvias. Admite un nuevo comando Read ID (0F2h) que puede ser utilizado por el software para identificarlo. También admite dos conjuntos adicionales de códigos de escaneo. El conjunto de teclado AT se llama Scan Set 2, el conjunto original de PC es Scan Set 1, y hay un nuevo, mucho más simple y directo Scan Set 3. Lamentablemente, este cambio llegó demasiado tarde y Scan Set 1 es casi inútil porque el el controlador de teclado logra lo mismo, y los sistemas operativos nunca utilizaron el Scan Set 3 significativamente más sano porque muchos teclados clon no lo admiten (Solaris 8 es uno de los pocos sistemas operativos que intentan usarlo).

Las teclas grises (flechas, Ins, Supr, Inicio, Fin, Re Pág, Av Pág) se comportan de una manera bastante obvia. En los teclados de 83 y 84 teclas, la tecla Bloq Num es la única opción para cambiar entre la entrada numérica y las teclas del cursor. En el teclado mejorado, Num Lock es mucho menos importante porque las teclas de cursor independientes siempre están disponibles. Sin embargo, para compatibilidad con los teclados más antiguos, las teclas grises envían diferentes códigos de escaneo dependiendo del estado de las teclas Bloq Num y Shift; esto simula las teclas en el bloque numérico.

El teclado mejorado utiliza un byte adicional (E0h) con algunas de las teclas adicionales (teclas grises, teclas Ctrl y Alt agregadas). El software antiguo ignora el código E0h, por lo que solo se ve un Alt o Ctrl, pero el nuevo software puede usar el código adicional para distinguir las teclas Alt e Ctrl derecha e izquierda.

Teclado PS/2, 1987
La única diferencia real entre los teclados AT mejorados y los teclados PS/2 es el tamaño del conector. Los teclados AT usan conectores DIN de 5 pines, mientras que los teclados PS/2 cambian al conector mini-DIN más pequeño. En los niveles eléctricos y funcionales no hay diferencias, por lo que un simple adaptador mecánico es suficiente para convertir un teclado AT en un teclado PS/2 o viceversa.

Y después de todo lo visto, está esto, mi teclado:

NOTA
Gracias a las personas generosas que publicaron análisis de las diversas referencias técnicas de IBM. Tener estos documentos a disposición del público ha sido muy, muy útil.