Je me mets enfin doucement à l'assemble 6502. J'expérimente tout ça sur le C-128. Il a l'avantage d'avoir un monitor intégré. Voici un petit programme tout à fait génial, il fait bouger un caractère à l'écran (une boule). Lorsqu'il est à la fin de l'écran, il recommence au début
Le truc, c'est que le programme en ASM est trop "rapide". Le VIC n'a pas le temps de rafraîchir son écran, que la boule est déjà 50 caractères plus loin.
Est-ce qu'il y a moyen d'avoir une interruption lorsque le VIC a fini de rafraîchir? Est-ce qu'il faut faire une boucle dans le programme pour le ralentir?
Code : Tout sélectionner
. 00c30 a9 00 lda #$00
. 00c32 85 80 sta $80
. 00c34 a9 04 lda #$04
. 00c36 85 81 sta $81
. 00c38 a0 00 ldy #$00
. 00c3a a9 20 lda #$20
. 00c3c 91 80 sta ($80),y
. 00c3e c8 iny
. 00c3f a9 51 lda #$51
. 00c41 91 80 sta ($80),y
. 00c43 c0 fb cpy #$fb
. 00c45 d0 f3 bne $0c3a
. 00c47 18 clc
. 00c48 a5 80 lda $80
. 00c4a 69 fa adc #$fa
. 00c4c 85 80 sta $80
. 00c4e 90 e8 bcc $0c38
. 00c50 18 clc
. 00c51 a5 81 lda $81
. 00c53 69 01 adc #$01
. 00c55 85 81 sta $81
. 00c57 c9 07 cmp #$07
. 00c59 d0 dd bne $0c38
. 00c5b 4c 30 0c jmp $0c30
Ben