amiga : flood effect

1 replies · 11,982 views

amiga : flood effect
o:
	movem.l	a0-a6/d0-d7,-(a7)
	bsr	clear
	bsr	Init

	lea	text,a0
	bsr	writer
	bsr	flood

mouse:	btst	#6,$bfe001
	bne	mouse

	move.w	#$0200,bpn
	bsr	clear
	move.w	#$0122,kol1
	move.w	#$0011,kol2
	move.w	#$0eff,kol3
	move.w	#$0fff,kol4
	move.w	#$0dee,kol5
	move.w	#$0cdd,kol6
	move.w	#$0bcc,kol7
	move.w	#$4200,bpn
	move.w	#$3001,tt
	bsr	kopya
	bsr	flood
	move.l	#$fffff,d0
ekss:	sub.l	#1,d0
	bne	ekss
	bra	end


;¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
flood:
loop2:	cmpi.b	#$ff,$dff006
	bne	loop2	

	add.w	#$0100,tt
loop3:	cmpi.b	#$ff,$dff006
	bne	loop3	
	bsr	timer
	cmp.w	#$ff01,tt
	bne	loop2	
	rts

timer:	move.l	#$ff,d0
eks:	sub.l	#1,d0
	bne	eks
	rts

END:	lea	SysCop,a0
	move.l	(a0),50(a6)
	move.l	4,a6
;	jsr	-138(a6)
	move.l	a6,a1
	jsr	-414(a6)
	movem.l	(a7)+,a0-a6/d0-d7
	move.w	vigo,d0
	rts

Init:	move.l	4,a6
;	jsr	-132(a6)
	lea	GfxName,a1
	jsr	-408(a6)
	move.l	d0,a6
	move.l	d0,GfxBase

	lea	SysCop,a0
	lea	Copper,a1
	move.l	50(a6),(a0)
	move.l	a1,50(a6)

	lea	DESTBM,a0
	move.l	#4,d0
	move.l	#360,d1
	move.l	#256,d2
	jsr	-390(a6)
	lea	DESTRP,a1
	jsr	-198(a6)
	move.l	#DESTBM,DESTRP+4
	lea	DESTBM,a0
	move.l	#$70000,8(a0)
	move.l	#$72d00,12(a0)
	move.l	#$75a00,16(a0)
	move.l	#$78700,20(a0)

	lea	logoBM,a0
	move.l	#4,d0
	move.l	#269,d1
	move.l	#172,d2
	jsr	-390(a6)
	lea	logoRP,a1
	jsr	-198(a6)
	move.l	#logoBM,logoRP+4
	lea	logoBM,a0
	move.l	#load1+[0*5848],8(a0)
	move.l	#load1+[1*5848],12(a0)
	move.l	#load1+[2*5848],16(a0)
	move.l	#load1+[3*5848],20(a0)

	lea	fontBM,a0
	move.l	#3,d0
	move.l	#944,d1
	move.l	#18,d2
	jsr	-390(a6)
	lea	fontRP,a1
	jsr	-198(a6)
	move.l	#fontBM,fontRP+4
	lea	fontBM,a0
	move.l	#load2+[0*2124],8(a0)
	move.l	#load2+[1*2124],12(a0)
	move.l	#load2+[2*2124],16(a0)
	rts

Clear:	lea	$70000,a0
	move.l	#$d000,d0
sil:	clr.b	(a0)+
	sub.l	#1,d0
	bne	sil
	rts

GfxName: dc.b	'graphics.library',0,0
Copper:
	dc.w	$0100
bpn:	dc.w	$4200
	dc.w	$008e,$2517
	dc.w	$0120,$0000,$0122,$0000 
	dc.w	$0092,$0038,$0094,$00d0
	dc.w	$0108
vigo:	dc.w	$0006
	dc.w	$010a
vigo1:	dc.w	$0006

	dc.w	$00e0,$0007,$00e2,$0000
	dc.w	$00e4,$0007,$00e6,$2d00
	dc.w	$00e8,$0007,$00ea,$5a00
	dc.w	$00ec,$0007,$00ee,$8700
	dc.w	$0180,$0000
