Page 1 of 1

Ecriture en ROM en ASM

Unread postPosted: 05 Mar 2018, 18:49
by Ti64CLi++
Bonjour,
J'ai essayé de faire un programme pour modifier la ROM, plus particulierement le texte This will clear all memory accessible a 7267h a la page 77h comme dit par Calcsys.
Donc voilà mon code:
Code: Select all
  org userMem-2
  DB $BB,$6D
Start:
  IN A,(14h)
  OR 1
  OUT (14h), A ;debloquer la flash
  IN A,(06h)
  OR F7h
  RES 3,A
  OUT (06h),A ;mapper la page 77h
  IN A,(04h)
  RES 0,A
  OUT (04h),A ;mapper la memory bank a a 4000h a 7FFFh et donc la page 77h
  LD A,41h
  LD (7267h),A
  LD A,0
  OUT (14h),A
  RET 

Voilà, c'est censé modifier la première lettre du message, donc un 'T' en un 'A'.
Mais cela n'a pas marché. Je l'ai seulement testé avec l'émulateur, mais le message n'avait pas changé :(
Si quelqu'un pouvait m'aider, je lui en serait reconnaissant. :)
Merci d'avance,
Ti64CLi++

Edit : je précise que je suis sur TI 83 Plus.fr USB en OS 2.55MP

Re: Ecriture en ROM en ASM

Unread postPosted: 05 Mar 2018, 20:24
by parrotgeek1
You can't just write to port 14h. Only code on OS pages can do that. You need a flash unlock exploit. The one inside UOSRECV works fine.

Re: Ecriture en ROM en ASM

Unread postPosted: 06 Mar 2018, 15:13
by Ti64CLi++
How does this exploit work?

Re: Ecriture en ROM en ASM

Unread postPosted: 10 Mar 2018, 07:06
by parrotgeek1
Ti64CLi++ wrote:How does this exploit work?

Sorry for the late reply (please quote my posts if you want me to see them)

It jumps into the *middle* of an OS routine that normally TEMPORARILY unlocks flash, with nonsense inputs, leaving the OS confused enough to "forget" to lock flash again before returning

Re: Ecriture en ROM en ASM

Unread postPosted: 16 Mar 2018, 17:50
by Ti64CLi++
No problem, I can understand that someone busy :troll: