
		section	public,code_p

		jmp	s

		include	"osout.s"

Music:		equ	1			; 1=Play music

Final:		equ	1			; 1=Save to disk

Title:
		dc.b	"        ### DECADENCE 004! ###",0

Credits:
		dc.b	"############",0 
		dc.b	0
		dc.b	0
		dc.b	"  13 12 92",0
		dc.b	0
		dc.b	0
		dc.b	" IF YOU ARE",0
		dc.b	"TOUGH ENOUGH",0
		dc.b	0
		dc.b	0
		dc.b	" CONTACT US",0
		dc.b	0
		dc.b	0
		dc.b	"  DIGITAL!",0
		dc.b	"ROTILANT. 11",0
		dc.b	"83100 LIPERI",0
		dc.b	"     SF",0
		dc.b	0
		dc.b	0
		dc.b	"############",0 
		dc.b	-1

Nrofiles = 3		;NUMBER OF FILES

Text:							; NO MORE THAN 20!
		dc.b	'     DISKNET DEMO     ',0
		dc.b	'   DIGGESTIVE INTRO   ',0
		dc.b	'   OLDIE BUT GOLDIE   ',0
		dc.b	0,0,0
		dc.b	'   LIVING CHAOS WHQ',0,0
		dc.b	'    44 670 730 696',0
		dc.b	-1
		even


ScrollPoint:	dc.l	ScrollText

ScrollText:


	dc.b	"                           "
	dc.b	"THE DARK SERVANTS OF LUSIFER ARE HERE... DUNCAN AND "
	DC.B	"KEVIN "
	DC.B	"OF DIGITAL DELIVER YOU ANOTHER PIECE OF # DECADENCE # FROM "
	dc.b	"THE ANALOGY PARTY, WE WON THE DEMOCOMPO "
	dc.b	"WITH OUR NEW # DAY OF RECKONING # DEMO BY SPOOK!!! "
	DC.B	"FUCKING GREAT INDEED, AS WE DID NOT GET ANY PRIZE FOR THE COMPO, "
	DC.B	"BECAUSE ALL MONEY WAS USED TO PAY THE BROKEN GLASSES THERE!!! "
	dc.b	"AND NOW CREDITS FOR THIS MENU, CODED BY SPOOK AND "
	DC.B	"TUNE BY GRIM / DIGITAL. "
	dc.b	"HEY ALL! VOTE THIS PACK FOR EUROCHART BY PLACING US IN THE BEST "
	DC.B	"PACKING GROUPS AS WELL TO THE BEST OVERALL GROUPS. AND "
	DC.B	"SEND US FILLED VOTESHEETS NOW, BECAUSE WE WILL "
	dc.B	"GIVE A SURPRISE TO THE FIRST TEN SENDERS...   "
	DC.B	"OUR REGARDS TO THE FOLLOWING...   "
	DC.B	"ADEPT   #   "
	DC.B	"AGNOSTIC FRONT   #   "
	DC.B	"ALCATRAZ   #   "
	DC.B	"ALPHA FLIGHT   #   "
	DC.B	"ANARCHY   #   "
	DC.B	"ANDROMEDA   #   "
	DC.B	"COMPLEX   #   "
	DC.B	"DAMONES   #   "
	DC.B	"DESIRE   #   "
	DC.B	"DUAL CREW   #   "
	DC.B	"END OF CENTURY 1999   #   "
	DC.B	"EON   #   "
	DC.B	"ELYSION   #   "
	DC.B	"EQUINOX   #   "
	DC.B	"FAIRLIGHT   #   "
	DC.B	"FRAXION   #   "
	DC.B	"KEFRENS   #   "
	DC.B	"LEGEND   #   " 
	DC.B	"PALACE   #   "
	DC.B	"PARADISE   #   "
	DC.B	"REBELS   #   "
	DC.B	"SANITY   #   "
	DC.B	"SCOOPEX   #   "
	DC.B	"SHINING 8   #   "
	DC.B	"SKID ROW   #   "
	DC.B	"SLIPSTREAM   #   "
	DC.B	"SONIC   #   "
	DC.B	"STATIC BYTES   #   "
	DC.B	"SUPPLEX   #   "
	DC.B	"TRSI   #   "
	DC.B	"WIZZCAT   #   "
	DC.B 	"ALL DIGITAL MEMBERS WORLDWIDE!   "
	dc.b	"NOTHING MORE TO SAY...   "
	dc.b	"DUNCAN "
	dc.b	"AND KEVIN 1992 (C) # DECADENCE # IT HAS BECOME A HABIT!!!  "
	DC.B	" ...SCROLL RESTART...                                    "
	DC.B	"                                                       ",0
		even

File_List:	dc.l	File01
		dc.l	File02
		dc.l	File03
		dc.l	File04
		dc.l	File05
		dc.l	File06
		dc.l	File07
		dc.l	File08
		dc.l	File09
		dc.l	File10
		dc.l	File11
		dc.l	File12
		dc.l	File13
		dc.l	File14
		dc.l	File15
		dc.l	File16
		dc.l	File17
		dc.l	File18
		dc.l	File19
		dc.l	File20

File01:		dc.b	"Digital-01",0
File02:		dc.b	"Digital-02",0
File03:		dc.b	"Digital-03",0
File04:		dc.b	"Digital-04",0
File05:		dc.b	"Digital-05",0
File06:		dc.b	"Digital-06",0
File07:		dc.b	"Digital-07",0
File08:		dc.b	"Digital-08",0
File09:		dc.b	"Digital-09",0
File10:		dc.b	"10",0
File11:		dc.b	"11",0
File12:		dc.b	"12",0
File13:		dc.b	"13",0
File14:		dc.b	"14",0
File15:		dc.b	"15",0
File16:		dc.b	"16",0
File17:		dc.b	"17",0
File18:		dc.b	"18",0
File19:		dc.b	"19",0
File20:		dc.b	"20",0

		even

LenTab:		dcb.w	20,0	; Max. 20!

		dcb.w	400,0

s:		move.l	#Pstart,$80.w		; Enter Supervisor mode
		trap	#0

		if	Final=0
		rts
		endif

loader:		move.l	$4,a6
		lea	dos_lib,a1
		jsr	-408(a6)
		move.l	d0,dos_base
		move.l	d0,a6

		clr.l	d0

		move.w	loadstore,d0
		add.w	d0,d0
		add.w	d0,d0

		lea	File_List(pc),a0
		move.l	(a0,d0.w),d1
		clr.l	d2
		clr.l	d3
		jsr	-222(a6)

		move.l	$4,a6
		move.l	dos_base,a1
		jsr	-414(a6)

		jmp	s

dos_lib:	dc.b	"dos.library"
		even
dos_base:	dc.l 0
		even

Pstart:		jsr	KillOS			; Get rid of the Nasty OS

		lea	LenTab,a0
		move.w	#20-1,d7
.ll:		move.w	#0,(a0)+
		dbf	d7,.ll

		move.l	#-1,AdStore
		move.w	#-1,LoopStore

		move.l	sp,StackStore		; Save Stack
		move.l	usp,a0			; Save USP (I use it as a
		move.l	a0,USPStore		; screen base register)
		move.l	#s,sp			; Repoint

		move.l	#ScrollText,ScrollPoint

		move.w	#$83f0,$dff096		; Most DMA on (No Nasty)
		move.w	#$000f,$dff096

		move.w	#$c020,$dff09a		; Enable Level 3
		move.l	#new_int,$6c.w		; Point it up

		lea	Cheque,a0
		lea	Check,a1
		move.w	#((End-Cheque)/4)-1,d0
.loop:		move.l	(a0)+,(a1)+
		dbf	d0,.loop

		lea	l0,a0
		move.l	#logo,d0
		move.w	#4-1,d1
.lip2:		move.w	d0,2(a0)
		swap	d0
		move.w	d0,6(a0)
		swap	d0
		add.l	#44*36,d0
		lea	8(a0),a0
		dbf	d1,.lip2

		lea	spr0,a0
;		move.l	#sprite0,d0	;set pointer
;		move.w	d0,6(a0)
;		swap	d0
;		move.w	d0,2(a0)
;		lea	8(a0),a0
;		move.l	#sprite1,d0
;		move.w	d0,6(a0)
;		swap	d0
;		move.w	d0,2(a0)	
		lea	8(a0),a0

		move.w	#6-1,d7
		move.l	#nosprite,d0
.lip:		move.w	d0,6(a0)
		swap	d0
		move.w	d0,2(a0)
		swap	d0
		lea	8(a0),a0
		dbf	d7,.lip

		lea	Plane1,a0
		move.w	#((44*256*3)/4)-1,d0
.lurp:		move.l	#0,(a0)+
		dbf	d0,.lurp

		lea	Plane1+(44*48)+2,a0
		move.w	#(4*22)-1,d0
.loop2:
		move.l	#$55555555,(a0)		;create %1010-plane
		move.l	#$55555555,4(a0)
		move.l	#$55555555,8(a0)
		move.l	#$55555555,12(a0)
		move.l	#$55555555,16(a0)
		move.l	#$55555555,20(a0)

		move.l	#$aaaaaaaa,44(a0)
		move.l	#$aaaaaaaa,44+4(a0)
		move.l	#$aaaaaaaa,44+8(a0)
		move.l	#$aaaaaaaa,44+12(a0)
		move.l	#$aaaaaaaa,44+16(a0)
		move.l	#$aaaaaaaa,44+20(a0)

		lea	88(a0),a0
		dbf	d0,.loop2



		lea	Plane2+(44*48)+2,a0	;create frames
		move.w	#(8*22)-3,d0

		move.l	#$ffffffff,(a0)
		move.l	#$ffffffff,4(a0)
		move.l	#$ffffffff,8(a0)
		move.l	#$ffffffff,12(a0)
		move.l	#$ffffffff,16(a0)
		move.l	#$ffffffff,20(a0)
		lea	44(a0),a0
.loop3:
		move.w	#$8000,(a0)
		move.w	#$0001,22(a0)

		lea	44(a0),a0
		dbf	d0,.loop3

		move.l	#$ffffffff,(a0)
		move.l	#$ffffffff,4(a0)
		move.l	#$ffffffff,8(a0)
		move.l	#$ffffffff,12(a0)
		move.l	#$ffffffff,16(a0)
		move.l	#$ffffffff,20(a0)


var:

		lea	Plane1+(44*48)+28,a0
		move.w	#(4*22)-1,d0
.loop2:
		move.l	#$55555555,(a0)
		move.l	#$55555555,4(a0)
		move.l	#$55555555,8(a0)
		move.w	#$5555,12(a0)

		move.l	#$aaaaaaaa,44(a0)
		move.l	#$aaaaaaaa,44+4(a0)
		move.l	#$aaaaaaaa,44+8(a0)
		move.w	#$aaaa,44+12(a0)

		lea	88(a0),a0
		dbf	d0,.loop2



		lea	Plane2+(44*48)+28,a0
		move.w	#(8*22)-3,d0

		move.l	#$ffffffff,(a0)
		move.l	#$ffffffff,4(a0)
		move.l	#$ffffffff,8(a0)
		move.w	#$ffff,12(a0)
		lea	44(a0),a0
.loop3:
		move.w	#$8000,(a0)
		move.w	#$0001,12(a0)

		lea	44(a0),a0
		dbf	d0,.loop3

		move.l	#$ffffffff,(a0)
		move.l	#$ffffffff,4(a0)
		move.l	#$ffffffff,8(a0)
		move.w	#$ffff,12(a0)






		lea	Plane2+(44*56)+3,a0
		lea	Text,a1
		lea	LenTab,a3

.loop1b:	move.l	a0,-(sp)

.loop1:		moveq	#0,d0
		move.b	(a1)+,d0
		beq.s	.done
		addq.w	#1,(a3)
		sub.w	#32,d0
		divu	#40,d0
		swap	d0
		lea	Font,a2
		add.w	d0,a2
		swap	d0
		mulu	#40*8,d0
		add.l	d0,a2

		move.b	(a2),(a0)
		move.b	40*1(a2),44*1(a0)
		move.b	40*2(a2),44*2(a0)
		move.b	40*3(a2),44*3(a0)
		move.b	40*4(a2),44*4(a0)
		move.b	40*5(a2),44*5(a0)
		move.b	40*6(a2),44*6(a0)
		;move.b	40*7(a2),44*7(a0)

		lea	1(a0),a0
		bra.s	.loop1

.done:		move.l	(sp)+,a0
		lea	44*8(a0),a0

		lea	2(a3),a3

		tst.b	(a1)
		bmi.s	.done2

		bra.s	.loop1b

.done2:





var2:

		lea	Plane1+(44*8)+2,a0
		move.w	#(4*3)-1,d0
.loop2:
		move.l	#$55555555,(a0)
		move.l	#$55555555,4(a0)
		move.l	#$55555555,8(a0)
		move.l	#$55555555,12(a0)
		move.l	#$55555555,16(a0)
		move.l	#$55555555,20(a0)
		move.l	#$55555555,24(a0)
		move.l	#$55555555,28(a0)
		move.l	#$55555555,32(a0)
		move.l	#$55555555,36(a0)

		move.l	#$aaaaaaaa,44(a0)
		move.l	#$aaaaaaaa,44+4(a0)
		move.l	#$aaaaaaaa,44+8(a0)
		move.l	#$aaaaaaaa,44+12(a0)
		move.l	#$aaaaaaaa,44+16(a0)
		move.l	#$aaaaaaaa,44+20(a0)
		move.l	#$aaaaaaaa,44+24(a0)
		move.l	#$aaaaaaaa,44+28(a0)
		move.l	#$aaaaaaaa,44+32(a0)
		move.l	#$aaaaaaaa,44+36(a0)

		lea	88(a0),a0
		dbf	d0,.loop2



		lea	Plane2+(44*8)+2,a0
		move.w	#(8*3)-3,d0

		move.l	#$ffffffff,(a0)
		move.l	#$ffffffff,4(a0)
		move.l	#$ffffffff,8(a0)
		move.l	#$ffffffff,12(a0)
		move.l	#$ffffffff,16(a0)
		move.l	#$ffffffff,20(a0)
		move.l	#$ffffffff,24(a0)
		move.l	#$ffffffff,28(a0)
		move.l	#$ffffffff,32(a0)
		move.l	#$ffffffff,36(a0)
		lea	44(a0),a0
.loop3:
		move.w	#$8000,(a0)
		move.w	#$0001,38(a0)

		lea	44(a0),a0
		dbf	d0,.loop3

		move.l	#$ffffffff,(a0)
		move.l	#$ffffffff,4(a0)
		move.l	#$ffffffff,8(a0)
		move.l	#$ffffffff,12(a0)
		move.l	#$ffffffff,16(a0)
		move.l	#$ffffffff,20(a0)
		move.l	#$ffffffff,24(a0)
		move.l	#$ffffffff,28(a0)
		move.l	#$ffffffff,32(a0)
		move.l	#$ffffffff,36(a0)






		lea	Plane2+(44*16)+3,a0
		lea	Title,a1

.loop1:		moveq	#0,d0
		move.b	(a1)+,d0
		beq.s	.done
		sub.w	#32,d0
		divu	#40,d0
		swap	d0
		lea	Font,a2
		add.w	d0,a2
		swap	d0
		mulu	#40*8,d0
		add.l	d0,a2

		move.b	(a2),(a0)
		move.b	40*1(a2),44*1(a0)
		move.b	40*2(a2),44*2(a0)
		move.b	40*3(a2),44*3(a0)
		move.b	40*4(a2),44*4(a0)
		move.b	40*5(a2),44*5(a0)
		move.b	40*6(a2),44*6(a0)

		lea	1(a0),a0
		bra.s	.loop1

.done:






		lea	Plane2+(44*56)+29,a0
		lea	Credits,a1

.loop2g:	move.l	a0,-(sp)

.loop1g:	moveq	#0,d0
		move.b	(a1)+,d0
		beq.s	.doneg
		sub.w	#32,d0
		divu	#40,d0
		swap	d0
		lea	Font,a2
		add.w	d0,a2
		swap	d0
		mulu	#40*8,d0
		add.l	d0,a2

		move.b	(a2),(a0)
		move.b	40*1(a2),44*1(a0)
		move.b	40*2(a2),44*2(a0)
		move.b	40*3(a2),44*3(a0)
		move.b	40*4(a2),44*4(a0)
		move.b	40*5(a2),44*5(a0)
		move.b	40*6(a2),44*6(a0)

		lea	1(a0),a0
		bra.s	.loop1g
.doneg:
		move.l	(sp)+,a0
		tst.b	(a1)
		bmi.s	.done2g

		lea	44*8(a0),a0

		bra.s	.loop2g

.done2g:





vari:
		lea	Mask+(44*48)+2+44,a0
		move.w	#(8*22)-3,d0
.loop2:
		move.l	#$7fffffff,(a0)
		move.l	#-1,4(a0)
		move.l	#-1,8(a0)
		move.l	#-1,12(a0)
		move.l	#-1,16(a0)
		move.l	#$fffffffe,20(a0)

		lea	44(a0),a0
		dbf	d0,.loop2

		lea	Mask+(44*48)+28+44,a0
		move.w	#(8*22)-3,d0
.loop3:
		move.l	#$7fffffff,(a0)
		move.l	#-1,4(a0)
		move.l	#-1,8(a0)
		move.w	#$fffe,12(a0)

		lea	44(a0),a0
		dbf	d0,.loop3

		lea	Mask+(44*8)+2+44,a0
		move.w	#(8*3)-3,d0
.loop4:
		move.l	#$7fffffff,(a0)
		move.l	#-1,4(a0)
		move.l	#-1,8(a0)
		move.l	#-1,12(a0)
		move.l	#-1,16(a0)
		move.l	#-1,20(a0)
		move.l	#-1,24(a0)
		move.l	#-1,28(a0)
		move.l	#-1,32(a0)
		move.l	#$fffffffe,36(a0)

		lea	44(a0),a0
		dbf	d0,.loop4











		if	music=1
		jsr	mt_init
		bset	#1,$bfe001		; Filter on
		endif

*************************************************
*						*
* Chess Funk + Scroller + Mouse + Dots		*
*						*
*************************************************

First_Part:
.nes:		btst	#6,$dff002
		bne.s	.nes

		move.b	#0,fly
.ft1:		tst.b	fly
		beq.s	.ft1

		move.l	#Copper2,$dff080
		move.w	#0,$dff088

		move.w	#$0400,$dff096		; Nasty Off!

		move.b	#0,fly
.ft2:		tst.b	fly
		beq.s	.ft2
		move.b	#0,fly
		move.w	#0,Timer

Intro6b:	tst.b	fly
		beq.w	Intro6b
		move.b	#0,fly

		bsr	screen_clear

		bsr	Track_Mouse
		move.w	CurrX,d0
		move.w	CurrY,d1
		bsr	Pointer

		move.l	ColPoint2,a3
		lea	Colours1-Colours2(a3),a6

		move.w	Timer,d0
		cmp.w	#36,d0
		bgt.s	.great
		and.w	#1,d0
		beq.s	.great
		cmp.l	#Colours2,ColPoint2
		beq.s	.great
		sub.l	#19*2,ColPoint2

.great:
;		move.w	Timer,d0
;		cmp.w	#500-36,d0
;		blt.s	.less
;		and.w	#1,d0
;		beq.s	.less
;		cmp.l	#Colours2+(19*16*2),ColPoint2
;		beq.s	.less
;		add.l	#19*2,ColPoint2
;
;		move.l	CPoint,a0
;		move.w	-(a0),d0
;		move.l	a0,CPoint
;		move.w	d0,col1+2
;		move.w	d0,col1+6
;
;.less:


		;lea	Colours2,a3
		lea	Sizes,a4

		move.w	#$182,d6		; Colour Reg
		move.w	#$180,d4
		move.w	#0,d5

		lea	MulTab,a5

		move.l	SinPoint2,a2
		add.w	#10,a2
		cmp.l	#SinEnd,a2
		blo.s	.lo
		sub.l	#SinEnd-Sinus,a2
.lo:		move.l	a2,SinPoint2

		move.l	SinPoint1,a0
		sub.w	#6,a0
		cmp.l	#Sinus,a0
		bhi.s	.lo2
		add.l	#SinEnd-Sinus,a0
.lo2:		move.l	a0,SinPoint1

		lea	Modulos+6,a1
		move.w	#36-1,d7
		move.w	(a0)+,d0
		add.w	(a2),d0
		subq.w	#4,a2

		move.w	d0,d1

		;add.w	d1,d1
		;move.w	(a5,d1.w),d1
		mulu	#44,d1
		add.l	#Check,d1
		move.w	d1,plane0+2
		swap	d1
		move.w	d1,plane0+6

.loop:		move.w	(a0)+,d1
		add.w	(a2)+,d1

		add.w	d1,d1
		move.w	(a5,d1.w),(a1)		; Modulo
		move.w	(a3,d1.w),d3
		add.w	(a4,d1.w),d5		; add size???
		cmp.w	#2500,d5
		blt.s	.lts
		sub.w	#2500,d5
		eor.w	#2,d6
		eor.w	#2,d4
.lts:		move.w	d6,2(a1)		; register
		move.w	d4,6(a1)
;		move.w	#0,8(a1)

		move.w	d3,4(a1)		; Colour
		move.w	(a6,d1.w),d3
		move.w	d3,8(a1)

		lea	16(a1),a1
		dbf	d7,.loop



		lea	Modulosb+6,a1
		move.w	#60-1,d7
		move.w	(a0)+,d0
		add.w	(a2),d0
		subq.w	#4,a2

		move.w	d0,d1

		;add.w	d1,d1
		;move.w	(a5,d1.w),d1
		mulu	#44,d1
		add.l	#Check,d1
		move.w	d1,plane0+2
		swap	d1
		move.w	d1,plane0+6

.loopb9:	move.w	(a0)+,d1
		add.w	(a2)+,d1

		add.w	d1,d1
		move.w	(a5,d1.w),(a1)		; Modulo
		move.w	(a3,d1.w),d3
		add.w	(a4,d1.w),d5		; add size???
		cmp.w	#2500,d5
		blt.s	.ltsb9
		sub.w	#2500,d5
		eor.w	#2,d6
		eor.w	#2,d4
.ltsb9:		move.w	d6,2(a1)		; register
		move.w	d4,6(a1)
;		move.w	#0,8(a1)

		move.w	d3,4(a1)		; Colour
		move.w	(a6,d1.w),d3
		move.w	d3,8(a1)

		lea	16(a1),a1
		dbf	d7,.loopb9





		bsr	Check_Box




		move.w	#(223-36-60)-1,d7
		move.w	(a0)+,d0
		add.w	(a2),d0
		subq.w	#4,a2

		move.w	d0,d1

		;add.w	d1,d1
		;move.w	(a5,d1.w),d1
		mulu	#44,d1
		add.l	#Check,d1
		move.w	d1,plane0+2
		swap	d1
		move.w	d1,plane0+6

.loopb8:	move.w	(a0)+,d1
		add.w	(a2)+,d1

		add.w	d1,d1
		move.w	(a5,d1.w),(a1)		; Modulo
		move.w	(a3,d1.w),d3
		add.w	(a4,d1.w),d5		; add size???
		cmp.w	#2500,d5
		blt.s	.ltsb8
		sub.w	#2500,d5
		eor.w	#2,d6
		eor.w	#2,d4
.ltsb8:		move.w	d6,2(a1)		; register
		move.w	d4,6(a1)
;		move.w	#0,8(a1)

		move.w	d3,4(a1)		; Colour
		move.w	(a6,d1.w),d3
		move.w	d3,8(a1)

		lea	16(a1),a1
		dbf	d7,.loopb8










		lea	Modulos2+6,a1

		move.w	#$37-1,d7

.loop2:		move.w	(a0)+,d1
		add.w	(a2)+,d1

		add.w	d1,d1
		move.w	(a5,d1.w),(a1)		; Modulo
		move.w	(a3,d1.w),d3
		add.w	(a4,d1.w),d5		; add size???
		cmp.w	#2500,d5
		blt.s	.lts2
		sub.w	#2500,d5
		eor.w	#2,d6
		eor.w	#2,d4
