Retour vers le futur

Allez, zou, pour une fois voici une publication en français !

Cà fait un moment que çà me grattouillait le clavier de composer dans ma langue maternelle, et je vois au moins deux bonnes raisons de faire une entorse à ma politique de publication. Soyons réalistes, l’anglais est une langue universellement comprise par les technophiles, et, persistant à vouloir partager avec le plus grand nombre, c’est la langue que j’ai choisie pour mes publications. Cependant, je suis très agacé par le récent raidissement de nos voisins anglo-saxons et leur repli économico-identitaire: non mesdames, non messieurs, vous n’êtes pas seuls au monde, vous ne détenez pas le monopole du savoir et de la science, ouvrez les yeux tant qu’il est encore temps. Ceci étant dit, cet article va traiter d’un sujet que seuls les mangeurs de grenouilles, porteurs de béret et accrédités à délivrer le French kiss (tiens, voilà t’y pas que je rechute) peuvent comprendre. Je vais vous parler d’une petite merveille qui a permis l’introduction des principes de l’informatique jusqu’au plus profond des campagnes et qui a été détrônée par la vague Internet au seuil du deuxième millénaire après 30 ans de bons et loyaux services. Je veux parler du Minitel bien entendu.

Pour éviter d’avoir à gérer l’élimination massive des déchets produits par l’obsolescence du Minitel, France Télécom a très généreusement fait cadeau des Minitels à ses abonnés… Bonne aubaine pour les bidouilleurs de tout poil, car le Minitel est une sorte de console compacte dotée d’un clavier de saisie, d’un écran monochrome (couleur pour les derniers modèles) et de deux interfaces: l’une qui était bien entendu reliée à la ligne téléphonique et l’autre permettait une communication de type série avec des périphériques externes! Donc je récapitule: un produit bien conçu, compact et costaud, configurable comme console et disponible en masse pour pas cher (10 à 20 € en moyenne): Supeeeeer ! (Blague pour initiés)

Le projet dont il est ici question résulte du croisement improbable d’amateurs de techno d’un fab-lab avec des amateurs d’escape game désireux de truffer leur terrain de jeu de références à des séries de science fiction…

Le cahier des charges du jeu, inspiré de la série Fallout, consiste à intégrer les fonctions suivantes dans un Minitel :

  • Lorsque le programme est lancé, le Minitel doit afficher afficher deux lignes d’entête et 32 lignes (paramètrable) de pseudo image mémoire sous forme de deux séries verticales comportant chacune une colonne d’adresses séquentielles (hexa) et de contenu mémoire (12 octets) constitué de caractères aléatoires n’appartenant pas à l’alphabet.
  • Dans ce contenu mémoire sont mélangés aléatoirement six mots (paramètrable) de six lettres, dont un, tiré au hasard, est le mot de passe.
    Le joueur peut effectuer 4 tentatives (paramètrable) pour trouver le mot de passe. A chaque tentative invalide, le programme indique le nombre de lettres correspondantes entre le mot de passe saisi et le mot de passe tiré au hasard par le programme.
    En cas de succès, l’écran est effacé et remplacé par un message de succès suivi du code d’accès BLABLABLABLABLABLA*. Dans le cas contraire, un message d’échec est affiché.
  • Dans tous les cas une ligne de saisie (précédée par le caractère >) est destinée à recevoir le code admin BLABLABLA* qui relance le jeu.

* vous n’imaginez tout de même pas que je vais dévoiler les mots de passe!

En bref, l’écran principal doit ressembler à quelque chose comme:

Le principal défi technique à relever est l’intégration de tout le code ainsi que la base de mots de 6 lettres, soit 7773 mots) dans une simple carte Arduino . Et pour corser le tout, le fab-lab disposait de 15 jours pour boucler le sujet ! Au départ, je me suis posé la question de développer un algorithme de compression pour réduire la taille de la base, mais le temps faisant défaut, et surtout, souhaitant impliquer nos jeunes développeurs, j’ai bâti le projet sur des bases plus simples. Une option aurait pu consister à intégrer la base dans une carte SD, mais nous n’avions pas de shield sous la main.  J’ai aussi fouillé sur la toile à la recherche de librairies de pilotage du Minitel, et, bingo, j’en ai trouvé plusieurs, plus ou moins à mon gout et surtout assez gourmandes en mémoire. Au final, j’ai opté pour un code maison, le plus compact possible, de manière à libérer un maximum d’espace mémoire (mémoire programmable) pour y loger les mots clé. J’ai écrit un petit algo très simple pour décimer les mots clés et conserver au final 3000 mots répartis de manière homogène dans l’alphabet. Partant de là, yapuka !

Je me suis aidé de la très complète documentation (56 Mo) “spécifications techniques d’utilisation du minitel 1B” ainsi que la consultation de nombreux sites Internet consacrés au Minitel. Code sur demande, comme d’habitude.

Partant de là, Sébastien qui me surpasse et de loin en créativité tous azimuts, a ajouté sa patte artistique et a transformé un vénérable minitel en quasi-authentique console d’accès aux calculateurs secrets de Fallout ! Le résultat en images:

Top non ?

Le hasard étant facétieux, que ne lis-je point dans ma veille techno sur Twitter ? Un article consacré au même sujet traité avec des solutions beaucoup moins attrayantes !

D’abord il ne fait pas appel à des composants de récupération et ensuite il n’est pas interactif (le clavier n’est pas fonctionnel)… Pouah ! Pour paraphraser Catherin Bugnard, je dirais même “Tout l’monde peuvent pas êt’e français, il en faut bien d’ailleurs.”

 

 

Leave a Reply

You must be logged in to post a comment.