Page 1 sur 3

Dumping prototype TI-92 version 0.5d23 Janvier 1995 !

Message non luPosté: 18 Fév 2021, 15:13
de critor
1356813558Nous 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 ! :bj:

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 :


13541Le 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.

13543Mais 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

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.

135281352913533Selon 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 ? ;)

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
  • 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 ! :bj:
(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).

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 ? :#roll#:

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 ! :favorite:

Pourquoi avoir abandonné ça ? :#roll#:

Comportement similaire si l'on saisit par exemple un nom de variable de plus de 8 caractères.

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 ! :bj:

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

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.

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.

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.

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".

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().

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.

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

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.

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.

Re: Dumping prototype TI-92 version 0.5d23 Janvier 1995 !

Message non luPosté: 18 Fév 2021, 15:39
de Ti64CLi++
Incroyable, même si je pensais qu'il y aurait plus de différences.
Hâte de voir ce que renferme l'autre prototype ;)

Re: Dumping prototype TI-92 version 0.5d23 Janvier 1995 !

Message non luPosté: 18 Fév 2021, 15:47
de critor
Ti64CLi++ a écrit:Hâte de voir ce que renferme l'autre prototype ;)

Ah, justement... faudrait que j'aille le chercher. ;)

Re: Dumping prototype TI-92 version 0.5d23 Janvier 1995 !

Message non luPosté: 18 Fév 2021, 15:56
de critor
Ti64CLi++ a écrit:Incroyable, même si je pensais qu'il y aurait plus de différences.

Mais sinon oui, je suis surpris également.

Je n'ai trouvé jusqu'à présent que de petites différences d'interface ou de catalogue de fonctions.
C'est-à-dire que la version 0.5d23 de Janvier 1995 adoptait déjà une forme quasiment finale.

TI devait donc déjà travailler sur le développement de la TI-92 depuis plusieurs mois voir plusieurs années.
Et si ils continuent à faire pareil, sans-doute sont-ils déjà sur une TI-83 Premium CE II ou TI-Nspire CX III. ;)

Re: Dumping prototype TI-92 version 0.5d23 Janvier 1995 !

Message non luPosté: 18 Fév 2021, 16:06
de Ti64CLi++
Je dirais plus TI-83 Premium CE III, la TI-83 Premium CE Python Edition étant la II :p

Il faudrait alors arriver à dénicher un prototype encore plus ancien, ce serait incroyable !

Re: Dumping prototype TI-92 version 0.5d23 Janvier 1995 !

Message non luPosté: 18 Fév 2021, 22:34
de critor
Ti64CLi++ a écrit:Je dirais plus TI-83 Premium CE III, la TI-83 Premium CE Python Edition étant la II :p

Bof, l'édition Python n'est pas une révolution matérielle. Elle rajoute un coprocesseur, mais elle ne change pas l'architecture.

Re: Dumping prototype TI-92 version 0.5d23 Janvier 1995 !

Message non luPosté: 18 Fév 2021, 23:43
de Adriweb
Si si, l'architecture (pas le CPU dans l'ASIC, certes) change, et pas de peu. Sans meme parler du nouveau co-processeur ARM, TI a complètement changé son interfacage avec la Flash (qui n'est d'ailleurs plus parallèle mais série), avec notamment un process de mise en cache intermédiaire, qui n'existait pas avant. C'est en fait grace à ca que la calculatrice parait plus rapide.
DrDnar a analysé tout ceci, et les differences d'architectures avec les pre-M par ici. On y voit qu'il y aurait encore beaucoup à gagner...

Mais bon après, on peut dire qu'il y a eu au moins 3 changements matériels suffisamment majeurs pour mériter une incrémentation du numero principal sur le codename du PCB:
  1. SG92 -> rev pre-A à rev I (non compris)
  2. SG93 -> rev I à rev M (non compris). Ca correspond a plusieurs changements dans l'ASIC, notamment le fait que le mode IM2 a disparu.
  3. SG95 -> rev M à rev P (actuel à la date de ce post). Les gros changements que je mentionne au début de ce post.

Bon, pourquoi on parle de CE dans un topic TI-92... :troll:

Re: Dumping prototype TI-92 version 0.5d23 Janvier 1995 !

Message non luPosté: 19 Fév 2021, 00:54
de Ti64CLi++
@Adriweb et où est passé le SG94 ? :p

Adriweb a écrit:Bon, pourquoi on parle de CE dans un topic TI-92... :troll:

On peut partir sur les Nspire si tu préfères :troll:
Bon OK j'arrête là

Re: Dumping prototype TI-92 version 0.5d23 Janvier 1995 !

Message non luPosté: 19 Fév 2021, 04:08
de mr womp womp
Ti64CLi++ a écrit:Il faudrait alors arriver à dénicher un prototype encore plus ancien, ce serait incroyable !

Bonne chance :<D
Bien sur, je gardes toujours un œil sur à peu près tous les modèles de TI graphiques donc c'est toujours possible.

C'est clair que TI travaillait sur la TI-92 bien avant ces 2 protos, par contre, c'est très difficile de savoir combien ont été produites. Le chiffre au dos est certainement pas un numéro de série. 11045 c'est beaucoup trop pour un proto de ce genre, si c'était le cas, on aurait aucune difficulté à en trouver tout plein comme des Nspire CAS PVT1.1.

Re: Dumping prototype TI-92 version 0.5d23 Janvier 1995 !

Message non luPosté: 19 Fév 2021, 08:45
de parisse
Je me suis toujours demande pourquoi le nom TI92, d'abord je pensais que le projet a demarre en 1992, plus j'y reflechis, plus je pense que le projet a demarre plus tot, par exemple en 1990 en reponse a la sortie de la HP48S, avec peut-etre dans l'idee de sortir une nouvelle calc des 1992.

On peut tres bien imaginer qu'en 1990, TI ait lance un projet avec comme objectif d'avoir une calculatrice concurrente a la 48, voire plus tot quand la 28 a commence a se repandre. Ils ont sans doute regarde comment faire en interne, puis se sont rendu compte que pour surpasser la 28 ou la 48, il fallait un vrai CAS et qu'il etait plus rapide de s'adresser a l'exterieur, ici chez Derive. Pour la geometrie, je ne sais pas comment cela a pu se passer, il faudrait enqueter aupres d'anciens de l'UJF. On peut imaginer que des enseignants travaillant sur d'autres calculatrices TI leur ont alors signale l'emergence de la geometrie dynamique (sur Mac a l'epoque) par le projet Cabri a l'UJF.

Gerer un projet avec 2 intervenants exterieurs (Derive et Cabri) ca prend forcement plus de temps qu'un projet en interne, il faut deja du temps pour definir le projet, puis contacter les exterieurs et signer des contrats. Et puis, il faut voir que le temps necessaire pour developper etait a l'epoque plus important que maintenant, on avait beaucoup moins d'outils facilement a disposition, a commencer par Internet qui n'existait pas vraiment, il y avait seulement des newsgroup et des sites ftp et l'acces etait encore assez confidentiel (personnellement je n'y ai eu acces que fin 1992, et l'acces a distance depuis chez soi se faisait avec un debit de l'ordre de quelques centaines d'octets par seconde). Regardez la Numworks par exemple, il a fallu plus d'un an pour creer la premiere version, qui etait loin d'etre comparable a la TI92 en terme de fonctionnalites. 5 ans pour sortir sur le marche une calculatrice comme la 92 ca me semble plus raisonnable que 2 ou 3 ans.