	section l,code_c

Trap_vec0  = $80
Execbase   = $4
Oldopen    = -$198
Intenar    = $01c
Intena     = $09a
Dmaconr    = $002
Dmacon     = $096
Cop1lch    = $080
Copjmp1    = $088
Vposr      = $004

Tabelle=$76000
planes=$60000

	Move.l	#Start,$80.w	; Trap vector 0
	Trap	#0		; Execute trap 0 to give full control of the
	Rts			; 68000, needs an RTE to return.

Start:
	bsr.L	tabin
	bsr.L	tabin2
	bsr.L	tabin3
	bsr.L	mouseinit
	bsr.S	KillSys
	bsr.L	main
	bsr.S	setupsys

	Rte		; Return from exception 
		

*****************************************************************************
;Killsys - Disable operating system and interrupts
*****************************************************************************
Killsys:
	Move.l	$4.w,a6		; Execbase vector
	Lea	Gfxname(pc),a1	; Pointer to "graphics.library" into a1
	Jsr	Oldopen(a6)	; Open this library
	Lea	$dff000,a6	; Pointer to custom chips
	Move.l	d0,a0		; Address of the graphics library
	Move.l	38(a0),Sys_copl		; Remember the System copperlist
	Move	Intenar(a6),Int_set	; System interrupts
	Move	#$7fff,Intena(a6)	; Now switch off all interrupts
	Move.l	$6c.w,Vbl_vec		; System vertical blanking int.
	Move	Dmaconr(a6),Dma_set	; System DMA
	Move	#$7fff,Dmacon(a6)	; Clear all DMA
	Move	#$87c0,Dmacon(a6)	; Now set the required DMA channels

	Move.l	#Cop,Cop1lch(a6)	; Init. our own copperlist
	Clr	Copjmp1(a6)

	Rts

Gfxname:	Dc.b "graphics.library",0
	Even
*****************************************************************************
;Sysreturn - Re-enable operating system and interrupts
*****************************************************************************
Setupsys:
	Lea	$dff000,a6
	Move	#$7fff,Intena(a6)	; Clear all interrupts
	Move.l	Vbl_vec,$6c.w	; Restore VBL interrupt
	Move	Int_set,d0
	Or	#$c000,d0
	Move	d0,Intena(a6)		; Restore system interrupts
	Move	#$7fff,Dmacon(a6)
	Move	Dma_set,d0
	Or	#$8200,d0
	Move	d0,Dmacon(a6)		; Restore system DMA
	Move.l	Sys_copl,Cop1lch(a6)	; Restore system copperlist
	Clr	Copjmp1(a6)
	Rts

Vbl_vec:          dc.l 0
Int_set:          dc.l 0
Dma_set:          dc.l 0
Sys_copl:          dc.l 0


Main:
	Move.l	Vposr(a6),d0
	And.l	#$1ff00,d0
	Cmp.l	#$00100,d0	; Wait for vertical position 1
	Bne.s	Main

	bsr.L	mouse
	bsr.S	rout1
	bsr.S	rout2
	bsr.L	rout3
	; ROUTINE ;

	Btst	#6,$bfe001	; Check the left mouse button
	Bne.s	Main

	MOVEQ	#0,D0

	Rts


rout1:	LEA	planepointer1(PC),A0	
	MOVE.L	4(A0),D0	
	MOVE.L	(A0),4(A0)	
	MOVE.L	8(A0),(A0)	
	MOVE.L	D0,8(A0)
	LEA	cop+2(PC),A0	
	ADD.L	#$00000540,D0
	ADDQ.L	#2,D0
	MOVE.L	D0,D1
	ADD.L	#$0000002A,D1
	MOVE.W	D0,4(A0)
	MOVE.W	D1,12(A0)
	SWAP	D0
	SWAP	D1
	MOVE.W	D0,(A0)
	MOVE.W	D1,8(A0)
	RTS	
	
