π
<-

[Tuto] [EN/FR] Install/Installer nBoot + ControlX (+Linux)

Regroupement de tous les tutoriaux Nspire.

Re: [Tuto] [EN/FR] Install/Installer nBoot + ControlX (+Linu

Unread postby geekpersonman » 20 Apr 2017, 03:02

critor wrote:
geekpersonman wrote:And also, according to this page: https://hackspire.org/index.php/OS_upgrade_files
couldn't you just check (8080 - 8 : The first 4 bytes are the OS base address: address to which the OS will be copied by boot 2(0x10000000). ) for OS information?

In which tool ?


In controlX to detect the OS and load patches automatically
User avatar
geekpersonman
Niveau 6: SM (Super Membre)
Niveau 6: SM (Super Membre)
Level up: 7.1%
 
Posts: 47
Joined: 21 Aug 2015, 01:45
Gender: Male
Calculator(s):
MyCalcs profile

Re: [Tuto] [EN/FR] Install/Installer nBoot + ControlX (+Linu

Unread postby parrotgeek1 » 20 Apr 2017, 07:51

.
Last edited by parrotgeek1 on 07 Jan 2021, 18:07, edited 1 time in total.
User avatar
parrotgeek1Programmeur
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 88.2%
 
Posts: 748
Joined: 29 Mar 2016, 01:22
Location: This account is no longer used.
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: [Tuto] [EN/FR] Install/Installer nBoot + ControlX (+Linu

Unread postby geekpersonman » 20 Apr 2017, 16:09

Sorry, I should clarify.
There appears to be an issue with the separate cas patcher that that either incorrectly patches or does not patch the regression functions and causes it to reboot.

A separate issue I have found seems to be related to Nswitch OS where it upgrades the os in such a way that the strings in the catalog do not get changed between 4.4 CX and 4.4 CAS but does not crash the OS, which does not happen when installing from the computer.

Third, I was suggesting a feature where ControlX is manually programed with the flash address where the upgrade files tell the calculator to write the OS and check there to find details about the operating system and then based on that select the 7/8/9 options for you, a feature that does not appear to be included in the public 4.4.5 beta.

Lastly, although I did not mention this before, the 4.4 external cas patch appears to crash or cause the CX OS to become unresponsive (for me at least) which makes sense, but it would be nice if it didn't load the patches when it detected a CX OS so you do not have to constantly move it in and out of the startup folder in ndless when you want to change the OS.
User avatar
geekpersonman
Niveau 6: SM (Super Membre)
Niveau 6: SM (Super Membre)
Level up: 7.1%
 
Posts: 47
Joined: 21 Aug 2015, 01:45
Gender: Male
Calculator(s):
MyCalcs profile

Re: [Tuto] [EN/FR] Install/Installer nBoot + ControlX (+Linu

Unread postby critor » 20 Apr 2017, 16:22

geekpersonman wrote:Sorry, I should clarify.
There appears to be an issue with the separate cas patcher that that either incorrectly patches or does not patch the regression functions and causes it to reboot.

Ok, I undestand the 4.4 external CAS patcher is not perfect. Thanks for the report. :)

geekpersonman wrote:A separate issue I have found seems to be related to Nswitch OS where it upgrades the os in such a way that the strings in the catalog do not get changed between 4.4 CX and 4.4 CAS but does not crash the OS, which does not happen when installing from the computer.

Yes, I've understood why. Thanks for the bug report - I'll try to fix it as soon as possible. :)

geekpersonman wrote:Third, I was suggesting a feature where ControlX is manually programed with the flash address where the upgrade files tell the calculator to write the OS and check there to find details about the operating system and then based on that select the 7/8/9 options for you, a feature that does not appear to be included in the public 4.4.5 beta.

Quite hard / impossible.
ControlX is running in the Boot1 context, and thus has no filesystem access.
So it has no way to check the /phoenix/install/TI-Nspire.tnc file header - it only has raw access to the filesystem partition.
The filesystem drivers will be loaded later, in the Boot2 context.

geekpersonman wrote:Lastly, although I did not mention this before, the 4.4 external cas patch appears to crash or cause the CX OS to become unresponsive (for me at least) which makes sense, but it would be nice if it didn't load the patches when it detected a CX OS so you do not have to constantly move it in and out of the startup folder in ndless when you want to change the OS.

Yes, it would be nice if some OS version check could be added to the external CAS patcher.
If your calculator is using hardware revision A-R, you may install and use the 3.6 CAS OS.
It doesn't need an external CAS patcher and thus is directly going to be fully working. :)
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.9%
 
Posts: 41980
Images: 15866
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: [Tuto] [EN/FR] Install/Installer nBoot + ControlX (+Linu

Unread postby geekpersonman » 20 Apr 2017, 16:38

critor wrote:
geekpersonman wrote:Third, I was suggesting a feature where ControlX is manually programed with the flash address where the upgrade files tell the calculator to write the OS and check there to find details about the operating system and then based on that select the 7/8/9 options for you, a feature that does not appear to be included in the public 4.4.5 beta.

Quite hard / impossible.
ControlX is running in the Boot1 context, and thus has no filesystem access.
So it has no way to check the /phoenix/install/TI-Nspire.tnc file header - it only has raw access to the filesystem partition.
The filesystem drivers will be loaded later, in the Boot2 context.

So could a piece of software be launched by controlX in to the boot2 context for the purpose of getting this info, put it in a specific memory address, then hand back control to controlX to load the patches?
critor wrote:
geekpersonman wrote:Lastly, although I did not mention this before, the 4.4 external cas patch appears to crash or cause the CX OS to become unresponsive (for me at least) which makes sense, but it would be nice if it didn't load the patches when it detected a CX OS so you do not have to constantly move it in and out of the startup folder in ndless when you want to change the OS.

Yes, it would be nice if some OS version check could be added to the external CAS patcher.
If your calculator is using hardware revision A-R, you may install and use the 3.6 CAS OS.
It doesn't need an external CAS patcher and thus is directly going to be fully working. :)

I have a HW-T, but tried anyway loading 3.6 by buying a usb battery bank, but i was too paranoid about it somehow breaking and switched to 4.4 when I found out a patcher had come out for it. :/
User avatar
geekpersonman
Niveau 6: SM (Super Membre)
Niveau 6: SM (Super Membre)
Level up: 7.1%
 
Posts: 47
Joined: 21 Aug 2015, 01:45
Gender: Male
Calculator(s):
MyCalcs profile

Re: [Tuto] [EN/FR] Install/Installer nBoot + ControlX (+Linu

Unread postby parrotgeek1 » 20 Apr 2017, 21:24

.
Last edited by parrotgeek1 on 07 Jan 2021, 18:07, edited 2 times in total.
User avatar
parrotgeek1Programmeur
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 88.2%
 
Posts: 748
Joined: 29 Mar 2016, 01:22
Location: This account is no longer used.
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: [Tuto] [EN/FR] Install/Installer nBoot + ControlX (+Linu

Unread postby critor » 20 Apr 2017, 23:47

geekpersonman wrote:
critor wrote:
geekpersonman wrote:Third, I was suggesting a feature where ControlX is manually programed with the flash address where the upgrade files tell the calculator to write the OS and check there to find details about the operating system and then based on that select the 7/8/9 options for you, a feature that does not appear to be included in the public 4.4.5 beta.

Quite hard / impossible.
ControlX is running in the Boot1 context, and thus has no filesystem access.
So it has no way to check the /phoenix/install/TI-Nspire.tnc file header - it only has raw access to the filesystem partition.
The filesystem drivers will be loaded later, in the Boot2 context.

So could a piece of software be launched by controlX in to the boot2 context for the purpose of getting this info, put it in a specific memory address, then hand back control to controlX to load the patches?

The 7/8/9 choice is not only used to patch the OS, but also to patch the Boot2, since the Boot2 is going to reject/erase any OS you're not supposed to be using.
So removing the 7/8/9 choice is far from being trivial.

I'd even say it can't be removed, as I can't see how it could work when your calculator has no OS.

Also, the filesystem OS image is compressed and encrypted.
So checking the value at offset 0x20 is going to require probably too huge code...
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.9%
 
Posts: 41980
Images: 15866
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: [Tuto] [EN/FR] Install/Installer nBoot + ControlX (+Linu

Unread postby parrotgeek1 » 22 Apr 2017, 00:04

critor wrote:
geekpersonman wrote:
critor wrote:
geekpersonman wrote:Third, I was suggesting a feature where ControlX is manually programed with the flash address where the upgrade files tell the calculator to write the OS and check there to find details about the operating system and then based on that select the 7/8/9 options for you, a feature that does not appear to be included in the public 4.4.5 beta.

Quite hard / impossible.
ControlX is running in the Boot1 context, and thus has no filesystem access.
So it has no way to check the /phoenix/install/TI-Nspire.tnc file header - it only has raw access to the filesystem partition.
The filesystem drivers will be loaded later, in the Boot2 context.

So could a piece of software be launched by controlX in to the boot2 context for the purpose of getting this info, put it in a specific memory address, then hand back control to controlX to load the patches?

The 7/8/9 choice is not only used to patch the OS, but also to patch the Boot2, since the Boot2 is going to reject/erase any OS you're not supposed to be using.
So removing the 7/8/9 choice is far from being trivial.

I'd even say it can't be removed, as I can't see how it could work when your calculator has no OS.

Also, the filesystem OS image is compressed and encrypted.
So checking the value at offset 0x20 is going to require probably too huge code...


I figured out why it couldn't find some patches!

objdump disassembles "r10" register as its alternate name "sl"
so my code wasn't seeing things like ldr sl, #900a0000
User avatar
parrotgeek1Programmeur
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 88.2%
 
Posts: 748
Joined: 29 Mar 2016, 01:22
Location: This account is no longer used.
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: [Tuto] [EN/FR] Install/Installer nBoot + ControlX (+Linu

Unread postby geekpersonman » 22 Apr 2017, 00:34

Great news, when can we expect update fixing it?
User avatar
geekpersonman
Niveau 6: SM (Super Membre)
Niveau 6: SM (Super Membre)
Level up: 7.1%
 
Posts: 47
Joined: 21 Aug 2015, 01:45
Gender: Male
Calculator(s):
MyCalcs profile

Re: [Tuto] [EN/FR] Install/Installer nBoot + ControlX (+Linu

Unread postby parrotgeek1 » 22 Apr 2017, 01:06

geekpersonman wrote:Great news, when can we expect update fixing it?

now
on the same github link

BUT i havent added the detection of the right OS yet
I'll do it soon

can anyone write me some code which turns the entire screen red and then uses arm timer to wait 2 seconds

critor?
User avatar
parrotgeek1Programmeur
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 88.2%
 
Posts: 748
Joined: 29 Mar 2016, 01:22
Location: This account is no longer used.
Gender: Not specified
Calculator(s):
MyCalcs profile

PreviousNext

Return to Tutoriaux

Who is online

Users browsing this forum: ClaudeBot [spider] and 5 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.
730 utilisateurs:
>705 invités
>18 membres
>7 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)