[AXE] axioms

Voir le sujet précédent Voir le sujet suivant Aller en bas

[AXE] axioms

Message par matrefeytontias le Dim 1 Juil - 17:53

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 :
Code:
.dw $C0DE
Ensuite il va falloir plusieurs champs :

  • 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
Ensuite viens la compatibilité des shells : c'est un nombre d'un octet dont les bits vont définir les shells avec lesquels ta commande est compatible :

  • Bit 0 : noshell
  • Bit 1 : Ion
  • Bit 2 : MirageOS
  • Bit 3 : DoorsCS
  • Bit 4 : App
  • Bit 5 : Axe Fusion
Si tu veux que ta commande soit compatible partout, active tous les bits.
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
Laisse 0 ici si c'est une routine normale.
Code:
.dw $C0DE
.dw CmdEnd
.db %00100111
.dw 5,0
.dw %00000100 ; nécessite deux r
Ensuite, facile, le nombre d'arguments, entre 0 et 6, puis après le rorg 0, ta routine !
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

_________________
[Axe] [Vous devez être inscrit et connecté pour voir ce lien], aussi compatible 82 stats !

[Vous devez être inscrit et connecté pour voir ce lien]
[Vous devez être inscrit et connecté pour voir ce lien]

Spoiler:

matrefeytontias
Platinum 1
Platinum 1

Sexe : Masculin
Age : 19
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
Calculatrices :
  • - TI-83+.fr
  • - TI-Nspire CAS

TI-83+.fr


Revenir en haut Aller en bas

Re: [AXE] axioms

Message par nikitouzz le Dim 1 Juil - 18:26

super je testerais mais plusieurs chose ne me semble pas clair ^^

merci bien Content

_________________
[Vous devez être inscrit et connecté pour voir cette image]
Invité née le 0 a aujord'huis 0 ans et a posté 11 messages... je suis derrière vous

2x2x2 : 2.18 secondes / 2x2x2 une main : 21.15 secondes / 2x2x2 yeux bandés : 47.59
3x3x3 : 5.97 secondes / 3x3x3 une main : 49.86 secondes
4x4x4 : 1.49 minutes / 4x4x4 une main : 6.50 minutes
5x5x5 : 4.10 minutes / 5x5x5 une main : 18.02 minutes
6x6x6 : 8.10 minutes
7x7x7 : 16.03 minutes
9x9x9 : 58.26 minutes

3x3x1 : 0.73secondes / 3x3x2 : 30.55secondes / 3x3x3 : 5.97secondes / 3x3x4 : 1.09minutes / 3x3x5 : 1.46minutes / 3x3x6 : 2.06minutes

megaminx : 5.59 minutes / pyraminx : 7.91 secondes / square-one : 1.07

nikitouzz
Platinum 1
Platinum 1

Sexe : Masculin
Age : 21
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
Calculatrices :
  • - TI-73
  • - TI-76.fr
  • - TI-82 Stats.fr
  • - TI-83+
  • - TI-84+
  • - TI-92
  • - TI-Nspire
  • - TI-Nspire CX

TI-84+ SE


Revenir en haut Aller en bas

Re: [AXE] axioms

Message par matrefeytontias le Dim 1 Juil - 20:34

Si c'est pas clair, 'faut demander Ok

_________________
[Axe] [Vous devez être inscrit et connecté pour voir ce lien], aussi compatible 82 stats !

[Vous devez être inscrit et connecté pour voir ce lien]
[Vous devez être inscrit et connecté pour voir ce lien]

Spoiler:

matrefeytontias
Platinum 1
Platinum 1

Sexe : Masculin
Age : 19
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
Calculatrices :
  • - TI-83+.fr
  • - TI-Nspire CAS

TI-83+.fr


Revenir en haut Aller en bas

Re: [AXE] axioms

Message par nikitouzz le Lun 2 Juil - 11:20