rout2:	MOVE.L	planepointer2(PC),D0    
	ADDQ.L	#2,D0
	ADD.L	#$00000540,D0
	MOVE.L	D0,$0054(A6)
	MOVE.L	#$01000000,$0040(A6)
	MOVE.W	#2,$0066(A6)
	MOVE.W	#$4E14,$0058(A6)
	ADD.L	#$00005DD6,D0
	MOVE.L	D0,A5
	MOVEM.L	NULL(PC),D0-D6/A0-A4 
CLEAR:	BLK.L	$3D8/4,$48E5FEF8
	RTS	


rout3:	LEA	tabelle+$390c,A1       ;balls of fire
	LEA	Tabelle+$36b0,A3
	MOVE.W	#$0081,D7
	LEA	F9A64(PC),A4
	LEA	Tabelle,A5
	MOVEM.W	(A4)+,D0-D2
	ADD.W	D0,Z9A7C
	ADD.W	D1,Z9A7E
	SUB.W	D2,Z96DA
	MOVE.W	Z96da(PC),D2
	CMP.W	#$0CB2,D2
	BGE.S	lbC00004E
lbC000036:
	CMP.W	#$0C99,D2
	BGE.S	lbC00005C
	ADD.W	#$0019,D2
	SUBQ.W	#1,Z9560
	BRA.S	lbC000036
 
lbC000048:
	CMP.W	#$0CB2,D2
	BLE.S	lbC00005C
lbC00004E:
	SUB.W	#$0019,D2
	ADDQ.W	#1,Z9560
	BRA.S	lbC000048
 
lbC00005C:
	MOVE.W	D2,Z96DA
	LEA	tab(PC),A0
	MOVE.W	Z9560(PC),D0
	BGE.S	lbC000074
	ADD.W	#$0082,D0
	BRA.S	lbC00007E
 
lbC000074:
	CMP.W	#$0081,D0
	BLE.S	lbC00007E
	SUB.W	#$0082,D0
lbC00007E:
	MOVE.W	D0,Z9560
	ADD.W	D0,D0
	ADD.W	D0,D0
	ADD.W	D0,A0
	MOVE.L	planepointer2(PC),A4
lbC00008E:
	BTST	#6,2(A6)
	BNE.S	lbC00008E
	MOVE.L	#$FFFF0000,$0044(A6)
	MOVE.L	#$0026001C,$0060(A6)
	MOVE.L	#$001C0026,$0064(A6)
lbC0000AE:
	MOVE.L	A4,A2
	MOVE.W	(A0)+,D0
	MOVE.W	(A0)+,D1
	MOVE.W	D2,-(A7)
	ADD.W	D2,D2
	MOVE.W	0(A1,D2.W),D6
	ADD.W	D2,D2
	MOVE.L	0(A5,D2.W),D5
	MOVE.W	D5,D3
	ASR.W	#1,D3
	ADD.W	Z9A7C(PC),D0
	ADD.W	Z9A7E(PC),D1
	AND.W	#$03FF,D0
	AND.W	#$03FF,D1
	SUB.W	#$0200,D0
	SUB.W	#$0200,D1
	MULS	D6,D0
	BEQ.S	lbC000164
	MULS	D6,D1
	BEQ.S	lbC000164
	MOVEQ	#9,D6
	ASR.L	D6,D0
	ASR.L	D6,D1
	ADD.W	D3,D1
	ADD.W	#$00B0,D0
	BMI.S	lbC000164
	CMP.W	#$0150,D0
	BGE.S	lbC000164
	ADD.W	#$009F,D1
	BMI.S	lbC000164
	CMP.W	#$012E,D1
	BGE.S	lbC000164
	ADD.W	D1,D1
	ADD.W	0(A3,D1.W),A2
	MOVE.W	D0,D6
	ASR.W	#3,D6
	ADD.W	D6,A2
	AND.W	#$000F,D0
	ROR.W	#4,D0
	MOVE.W	D0,D2
	OR.W	#$0FCA,D0
	SWAP	D0
	MOVE.W	D2,D0
	MOVE.L	#Ball,D6   
	MOVE.L	#Maske,D2  
	SWAP	D5
	MOVE.W	D5,D4
	SWAP	D5
	ADD.W	D5,D5
	EXT.L	D5
	ADD.L	D5,D2
	ADD.L	D5,D6
