Page 1 of 1

Sauvegarde ROM TI-81 versions V2.00 et 1.0, enfin !

Unread postPosted: 14 Jan 2024, 09:39
by critor
Sur TI-Planet nous œuvrons entre autres à la préservation du patrimoine éducatif développé par Texas Instruments, qu'il soit logiciel ou matériel.

Pour le logiciel :
  • concernant les calculatrices à mémoire Flash réinscriptible et donc pouvant être mises à jour, cela passe par la récupération des images d'OS d'une façon ou d'une autre selon qu'il s'agit d'images publiées sur le site de TI, d'images préinstallées en usine sans publication, ou d'images de développement
  • concernant les calculatrices de technologie plus ancienne à mémoire ROM non réinscriptible logiciellement, cela passe par la sauvegarde du contenu ROM, et il est très important de le faire aussi tôt que possible pendant que les calculatrices concernées fonctionnent encore

Les images d'OS ainsi récupérées sont toutes mises à disposition en téléchargement sur notre site.

Pour les images ROM nous ne pouvons hélas pas te les partager à ce jour, Texas Instruments combattant la diffusion de telles images. En effet à la différence des précédentes, les images ROM sont directement amorçables sur des émulateurs, dont il existe plein de versions sur smartphones. Leur diffusion dispense alors de s'acheter une calculatrice TI pour aller en classe, voir même de toute la scolarité car certains pays autorisent smartphones, tablettes et ordinateurs aux examens. Nous te les conservons toutefois en lieu sûr, en attendant des temps plus propices.

530918795Aujourd'hui nous allons parler de la machine avec qui tout a commencé chez Texas Instruments, la TI-81 sortie pour la rentrée 1990.

La version ROM d'une TI-81 s'affiche en accédant à l'écran d'auto-diagnostic. Pour cela il faut taper
2ND
MATH
ALPHA
LN
. Différentes versions du logiciel gravé dans la ROM TI-81 ont défilé. 8 versions nous sont connues, par ordre chronologique : 1.0, 1.1, 1.1K, 1.5K, 1.6K, 1.8K, V2.00 et V2.0V.

En 2009, une sauvegarde de la version ROM TI-81 en version 1.8K était déjà en circulation sur des sites traitant de l'émulateur MAME. Nous ignorons totalement sa provenance et donc hélas qui créditer pour cela. Nous supposons que quelqu'un a dessoudé la puce ROM Sharp LH5359 de sa calculatrice pour la brancher sur un programmateur d'EPROM.

En août 2009, Randy Compton finalisait l'exploitation d'une faille dans cette version permettant d'exécuter du code machine et donc par extension des programmes assembleur.

Benjamin Moody alias FloppusMaximus reprit immédiatement ce travail pour créer un programme assembleur permettant d'afficher le contenu ROM sur l'écran de la TI-81, à filmer et traiter avec un logiciel d'OCR (reconnaissance optique de caractères). Il appliqua avec succès la méthode à la sauvegarde de la version ROM V2.0V.

14688Rentrée 2009 un élève, DarkGrunt, m'a alors fort aimablement donné la TI-81 en version 1.6K qui était dans sa famille. J'ai pu très rapidement y lancer le programme de FloppusMaximus et lui partager la vidéo afin qu'il la traite avec la configuration OCR qu'il avait déjà sous la main. Une calculatrice que je conserve encore soigneusement aujourd'hui en parfait état de fonctionnement à côté de ses sœurs.

Depuis nous avons continué :
Dans les deux cas, la vidéo de l'écran faisant défiler l'affichage du contenu de la ROM a été confiée à FloppusMaximus pour la phase OCR.

Août 2015, CVSoft s'est occupé de filmer le contenu ROM de sa TI-81 en version 1.1. Il nous a confié la vidéo que nous avons une fois de plus passée à FloppusMaximus pour OCR.

Si tu as bien compté, 2 versions ROM n'avaient pas été sauvegardées jusqu'à présent, les 1.0 et V2.00, toutes deux très rares.

772C'est en février 2012 que nous avions découvert l'existence de calculatrices TI-81 munies d'une ROM en version V2.00 suite à un message d'AzNg0d1030. Malheureusement son écran était malade avec plusieurs lignes de pixels morts, et même si il s'était donné la peine de filmer la video de l'affichage du contenu ROM elle n'était bien évidemment pas exploitable.

771En Mai 2012, Brandon Wilson nous envoyait en prêt sa propre TI-81 munie de la ROM V2.00, pensant peut-être qu'il n'y en aurait que pour quelques mois. Et effectivement en août 2012 nous terminions le filmage de l'affichage du contenu ROM malgré un défaut d'affichage isolé, une colonne de pixels morts.

Peut-être est-ce mal tombé, mais notre message à ce sujet à FloppusMaximus n'a jamais reçu de réponse, pas davantage que les diverses relances depuis.

En août 2015 un membre dont le nom nous échappe s'était même généreusement donné la peine de réaliser une nouvelle vidéo du contenu de la ROM V2.00 avec sa propre TI-81 ayant cette fois-ci l'avantage dépourvue de tout défaut d'affichage. Même problème toutefois, malgré une réponse favorable quelques jours plus tôt concernant la ROM 1.1K, à nouveau plus aucune réponse depuis. Décidément...

Cela faisait donc plus de 8 ans que la dernière vidéo du contenu ROM V2.00 attendait le traitement OCR sur le serveur de TI-Planet, et plus de 11 ans que Brandon Wilson attendait le retour de sa TI-81...
Et bien nous y sommes enfin, même si les gros efforts précédents n'auront finalement pas servi ici, du moins pas directement.

tr1p1ea a développé un nouvel outil d'extraction du contenu ROM des TI-81. Cette fois-ci pas de vidéo, et donc pas de lourde phase d'OCR ou de vérification d'erreur.

106418048La TI-81 en version V2.00 réutilise en fait la carte électronique de la TI-82 sortie pour la rentrée 1993, une façon pour Texas Instruments de mutualiser une partie de la chaîne d'assemblage au service de deux produits différents et donc d'économiser.

Une différence est que le port de communication mini-Jack 2.5mm n'est pas présent sur la TI-81 V2.00, et que les autres composants du circuit de communication sont également absents.

1879618794tr1p1ea a alors eu l'idée de réaliser un programme en langage machine permettant d'écrire le contenu de la ROM sur le circuit de communication. Ce circuit étant ici non fonctionnel, tr1p1ea l'a retracé en comparant à une TI-82 ce qui l'a fait remonter jusqu'à la puce ASIC où il a pu identifier les broches dédiées à la communication. tr1p1ea y a alors connecté une carte ESP32 pour récupérer correctement les données, ici en seulement quelques secondes.

1879318797Et voilà, après plus de 11 ans de péripéties la ROM TI-81 en version V2.00 est enfin sauvegardée correctement et fonctionnelle sous émulateur ! :bj:

Petite illustration en passant du fait qu'il devient urgent de sauvegarder le logiciel de ces machines ayant plus de 30 ans d'âge pendant qu'elles fonctionnent encore ; bien que stockée très soigneusement en intérieur pendant maintenant plus de 11 ans, l'état de la TI-81 de Brandon Wilson a lourdement empiré. Elle n'a plus 1 colonne de pixels morts comme lorsqu'il nous l'avait envoyée en 2012, mais une véritable épidémie de colonnes de pixels morts... Heureusement que la ROM V2.00 est maintenant correctement sauvegardée, car il nous aurait été strictement impossible de refaire une vidéo exploitable.

6279La TI-81 en version 1.0 nous était connue depuis longtemps, puisque documentée sur le musée en ligne Datamath. Toutefois ce dernier n'a pas pu nous la prêter, ne l'ayant pas retrouvée dans sa collection, peut-être rendue à Texas Instruments ou bien revendue.

Novembre 2015, CVSoft réussissait à mettre la main sur une TI-81 assemblée en juin 1990 avec une ROM en version 1.0.

Malheureusement la méthode d'affichage du contenu de la ROM par FloppusMaximus n'y fonctionnait pas.
62825819L'extraction de la puce ROM pour connexion à un programmateur n'était pas non plus envisageable ici. En effet cette très vieille TI-81 utilisait à la différence des suivantes une puce ROM totalement inconnue, avec juste un autocollant © 1990 T.I. et aucune inscription dessous une fois retiré. Sans garantie que le brochage soit identique à celui des puces Sharp LH utilisées par la suite, le risque de casse faisant perdre peut-être définitivement ce dernier exemplaire fonctionnel du logiciel TI-81 étant trop important.
62825829Ici comme sur toutes les TI-81 munies d'une version inférieure à 2.0, pas de puce ASIC distincte du processeur. Le processeur spécifique est un Toshiba T6A49A.

Or il se trouve qu'entre cette version initiale et la version 2.0, les TI-81 sont passées à un processeur Toshiba T6A43 qui a également été utilisé pour les TI-85 sorties en 1992, modèles munis d'un circuit de communication.

tr1p1ea a pu identifier les broches dédiées au circuit de communication sur le T6A43 et par comparaison noter qu'elles étaient également présentes sur la T6A49A et bien évidemment non connectées.

18792Une petite modification de son programme plus loin, voici enfin la ROM TI-81 en version 1.0 correctement sauvegardée et émulable, préservée de l'anéantissement !

Avec donc la TI-81 1.0 de 1990, soit non seulement la plus ancienne version TI-81 connue mais également par extension la plus ancienne version du logiciel graphique TI-z80 graphique jamais vue, voici donc aujourd'hui la fin heureuse en apothéose à plus d'une décennie de recherches et travaux autour de la préservation de la TI-81 ; toutes les versions connues de la TI-81 ont été sauvegardées correctement.

Un gros merci à tous ceux qui nous ont accompagnés et aidés sur plus d'une décennie dans cette aventure autour de la préservation du patrimoine historique des TI-81 : Randy "Zeroko" Compton, Benjamin "FloppusMaximus" Moody, Patrick "tr1p1ea" Prendergast, DarkGrunt, Brandon Wilson, CVSoft, Hervé Guillemot, et tous ceux dont le nom nous échappe ou nous est inconnu, nos pensées sont avec vous où que vous soyez ! ❤️

Nous allons pouvoir passer à d'autres modèles... ;)