.lts2:		move.w	d6,2(a1)		; register
		move.w	d4,6(a1)
;		move.w	#0,8(a1)

		move.w	d3,4(a1)		; Colour
		move.w	(a6,d1.w),d3
		move.w	d3,8(a1)

		lea	16(a1),a1
		dbf	d7,.loop2






		bsr	Dots

		bsr	Scroller

		bsr	swap_screens

;		move.w	#$ff0,$dff180		; Time 4 Chess!!!
;		move.w	#$ff0,$dff182

		btst	#6,$bfe001
		bne.w	intro6b

		tst.w	LoopStore
		bmi.w	intro6b

		bra	end_demo

scruv:		dc.w	0


		rsreset
DXPos:		rs.l	1
DYPos:		rs.l	1
XSpeed:		rs.l	1
Gravity:	rs.l	1
DSize:		rs.w	0


Data:
;		dcb.b	DSize*10,0

.x:		set	17+8

		rept	60
		dc.l	.x<<16,200<<16,0<<16,0<<16
.x:		set	.x+3
		endr

		dc.w	-1



*************************************************
*                     			        *
* Scroll Routine!!!!!!!!!!!!			*
*                     			        *
*************************************************

Scroller:	movem.l	d0-d7/a0-a6,-(sp)

		move.w	#$8400,$dff096
		move.l	#Plane2+(44*36),$dff050
		move.l	#Plane2+(44*36)-2,$dff054
		move.l	#-1,$dff044
		move.l	#0,$dff064
		move.l	#$e9f00000,$dff040
		move.w	#8<<6+22,$dff058
		nop
		move.w	#$0400,$dff096

		move.w	#$8400,$dff096
		move.l	#Plane2+(44*36),$dff050
		move.l	#Plane1+(44*37),$dff054
		move.l	#-1,$dff044
		move.l	#0,$dff064
		move.l	#$19f00000,$dff040
		move.w	#8<<6+22,$dff058
		nop
		move.w	#$0400,$dff096

		move.w	scruv,d0
		addq.w	#1,d0
		and.w	#3,d0
		move.w	d0,scruv
		tst.w	d0
		bne.s	.negi
		move.l	ScrollPoint,a0
		moveq	#0,d0
		move.b	(a0)+,d0
		bne.s	.ne
		lea	ScrollText,a0
		move.b	(a0)+,d0
.ne:		move.l	a0,ScrollPoint
		sub.w	#32,d0
		lea	Font,a0
		lea	Plane2+(44*36)+43,a1
		divu	#40,d0
		swap	d0
		add.w	d0,a0
		swap	d0
		mulu	#40*8,d0
		add.l	d0,a0

		move.b	(a0),(a1)
		move.b	40*1(a0),44*1(a1)
		move.b	40*2(a0),44*2(a1)
		move.b	40*3(a0),44*3(a1)
		move.b	40*4(a0),44*4(a1)
		move.b	40*5(a0),44*5(a1)
		move.b	40*6(a0),44*6(a1)
		move.b	40*7(a0),44*7(a1)

.negi:
		movem.l	(sp)+,d0-d7/a0-a6
		rts



*************************************************
*                     			        *
* Dot Routines.					*
*                     			        *
*************************************************

Dots:
;		move.w	#$0ff,$dff180
;		move.w	#$0ff,$dff182

		move.l	Current(pc),a0
		lea	Mask,a2
		lea	Data,a1

.loop:		move.w	DXPos(a1),d0
		bmi.w	.exit
		move.w	DYPos(a1),d1

		mulu	#44,d1
		move.w	d0,d2
		lsr.w	#3,d0
		add.w	d0,d1
		not.w	d2
		and.w	#7,d2
		bset.b	d2,(a0,d1.w)	; Plot Pixel!

		move.l	DXPos(a1),d6
		move.l	DYPos(a1),d7

		move.l	DXPos(a1),d0
		add.l	XSpeed(a1),d0
		move.l	d0,DXPos(a1)

		move.w	DXPos(a1),d0
		move.w	DYPos(a1),d1

		mulu	#44,d1
		move.w	d0,d2
		lsr.w	#3,d0
		add.w	d0,d1
		not.w	d2
		and.w	#7,d2

		btst.b	d2,(a2,d1.w)	; Are we into scenary???
		bne.s	.none2

		move.l	d6,DXPos(a1)

		move.l	XSpeed(a1),d3
		neg.l	d3
		move.l	d3,XSpeed(a1)

;		tst.w	Gravity
;		bne.s	.ok1
		bsr	new_dot2
;.ok1:
.none2:

		move.l	DYPos(a1),d0
		add.l	Gravity(a1),d0
		move.l	d0,DYPos(a1)



		move.w	DXPos(a1),d0
		move.w	DYPos(a1),d1

		mulu	#44,d1
		move.w	d0,d2
		lsr.w	#3,d0
		add.w	d0,d1
		not.w	d2
		and.w	#7,d2

		btst.b	d2,(a2,d1.w)	; Are we into scenary???
		bne.s	.none

		move.l	d7,DYPos(a1)

		move.l	Gravity(a1),d3
		neg.l	d3
		move.l	d3,Gravity(a1)
		add.l	d3,d0
		asr.l	#1,d3
		asr.l	#1,d3
		asr.l	#1,d3
		sub.l	d3,Gravity(a1)

		cmp.w	#1,Gravity(a1)
		bgt.s	.ok2
		bsr	new_dot
.ok2:
.none:

		move.l	Gravity(a1),d0		; Add Gravity
		add.l	#$00001000,d0
		move.l	d0,Gravity(a1)

		lea	DSize(a1),a1
		bra.w	.loop
.exit:
		rts


new_dot:
		bsr	random
		move.l	seed1,d0
		and.l	#$0000ffff,d0
		ext.l	d0
		asl.l	#3,d0
		move.l	d0,Gravity(a1)

		bsr	random
		move.l	seed1,d0
		and.l	#$0000ffff,d0
		ext.l	d0
		asl.l	#2,d0
		move.l	d0,XSpeed(a1)

		rts



new_dot2:
		bsr	random
		move.l	seed1,d0
		and.l	#$0000ffff,d0
		ext.l	d0
		asl.l	#2,d0
		move.l	d0,XSpeed(a1)

		rts



*************************************************
*						*
* Random Routine. Seed1 Contains number.	*
*						*
*************************************************

random:		move.l	seed1,d0
		move.l	seed2,d1
		move.l	seed3,d2
		ror.l	#1,d1
		rol.l	#1,d2
		add.l	d1,seed2
		add.l	d2,seed3
		add.l	d1,d0
		add.l	d2,d0
		add.l	d0,seed1
		rts

seed1:		dc.l	$127687df
seed2:		dc.l	$48dcab71
seed3:		dc.l	$a9fb6c37



*************************************************
*                     			        *
* Swap Screen Pointers				*
*                     			        *
*************************************************

Swap_screens:	move.l	Current,d0
		move.l	Next,Current
		move.l	d0,Next

		move.w	d0,swapsi+2
		swap	d0
		move.w	d0,swapsi+6

		rts



*************************************************
*                     			        *
* Check and draw any boxes the mouse is over.	*
* x=128,y=70					*
*                                               *
*************************************************

Check_Box:	movem.l	d0-d7/a0-a6,-(sp)

.bw:		btst	#6,$dff002
		bne.s	.bw

		move.l	AdStore,a1
		move.w	LoopStore,d2
		bmi.s	.no
.bloop2:
		eor.b	#-1,(a1)
		eor.b	#-1,44*1(a1)
		eor.b	#-1,44*2(a1)
		eor.b	#-1,44*3(a1)
		eor.b	#-1,44*4(a1)
		eor.b	#-1,44*5(a1)
		eor.b	#-1,44*6(a1)
		eor.b	#-1,44*7(a1)

		lea	1(a1),a1
		dbf	d2,.bloop2
.no:
		move.w	#-1,loopstore

		move.w	CurrX,d0
		sub.w	#128+8,d0
;		bmi.w	.out
		move.w	CurrY,d1
		sub.w	#68+56,d1
		bmi.w	.out
		cmp.w	#22*8,d0
;		bgt.w	.out
		cmp.w	#20*8,d1
		bgt.w	.out

		lea	LenTab,a0
		lsr.w	#2,d1
		and.w	#$fffe,d1
		move.w	(a0,d1.w),d2
		beq.w	.out
		lsl.w	#3,d2
		cmp.w	d2,d0
		bgt.w	.out

		lea	Plane2+(44*56)+3,a1
		lsr.w	#1,d1
		move.w	d1,loadstore
		mulu	#44*8,d1
		add.w	d1,a1

		lsr.w	#3,d2
		subq.w	#1,d2

		move.l	a1,adstore
		move.w	d2,loopstore

.bloop:
		eor.b	#-1,(a1)
		eor.b	#-1,44*1(a1)
		eor.b	#-1,44*2(a1)
		eor.b	#-1,44*3(a1)
		eor.b	#-1,44*4(a1)
		eor.b	#-1,44*5(a1)	;turn up all colors
		eor.b	#-1,44*6(a1)
		eor.b	#-1,44*7(a1)

		lea	1(a1),a1
		dbf	d2,.bloop

.out:		movem.l	(sp)+,d0-d7/a0-a6
		rts

AdStore:	dc.l	-1
LoopStore:	dc.w	-1
loadstore:	dc.w	-1



*************************************************
*                     			        *
* Clear Plane 3 over the selection box.		*
*                                               *
*************************************************

Screen_Clear:	move.l	Current(pc),a0
		move.w	#0,$dff066		; Modulo
		move.l	#0,$dff044		; FWM/LWM
		move.l	#$01000000,$dff040	; Minterms (1 Destination)
		move.l	a0,$dff054		; Put Destination in
		move.w	#256<<6+22,$dff058	; Size & Start

		rts

;Screen_Clear:	move.l	Current(pc),a0
;		lea	(44*48)+2(a0),a0	; Destination
;		move.w	#20,$dff066		; Modulo
;		move.l	#0,$dff044		; FWM/LWM
;		move.l	#$01000000,$dff040	; Minterms (1 Destination)
;		move.l	a0,$dff054		; Put Destination in
;		move.w	#(22*8)<<6+12,$dff058	; Size & Start
;
;		rts



*************************************************
*                     			        *
* Put Pointer Position into Sprites!!!		*
*                                               *
*************************************************

Pointer:	moveq	#0,d7
		move.w	d0,d2
		lsr.w	#1,d2
		move.w	d2,d7
		move.w	d1,d2		; HStart (High 8)
		lsl.w	#8,d2
		or.w	d2,d7		; VStart (Low 8)
		swap	d7
		move.w	d1,d2
		move.w	d2,d3
		add.w	#20,d2
		move.w	d2,d4
		and.w	#$ff,d2
		lsl.w	#8,d2
		move.w	d2,d7		; VStop (Low 8)
		and.w	#$0100,d3
		lsr.w	#6,d3
		or.w	d3,d7		; VStart (High Bit)
		and.w	#$0100,d4
		lsr.w	#7,d4
		or.w	d4,d7		; VStop (High Bit)
		and.w	#$0001,d0
		or.w	d0,d7		; HStart (Low Bit)
		or.w	#$0080,d7
		move.l	d7,Sprite0
		move.l	d7,Sprite1
		rts



*************************************************
*                     			        *
* Keeps track of the current mouse X and Y	*
*                                               *
*************************************************

Track_Mouse:	move.w	$dff00a,d0		; Track X
;		move.b	OldX,d1
;		move.b	d0,OldX
;		sub.b	d0,d1
;		ext.w	d1
;		sub.w	d1,CurrX

		lsr.w	#8,d0			; Track Y
		move.b	OldY,d1
		move.b	d0,OldY
		sub.b	d0,d1
		ext.w	d1
		sub.w	d1,CurrY

;		cmp.w	#128,CurrX
;		bge.s	.ge
;		move.w	#128,CurrX
;.ge:
;		cmp.w	#128+319,CurrX
;		ble.s	.le
;		move.w	#128+319,CurrX
;.le:
		cmp.w	#127,CurrY
		bge.s	.ge2
		move.w	#127,CurrY