lbC000144:
	BTST	#6,2(A6)
	BNE.S	lbC000144
	MOVE.L	A2,$0054(A6)
	MOVE.L	A2,$0048(A6)
	MOVE.L	D6,$004C(A6)
	MOVE.L	D2,$0050(A6)
	MOVE.L	D0,$0040(A6)
	MOVE.W	D4,$0058(A6)
lbC000164:
	MOVE.W	(A7)+,D2
	SUB.W	#$0019,D2
	DBRA	D7,lbC0000AE
lbC00016E:
	BTST	#6,2(A6)
	BNE.S	lbC00016E
	RTS	

mouseinit:
	MOVE.B	$DFF00A+1,D0
	MOVE.B	D0,MHCNT
	MOVE.B	$DFF00A,D0
	MOVE.B	D0,MVCNT
	RTS
mouse:
	MOVE.B	$DFF00A+1,D4
	MOVE.B	MHCNT(PC),D5
	MOVE.B	D4,MHCNT
	SUB.B	D5,D4
	BEQ.S	PL2
	BLT.S	PL1
	CMP.W	#0018,F9a64
	BEQ.S	PL2
	ADD.W	#1,F9A64
	BRA.S	PL2
PL1:	CMP.W	#$FFE8,F9A64
	BEQ.S	PL2
	SUB.W	#1,F9A64
PL2:	MOVE.B	$DFF00A,D4
	MOVE.B	MVCNT(PC),D5
	MOVE.B	D4,MVCNT
	SUB.B	D5,D4
	BEQ.S	PL4
	BLT.S	PL3
	CMP.W	#0018,F9A64+2
	BEQ.S	PL4
	ADD.W	#1,F9A64+2
	BRA.S	PL4
PL3:	CMP.W	#$FFE8,F9A64+2
	BEQ.S	PL4
	SUB.W	#1,F9A64+2
PL4:	RTS

MVCNT:	DC.B 0
MHCNT:	DC.B 0

tabin:	MOVEQ	#0,D0
	MOVEQ	#$54,D1
	MOVE.W	#$012D,D2
	LEA	Tabelle+$36b0,A0
lbC00000E:
	MOVE.W	D0,(A0)+
	ADD.L	D1,D0
	DBRA	D2,lbC00000E
	RTS	

tabin2:	MOVE.W	#1,D0
	LEA	Tabelle,A0
	MOVE.L	#$00002000,D1
	MOVE.W	#$0DAB,D7
lbC000014:
	MOVE.L	D1,D2
	DIVU	D0,D2
	CMP.W	#15,D2
	BLE.S	lbC000020
	MOVEQ	#15,D2
lbC000020:
	MOVE.W	D2,D3
	ADDQ.W	#1,D3
	LSL.W	#7,D3
	ADDQ.W	#2,D3
	MOVE.W	D3,(A0)+
	NEG.W	D2
	ADD.W	#15,D2
	MOVE.W	D2,(A0)+
	ADDQ.W	#1,D0
	DBRA	D7,lbC000014
	RTS	

tabin3:
	MOVE.L	#$40600,D0
	MOVEQ	#$5A,D1
	LEA	TABELLE+$390c,A0
	MOVE.W	#$0DAB,D7
loop:	MOVE.L	D0,D2
	DIVU	D1,D2
	MOVE.W	D2,(A0)+
	ADDQ.W	#1,D1
	DBF	D7,LOOP
	RTS


F9A64:	dc.w	$0000,$0000,$0030
Z9A7C:	dc.w	$0000
Z9A7E:	dc.w	$0000
Z96DA:	dc.w	$0c9e
Z9560:	dc.w	$006e

