1

jarrive pas a faire un adressage indirect, indexe avec deplacement

ex : move.w d0,$20(a0,d1*2)

ca doit etre au niveau des points : $20..(a0
Jah Live !
And Never Die !!

2

essayes de lire cette doc :
http://perso.wanadoo.fr/ti92-ti89.miclo/asm/tutorials/68kguidefr.zip
pour l'ASM, c'est LA référence...
mais je ne suis pas sûr qu'elle dise exactement comment faire sad

(c la version française)
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

3

ton truc c un truc pour TI??

parceke si c un truc d'asm 68k pur c bon jai c kil faut : jai un bouquin sur le coldfire

mai sa marche pas sous le compilateur a68k on dirait
comme tout les pb ke jai smile
Jah Live !
And Never Die !!

4

oué, il me semble que c'est le 68k Guide de Jimmy marderl (écrit pour TI-92... mais il est valable pour 89 et 92+, vu que c'est le même processeur)
C'est LA référence des docs de fonctions ASM.
sous TIGCC, j'utilise cette doc.

PS: je penses que c'est bien le guide dont je parle... le lien est dans ma liste de liens utiles... mais la légende que j'ai mis est courte
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

5

L'adressage est correct, sauf le d1*2. Les multiplications avec des *, ca n'existe pas en asm. On ne peux pas multiplier en plein milieu de cet adressage,il faut le faire avant. utilise "mulu.w #2,d1".
Mais là c'est pas super optimisé d'utiliser mulu pour une multiplication par 2, mulu est très très lent. Utilise plutot "lsl" : c'est un décalage de bit vers la gauche. Pour multiplier par 2^1, fait "lsl.w #1,d0" (ou "add.w d1,d1", c encore mieux je crois). Pour Pour multiplier par 2^2, fait "lsl.w #2,d0", etc...

6

N'utilise pas lsl.w #1,d1 mais add.w d1,d1, c'est encore plus rapide.

Et sinon, tu peux aussi faire:
 lea 0(a0,d1.w),a1
 move.w d0,$20(a1,d1.w)

Mais je pense que le suivant est plus rapide si tu veux garder d1:
 move.w d1,d2
 add.w d2,d2
 move.w d0,$20(a1,d2.w)
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

7

merci bien
Jah Live !
And Never Die !!

8

Cet adressage existe, il sera disponible sur la DioXygene...
Site : http://www.phareaway.com/
Membre du groupe Phare Away et webmaster du site

9

Et personne ne l'utilisera, car les HPistes auront déjà des difficultés à comprendre x(an,dn) et le TIistes n'utiliseront que les instructions du 68000.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

10

sauf moi!!

Pour lancer une routine, c'est pratique!!
Site : http://www.phareaway.com/
Membre du groupe Phare Away et webmaster du site

11

Cet adressage n'est pas disponible sur le 68000 de base, mais sur les 68020, 68030, ....

Et ce genre de question a sa place dans le forum asm wink