π
<-
Chat plein-écran
[^]

1ère reprogrammation du Boot1 d'une TI-Nspire de production

:32tins: :32tinsktpb: :32tinsktpn: :32tinscas: :32tinstpkc: :32tinstpktpb: :32tinstp: :32tinscastp: :32tinscmc: :32tinscx: :32tinscxcas:

1ère reprogrammation du Boot1 d'une TI-Nspire de production

Message non lude critor » 18 Déc 2012, 22:50

Dans une news précédente, nous avions vu que suite à une petite différence de brochage, la puce Flash NOR des prototypes TI-Nspire ClickPad était reprogrammable.
Image


Cette possibilité de reprogrammer le Boot1 nous avait par la suite permis de transformer ces prototypes TI-Nspire ClickPad en modèles de production complètement utilisables! :bj:



Dans une news précédente, une source anonyme nous avait publié des informations sur une modification matérielle des TI-Nspire ClickPad de production, qui permettrait de rendre la puce Flash NOR reprogrammable exactement comme sur les prototypes.
Image


Nous n'avons pu obtenir aucune information supplémentaire sur la fonctionnalité de la chose, alors le mieux était de tenter nous-même pour vérifier:
Image

Le montage nécessite effectivement un interrupteur inverseur pour basculer entre l'état d'origine et modifié de la calculatrice. En effet, dans l'état modifié la calculatrice ne démarre pas, ce qui semble indiquer qu'il y aurait d'autres différences matérielles avec les prototypes puisque eux sont capables de démarrer dans cet état.


Une fois la calculatrice démarrée, il suffit donc de basculer l'interrupteur juste avant de lancer la reprogrammation du Boot1.

Modifions donc un Boot1 1.1.8916 en changeant sa chaîne de version en 1.1.9999 et tentons de le programmer...
Image


Bingo, ça a marché. :#fou#:



Puisque l'on peut désormais modifier le Boot1 absolument comme on veut, il devient possible de programmer n'importe quoi comme Boot2, logiciel de diagnostics ou même OS.

Les possibilités sont tout bonnement énormes! :bj:
Rappelons que le Boot1 lance au démarrage soit le Boot2, soit le logiciel de diagnostics. Ces deux modules utilisent le même format en mémoire et sont donc entièrement interchangeables, la seule contrainte étant la taille (la zone de diagnostics est limitée à 640Ko, mais le code inclus peut être compressé).

On pourrait avoir nos propres logiciels de diagnostics/dépannage/maintenance, avec des possibilités supérieures...

Ou encore l'installation permanente de Linux via la programmation d'un loader...

Ou même un véritable dual-Boot, permettant de lancer deux OS différent... par exemple pour alternet entre l'OS Nspire et Linux... ou encore pour alterner entre le lancement de l'OS 3.1 (pour Ndless) et de l'OS 3.2 (pour les nouvelles applications Lua) sans avoir à se taper sans arrêt des réinstallations d'OS selon les besoins.



Bref, les possibilités défient l'imagination. :bj:



A tempérer par un gros bémol: on parle ici des TI-Nspire ClickPad commercialisées jusqu'en 2009-2010, qui disposent d'une puce Flash NOR externe.

A partir de 2010-2011, les TI-Nspire TouchPad puis CX et CM ont vu leur puce Flash-NOR transférée à l'intérieur de la puce ASIC.

Cette Flash-NOR interne inconnue est très probablement protégée contre l'écriture si TI a bien fait les choses, et une modification similaire nécessiterait de décapsuler la puce ASIC sans la détruire pour ensuite modifier sous microscope... Clairement mission impossible donc.

In a previous news, we saw that a small broaching difference around the NOR Flash chip in TI-Nspire ClickPad prototypes was making the chip writeable.
Image


This ability to reprogram the Boot1 had then helped us transforming TI-Nspire ClickPad prototypes into fully functionnal production TI-Nspire.



In a previous news, an anonymous source had published information about a hardware mod for production TI-Nspire ClickPad, which would make the Flash NOR chip writeable like on prototypes.
Image


We were unable to obtain any further information, so it was best to try ourselves to check:
Image

The installation does require a switch to toggle between the original and modified states of the calculator. Indeed, in the modified state the calculator does not boot, which suggests that there are other hardware differences with the prototypes since those are able to boot in this state.


Once the OS has started, you just have to flip the switch before launching the NOR flasher.

Let's try to reprogram a 1.1.8916 Boot1, with its version string modified to 1.1.9999...
Image



Success!



Since you can now modify the Boot1 exactly as you want, it becomes possible to program anything as Boot2 and diagnostics software, or even as OS.

The possibilities are simply huge! : Bj:
Note that the Boot1 does launch either the Boot2, either the diagnostic software. Both use the same format in memory and are fully interchangeable, the only constraint being the size (the diags area is limited to 640KB, but the code can be compressed).

We could have our own software diagnostics / troubleshooting / maintenance, with more and greater options than the official one...

Or permanently install Linux by programming a loader as a Boot2 or Diags...

Or even have a true dual-boot, to run two different OS ... for example to switch between the Nspire OS and Linux... or to switch between OS 3.1 (for Ndless) and OS 3.2 (for new Lua apps)... No need for a computer or another calculator anymore to constantly install the currently needed OS every 2 days!

And much more... ;)



But don't be too excited: we are talking about TI-Nspire ClickPad sold until 2009-2010, which had an external Flash-NOR chip.