planepointer1:	dc.l	planes
planepointer2:	dc.l	planes+$6318
planepointer3:	dc.l	planes+$c630

NULL:	BLK.W	36,0

ball:	DC.W	$07E0,$07C0,$03C0,$07C0,$07E0,$07C0,$03C0,$0380
	DC.W	$03C0,$0380,$0380,$0380,$0180,$0100,$0080,$0100
	DC.W	$07E0,$07C0,$03C0,$07C0,$07E0,$07C0,$03C0,$0380
	DC.W	$03C0,$0380,$0380,$0380,$0180,$0100,$0180,$0100
	DC.W	$1FF8,$1FF0,$0FF0,$1FF0,$0FF0,$0FE0,$0FF0,$0FE0
	DC.W	$05E0,$07C0,$07C0,$04C0,$02C0,$0280,$0100,$0000
	DC.W	$1FF8,$1FF0,$0FF0,$1FF0,$0FF0,$0FE0,$0FF0,$0FE0
	DC.W	$07E0,$07C0,$05C0,$07C0,$03C0,$0380,$0100,$0000
	DC.W	$3FFC,$3FF8,$1FF8,$3FF8,$1BF8,$1BF0,$0DF0,$0DE0
	DC.W	$0AF0,$0FE0,$07C0,$0580,$0380,$0100,$0000,$0000
	DC.W	$3FFC,$3FF8,$1FF8,$3FF8,$1FF8,$1FF0,$0FF0,$0FE0
	DC.W	$0DF0,$0DE0,$07E0,$07C0,$03C0,$0100,$0000,$0000
	DC.W	$77FE,$77FC,$3BFC,$3BF8,$35FC,$35F8,$1AF8,$1AF0
	DC.W	$0DE0,$0FC0,$07C0,$0740,$0140,$0000,$0000,$0000
	DC.W	$7FFE,$7FFC,$3FFC,$3FF8,$3BFC,$3BF8,$1DF8,$1DF0
	DC.W	$0FF0,$0FE0,$07E0,$07C0,$01C0,$0000,$0000,$0000
	DC.W	$6BFE,$6BFC,$35FC,$75FC,$3BF8,$3BF0,$1DF0,$1DE0
	DC.W	$0FE0,$0FC0,$03A0,$0280,$0000,$0000,$0000,$0000
	DC.W	$77FE,$77FC,$3BFC,$7BFC,$3FFC,$3FF8,$1FF8,$1FF0
	DC.W	$0FF0,$0FE0,$03E0,$0380,$0000,$0000,$0000,$0000
	DC.W	$F7FF,$F7FE,$7BFE,$7BF8,$3FF8,$3FF0,$1FF0,$1FE0
	DC.W	$0FD0,$07A0,$0040,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$7FFE,$7FFC,$3FFC,$3FF8,$1FF8,$1FF0
	DC.W	$0FF0,$07E0,$01C0,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFE,$FFFC,$7FFC,$7FF8,$3FF8,$3FF0,$1FF0,$0FD0
	DC.W	$07A0,$0240,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$7FFE,$7FFC,$3FFC,$3FF8,$1FF8,$0FF0
	DC.W	$07E0,$03C0,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFE,$FFFC,$7FFC,$7FF8,$3FF8,$3FE8,$0FE8,$0FA0
	DC.W	$0240,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$7FFE,$7FFC,$3FFC,$3FF8,$0FF8,$0FE0
	DC.W	$03C0,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFE,$FFFC,$7FFC,$7FF4,$3FF4,$1FD0,$0FD0,$0240
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$7FFE,$7FFC,$3FFC,$1FF0,$0FF0,$03C0
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFE,$FFFA,$3FFA,$3FF0,$1FE8,$0FA0,$0220,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$3FFE,$3FF8,$1FF8,$0FE0,$03E0,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFD,$7FF8,$3FF8,$3FE8,$0FD0,$0440,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$7FFC,$3FFC,$3FF8,$0FF0,$07C0,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$7FFC,$7FF4,$1FF4,$1F90,$0420,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$7FFE,$7FFC,$1FFC,$1FF0,$07E0,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$7FFA,$3FE8,$0FC8,$0440,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$7FFE,$3FF8,$0FF8,$07C0,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$3FF4,$1F90,$0220,$0000,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$3FFC,$1FF0,$03E0,$0000,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$1FC8,$0440,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$1FF8,$07C0,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$0420,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$07E0,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000

