[AXE] axioms
2 participants
Page 1 sur 1
[AXE] axioms
C'est très facile, mais ça se fait uniquement en ASM.
Créez un fichier axiom.z80 (le mieux étant d'utiliser Mimas), puis faites-le commencer (outre les includes) par :
Maintenant j'explique tout :
On a donc en premier le .dw $C0DE, puis viens la taille. Plutôt que de compter, on va mettre un label qu'on définira plus tard.
Viens ensuite le token à trouver pour lancer la commande. Ils sont tous définis dans ton fichier include.
Après, le type de la commande :
Maintenant, le token hook : on cherche un token par son numéro et on change son texte à l'affichage.
C'est pas compliqué, on a juste besoin du numéro du token multiplié par 2 (2 octets, tu peux trouver tous les codes des tokens dans tokenHook.inc, même dossier), la taille du texte de remplacement (1 octet) et le texte lui-même, à ne PAS terminer par 0.
Tu peux définir jusqu'à 32 commandes dans un seul Axiom et utiliser jusqu'à 5 Axioms dans un seul programme, mais le token hook doit TOUJOURS venir à la fin !
Pour l'utiliser, compile-le comme un programme ASM normal, envoie-le sur calto et utilise #Axiom(AXIOM) dans ton programme Axe et compile-le une fois pour voir ton token hook [Vous devez être inscrit et connecté pour voir cette image]
Si quelqu'un a des questions -> faites un topic
Créez un fichier axiom.z80 (le mieux étant d'utiliser Mimas), puis faites-le commencer (outre les includes) par :
- Code:
.dw $C0DE
- La taille de la routine
- La compatibilité avec les shells
- Le token correspondant à ta commande
- Le type de commande (normal, avec un ou deux r, prenant un pointeur ...)
- Le nombre d'arguments
- Code:
rorg 0
- Et enfin ta routine
Maintenant j'explique tout :
On a donc en premier le .dw $C0DE, puis viens la taille. Plutôt que de compter, on va mettre un label qu'on définira plus tard.
- Code:
.dw $C0DE
.dw CmdEnd
- Bit 0 : noshell
- Bit 1 : Ion
- Bit 2 : MirageOS
- Bit 3 : DoorsCS
- Bit 4 : App
- Bit 5 : Axe Fusion
- Code:
.dw $C0DE
.dw CmdEnd
.db %00100111 ; compatible Axe fusion, Mirage, Ion et Noshell
Viens ensuite le token à trouver pour lancer la commande. Ils sont tous définis dans ton fichier include.
- Code:
.dw $C0DE
.dw CmdEnd
.db %00100111
.dw 5,0 ; token BoxPlot
Après, le type de la commande :
- Bit 0 : sous-routine (impossible à appeler dans un programme par un token, uniquement depuis une commande ASM)
- Bit 1 : requiert un petit r
- Bit 2 : requiert deux petits r
- Bit 3 : Nécessite un argument passé avant une ->
- Bit 4 : prend un pointeur en argument
- Code:
.dw $C0DE
.dw CmdEnd
.db %00100111
.dw 5,0
.dw %00000100 ; nécessite deux r
- Code:
.dw $C0DE
.dw CmdEnd
.db %00100111
.dw 5,0
.db %00000100
.db 2 ; 2 arguments, le dernier est dans HL, et les précédents poussés sur la pile dans leur ordre d'apparition
rorg 0
; ici une routine qui met deux valeurs passées en arguments dans les variables Axe A et B
ld (Axv_B),HL
pop HL
ld (Axv_A),HL
; ces valeurs sont dans Axe.inc, dans le dossier Developers de l'Axe
ret ; toujours finir par ret
CmdEnd: ; le fameux label renseignant la taille de la routine
Maintenant, le token hook : on cherche un token par son numéro et on change son texte à l'affichage.
C'est pas compliqué, on a juste besoin du numéro du token multiplié par 2 (2 octets, tu peux trouver tous les codes des tokens dans tokenHook.inc, même dossier), la taille du texte de remplacement (1 octet) et le texte lui-même, à ne PAS terminer par 0.
- Code:
.dw 10,0 ; le token BoxPlot *2
.db 6
.db "StoAB("
Tu peux définir jusqu'à 32 commandes dans un seul Axiom et utiliser jusqu'à 5 Axioms dans un seul programme, mais le token hook doit TOUJOURS venir à la fin !
Pour l'utiliser, compile-le comme un programme ASM normal, envoie-le sur calto et utilise #Axiom(AXIOM) dans ton programme Axe et compile-le une fois pour voir ton token hook [Vous devez être inscrit et connecté pour voir cette image]
Si quelqu'un a des questions -> faites un topic
Dernière édition par matrefeytontias le Dim 1 Juil - 20:33, édité 1 fois
matrefeytontias- Platinum 1
- Sexe :
Age : 26
Messages : 1383
Date d'inscription : 28/09/2011
Etudes : 1ère S SI
Points Forum : 90
Points Concours : 7
Langages :- - ASM TI-82 Stats / TI-83
- - ASM TI-83+ / TI-84+
- - Axe Parser
- - Lua Nspire
- - Ndless Nspire
- - TI-83+.fr
- - TI-Nspire CAS
Re: [AXE] axioms
super je testerais mais plusieurs chose ne me semble pas clair
merci bien
merci bien
nikitouzz- Platinum 1
- Sexe :
Age : 28
Messages : 1834
Date d'inscription : 16/01/2011
Points Forum : 7
Points Concours : 6
Langages :- - TI-Basic Z80
- - ASM TI-83+ / TI-84+
- - Axe Parser
- - TI-Basic 68K
- - TI-Basic Nspire
- - TI-73
- - TI-76.fr
- - TI-82 Stats.fr
- - TI-83+
- - TI-84+
- - TI-92
- - TI-Nspire
- - TI-Nspire CX
Re: [AXE] axioms
Si c'est pas clair, 'faut demander
matrefeytontias- Platinum 1
- Sexe :
Age : 26
Messages : 1383
Date d'inscription : 28/09/2011
Etudes : 1ère S SI
Points Forum : 90
Points Concours : 7
Langages :- - ASM TI-82 Stats / TI-83
- - ASM TI-83+ / TI-84+
- - Axe Parser
- - Lua Nspire
- - Ndless Nspire
- - TI-83+.fr
- - TI-Nspire CAS
Re: [AXE] axioms
"Laisse 0 ici si c'est une routine normale." qu'apelle tu par routine normal ?
et comment on change le nom du token ?
et comment on change le nom du token ?
nikitouzz- Platinum 1
- Sexe :
Age : 28
Messages : 1834
Date d'inscription : 16/01/2011
Points Forum : 7
Points Concours : 6
Langages :- - TI-Basic Z80
- - ASM TI-83+ / TI-84+
- - Axe Parser
- - TI-Basic 68K
- - TI-Basic Nspire
- - TI-73
- - TI-76.fr
- - TI-82 Stats.fr
- - TI-83+
- - TI-84+
- - TI-92
- - TI-Nspire
- - TI-Nspire CX
Re: [AXE] axioms
Une routine "normale", c'est une routine sans r ni rien, une routine comme ClrDraw ou Pt-On().
"Changer le nom du token" → faire du token hook. Si t'avais lu jusqu'au bout t'aurai vu que c'est expliqué -_-'
"Changer le nom du token" → faire du token hook. Si t'avais lu jusqu'au bout t'aurai vu que c'est expliqué -_-'
matrefeytontias- Platinum 1
- Sexe :
Age : 26
Messages : 1383
Date d'inscription : 28/09/2011
Etudes : 1ère S SI
Points Forum : 90
Points Concours : 7
Langages :- - ASM TI-82 Stats / TI-83
- - ASM TI-83+ / TI-84+
- - Axe Parser
- - Lua Nspire
- - Ndless Nspire
- - TI-83+.fr
- - TI-Nspire CAS
Re: [AXE] axioms
:O a oui effectivement pardon je n'avais pas vu
ps : runer112 a fait une routine plus rapide que clrdrawn
ps : runer112 a fait une routine plus rapide que clrdrawn
nikitouzz- Platinum 1
- Sexe :
Age : 28
Messages : 1834
Date d'inscription : 16/01/2011
Points Forum : 7
Points Concours : 6
Langages :- - TI-Basic Z80
- - ASM TI-83+ / TI-84+
- - Axe Parser
- - TI-Basic 68K
- - TI-Basic Nspire
- - TI-73
- - TI-76.fr
- - TI-82 Stats.fr
- - TI-83+
- - TI-84+
- - TI-92
- - TI-Nspire
- - TI-Nspire CX
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|