![13568](https://cdn.ti-planet.org/forum/gallery/image.php?mode=thumbnail&image_id=13568)
![13558](https://cdn.ti-planet.org/forum/gallery/image.php?mode=thumbnail&image_id=13558)
Nous t'avions déjà présenté et testé différents prototypes de calculatrices
Texas Instruments. Mais jusqu'à cette année nous n'avions jamais eu ni même vu passer le moindre prototype de
TI-92, la calculatrice haut de gamme innovante sortie par
Texas Instruments pour la rentrée 1995.
Grâce à
Frédéric Desautels pour qui nous l'avons acheté, dans une actualité précédente nous te
présentions une formidable découverte, tout premier prototype connu au monde des
TI-92 sorties pour la rentrée 1995 !
![Bien joué! :bj:](./images/smilies/sg3agbjg3ag.gif)
Sur la seule photo de face alors présentée par l'annonce,
Frédéric - œil de lynx l'a reconnu grâce à la touche de verrouillage avec la main présentant un visuel différent de celui des modèles de production, sans manche ni poignet, comme on pouvait déjà remarquer sur les premiers visuels de la communication de l'époque :
Au moins 3 visuels différents avaient été envisagés par
TI pour cette touche selon les illustrations qui ont varié dans les communications promotionnelles de l'époque :
![13541](https://cdn.ti-planet.org/forum/gallery/image.php?mode=thumbnail&image_id=13541)
![](https://i.imgur.com/Fisi14Et.png)
Le prototype présente un module
ROM amovible muni de la version finale
1.12 du
8 Mai 1996, et utilisant des connecteurs
Zebra, physiquement incompatibles avec les modèles de production.
![13543](https://cdn.ti-planet.org/forum/gallery/image.php?mode=thumbnail&image_id=13543)
![](https://i.imgur.com/6flFHLJt.png)
Mais contrairement aux premiers modèles de production, ce prototype présentait également une
ROM interne, pour sa part munie d'une version
0.5d23 jamais vue compilée le
16 Janvier 1995 !
![:o :o](./images/smilies/surprise.png)
L'urgence pour nous était donc de
dumper cette version historique pendant que le prototype fonctionnait encore, un véritable trésor pour en apprendre davantage sur l'histoire du développement de la
TI-92.
Problème, contrairement aux
TI-92 Plus, les
TI-92 n'ont pas la fonction
Asm() pour exécuter du code en langage machine.
Il est certes possible de la rajouter avec le
shell Mallard, mais ce dernier utilise des fichiers d'installation spécifiques pour chaque version
TI-92 connue, et n'a donc aucune chance de fonctionner sur la version
0.5d23 ici inconnue jusqu'à cette semaine.
Lorsqu'une
TI-92 présente à la fois une
ROM interne et le module
ROM externe amovible, c'est le module externe qui est prioritaire pour l'amorçage.
Et dans cette configuration, le prototype
TI-92 démarre donc sur la version
1.12 sur laquelle on peut installer
Mallard.
![13528](https://cdn.ti-planet.org/forum/gallery/image.php?mode=thumbnail&image_id=13528)
![13529](https://cdn.ti-planet.org/forum/gallery/image.php?mode=thumbnail&image_id=13529)
![13533](https://cdn.ti-planet.org/forum/gallery/image.php?mode=thumbnail&image_id=13533)
Selon la documentation communautaire, la
ROM utilisée est
mappée en mémoire à la fois aux adresses
0x200000 et
0x400000.
Mais bizarrement ici, l'option
PEEK de l'écran de diagnostics en version
0.5d23 présentait des valeurs différentes aux adresses
0x200000 et
0x400000.
Peut-être que la documentation est fausse, peut-être n'a-t-elle vérifié ce qui se passait dans le cas d'une
ROM interne, configuration qui n'a concerné que les toutes dernières
TI-92 à partir de la version
1.11, ou peut-être tout simplement que ce prototype se comporte différemment.
Bref, et si on en tentait alors d'amorcer notre prototype sur la
ROM externe
1.12, d'y installer
Mallard puis de
dumper non pas à l'adresse
0x400000 les
1 Mio de la version
1.12 dont nous disposons déjà, mais un éventail bien plus large de
4 Mio à partir de l'adresse
0x200000 ?
![;) ;)](./images/smilies/wink.png)
![](https://i.imgur.com/3IsInBDt.png)
C'est maintenant fait avec un
TiLP modifié grâce à l'aide exhaustive de
Lionel Debroux, et bingo, même quand on amorce sur le module
ROM externe, la
ROM interne semble quand même
mappée en mémoire, plutôt deux fois qu'une d'ailleurs :
![:D :D](./images/smilies/grin.png)
- 0x200000 : ROM interne (1 Mio)
- 0x300000 : ROM interne (1 Mio)
- 0x400000 : ROM externe (1 Mio)
La version
0.5d23 s'amorce alors sans problème sur un émulateur
TI-92 compatible comme
TiEmu !
(pas trop de choix en fait, on trouve beaucoup d'émulateurs de TI-92 Plus mais très peu d'émulateurs de TI-92, pour la plupart en version bêta ou même alpha très inachevée, pour des systèmes d'exploitation désuets comme Windows 95 ou même MS-DOS, ou encore ne fonctionnant pas correctement avec cette version).
![](https://i.imgur.com/K3LiPT8t.png)
Avec cette version
0.5d23 du
16 Janvier 1995 nous sommes donc en gros 6 mois avant le lancement de la
TI-92. Pour d'autres modèles, il nous est déjà arrivé de trouver des traces de développement logiciel ou matériel allant jusqu'à 1 an avant la sortie.
Comparons avec la version supérieure la plus proche dont nous disposons, la
1.3 du
20 octobre 1995, soit 9 mois plus tard.
En cherchant bien on arrive à trouver quelques différences dans l'organisation des éléments de l'interface utilisateur, mais en gros l'interface semblait déjà finalisée, quasiment identique à ce que nous avons eu. Depuis combien de
mois années
Texas Instruments développait-il la
TI-92 ?
![Roule les yeux :#roll#:](./images/smilies/09.gif)
![](https://i.imgur.com/OjHa2xKt.png)
On peut également trouver quelques renommages, plusieurs des fonctions de
zoom adoptant pour préfixe
Z et pas encore
Zoom.
Quelque chose qui semble bien plus pratique sur la version
0.5d23, c'est la gestion des erreurs de saisie. Sur les versions de production, tout ce que tu obtiens en cas de saisie incorrecte, c'est une
popup d'erreur bloquante indiquant la plupart du temps un bête
"Syntax" et à fermer avec la touche
Esc
.
Ici tu obtiens un avertissement non bloquant en bas d'écran t'indiquant exactement ce que le vérificateur syntaxique attendait à la position du curseur, et peux immédiatement corriger !
Pourquoi avoir abandonné ça ? ![Roule les yeux :#roll#:](./images/smilies/09.gif)
![](https://i.imgur.com/gUgZ4yst.png)
Comportement similaire si l'on saisit par exemple un nom de variable de plus de 8 caractères.
![](https://i.imgur.com/CGBVct5t.png)
Jetons un coup d'œil à la boîte à caractères accessible via
2nd
+
. On y trouve déjà de façon évidente un sous-menu
Contrôle supplémentaire avec plein de caractères ne pouvant être saisis sur les versions de production !
![Bien joué! :bj:](./images/smilies/sg3agbjg3ag.gif)
![](https://i.imgur.com/qyxjom5t.png)
Des différences également dans les autres sous-menu. Dans
Greek par exemple, manquent les 2 caractères grecs
θ et
π car pouvant être saisis au clavier.
Pour le reste, il s'agit de déplacements :
- les caractères « et » étaient bizarrement dans Math et pas encore dans Punctuation
- les caractères a et o n'étaient pas encore dans les déclinaisons internationales du a et du o, mais dans Punctuation
![](https://i.imgur.com/2pF9mVWt.png)
Tentons maintenant de comparer les versions en terme de fonctionnalités. On peut par exemple accéder à l'éditeur de programme et vérifier ce qu'il a au menu.
On remarque l'absence de l'onglet
F6 avec les différents paramètres et valeurs de la fonction
setMode(), ainsi que l'absence des délimiteurs de bloc
Custom dans l'onglet
F2.
En pratique toutefois ces différents
tokens (jetons) semblent bien connus de la version
0.5d23, ils ne sont juste pas au menu et doivent donc être saisis caractères par caractère.
La caractère
© servant de préfixe identifiant les commentaires est également absent de ce même onglet ainsi que du catalogue. On peut toutefois le saisir via la boîte à caractères, mais il n'est pas reconnu en tant que tel et génère une erreur de syntaxe.
![](https://i.imgur.com/fAubuWdt.png)
Dans l'onglet
F3 on note que les boîtes de dialogue construites par les programmes étaient initialement prévues pour comporter des icônes, même si le
token icon était non reconnu si saisi à la main.
![](https://i.imgur.com/nOd9jF4t.png)
On y note également que la version
0.5d23 disposait d'une instruction supplémentaire
Show à utiliser sous la forme
Show "string"
selon le catalogue.
En pratique toutefois
Show ne marche pas, ce mot n'étant pas reconnu en tant qu'instruction. Peut-être s'agit-il juste d'un ancien nom pour l'instruction
Text permettant d'afficher une boîte avec un message.
Les fonctions de connectivité du sous-menu
Link sont ici non exposées, mais bien reconnues si saisies manuellement au clavier.
![](https://i.imgur.com/8aykckCt.png)
Nous l'avons déjà évoqué plusieurs fois, alors passons au catalogue accessible via
2nd
2
pour terminer la comparaison.
Plusieurs fonctions sont absentes du catalogue en version
0.5d23, mais bel et bien reconnues si saisies à la main. On peut citer :
- ClrErr
- DispG
- DispTbl
- EndPrgm
- DelFold()
- getFold()
- setFold()
getFold( semble avoir toutefois un petit problème, acceptant ici anormalement un paramètre optionnel et affichant alors un message d'erreur signalant un
bug :
"BUG: Illegal data tag".
![](https://i.imgur.com/EHnKPJWt.png)
La version
0.5d23 présentait bizarrement 2 fonctions différentes pour retourner les dimensions de variables :
- dim() comme sur les versions de production mais uniquement pour les listes, vecteurs et matrices
- et une fonction supplémentaire length() dédiée aux seules chaînes de caractères
Les versions de production ont donc réuni par la suite ces deux fonctionnalités sous un seul appel de fonction,
dim().
![](https://i.imgur.com/mWohgkZt.png)
On note également qu'en version
0.5d23 l'instruction
DrawSlp pour tracer une droite connaissant les coordonnées d'un de ses points et sa pente, s'appellait alors
SlpLine.
![](https://i.imgur.com/l8d7Lpot.png)
La
TI-92 simplifie automatiquement les résultats littéraux au maximum, ce qui ne permet pas d'obtenir des étapes des calculs contrairement à d'autres modèles.
Peut-être que sur cette version
0.5d23 ça ne marchait pas encore bien dans certains cas, car 2 fonctions explicites de simplification étaient encore présentes :
- cExpand() dans le contexte des nombres imaginaires ou complexes
- simplify() dans le seul contexte des nombres réels
![](https://i.imgur.com/VS7io5Vt.png)
Enfin, les fonctions de
zoom adoptent ici le préfixe
Z et pas encore
Zoom comme déjà vu plus haut. À la différence qu'ici ces fonctions ne sont pas fonctionnelles si appelées en l'état,
TI devait être en plein renommage.
En pratique il faut remplacer le préfixe
Z par
Zoom dans la saisie afin que ça marche.
![](https://i.imgur.com/uAqS1ewt.png)
On remarque en passant que l'instruction
ZoomInt est absente du catalogue en version
0.5d23.
Elle est bien reconnue si saisie à la main, mais son interface souffre alors d'un bug d'affichage.
Comme déjà dit, il ne nous est pas possible à ce jour de publier l'image ROM 0.5d23.
En effet Texas Instruments combat farouchement la diffusion d'images ROM de ses calculatrices car, contrairement aux images d'OS qui n'ont pas le code amorce, elles sont directement utilisables pour faire fonctionner des émulateurs non officiels, notamment sur smartphones et tablettes, ce qui dans certains pays autorisant ces appareils aux examens évite ainsi d'avoir à s'acheter une calculatrice.
Toutefois, l'image 0.5d23 récupérée est désormais dans les mains des quelques personnes qui ont aidé directement ou indirectement à sa sauvegarde, et qui sauront on espère la conserver en privé en lieu sûr jusqu'à des temps plus propices.