; Setting up a simple copperlist + 1 Bitplane and copy
; a single letter onto it! No (c)ode by aLpHa oNe!
; ====================================================

	section	flashtro,code_c

	move.l 4.w,a6		; Get base of exec lib
	lea gfxlib(pc),a1	; Adress of gfxlib string to a1
	jsr -408(a6)		; Call OpenLibrary()
	move.l d0,gfxbase	; Save base of graphics.library
	move.l #cop,$dff080	; Set new copperlist

	moveq #0,d3		; Main counter for colortable
	lea coltab(pc),a0	; Pointer to Colortable in A0
colors:	lea topbar+2(pc),a1	; Pointer to first Color0-Entry Top Bar in A1
	lea bottombar-2(pc),a2	; Pointer to last Color0-Entry Bottom Bar in A2
	moveq #54-1,d2		; Number of colorchanges for top/bottom bar
	move.l d3,d0		; Colortablecounter to d0
movec:	move.w (a0,d0.w),d1	; Get current colorvalue
	move.w d1,(a1)		; Move into copperlist
	move.w d1,(a2)		;
	addq.l #4,a1		; Increase to next colorentry Top Bar
	subq.l #4,a2		; Decrease to next colorentry Bottom Bar
	addq.l #2,d0		; Increase counter for colortable
	cmp.l #48*2,d0		; End of colortable reached?
	bne.b nocend		; Nah, continue
	moveq #0,d0		; Otherwise set counter to 0 again
nocend:	dbf d2, movec		; Loop

wait:	cmp.b #$ff,$dff006	; Wait for VBL
	bne.b wait		;

	addq.l #2,d3		; Increase main counter for colortable
	cmp.l #48*2,d3		; End of colortable reached?
	bne.b mouse		; Nah, continue
	moveq #0,d3		; Otherwise set main counter to 0 again
	
mouse:	btst #6,$bfe001		; Left mouse clicked ?
	bne.b colors		; No, continue loop!

	move.l gfxbase(pc),a1	; Base of graphics.library to a1
	move.l 38(a1),$dff080	; Restore old copperlist
	jsr -414(a6)		; Call CloseLibrary()
	moveq #0,d0		; Over..
	rts			; and out!

; Stuff
; *****

cop:		dc.w	$0106,$0000,$01fc,$0000		; AGA compatible
		dc.w	$0120,$0000,$0122,$0000		; Clear spriteptrs
		dc.w	$0124,$0000,$0126,$0000
		dc.w	$0128,$0000,$012a,$0000
		dc.w	$012c,$0000,$012e,$0000
		dc.w	$0130,$0000,$0132,$0000
		dc.w	$0134,$0000,$0136,$0000
		dc.w	$0138,$0000,$013a,$0000
		dc.w	$013c,$0000,$013e,$0000
		dc.w	$0100,$0200			; No Bitplane
		dc.w	$0180,$0000			; Color0 = Black

		dc.w	$500f,$fffe			; Wait VPos $50
topbar:		blk.l	54,$01800f00			; Space for 54 Color0-
							; changes
		dc.w	$0180,$0000			; Color0 = Black again

		dc.w	$f00f,$fffe			; Wait VPos $f0
		blk.l	54,$01800f00			; Space for 54 Color0-
							; changes
bottombar:	dc.w	$0180,$0000			; Color0 = Black again

		dc.w	$ffff,$fffe

coltab:		; 48 lousy colors :)

		dc.w	$f02,$f04,$f06,$f08,$f0a,$f0c,$f0e,$f0f
		dc.w	$e0f,$c0f,$a0f,$80f,$60f,$40f,$20f,$00f
		dc.w	$02f,$04f,$06f,$08f,$0af,$0cf,$0ef,$0ff
		dc.w	$0fe,$0fc,$0fa,$0f8,$0f6,$0f4,$0f2,$0f0
		dc.w	$2f0,$4f0,$6f0,$8f0,$af0,$cf0,$ef0,$ff0
		dc.w	$fe0,$fc0,$fa0,$f80,$f60,$f40,$f20,$f00
coltabend:

gfxlib:		dc.b	"graphics.library",0,0
gfxbase:	dc.l	0
0

Publication author

offline 4 days

mus@shi9

0
Comments: 1166Publics: 2809Registration: 06-03-2017

Subscribe
Notify of
guest

0 Comments
Newest
Oldest
Inline Feedbacks
View all comments
janer
18 years ago

great! … this is my fav. in the intros back then (or better said one of my favs 🙂 …)

0
bobbearing
18 years ago

note: with winuae, if $100=$0200, effect doesnt work

0
Authorization
*
*

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Registration
*
*
*

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Password generation

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

0
Would love your thoughts, please comment.x
()
x