From 2010-2011, TI-Nspire TouchPad, CX and CM had their Flash-NOR chip moved inside the ASIC.

This internal Flash-NOR internal is unknown and probably write-protected. A similar change would require to uncap the ASIC chip without destroying it and then modify it under a microscope... Let's say it more simply: it's impossible.

Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.3%
 
Messages: 41496
Images: 14632
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: 1ère reprogrammation du Boot1 d'une TI-Nspire de product

Message non lude Persalteas » 19 Déc 2012, 13:23

Hoho, voilà qui est intéressant !

Il y a tout de même une chose qui m'étonne: Tu dis que celà ouvrirait les portes a la programmation de nouveaux OS; il me semblait que les OS étaient cryptés avec des clefs RSA, non ? Et la clef RSA Nspire n'est pas décryptée ?

Parce qu'effectivement, un KnightOS-Nspire ou un linux définitif seraient intéressants. Mais je pensais que pour faire un OS, il fallait la clé RSA.
Avatar de l’utilisateur
PersalteasMembre UPECS
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 6.2%
 
Messages: 2337
Images: 113
Inscription: 04 Fév 2010, 00:00
Localisation: Evry (France)
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: PhD candidate, Bioinformatics

Re: 1ère reprogrammation du Boot1 d'une TI-Nspire de product

Message non lude Excale » 19 Déc 2012, 18:07

Pour faire simple, le boot1 vérifie la signature RSA du boot2, qui vérifie la signature RSA de l'OS...
Avatar de l’utilisateur
ExcaleAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 3.9%
 
Messages: 2955
Images: 3
Inscription: 10 Sep 2010, 00:00
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: 1ère reprogrammation du Boot1 d'une TI-Nspire de product

Message non lude Persalteas » 19 Déc 2012, 18:23

Ah. Et c'est possible de créer un boot1 qui lancerait un OS sans clé RSA, c'est ça ? okay, thanks.
Avatar de l’utilisateur
PersalteasMembre UPECS
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 6.2%
 
Messages: 2337
Images: 113
Inscription: 04 Fév 2010, 00:00
Localisation: Evry (France)
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: PhD candidate, Bioinformatics

Re: 1ère reprogrammation du Boot1 d'une TI-Nspire de product

Message non lude Lionel Debroux » 19 Déc 2012, 18:53

Et c'est possible de créer un boot1 qui lancerait un OS sans clé RSA, c'est ça ?

C'est ça :)
Mais il y a encore mieux à faire: un boot1 qui valide le boot2 signé avec une clé qui n'est pas celle de TI, et un boot2 qui valide les OS signés avec une clé qui n'est pas celle de TI.
Ca donnerait une machine qui refuse d'être mise à jour avec le boot2 et donc les OS officiels - bref, en conditions d'examen, s'il y a reflashage dans la salle d'examen, une brique plutôt qu'une machine qui obéit aux limitations (ce qui pose alors la question de l'équité de l'examen).
TI a fondamentalement perdu le contrôle des Clickpad.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6859
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: 1ère reprogrammation du Boot1 d'une TI-Nspire de product

Message non lude Persalteas » 19 Déc 2012, 18:55

Hum, je vois déjà venir chaque codeur pour Nspire créant son OS avec sa clé RSA personnelle ;)

On en est pas encore là, coder un OS entier en Asm ARM ne sera jamais fait, j'imagine, rien qu'a voir comment on galère avec KnightOS.

Le projet d'installer Linux en dual boot est plus prometteur par contre.

Bien, je fais comme tout le monde alors, j'attends avec mes yeux écarquillés :)
Avatar de l’utilisateur
PersalteasMembre UPECS
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 6.2%
 
Messages: 2337
Images: 113
Inscription: 04 Fév 2010, 00:00
Localisation: Evry (France)
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: PhD candidate, Bioinformatics

Re: 1ère reprogrammation du Boot1 d'une TI-Nspire de product

Message non lude Lionel Debroux » 19 Déc 2012, 19:33

Le projet d'installer Linux en dual boot est plus prometteur par contre.

Voilà. Le codage d'un OS entier en ASM ne se fait que sur des plate-formes où on ne peut pas utiliser de l'existant, standard et ultra-portable, comme Linux.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6859
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: 1ère reprogrammation du Boot1 d'une TI-Nspire de product

Message non lude Levak » 20 Déc 2012, 05:21

persalteas a écrit:On en est pas encore là, coder un OS entier en Asm ARM ne sera jamais fait, j'imagine, rien qu'a voir comment on galère avec KnightOS.


La vérification du CAS et non CAS est aussi 'comme par hasard' dans le boot (dupliqué dans l'OS mais c'est pour cacher la misère).
Inutile de nier que oui, on peut faire tourner un OS CAS sur une non CAS à partir de ce moment là.
Responsable design/graphique de TI-Planet
I do not get mad at people, I just want them to learn the way I learnt.
ImageTNOC [topic][DL]
nClock [topic][DL]
HideManager [topic][DL]
ZLock [topic][DL]
Theme Editor [topic][DL]
Mes programmes
Avatar de l’utilisateur
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 98.9%
 
Messages: 6414
Images: 22
Inscription: 27 Nov 2008, 00:00
Localisation: 0x1AACC355
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: BAC+5: Epita (ING3)


Retourner vers News TI-Nspire

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 89 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1463 utilisateurs:
>1449 invités
>10 membres
>4 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)