π
<-
Chat plein-écran
[^]

Patching 4.4.0.532 CAS to run on Non-CAS

C, C++, ASM...

Re: Patching 4.4.0.532 CAS to run on Non-CAS

Unread postby parrotgeek1 » 03 Feb 2017, 05:02

My Projects:
nLoaderCAS Patcher for ControlXnLaunchy CXM fork (3.9 CAS on B&W) - News ArticleTI-82 Advanced App Installer
Prototypes:
Upgrade EVT Nspire CAS+Fix keyboard on prototype TI-Nspire CAS Touchpad
- Highlights: Nspire CX Non-CAS OS 3.3, CX & CX CAS OS 4.4 & 4.5 special reformatting installers (both found by me on TI's site)
Discoveries:
Boot1.5 vulnerability (used in nLoader) • Nspire dev boardsPink CX
Je peux comprendre le français mais je ne peux pas le parler bien.
User avatar
parrotgeek1Programmeur
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 73.1%
 
Posts: 741
Joined: 29 Mar 2016, 01:22
Location: USA
Gender: Male
Calculator(s):
Twitter: parrotgeek1
GitHub: parrotgeek1

Re: Patching 4.4.0.532 CAS to run on Non-CAS

Unread postby parrotgeek1 » 03 Feb 2017, 05:18

Verifying that this strange account is actually mine

https://www.omnimaga.org/ti-calculator- ... b/new/#new
My Projects:
nLoaderCAS Patcher for ControlXnLaunchy CXM fork (3.9 CAS on B&W) - News ArticleTI-82 Advanced App Installer
Prototypes:
Upgrade EVT Nspire CAS+Fix keyboard on prototype TI-Nspire CAS Touchpad
- Highlights: Nspire CX Non-CAS OS 3.3, CX & CX CAS OS 4.4 & 4.5 special reformatting installers (both found by me on TI's site)
Discoveries:
Boot1.5 vulnerability (used in nLoader) • Nspire dev boardsPink CX
Je peux comprendre le français mais je ne peux pas le parler bien.
User avatar
parrotgeek1Programmeur
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 73.1%
 
Posts: 741
Joined: 29 Mar 2016, 01:22
Location: USA
Gender: Male
Calculator(s):
Twitter: parrotgeek1
GitHub: parrotgeek1

Re: Patching 4.4.0.532 CAS to run on Non-CAS

Unread postby Lionel Debroux » 03 Feb 2017, 07:54

Chances are that you'll get censored quickly on that mostly dead board, killed by its staff's behaviour ^^
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: 6.5%
 
Posts: 6492
Joined: 23 Dec 2009, 00:00
Location: France
Gender: Male
Calculator(s):
Class: -
GitHub: debrouxl

Re: Patching 4.4.0.532 CAS to run on Non-CAS

Unread postby parrotgeek1 » 03 Feb 2017, 08:00

Lionel Debroux wrote:Chances are that you'll get censored quickly on that mostly dead board, killed by its staff's behaviour ^^

but there isn't really an active english TI website anymore is there?

Anyway I got 3.6 cx cas to work, also trying 3.6 black & white cas

PS: why are you even awake?!
My Projects:
nLoaderCAS Patcher for ControlXnLaunchy CXM fork (3.9 CAS on B&W) - News ArticleTI-82 Advanced App Installer
Prototypes:
Upgrade EVT Nspire CAS+Fix keyboard on prototype TI-Nspire CAS Touchpad
- Highlights: Nspire CX Non-CAS OS 3.3, CX & CX CAS OS 4.4 & 4.5 special reformatting installers (both found by me on TI's site)
Discoveries:
Boot1.5 vulnerability (used in nLoader) • Nspire dev boardsPink CX
Je peux comprendre le français mais je ne peux pas le parler bien.
User avatar
parrotgeek1Programmeur
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 73.1%
 
Posts: 741
Joined: 29 Mar 2016, 01:22
Location: USA
Gender: Male
Calculator(s):
Twitter: parrotgeek1
GitHub: parrotgeek1

Re: Patching 4.4.0.532 CAS to run on Non-CAS

Unread postby Lionel Debroux » 03 Feb 2017, 08:29

Wrt. blanking the calculator's ID: have you tried searching for references to the strings which indicate CAS/non-CAS discrepancies ? They're in code paths which can only be preceded by tests and most of all, branches (taken or not taken).

but there isn't really an active english TI website anymore is there?

As a whole, community Nspire programming, for both Nspire Lua and Ndless, is much less active than it used to be.

As for community websites... well, welcome to the community's dirty laundry :)
CodeWalrus was created by DJ, the founder of Omnimaga, after it became painfully clear, through multiple events, that especially two members of the Omnimaga staff, were behaving in actively harmful ways, turning members away from at least Omnimaga (including the TI-Planet staff, two of whom posted ~70-90% of Omnimaga's newsing activity for several years, in a mutual benefit solution), if not the whole community. These two persons also happen to be good friends of the staff of the other English-speaking main community site, where self-aggrandizing posts by staff and Omnimaga-diminishing posts by non-staff happen not to be unheard of.
Unsurprisingly, CW picked up most of the activity of Omnimaga in short order - like Omnimaga itself, under the ruling of DJ and friends, picked up the Nspire activity from two other boards in a matter of months, thanks to a much better mood.

I'm not a perfect human being, and as a matter of fact, I was involved in some of the aforementioned events. However, I'm stating
publicly verifiable facts
about the reasons why CW was created, staff friendships, the tone of some posts at the other community site I still haven't mentioned in this post, and the CW and Omnimaga activity curves - so if you want to check for yourself, you'll find that I'm not a liar.

PS: why are you even awake?!

If that question was directed at me: it's 8 a.m. here :)
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: 6.5%
 
Posts: 6492
Joined: 23 Dec 2009, 00:00
Location: France
Gender: Male
Calculator(s):
Class: -
GitHub: debrouxl

Re: Patching 4.4.0.532 CAS to run on Non-CAS

Unread postby parrotgeek1 » 03 Feb 2017, 08:53

Lionel Debroux wrote:Wrt. blanking the calculator's ID: have you tried searching for references to the strings which indicate CAS/non-CAS discrepancies ? They're in code paths which can only be preceded by tests and most of all, branches (taken or not taken).

but there isn't really an active english TI website anymore is there?

As a whole, community Nspire programming, for both Nspire Lua and Ndless, is much less active than it used to be.

As for community websites... well, welcome to the community's dirty laundry :)
CodeWalrus was created by DJ, the founder of Omnimaga, after it became painfully clear, through multiple events, that especially two members of the Omnimaga staff, were behaving in actively harmful ways, turning members away from at least Omnimaga (including the TI-Planet staff, two of whom posted ~70-90% of Omnimaga's newsing activity for several years, in a mutual benefit solution), if not the whole community. These two persons also happen to be good friends of the staff of the other English-speaking main community site, where self-aggrandizing posts by staff and Omnimaga-diminishing posts by non-staff happen not to be unheard of.
Unsurprisingly, CW picked up most of the activity of Omnimaga in short order - like Omnimaga itself, under the ruling of DJ and friends, picked up the Nspire activity from two other boards in a matter of months, thanks to a much better mood.

I'm not a perfect human being, and as a matter of fact, I was involved in some of the aforementioned events. However, I'm stating
publicly verifiable facts
about the reasons why CW was created, staff friendships, the tone of some posts at the other community site I still haven't mentioned in this post, and the CW and Omnimaga activity curves - so if you want to check for yourself, you'll find that I'm not a liar.

PS: why are you even awake?!

If that question was directed at me: it's 8 a.m. here :)


oh. time zones are confusing.

There aren't any strings about model checks afaict in 3.9+.

I'll fix the ID later. I mean, I don't think anything uses it except these
http://www.tinspireapps.com/
(I really wonder how those work - Lua can't read that info afaik)

I got 3.6.0.550 to work, posted it on github. I also removed 3 totally unnecessary patches from the 4.4 patch!
My Projects:
nLoaderCAS Patcher for ControlXnLaunchy CXM fork (3.9 CAS on B&W) - News ArticleTI-82 Advanced App Installer
Prototypes:
Upgrade EVT Nspire CAS+Fix keyboard on prototype TI-Nspire CAS Touchpad
- Highlights: Nspire CX Non-CAS OS 3.3, CX & CX CAS OS 4.4 & 4.5 special reformatting installers (both found by me on TI's site)
Discoveries:
Boot1.5 vulnerability (used in nLoader) • Nspire dev boardsPink CX
Je peux comprendre le français mais je ne peux pas le parler bien.
User avatar
parrotgeek1Programmeur
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 73.1%
 
Posts: 741
Joined: 29 Mar 2016, 01:22
Location: USA
Gender: Male
Calculator(s):
Twitter: parrotgeek1
GitHub: parrotgeek1

Online

Re: Patching 4.4.0.532 CAS to run on Non-CAS

Unread postby critor » 03 Feb 2017, 12:20

Ok, I managed to set up some test ROM with nBoot+ControlX, although it was not easy.

The OS 4.4 has to be set as an ExtnD partition image which can be launched directly by ControlX.
Because Boot2 4.0.3 also includes CAS/non-CAS checks, so we won't be able to boot the OS the normal way.

  1. decrypt OS 4.4 image (19.5MiB...)
  2. insert a TI-Certificate header with correct sizes (see Boot2/Diags images and Hackspire doc)
    Image
  3. add the FF F0 footer
  4. compress the image with nsBar (down to 14.6MiB)
  5. take your real or emulated TI-Nspire CX non-CAS
  6. with nsPartManagic, resize the ExtnD partition to exactly 0x1d80 pages
    (no more because of the RAM, and no less)
  7. OSes 4.2-4.4 don't let enough RAM free space for the current BtMg to be able to flash such a huge image, so downgrade to the much lighter OS 3.1
  8. you'll then be able to flash the compressed 4.4 image with BtMg
  9. now install the 4.4 non-CAS OS to have it extract 4.4 compatible resources files in your system folders
  10. now go to the ControlX menu, and select te OS 4.4 image in the ExtnD partition - you may also set it as the default boot image ;)
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 5.1%
 
Posts: 35279
Images: 9403
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Re: Patching 4.4.0.532 CAS to run on Non-CAS

Unread postby GalacticPirate » 03 Feb 2017, 12:33

Enorme :D Bon,Excale, puisque tu voulais que je fasse ce patch moi-même, ben j'ai demandé de l'aide :troll: Tu peux mettre à jour nLaunchy maintenant ? :troll:
Mon profil TI-Planet
Mon Internetometer
Devenez premium !
ImageImageImage
Modérateur de TI-Planet.org depuis décembre 2015, et membre actif de la communauté depuis Mai 2015, je suis toujours disponible pour aider (ou pas :troll: )Cliquez ci-dessus pour me donner un Internet ! Ça ne sert absolument à rien mais c'est marrant :pCliquez ci-dessus pour faire un don à TI-Planet.org via PayPal et devenir Donateur ou Premium (à partir de 3€) ! Vous aurez accès à des générations illimitées et prioritaires avec Mviewer GX Creator, ainsi qu'au forum secret ! :bj: En plus, vous pourrez être orange sur le chat :troll:

Image
User avatar
GalacticPirateModo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 90.9%
 
Posts: 1155
Images: 2
Joined: 23 May 2015, 10:36
Location: Bourg-La-Reine, 92, France
Gender: Male
Calculator(s):
Class: L1
YouTube: Zack Voyager
Twitter: @STVthebest
Facebook: Zack Voy

Online

Re: Patching 4.4.0.532 CAS to run on Non-CAS

Unread postby critor » 03 Feb 2017, 14:52

I confirm the patch is working in Firebird with my local ControlX build.
4.4 CX CAS OS is running on a non-CAS CX setup.

Code added to the patchos.c file :
Code: Select all
      if(os_id==CXC440_532) {
         // cas check patch by parrotgeek1
                                       // r5 is where 900A0028 value goes
                                       // r4 is where 900A002C value goes
         PATCH_SETB(base+0x00CAF71,0x54);      // was:LDR R3, [PC, #0x484] : 0xE59F3484
                                       // is: LDR R5, [PC, #0x484] : 0xE59F5484
         PATCH_SETW(base+0x00CB3FC,0x00010105);   // [PC,#0x484] was 900A0000, repurposing as fake 900a0028 value
         PATCH_SETW(base+0x00CAF88,0xE3A04341);   // was: ldr r5,[r3,#0x28] : 0xE5935028
                                       // is: MOV R4, #0x4000001 : 0xE3A04341
         PATCH_SETW(base+0x00CAF8C,NOP);         // was: ldr r4,[r3,#0x2C] : 0xE593402C
                                       // is: alternate nop
         // fix reboot when document manager loads
         PATCH_SETW(base+0x08D0718,0xE59F2110);
         PATCH_SETW(base+0x08D0720,NOP);
         PATCH_SETW(base+0x08D0830,0x04000001);
         // maybe other 3 not need
         PATCH_SETB(base+0x00E44F5,0x31);      // was:LDR R1, [PC, #0x190] : 0xE59F1190
                                       // is: LDR R3, [PC, #0x190] : 0xE59F3190
         PATCH_SETW(base+0x00E44FC,NOP);         // was:ldr r3,[r1 + 02c] : 0xE591302C
                                       // is: alternate nop
         PATCH_SETW(base+0x00E468C,0x04000001);   // [PC, #0x190] was 900a0000, repurposing as fake 900a002c value
      }
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 5.1%
 
Posts: 35279
Images: 9403
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

Online

Re: Patching 4.4.0.532 CAS to run on Non-CAS

Unread postby critor » 03 Feb 2017, 16:36

Still on Firebird.
Removing the last 3 patches doesn't seem to change anything - it still seems to work perfectly. :)

But unless I made some error, there is a little problem with the home screen messages when launching OS 4.4 CAS without installing it
(with the 4.4 non-CAS resource files instead of the 4.4 CAS resource files)
:
Image

Up to OS 3.6, such trick didn't seem to cause any problem.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 5.1%
 
Posts: 35279
Images: 9403
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

PreviousNext

Return to Native: Ndless, Linux, ...

Who is online

Users browsing this forum: No registered users and 2 guests

-
Search
-
Featured topics
L'OS 5.5 de la TI-83 Premium CE / 84 Plus CE supprime l'assembleur - la plupart des jeux et certains programme ne fonctionneront plus
Omega, le fork étendant les capacités de ta NumWorks, même en mode examen !
Découvre les nouvelles fonctionnalités en Python de l'OS 5.5 pour la 83PCE/84+C-T Python Edition
Comparaisons des meilleurs prix pour acheter sa calculatrice !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...

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 
-
Stats.
379 utilisateurs:
>359 invités
>14 membres
>6 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)