maske:	DC.W	$07E0,$07C0,$03C0,$07C0,$07E0,$07C0,$03C0,$0380
	DC.W	$03C0,$0380,$0180,$0380,$0180,$0100,$0180,$0100
	DC.W	$07E0,$07C0,$03C0,$07C0,$07E0,$07C0,$03C0,$0380
	DC.W	$03C0,$0380,$0180,$0380,$0180,$0100,$0180,$0100
	DC.W	$1FF8,$1FF0,$0FF0,$1FF0,$0FF0,$0FE0,$0FF0,$0FE0
	DC.W	$07E0,$07C0,$03C0,$07C0,$03C0,$0380,$0180,$0000
	DC.W	$1FF8,$1FF0,$0FF0,$1FF0,$0FF0,$0FE0,$0FF0,$0FE0
	DC.W	$07E0,$07C0,$03C0,$07C0,$03C0,$0380,$0180,$0000
	DC.W	$3FFC,$3FF8,$1FF8,$3FF8,$1FF8,$1FF0,$0FF0,$0FE0
	DC.W	$0FF0,$0FE0,$07E0,$07C0,$03C0,$0180,$0000,$0000
	DC.W	$3FFC,$3FF8,$1FF8,$3FF8,$1FF8,$1FF0,$0FF0,$0FE0
	DC.W	$0FF0,$0FE0,$07E0,$07C0,$03C0,$0180,$0000,$0000
	DC.W	$7FFE,$7FFC,$3FFC,$3FF8,$3FFC,$3FF8,$1FF8,$1FF0
	DC.W	$0FF0,$0FE0,$07E0,$07C0,$01C0,$0000,$0000,$0000
	DC.W	$7FFE,$7FFC,$3FFC,$3FF8,$3FFC,$3FF8,$1FF8,$1FF0
	DC.W	$0FF0,$0FE0,$07E0,$07C0,$01C0,$0000,$0000,$0000
	DC.W	$7FFE,$7FFC,$3FFC,$7FFC,$3FFC,$3FF8,$1FF8,$1FF0
	DC.W	$0FF0,$0FE0,$03E0,$0380,$0000,$0000,$0000,$0000
	DC.W	$7FFE,$7FFC,$3FFC,$7FFC,$3FFC,$3FF8,$1FF8,$1FF0
	DC.W	$0FF0,$0FE0,$03E0,$0380,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$7FFE,$7FFC,$3FFC,$3FF8,$1FF8,$1FF0
	DC.W	$0FF0,$07E0,$01C0,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$7FFE,$7FFC,$3FFC,$3FF8,$1FF8,$1FF0
	DC.W	$0FF0,$07E0,$01C0,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$7FFE,$7FFC,$3FFC,$3FF8,$1FF8,$0FF0
	DC.W	$07E0,$03C0,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$7FFE,$7FFC,$3FFC,$3FF8,$1FF8,$0FF0
	DC.W	$07E0,$03C0,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$7FFE,$7FFC,$3FFC,$3FF8,$0FF8,$0FE0
	DC.W	$03C0,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$7FFE,$7FFC,$3FFC,$3FF8,$0FF8,$0FE0
	DC.W	$03C0,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$7FFE,$7FFC,$3FFC,$1FF0,$0FF0,$03C0
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$7FFE,$7FFC,$3FFC,$1FF0,$0FF0,$03C0
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$3FFE,$3FF8,$1FF8,$0FE0,$03E0,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$FFFE,$3FFE,$3FF8,$1FF8,$0FE0,$03E0,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$7FFC,$3FFC,$3FF8,$0FF0,$07C0,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$FFFF,$7FFC,$3FFC,$3FF8,$0FF0,$07C0,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$7FFE,$7FFC,$1FFC,$1FF0,$07E0,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$7FFE,$7FFC,$1FFC,$1FF0,$07E0,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$7FFE,$3FF8,$0FF8,$07C0,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$7FFE,$3FF8,$0FF8,$07C0,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$3FFC,$1FF0,$03E0,$0000,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$3FFC,$1FF0,$03E0,$0000,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$1FF8,$07C0,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$1FF8,$07C0,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$07E0,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$07E0,$0000,$0000,$0000,$0000,$0000,$0000,$0000
	DC.W	$0000,$0000,$0000,$0000,$0000,$0000,$0000,$0000

