Page 1 of 3

[83PCE] Codes hexadécimaux pour faire joujou

Unread postPosted: 08 Feb 2017, 16:21
by Epharius
Coucou les pitchouns !

J'ai vu que certains demandaient un équivalent de ce "tutoriel" pour les Ti-83 Premium CE et les Ti-84+CE. Du coup ben... me voilà :p

N'hésitez pas à me dire si vous voulez en rajouter un ou si vous avez un problème avec l'exécution de ces codes. Ces codes ne sont compatibles que pour les calculatrices Ti-83PCE et Ti-84+CE, ne vous amusez pas à les essayer avec une autre calculatrice ! Si vous avez une Ti-82+/Ti-82 Stats(.fr)/Ti-83[+]/Ti-84+ vous devez allez sur le tuto que j'ai mentionné plus haut.












FonctionCode
Inverse la couleur des prochains textes
(à utiliser dans un programme Basic car à la fin d'un programme l'OS remet le mode normal)
Code: Select all
Asm83CEPrgm
FDCB05DEC9
Enlève le mode précédent
Code: Select all
Asm83CEPrgm
FDCB059EC9
Désactive l'APD (pendant un certain temps)
Code: Select all
Asm83CEPrgm
C3341102
Réactive l'APD
Code: Select all
Asm83CEPrgm
C3381102
Active le hack des minuscules
Code: Select all
Asm83CEPrgm
FDCB24DEC9
Bloque Alpha (jusqu'à la prochaine extinction)
Code: Select all
Asm83CEPrgm
FDCB12E6
FDCB12FEC9
Enlève le "DONE" à la fin du programme (à utiliser dans un programme Ti-Basic)
Code: Select all
Asm83CEPrgm
FDCB00AEC9
Éteint la calculatrice
Code: Select all
Asm83CEPrgm
C3841402
Faire un RAM CLEARED au prochain démarrage :p
(pendant ce temps, la calculatrice se comporte normalement)
Code: Select all
Asm83CEPrgm
FDCB24D6C9



D'autres codes sont à venir, vous pouvez en être certain, et ils seront surement un peu plus élaborés que ceux-là, qui ne demandent qu'une deux lignes en assembleur.
Si vous avez des suggestions, posez vos questions ici ;)

Re: [83PCE] Codes hexadécimaux pour faire joujou

Unread postPosted: 08 Feb 2017, 16:50
by Nicolas_1er
Merci beaucoup pour tous ces codes ;)

C'est quoi au fait l'APD ?

Édit: pardon en fait j'ai trouvé ^^
Ça le désactive combien de temps ?

Re: [83PCE] Codes hexadécimaux pour faire joujou

Unread postPosted: 08 Feb 2017, 17:01
by Alvoko
et le binaire? on en fait quoi? :troll: ?

Re: [83PCE] Codes hexadécimaux pour faire joujou

Unread postPosted: 08 Feb 2017, 17:39
by Epharius
Ça le désactive jusqu'à ce que tu fasses quelque chose qui le réactive comme rallumer ta calculatrice ou je ne sais quoi d'autre (je n'ai pas approndi mes recherches)

Bah, en binaire je peux te le donner si tu veux mais bon :p

Re: [83PCE] Codes hexadécimaux pour faire joujou

Unread postPosted: 08 Feb 2017, 19:00
by Ti64CLi++
Euh, comment cela se fait-il que ça fasse un RAM Cleared au prochain redémarrage, que fait cette instruction?

Re: [83PCE] Codes hexadécimaux pour faire joujou

Unread postPosted: 08 Feb 2017, 21:35
by Epharius
En fait je crois que c'est utilisé par les non-masquables interruptions (franglais wsh) pour faire un RAM CLEARED quand il détecte qu'un port à été modifié (il doit redémarrer la calculatrice du coup). En gros il met un flag à 1 (oui, la seule instruction c'est un SET) et quand la calculatrice démarre elle check ce flag pour savoir si elle doit RAM CLEARED ou pas.
À vérifier TheMachichi peut corriger si c'est faux :p

L'instruction c'est : "SET 3, (iy+24h)" (le 3 je ne suis pas sur, a verifier dans l'include)

Re: [83PCE] Codes hexadécimaux pour faire joujou

Unread postPosted: 09 Feb 2017, 14:24
by TheMachine02
Non, c'est ça. Y'a aussi un port en range $E00000 que tu peux activer pour faire un RAM clear direct.
Par contre raté pour l'instruction, ça c'est les lowercases :p C'est "set 2,(iy+24h)", ou avec les labels, "set resetOnPowerOn,(iy+selfTestFlag)"

Re: [83PCE] Codes hexadécimaux pour faire joujou

Unread postPosted: 09 Feb 2017, 18:01
by Epharius
En effet, j'étais sur mon portable je n'avais pas mon include avec moi :p
J'ai évidemment pas retenu toutes les valeurs du SET pour aller des bits 1 à 7 ($EC/$FE/$6C etc).

Je suis en train de réfléchir à d'autres trucs cools simples à faire en attendant.

Re: [83PCE] Codes hexadécimaux pour faire joujou

Unread postPosted: 12 Feb 2017, 20:15
by Nicolas_1er
Hey !
Juste pour signaler que l'APD reste désactivé même après avoir éteint la ti manuellement tu a le code pour le réactiver ? Ce serais cool ;)

Re: [83PCE] Codes hexadécimaux pour faire joujou

Unread postPosted: 12 Feb 2017, 20:20
by TheMachine02
Comme ça, je dirais :

Code: Select all
Asm83CEPrgm
FDCB08D6C9


Dit moi si ça marche :p

EDIT : D'ailleurs Epharius, tu peux copier le code pour retirer done, il marche aussi :

Code: Select all
Asm83CEPrgm
FDCB00AEC9


EDIT2 : convertit le code de Matref pour aller à la fin d'un programme avec 2nd+X,T,N. Bon Phasm a le même raccourci, mais ça peut être utile pour ceux qui ne l'utilisent pas/peuvent pas le mettre.

Code: Select all
Asm83CEPrgm
219CA8D111C652D0011B0000EDB0
21C652D022DB25D0FDCB34EEC9
83FDCB0156C8FE412007CD700D02
3E00C9FE3BC0CDD813023E00C9


Code: Select all
.org userMem - 2
.db tExtTok, tAsm84CeCmp
.assume ADL=1
   ld   hl, HookStart
   ld   de, pixelShadow2
   ld   bc, HookEnd-HookStart
   ldir
   ld   hl, pixelShadow2
   ld   (rawKeyHookPtr), hl
   set   rawKeyHookActive, (iy+hookflags2)
   ret

HookStart:
   .db   $83
   bit   2, (iy+1)
   ret   z
   cp   65
   jr   nz, HookTryOff
   call   _DispTail
   ld   a, 0
   ret
HookTryOff:
   cp   59
   ret   nz
   call   _ClrRawKeyHook
   ld   a, 0
   ret   
HookEnd:


EDIT 2:

Voici le code pour réduire les wait-states de lecture de la flash, mais il doit être exécuté à chaque fois que la calculette redémarre pour être efficace.
Code: Select all
Asm83CEPrgm
210500E03601C9