Je débute en asm, donc j'aurais besoin de votre aide et de vos conseils...
Voilà mon premier prog:
.nolist #INCLUDE "ti83plus.inc" #INCLUDE "ion.inc" #DEFINE ProgStart $9D95 _clr =4BD0 ;GrBufClr (n'existait pas pour le compilo on calc) => J'ai le droit de le placer là? .list .org progstart-2 .db $BB,6D ret jr nc,put .db "Mouvement",0 put: ld b,16 ld a,(X) ld hl,(Y) ld c,2 ld ix,sprite call ilargesprite call ifastcopy getkey: ld a,FEh out (1),a in a,(1) cp 254 jr z,bas cp 253 jr z,gauche cp 251 jr z,droite cp 247 jr z,haut ld a,FDh out (1),a in a,(1) cp 191 ret z jr getkey bas: ld a,(Y) cp 40 jr z,getkey bcall clr inc a ld (Y),a jp put gauche: ld a,(X) cp 1 jr z,getkey bcall clr dec a ld (X),a jp put droite: ld a,(X) cp 60 jr z,getkey bcall clr inc a ld (X),a jp put haut: ld a,(Y) cp 1 jr z,getkey bcall clr dec a ld (Y),a jp put sprite: .db 11111111b,11111111b .db 10000000b,00000000b .db 10000000b,00000000b .db 10111111b,00111110b .db 10000000b,00000000b .db 10001000b,00001000b .db 10010100b,00010100b .db 10100010b,00100010b .db 10000000b,00000000b .db 10000001b,00000000b .db 10000001b,00000000b .db 10000000b,00000000b .db 10010000b,00001000b .db 10001000b,00010000b .db 10000111b,11100000b .db 10000000b,00000000b X: .db 20 Y: .db 20 ret .end .end
Prog compilé: Fichier joint : A3.8xp
Le but de ce programme est juste de balader une image sur l'écran.
La syntaxe (notament du header) est peut-être fausse, parce que je programme on calc.
Le problème, c'est que ce programme est super lent (rien à voir avec Tiny carZ et autre)...
Donc: comment le faire plus rapide??? Comment l'améliorer?
Merci beaucoup.