La voici:
;C prototype: void DrawScreen2 (void *sprt, void *dest);
;
;void DrawScreen2 (register long *sprt asm("%a0"),
; register void *dest asm("%a1"));
section ".data"
xdef DrawScreen2
DrawScreen2:
movem.l d3/a2,-(a7)
lea 322(a1),a1
lea 8000(a1),a2
movea.l a0,a3
moveq.l #11,d2
\rep:
moveq.l #15,d3
;Sprite totale
\b0:
move.l (a0)+,d1
moveq.l #5,d0
;Gris clair
\s1:
move.l d1,(a1)+
dbf d0,\s1
;16 pixels
move.b -4(a0),(a1)
move.l (a0)+,d1
moveq.l #5,d0
;Gris foncé
\s2:
move.l d1,(a2)+
dbf d0,\s2
;16 pixels
move.b -4(a0),(a2)
lea 16(a1),a1
lea 16(a2),a2
dbf d3,\b0
movea.l a3,a0
dbf d2,\rep
movem.l (a7)+,d3/a2
rts