;Eiblendeffekt 2:
;================

;Bild wird in 10 horizontalen BAHNEN 
;---------------------------------------------------
;um Bild aufzubauen muss es an die Adresse die in start steht
;geladen werden - es wird dann auf die Adresse die in ziel
;steht verschoben
;------------------------------------------------------------------
;MEGAFORCE PROGRAMMING:
; geschrieben von:   SANDER HANS
;		     TRAUNAUSTR.4
;		     4600  WELS  (OESTERREICH)
;
; please contact me !!!!!!!!!
;-----------------------------------------------------------------



scroll:
ziel = $40000		;zieladresse des Bildes
start = $50000		;Startadresse Bild im Speicher
move.l #start,a2
move.l #ziel,a3

move #19,d2	;aeusserer zaehler fuer 10 Streifen

move.l #0,a4    ;loeschen des Zeilenoffsets
l3:
move.l a2,a0	;Speicheradressen in Arbeitsregister
move.l a3,a1
add.l a4,a0	;Zeilenoffset addieren
add.l a4,a1
move.l #9,d1	;mittlerer Streifenzaehler

l22:
move #3,d7	;Schleifenzaehler fuer Anz der Bitplanes
move.l a0,d3
move.l a1,d4
l2:
move #9,d0	;Schleifenzaehler fuer 1 Pixelreihe

l1:
move.l (a0)+,(a1)+
dbra d0,l1      	;1 Zeile von 1 Bitplane abschliessen

add.l #7960,a0          ;Quelle und Ziel um 1 Bitplane erhoehen
add.l #7960,a1
dbra d7,l2		;restlichen Zeilen Bitplanes aufbauen

move.l d3,a0
move.l d4,a1


add.l #800,a0		;quelle und Ziel um 20 Zeilen erhoehen
add.l #800,a1
dbra d1,l22             ;wieder 1 Zeile aufbauen
add.l #40,a4		;Zaehler fuer naechste Zeile erhoehen

move #$f000,d6		;kleine Warteschleife
l4:dbra d6,l4

dbra d2,l3		;und wieder von vorne bis Screen voll ist

rts