.ge2:
		cmp.w	#127+(nrofiles-1)*8,CurrY
		ble.s	.le2
		move.w	#127+(nrofiles-1)*8,CurrY
.le2:
		rts

OldX:		dc.w	0
OldY:		dc.w	0
CurrX:		dc.w	128
CurrY:		dc.w	0



*************************************************
*						*
* Fade copper cols-a1 to palette pointed by a0	*
*						*
*************************************************

Fade_Up:	move.w	#32-1,d7		; No. Cols
.FadeLoop:	move.w	(a0)+,d0
		move.w	d0,d1
		move.w	d1,d2
		move.w	(a1),d3
		move.w	d3,d4
		move.w	d4,d5

		and.w	#$f00,d0
		and.w	#$f00,d3
		cmp.w	d0,d3
		beq.s	.NotRed
		add.w	#$100,d3
.NotRed:
		and.w	#$0f0,d1
		and.w	#$0f0,d4
		cmp.w	d1,d4
		beq.s	.NotGreen
		add.w	#$010,d4
.NotGreen:
		and.w	#$00f,d2
		and.w	#$00f,d5
		cmp.w	d2,d5
		beq.s	.NotBlue
		addq.w	#$001,d5
.NotBlue:
		or.w	d4,d3
		or.w	d5,d3
		move.w	d3,(a1)
		addq.w	#4,a1

		dbf	d7,.FadeLoop

		rts



Fade_Up2:	move.w	#16-1,d7		; No. Cols
.FadeLoop:	move.w	(a0)+,d0
		move.w	d0,d1
		move.w	d1,d2
		move.w	(a1),d3
		move.w	d3,d4
		move.w	d4,d5

		and.w	#$f00,d0
		and.w	#$f00,d3
		cmp.w	d0,d3
		beq.s	.NotRed
		add.w	#$100,d3
.NotRed:
		and.w	#$0f0,d1
		and.w	#$0f0,d4
		cmp.w	d1,d4
		beq.s	.NotGreen
		add.w	#$010,d4
.NotGreen:
		and.w	#$00f,d2
		and.w	#$00f,d5
		cmp.w	d2,d5
		beq.s	.NotBlue
		addq.w	#$001,d5
.NotBlue:
		or.w	d4,d3
		or.w	d5,d3
		move.w	d3,(a1)
		addq.w	#4,a1

		dbf	d7,.FadeLoop

		rts



*************************************************
*						*
* Fade copper cols-a1 to black			*
*						*
*************************************************

Fade_Down:	move.w	#16-1,d7		; No. Cols
.FadeLoop:	move.w	(a1),d3
		move.w	d3,d4
		move.w	d4,d5

		and.w	#$f00,d3
		beq.s	.NotRed
		sub.w	#$100,d3
.NotRed:
		and.w	#$0f0,d4
		beq.s	.NotGreen
		sub.w	#$010,d4
.NotGreen:
		and.w	#$00f,d5
		beq.s	.NotBlue
		subq.w	#$001,d5
.NotBlue:
		or.w	d4,d3
		or.w	d5,d3
		move.w	d3,(a1)
		addq.w	#4,a1

		dbf	d7,.FadeLoop

		rts



Fade_Down2:	move.w	#32-1,d7		; No. Cols
.FadeLoop:	move.w	(a1),d3
		move.w	d3,d4
		move.w	d4,d5

		and.w	#$f00,d3
		beq.s	.NotRed
		sub.w	#$100,d3
.NotRed:
		and.w	#$0f0,d4
		beq.s	.NotGreen
		sub.w	#$010,d4
.NotGreen:
		and.w	#$00f,d5
		beq.s	.NotBlue
		subq.w	#$001,d5
.NotBlue:
		or.w	d4,d3
		or.w	d5,d3
		move.w	d3,(a1)
		addq.w	#4,a1

		dbf	d7,.FadeLoop

		rts



*************************************************
*                     			        *
* Demo Exit Routine				*
*                                               *
*************************************************

end_demo:
.wait:		btst	#6,$bfe001
		bne.s	.wait

		if	music=1
		jsr	mt_end
		bclr	#1,$bfe001		; Filter off
		endif

		move.l	USPStore,a0		; Restore USP (Seka might
		move.l	a0,usp			; find it useful!!!)
		move.l	StackStore,sp		; Restore Stack

		jsr	ReviveOS		; Bring back the lame OS
		moveq	#0,d0			; No CLI Error code
		rte				; Byeeeeeeeee!



*************************************************
*                     			        *
* Interrupt routines				*
*                                               *
*************************************************

new_int:	movem.l	d0-d7/a0-a6,-(sp)
		and.w	#$20,$dff01e		; Is it a L3 interrupt?
		beq.s	outint			; If not, skip this code
		move.w	#$20,$dff09c

		add.b	#1,fly			; Inc. flyback signal
		add.w	#1,timer		; Inc. Total counter

;		*** Routines to be called every frame ***

outint:		movem.l	(sp)+,d0-d7/a0-a6
		rte


*************************************************
*                     			        *
* Variables					*
*                                               *
*************************************************

StackStore:	dc.l	0			; Place to save SP
USPStore:	dc.l	0			; Place to save USP

XVal:		dc.w	0
YVal:		dc.w	0
Counta:		dc.w	0
Col:		dc.w	0
FireFlag:	dc.w	0

Current:	dc.l	Plane3a
Next:		dc.l	Plane3b
Timer:		dc.w	0			; Constant timer
Fly:		dc.b	0			; Frame Flyback signal
		even

		dc.l	0,0,0,0,0,0,0,0

SinPoint1:	dc.l	Sinus+418
SinPoint2:	dc.l	Sinus	;+208	;418	;838	;+184

	rept	2
	dc.w	0/17
	dc.w	0/17
	dc.w	0/17
	dc.w	0/17
	dc.w	1/17
	dc.w	1/17
	dc.w	2/17
	dc.w	3/17
	dc.w	5/17
	dc.w	6/17
	dc.w	8/17
	dc.w	10/17
	dc.w	12/17
	dc.w	15/17
	dc.w	18/17
	dc.w	20/17
	dc.w	24/17
	dc.w	27/17
	dc.w	31/17
	dc.w	34/17
	dc.w	38/17
	dc.w	43/17
	dc.w	47/17
	dc.w	52/17
	dc.w	56/17
	dc.w	62/17
	dc.w	67/17
	dc.w	72/17
	dc.w	78/17
	dc.w	84/17
	dc.w	90/17
	dc.w	96/17
	dc.w	103/17
	dc.w	110/17
	dc.w	117/17
	dc.w	124/17
	dc.w	131/17
	dc.w	139/17
	dc.w	146/17
	dc.w	154/17
	dc.w	162/17
	dc.w	171/17
	dc.w	179/17
	dc.w	188/17
	dc.w	196/17
	dc.w	205/17
	dc.w	215/17
	dc.w	224/17
	dc.w	234/17
	dc.w	243/17
	dc.w	253/17
	dc.w	263/17
	dc.w	274/17
	dc.w	284/17
	dc.w	294/17
	dc.w	305/17
	dc.w	316/17
	dc.w	327/17
	dc.w	338/17
	dc.w	350/17
	dc.w	361/17
	dc.w	373/17
	dc.w	384/17
	dc.w	396/17
	dc.w	408/17
	dc.w	420/17
	dc.w	433/17
	dc.w	445/17
	dc.w	458/17
	dc.w	470/17
	dc.w	483/17
	dc.w	496/17
	dc.w	509/17
	dc.w	522/17
	dc.w	535/17
	dc.w	549/17
	dc.w	562/17
	dc.w	576/17
	dc.w	589/17
	dc.w	603/17
	dc.w	617/17
	dc.w	631/17
	dc.w	645/17
	dc.w	659/17
	dc.w	673/17
	dc.w	687/17
	dc.w	701/17
	dc.w	716/17
	dc.w	730/17
	dc.w	745/17
	dc.w	759/17
	dc.w	774/17
	dc.w	788/17
	dc.w	803/17
	dc.w	818/17
	dc.w	833/17
	dc.w	847/17
	dc.w	862/17
	dc.w	877/17
	dc.w	892/17
	dc.w	907/17
	dc.w	922/17
	dc.w	937/17
	dc.w	952/17
	dc.w	967/17
	dc.w	982/17
	dc.w	997/17
	dc.w	1012/17
	dc.w	1027/17
	dc.w	1042/17
	dc.w	1057/17
	dc.w	1072/17
	dc.w	1087/17
	dc.w	1102/17
	dc.w	1117/17
	dc.w	1131/17
	dc.w	1146/17
	dc.w	1161/17
	dc.w	1176/17
	dc.w	1191/17
	dc.w	1205/17
	dc.w	1220/17
	dc.w	1235/17
	dc.w	1249/17
	dc.w	1264/17
	dc.w	1278/17
	dc.w	1292/17
	dc.w	1307/17
	dc.w	1321/17
	dc.w	1335/17
	dc.w	1349/17
	dc.w	1363/17
	dc.w	1377/17
	dc.w	1391/17
	dc.w	1405/17
	dc.w	1419/17
	dc.w	1432/17
	dc.w	1446/17
	dc.w	1459/17
	dc.w	1472/17
	dc.w	1485/17
	dc.w	1498/17
	dc.w	1511/17
	dc.w	1524/17
	dc.w	1537/17
	dc.w	1550/17
	dc.w	1562/17
	dc.w	1574/17
	dc.w	1587/17
	dc.w	1599/17
	dc.w	1611/17
	dc.w	1622/17
	dc.w	1634/17
	dc.w	1646/17
	dc.w	1657/17
	dc.w	1668/17
	dc.w	1679/17
	dc.w	1690/17
	dc.w	1701/17
	dc.w	1712/17
	dc.w	1722/17
	dc.w	1732/17
	dc.w	1743/17
	dc.w	1752/17
	dc.w	1762/17
	dc.w	1772/17
	dc.w	1781/17
	dc.w	1791/17
	dc.w	1800/17
	dc.w	1809/17
	dc.w	1817/17
	dc.w	1826/17
	dc.w	1834/17
	dc.w	1841/17
	dc.w	1849/17
	dc.w	1857/17
	dc.w	1865/17
	dc.w	1872/17
	dc.w	1880/17
	dc.w	1887/17
	dc.w	1893/17
	dc.w	1900/17
	dc.w	1907/17
	dc.w	1913/17
	dc.w	1919/17
	dc.w	1925/17
	dc.w	1930/17
	dc.w	1936/17
	dc.w	1941/17
	dc.w	1946/17
	dc.w	1951/17
	dc.w	1955/17
	dc.w	1959/17
	dc.w	1964/17
	dc.w	1967/17
	dc.w	1971/17
	dc.w	1975/17
	dc.w	1978/17
	dc.w	1981/17
	dc.w	1984/17
	dc.w	1986/17
	dc.w	1989/17
	dc.w	1991/17
	dc.w	1993/17
	dc.w	1994/17
	dc.w	1996/17
	dc.w	1997/17
	dc.w	1998/17
	dc.w	1999/17
	dc.w	2000/17
	dc.w	2000/17
	dc.w	2000/17
	dc.w	2000/17
	dc.w	2000/17
	dc.w	1999/17
	dc.w	1998/17
	dc.w	1997/17
	dc.w	1996/17
	dc.w	1995/17
	dc.w	1993/17
	dc.w	1991/17
	dc.w	1989/17
	dc.w	1987/17
	dc.w	1984/17
	dc.w	1981/17
	dc.w	1978/17
	dc.w	1975/17
	dc.w	1972/17
	dc.w	1968/17
	dc.w	1964/17
	dc.w	1960/17
	dc.w	1956/17
	dc.w	1951/17
	dc.w	1946/17
	dc.w	1941/17
	dc.w	1936/17
	dc.w	1931/17
	dc.w	1925/17
	dc.w	1919/17
	dc.w	1913/17
	dc.w	1907/17
	dc.w	1901/17
	dc.w	1894/17
	dc.w	1887/17
	dc.w	1880/17
	dc.w	1873/17
	dc.w	1866/17
	dc.w	1858/17
	dc.w	1850/17
	dc.w	1842/17
	dc.w	1834/17
	dc.w	1826/17
	dc.w	1817/17
	dc.w	1808/17
	dc.w	1800/17
	dc.w	1790/17
	dc.w	1781/17
	dc.w	1772/17
	dc.w	1762/17
	dc.w	1752/17
	dc.w	1742/17
	dc.w	1732/17
	dc.w	1722/17
	dc.w	1711/17
	dc.w	1701/17
	dc.w	1690/17
	dc.w	1679/17
	dc.w	1668/17
	dc.w	1657/17
	dc.w	1645/17
	dc.w	1634/17
	dc.w	1622/17
	dc.w	1610/17
	dc.w	1598/17
	dc.w	1586/17
	dc.w	1574/17
	dc.w	1562/17
	dc.w	1549/17
	dc.w	1537/17
	dc.w	1524/17
	dc.w	1511/17
	dc.w	1498/17
	dc.w	1485/17
	dc.w	1472/17
	dc.w	1459/17
	dc.w	1445/17
	dc.w	1432/17
	dc.w	1418/17
	dc.w	1405/17
	dc.w	1391/17
	dc.w	1377/17
	dc.w	1363/17
	dc.w	1349/17
	dc.w	1335/17
	dc.w	1321/17
	dc.w	1307/17
	dc.w	1292/17
	dc.w	1278/17
	dc.w	1263/17
	dc.w	1249/17
	dc.w	1234/17
	dc.w	1220/17
	dc.w	1205/17
	dc.w	1190/17
	dc.w	1176/17
	dc.w	1161/17
	dc.w	1146/17
	dc.w	1131/17
	dc.w	1116/17
	dc.w	1101/17
	dc.w	1086/17
	dc.w	1072/17
	dc.w	1057/17
	dc.w	1042/17
	dc.w	1027/17
	dc.w	1012/17
	dc.w	997/17
	dc.w	982/17
	dc.w	967/17
	dc.w	952/17
	dc.w	937/17
	dc.w	922/17
	dc.w	907/17
	dc.w	892/17
	dc.w	877/17
	dc.w	862/17
	dc.w	847/17
	dc.w	832/17
	dc.w	818/17
	dc.w	803/17
	dc.w	788/17
	dc.w	774/17
	dc.w	759/17
	dc.w	744/17
	dc.w	730/17
	dc.w	716/17
	dc.w	701/17
	dc.w	687/17
	dc.w	673/17
	dc.w	659/17
	dc.w	645/17
	dc.w	631/17
	dc.w	617/17
	dc.w	603/17
	dc.w	589/17
	dc.w	575/17
	dc.w	562/17
	dc.w	549/17
	dc.w	535/17
	dc.w	522/17
	dc.w	509/17
	dc.w	496/17
	dc.w	483/17
	dc.w	470/17
	dc.w	457/17
	dc.w	445/17
	dc.w	433/17
	dc.w	420/17
	dc.w	408/17
	dc.w	396/17
	dc.w	384/17
	dc.w	372/17
	dc.w	361/17
	dc.w	349/17
	dc.w	338/17
	dc.w	327/17
	dc.w	316/17
	dc.w	305/17
	dc.w	294/17
	dc.w	284/17
	dc.w	273/17
	dc.w	263/17
	dc.w	253/17
	dc.w	243/17
	dc.w	233/17
	dc.w	224/17
	dc.w	215/17
	dc.w	205/17
	dc.w	196/17
	dc.w	188/17
	dc.w	179/17
	dc.w	170/17
	dc.w	162/17
	dc.w	154/17
	dc.w	146/17
	dc.w	138/17
	dc.w	131/17
	dc.w	124/17
	dc.w	116/17
	dc.w	110/17
	dc.w	103/17
	dc.w	96/17
	dc.w	90/17
	dc.w	84/17
	dc.w	78/17
	dc.w	72/17
	dc.w	67/17
	dc.w	61/17
	dc.w	56/17
	dc.w	52/17
	dc.w	47/17
	dc.w	42/17
	dc.w	38/17
	dc.w	34/17
	dc.w	30/17
	dc.w	27/17
	dc.w	24/17
	dc.w	20/17
	dc.w	18/17
	dc.w	15/17
	dc.w	12/17
	dc.w	10/17
	dc.w	8/17
	dc.w	6/17
	dc.w	5/17
	dc.w	3/17
	dc.w	2/17
	dc.w	1/17
	dc.w	1/17
	endr


Sinus:	dc.w	0/17
	dc.w	0/17
	dc.w	0/17
	dc.w	0/17
	dc.w	1/17
	dc.w	1/17
	dc.w	2/17
	dc.w	3/17
	dc.w	5/17
	dc.w	6/17
	dc.w	8/17
	dc.w	10/17
	dc.w	12/17
	dc.w	15/17
	dc.w	18/17
	dc.w	20/17
	dc.w	24/17
	dc.w	27/17
	dc.w	31/17
	dc.w	34/17
	dc.w	38/17
	dc.w	43/17
	dc.w	47/17
	dc.w	52/17
	dc.w	56/17
	dc.w	62/17
	dc.w	67/17
	dc.w	72/17
	dc.w	78/17
	dc.w	84/17
	dc.w	90/17
	dc.w	96/17
	dc.w	103/17
	dc.w	110/17
	dc.w	117/17
	dc.w	124/17
	dc.w	131/17
	dc.w	139/17
	dc.w	146/17
	dc.w	154/17
	dc.w	162/17
	dc.w	171/17
	dc.w	179/17
	dc.w	188/17
	dc.w	196/17
	dc.w	205/17
	dc.w	215/17
	dc.w	224/17
	dc.w	234/17
	dc.w	243/17
	dc.w	253/17
	dc.w	263/17
	dc.w	274/17
	dc.w	284/17
	dc.w	294/17
	dc.w	305/17
	dc.w	316/17
	dc.w	327/17
	dc.w	338/17
	dc.w	350/17
	dc.w	361/17
	dc.w	373/17
	dc.w	384/17
	dc.w	396/17
	dc.w	408/17
	dc.w	420/17
	dc.w	433/17
	dc.w	445/17
	dc.w	458/17
	dc.w	470/17
	dc.w	483/17
	dc.w	496/17
	dc.w	509/17
	dc.w	522/17
	dc.w	535/17
	dc.w	549/17
	dc.w	562/17
	dc.w	576/17
	dc.w	589/17
	dc.w	603/17
	dc.w	617/17
	dc.w	631/17
	dc.w	645/17
	dc.w	659/17
	dc.w	673/17
	dc.w	687/17
	dc.w	701/17
	dc.w	716/17
	dc.w	730/17
	dc.w	745/17
	dc.w	759/17
	dc.w	774/17
	dc.w	788/17
	dc.w	803/17
	dc.w	818/17
	dc.w	833/17
	dc.w	847/17
	dc.w	862/17
	dc.w	877/17
	dc.w	892/17
	dc.w	907/17
	dc.w	922/17
	dc.w	937/17
	dc.w	952/17
	dc.w	967/17
	dc.w	982/17
	dc.w	997/17
	dc.w	1012/17
	dc.w	1027/17
	dc.w	1042/17
	dc.w	1057/17
	dc.w	1072/17
	dc.w	1087/17
	dc.w	1102/17
	dc.w	1117/17
	dc.w	1131/17
	dc.w	1146/17
	dc.w	1161/17
	dc.w	1176/17
	dc.w	1191/17
	dc.w	1205/17
	dc.w	1220/17
	dc.w	1235/17
	dc.w	1249/17
	dc.w	1264/17
	dc.w	1278/17
	dc.w	1292/17
	dc.w	1307/17
	dc.w	1321/17
	dc.w	1335/17
	dc.w	1349/17
	dc.w	1363/17
	dc.w	1377/17
	dc.w	1391/17
	dc.w	1405/17
	dc.w	1419/17
	dc.w	1432/17
	dc.w	1446/17
	dc.w	1459/17
	dc.w	1472/17
	dc.w	1485/17
	dc.w	1498/17
	dc.w	1511/17
	dc.w	1524/17
	dc.w	1537/17
	dc.w	1550/17
	dc.w	1562/17
	dc.w	1574/17
	dc.w	1587/17
	dc.w	1599/17
	dc.w	1611/17
	dc.w	1622/17
	dc.w	1634/17
	dc.w	1646/17
	dc.w	1657/17
	dc.w	1668/17
	dc.w	1679/17
	dc.w	1690/17
	dc.w	1701/17
	dc.w	1712/17
	dc.w	1722/17
	dc.w	1732/17
	dc.w	1743/17
	dc.w	1752/17
	dc.w	1762/17
	dc.w	1772/17
	dc.w	1781/17
	dc.w	1791/17
	dc.w	1800/17
	dc.w	1809/17
	dc.w	1817/17
	dc.w	1826/17
	dc.w	1834/17
	dc.w	1841/17
	dc.w	1849/17
	dc.w	1857/17
	dc.w	1865/17
	dc.w	1872/17
	dc.w	1880/17
	dc.w	1887/17
	dc.w	1893/17
	dc.w	1900/17
	dc.w	1907/17
	dc.w	1913/17
	dc.w	1919/17
	dc.w	1925/17
	dc.w	1930/17
	dc.w	1936/17
	dc.w	1941/17
	dc.w	1946/17
	dc.w	1951/17
	dc.w	1955/17
	dc.w	1959/17
	dc.w	1964/17
	dc.w	1967/17
	dc.w	1971/17
	dc.w	1975/17
	dc.w	1978/17
	dc.w	1981/17
	dc.w	1984/17
	dc.w	1986/17
	dc.w	1989/17
	dc.w	1991/17
	dc.w	1993/17
	dc.w	1994/17
	dc.w	1996/17
	dc.w	1997/17
	dc.w	1998/17
	dc.w	1999/17
	dc.w	2000/17
	dc.w	2000/17
	dc.w	2000/17
	dc.w	2000/17
	dc.w	2000/17
	dc.w	1999/17
	dc.w	1998/17
	dc.w	1997/17
	dc.w	1996/17
	dc.w	1995/17
	dc.w	1993/17
	dc.w	1991/17
	dc.w	1989/17
	dc.w	1987/17
	dc.w	1984/17
	dc.w	1981/17
	dc.w	1978/17
	dc.w	1975/17
	dc.w	1972/17
	dc.w	1968/17
	dc.w	1964/17
	dc.w	1960/17
	dc.w	1956/17
	dc.w	1951/17
	dc.w	1946/17
	dc.w	1941/17
	dc.w	1936/17
	dc.w	1931/17
	dc.w	1925/17
	dc.w	1919/17
	dc.w	1913/17
	dc.w	1907/17
	dc.w	1901/17
	dc.w	1894/17
	dc.w	1887/17
	dc.w	1880/17
	dc.w	1873/17
	dc.w	1866/17
	dc.w	1858/17
	dc.w	1850/17
	dc.w	1842/17
	dc.w	1834/17
	dc.w	1826/17
	dc.w	1817/17
	dc.w	1808/17
	dc.w	1800/17
	dc.w	1790/17
	dc.w	1781/17
	dc.w	1772/17
	dc.w	1762/17
	dc.w	1752/17
	dc.w	1742/17
	dc.w	1732/17
	dc.w	1722/17
	dc.w	1711/17
	dc.w	1701/17
	dc.w	1690/17
	dc.w	1679/17
	dc.w	1668/17
	dc.w	1657/17
	dc.w	1645/17
	dc.w	1634/17
	dc.w	1622/17
	dc.w	1610/17
	dc.w	1598/17
	dc.w	1586/17
	dc.w	1574/17
	dc.w	1562/17
	dc.w	1549/17
	dc.w	1537/17
	dc.w	1524/17
	dc.w	1511/17
	dc.w	1498/17
	dc.w	1485/17
	dc.w	1472/17
	dc.w	1459/17
	dc.w	1445/17
	dc.w	1432/17
	dc.w	1418/17
	dc.w	1405/17
	dc.w	1391/17
	dc.w	1377/17
	dc.w	1363/17
	dc.w	1349/17
	dc.w	1335/17
	dc.w	1321/17
	dc.w	1307/17
	dc.w	1292/17
	dc.w	1278/17
	dc.w	1263/17
	dc.w	1249/17
	dc.w	1234/17
	dc.w	1220/17
	dc.w	1205/17
	dc.w	1190/17
	dc.w	1176/17
	dc.w	1161/17
	dc.w	1146/17
	dc.w	1131/17
	dc.w	1116/17
	dc.w	1101/17
	dc.w	1086/17
	dc.w	1072/17
	dc.w	1057/17
	dc.w	1042/17
	dc.w	1027/17
	dc.w	1012/17
	dc.w	997/17
	dc.w	982/17
	dc.w	967/17
	dc.w	952/17
	dc.w	937/17
	dc.w	922/17
	dc.w	907/17
	dc.w	892/17
	dc.w	877/17
	dc.w	862/17
	dc.w	847/17
	dc.w	832/17
	dc.w	818/17
	dc.w	803/17
	dc.w	788/17
	dc.w	774/17
	dc.w	759/17
	dc.w	744/17
	dc.w	730/17
	dc.w	716/17
	dc.w	701/17
	dc.w	687/17
	dc.w	673/17
	dc.w	659/17
	dc.w	645/17
	dc.w	631/17
	dc.w	617/17
	dc.w	603/17
	dc.w	589/17
	dc.w	575/17
	dc.w	562/17
	dc.w	549/17
	dc.w	535/17
	dc.w	522/17
	dc.w	509/17
	dc.w	496/17
	dc.w	483/17
	dc.w	470/17
	dc.w	457/17
	dc.w	445/17
	dc.w	433/17
	dc.w	420/17
	dc.w	408/17
	dc.w	396/17
	dc.w	384/17
	dc.w	372/17
	dc.w	361/17
	dc.w	349/17
	dc.w	338/17
	dc.w	327/17
	dc.w	316/17
	dc.w	305/17
	dc.w	294/17
	dc.w	284/17
	dc.w	273/17
	dc.w	263/17
	dc.w	253/17
	dc.w	243/17
	dc.w	233/17
	dc.w	224/17
	dc.w	215/17
	dc.w	205/17
	dc.w	196/17
	dc.w	188/17
	dc.w	179/17
	dc.w	170/17
	dc.w	162/17
	dc.w	154/17
	dc.w	146/17
	dc.w	138/17
	dc.w	131/17
	dc.w	124/17
	dc.w	116/17
	dc.w	110/17
	dc.w	103/17
	dc.w	96/17
	dc.w	90/17
	dc.w	84/17
	dc.w	78/17
	dc.w	72/17
	dc.w	67/17
	dc.w	61/17
	dc.w	56/17
	dc.w	52/17
	dc.w	47/17
	dc.w	42/17
	dc.w	38/17
	dc.w	34/17
	dc.w	30/17
	dc.w	27/17
	dc.w	24/17
	dc.w	20/17
	dc.w	18/17
	dc.w	15/17
	dc.w	12/17
	dc.w	10/17
	dc.w	8/17
	dc.w	6/17
	dc.w	5/17
	dc.w	3/17
	dc.w	2/17
	dc.w	1/17
	dc.w	1/17
SinEnd:
	rept	2
	dc.w	0/17
	dc.w	0/17
	dc.w	0/17
	dc.w	0/17
	dc.w	1/17
	dc.w	1/17
	dc.w	2/17
	dc.w	3/17
	dc.w	5/17
	dc.w	6/17
	dc.w	8/17
	dc.w	10/17
	dc.w	12/17
	dc.w	15/17
	dc.w	18/17
	dc.w	20/17
	dc.w	24/17
	dc.w	27/17
	dc.w	31/17
	dc.w	34/17
	dc.w	38/17
	dc.w	43/17
	dc.w	47/17
	dc.w	52/17
	dc.w	56/17
	dc.w	62/17
	dc.w	67/17
	dc.w	72/17
	dc.w	78/17
	dc.w	84/17
	dc.w	90/17
	dc.w	96/17
	dc.w	103/17
	dc.w	110/17
	dc.w	117/17
	dc.w	124/17
	dc.w	131/17
	dc.w	139/17
	dc.w	146/17
	dc.w	154/17
	dc.w	162/17
	dc.w	171/17
	dc.w	179/17
	dc.w	188/17
	dc.w	196/17
	dc.w	205/17
	dc.w	215/17
	dc.w	224/17
	dc.w	234/17
	dc.w	243/17
	dc.w	253/17
	dc.w	263/17
	dc.w	274/17
	dc.w	284/17
	dc.w	294/17
	dc.w	305/17
	dc.w	316/17
	dc.w	327/17
	dc.w	338/17
	dc.w	350/17
	dc.w	361/17
	dc.w	373/17
	dc.w	384/17
	dc.w	396/17
	dc.w	408/17
	dc.w	420/17
	dc.w	433/17
	dc.w	445/17
	dc.w	458/17
	dc.w	470/17
	dc.w	483/17
	dc.w	496/17
	dc.w	509/17
	dc.w	522/17
	dc.w	535/17
	dc.w	549/17
	dc.w	562/17
	dc.w	576/17
	dc.w	589/17
	dc.w	603/17
	dc.w	617/17
	dc.w	631/17
	dc.w	645/17
	dc.w	659/17
	dc.w	673/17
	dc.w	687/17
	dc.w	701/17
	dc.w	716/17
	dc.w	730/17
	dc.w	745/17
	dc.w	759/17
	dc.w	774/17
	dc.w	788/17
	dc.w	803/17
	dc.w	818/17
	dc.w	833/17
	dc.w	847/17
	dc.w	862/17
	dc.w	877/17
	dc.w	892/17
	dc.w	907/17
	dc.w	922/17
	dc.w	937/17
	dc.w	952/17
	dc.w	967/17
	dc.w	982/17
	dc.w	997/17
	dc.w	1012/17
	dc.w	1027/17
	dc.w	1042/17
	dc.w	1057/17
	dc.w	1072/17
	dc.w	1087/17
	dc.w	1102/17
	dc.w	1117/17
	dc.w	1131/17
	dc.w	1146/17
	dc.w	1161/17
	dc.w	1176/17
	dc.w	1191/17
	dc.w	1205/17
	dc.w	1220/17
	dc.w	1235/17
	dc.w	1249/17
	dc.w	1264/17
	dc.w	1278/17
	dc.w	1292/17
	dc.w	1307/17
	dc.w	1321/17
	dc.w	1335/17
	dc.w	1349/17
	dc.w	1363/17
	dc.w	1377/17
	dc.w	1391/17
	dc.w	1405/17
	dc.w	1419/17
	dc.w	1432/17
	dc.w	1446/17
	dc.w	1459/17
	dc.w	1472/17
	dc.w	1485/17
	dc.w	1498/17
	dc.w	1511/17
	dc.w	1524/17
	dc.w	1537/17
	dc.w	1550/17
	dc.w	1562/17
	dc.w	1574/17
	dc.w	1587/17
	dc.w	1599/17
	dc.w	1611/17
	dc.w	1622/17
	dc.w	1634/17
	dc.w	1646/17
	dc.w	1657/17
	dc.w	1668/17
	dc.w	1679/17
	dc.w	1690/17
	dc.w	1701/17
	dc.w	1712/17
	dc.w	1722/17
	dc.w	1732/17
	dc.w	1743/17
	dc.w	1752/17
	dc.w	1762/17
	dc.w	1772/17
	dc.w	1781/17
	dc.w	1791/17
	dc.w	1800/17
	dc.w	1809/17
	dc.w	1817/17
	dc.w	1826/17
	dc.w	1834/17
	dc.w	1841/17
	dc.w	1849/17
	dc.w	1857/17
	dc.w	1865/17
	dc.w	1872/17
	dc.w	1880/17
	dc.w	1887/17
	dc.w	1893/17
	dc.w	1900/17
	dc.w	1907/17
	dc.w	1913/17
	dc.w	1919/17
	dc.w	1925/17
	dc.w	1930/17
	dc.w	1936/17
	dc.w	1941/17
	dc.w	1946/17
	dc.w	1951/17
	dc.w	1955/17
	dc.w	1959/17
	dc.w	1964/17
	dc.w	1967/17
	dc.w	1971/17
	dc.w	1975/17
	dc.w	1978/17
	dc.w	1981/17
	dc.w	1984/17
	dc.w	1986/17
	dc.w	1989/17
	dc.w	1991/17
	dc.w	1993/17
	dc.w	1994/17
	dc.w	1996/17
	dc.w	1997/17
	dc.w	1998/17
	dc.w	1999/17
	dc.w	2000/17
	dc.w	2000/17
	dc.w	2000/17
	dc.w	2000/17
	dc.w	2000/17
	dc.w	1999/17
	dc.w	1998/17
	dc.w	1997/17
	dc.w	1996/17
	dc.w	1995/17
	dc.w	1993/17
	dc.w	1991/17
	dc.w	1989/17
	dc.w	1987/17
	dc.w	1984/17
	dc.w	1981/17
	dc.w	1978/17
	dc.w	1975/17
	dc.w	1972/17
	dc.w	1968/17
	dc.w	1964/17
	dc.w	1960/17
	dc.w	1956/17
	dc.w	1951/17
	dc.w	1946/17
	dc.w	1941/17
	dc.w	1936/17
	dc.w	1931/17
	dc.w	1925/17
	dc.w	1919/17
	dc.w	1913/17
	dc.w	1907/17
	dc.w	1901/17
	dc.w	1894/17
	dc.w	1887/17
	dc.w	1880/17
	dc.w	1873/17
	dc.w	1866/17
	dc.w	1858/17
	dc.w	1850/17
	dc.w	1842/17
	dc.w	1834/17
	dc.w	1826/17
	dc.w	1817/17
	dc.w	1808/17
	dc.w	1800/17
	dc.w	1790/17
	dc.w	1781/17
	dc.w	1772/17
	dc.w	1762/17
	dc.w	1752/17
	dc.w	1742/17
	dc.w	1732/17
	dc.w	1722/17
	dc.w	1711/17
	dc.w	1701/17
	dc.w	1690/17
	dc.w	1679/17
	dc.w	1668/17
	dc.w	1657/17
	dc.w	1645/17
	dc.w	1634/17
	dc.w	1622/17
	dc.w	1610/17
	dc.w	1598/17
	dc.w	1586/17
	dc.w	1574/17
	dc.w	1562/17
	dc.w	1549/17
	dc.w	1537/17
	dc.w	1524/17
	dc.w	1511/17
	dc.w	1498/17
	dc.w	1485/17
	dc.w	1472/17
	dc.w	1459/17
	dc.w	1445/17
	dc.w	1432/17
	dc.w	1418/17
	dc.w	1405/17
	dc.w	1391/17
	dc.w	1377/17
	dc.w	1363/17
	dc.w	1349/17
	dc.w	1335/17
	dc.w	1321/17
	dc.w	1307/17
	dc.w	1292/17
	dc.w	1278/17
	dc.w	1263/17
	dc.w	1249/17
	dc.w	1234/17
	dc.w	1220/17
	dc.w	1205/17
	dc.w	1190/17
	dc.w	1176/17
	dc.w	1161/17
	dc.w	1146/17
	dc.w	1131/17
	dc.w	1116/17
	dc.w	1101/17
	dc.w	1086/17
	dc.w	1072/17
	dc.w	1057/17
	dc.w	1042/17
	dc.w	1027/17
	dc.w	1012/17
	dc.w	997/17
	dc.w	982/17
	dc.w	967/17
	dc.w	952/17
	dc.w	937/17
	dc.w	922/17
	dc.w	907/17
	dc.w	892/17
	dc.w	877/17
	dc.w	862/17
	dc.w	847/17
	dc.w	832/17
	dc.w	818/17
	dc.w	803/17
	dc.w	788/17
	dc.w	774/17
	dc.w	759/17
	dc.w	744/17
	dc.w	730/17
	dc.w	716/17
	dc.w	701/17
	dc.w	687/17
	dc.w	673/17
	dc.w	659/17
	dc.w	645/17
	dc.w	631/17
	dc.w	617/17
	dc.w	603/17
	dc.w	589/17
	dc.w	575/17
	dc.w	562/17
	dc.w	549/17
	dc.w	535/17
	dc.w	522/17
	dc.w	509/17
	dc.w	496/17
	dc.w	483/17
	dc.w	470/17
	dc.w	457/17
	dc.w	445/17
	dc.w	433/17
	dc.w	420/17
	dc.w	408/17
	dc.w	396/17
	dc.w	384/17
	dc.w	372/17
	dc.w	361/17
	dc.w	349/17
	dc.w	338/17
	dc.w	327/17
	dc.w	316/17
	dc.w	305/17
	dc.w	294/17
	dc.w	284/17
	dc.w	273/17
	dc.w	263/17
	dc.w	253/17
	dc.w	243/17
	dc.w	233/17
	dc.w	224/17
	dc.w	215/17
	dc.w	205/17
	dc.w	196/17
	dc.w	188/17
	dc.w	179/17
	dc.w	170/17
	dc.w	162/17
	dc.w	154/17
	dc.w	146/17
	dc.w	138/17
	dc.w	131/17
	dc.w	124/17
	dc.w	116/17
	dc.w	110/17
	dc.w	103/17
	dc.w	96/17
	dc.w	90/17
	dc.w	84/17
	dc.w	78/17
	dc.w	72/17
	dc.w	67/17
	dc.w	61/17
	dc.w	56/17
	dc.w	52/17
	dc.w	47/17
	dc.w	42/17
	dc.w	38/17
	dc.w	34/17
	dc.w	30/17
	dc.w	27/17
	dc.w	24/17
	dc.w	20/17
	dc.w	18/17
	dc.w	15/17
	dc.w	12/17
	dc.w	10/17
	dc.w	8/17
	dc.w	6/17
	dc.w	5/17
	dc.w	3/17
	dc.w	2/17
	dc.w	1/17
	dc.w	1/17
	endr