cop:	DC.W	$00E0,$0001,$00E2,$E44C,$00E4,$0001,$00E6,$E476
	DC.W	$008E,$1867,$0090,$36D4,$0092,$0038,$0094,$00D0
	DC.W	$0100,$2200,$0104,$0024,$0102,$0000,$0120,$0000
	DC.W	$0122,$9B76,$0124,$0000,$0126,$9EBA,$0128,$0000
	DC.W	$012A,$A1FE,$012C,$0000,$012E,$A542,$0130,$0000
	DC.W	$0132,$A886,$0134,$0000,$0136,$ABCA,$0138,$0000
	DC.W	$013A,$AF0E,$013C,$0000,$013E,$B252,$0096,$0020
	DC.W	$0108,$002C,$010A,$002C,$0180,$0000,$0182,$0FFF
	DC.W	$0184,$034B,$0186,$0017,$01A0,$0000,$01A2,$0000
	DC.W	$01A4,$0000,$01A6,$0000,$01A8,$0000,$01AA,$0000
	DC.W	$01AC,$0000,$01AE,$0000,$01B0,$0000,$01B2,$0000
	DC.W	$01B4,$0000,$01B6,$0000,$01B8,$0000,$01BA,$0000
	DC.W	$01BC,$0000,$01BE,$0000,$FFFF,$FFFE,$0DEF,$07BC

