π
<-

ControlX 4.3.4 : 1er lancement OS TI-Nspire CX officiel !

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

ControlX 4.3.4 : 1er lancement OS TI-Nspire CX officiel !

Unread postby critor » 13 Dec 2016, 18:25

Dans un article précédent, notre gestionnaire de démarrage ControlX devenait capable de lancer directement des images d'OS TI-Nspire CX.
Toutefois, nous n'avions pas réussi à lancer d'OS TI-Nspire CX officiel, à cause de deux limitations techniques :
  • dans le contexte de nBoot, il faut obligatoirement une version d'OS 4.0.1 ou plus récente, les autres ne démarrant pas correctement - ce qui veut dire au moins 17Mio une fois l'OS décrypté et décompressé
  • nos programmeurs de mémoire NAND BtMg+nsNandMgr ne permettent pas à date de flasher des images faisant plus de 14Mio
Nous nous étions donc contentés du simili-OS Dummy OS CX pour valider les tests.

Mais les images d'OS utilisent le format officiel TI-Certificate, et ce format a l'avantage de permettre 2 types de compressions, dont une compression légère utilisée par TI pour les images de Boot2 (et Boot1.5) et qui est déjà gérée dans ControlX ! :bj:

Voici donc ce soir :
  • une mise à jour de Dummy OS CX avec un fichier Makefile réutilisable qui permettra de générer deux images d'OS, une brute et une compressée.
    C'est l'outil de compression/décompression d'images TI-Certificate nsBar, mis à jour pour l'occasion avec la gestion de ce cas, qui est utilisé.
  • ControlX 4.3.4 qui accepte désormais les images d'OS compressées.

Cette légère compression nous permet de réduire les images d'OS d'environ 25% :
  • l'OS 4.4.0.431 CX CAS de 19,5Mio à 14,6Mio
  • l'OS 4.3.0.702 CX CAS de 17,3Mio à 13,2Mio
  • l'OS 4.3.0.547 CX CAS de 17,3Mio à 13,2Mio
  • l'OS 4.2.0.532 CX CAS de 17,2Mio à 13,1Mio
  • l'OS 4.0.3.29 CX CAS de 16,9Mio à 12,7Mio
  • l'OS 4.0.2.27 CX CAS de 16,9Mio à 12,7Mio
L'OS 4.4 demeure donc trop gros et ne passe pas. Une piste pourrait être de rajouter dans ControlX la gestion du format de compression PKZIP plus puissant que TI utilise pour ses images d'installation d'OS.

Mais à l'exception de l'OS 4.4, toutes ces images sont maintenant programmables et lançables sur ta TI-Nspire CX CAS ! :bj:


Sur la vidéo ci-dessus, le démarrage chargement de l'OS 4.2 en passant de façon normale par le Boot2 prend 43 secondes.
Le lancement direct via ControlX de l'OS 4.0.3 qui fait quasiment la même taille ne prend lui que 34 secondes - belle progresssion ! :bj:

Un petit reproche est que l'installation automatique de Ndless n'est pas encore gérée dans ce contexte de démarrage.

Aussi exceptionnelle que soit cette fonctionnalité techniquement, elle ne semble pas pouvoir servir à se configurer un multi-Boot d'OS TI-Nspire.
En effet, sur la fin de la vidéo, l'OS 4.0.3 est lancé sans installation, c'est-à-dire avec les fichiers de l'OS 4.2, et on peut remarquer que la plupart des textes système sont alors mauvais.

De plus autre problème plus gros, après 30 secondes la calculatrice redémarre toute seule et réclame un nouvel OS. :#roll#:
La consultation de la console série dans l'émulateur permet de comprendre qu'il s'agit de l'échec d'une vérification de sécurité de TI qui déclenche le code d'auto-destruction de l'OS :
Code: Select all
Archive has been modified.
BOOT2 updater: error -18
TOTAL BYTES: 73876
deleteTree(): path /tmp
TI_OS_deleteTree: deleteAllFiles Done!
autodim_power_callback: Stop dim Timer. flags(0x4)
------------------ Module is Gone!!
TouchPad Firmware Revision : 01060000