tsinpoint:	dc.l	textsine

textsine:
;	dc.w	0/20
	dc.w	0/20
;	dc.w	0/20
	dc.w	0/20
;	dc.w	1/20
	dc.w	1/20
;	dc.w	2/20
	dc.w	3/20
;	dc.w	5/20
	dc.w	6/20
;	dc.w	8/20
	dc.w	10/20
;	dc.w	12/20
	dc.w	15/20
;	dc.w	18/20
	dc.w	20/20
;	dc.w	24/20
	dc.w	27/20
;	dc.w	31/20
	dc.w	34/20
;	dc.w	38/20
	dc.w	43/20
;	dc.w	47/20
	dc.w	52/20
;	dc.w	56/20
	dc.w	62/20
;	dc.w	67/20
	dc.w	72/20
;	dc.w	78/20
	dc.w	84/20
;	dc.w	90/20
	dc.w	96/20
;	dc.w	103/20
	dc.w	110/20
;	dc.w	117/20
	dc.w	124/20
;	dc.w	131/20
	dc.w	139/20
;	dc.w	146/20
	dc.w	154/20
;	dc.w	162/20
	dc.w	171/20
;	dc.w	179/20
	dc.w	188/20
;	dc.w	196/20
	dc.w	205/20
;	dc.w	215/20
	dc.w	224/20
;	dc.w	234/20
	dc.w	243/20
;	dc.w	253/20
	dc.w	263/20
;	dc.w	274/20
	dc.w	284/20
;	dc.w	294/20
	dc.w	305/20
;	dc.w	316/20
	dc.w	327/20
;	dc.w	338/20
	dc.w	350/20
;	dc.w	361/20
	dc.w	373/20
;	dc.w	384/20
	dc.w	396/20
;	dc.w	408/20
	dc.w	420/20
;	dc.w	433/20
	dc.w	445/20
;	dc.w	458/20
	dc.w	470/20
;	dc.w	483/20
	dc.w	496/20
;	dc.w	509/20
	dc.w	522/20
;	dc.w	535/20
	dc.w	549/20
;	dc.w	562/20
	dc.w	576/20
;	dc.w	589/20
	dc.w	603/20
;	dc.w	617/20
	dc.w	631/20
;	dc.w	645/20
	dc.w	659/20
;	dc.w	673/20
	dc.w	687/20
;	dc.w	701/20
	dc.w	716/20
;	dc.w	730/20
	dc.w	745/20
;	dc.w	759/20
	dc.w	774/20
;	dc.w	788/20
	dc.w	803/20
;	dc.w	818/20
	dc.w	833/20
;	dc.w	847/20
	dc.w	862/20
;	dc.w	877/20
	dc.w	892/20
;	dc.w	907/20
	dc.w	922/20
;	dc.w	937/20
	dc.w	952/20
;	dc.w	967/20
	dc.w	982/20
;	dc.w	997/20
	dc.w	1012/20
;	dc.w	1027/20
	dc.w	1042/20
;	dc.w	1057/20
	dc.w	1072/20
;	dc.w	1087/20
	dc.w	1102/20
;	dc.w	1117/20
	dc.w	1131/20
;	dc.w	1146/20
	dc.w	1161/20
;	dc.w	1176/20
	dc.w	1191/20
;	dc.w	1205/20
	dc.w	1220/20
;	dc.w	1235/20
	dc.w	1249/20
;	dc.w	1264/20
	dc.w	1278/20
;	dc.w	1292/20
	dc.w	1307/20
;	dc.w	1321/20
	dc.w	1335/20
;	dc.w	1349/20
	dc.w	1363/20
;	dc.w	1377/20
	dc.w	1391/20
;	dc.w	1405/20
	dc.w	1419/20
;	dc.w	1432/20
	dc.w	1446/20
;	dc.w	1459/20
	dc.w	1472/20
;	dc.w	1485/20
	dc.w	1498/20
;	dc.w	1511/20
	dc.w	1524/20
;	dc.w	1537/20
	dc.w	1550/20
;	dc.w	1562/20
	dc.w	1574/20
;	dc.w	1587/20
	dc.w	1599/20
;	dc.w	1611/20
	dc.w	1622/20
;	dc.w	1634/20
	dc.w	1646/20
;	dc.w	1657/20
	dc.w	1668/20
;	dc.w	1679/20
	dc.w	1690/20
;	dc.w	1701/20
	dc.w	1712/20
;	dc.w	1722/20
	dc.w	1732/20
;	dc.w	1743/20
	dc.w	1752/20
;	dc.w	1762/20
	dc.w	1772/20
;	dc.w	1781/20
	dc.w	1791/20
;	dc.w	1800/20
	dc.w	1809/20
;	dc.w	1817/20
	dc.w	1826/20
;	dc.w	1834/20
	dc.w	1841/20
;	dc.w	1849/20
	dc.w	1857/20
;	dc.w	1865/20
	dc.w	1872/20
;	dc.w	1880/20
	dc.w	1887/20
;	dc.w	1893/20
	dc.w	1900/20
;	dc.w	1907/20
	dc.w	1913/20
;	dc.w	1919/20
	dc.w	1925/20
;	dc.w	1930/20
	dc.w	1936/20
;	dc.w	1941/20
	dc.w	1946/20
;	dc.w	1951/20
	dc.w	1955/20
;	dc.w	1959/20
	dc.w	1964/20
;	dc.w	1967/20
	dc.w	1971/20
;	dc.w	1975/20
	dc.w	1978/20
;	dc.w	1981/20
	dc.w	1984/20
;	dc.w	1986/20
	dc.w	1989/20
;	dc.w	1991/20
	dc.w	1993/20
;	dc.w	1994/20
	dc.w	1996/20
;	dc.w	1997/20
	dc.w	1998/20
;	dc.w	1999/20
	dc.w	2000/20
;	dc.w	2000/20
	dc.w	2000/20
;	dc.w	2000/20
	dc.w	2000/20
;	dc.w	1999/20
	dc.w	1998/20
;	dc.w	1997/20
	dc.w	1996/20
;	dc.w	1995/20
	dc.w	1993/20
;	dc.w	1991/20
	dc.w	1989/20
;	dc.w	1987/20
	dc.w	1984/20
;	dc.w	1981/20
	dc.w	1978/20
;	dc.w	1975/20
	dc.w	1972/20
;	dc.w	1968/20
	dc.w	1964/20
;	dc.w	1960/20
	dc.w	1956/20
;	dc.w	1951/20
	dc.w	1946/20
;	dc.w	1941/20
	dc.w	1936/20
;	dc.w	1931/20
	dc.w	1925/20
;	dc.w	1919/20
	dc.w	1913/20
;	dc.w	1907/20
	dc.w	1901/20
;	dc.w	1894/20
	dc.w	1887/20
;	dc.w	1880/20
	dc.w	1873/20
;	dc.w	1866/20
	dc.w	1858/20
;	dc.w	1850/20
	dc.w	1842/20
;	dc.w	1834/20
	dc.w	1826/20
;	dc.w	1817/20
	dc.w	1808/20
;	dc.w	1800/20
	dc.w	1790/20
;	dc.w	1781/20
	dc.w	1772/20
;	dc.w	1762/20
	dc.w	1752/20
;	dc.w	1742/20
	dc.w	1732/20
;	dc.w	1722/20
	dc.w	1711/20
;	dc.w	1701/20
	dc.w	1690/20
;	dc.w	1679/20
	dc.w	1668/20
;	dc.w	1657/20
	dc.w	1645/20
;	dc.w	1634/20
	dc.w	1622/20
;	dc.w	1610/20
	dc.w	1598/20
;	dc.w	1586/20
	dc.w	1574/20
;	dc.w	1562/20
	dc.w	1549/20
;	dc.w	1537/20
	dc.w	1524/20
;	dc.w	1511/20
	dc.w	1498/20
;	dc.w	1485/20
	dc.w	1472/20
;	dc.w	1459/20
	dc.w	1445/20
;	dc.w	1432/20
	dc.w	1418/20
;	dc.w	1405/20
	dc.w	1391/20
;	dc.w	1377/20
	dc.w	1363/20
;	dc.w	1349/20
	dc.w	1335/20
;	dc.w	1321/20
	dc.w	1307/20
;	dc.w	1292/20
	dc.w	1278/20
;	dc.w	1263/20
	dc.w	1249/20
;	dc.w	1234/20
	dc.w	1220/20
;	dc.w	1205/20
	dc.w	1190/20
;	dc.w	1176/20
	dc.w	1161/20
;	dc.w	1146/20
	dc.w	1131/20
;	dc.w	1116/20
	dc.w	1101/20
;	dc.w	1086/20
	dc.w	1072/20
;	dc.w	1057/20
	dc.w	1042/20
;	dc.w	1027/20
	dc.w	1012/20
;	dc.w	997/20
	dc.w	982/20
;	dc.w	967/20
	dc.w	952/20
;	dc.w	937/20
	dc.w	922/20
;	dc.w	907/20
	dc.w	892/20
;	dc.w	877/20
	dc.w	862/20
;	dc.w	847/20
	dc.w	832/20
;	dc.w	818/20
	dc.w	803/20
;	dc.w	788/20
	dc.w	774/20
;	dc.w	759/20
	dc.w	744/20
;	dc.w	730/20
	dc.w	716/20
;	dc.w	701/20
	dc.w	687/20
;	dc.w	673/20
	dc.w	659/20
;	dc.w	645/20
	dc.w	631/20
;	dc.w	617/20
	dc.w	603/20
;	dc.w	589/20
	dc.w	575/20
;	dc.w	562/20
	dc.w	549/20
;	dc.w	535/20
	dc.w	522/20
;	dc.w	509/20
	dc.w	496/20
;	dc.w	483/20
	dc.w	470/20
;	dc.w	457/20
	dc.w	445/20
;	dc.w	433/20
	dc.w	420/20
;	dc.w	408/20
	dc.w	396/20
;	dc.w	384/20
	dc.w	372/20
;	dc.w	361/20
	dc.w	349/20
;	dc.w	338/20
	dc.w	327/20
;	dc.w	316/20
	dc.w	305/20
;	dc.w	294/20
	dc.w	284/20
;	dc.w	273/20
	dc.w	263/20
;	dc.w	253/20
	dc.w	243/20
;	dc.w	233/20
	dc.w	224/20
;	dc.w	215/20
	dc.w	205/20
