Il y a un peu plus d'un an, nous découvrions avec vous grâce au musée Datamath l'ancêtre de toutes les TI-Nspire, la plus ancienne unité nomade la famille CAS+, le TI-Phoenix 1 P1-EVT1 de janvier 2006:
Depuis, nous avons fait de grandes avancées sur la famille TI-Nspire CAS+ avec notamment:
- le dumping du premier OS sur un prototype TI-Nspire CAS+ P1-EVT2 en mai 2012
- le dumping des OS TI-Nspire CAS+ P1-DVT et P1-PVT en mai 2012
- le dumping du premier Boot1 et premier Boot2 sur un prototype TI-Nspire CAS+ P1-EVT2 en octobre 2012
- le dumping de l'OS TI-Nspire+ P1-EVT2 en novembre 2012
- le dumping des Boot1 et Boot2 TI-Nspire CAS+ P1-PVT en novembre 2012
- le dumping des Boot1 et Boot2 TI-Nspire+ P1-EVT2 en novembre 2012
- la sortie d'un émulateur en décembre 2012
- le dumping des premiers Boot1 et Boot2 TI-Nspire CAS+ P1-DVT en décembre 2012
- la sortie de Ndless+ en janvier 2013
Au cours de ces aventures, nous avons essentiellement exploité et développé deux méthodes de dumping:
- Pour les TI-Nspire CAS+ P1-EVT:
- Utiliser le shell DataLight RS232 pour copier l'OS dans les documents utilisateurs
- Récupérer l'OS en USB via un telnet sur le port 10001 de la calculatrice
- Analyser l'OS pour exploiter les failles du shell Datalight
- Envoyer sur le shell Datalight RS232 une commande contenant du code assembleur à exécuter afin de dumper les Boot1, Boot2 et Diags si présent en RS232
- Pour les TI-Nspire CAS+ P1-DVT et P1-PVT (dépourvues de shell Datalight)
- En USB via un telnet sur le port 10002 de la calculatrice, copier l'OS dans les documents utilisateurs
- Récupérer l'OS en USB via le TI-Nspire Computer Link 1.0
- Analyser l'OS pour en exploiter les failles
- Envoyer des documents adaptés contenant du code assembleur à exécuter afin de dumper les Boot1, Boot2 et Diags si présent dans les documents utilisateurs
- Récupérer les Boot1, Boot2 et Diags en USB via le TI-Nspire Computer Link 1.0
Autrement dit, à côté de cela notre travail sur le TI-Phoenix 1 P1-EVT1 était resté très superficiel - nous l'avions eu entre les mains beaucoup trop tôt. Nous n'étions pas prêts... Nous n'étions pas mûrs...
Mais même à ce jour, il n'est pas possible de dumper ce prototype par les méthodes précédentes, tout simplement car sa prise USB semble non fonctionnelle. L'ordinateur ne réagit absolument pas à son branchement; il ne signale même pas de périphérique inconnu - c'est comme si il n'y avait rien de branché.
![:o :o](./images/smilies/surprise.png)
Nous ne savons pas si c'est lié, mais on remarque facilement que la prise USB du TI-Phoenix 1 P1-EVT1 est connectée à l'envers par rapport aux autres TI-Nspire. Peut-être était-ce un circuit différent, ou peut-être était-ce un moyen de la désactiver...
Mais aujourd'hui, pour l'anniversaire de sa découverte (avec 2 mois de retard certes...
![:p :P](./images/smilies/razz.png)
Et je compte bien en profiter pour lui faire cracher le morceau!
![Diabolique! :bat:](./images/smilies/gif_batm.gif)
Nous avions vu lors du test RS232 du TI-Phoenix 1 que ce dernier n'utilisait pas un Boot1 de chez TI.
En guise de Boot1 on avait un loader U-Boot 1.1.2 compilé le 23 janvier 2006.
U-Boot étant un loader libre répandu dans les monde Linux et embarqué.
- Code: Tout sélectionner
U-Boot 1.1.2 (Jan 23 2006 - 11:21:34)
U-Boot code: 11080000 -> 110E3094 BSS: -> 110EF750
RAM Configuration:
Bank #0: 10000000 32 MB
Flash: 512 kB
NAND:32 MB
In: serial
Out: serial
Err: serial
Hit any key to stop autoboot: 0
NAND read: device 0 offset 16384, size 1425408 ... 1425408 bytes read: OK
## Starting application at 0x10C00000 ...
Mais avez-vous bien vu ce message?
![;) ;)](./images/smilies/wink.png)
- Code: Tout sélectionner
Hit any key to stop autoboot:
Il est accompagné d'un compte à rebours de 5 à 0. Selon la documentation de U-Boot et si TI n'a pas modifié ça en recompilant les sources, l'interruption du démarrage à ce moment-là donnerait accès une console RS232 où nous aurions des commandes pour afficher l'état des mémoires RAM et NAND, ce qui permettrait de dumper les Boot1 et Boot2!
![Aux anges :=):](./images/smilies/17.gif)
Expérimentons...
Yes, j'ai réussi à appuyer sur une touche au bon moment et me vois salué par une invite "Phoenix Demo". Tentons une commande de dumping mémoire RAM...
- Code: Tout sélectionner
U-Boot 1.1.2 (Jan 23 2006 - 11:21:34)
U-Boot code: 11080000 -> 110E3094 BSS: -> 110EF750
RAM Configuration:
Bank #0: 10000000 32 MB
Flash: 512 kB
NAND:32 MB
In: serial
Out: serial
Err: serial
Hit any key to stop autoboot: 0
Phoenix Demo# md 0 10
00000000: ea000093 e59ff014 e59ff014 e59ff014 ................
00000010: e59ff014 e59ff014 e59ff014 e59ff014 ................
00000020: 11080300 11080360 110803c0 11080420 ....`....... ...
00000030: 11080480 110804e0 11080540 deadbeef ........@.......
Phoenix Demo#
Bingo, ça marche!
![Bien joué! :bj:](./images/smilies/sg3agbjg3ag.gif)
Voilà les Boot1 et Boot2 du TI-Phoenix 1 sont enfin dumpés!
![Bien joué! :bj:](./images/smilies/sg3agbjg3ag.gif)
Voici par exemple un petit aperçu du Boot2:
![Image](http://i72.servimg.com/u/f72/13/23/13/53/phboot10.png)
Comme vu dans le test RS232, ce Boot2 n'était pas très bavard au sens où il ne donnait aucun numéro de version et aucune date.
- Code: Tout sélectionner
Phoenix BOOT2
Initializing graphics subsystem.
Initializing filesystem.
Datalight Reliance v2.00.0451
Copyright (c) 2003 - 2005 Datalight, Inc.
Registered to #9DE08703
FlashFX sample project for the OMAP5912 OSK running Nucleus
Datalight FlashFX Pro v2.0 Build 966
Nucleus Edition for ARM9
Copyright (c) 1993-2005 Datalight, Inc.
Patents: US#5860082, US#6260156.
Filesystem ready.
Alors on ne trouve pas plus de numéro de version, mais là dans l'image du Boot2 on a bel et bien sa date de naissance: 23 janvier 2006!
![Bien joué! :bj:](./images/smilies/sg3agbjg3ag.gif)
![Image](http://i72.servimg.com/u/f72/13/23/13/53/phboot11.png)
En prime, les Boot1 et Boot2 du TI-Phoenix 1 marchent sous émulateur!
![Bien joué! :bj:](./images/smilies/sg3agbjg3ag.gif)
![Image](http://i72.servimg.com/u/f72/13/23/13/53/phoeni10.png)
TI-Planet poursuit ainsi son oeuvre de sauvegarde du patrimoine TI pédago-ludique en voie de disparation.
Mais au delà de ça, avec une version de U-Boot désormais compilée spécifiquement pour les TI-Nspire CAS+, c'est la porte ouverte au lancement de Linux sur ce modèle!
![;) ;)](./images/smilies/wink.png)
A bientôt on espère pour le dumping de l'OS! ![Bien joué! :bj:](./images/smilies/sg3agbjg3ag.gif)
![Bien joué! :bj:](./images/smilies/sg3agbjg3ag.gif)
Liens:
Boot2 TI-Phoenix 1
Versions Boot1 TI-Nspire CAS+
Versions Boot2 TI-Nspire CAS+