PART2  ;		* * * * * * * * * * * * *
 ;		*  PROGRAM BY KIM WATT  *
 ;		* BREEZE COMPUTING INC. *
 ;		*     P.O. BOX  1013    *
 ;		* BERKLEY, MICH.  48072 *
 ;		*    (313)  288-9422    *
 ;		* * * * * * * * * * * * *			
 	ORG	5D30H
 SHPPOS	EQU	5ABFH
 COUNT	EQU	5ACDH
 WAY	EQU	5ADFH
 SPEED	EQU	5AE1H
 PSCORE	EQU	5AC9H
 BBYY	EQU	5AE7H
 DISPLY	EQU	5C19H
 DLY5	EQU	5C39H
 HOWNOW	EQU	5B2DH
 SCR316	EQU	5AB5H
 SAUPOS	EQU	5ABDH
 SHOTS	EQU	5AC1H
 HITS	EQU	5AC3H
 MISSES	EQU	5AC5H
 CSCORE	EQU	5AC7H
 HSCORE	EQU	5ACBH
 BUFFER	EQU	5ACFH
 SPARE2	EQU	5AD5H
 EXTRA	EQU	5AD9H
 SHIP	EQU	5AE2H
 ENTRY	EQU	5AE8H
 REPLAY	EQU	5B3FH
 DRAW	EQU	5BA5H
 ENTRWT	EQU	5C22H
 CLRSCR	EQU	5C2BH
 SCR301	EQU	5A0BH
 SCR302	EQU	59DAH
 DLY4	EQU	5C43H
 BLOWUP	EQU	5C95H
 NUMBER	EQU	5AE0H
 SHPMOV	CALL	PUTIT
 	LD	A,(14400)
 	CP	4
 	JP	Z,GAMEOV
 	CP	32
 	JR	Z,SHPLFT
 	CP	64
 	JR	Z,SHPRHT
 	CP	8
 	JR	Z,SHPRHT
 	CP	16
 	JR	Z,SHPLFT
 	RET
 SHPLFT	LD	HL,(SHPPOS)
 	LD	DE,16321
 	OR	A
 	SBC	HL,DE
 	RET	M
 	LD	HL,(SHPPOS)
 	DEC	HL
 	LD	(SHPPOS),HL
 	CALL	PUTIT
 	LD	A,(SPEED)
 	CP	32
 	JR	NZ,GGYY
 DYT	LD	DE,900H
 	LD	A,6
 	LD	(BBYY),A
 HHYY	DEC	DE
 	LD	A,D
 	OR	E
 	JR	NZ,HHYY
 	LD	A,(BBYY)
 	DEC	A
 	LD	(BBYY),A
 	RET	Z
 	JR	SHPMOV
 GGYY	CALL	NOISE6
 	RET
 SHPRHT	LD	HL,(SHPPOS)
 	LD	DE,16377
 	OR	A
 	SBC	HL,DE
 	RET	P
 	LD	HL,(SHPPOS)
 	INC	HL
 	LD	(SHPPOS),HL
 	CALL	PUTIT
 	LD	A,(SPEED)
 	CP	32
 	JR	NZ,GGYY
 	JR	DYT
 TARMOV	CALL	WAYTST
 	CALL	NOISEZ
 	LD	IX,15360+64
 	LD	BC,960
 	LD	(COUNT),BC
 TARAGN	PUSH	IX
 	POP	HL
 	LD	A,(HL)
 	CP	62
 	JR	Z,TAROUT
 	CP	60
 	JR	Z,TARIN
 	CP	42
 	JP	Z,TARSM
 BILL	INC	IX
 TARTOO	LD	BC,(COUNT)
 	DEC	BC
 	LD	(COUNT),BC
 	LD	A,C
 	OR	B
 	RET	Z
 	JR	TARAGN
 TAROUT	CALL	TESTBG
 	CALL	RID
 	PUSH	IX
 	POP	HL
 	LD	A,(WAY)
 	OR	A
 	JR	Z,PASTA
 	DEC	HL
 	DEC	HL
 	PUSH	HL
 	LD	HL,(COUNT)
 	INC	HL
 	INC	HL
 	LD	(COUNT),HL
 	POP	HL
 PASTA	INC	HL
 	PUSH	HL
 	LD	HL,(COUNT)
 	DEC	HL
 	DEC	HL
 	DEC	HL
 	DEC	HL
 	LD	(COUNT),HL
 	POP	HL
 	LD	(HL),60
 	INC	HL
 	LD	(HL),88
 	INC	HL
 	LD	(HL),62
 	INC	HL
 	PUSH	HL
 	POP	IX
 	JR	TARTOO
 TARIN	CALL	TESTBG
 	CALL	RID
 	PUSH	IX
 	POP	HL
 	LD	A,(WAY)
 	OR	A
 	JR	Z,PASTB
 	DEC	HL
 	DEC	HL
 	PUSH	HL
 	LD	HL,(COUNT)
 	INC	HL
 	INC	HL
 	LD	(COUNT),HL
 	POP	HL
 PASTB	INC	HL
 	PUSH	HL
 	LD	HL,(COUNT)
 	DEC	HL
 	DEC	HL
 	DEC	HL
 	DEC	HL
 	LD	(COUNT),HL
 	POP	HL
 	LD	(HL),62
 	INC	HL
 	LD	(HL),88
 	INC	HL
 	LD	(HL),60
 	INC	HL
 	PUSH	HL
 	POP	IX
 	JR	TARTOO
 RID	PUSH	IX
 	POP	HL
 	LD	(HL),32
 	INC	HL
 	LD	(HL),32
 	INC	HL
 	LD	(HL),32
 	RET
 ERASE	PUSH	HL
 	PUSH	IX
 	POP	HL
 	LD	(HL),32
 	POP	HL
 	RET
 WAYTST	LD	HL,15360+64+63
 	LD	DE,64
 	LD	B,13
 LOOP11	LD	A,(HL)
 	CP	60
 	JR	Z,GOBACK
 	CP	62
 	JR	Z,GOBACK
 	CP	42
 	JR	Z,GOBACK
 	ADD	HL,DE
 	DJNZ	LOOP11
 	LD	HL,15360+64
 	LD	DE,64
 	LD	B,13
 LOOP22	LD	A,(HL)
 	CP	62
 	JR	Z,GOFWD
 	CP	60
 	JR	Z,GOFWD
 	CP	42
 	JR	Z,GOFWD
 	ADD	HL,DE
 	DJNZ	LOOP22
 	RET
 GOBACK	LD	A,0FFH
 	LD	(WAY),A
 	CALL	TARDWN
 	RET
 GOFWD	LD	A,0
 	LD	(WAY),A
 	CALL	TARDWN
 	RET
 TARSM	CALL	TESTSM
 	CALL	ERASE
 	PUSH	IX
 	POP	HL
 	LD	A,(WAY)
 	OR	A
 	JR	Z,PASTC
 	DEC	HL
 	DEC	HL
 	PUSH	HL
 	LD	HL,(COUNT)
 	INC	HL
 	INC	HL
 	LD	(COUNT),HL
 	POP	HL
 PASTC	INC	HL
 	PUSH	HL
 	LD	HL,(COUNT)
 	DEC	HL
 	DEC	HL
 	LD	(COUNT),HL
 	POP	HL
 	LD	(HL),42
 	INC	HL
 	PUSH	HL
 	POP	IX
 	JP	TARTOO
 SHOTUP	LD	IX,15360
 	LD	BC,1024
 	LD	(COUNT),BC
 REPETE	PUSH	IX
 	POP	HL
 	LD	A,(HL)
 	CP	91
 	JR	Z,GOUP
 REPOST	INC	IX
 	LD	BC,(COUNT)
 	DEC	BC
 	LD	(COUNT),BC
 	LD	A,B
 	OR	C
 	JR	NZ,REPETE
 	RET
 GOUP	LD	DE,64
 	LD	(HL),32
 	OR	A
 	SBC	HL,DE
 	PUSH	HL
 	LD	DE,15360
 	OR	A
 	SBC	HL,DE
 	POP	HL
 	JP	M,SHTMIS
 	LD	A,(HL)
 	CP	92
 	JP	Z,SHTHIT
 	CP	88
 	JP	Z,DIRHIT
 	CP	60
 	JP	Z,DIRHIT
 	CP	62
 	JP	Z,DIRHIT
 	CP	42
 	JP	Z,SMLHIT
 	CP	93
 	JP	Z,SAUHIT
 	CP	94
 	JP	Z,SAUHIT
 	CP	35
 	JP	Z,SAUHIT
 	CP	32
 	JR	Z,DANDY
 	CALL	NZ,WRK4ME
 	JP	REPOST
 DANDY	LD	(HL),91
 	JP	REPOST
 SHTMIS	CALL	ADDMIS
 	LD	DE,64
 	ADD	HL,DE
 	JP	SHTHIT
 	DEC	HL
 	DEC	HL
 SPRAY	PUSH	HL
 	POP	DE
 	PUSH	DE
 	LD	HL,DESSM1
 	CALL	DISPLY
 	CALL	NOISEB
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,DESSM2
 	CALL	DISPLY
 	CALL	NOISEE
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,DESSM3
 	CALL	DISPLY
 	CALL	NOISEC
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,DESSM4
 	CALL	DISPLY
 	CALL	DLY5
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,DESSM5
 	CALL	DISPLY
 	CALL	DLY5
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,DESSM6
 	CALL	DISPLY
 	CALL	DLY5
 	POP	DE
 	LD	HL,SPACE
 	CALL	DISPLY
 	JP	REPOST
 DESSM1	DEFM	'  '
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFM	'  #'
 DESSM2	DEFB	' '
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFM	' #'
 DESSM3	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	'#'
 DESSM4	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	':'
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	'#'
 DESSM5	DEFB	191
 	DEFB	191
 	DEFM	':::'
 	DEFB	191
 	DEFB	191
 	DEFB	'#'
 DESSM6	DEFM	':::::::#'
 SPACE	DEFM	'       #'
 DIRHIT	CALL	ADDONE
 	DEC	HL
 	DEC	HL
 	DEC	HL
 	PUSH	HL
 	POP	DE
 	PUSH	DE
 	LD	HL,HTBIG1
 	CALL	DISPLY
 	CALL	DLY5
 	POP	DE
 	PUSH	DE
 	LD	HL,HTBIG2
 	CALL	DISPLY
 	CALL	NOISED
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,HTBIG3
 	CALL	DISPLY
 	CALL	NOISEE
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,HTBIG4
 	CALL	DISPLY
 	CALL	NOISEC
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,HTBIG5
 	CALL	DISPLY
 	CALL	DLY5
 	POP	DE
 	PUSH	DE
 	LD	HL,HTBIG6
 	CALL	DISPLY
 	CALL	DLY5
 	LD	HL,HTBIG7
 	POP	DE
 	PUSH	DE
 	CALL	DISPLY
 	CALL	DLY5
 	POP	DE
 	LD	HL,SPACE
 	CALL	DISPLY
 	JP	REPOST
 HTBIG1	DEFB	32
 	DEFB	32
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	32
 	DEFB	32
 	DEFB	'#'
 HTBIG2	DEFB	32
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	32
 	DEFB	'#'
 HTBIG3	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	'#'
 HTBIG4	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	32
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	'#'
 HTBIG5	DEFB	191
 	DEFB	32
 	DEFM	'OOO'
 	DEFB	32
 	DEFB	191
 	DEFB	'#'
 HTBIG6	DEFM	'ZZZZZZZ#'
 HTBIG7	DEFM	':::::::#'
 SMLHIT	CALL	ADDONE
 	CALL	ADDTWO
 	DEC	HL
 	PUSH	HL
 	POP	DE
 	PUSH	DE
 	LD	HL,BLIP1
 	CALL	DISPLY
 	CALL	NOISEE
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,BLIP2
 	CALL	DISPLY
 	CALL	NOISEC
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,BLIP3
 	CALL	DISPLY
 	CALL	NOISED
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,BLIP4
 	CALL	DISPLY
 	CALL	NOISEC
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,BLIP5
 	CALL	DISPLY
 	CALL	NOISED
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	LD	HL,BLIP6
 	CALL	DISPLY
 	JP	REPOST
 BLIP1	DEFM	'HOH#'
 BLIP2	DEFM	'*"*#'
 BLIP3	DEFM	'III#'
 BLIP4	DEFM	'$S$#'
 BLIP5	DEFM	':.:#'
 BLIP6	DEFM	'   #'
 SHPFIR	LD	A,(SPEED)
 	CP	32
 	JR	Z,YYYYY
 	LD	BC,1024
 	LD	HL,15360
 HANDY	LD	A,(HL)
 	CP	91
 	RET	Z
 	INC	HL
 	DEC	BC
 	LD	A,B
 	OR	C
 	JR	NZ,HANDY
 YYYYY	LD	A,(14400)
 	CP	128
 	JR	Z,DOIT
 	CP	1
 	JR	Z,DOIT
 	CP	4
 	JP	Z,GAMEOV
 	LD	A,(14337)
 	OR	A
 	JR	NZ,DOIT
 	LD	A,(14338)
 	OR	A
 	JR	NZ,DOIT
 	LD	A,(14340)
 	OR	A
 	JR	NZ,DOIT
 	LD	A,(14344)
 	OR	A
 	JR	NZ,DOIT
 	RET
 DOIT	CALL	ADDSHT
 	LD	HL,(SHPPOS)
 	INC	HL
 	INC	HL
 	INC	HL
 	LD	(HL),65
 	CALL	NOISE3
 	LD	(HL),91
 	CALL	DLY5
 	LD	(HL),'+'
 	LD	DE,64
 	OR	A
 	SBC	HL,DE
 WRK4ME	LD	A,(HL)
 	CP	20H
 	JR	Z,THRU
 	CP	92
 	JR	Z,THRU
 	CP	191
 	JR	Z,BAR1Y
 	CP	187
 	JR	Z,BAR2Y
 	CP	155
 	JR	Z,BAR3Y
 	CP	153
 	JR	Z,BAR4Y
 	CP	152
 	JR	Z,BAR5Y
 	CP	144
 	JR	Z,BAR6Y
 	CP	188
 	JR	Z,BAR7Y
 	CP	172
 	JR	Z,BAR8Y
 	CP	164
 	JR	Z,BAR9Y
 	CP	132
 	JR	Z,BAR10Y
 	CP	176
 	JR	Z,BAR11Y
 	LD	(HL),191
 	CALL	DLY5
 	JP	BAR6Y
 BAR1Y	LD	(HL),187
 	JR	BARDON
 BAR2Y	LD	(HL),155
 	JR	BARDON
 BAR3Y	LD	(HL),153
 	JR	BARDON
 BAR4Y	LD	(HL),152
 	JR	BARDON
 BAR5Y	LD	(HL),144
 	JR	BARDON
 BAR6Y	LD	(HL),32
 	JR	BARDON
 BAR7Y	LD	(HL),172
 	JR	BARDON
 BAR8Y	LD	(HL),164
 	JR	BARDON
 BAR9Y	LD	(HL),132
 	JR	BARDON
 BAR10Y	LD	(HL),32
 	JR	BARDON
 BAR11Y	LD	(HL),144
 BARDON	CALL	ADDMIS
 	RET
 THRU	LD	(HL),91
 	RET
 PUTIT	LD	HL,SCR316
 	LD	DE,(SHPPOS)
 	CALL	DISPLY
 	RET
 ADDSHT	EXX
 	LD	HL,(SHOTS)
 	INC	HL
 	LD	(SHOTS),HL
 	EXX
 	RET
 ADDMIS	EXX
 	LD	HL,(MISSES)
 	INC	HL
 	LD	(MISSES),HL
 	LD	HL,(CSCORE)
 	LD	DE,20
 	OR	A
 	SBC	HL,DE
 	LD	(CSCORE),HL
 	LD	A,H
 	OR	A
 	JP	P,OK
 	LD	HL,0
 	LD	(CSCORE),HL
 OK	EXX
 	RET
 ADDONE	EXX
 	LD	HL,(HITS)
 	INC	HL
 	LD	(HITS),HL
 	LD	HL,(CSCORE)
 	LD	DE,100
 	ADD	HL,DE
 	LD	(CSCORE),HL
 	LD	DE,65000
 	OR	A
 	SBC	HL,DE
 	JP	M,GAMEOV
 	EXX
 	RET
 ADDTWO	EXX
 	LD	HL,(CSCORE)
 	LD	DE,100
 	ADD	HL,DE
 	LD	(CSCORE),HL
 	EXX
 	RET
 SAUHIT	CALL	ADDONE
 	CALL	ADDTWO
 	CALL	ADDTWO
 	CALL	ADDTWO
 	CALL	ADDTWO
 	DEC	HL
 	DEC	HL
 	DEC	HL
 	PUSH	HL
 	POP	DE
 	PUSH	DE
 	LD	HL,SAU1
 	CALL	DISPLY
 	CALL	NOISEA
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,SAU2
 	CALL	DISPLY
 	CALL	NOISEB
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,SAU3
 	CALL	DISPLY
 	CALL	NOISEC
 	POP	DE
 	PUSH	DE
 	LD	HL,SAU4
 	CALL	DISPLY
 	CALL	NOISED
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	PUSH	DE
 	LD	HL,SAU5
 	CALL	DISPLY
 	CALL	NOISEE
 	EXX
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,SHPMOV
 	EXX
 	POP	DE
 	LD	HL,SAU6
 	CALL	DISPLY
 	LD	HL,0
 	LD	(SAUPOS),HL
 	JP	REPOST
 SAU1	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	191
 	DEFB	'#'
 SAU2	DEFB	179
 	DEFB	179
 	DEFB	179
 	DEFB	179
 	DEFB	179
 	DEFB	179
 	DEFB	179
 	DEFB	'#'
 SAU3	DEFB	145
 	DEFB	145
 	DEFM	'   '
 	DEFB	145
 	DEFB	145
 	DEFB	'#'
 SAU4	DEFM	'ZZZZZZZ#'
 SAU5	DEFM	'.......#'
 SAU6	DEFM	'       #'
 SAUMOV	LD	HL,(SAUPOS)
 	LD	A,H
 	OR	L
 	JR	Z,PUTONE
 	LD	A,L
 	SUB	3
 	JP	M,GOAWAY
 	DEC	HL
 	LD	(SAUPOS),HL
 WRITE	LD	(HL),93
 	INC	HL
 	LD	(HL),35
 	INC	HL
 	LD	(HL),35
 	INC	HL
 	LD	(HL),94
 	INC	HL
 	LD	(HL),32
 	RET
 PUTONE	LD	A,R
 	AND	0C0H
 	RET	Z
 	LD	HL,15360+58
 	LD	(SAUPOS),HL
 	JR	WRITE
 GOAWAY	LD	DE,(SAUPOS)
 	LD	HL,SAU6
 	CALL	DISPLY
 	LD	HL,0
 	LD	(SAUPOS),HL
 	RET
 GODOWN	LD	(HL),32
 	LD	DE,64
 	ADD	HL,DE
 	LD	A,H
 	CP	40H
 	JP	P,MISSED
 	LD	A,(HL)
 	CP	91
 	JP	Z,SMASH
 	CP	40
 	JP	Z,SHPHIT
 	CP	41
 	JP	Z,SHPHIT
 	CP	79
 	JP	Z,SHPHIT
 	CP	33
 	JP	Z,SHPHIT
 	CP	191
 	JR	Z,BAR1
 	CP	187
 	JR	Z,BAR2
 	CP	155
 	JR	Z,BAR3
 	CP	153
 	JR	Z,BAR4
 	CP	152
 	JR	Z,BAR5
 	CP	144
 	JR	Z,BAR6
 	CP	188
 	JR	Z,BAR7
 	CP	172
 	JR	Z,BAR8
 	CP	164
 	JR	Z,BAR9
 	CP	132
 	JR	Z,BAR10
 	CP	176
 	JR	Z,BAR11
 	LD	(HL),92
 	JP	DEPOST
 MISSED	OR	A
 	LD	DE,64
 	SBC	HL,DE
 	JR	SMASH
 BAR1	LD	(HL),187
 	JP	DEPOST
 BAR2	LD	(HL),155
 	JP	DEPOST
 BAR3	LD	(HL),153
 	JP	DEPOST
 BAR4	LD	(HL),152
 	JP	DEPOST
 BAR5	LD	(HL),144
 	JP	DEPOST
 BAR6	LD	(HL),32
 	JP	DEPOST
 BAR7	LD	(HL),172
 	JP	DEPOST
 BAR8	LD	(HL),164
 	JP	DEPOST
 BAR9	LD	(HL),132
 	JP	DEPOST
 BAR10	LD	(HL),32
 	JP	DEPOST
 BAR11	LD	(HL),144
 	JP	DEPOST
 SHTHIT	LD	(HL),191
 	CALL	NOISED
 	LD	(HL),179
 	CALL	DLY5
 	LD	(HL),131
 	CALL	DLY5
 	LD	(HL),32
 	CALL	ADDMIS
 	JP	REPOST
 SMASH	LD	(HL),191
 	CALL	NOISEE
 	LD	(HL),179
 	CALL	DLY5
 	LD	(HL),131
 	CALL	DLY5
 	LD	(HL),35
 	CALL	DLY5
 	LD	(HL),36
 	CALL	DLY5
 	LD	(HL),64
 	CALL	DLY5
 	LD	(HL),58
 	CALL	DLY5
 	LD	(HL),32
 	JP	DEPOST
 NELEFT	XOR	A
 	LD	(NUMBER),A
 	LD	HL,15360+64
 	LD	BC,960
 EGO	LD	A,(HL)
 	CP	42
 	CALL	Z,ONEHER
 	CP	88
 	CALL	Z,ONEHER
 	DEC	BC
 	INC	HL
 	LD	A,B
 	OR	C
 	JR	NZ,EGO
 	LD	A,(NUMBER)
 	OR	A
 	RET	NZ
 	CALL	DRAW
 	RET
 ONEHER	LD	A,(NUMBER)
 	INC	A
 	LD	(NUMBER),A
 	XOR	A
 	RET
 SHPHIT	LD	A,(SHIP)
 	DEC	A
 	LD	(SHIP),A
 	OR	A
 	JP	Z,GAMEOV
 	LD	HL,(SHPPOS)
 SPLAT	PUSH	HL
 	POP	DE
 	PUSH	DE
 	LD	HL,SAU1
 	CALL	DISPLY
 	CALL	DLY5
 	POP	DE
 	PUSH	DE
 	LD	HL,SAU2
 	CALL	DISPLY
 	CALL	DLY5
 	POP	DE
 	PUSH	DE
 	LD	HL,SAU3
 	CALL	DISPLY
 	CALL	DLY5
 	POP	DE
 	PUSH	DE
 	LD	HL,SHIP1
 	CALL	DISPLY
 	CALL	DLY5
 	POP	DE
 	PUSH	DE
 	LD	HL,SHIP2
 	CALL	DISPLY
 	CALL	DLY5
 	POP	DE
 	PUSH	DE
 	LD	HL,SHIP3
 	CALL	DISPLY
 	CALL	DLY5
 	POP	DE
 	PUSH	DE
 	LD	HL,SHIP4
 	CALL	DISPLY
 	CALL	DLY5
 	POP	DE
 	PUSH	DE
 	LD	HL,SHIP5
 	CALL	DISPLY
 	CALL	DLY5
 	POP	DE
 	LD	HL,SHIP6
 	CALL	DISPLY
 	CALL	DLY5
 	CALL	HOWMAN
 	CALL	PUTIT
 	JP	DEPOST
 SHIP1	DEFM	'HVHVHVH#'
 SHIP2	DEFM	'0!0I0!0#'
 SHIP3	DEFM	'--===--#'
 SHIP4	DEFM	'ZZZ*ZZZ#'
 SHIP5	DEFM	':.:.:.:#'
 SHIP6	DEFM	'SSSSSSS#'
 SHIP7	DEFM	'   LEFT #'
 TARSHT	LD	A,(SPEED)
 	CP	32
 	CALL	Z,SHPMOV
 	LD	HL,15360+895
 	LD	A,R
 	AND	7
 	LD	B,A
 	LD	A,(NUMBER)
 	CP	B
 	JP	P,COMHER
 	LD	A,R
 	AND	3
 	LD	B,A
 	LD	A,(NUMBER)
 	CP	B
 	JP	P,COMHER
 	LD	B,1
 COMHER	LD	A,(HL)
 	CP	88
 	JR	Z,BLAST
 	CP	42
 	JR	Z,BLAST
 	DEC	HL
 	LD	A,H
 	CP	3CH
 	JR	NZ,COMHER
 	LD	A,L
 	SUB	6
 	RET	M
 	JR	COMHER
 BLAST	DEC	HL
 	DJNZ	COMHER
 	INC	HL
 	LD	E,(HL)
 	LD	(HL),92
 	LD	(HL),E
 	LD	DE,64
 	ADD	HL,DE
 	LD	A,(HL)
 	CP	42
 	RET	Z
 	CP	88
 	RET	Z
 	CALL	NOISE4
 	LD	(HL),92
 	RET
 SCR401	DEFM	'XXX...XXX...XXX...XXX...XXX...  '
 	DEFM	'...XXX...XXX...XXX...XXX...XXX#'
 SCR402	DEFM	'...                        XXX  XXX'
 	DEFM	'                        ...#'
 SCR403	DEFM	'XXX  CURRENT SCORE:        ...  ...'
 	DEFM	'      SHOTS:            XXX#'
 SCR404	DEFM	'... PREVIOUS SCORE:        XXX  XXX'
 	DEFM	'       HITS:            ...#'
 SCR405	DEFM	'XXX  HIGHEST SCORE:        ...  ...'
 	DEFM	'     MISSES:            XXX#'
 SCR406	DEFM	'...                        XXX  XXX'
 	DEFM	'                        ...#'
 SCR407	DEFM	'XXX...XXX...XXX...XXX...XXX...  '
 	DEFM	'...XXX...XXX...XXX...XXX...XXX#'
 SCR409	DEFM	')))))))))))))))(((((((((((((((#'
 SCR410	DEFM	'=         <<<<<<<<<<<<>>>>>>>>>>>>'
 	DEFM	'         *#'
 SCR411	DEFM	'===           HHHHHHHHH'
 	DEFM	'HHHHHHHHH           ***#'
 SCR412	DEFM	'=====             MMMMMM'
 	DEFM	'MMMMMM             *****#'
 SCR413	DEFM	'=======               AAAAAA'
 	DEFM	'               *******#'
 SCR414	DEFM	'=========                ::'
 	DEFM	'                *********#'
 SCR415	DEFM	'===========               ::'
 	DEFM	'               ***********#'
 SCR416	DEFM	'=============              ::'
 	DEFM	'              *************#'
 FADE	LD	E,191
 	CALL	FADER
 	LD	E,179
 	CALL	FADER
 	LD	E,131
 	CALL	FADER
 	LD	E,35
 	CALL	FADER
 	LD	E,48
 	CALL	FADER
 	LD	E,42
 	CALL	FADER
 	LD	E,43
 	CALL	FADER
 	LD	E,45
 	CALL	FADER
 	LD	E,58
 	CALL	FADER
 	LD	E,46
 	CALL	FADER
 	CALL	CLRSCR
 	RET
 FADER	LD	IX,15360
 	LD	BC,1024
 	LD	(COUNT),BC
 DOAGN	PUSH	IX
 	POP	HL
 	LD	A,(HL)
 	CP	32
 	JP	Z,SKIP
 	LD	A,E
 	LD	(HL),A
 SKIP	INC	IX
 	LD	BC,(COUNT)
 	DEC	BC
 	LD	(COUNT),BC
 	LD	A,B
 	OR	C
 	JP	NZ,DOAGN
 	CALL	NOISE6
 	RET
 TARDWN	LD	IX,15360+895
 	LD	BC,896
 	LD	(EXTRA),BC
 REPEAT	PUSH	IX
 	POP	HL
 	LD	A,(HL)
 	CP	88
 	JP	Z,BGDWN
 	CP	42
 	JP	Z,SMDWN
 ALSO	DEC	IX
 	LD	BC,(EXTRA)
 	DEC	BC
 	LD	(EXTRA),BC
 	LD	A,B
 	OR	C
 	RET	Z
 	JR	REPEAT
 SMDWN	LD	(HL),32
 	LD	DE,64
 	ADD	HL,DE
 	LD	A,H
 	CP	3FH
 	JP	P,MAYBEE
 PICKUP	LD	A,(HL)
 	CP	91
 	JP	Z,GOTONE
 	LD	(HL),42
 	JR	ALSO
 MAYBEE	LD	A,L
 	CP	80H
 	JP	P,GAMEOV
 	JR	PICKUP
 BGDWN	DEC	HL
 	LD	A,32
 	LD	(HL),A
 	INC	HL
 	LD	(HL),A
 	INC	HL
 	LD	(HL),A
 	LD	DE,64
 	ADD	HL,DE
 	LD	A,H
 	CP	3FH
 	JP	P,MAYBE
 PACKUP	LD	A,(HL)
 	CP	91
 	JR	Z,GOTONE
 	DEC	HL
 	LD	A,(HL)
 	CP	91
 	JR	Z,GOTONE
 	DEC	HL
 	LD	A,(HL)
 	CP	91
 	JR	Z,GOTONE
 	LD	(HL),62
 	INC	HL
 	LD	(HL),88
 	INC	HL
 	LD	(HL),60
 	JR	ALSO
 MAYBE	LD	A,L
 	CP	80H
 	JP	P,GAMEOV
 	JR	PACKUP
 GOTONE	PUSH	IX
 	PUSH	IX
 	POP	HL
 	LD	DE,64
 	ADD	HL,DE
 	PUSH	HL
 	POP	IX
 	CALL	BLOWUP
 	CALL	ADDONE
 	POP	IX
 	JP	ALSO
 GAMEOV	CALL	FADE
 	LD	HL,SCR401
 	LD	DE,15360+1
 	CALL	DISPLY
 	LD	HL,SCR402
 	LD	DE,15360+64+1
 	CALL	DISPLY
 	LD	HL,SCR403
 	LD	DE,15360+128+1
 	CALL	DISPLY
 	LD	HL,SCR404
 	LD	DE,15360+192+1
 	CALL	DISPLY
 	LD	HL,SCR405
 	LD	DE,15360+256+1
 	CALL	DISPLY
 	LD	HL,SCR406
 	LD	DE,15360+320+1
 	CALL	DISPLY
 	LD	HL,SCR407
 	LD	DE,15360+384+1
 	CALL	DISPLY
 	CALL	NOISEK
 	CALL	DSCORE
 	CALL	FIX
 OULOOP	LD	A,5
 	LD	(SPARE2),A
 	CALL	BLOCK
 INLOOP	CALL	SPIN
 	CALL	DLY4
 	CALL	SPIN
 	CALL	REVERS
 	CALL	SPIN
 	CALL	DLY4
 	CALL	SPIN
 	CALL	SWITCH
 	CALL	SPIN
 	CALL	DLY4
 	CALL	SPIN
 	CALL	REVERS
 	LD	A,(SPARE2)
 	DEC	A
 	LD	(SPARE2),A
 	JR	NZ,INLOOP
 	JR	OULOOP
 READY	CALL	FADE
 	JP	REPLAY
 DSCORE	LD	HL,(SHOTS)
 	LD	DE,15360+128+49
 	CALL	CONVER
 	LD	HL,(HITS)
 	LD	DE,15360+192+49
 	CALL	CONVER
 	LD	HL,(SHOTS)
 	LD	DE,(HITS)
 	OR	A
 	SBC	HL,DE
 	LD	DE,15360+256+49
 	CALL	CONVER
 	LD	HL,(CSCORE)
 	LD	DE,15360+128+21
 	CALL	CONVER
 	LD	HL,(PSCORE)
 	LD	DE,15360+192+21
 	CALL	CONVER
 	LD	HL,(HSCORE)
 	LD	DE,(CSCORE)
 	OR	A
 	SBC	HL,DE
 	JP	M,NEWHI
 	LD	HL,(HSCORE)
 	LD	DE,15360+256+21
 	CALL	CONVER
 	RET
 NEWHI	LD	HL,NEWDAT
 	LD	DE,15360+256+6
 	CALL	DISPLY
 	CALL	NOISEJ
 	LD	HL,(CSCORE)
 	LD	(HSCORE),HL
 	LD	HL,SCR409
 	LD	DE,15360+512+17
 	CALL	DISPLY
 	LD	HL,SCR410
 	LD	DE,15360+576+10
 	CALL	DISPLY
 	LD	HL,SCR411
 	LD	DE,15360+640+9
 	CALL	DISPLY
 	LD	HL,SCR412
 	LD	DE,15360+704+8
 	CALL	DISPLY
 	LD	HL,SCR413
 	LD	DE,15360+768+7
 	CALL	DISPLY
 	LD	HL,SCR414
 	LD	DE,15360+832+6
 	CALL	DISPLY
 	LD	HL,SCR415
 	LD	DE,15360+896+5
 	CALL	DISPLY
 	LD	HL,SCR416
 	LD	DE,15360+960+4
 	CALL	DISPLY
 	CALL	NOISE5
 	RET
 NEWDAT	DEFM	'>> NEW HIGH SCORE <<#'
 CONVER	PUSH	DE
 	LD	D,10
 	CALL	DIV16
 	LD	A,H
 	ADD	A,30H
 	LD	(BUFFER+4),A
 	PUSH	IX
 	POP	HL
 	CALL	DIV16
 	LD	A,H
 	ADD	A,30H
 	LD	(BUFFER+3),A
 	PUSH	IX
 	POP	HL
 	CALL	DIV16
 	LD	A,H
 	ADD	A,30H
 	LD	(BUFFER+2),A
 	PUSH	IX
 	POP	HL
 	CALL	DIV16
 	LD	A,H
 	ADD	A,30H
 	LD	(BUFFER+1),A
 	PUSH	IX
 	POP	HL
 	CALL	DIV16
 	LD	A,H
 	ADD	A,30H
 	LD	(BUFFER),A
 	LD	A,'#'
 	LD	(BUFFER+5),A
 	POP	DE
 	LD	HL,BUFFER
 	CALL	DISPLY
 	CALL	NOISE7
 	RET
 DIV16	LD	A,L
 	LD	L,H
 	LD	H,0
 	LD	E,0
 	LD	B,16
 	LD	IX,0
 LOOPA	ADD	HL,HL
 	RLA
 	JP	NC,LOOP1
 	INC	L
 LOOP1	ADD	IX,IX
 	INC	IX
 	OR	A
 	SBC	HL,DE
 	JP	NC,CONT
 	ADD	HL,DE
 	DEC	IX
 CONT	DJNZ	LOOPA
 	RET
 FIX	LD	HL,(CSCORE)
 	LD	(PSCORE),HL
 	RET
 SPIN	LD	A,(14340)
 	CP	4
 	CALL	Z,ZERO
 	LD	A,(14400)
 	CP	1
 	JP	Z,READY
 	LD	IX,15360
 	LD	BC,448
 YES1	PUSH	IX
 	POP	HL
 	LD	A,(HL)
 	CP	88
 	JR	Z,TURN1
 	CP	46
 	JR	Z,TURN2
 YES2	INC	IX
 	DEC	BC
 	LD	A,B
 	OR	C
 	JR	NZ,YES1
 	RET
 TURN1	LD	(HL),46
 	JR	YES2
 TURN2	LD	(HL),88
 	JR	YES2
 REVERS	LD	IX,15360+512
 	LD	BC,512
 YES3	PUSH	IX
 	POP	HL
 	LD	A,(HL)
 	CP	41
 	JR	Z,TURN3
 	CP	40
 	JR	Z,TURN4
 	CP	60
 	JR	Z,TURN5
 	CP	62
 	JR	Z,TURN6
 	CP	72
 	JR	Z,ATURN
 	CP	65
 	JR	Z,BTURN
 	CP	77
 	JR	Z,CTURN
 	CP	83
 	JR	Z,DTURN
 	CP	58
 	JR	Z,ETURN
 	CP	73
 	JR	Z,FTURN
 	CP	79
 	JR	Z,GTURN
 	CP	89
 	JR	Z,HTURN
 YES4	INC	IX
 	DEC	BC
 	LD	A,B
 	OR	C
 	JR	NZ,YES3
 	RET
 TURN3	LD	(HL),40
 	JR	YES4
 TURN4	LD	(HL),41
 	JR	YES4
 TURN5	LD	(HL),62
 	JR	YES4
 TURN6	LD	(HL),60
 	JR	YES4
 ATURN	LD	(HL),79
 	JR	YES4
 BTURN	LD	(HL),83
 	JR	YES4
 CTURN	LD	(HL),89
 	JR	YES4
 DTURN	LD	(HL),65
 	JR	YES4
 ETURN	LD	(HL),73
 	JR	YES4
 FTURN	LD	(HL),58
 	JR	YES4
 GTURN	LD	(HL),72
 	JR	YES4
 HTURN	LD	(HL),77
 	JR	YES4
 SWITCH	LD	IX,15360+576
 	LD	BC,448
 YES8	PUSH	IX
 	POP	HL
 	LD	A,(HL)
 	CP	61
 	JR	Z,TURN8
 	CP	42
 	JR	Z,TURN9
 YES9	INC	IX
 	DEC	BC
 	LD	A,B
 	OR	C
 	JR	NZ,YES8
 	RET
 TURN8	LD	A,42
 	LD	(HL),A
 	JR	YES9
 TURN9	LD	A,61
 	LD	(HL),A
 	JR	YES9
 SHOTDN	LD	IX,15360+1023
 	LD	BC,1024
 	LD	(COUNT),BC
 DEPETE	PUSH	IX
 	POP	HL
 	LD	A,(HL)
 	CP	92
 	JP	Z,GODOWN
 DEPOST	DEC	IX
 	LD	BC,(COUNT)
 	DEC	BC
 	LD	(COUNT),BC
 	LD	A,B
 	OR	C
 	JR	NZ,DEPETE
 	RET
 BLOCK	LD	A,R
 	AND	3FH
 	DEC	A
 	RET	M
 	ADD	A,129
 	LD	B,28
 	LD	HL,15360+960+18
 SAFETY	LD	(HL),A
 	INC	HL
 	DJNZ	SAFETY
 	RET
 ZERO	LD	HL,0
 	LD	(HSCORE),HL
 	LD	DE,15360+256+5
 	LD	HL,ZERDAT
 	CALL	DISPLY
 	RET
 ZERDAT	DEFM	' HIGHEST SCORE: 00000#'
 GAME	LD	A,(SPEED)
 	CP	2
 	JP	Z,STRAT1
 	CP	4
 	JP	Z,STRAT2
 	CP	8
 	JP	Z,STRAT3
 	CP	16
 	JP	Z,STRAT4
 STRAT5	JP	STUB5
 	LD	DE,15360+512
 	CALL	DISPLY
 	LD	HL,SCR302
 	LD	DE,15360+576
 	CALL	DISPLY
 STUB5	CALL	SHPMOV
 	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	SAUMOV
 	CALL	TARMOV
 	CALL	SHOTUP
 	CALL	SHPMOV
 	CALL	TARSHT
 	CALL	SHOTUP
 	CALL	SHOTUP
 	CALL	SAUMOV
 	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	TARMOV
 	CALL	SHPMOV
 	CALL	SHOTUP
 	CALL	SHOTUP
 	CALL	TARMOV
 	CALL	SHOTDN
 	CALL	NELEFT
 	JR	STUB5
 STRAT4	LD	HL,SCR301
 	LD	DE,15360+512
 	CALL	DISPLY
 	LD	HL,SCR302
 	LD	DE,15360+576
 	CALL	DISPLY
 STRUT4	CALL	SAUMOV
 	CALL	TYPE4
 	CALL	TARMOV
 	CALL	TARSHT
 	CALL	TYPE4
 	CALL	SHOTDN
 	CALL	TARMOV
 	CALL	TARSHT
 	CALL	SAUMOV
 	CALL	TARMOV
 	CALL	SHOTDN
 	CALL	TYPE4
 	CALL	NELEFT
 	CALL	TARMOV
 	CALL	TARSHT
 	CALL	SAUMOV
 	CALL	SHOTDN
 	JR	STRUT4
 TYPE4	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	SAUMOV
 	CALL	SHOTUP
 	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	SHPMOV
 	CALL	SHOTDN
 	CALL	SHOTUP
 	CALL	SHPFIR
 	CALL	SAUMOV
 	CALL	SHOTUP
 	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	SHOTUP
 	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	TARMOV
 	CALL	TARSHT
 	CALL	SHOTUP
 	CALL	SHOTDN
 	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	SAUMOV
 	CALL	SHOTUP
 	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	SAUMOV
 	CALL	SHOTDN
 	CALL	SHOTUP
 	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	SAUMOV
 	CALL	SHOTUP
 	CALL	SHPFIR
 	CALL	SHPMOV
 	CALL	SAUMOV
 	CALL	SHOTUP
 	CALL	SHOTDN
 	CALL	SHPFIR
 	CALL	SHPMOV
 	CALL	SAUMOV
 	CALL	SHOTUP
 	CALL	SHPFIR
 	CALL	SHPMOV
 	CALL	SAUMOV
 	CALL	SHOTUP
 	CALL	SHPFIR
 	CALL	SHPMOV
 	CALL	SHOTUP
 	RET
 STRAT3	CALL	TYPE4B
 	CALL	TYPE4B
 	CALL	TARSHT
 	JR	STRAT3
 TYPE4B	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	SAUMOV
 	CALL	TARSHT
 	CALL	SHPMOV
 	CALL	SHOTUP
 	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	SAUMOV
 	CALL	TARSHT
 	CALL	SHPMOV
 	CALL	SHOTDN
 	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	SHOTUP
 	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	SAUMOV
 	CALL	SHPMOV
 	CALL	SHOTUP
 	CALL	SHPMOV
 	CALL	TARMOV
 	CALL	TARSHT
 	CALL	SHPMOV
 	CALL	NELEFT
 	RET
 STRAT2	CALL	TYPEA
 	LD	A,(NUMBER)
 	CP	1
 	CALL	Z,TARMOV
 	CALL	SHPMOV
 	CALL	TYPEB
 	CALL	TYPEA
 	CALL	TYPEA
 	CALL	TARSHT
 	LD	A,(NUMBER)
 	CP	5
 	CALL	M,TARMOV
 	CALL	TYPEB
 	CALL	TYPEA
 	CALL	TYPEA
 	LD	A,(NUMBER)
 	CP	10
 	CALL	M,TARMOV
 	CALL	TYPEB
 	CALL	TYPEA
 	CALL	TYPEA
 	CALL	TARSHT
 	LD	A,(NUMBER)
 	CP	20
 	CALL	M,TARMOV
 	CALL	TYPEB
 	CALL	TYPEA
 	CALL	TYPEA
 	LD	A,(NUMBER)
 	CP	30
 	CALL	M,TARMOV
 	CALL	TYPEB
 	CALL	TYPEA
 	CALL	TYPEA
 	CALL	TARSHT
 	LD	A,(NUMBER)
 	CP	40
 	CALL	M,TARMOV
 	CALL	TYPEB
 	CALL	TYPEA
 	CALL	TYPEA
 	LD	A,(NUMBER)
 	CP	50
 	CALL	M,TARMOV
 	CALL	SHPMOV
 	CALL	TARMOV
 	CALL	TARSHT
 	JP	STRAT2
 TYPEA	CALL	SHPMOV
 	CALL	SHPFIR
 	CALL	SAUMOV
 	RET
 TYPEB	CALL	SHOTUP
 	CALL	SHOTDN
 	CALL	NELEFT
 	RET
 STRAT1	CALL	TYPEA
 	CALL	TYPEB
 	LD	A,(NUMBER)
 	CP	1
 	CALL	Z,TARMOV
 	CALL	TARSHT
 	CALL	SHPMOV
 	CALL	TYPEA
 	CALL	TYPEB
 	LD	A,(NUMBER)
 	CP	2
 	CALL	M,TARMOV
 	CALL	TARSHT
 	CALL	TYPEA
 	CALL	TYPEB
 	LD	A,(NUMBER)
 	CP	3
 	CALL	M,TARMOV
 	LD	A,(NUMBER)
 	CP	4
 	CALL	M,TARMOV
 	LD	A,(NUMBER)
 	CP	6
 	CALL	M,TARMOV
 	LD	A,(NUMBER)
 	CP	5
 	CALL	M,TARMOV
 	CALL	TARSHT
 	CALL	SHPMOV
 	CALL	TYPEA
 	CALL	TYPEB
 	LD	A,(NUMBER)
 	CP	10
 	CALL	M,TARMOV
 	CALL	TARSHT
 	CALL	SHPMOV
 	CALL	TYPEA
 	CALL	TYPEB
 	LD	A,(NUMBER)
 	CP	15
 	CALL	M,TARMOV
 	CALL	TARSHT
 	CALL	TYPEA
 	CALL	TYPEB
 	LD	A,(NUMBER)
 	CP	20
 	CALL	M,TARMOV
 	CALL	TARSHT
 	CALL	SHPMOV
 	CALL	TYPEA
 	CALL	TYPEB
 	LD	A,(NUMBER)
 	CP	25
 	CALL	M,TARMOV
 	CALL	TARSHT
 	CALL	TYPEA
 	CALL	TYPEB
 	LD	A,(NUMBER)
 	CP	30
 	CALL	M,TARMOV
 	CALL	TARSHT
 	CALL	TYPEA
 	CALL	TYPEB
 	LD	A,(NUMBER)
 	CP	35
 	CALL	M,TARMOV
 	CALL	TARSHT
 	CALL	SHPMOV
 	CALL	TYPEA
 	CALL	TYPEB
 	LD	A,(NUMBER)
 	CP	40
 	CALL	M,TARMOV
 	CALL	TARSHT
 	CALL	TYPEA
 	CALL	TYPEB
 	LD	A,(NUMBER)
 	CP	45
 	CALL	M,TARMOV
 	CALL	TYPEA
 	CALL	TYPEB
 	CALL	TARSHT
 	LD	A,(NUMBER)
 	CP	50
 	CALL	M,TARMOV
 	CALL	TYPEA
 	CALL	TYPEB
 	CALL	TARSHT
 	LD	A,(NUMBER)
 	CP	55
 	CALL	M,TARMOV
 	CALL	TYPEA
 	CALL	TYPEB
 	CALL	TARSHT
 	CALL	TARMOV
 	JP	STRAT1
 TESTBG	PUSH	IX
 	POP	HL
 	LD	A,(WAY)
 	JR	Z,TV1
 	JR	TV2
 TV1	INC	HL
 	INC	HL
 	INC	HL
 TV2	LD	A,(HL)
 	CP	91
 	RET	NZ
 	LD	A,(SPEED)
 	CP	32
 	CALL	NZ,NOSHOT
 	CALL	BLOWUP
 	CALL	ADDONE
 	POP	HL
 	JP	BILL
 TESTSM	PUSH	IX
 	POP	HL
 	LD	A,(WAY)
 	JR	Z,TV3
 	JR	TV2
 TV3	INC	HL
 	JR	TV2
 HOWMAN	LD	DE,(SHPPOS)
 	LD	HL,SHIP7
 	CALL	DISPLY
 	LD	HL,(SHPPOS)
 	LD	A,(SHIP)
 	ADD	A,30H
 	LD	(HL),A
 	CALL	NOISE1
 	RET
 NOSHOT	LD	HL,15360
 	LD	BC,1024
 NOLOOP	LD	A,(HL)
 	CP	91
 	JR	NZ,ONLOOP
 	LD	(HL),32
 ONLOOP	INC	HL
 	DEC	BC
 	LD	A,B
 	OR	C
 	JR	NZ,NOLOOP
 	RET
 CREDIT	LD	DE,15360+384+25-64
 	LD	HL,CRE1
 	CALL	DISPLY
 	LD	DE,15360+382+29
 	LD	HL,CRE1N
 	CALL	DISPLY
 	LD	DE,15360+448+22
 	LD	HL,CRE2
 	CALL	DISPLY
 	LD	DE,15360+512+22
 	LD	HL,CRE3
 	CALL	DISPLY
 	LD	DE,15360+576+21
 	LD	HL,CRE4
 	CALL	DISPLY
 	LD	DE,15360+640+22
 	LD	HL,CRE5
 	CALL	DISPLY
 	LD	DE,15360+704+24
 	LD	HL,CRE6
 	CALL	DISPLY
 	CALL	NOISEK
 	CALL	ENTRWT
 	JP	HOWNOW
 CRE1	DEFM	'BY  KIM WATT#'
 CRE1N	DEFM	'VER. 2.3#'
 CRE2	DEFM	'COPYRIGHT (C) 1979#'
 CRE3	DEFM	'LEVEL IV  PRODUCTS#'
 CRE4	DEFM	'32238 SCHOOLCRAFT F4#'
 CRE5	DEFM	'LIVONIA MI.  48154#'
 CRE6	DEFM	'(313)  525-6200#'
 MINOR	DEFW	0D530H
 	DEFW	0D530H
 	DEFW	0D550H
 	DEFW	0B090H
 	DEFW	0D050H
 	DEFW	0B0DFH
 	DEFW	00
 YEAH	DEFW	50E0H
 	DEFW	50E0H
 	DEFW	70D0H
 	DEFW	0F0C0H
 	DEFW	70D0H
 	DEFW	0FFC0H
 	DEFW	00
 SOUND1	LD	C,(IY)
 	LD	A,C
 	OR	A
 	RET	Z
 KNOCK	LD	B,(IY+1)
 	LD	A,1
 	OUT	(0FFH),A
 BUMP	DJNZ	BUMP
 	LD	B,(IY+1)
 	LD	A,2
 	OUT	(0FFH),A
 RAP	DJNZ	RAP
 	DEC	C
 	JP	NZ,KNOCK
 	INC	IY
 	INC	IY
 	LD	BC,-1
 	LD	HL,30H
 TAP	ADD	HL,BC
 	JP	C,TAP
 	JP	SOUND1
 NOISE1	EXX
 	LD	IY,YEAH
 	CALL	SOUND1
 	EXX
 	RET
 NOISE2	EXX
 	LD	IY,OCILAT
 LOW1	LD	D,(IY)
 	LD	E,(IY+1)
 	LD	H,(IY+2)
 	LD	L,(IY+3)
 	LD	A,0FEH
 	LD	(FRENCH),A
 HIGH1	CALL	SOUND2
 	EX	DE,HL
 	CALL	SOUND2
 	EX	DE,HL
 	INC	L
 	DEC	E
 	LD	A,(FRENCH)
 	DEC	A
 	LD	(FRENCH),A
 	OR	A
 	JP	NZ,HIGH1
 	EXX
 	RET
 SOUND2	LD	C,D
 	LD	A,C
 	OR	A
 	RET	Z
 SLICE	LD	B,E
 	LD	A,1
 	OUT	(0FFH),A
 DICE	DJNZ	DICE
 	LD	B,E
 	LD	A,2
 	OUT	(0FFH),A
 THRICE	DJNZ	THRICE
 	DEC	C
 	JP	NZ,SLICE
 	RET
 OCILAT	DEFW	0FF05H
 	DEFW	0105H
 STEADY	DEFW	20D0H
 FRENCH	DEFS	2
 FRIED	DEFS	2
 NOISE3	EXX
 	LD	IY,OCILAT
 	LD	D,(IY)
 	LD	E,(IY+1)
 	LD	A,40H
 	LD	(FRENCH),A
 HIGH3	CALL	SOUND2
 	INC	E
 	LD	A,(FRENCH)
 	DEC	A
 	LD	(FRENCH),A
 	OR	A
 	JR	NZ,HIGH3
 	EXX
 	RET
 NOISE4	EXX
 	LD	IY,OCILAT
 	INC	IY
 	INC	IY
 	LD	D,(IY)
 	LD	E,(IY+1)
 	LD	A,30H
 	LD	(FRENCH),A
 HIGH4	CALL	SOUND2
 	INC	E
 	LD	A,(FRENCH)
 	DEC	A
 	LD	(FRENCH),A
 	OR	A
 	JR	NZ,HIGH4
 	EXX
 	RET
 TRANS	DEFW	0A002H
 	DEFW	0A008H
 	DEFW	00
 NOISE5	EXX
 	LD	IY,TRANS
 	LD	D,(IY)
 	LD	E,(IY+1)
 	LD	B,60H
 SURGE	PUSH	BC
 	CALL	SOUND2
 	DEC	E
 	POP	BC
 	DJNZ	SURGE
 	LD	B,60H
 	LD	D,(IY+2)
 	LD	E,(IY+3)
 SOFTIE	PUSH	BC
 	CALL	SOUND2
 	DEC	E
 	POP	BC
 	DJNZ	SOFTIE
 	LD	B,0A0H
 	LD	E,(IY+3)
 SORTIE	PUSH	BC
 	CALL	SOUND2
 	INC	E
 	POP	BC
 	DJNZ	SORTIE
 	EXX
 	RET
 NOISE6	EXX
 	LD	D,15H
 	LD	E,0F0H
 	CALL	SOUND2
 	LD	D,15H
 	LD	E,40H
 	CALL	SOUND2
 	EXX
 	RET
 NOISEA	EXX
 	LD	IY,THUMP1
 	CALL	SOUND1
 	EXX
 	RET
 NOISEB	EXX
 	LD	IY,THUMP2
 	CALL	SOUND1
 	EXX
 	RET
 NOISEC	EXX
 	LD	IY,THUMP3
 	CALL	SOUND1
 	EXX
 	RET
 NOISED	EXX
 	LD	IY,THUMP4
 	CALL	SOUND1
 	EXX
 	RET
 NOISEE	EXX
 	LD	IY,THUMP5
 	CALL	SOUND1
 	EXX
 	RET
 NOISEF	EXX
 	LD	IY,THUMP6
 	CALL	SOUND1
 	EXX
 	RET
 THUMP1	DEFW	20D0H
 	DEFW	40A0H
 	DEFW	01090H
 	DEFW	00
 THUMP2	DEFW	06560H
 	DEFW	45E0H
 	DEFW	1595H
 	DEFW	00
 THUMP3	DEFW	6245H
 	DEFW	03055H
 	DEFW	25D0H
 	DEFW	00
 THUMP4	DEFW	15E0H
 	DEFW	1050H
 	DEFW	12D0H
 	DEFW	00
 THUMP5	DEFW	09020H
 	DEFW	0A020H
 	DEFW	08020H
 	DEFW	2080H
 	DEFW	00
 THUMP6	DEFW	20A0H
 	DEFW	1575H
 	DEFW	20C0H
 	DEFW	10D0H
 	DEFW	00
 NOISEG	CALL	NOISEA
 	CALL	NOISEB
 	CALL	NOISEC
 	CALL	NOISED
 	CALL	NOISEE
 	CALL	NOISEF
 	RET
 NOISEH	CALL	NOISEE
 	CALL	NOISEF
 	CALL	NOISEC
 	RET
 NOISEI	CALL	NOISEA
 	CALL	NOISEC
 	CALL	NOISED
 	RET
 NOISE7	EXX
 	LD	IY,JOKER
 	CALL	SOUND1
 	EXX
 	RET
 JOKER	DEFW	0FF20H
 	DEFW	00
 NOISEJ	EXX
 	LD	IY,OPUS
 	CALL	SOUND1
 	EXX
 	RET
 OPUS	DEFW	90A0H
 	DEFW	0A23FH
 	DEFW	0AC5CH
 	DEFW	9060H
 	DEFW	90A0H
 	DEFW	9040H
 	DEFW	8070H
 	DEFW	90F0H
 	DEFW	0A25DH
 	DEFW	0AD5BH
 	DEFW	9060H
 	DEFW	6BE0H
 	DEFW	5F48H
 	DEFW	54FFH
 	DEFW	00
 NOISEK	EXX
 	LD	IY,MINOR
 	CALL	SOUND1
 	EXX
 	RET
 NOISEZ	EXX
 	LD	E,10H
 PA	LD	HL,1FFH
 	LD	D,1
 	LD	C,0FFH
 	OUT	(C),D
 PS	DEC	HL
 	LD	A,H
 	OR	L
 	JR	NZ,PS
 	LD	D,2
 	LD	HL,1FFH
 	OUT	(C),D
 PT	DEC	HL
 	LD	A,H
 	OR	L
 	JR	NZ,PT
 	DEC	E
 	JR	NZ,PA
 	EXX
 	RET
 NOISEX	CALL	NOISEI
 	CALL	NOISE6
 	CALL	NOISEA
 	CALL	NOISEB
 	LD	DE,5
 NNOOXX	PUSH	DE
 	CALL	NOISE6
 	POP	DE
 	DEC	E
 	JR	NZ,NNOOXX
 	CALL	NOISEH
 	CALL	NOISE7
 	CALL	NOISE4
 	CALL	NOISE4
 	RET
 	END	ENTRY