"Laisse 0 ici si c'est une routine normale." qu'apelle tu par routine normal ?

et comment on change le nom du token ?

_________________
[Vous devez être inscrit et connecté pour voir cette image]
Invité née le 0 a aujord'huis 0 ans et a posté 11 messages... je suis derrière vous

2x2x2 : 2.18 secondes / 2x2x2 une main : 21.15 secondes / 2x2x2 yeux bandés : 47.59
3x3x3 : 5.97 secondes / 3x3x3 une main : 49.86 secondes
4x4x4 : 1.49 minutes / 4x4x4 une main : 6.50 minutes
5x5x5 : 4.10 minutes / 5x5x5 une main : 18.02 minutes
6x6x6 : 8.10 minutes
7x7x7 : 16.03 minutes
9x9x9 : 58.26 minutes

3x3x1 : 0.73secondes / 3x3x2 : 30.55secondes / 3x3x3 : 5.97secondes / 3x3x4 : 1.09minutes / 3x3x5 : 1.46minutes / 3x3x6 : 2.06minutes

megaminx : 5.59 minutes / pyraminx : 7.91 secondes / square-one : 1.07

nikitouzz
Platinum 1
Platinum 1

Sexe : Masculin
Age : 21
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
Calculatrices :
  • - TI-73
  • - TI-76.fr
  • - TI-82 Stats.fr
  • - TI-83+
  • - TI-84+
  • - TI-92
  • - TI-Nspire
  • - TI-Nspire CX

TI-84+ SE


Revenir en haut Aller en bas

Re: [AXE] axioms

Message par matrefeytontias le Lun 2 Juil - 11:24

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é -_-'

_________________
[Axe] [Vous devez être inscrit et connecté pour voir ce lien], aussi compatible 82 stats !

[Vous devez être inscrit et connecté pour voir ce lien]
[Vous devez être inscrit et connecté pour voir ce lien]

Spoiler:

matrefeytontias
Platinum 1
Platinum 1

Sexe : Masculin
Age : 19
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
Calculatrices :
  • - TI-83+.fr
  • - TI-Nspire CAS

TI-83+.fr


Revenir en haut Aller en bas

Re: [AXE] axioms

Message par nikitouzz le Lun 2 Juil - 11:40

:O a oui effectivement ^^ pardon je n'avais pas vu ^^

ps : runer112 a fait une routine plus rapide que clrdrawn ^^


_________________
[Vous devez être inscrit et connecté pour voir cette image]
Invité née le 0 a aujord'huis 0 ans et a posté 11 messages... je suis derrière vous

2x2x2 : 2.18 secondes / 2x2x2 une main : 21.15 secondes / 2x2x2 yeux bandés : 47.59
3x3x3 : 5.97 secondes / 3x3x3 une main : 49.86 secondes
4x4x4 : 1.49 minutes / 4x4x4 une main : 6.50 minutes
5x5x5 : 4.10 minutes / 5x5x5 une main : 18.02 minutes
6x6x6 : 8.10 minutes
7x7x7 : 16.03 minutes
9x9x9 : 58.26 minutes

3x3x1 : 0.73secondes / 3x3x2 : 30.55secondes / 3x3x3 : 5.97secondes / 3x3x4 : 1.09minutes / 3x3x5 : 1.46minutes / 3x3x6 : 2.06minutes

megaminx : 5.59 minutes / pyraminx : 7.91 secondes / square-one : 1.07

nikitouzz
Platinum 1
Platinum 1

Sexe : Masculin
Age : 21
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
Calculatrices :
  • - TI-73
  • - TI-76.fr
  • - TI-82 Stats.fr
  • - TI-83+
  • - TI-84+
  • - TI-92
  • - TI-Nspire
  • - TI-Nspire CX

TI-84+ SE


Revenir en haut Aller en bas

Re: [AXE] axioms

Message par Contenu sponsorisé Aujourd'hui à 2:21


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum