Voila je voulait faire un genre de printf a la C , bon sur le 6502 j'avais bien réussi mais sur celui la il y a une erreur que je n'arrive pas a trouver.
Le résultat est que je n'ai que 4 lettres qui s'affiche donc j'ai seulement 'BONJ' , une idée d’où ça peut provenir ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 move.w #FIXMAP+$22+(1*$20)+2,d1 ; move.l texte,(a0) -: move.w d1,VRAM_ADDR ; adresse de la VRAM clr.w d0 move.b (a0)+,d0 ; on lit l'adresse du texte puis on incrémente add.w #$0321,d0 sub.w #'!',d0 move.w d0,VRAM_RW ; écriture sur la VRAM add.w #$20,d1 ; on incrémente l'adresse de la VRAM cmp.w #0,(a0) ; si egal a 0 on quitte la boucle bne - ; dans la section data texte: dc.b "BONJOUR TOUT LE MONDE",0
C'est comme si a0 au bout de la 4 eme boucle n’incrémente plus correctement (vu qu'il devrait lire 'O' et non zéro).
Partager