************************************************************
*   TEKST IS ON LINE 241 EN ON LINE 254                    *
*   THIS DEMO CAN PLAY WITH A SOUNDTRACKERMOD.             *
*   BUT NOT MOORE THAN 16 INSTRUMENTS                      *
*   PS. PS. USE TNM SOUNDTRACKER OR DOC V2.0-V2.1 OR V2.2  *
*               HAVE FUN MANNY!!!!                         *
************************************************************
*                                                          *
*                   GOLDLEEK PRODUCTION                    *
*                                                          *
*                FOR MANNY OF PENDLE EUROPA                *
*                                                          *
************************************************************

eg:

; ----- graphics.library -----
scrollraster=	-396
setapen=	-342
text= 		-60
setfont= 	-66
closefont=	-78
move= 		-240
draw=		-246
initbitmap= 	-390
initrastport= 	-198
clearscreen=	-48
; ----- exec.library     -----
allocabs=	-204
openlibrary= 	-408
closelibrary= 	-414
forbid= 	-132
permit= 	-138
; ----- diskfont.library -----
openfont= 	-30

execbase= 	$04

 movem.l 	d0-d7/a0-a6,-(a7)
 ; ---- open graphics.library ----
 move.l		execbase,a6
 lea		gfxname,a1
 jsr		openlibrary(a6)
 move.l		d0,gfxbase
 
 jsr		forbid(a6)		; forbid multitasking
 move.w		#$0020,$dff096		; stop sprite DMA
 bsr.w		setupcopper		; copperliste setzen
 move.l		gfxbase,a0		; copperliste einschalten
 add.l		#$32,a0
 move.w		#$0080,$dff096
 move.l		(a0),oldcopper
 move.l		#newcopper,(a0)
 move.w		#$8080,$dff096
 move.l		gfxbase,a6		; bitmapstruktur
 lea		bitmap,a0		; initialisieren
 move.l		#$02,d0
 move.l		#352,d1
 move.l		#200,d2
 jsr		initbitmap(a6)
 move.l		#$50000,plane1
 move.l		#$52260,plane1+4
 lea		rastport,a1
 jsr		initrastport(a6)
 move.l		#bitmap,r_bitmap
 lea		rastport,a1		; Bildschirm loeschen
 jsr		clearscreen(a6)
 lea		rastport,a1		; Zeichenfarbe setzen
 move.l		#$01,d0
 jsr		setapen(a6)
 move.l		#39,d7			; linien ziehen
 clr.l		d6
 
 dloop1:
 lea		rastport,a1
 move.l		#160,d0
 move.l		#44,d1
 jsr		move(a6)
 lea		rastport,a1
 move.l		#156,d1
 move.l		d6,d0
 jsr		draw(a6)
 add.l		#8,d6
 dbra		d7,dloop1
 lea		rastport,a1
 move.l		#$02,d0			; zeichenfarbe setzen
 jsr		setapen(a6)
 move.l		#$02,d7			; text ausgeben
 lea		texttab,a5
 
 textloop1:
 lea		rastport,a1
 move.l		(a5)+,d0
 move.l		(a5)+,d1
 jsr		move(a6)
 lea		rastport,a1
 move.l		(a5)+,d0
 move.l		(a5)+,a0
 jsr		text(a6)
 dbra		d7,textloop1
 move.w		#$4000,$dff09a		; neuen irq einschalten
  move.l		$6c,oldirq
 move.l		#newirq,$6c
 move.w		#$c000,$dff09a
 
 wait:
 btst		#6,$bfe001		; linke maustaste ???
 bne.s		wait
 move.w		#$4000,$dff09a		; auf alten irq zurueck
 move.l		oldirq,$6c
 move.w		#$c000,$dff09a
 move.l		execbase,a6
 move.l		gfxbase,a1		; graphic.lib schliessen
 jsr		closelibrary(a6)
 move.l		gfxbase,a0		; alte copperliste einschalten
 add.l		#$32,a0
 move.w		#$0080,$dff096
 move.l		oldcopper,(a0)
 move.w		#$8080,$dff096
 move.l		execbase,a6		; multitasking erlauben
 jsr		permit(a6)
 move.w		#$8020,$dff096		; sprite DMA einschalten
 movem.l		(a7)+,d0-d7/a0-a6
 
 error:
 rts
 
 
 newirq:
 movem.l		d0-d7/a0-a6,-(sp)
 bsr.w		setupcopper		; goldene streifen bewegen
 lea		waitab+6,a0
 move.l		a0,a1
 add.l		ptr1,a0
 add.l		ptr2,a1
 lea		goldcol,a2
 move.l		#22,d2
 addloop2:
 move.w		(a2),(a0)
 move.w		(a2)+,(a1)
 add.l		#$08,a0
 add.l		#$08,a1
 dbra		d2,addloop2
 add.l		#$08,ptr1
 sub.l		#$08,ptr2
 cmp.l		#$00,ptr2
 bne.s		exity
 move.l		#24,ptr1
 move.l		#696,ptr2
 exity:
 move.l		gfxbase,a6		; scrolling
 lea		rastport,a1
 move.l		#$01,d0
 clr.l		d1
 move.l		#0,d2
 move.l		#32,d3
 move.l		#351,d4
 move.l		#42,d5
 jsr		scrollraster(a6)
 ;lea		rastport,a1
 ;move.l		#$01,d0
 ;clr.l		d1
 ;move.l		#0,d2
 ;move.l		#161,d3
 ;move.l		#351,d4
 ;move.l		#181,d5
 ;jsr		scrollraster(a6)
 lea		rastport,a1		; zweites scrolling
 move.l		#$01,d0
 clr.l		d1
 move.l		#0,d2
 move.l		#160,d3
 move.l		#351,d4
 move.l		#168,d5
 jsr		scrollraster(a6)
 sub.b		#$01,rows		; schon 1 zeichen gescrollt
 bne.s		continue1
 move.b		#8,rows
 move.l		gfxbase,a6
 lea		rastport,a1
 move.l		#$02,d0
 jsr		setapen(a6)
 lea		rastport,a1
 move.l		#320,d0
 move.l		#38,d1
 bsr.s		text1
 lea		rastport,a1
 move.l		#320,d0
 move.l		#167,d1
 bsr.s		text1
 ;lea		rastport,a1
 ;move.l		#320,d0
 ;move.l		#70,d1
 ;bsr.s		text1
 add.l		#$01,c_ptr
 cmp.l		#ende,c_ptr
 bne.s		continue1
 move.l		#scrollmsg,c_ptr
 continue1:
 movem.l		(sp)+,d0-d7/a0-a6
 dc.w		$4ef9
 oldirq:
 dc.l	0
 
 text1:
 jsr		move(a6)		; naechstes zeichen aus scroll
 lea		rastport,a1		; text ausgeben
 move.l		c_ptr,a0
 move.l		#1,d0
 jsr		text(a6)
 rts
 
 setupcopper:
 lea		waitab,a0
 move.l		#111,d0
 move.w		#$5809,d1
 addloop1:
 move.w		d1,(a0)+		; WAIT
 move.w		#$fffe,(a0)+		; alle bits beachten
 move.w		#$0182,(a0)+		; Farbe 1
 move.w		#$0000,(a0)+		; schwarz
 add.w		#$0100,d1		; naechste rasterzeile
 dbra		d0,addloop1
 rts
 section copper,code_c
 goldcol:
 dc.w	$420,$530,$640,$750,$860,$970,$a80,$b90,$ca0,$db1,$ec2,$fd3
 dc.w	$ec2,$db1,$ca0,$b90,$a80,$970,$860,$750,$640,$530,$420
 
 newcopper:
 dc.w $0180,$0000,$0182,$0fff
 dc.w $0184,$000f,$0186,$0fff
 dc.w $008e,$2c81,$0090,$f4c1
 dc.w $0092,$0038,$0094,$00d0
 dc.w $0108,$0004,$010a,$0004
 dc.w $0102,$0000,$0104,$0000
 dc.w $0100,$2200,$00e0,$0005
 dc.w $00e2,$0000,$00e4,$0005
 dc.w $00e6,$2260
 dc.w $4809,$fffe,$0180,$0ff0
 dc.w $4a09,$fffe,$0180,$0bb0
 dc.w $5509,$fffe,$0180,$0880
 dc.w $5609,$fffe,$0184,$0f83
 dc.w $5709,$fffe,$0180,$0000
 waitab:
 dcb.w 448,0	
 dc.w $c909,$fffe,$0180,$00f0
 dc.w $ca09,$fffe,$0184,$0f00
 dc.w $cb09,$fffe,$0180,$00b0
 dc.w $d609,$fffe,$0180,$0080
 dc.w $d809,$fffe,$0180,$0000
  dc.w $ffff,$fffe
 even
 scrollmsg:
 dc.b "The FATBOYS presenting annother new product "
 dc.b "it's calling seka and this time it's in the ram "
 dc.b "and now some greetings......"
 ende:
 dc.b	0
 even
 itext:
 DC.B	"GOLDLEEK & THE HUNTER"
 itext2:
 DC.B	"Present in 1990"
 itext3:
 DC.B	"NAAM VAN HET PROGRAMMA"
 even
 gfxbase:
 dc.l 	0
  bitmap:
 dcb.w 	4,0
 plane1:
 dcb.l 	10,0
 rastport:
 dcb.l 	1,0
 r_bitmap:
 dcb.l 	26,0
 oldcopper:
 dc.l 	0
 gfxname:
 dc.b 	"graphics.library",0
 rows:
 dc.b	2
 even
 c_ptr:
 dc.l	scrollmsg
 ptr1:
 dc.l	24
 ptr2:
 dc.l	696
 texttab:
 dc.l	76,70,21,itext,100,100,15,itext2,74,130,22,itext3