tab:	DC.L	$6EED027A,$A8471EF4,$0CE71C92,$A9E9C5C6,$B6FD186A
	DC.L	$3F5099B8,$19B1EC9D,$17F5A22F,$7F9B537B,$BFACED85
	DC.L	$5DE54C8A,$2D190A88,$C6D09801,$37348DFA,$F52E3F4B
	DC.L	$18CB9014,$C7E50C8A,$F10130FB,$3F730C11,$46C80C51
	DC.L	$016513E7,$7D6BC9A7,$D5DE364C,$63079003,$2E17522C
	DC.L	$A60D8E5F,$98D884AD,$5CC0732A,$4C04AFA7,$7BBDF4C4
	DC.L	$A20BF927,$5E6E4A06,$99754FEB,$4796B0B8,$525EDDE8
	DC.L	$D7C9E819,$92F397C7,$97F1B65B,$44FAB264,$73CB6424
	DC.L	$F3492B4E,$3A673E0E,$544B3F4A,$1FAB1328,$BA7EF0CF
	DC.L	$3BD1B973,$A0F6878B,$09E48865,$24DB0EDD,$E747DE6A
	DC.L	$86E7D15A,$9C2F9B5E,$ACE9E549,$CD23A214,$A146A126
	DC.L	$87835FD2,$12731E22,$B9FD3BD2,$CF7CBCA0,$B61A29C3
	DC.L	$517F9CB9,$B7B01C46,$2F3227B9,$576E8E72,$A65986A1
	DC.L	$1653FA51,$1A5028A4,$D6376460,$8F873FAA,$6040CD13
	DC.L	$300142D0,$E06DBF4E,$C8D46CE5,$6510C6EC,$4CAC3BEE
	DC.L	$624CF43C,$5049F2A4,$319B5D7F,$8CFB19F1,$8A4A996C
	DC.L	$612EF876,$10FA46AD,$4ED82008,$C422835F,$7A0CE12E
	DC.L	$8F887596,$2E6BD4A4,$BDCBC5D6,$57AC54DB,$7DDC219B
	DC.L	$091CFC77,$6380B7D2,$F61933D0,$E5D0BD5E,$FA959D72
	DC.L	$E1B9EB93,$9499A59C,$167D00BE,$63BFFAC5,$A630399C
	DC.L	$ADB70F13,$9A3CDCDE,$DCC49AE1,$5EDCB2AC,$FE3C1642
	DC.L	$41A5891F,$450C4179,$F6F8AFC5,$85309D7D,$17917B21
	DC.L	$B93EF37C,$9CFCC328,$7FDCCC54,$681B67C5,$9747F71B
	DC.L	$BCA2C456,$68CA0798,$C29A412D,$7B4DD1C8,$04E1C610
	DC.L	$FDC3F15B,$F1A840B8,$42B94734,$5FF41F56,$3DCF72EB
	DC.L	$051ED70A,$09375C4F,$FC53626A,$6337AEDD,$4715BC01
	DC.L	$6EED027A,$A8471EF4,$0CE71C92,$A9E9C5C6,$B6FD186A
	DC.L	$3F5099B8,$19B1EC9D,$17F5A22F,$7F9B537B,$BFACED85
	DC.L	$5DE54C8A,$2D190A88,$C6D09801,$37348DFA,$F52E3F4B
	DC.L	$18CB9014,$C7E50C8A,$F10130FB,$3F730C11,$46C80C51
	DC.L	$016513E7,$7D6BC9A7,$D5DE364C,$63079003,$2E17522C
	DC.L	$A60D8E5F,$98D884AD,$5CC0732A,$4C04AFA7,$7BBDF4C4
	DC.L	$A20BF927,$5E6E4A06,$99754FEB,$4796B0B8,$525EDDE8
	DC.L	$D7C9E819,$92F397C7,$97F1B65B,$44FAB264,$73CB6424
	DC.L	$F3492B4E,$3A673E0E,$544B3F4A,$1FAB1328,$BA7EF0CF
	DC.L	$3BD1B973,$A0F6878B,$09E48865,$24DB0EDD,$E747DE6A
	DC.L	$86E7D15A,$9C2F9B5E,$ACE9E549,$CD23A214,$A146A126
	DC.L	$87835FD2,$12731E22,$B9FD3BD2,$CF7CBCA0,$B61A29C3
	DC.L	$517F9CB9,$B7B01C46,$2F3227B9,$576E8E72,$A65986A1
	DC.L	$1653FA51,$1A5028A4,$D6376460,$8F873FAA,$6040CD13
	DC.L	$300142D0,$E06DBF4E,$C8D46CE5,$6510C6EC,$4CAC3BEE
	DC.L	$624CF43C,$5049F2A4,$319B5D7F,$8CFB19F1,$8A4A996C
	DC.L	$612EF876,$10FA46AD,$4ED82008,$C422835F,$7A0CE12E
	DC.L	$8F887596,$2E6BD4A4,$BDCBC5D6,$57AC54DB,$7DDC219B
	DC.L	$091CFC77,$6380B7D2,$F61933D0,$E5D0BD5E,$FA959D72
	DC.L	$E1B9EB93,$9499A59C,$167D00BE,$63BFFAC5,$A630399C
	DC.L	$ADB70F13,$9A3CDCDE,$DCC49AE1,$5EDCB2AC,$FE3C1642
	DC.L	$41A5891F,$450C4179,$F6F8AFC5,$85309D7D,$17917B21
	DC.L	$B93EF37C,$9CFCC328,$7FDCCC54,$681B67C5,$9747F71B
	DC.L	$BCA2C456,$68CA0798,$C29A412D,$7B4DD1C8,$04E1C610
	DC.L	$FDC3F15B,$F1A840B8,$42B94734,$5FF41F56,$3DCF72EB
	DC.L	$051ED70A,$09375C4F,$FC53626A,$6337AEDD,$4715BC01
	DC.L	$00000239,$047306AC,$08E40B1C,$0D530F89,$11BE13F1
	DC.L	$16231853,$1A821CAE,$1ED820FF,$23242546,$27662982
	DC.L	$2B9B2DB0,$2FC231D1,$33DB35E1,$37E439E1,$3BDB3DCF
	DC.L	$3FBF41AA,$43904570,$474B4921,$4AF04CBA,$4E7E503C
	DC.L	$51F453A5,$554F56F3,$58915A27,$5BB65D3E,$5EBF6039
	DC.L	$61AB6315,$647865D2,$67256870,$69B36AED,$6C1F6D49
	DC.L	$6E6A6F83,$70927199,$7298738D,$7479755C,$76367707
	DC.L	$77CF788D,$794279ED,$7A8F7B27,$7BB67C3B,$7CB67D28
	DC.L	$7D8F7DED,$7E427E8C,$7ECD7F03,$7F307F53,$7F6C7F7B
	DC.L	$7F807F7B,$7F6C7F53,$7F307F03,$7ECD7E8C,$7E427DEE
	DC.L	$7D907D28,$7CB77C3B,$7BB67B28,$7A9079EE,$7943788E
	DC.L	$77D07708,$7637755E,$747A738E,$7299719B,$70946F84
	DC.L	$6E6C6D4A,$6C216AEF,$69B46872,$672765D4,$64796317
	DC.L	$61AD603B,$5EC15D40,$5BB85A29,$589356F6,$555253A7
	DC.L	$51F6503E,$4E814CBD,$4AF34923,$474E4573,$439241AC
	DC.L	$3FC23DD2,$3BDD39E4,$37E635E4,$33DE31D3,$2FC52DB3
	DC.L	$2B9E2985,$27682549,$23272102,$1EDB1CB1,$1A851856
	DC.L	$162613F4,$11C10F8C,$0D560B1F,$08E706AF,$0476023C
	DC.L	$0003FDC8,$FB8EF955,$F71DF4E5,$F2AEF078,$EE43EC10
	DC.L	$E9DEE7AE,$E57FE353,$E129DF02,$DCDDDABB,$D89BD67F
	DC.L	$D466D251,$D03ECE30,$CC26CA1F,$C81DC61F,$C426C231
	DC.L	$C042BE57,$BC71BA90,$B8B5B6E0,$B510B346,$B182AFC4
	DC.L	$AE0DAC5C,$AAB1A90D,$A770A5D9,$A44AA2C2,$A1419FC7
	DC.L	$9E559CEB,$9B889A2D,$98DA9790,$964D9512,$93E092B7
	DC.L	$9195907D,$8F6D8E66,$8D688C72,$8B868AA3,$89C988F8
	DC.L	$88308772,$86BD8612,$857084D8,$844983C4,$834982D7
	DC.L	$826F8211,$81BD8172,$813280FB,$80CE80AB,$80938084
	DC.L	$807F8083,$809280AB,$80CE80FA,$81318171,$81BC8210
	DC.L	$826E82D5,$834783C2,$844784D5,$856E860F,$86BB876F
	DC.L	$882D88F5,$89C58A9F,$8B828C6F,$8D648E62,$8F699078
	DC.L	$919192B2,$93DC950E,$9648978A,$98D59A28,$9B839CE5
	DC.L	$9E4F9FC1,$A13BA2BC,$A444A5D3,$A769A906,$AAAAAC55
	DC.L	$AE06AFBD,$B17BB33F,$B509B6D8,$B8AEBA89,$BC69BE4F
	DC.L	$C03AC229,$C41EC617,$C815CA17,$CC1DCE28,$D036D248
	DC.L	$D45ED677,$D893DAB2,$DCD4DEF9,$E121E34A,$E577E7A5
	DC.L	$E9D5EC07,$EE3AF06F,$F2A5F4DC,$F714F94C,$FB85FDBF


