banner
Centre d'Information
Une expertise impeccable dans le domaine.

Connecter un clavier à un PC vintage

Jun 03, 2023

Nous ne savons pas s’il existe une seule caractéristique qui qualifie quelqu’un de pirate informatique. Après tout, nous sommes un groupe assez éclectique, avec des compétences qui s'étendent sur toute la carte, et ce qu'une personne considère comme insignifiant, d'autres le considéreraient comme de la magie noire. Mais il y a une chose dont nous sommes sûrs : si vous vous retrouvez à lire le code POST original de la carte mère PC-XT juste pour faire fonctionner un clavier, vous êtes à peu près notre genre de personnes.

C'est dans cette position que [Anders Nielsen] s'est retrouvé à mesure que les travaux progressaient sur son projet « PC-XT from Scratch », qui vise à construire un modèle IBM 5160 vintage du milieu des années 80 en état de marche en utilisant autant de pièces d'époque que possible. Le premier opus de la série présentait le processus délicat de mise en place de la carte mère, de peur que la fumée magique ne soit libérée. Après avoir vu un peu de vie avec l'ancienne carte, [Anders] avait besoin d'un peu d'E/S, en particulier de vidéo et de clavier. Le côté vidéo de l'équation était relativement trivial, avec une carte VGA du début des années 90 d'eBay – pas tout à fait correcte, mais suffisamment bonne pour afficher quelque chose.

Le clavier était une tout autre affaire. Ce n'est pas trop compliqué de trouver un clavier capable de communiquer avec un PC-AT, mais le PC-XT avait un protocole totalement différent, sans parler de ce gros connecteur DIN à 5 broches. Comme pour beaucoup de choses, la solution impliquait de construire un adaptateur à partir d’un Arduino, mais le processus n’était pas vraiment à faible friction. Premièrement, il y avait la question de la gestion des sorties à collecteur ouvert sur le clavier, ce qui nécessitait des modifications de code. Ensuite, [Anders] a sorti l'oscilloscope pour vérifier les formes d'onde et a trouvé une étrange onde carrée de 9 Hz au-dessus du signal d'horloge du clavier. Cela a fini par être un signe que le clavier était bloqué dans un mode de test de fabrication, selon une lecture du code source de l'auto-test de mise sous tension (POST). Une petite modification du code Arduino a permis à tout de fonctionner.

Nous devons dire que nous adorons cette plongée profonde dans les entrailles d’un morceau de l’histoire informatique. [Anders] a présenté l'étape suivante, qui utilisera un socket ROM vide sur une ancienne carte réseau pour charger du code assembleur sur le XT. Nous attendons avec impatience cet exploit.