CodeWalrus

Development => Calculators => Calc Projects, Programming & Tutorials => Topic started by: GalacticPirate on May 31, 2016, 08:28:27 AM

Title: Why is critor the smartest calc programmer ever :P
Post by: GalacticPirate on May 31, 2016, 08:28:27 AM
Quote from: nBootDudeHi, I've got a present for you.
With this tool you can boot straight into linux, if you figure out how.
boot1 3.00.99 only, use the bundled nsNandMgr until a 'fixed' version is released.

After several hours of work from critor, Eurêka :
Quote from: critorGot it ! :D
Linux straight from the Boot1 ! :bj:



Donc apparemment, le Manuf avec nBoot dedans permet de lancer du code non signé à mettre dans la partition Diags.
Et donc d'alterner entre l'OS Nspire et Linux avec la combinaison de démarrage :nses: :nsme: :nsmo: .

Sympa, plus besoin de forcément démarrer l'OS Nspire et activer Ndless pour lancer Linux, ce qui dans le contexte d'une prochaine mise à jour de l'OS est une bonne chose. :)

(Yeah, G translate for those who aren't Canadian in here :P)

So, he releases a little news, saying all the new possibilities which would be allowed by this :P And he works... on the most incredible Nspire tool ever  O.O

[spoiler]
Quote from: critorVoici donc ControlX, 1er gestionnaire de démarrage tiers compatible nBoot, te permettant le contrôle total de ta TI-Nspire CX HW<W ! :bj:


Le développement relativement rapide s'explique par le fait qu'il partage une grande partie de son code avec nsNandMgr/BtMg.

Fonctionnalités automatiques :
  • lance automatiquement un Boot2 compatible nBoot si trouvé dans l'une des partitions Boot2/Diags/ExtnD (4.0.3 de préférence, ou sinon 4.0.2)
  • patche le Boot2 à chaud pour activer automatiquement Ndless 3.1/3.6/3.9/4.0.3/4.2 si présent (code développé par Excale - seul le Boot2 4.0.3 est géré à date)
Bref, enfin le retour de Ndless reboot-proof ! :bj:

Fonctionnalités accessibles via menu (combinaison de démarrage :nsct: :nsx: ) :
[list=1]
  • amorçage normal du Boot2 via le Boot1
  • lancement d'une image de la partition Boot2
  • lancement d'une image de la partition Diags
  • lancement d'une image de la partition ExtnD
  • suppression de la limite empêchant l'installation d'un OS antérieur

  • activation de ControlX (le Boot1 amorce sur la partition Diags)
  • désactivation de ControlX (le Boot1 amorce sur la partition Boot2)
  • désinstallation de nBoot


ControlX permet donc de désinstaller nBoot, si jamais une future mise à jour de TI arrivait à bloquer les machines ainsi modifiées.
Les images lançables directement par ControlX (options 2/3/4) sont :
  • les images au format des Boot1.5/Boot2/Diags
  • les images au format Linux (voir l'exemple dans nBoot)
Ces images n'ont aucun besoin d'être signées, et on peut donc exécuter tout ce que l'on veut.
L'idéal si quelqu'un veut développer une image lançable par ControlX, est de partir du format d'une image de Diags, d'y coller son code et d'en corriger les champs de titre/version/taille dans l'entête.
Si l'image lancée est un Boot2 4.0.3, elle sera patchée à chaud avant exécution pour activer automatiquement Ndless.

ControlX gère jusqu'à 9 images par partition, là où nsNandMgr/BtMg en gèrent 11.

Voici ma partition Boot2 actuelle, telle que vue par ControlX :

J'ai juste, avec BtMg, échangé les Boot2 et Boot1.5 4.0.3, car cela permet un démarrage plus rapide de la machine.

Voici ma partition Diags :

On y retrouve donc ControlX et le logiciel de diagnostics.
Contrairement à la release initiale de nBoot, le logiciel de diagnostics reste donc utilisable et permettra dans certaines situations de débloquer la machine sans besoin d'un tournevis pour retirer la batterie ! :bj:

Voici ma partition ExtnD :

On y observe donc Linux, ainsi qu'une copie du Boot2 4.0.3.
Il est très important de garder une copie du Boot2 4.0.3 en partition Diags, car de prochaines mises à jour de l'OS écraseront la partition Boot2 avec une nouvelle version du Boot2, non gérée par le patch d'installation de Ndless.

En mode automatique, ControlX préfèrera toujours amorcer sur une image Boot2 gérée, si trouvée.
[/spoiler]
[spoiler]
Quote
  • new 3rd party Boot1-level menu ( combo)
  • can run any image using the official Boot1.5/Boot2/Diags format found in the Boot2/Diags/ExtnD partitions
    (the images just have to be concatenated in the partitions but don't need to be signed - so you may run official Boot1.5/Boot2/Diags images, modified ones, or even your own boot tools)
  • can run any Linux image found in the Boot2/Diags/ExtnD partitions
    (see Linux image format in the initial nBoot zip)
  • can patch the minOS value in the BootD partition, enabling you to install older OSes
  • does automatically look for the best compatible Boot2 to boot (4.0.3) in Boot2/Diags/ExtnD partitions and automatically install Ndless (reboot-proof)
[/spoiler]
The dev is still ongoing, so stay tuned, but really critor almost killed me this time :crazy:
Title: Re: Why is critor the smartest calc programmer ever :P
Post by: aetios on May 31, 2016, 11:07:58 AM
Well, either that's some kind of prank from critor, or maybe someone from TI decided to be cool :P
Title: Re: Why is critor the smartest calc programmer ever :P
Post by: Dream of Omnimaga on May 31, 2016, 11:31:19 AM
Wow that is pretty great! That was fast too from Critor. Also I did see nBoot being posted but I was a bit afraid of posting it here because it was not 100% finished and there was a big warning to not use it unless we knew what we were doing, but I assume that ControlX solves all of this? Either way, nice job :)
Title: Re: Why is critor the smartest calc programmer ever :P
Post by: critor on June 23, 2016, 08:18:24 PM
Quote from: DJ Omnimaga on May 31, 2016, 11:31:19 AM
Wow that is pretty great! That was fast too from Critor.

It's been fast because ControlX can be seen as an nsNandMgr running in the Boot1 context (thus as soon as the calculator is powered on).
Most read-only features are present, and some of the write features (fixing minOS for downgrade for example).

Most code for such features was already ready by the time nBoot was released and comes from nsNandMgr.

So even if TI blocks both Ndless and downgrade in a next OS version, if you've installed ControlX on your HW<W Nspire CX, you'll still be able to go back and Ndless4ever ! :D


Please note that a part of ControlX source code is by Excale : the reboot-proof Ndless automatic installer.
And nBoot source code isn't by us.
Title: Re: Why is critor the smartest calc programmer ever :P
Post by: Dream of Omnimaga on June 23, 2016, 11:54:15 PM
That's great. :D. I hope TI won't release a new OS and hardware revision soon, though. :P

Thanks for the great work on this Critor and Excale :)
Title: Re: Why is critor the smartest calc programmer ever :P
Post by: critor on June 24, 2016, 12:05:17 AM
Unfortunately, TI-Nspire CX revision W are being assembled since november 2015.
The Boot1 3.0.0.99 exploit used by nBoot seems fixed in their new Boot1 4.0.1.
Title: Re: Why is critor the smartest calc programmer ever :P
Post by: Dream of Omnimaga on June 24, 2016, 03:13:16 AM
That sucks. I thought most recent releases could also be hacked with this exploit D: