Assembler-Inlines von Zündeln für den AtariST
(zurück zu Zündeln)



;
;                         "DING2.IS"
;
               movem.l    d1-d3/a0-a3,-(sp)
;                         7 Register = 28
;
               movea.l    32(sp),a0     ; XBIOS(2) in a0
               movea.l    36(sp),a1     ; L:V:bild$ in a1
               move.l     40(sp),d1     ; zufz% in d1
               lea.l      ding,a2       ; Maske in a2
               lea.l      rand,a3       ; schwarzer Rand

               clr.l      d3
               clr.l      d0
               move.w     #7,d0         ; Schleifenzähler
nochm:         
               adda.l     #80,a0
               adda.l     #80,a1
               move.b     (a2)+,d3
               and.b      0(a1,d1.l),d3
               add.b      (a3)+,d3
               move.b     d3,0(a0,d1.l)
               move.b     d3,0(a1,d1.l)

               dbf        d0,nochm

               movem.l    (sp)+,d1-d3/a0-a3
               rts        
ding:          
               .DC.b %11000011
               .DC.b %10000001
               .DC.b %00000000
               .DC.b %00000000
               .DC.b %00000000
               .DC.b %00000000
               .DC.b %10000001
               .DC.b %11000011
rand:          
               .DC.b %00111100
               .DC.b %01000110
               .DC.b %10000011
               .DC.b %10000011
               .DC.b %10000011
               .DC.b %11000111
               .DC.b %01111110
               .DC.b %00111100

               .END