;	dc.w	196/20
	dc.w	188/20
;	dc.w	179/20
	dc.w	170/20
;	dc.w	162/20
	dc.w	154/20
;	dc.w	146/20
	dc.w	138/20
;	dc.w	131/20
	dc.w	124/20
;	dc.w	116/20
	dc.w	110/20
;	dc.w	103/20
	dc.w	96/20
;	dc.w	90/20
	dc.w	84/20
;	dc.w	78/20
	dc.w	72/20
;	dc.w	67/20
	dc.w	61/20
;	dc.w	56/20
	dc.w	52/20
;	dc.w	47/20
	dc.w	42/20
;	dc.w	38/20
	dc.w	34/20
;	dc.w	30/20
	dc.w	27/20
;	dc.w	24/20
	dc.w	20/20
;	dc.w	18/20
	dc.w	15/20
;	dc.w	12/20
	dc.w	10/20
;	dc.w	8/20
	dc.w	6/20
;	dc.w	5/20
	dc.w	3/20
;	dc.w	2/20
	dc.w	1/20
;	dc.w	1/20
tend:

Colours:
.col:	set	$00f
	rept	16
	rept	19
	dc.w	.col
	endr
.col:	set	.col-$001
	endr

	dcb.w	16*19,0

ColPoint:	dc.l	Colours+(19*16*2)
ColPoint2:	dc.l	Colours2+(19*16*2)

Colours2:
	rept	12
	dc.w	$f88
	endr
	rept	12
	dc.w	$f78
	endr
	rept	12
	dc.w	$f68
	endr
	rept	12
	dc.w	$f58
	endr
	rept	12
	dc.w	$f48
	endr
	rept	12
	dc.w	$f38
	endr
	rept	12
	dc.w	$f28
	endr
	rept	12
	dc.w	$f18
	endr

	rept	12
	dc.w	$f08
	endr
	rept	12
	dc.w	$e07
	endr
	rept	12
	dc.w	$d07
	endr
	rept	12
	dc.w	$c06
	endr
	rept	12
	dc.w	$b06
	endr
	rept	12
	dc.w	$a05
	endr
	rept	12
	dc.w	$905
	endr
	rept	12
	dc.w	$804
	endr
	rept	12
	dc.w	$704
	endr
	rept	12
	dc.w	$603
	endr
	rept	12
	dc.w	$503
	endr
	rept	12
	dc.w	$402
	endr
	rept	12
	dc.w	$302
	endr
	rept	12
	dc.w	$201
	endr
	rept	12
	dc.w	$101
	endr
	rept	12
	dc.w	$000
	endr

	dcb.w	16*19,0

Colours1:
	rept	12
	dc.w	$88f
	endr
	rept	12
	dc.w	$87f
	endr
	rept	12
	dc.w	$86f
	endr
	rept	12
	dc.w	$85f
	endr
	rept	12
	dc.w	$84f
	endr
	rept	12
	dc.w	$83f
	endr
	rept	12
	dc.w	$82f
	endr
	rept	12
	dc.w	$81f
	endr

	rept	12
	dc.w	$80f
	endr
	rept	12
	dc.w	$70e
	endr
	rept	12
	dc.w	$70d
	endr
	rept	12
	dc.w	$60c
	endr
	rept	12
	dc.w	$60b
	endr
	rept	12
	dc.w	$50a
	endr
	rept	12
	dc.w	$509
	endr
	rept	12
	dc.w	$408
	endr
	rept	12
	dc.w	$407
	endr
	rept	12
	dc.w	$306
	endr
	rept	12
	dc.w	$305
	endr
	rept	12
	dc.w	$204
	endr
	rept	12
	dc.w	$203
	endr
	rept	12
	dc.w	$102
	endr
	rept	12
	dc.w	$101
	endr
	rept	12
	dc.w	$000
	endr

	dcb.w	16*19,0

Sizes:
.siz:	set	100
	rept	150
	dc.w	.siz,.siz
.siz:	set	.siz+1
	endr


.ml:	set	-290*44
	rept	290
	dc.w	.ml
.ml:	set	.ml+44
	endr
mulTab:	
.ml:	set	0
	rept	290
	dc.w	.ml
.ml:	set	.ml+44
	endr

		include	"pro_cia.s"

cheque:		incbin	"check1.bit"
end:


		section	pisstank,code_c



l:		incbin	"logo.bit"
Logo:		equ	l+44

Font:		incbin	"font.bit"

mt_data:	incbin	"df0:pak.SHIT"

Sprite0:	dc.l	0
		dc.w	$8000,$8000,$c000,$c000,$a000,$e000,$f000,$b000
		dc.w	$d800,$b800,$b400,$8400,$fa00,$da00,$cd00,$d500
		dc.w	$8780,$d680,$86c0,$d640,$c2a0,$d660,$feb0,$d670
		dc.w	$a1c0,$8cc0,$d900,$a100,$eb00,$a900,$b780,$f480
		dc.w	$c680,$c580,$0240,$03c0,$0240,$03c0,$0180,$0180
		dc.w	0,0

Sprite1:	dc.l	0
		dc.w	$8000,$8000,$c000,$c000,$e000,$a000,$f000,$9000
		dc.w	$e800,$9800,$ec00,$9c00,$b600,$8e00,$b300,$8f00
		dc.w	$b180,$8f80,$b1c0,$8fc0,$b1e0,$8fe0,$b1f0,$8ff0
		dc.w	$e3c0,$9fc0,$e700,$9f00,$ef00,$9f00,$f780,$b780
		dc.w	$c780,$c780,$03c0,$03c0,$03c0,$03c0,$0180,$0180
		dc.w	0,0

Mask:		dcb.b	44*256,0






*************************************************
*                     			        *
* Copper Lists					*
*                                               *
*************************************************

NoSprite:	dc.w	0,0,0,0,0,0,0,0,0,0

Copper2:	dc.w	$008e,$2171		; DIWStart
		dc.w	$0090,$37d1		; DIWStop
		dc.w	$0092,$0030		; DDFStart
		dc.w	$0094,$00d8		; DDFStop
		dc.w	$0100,$5200		; 1 Bitplane Colour
		dc.w	$0108,0
		dc.w	$010a,0

		dc.w	$0102,$0000

spr0:		dc.w	$120,0	;Sprite0/$10000
		dc.w	$122,0	;Sprite0&$ffff

		dc.w	$124,0	;Sprite1/$10000
		dc.w	$126,0	;Sprite1&$ffff

		dc.w	$128,0	;NoSprite/$10000
		dc.w	$12a,0	;NoSprite&$ffff

		dc.w	$12c,0	;NoSprite/$10000
		dc.w	$12e,0	;NoSprite&$ffff

		dc.w	$130,0	;NoSprite/$10000
		dc.w	$132,0	;NoSprite&$ffff

		dc.w	$134,0	;NoSprite/$10000
		dc.w	$136,0	;NoSprite&$ffff

		dc.w	$138,0	;NoSprite/$10000
		dc.w	$13a,0	;NoSprite&$ffff

		dc.w	$13c,0	;NoSprite/$10000
		dc.w	$13e,0	;NoSprite&$ffff

		dc.w	$180
		dc.w	0
		dc.w	$182,$f00


		dc.w	$0180+%000110,$0aab
		dc.w	$0180+%001010,$0334
		dc.w	$0180+%001110,$0fff
		dc.w	$0180+%010010,$0ccd
		dc.w	$0180+%010110,$0003
		dc.w	$0180+%011010,$0789
		dc.w	$0180+%011110,$0557
		dc.w	$0180+%100010,$0445
		dc.w	$0180+%100110,$0223
		dc.w	$0180+%101010,$0eef
		dc.w	$0180+%101110,$0fff
		dc.w	$0180+%110010,$0000
		dc.w	$0180+%110110,$0004
		dc.w	$0180+%111010,$0334
		dc.w	$0180+%111110,$0c77

		dc.w	$0180+%000100,$0aab
		dc.w	$0180+%001000,$0334
		dc.w	$0180+%001100,$0fff
		dc.w	$0180+%010000,$0ccd
		dc.w	$0180+%010100,$0003
		dc.w	$0180+%011000,$0789
		dc.w	$0180+%011100,$0557
		dc.w	$0180+%100000,$0445
		dc.w	$0180+%100100,$0223
		dc.w	$0180+%101000,$0eef
		dc.w	$0180+%101100,$0fff
		dc.w	$0180+%110000,$0000
		dc.w	$0180+%110100,$0004
		dc.w	$0180+%111000,$0334
		dc.w	$0180+%111100,$0c77




		dc.w	$2001,$fffe

plane0:		dc.w	$00e2,Check&$ffff	; Bitplane 0
		dc.w	$00e0
		dc.w	Check/$10000

l0:		dc.w	$00e6,0	;Logo&$ffff
		dc.w	$00e4,0	;Logo/$10000

		dc.w	$00ea,0	;(Logo+(44*36))&$ffff
		dc.w	$00e8,0	;(Logo+(44*36))/$10000

		dc.w	$00ee,0	;(Logo+(44*36*2))&$ffff
		dc.w	$00ec,0	;(Logo+(44*36*2))/$10000

		dc.w	$00f2,0	;(Logo+(44*36*3))&$ffff
		dc.w	$00f0,0	;(Logo+(44*36*3))/$10000

ypos:		set	$2109

Modulos:
		rept	36
		dc.w	ypos,$fffe,$e2,0,$182,0,$180,0
ypos:		set	ypos+$0100
		endr

		dc.w	$100,$4200

		dc.w	$00e6,Plane1&$ffff
		dc.w	$00e4,Plane1/$10000

		dc.w	$00ea,Plane2&$ffff
		dc.w	$00e8,Plane2/$10000

swapsi:		dc.w	$00ee,Plane3a&$ffff
		dc.w	$00ec,Plane3a/$10000

		dc.w	$0180+%00100,$0000	; Shadow Col
		dc.w	$0180+%00110,$0000

		dc.w	$0180+%01000,$0fff	; Text Col
		dc.w	$0180+%01010,$0fff
		dc.w	$0180+%01100,$0fff
		dc.w	$0180+%01110,$0fff

		dc.w	$0180+%11000,$0ff0	; Highlight bar
		dc.w	$0180+%11010,$0ff0
		dc.w	$0180+%11100,$0ff0
		dc.w	$0180+%11110,$0ff0

		dc.w	$0180+%10000,$0ff0	; Highlighted Col
		dc.w	$0180+%10010,$0ff0
		dc.w	$0180+%10100,$0ff0
		dc.w	$0180+%10110,$0ff0

		;dc.w	$01a2,$0fff,$01a4,$0fde,$01a6,$0fbd
		;dc.w	$01a8,$0f8c,$01aa,$0f6b,$01ac,$0f4a,$01ae,$0f38
		;dc.w	$01b0,$0f26,$01b2,$0e25,$01b4,$0e12,$01b6,$0e00
		;dc.w	$01b8,$0c10,$01ba,$0a20,$01bc,$0820,$01be,$0000

		dc.w	$01a2,$0fff,$01a4,$0efd,$01a6,$0dfb
		dc.w	$01a8,$0cf8,$01aa,$0bf6,$01ac,$0af4,$01ae,$08f3
		dc.w	$01b0,$06f2,$01b2,$05e2,$01b4,$02e1,$01b6,$00e0
		dc.w	$01b8,$00c1,$01ba,$00a2,$01bc,$0082,$01be,$0000

Modulosb:
		rept	223-36
		dc.w	ypos,$fffe,$e2,0,$182,0,$180,0
ypos:		set	ypos+$0100
		endr

		dc.w	$ffdf,$fffe

ypos:		set	$0009
Modulos2:
		rept	$37
		dc.w	ypos,$fffe,$e2,0,$182,0,$180,0
ypos:		set	ypos+$0100
		endr

		dc.w	$100,0

		dc.l	-2










;ce:
;		org	$50000

Check:		equ	$70000

Plane1:		equ	$80000-(44*256*4)
Plane2:		equ	Plane1+(44*256)
Plane3a:	equ	Plane2+(44*256)
Plane3b:	equ	Plane3a+(44*256)

		printt	"Code Ends..."
		printv	end