tt:	dc.w	$3001,$fffe,$108,-40,$10a,-40

	dc.w	$0182
kol1:	dc.w	$0ECA
	dc.w	$0184
kol2:	dc.w	$0085
	dc.w	$0186
kol3:	dc.w	$0043
	dc.w	$0188
kol4:	dc.w	$00B8
	dc.w	$018A
kol5:	dc.w	$00FB
	dc.w	$018C
kol6:	dc.w	$0B98
	dc.w	$018E
kol7:	dc.w	$0765
	dc.w	$0190,$09BB,$0192,$0899,$0194,$0788,$0196,$0677
	dc.w	$0198,$0566,$019A,$0455,$019C,$0344,$019E,$0233

	dc.w	$ffdf,$fffe
	dc.w	$2707,$fffe,$0100,$0200
	dc.w	$ffff,$fffe

SysCop:	dc.l	0
GfxBase:dc.l	0
;-------------------------
kopya:
	move.l	gfxbase,a6
	lea	logobm,a0
	lea	destbm,a1
	move.l	#0,d0
	move.l	#0,d1
	move.l	#25,d2
	move.l	#40,d3
	move.l	#269,d4
	move.l	#172,d5
	move.l	#$c0,d6
	move.l	#$ff,d7
	move.l	#0,a2
	jsr	-30(a6)
	rts
;--------------------------
WRITER:
	move.l	a0,mesa
write:
	add.l	#1,mesa
	move.l	mesa,a0

	cmp.b	#"e",(a0)
	beq.L	ruk

	cmp.l	#324,destx
	bne	kedi1

	move.l	#0,destx
	add.l	#18,desty
	bra	write


kedi1:	cmp.b	#"r",(a0)
	bne	kedi2

	move.l	#0,destx
	add.l	#18,desty
	bra	write

kedi2:	cmp.b	#"a",(a0)
	bne	kedi

	move.l	#0,destx
	bra	ikiz

kedi:	move.b	(a0),d3
	sub.b	#" ",d3
	mulu	#16,d3
	move.l	d3,sox

	move.l	gfxbase,a6 
	lea	fontbm,a0
	lea	destbm,a1
	move.l	sox,d0	
	move.l	#0,d1	
	move.l	destx,d2	
	move.l	desty,d3 
	move.l	#16,d4
	move.l	#16,d5
	move.l	#$c0,d6	;Minterm
	move.l	#255,d7	;Mask
	move.l	#0,a2	;Temp A
	jsr	-30(a6)	;BltBitmap
	bsr.s	itik

ikiz:	jmp	write

ruk:	move.l	#70,desty
	move.l	#0,destx
	rts

itik:	add.l	#18,destx
	rts
text:
	dc.b	" r"	
	dc.b	"------------------r"	
	dc.b	" DOUBLE DRAGON ++ r"
	dc.b	"------------------rr"
	dc.b	" THIS GAME WAS rr"
	dc.b	"  IMPORTED BY e"
text2:
	dc.b	" "
	dc.b	"rrr"


even
mesa:	dc.l	0
desty:	dc.l	70
sox:	dc.l	0
destx:	dc.l	0
;---------------------------------
SCROLL:	move.l	GfxBase,a6
	move.l	#DESTRP,a1
	move.l	#0,d0
	move.l	#1,d1
	move.l	#0,d2
	move.l	#170,d3
	move.l	#360,d4
	move.l	#203,d5
	jsr	-396(a6)
	rts

;---------------------------------
load1:	incbin	"ram:silogo.bm"
load2:	incbin	"ram:font16.bm"

DESTBM:blk.b	50,0
DESTRP:	blk.b	100,0
logoBM:blk.b	50,0
logoRP:	blk.b	100,0
fontBM:blk.b	50,0
fontRP:	blk.b	100,0
amiga : flood effect
Way be, bu resident'ın compile edip execute edince source codeunu üreten readme.txt'ine benziyor. Efekti compile edince flood efekti çıkıyor, source codeunu foruma yazınca forumda flood oluşuyor 😃