Created Execution Context
<TI_PCL_Init2> SetSystem Settings   -->
<TI_PCL_Init2> TI_RM_LoadAllStrings -->
<TI_PCL_Init2> TI_UI_IME_Init -->
<TI_PCL_Init2> RegisterC1Widgets -->
<TI_PCL_Init2> TI_GOIO_InitializeGoIO -->
<TI_PCL_Init2> TI_AM_Initialize -->
Product   : 16 (defined in os/inc/deviceinfo.h)
Platform  : 2 (defined in documentmanager/inc/hal.h)
Version   : 3.6.0.337 CE
Build Date: 2013-5-10
TI_PM_DIM_settime: Dim set to 90.
RET - Echo UDP: TI_Echo_UDP_Init called +++
RET - ECHO UDP: EchoUDPListenerThread. Inside Thread +++
TI_PM_DIM_disable: Stop dim Timer.
autodim_power_callback: Stop dim Timer. flags(0x4)
Wireless Status:WCM_Info_GetStatus():SUCCESS
Network Status: SLED is Not Attached
deleteTree(): path /tmp
TI_OS_deleteTree: deleteAllFiles Done!

Mais cela devrait pouvoir se patcher en s'inspirant du travail réalisé dans le contexte de Nlaunchy, le seul bémol étant qu'il n'est à date pas à jour au-delà de l'OS 4.2.



Téléchargements :

Ressources : Tutoriel d'installation + mise à jour ControlX
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48%
 
Posts: 41981
Images: 15887
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: ControlX 4.3.4 : 1er lancement OS TI-Nspire CX officiel

Unread postby Hamza.S » 13 Dec 2016, 18:46

belle avancée :bj:
ça ne risque pas de créer une confusion? je veux dire une personne qui a une CX non-CAS, pourrait être tenté par la manipulation et essayer d'installer un OS CAS sur ça machine.
aucune ligne ne précise cette situation. s'il y a des risque ou pas, même pas un avertissement.

Show/Hide spoilerAfficher/Masquer le spoiler
c'est la première chose qui m'ait traversé l'esprit :troll:
Image
User avatar
Hamza.SAdmin
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Level up: 29%
 
Posts: 4501
Images: 18
Joined: 07 Nov 2014, 00:43
Gender: Male
Calculator(s):
MyCalcs profile

Re: ControlX 4.3.4 : 1er lancement OS TI-Nspire CX officiel

Unread postby critor » 13 Dec 2016, 19:00

Sans patch, ça ne permettra rien de plus que Nlaunch (et même moins, vu qu'on n'a pas droit aux OS 3.x).

Les OS CAS ne marcheront pas sur non-CAS et inversement.
Car depuis la version 3.6, l'OS fait une vérification supplémentaire au démarrage.

Bien sûr on pourrait la patcher. Mais Nlaunchy n'a jamais inclus de tels patchs, et personnellement je suis dans la totale incapacité d'en concevoir.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48%
 
Posts: 41981
Images: 15887
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: ControlX 4.3.4 : 1er lancement OS TI-Nspire CX officiel

Unread postby Lionel Debroux » 13 Dec 2016, 20:09

personnellement je suis dans la totale incapacité d'en concevoir.

Non. Ne te sous-estime pas, d'autant que des infos ont déjà été données publiquement à ce sujet ;)

Tu sais mieux que la plupart des gens comment on détecte un modèle CAS et un modèle non-CAS (port de l'ASIC, contenu d'une certaine zone de la NAND), et les problèmes que cela pose avec certains protos qui ont des particularités. Tout code de l'OS qui utilise les méthodes de détection du type de modèle, ce qui ne se produit qu'à très peu d'endroits et peut être détecté par des méthodes multiples, directes ou indirectes (on peut patcher l'émulateur pour se faciliter encore plus la vie, mais ce n'est pas nécessaire), est un bon candidat.
Tu sais aussi que la décision "est-ce que cet OS est censé tourner sur ce modèle ?" va être prise, d'une façon ou d'une autre, par un test et un branchement. Ce genre de paires se désactive d'au moins quatre façons: inverser la condition du test, (quand le branchement est dans un certain sens) utiliser un NOP ou un des nombreux quasi-NOP, inverser la condition du branchement, rendre le branchement inconditionnel.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
User avatar
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 11.3%
 
Posts: 6865
Joined: 23 Dec 2009, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Class: -
GitHub: debrouxl


Return to News TI-Nspire

Who is online

Users browsing this forum: ClaudeBot [spider] and 12 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
677 utilisateurs:
>664 invités
>3 membres
>10 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)