π
<-
Chat plein-écran
[^]

nBoot 3.00.99: Boot straight into linux

C, C++, ASM...

Re: nBoot 3.00.99: Boot straight into linux

Message non lude critor » 30 Mai 2016, 16:04

Trouvé je pense un bug/glitch(?) de nBoot.

Les TI-Nspire CX ont deux modes de démarrage :
- l'amorçage à froid
- l'amorçage à chaud

L'amorçage à chaud, c'est par exemple quand on enfonce et relâche le bouton 'reset'.
L'amorçage à froid, c'est par exemple quand on retire la batterie.

J'ai installé et testé avec succès nBoot sur deux CX CAS : HW-J et HW-T.

Or, depuis la révision matérielle HW-O, il est beaucoup plus facile d'obtenir un amorçage à froid.
Il suffit de maintenir enfoncé le bouton 'reset' pendant 1-2 secondes, ce que l'on fait bien souvent sans le vouloir lorsque l'on tente une combinaison de démarrage.
La calculatrice s'éteint alors complètement : elle ne se rallumera pas quand on le relâchera.
Il faudra la réveiller, en tapant :nsho: par exemple.

Donc j'ai pu remarquer que dans le contexte d'un démarrage à froid, nBoot ne se comporte pas correctement.
C'était visible au tout début de la vidéo (HW-T), et j'ai depuis confirmé sur HW-J qu'on a le même problème après retrait de la batterie.
Au réveil, la calculatrice reste coincée pendant 2-3 secondes sur un écran affichant n'importe quoi, et pouvant faire croire à sa destruction :
6953

Je viens de regarder de plus près ce qui se passe avec l'interface USB/TTL :
Code: Tout sélectionner
Boot Loader Stage 1 (3.00.99)<CR><LF>
Build: 2010/9/9, 17:29:13<CR><LF>
Copyright (c) 2006-2010 Texas Instruments Incorporated<CR><LF>
Using production keys<CR><LF>
<LF>
Last boot progress: 65<CR><LF>
<CR><LF>
Available system memory: 33196<CR><LF>
Checking for NAND: NAND Flash ID: Generic 1 GBit (0xA1)<CR><LF>
SDRAM size: 64 MB<CR><LF>
Turning device off<LF><CR>
Unlocked!<LF>
<NUL><LF>
<LF>
<LF><CR>
Boot Loader Stage 1 (3.00.99)<CR><LF>
Build: 2010/9/9, 17:29:13<CR><LF>
Copyright (c) 2006-2010 Texas Instruments Incorporated<CR><LF>
Using production keys<CR><LF>
<LF>
Last boot progress: 65<CR><LF>
<CR><LF>
Available system memory: 33196<CR><LF>
Checking for NAND: NAND Flash ID: Generic 1 GBit (0xA1)<CR><LF>
SDRAM size: 64 MB<CR><LF>
SDRAM memory test:   Pass<LF><CR>
Clearing SDRAM...Done.<CR><LF>
Clocks:  CPU = 132MHz   AHB = 66MHz   APB = 33MHz   <CR><LF>
Unlocked!<LF>
Clearing SDRAM...Done.<CR><LF>


Comme on peut le voir, au 1er amorçage (à froid donc), le Boot1 se bloque.
Après l'envoi du message "Unlocked!" injecté par nBoot, le Boot1 reste coincé 2-3 secondes sur l'écran montré plus haut.
Ensuite, la calculatrice redémarre, mais cette fois-ci il s'agit d'un amorçage à chaud - donc ça marche.



Je ne peux rien faire, ce n'est pas mon code, cela se produit avant même le lancement de ControlX.
En espérant que l'auteur nous lise encore...


En apparence donc ça ne cause pas de vrai problème, et si mes HW-J et HW-T n'ont rien cela devrait logiquement marcher sur toute révision A à V.
Mais c'est quand même je trouve assez effrayant, aussi bien en regardant l'écran que la console série... l'outil nBoot est peut-être dans son état actuel à 1 doigt de détruire les machines, et si il doit être mis à jour à l'avenir il vaudrait mieux je pense comprendre ce qui se passe avant.
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.2%
 
Messages: 41494
Images: 14577
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: nBoot 3.00.99: Boot straight into linux

Message non lude Ti64CLi++ » 30 Mai 2016, 16:40

Mais le code de nBoot n'est pas public ?
Image
Avatar de l’utilisateur
Ti64CLi++Modo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 32.3%
 
Messages: 3441
Images: 75
Inscription: 04 Juil 2014, 14:40
Localisation: Clermont-Ferrand 63
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: ENS Rennes
GitHub: Ti64CLi

Re: nBoot 3.00.99: Boot straight into linux

Message non lude critor » 30 Mai 2016, 17:11

Le code source, non.
Mais le code machine est bien en premier post de ce topic.
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.2%
 
Messages: 41494
Images: 14577
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: nBoot 3.00.99: Boot straight into linux

Message non lude critor » 30 Mai 2016, 23:40

Rien à voir, mais j'ai testé sur émulateur ce que donnait nBoot sur une TI-Nspire CX CR4 (Boot1 4.0.1 donc - révisions HW-W+) :
Code: Tout sélectionner
Boot Loader Stage 1 (4.0.1.43)
Build: 2015/7/20, 14:47:25
Copyright (c) 2006-2015 Texas Instruments Incorporated
Using production keys

Last boot progress: 2060

Available system memory: 28072
Checking for NAND: NAND Flash ID: Generic 1 GBit (0xA1)
SDRAM size: 64 MB
Wakeup Event: ON.
SDRAM memory test:   Pass
Clearing SDRAM...Done.
Clocks:  CPU = 156MHz   AHB = 78MHz   APB = 39MHz   
Clearing SDRAM...Done.
Boot option: Normal

Loading from BOOT2 partition...

Ben... rien.
On perd de même le fond d'écran de démarrage, mais le code de nBoot n'est pas exécuté.
En effet, on ne retrouve pas l'injection du message "Unlocked!" dans ce log. :'(

En fait, les TI-Nspire CX CR4 semblent ne plus utiliser la zone SPI exploité par nBoot.
nsNandMgr et BtMg me reportent en effet une valeur anormale de "0/0".
(contre "1/1" sur le prototype TI-Nspire Color, "2/2" sur les CX révisions A-V, et "16/2" sur ces mêmes CX lorsque nBoot est installé)
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.2%
 
Messages: 41494
Images: 14577
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: nBoot 3.00.99: Boot straight into linux

Message non lude Ti64CLi++ » 31 Mai 2016, 08:45

En tout cas, j'attends avec impatience la news. J'ai été informé hier que mon écran que j'ai commandé était acheté, mais par contre, plus de carte mère en stock :'(
Image
Avatar de l’utilisateur
Ti64CLi++Modo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 32.3%
 
Messages: 3441
Images: 75
Inscription: 04 Juil 2014, 14:40
Localisation: Clermont-Ferrand 63
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: ENS Rennes
GitHub: Ti64CLi

Re: nBoot 3.00.99: Boot straight into linux

Message non lude parrotgeek1 » 01 Juin 2016, 02:15

I thought this bricked my calculator but this is what went wrong

I had no Diags. I had to use Esc+Menu+[-] to switch it back to boot2 order, to boot
Avatar de l’utilisateur
parrotgeek1Programmeur
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 88%
 
Messages: 745
Inscription: 29 Mar 2016, 01:22
Localisation: This account is no longer used.
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: nBoot 3.00.99: Boot straight into linux

Message non lude critor » 01 Juin 2016, 10:21

Hi.

I'm glad it's not bricked. :)

The white screen is normal - the nBoot exploit does overwrite the boot graphics.

If the white screen is completely empty (meaning the progress bar doesn't even show up) it's a very bad sign, meaning that the Boot1 is failing very early (when reading the Manuf).

If you get to the progress bar, it usually means it's not bricked, which was your case. :)
Feel free to reflash a Diags :
archives_list.php?order=datemaj&cat=ROM+Nspire&multi_chaine_search=Diags#files
In your case, I would try the 3.9.0.1 version.
I fear the newer 4.0.1.45 only supports the new HW-W+ 240x320 screen (didn't take the time to test).
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.2%
 
Messages: 41494
Images: 14577
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: nBoot 3.00.99: Boot straight into linux

Message non lude Ti64CLi++ » 01 Juin 2016, 13:45

Serait-t-il possible de modifier nBoot pour qu'il lance un OS modifié au lieu de Linux?
Image
Avatar de l’utilisateur
Ti64CLi++Modo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 32.3%
 
Messages: 3441
Images: 75
Inscription: 04 Juil 2014, 14:40
Localisation: Clermont-Ferrand 63
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: ENS Rennes
GitHub: Ti64CLi

Re: nBoot 3.00.99: Boot straight into linux

Message non lude critor » 01 Juin 2016, 13:49

Non.

nBoot ne peut lancer que des images en partition Boot2/Diags/ExtnD, c'est-à-dire :
- le loader Linux fourni avec nBoot
- le gestionnaire de démarrage ControlX
- des Boot2/Boot1.5/Diags

nBoot s'exécute au niveau du Boot1 et n'a donc aucune visibilité sur la partition du système de fichiers contenant l'OS.
En effet, le format FlashFX utilisé par cette partition n'est pas géré par le Boot1.
C'est-à-dire que lorsque je programme une image pour le Boot1 (comme ControlX), certaines fonctionnalités du C sont totalement inutilisables. Comme les fopen/fread/fwrite/fclose par exemple.


Ce qui serait possible, c'est que nBoot lance un Boot2 modifié, qui lui même pourrait lancer un OS modifié.
Je précise que ce n'est absolument pas dans mes compétences.
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.2%
 
Messages: 41494
Images: 14577
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: nBoot 3.00.99: Boot straight into linux

Message non lude Ti64CLi++ » 01 Juin 2016, 13:50

Et pourquoi les Nspire HW>I n'acceptent pas le boot2 3.0.1?
Image
Avatar de l’utilisateur
Ti64CLi++Modo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 32.3%
 
Messages: 3441
Images: 75
Inscription: 04 Juil 2014, 14:40
Localisation: Clermont-Ferrand 63
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: ENS Rennes
GitHub: Ti64CLi

PrécédenteSuivante

Retourner vers Native: Ndless, Linux, ...

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 6 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.
876 utilisateurs:
>821 invités
>50 membres
>5 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)