Merci

#define x_sprite saferam1 #define y_sprite saferam1+1 <<tu met ton header normal>> ld a,10 'tu met ld (x_sprite),a 'tes variables ld (y_sprite),a 'au point que tu veux, ici 10 directinput: ld hl,plotsscreen 'routine qui ld (hl),0 ' efface le ld de,plotsscreen+1 'plotscreen, c'est -a-dire ld bc,12*64-1 ' le graphbuffer ldir ' ld b,4 ' ld a,(y_balle) ' affiche ton sprite ld l,a ' ld a,(x_balle) ' ld ix,balle ' call ionputsprite ' ld a,$FF ' out (1),a ' ld a,$FE ' out (1),a 'routine de directinput, tu choisis les touches que tu veux scanner, j'ai pris in a,(1) ' haut et bas pour bouger le sprite de bas en haut , j'ai pas mis gauche droite expres bit 0,a ' pour que tu le fasse, par contre, la touche gauche permet de quitter le jeu pour l'instant call z,bas ' bit 1,a ' call z,quitter ' bit 3,a ' call z,haut ' jp directinput bas: push af ' met a dans la pile pour pouvoir continuer a faire marcher le directinput ld a,(y_sprite) inc a ld (y_sprite),a pop af 'retire la valeur de la pile et la stoque dans a ret haut: push af ld a,(y_sprite) dec a ld (y_sprite),a pop af ret quitter: pop a ret balle: .db %01100000 .db %11110000 .db %11110000 .db %01100000
en gros, ici, c'est une zone de mémoire où l'écran est écrit en bit.Tu peux te réprésenter ça comme un tebaleu de 0 et de 1, 0=éteint, 1=allumé.