Random demo
Random hardware
  • Entry name:
    Stellar Arena
  • Category:
    Games
  • Publisher/Developer:
    Analog Computing Magazine
  • Year:
    1988
  • Code:
    John Ortiz
  • Media format:
    Diskette
  • Controllers:
    Joystick
  • Programming language:
    Assembly language
source: source: source: source:
Listing 1
; STELLAR ARENA
; COPYRIGHT 1988
; BY ANALOG COMPUTING
	.OPT	NOLIST
;CAS=$71F
	*=	$4120
;CAS=$7FF
CH	=	$41FF
S	=	$C5
;CAS=$8E7
PCH	=	$42AF
HPO	=	$0600
VPO	=	$0602
APO	=	$0604
HMO	=	$0606
VMO	=	$0608
AMO	=	$060A
HSP	=	$060C
VSP	=	$060E
ASP	=	$0610
XLA	=	$0612
XPL	=	$0616
BPL	=	$0618
XPO	=	$0619
BIT	=	$062B
XSH	=	$063D
BSH	=	$0641
DIR	=	$0645
;BOOT
	.BYTE	0,9,$1F,7,$2C,7
	LDA	#60
	STA	$D302
	CLC
	RTS
	LDA	#<RUN
	STA	10
	LDA	#>RUN
	STA	11
	RTS
;WORD DATA
	.DBYTE	0,$B3,$B4A5,$ACAC,$A1B2,0,$A1B2,$A5AE,$A100,0
	.DBYTE	0,$23,$2F30,$3932,$2927,$2834,$D1,$D9D8,$D300,0
	.DBYTE	0,0,$6A,$6F68,$6E00,$6F72,$7469,$7A00,0,0
TS1	.DBYTE	$68,$6967,$6800,$73,$636F,$7265,$5A10,$1010,$1010,$1000
	.DBYTE	$F0,$ECE1,$F9E5,$F200,$1100,$F0,$ECE1,$F9E5,$F200,$1200
TS2	.DBYTE	$73,$5A10,$1010,$1010,$1000,$73,$5A10,$1010,$1010,$1000
	.DBYTE	$EC,$DA10,$EC,$2100,$F4DA,$1919,$F0,$1200,$ECDA,$1000
;DL#1 C*
	.BYTE	112,112,112,112,112,112,71,$36,$41,112,112,112
	.BYTE	112,70,$4A,$41,112,112,70,$5E,$41,65,$C2,$41
;DL#2 C*
	.BYTE	112,112,112,70,200,$39,6,70,200,$3A,134
	.BYTE	70,0,$39,6,6,6,6,6,6,6,6,6,70,0
	.BYTE	$3A,6,6,6,6,6,6,6,6,6,65,$DA,$41
;CHSET
	.DBYTE	0,0,0,0,0,0,0,0
	.BYTE	255,255,255,255,255,255,255,255
	.BYTE	240,240,240,240,240,240,240,240
	.BYTE	15,15,15,15,15,15,15,15
	.BYTE	3,7,14,28,56,112,224,192
	.BYTE	192,224,112,56,28,14,7,3
	.BYTE	3,12,28,60,124,124,128,128
	.BYTE	192,48,56,60,62,62,1,1
	.BYTE	1,1,62,62,60,56,48,192
	.BYTE	128,128,124,124,60,28,12,3
	.BYTE	128,64,0,0,0,0,0,0
	.BYTE	0,0,32,16,0,0,0,0
	.BYTE	0,0,0,0,8,4,0,0
	.BYTE	0,0,0,0,0,0,2,1
	.BYTE	1,2,0,0,0,0,0,0
	.BYTE	0,0,4,8,0,0,0,0
	.BYTE	0,0,0,0,16,32,0,0
	.BYTE	0,0,0,0,0,0,64,128
	.BYTE	0,85,170,0,85,170,0,0
	.BYTE	66,165,90,60,60,90,165,66
	.BYTE	0,0,24,60,60,24,0,0
	.BYTE	0,0,34,20,0,20,34,0
	.BYTE	0,0,8,8,62,8,8,0
	.BYTE	0,16,36,26,88,36,8,0
	.BYTE	240,96,126,240,240,126,96,240
	.BYTE	15,6,126,15,15,126,6,15
;VC1
VC1	.BYTE	0,0,0,255,1,255,1,0,1,1
	.BYTE	0,1,255,1,255,0,255,255
;VC2
VC2	.BYTE	0,235,236,237,1,21,20,19,255
;DLI#1
DLI1	SEI
	PHA
	TXA
	PHA
	LDA	#$42	;C*
	LDX	#0
	EOR	$4F
	AND	$4E
	STA	$D40A
	STA	$D409
	STX	$D01A
	PLA
	TAX
	PLA
	CLI
	RTI
;VBI
VBI	INC	$B2
	INC	$E5
	INC	$CE
	INC	$CF
	INC	$D4
	INC	$DB
	INC	$E0
	LDX	#7
A1	LDA	705,X
	STA	53267,X
	DEX
	BNE	A1
	LDA	756
	STA	$D409
	LDA	#192
	STA	54286
	LDA	#0
	LDX	#4
E5	CMP	$D6,X
	BEQ	E5+6
	DEC	$D6,X
	DEX
	BNE	E5
	TXA
	LDY	VPO
	DEY
	STA	$3C00,Y
	LDY	VPO+1
	DEY
	STA	$3D00,Y
	LDX	VMO
	LDA	$3B00,X
	AND	#252
	STA	$3B00,X
	LDX	VMO+1
	LDA	$3B00,X
	AND	#243
	STA	$3B00,X
	LDA	#0
	STA	$CD
G2	LDX	APO
	LDA	HPO
	CLC
	ADC	VC1,X
	STA	HPO
	STA	53248
	INX
	LDA	VPO
	CLC
	ADC	VC1,X
	STA	VPO
	LDA	$B0
	CMP	#10
	BCC	G1
	INC	$CD
	LDA	$CD
	CMP	#1
	BEQ	G2
G1	LDX	AMO
	LDA	HMO
	CLC
	ADC	VC1,X
	CLC
	ADC	VC1,X
	STA	HMO
	STA	53252
	INX
	LDA	VMO
	CLC
	ADC	VC1,X
	CLC
	ADC	VC1,X
	STA	VMO
	TAX
	LDA	$3B00,X
	ORA	#1
	STA	$3B00,X
	LDA	$CD
	CMP	#1
	BEQ	G4
	LDA	$B1
	CMP	#1
	BEQ	C6
	LDA	#0
	STA	$CD
G4	LDX	APO+1
	LDA	HPO+1
	CLC
	ADC	VC1,X
	STA	HPO+1
	STA	53249
	INX
	LDA	VPO+1
	CLC
	ADC	VC1,X
	STA	VPO+1
	LDA	$B0
	CMP	#10
	BCC	G3
	INC	$CD
	LDA	$CD
	CMP	#1
	BEQ	G4
G3	LDX	AMO+1
	LDA	HMO+1
	CLC
	ADC	VC1,X
	CLC
	ADC	VC1,X
	STA	HMO+1
	STA	53253
	INX
	LDA	VMO+1
	CLC
	ADC	VC1,X
	CLC
	ADC	VC1,X
	STA	VMO+1
	TAX
	LDA	$3B00,X
	ORA	#4
	STA	$3B00,X
;SPIKES
C6	LDA	$B0
	CMP	#7
	BCS	D2-4
	JMP	D6
	LDA	#0
	STA	$C9
D2	LDX	ASP
	LDA	HSP
	CLC
	ADC	VC1,X
	STA	HSP
	STA	53250
	INX
	LDA	VSP
	CLC
	ADC	VC1,X
	STA	VSP
	TAY
	LDX	#8
D3	LDA	PCH+16,X
	STA	$3E00,Y
	DEY
	DEX
	BNE	D3
	INC	$C9
	LDA	$B0
	CMP	#10
	BCC	D6
	LDA	$C9
	CMP	#1
	BEQ	D2
	LDA	$B0
	CMP	#13
	BCC	D6
D5	LDX	ASP+1
	LDA	HSP+1
	CLC
	ADC	VC1,X
	STA	HSP+1
	STA	53251
	INX
	LDA	VSP+1
	CLC
	ADC	VC1,X
	STA	VSP+1
	TAY
	LDX	#8
D4	LDA	PCH+16,X
	STA	$3F00,Y
	DEY
	DEX
	BNE	D4
	INC	$C9
	LDA	$C9
	CMP	#3
	BEQ	D5
;XENOPODS
D6	LDA	$D4
	CMP	#17
	BNE	A4
	LDA	#0
	STA	$D4
	LDY	#8
	LDX	#8
	LDA	$B2
	CMP	#2
	BEQ	D7
	LDX	#16
D7	LDA	PCH-16,X
	STA	CH+8,Y
	DEX
	DEY
	BNE	D7
A4	LDA	#0
	STA	$CD
	LDX	#2
	LDA	VPO-1,X
	STA	$CA,X
	DEX
	BNE	A4+6
	LDA	$B2
	CMP	#2
	BEQ	A5
	LDA	#90
	STA	$D012
	STA	704
	LDA	#134
	STA	$D013
	STA	705
	LDX	#8
	LDA	PCH,X
	LDY	$CB
	STA	$3C00,Y
	DEC	$CB
	LDY	$CC
	STA	$3D00,Y
	DEC	$CC
	DEX
	INC	$CD
	LDA	$CD
	CMP	#9
	BCC	A4+38
	JMP	$E45F
A5	LDA	#134
	STA	$D012
	STA	704
	LDA	#90
	STA	$D013
	STA	705
	LDA	#0
	STA	$B2
	LDX	#16
	JMP	A4+38
;IRQ
IRQ	TXA
	PHA
	LDX	$E6
	CPX	#3
	BEQ	Q2
	LDX	$E3
	CPX	#0
	BEQ	P9
	DEX
	DEX
	DEX
	STX	$E3
	STX	$D202
	LDA	#172
	STA	$D203
	JMP	J3+5
P9	INC	$E6
	LDA	#252
	STA	$E3
	JMP	J3+5
Q2	LDX	$BD
	CPX	#200
	BCS	J3
	INX
	INX
	STX	$BD
	STX	$D202
	LDA	#166
	STA	$D203
	JMP	J3+5
J3	LDA	#0
	STA	$D203
	LDA	$3AE6
	CMP	#16
	BNE	Q3-5
	LDX	#51
	STX	$BF
	LDX	$E1
	CPX	#1
	BEQ	Q5
	LDX	$E4
	CPX	#70
	BCS	Q5
	INX
	INX
	STX	$E4
	STX	$D206
	LDA	#164
	STA	$D207
	LDA	#0
	STA	$E1
	JMP	Q3
Q5	LDA	#1
	STA	$E1
	LDX	$E4
	CPX	#10
	BCC	J3+22
	DEX
	DEX
	STX	$E4
	STX	$D206
	LDA	#164
	STA	$D207
	JMP	Q3
	LDA	#0
	STA	$D207
Q3	LDX	$BE
	CPX	#252
	BCS	J4+5
	CPX	#251
	BEQ	J4
	INX
	STX	$BE
	STX	$D204
	LDA	#168
	STA	$D205
	JMP	J4+5
J4	LDA	#0
	STA	$D205
	LDX	$BF
	CPX	#51
	BEQ	J5+5
	BCS	J5
	INX
	STX	$BF
	STX	$D206
	LDA	#138
	STA	$D207
	JMP	J5+5
J5	LDA	#0
	STA	$D207
	PLA
	TAX
	PLA
	RTI
;JOY
JOY	LDX	#0
	LDY	#9
	CMP	JOD-1,Y
	BEQ	JOY+14
	INX
	INX
	DEY
	BNE	JOY+4
	RTS
;SP CHEC
FA	LDA	53770
	AND	#6
	CMP	#0
	BNE	FA+11
	ORA	#2
	RTS
;LEVEL CHANGE
LEVC	LDX	$B0
	DEX
	LDA	LCT,X
	STA	710
	LDA	ATD,X
	STA	$B7
	LDA	MTD,X
	STA	$B6
	LDA	LPD,X
	STA	$B4
	LDA	XMO,X
	STA	$B5
	TXA
	CLC
	ADC	#33
	STA	$3AE2
	JSR	PUT
	RTS
;CHECK BIT
H3	CPX	#2
	BEQ	H3+10
	LDX	#2
	SEC
	SBC	#200
	RTS
	LDX	#0
	CLC
	ADC	#200
	RTS
;COLORS
CTB	.BYTE	$8C,$5C,$88,$0E,$30
LCT	.BYTE	$88,$8A,$8C,$D8,$DA,$DC,$68,$6A,$6C
	.BYTE	$F8,$FA,$FC,$48,$4A,$4C
;LEVEL DATA
ATD	.DBYTE	$0404,$0405,$0505,$0606,$0607,$0707,$0808,$0800
MTD	.DBYTE	$0A0C,$0E10,$1214,$1618,$1A1C,$1E20,$2224,$2600
LPD	.DBYTE	$2624,$2220,$1E1C,$1A18,$1614,$1210,$0E0C,$0A00
XMO	.DBYTE	$2A28,$2624,$2220,$1E1C,$1A18,$1614,$1210,$0E00
XAL	.BYTE	42,57,157,142
;JOY DATA
JOD	.BYTE	10,11,9,13,5,7,6,14,15
;LAS VECS
LVC	.BYTE	19,237,21,235
LMN	.BYTE	71,72,73,74,133,134,133,134
LSV	.BYTE	21,19,235,237,203,207,206,210
CLS	.BYTE	207,211,207,211,203,207,203,207,206,210,203,207
;SOUND DATA
STB	.BYTE	60,201,252,51
;RUN
RUN	LDA	#$C2
	STA	560
	LDA	#$41	;C*
	STA	561
	LDA	#0
	TAX
	STA	$0600,X
	DEX
	BNE	RUN+13
	STA	20
	STA	19
	LDA	#1
	STA	$B0
	STA	$B1
	STA	$E2
	LDA	#17
	STA	623
	LDA	#56
	STA	54279
	LDA	#3
	STA	53277
	LDA	#62
	STA	559
	LDA	#<DLI1
	STA	512
	LDA	#>DLI1
	STA	513
	LDA	#192
	STA	54286
	LDA	#6
	LDX	#>VBI
	LDY	#<VBI
	JSR	$E45C
	JSR	$E465
	LDA	#38
	STA	$B4
;SET IRQ
	LDA	#0
	STA	$D208
	STA	$D201
	LDA	#200
	STA	$D200
	LDA	#<IRQ
	STA	$0210
	LDA	#>IRQ
	STA	$0211
	LDA	16
	ORA	#1
	STA	16
	STA	$D20E
	LDA	#2
	STA	$DC
	LDX	#4
J6	LDA	STB-1,X
	STA	$BB,X
	DEX
	BNE	J6
A7	LDA	19
	CMP	#1
	BCC	A7
	LDA	#$DA
	STA	560
	LDA	#$41	;C*
	STA	561
;CLEAR
	LDA	#0
	TAX
A6	STA	$0600,X
	STA	$3B00,X
	STA	$3C00,X
	STA	$3D00,X
	STA	$3E00,X
	STA	$3F00,X
	DEX
	BNE	A6
	LDY	54283
	CPY	#$70
	BCC	A6+21
	STA	$3900,X
	STA	$3A00,X
	DEX
	BNE	A6+28
	LDA	#0
	STA	$D205
	STA	$BA
	STA	$BB
	LDA	#3
	STA	$B9
;UPLOAD
	LDX	#40
A8	LDA	TS1-1,X
	STA	$39C7,X
	LDA	TS2-1,X
	STA	$3AC7,X
	DEX
	BNE	A8
	LDA	#16
	STA	$3ADF
	STA	$3AEE
	LDA	$B1
	CLC
	ADC	#16
	STA	$3AEA
;WALLS
	LDX	#10
	LDA	#130
	STA	$3904,X
	STA	$3AB8,X
	DEX
	BNE	A8+35
	LDX	#119
	LDY	#5
	LDA	#132
	STA	$3900,X
	STA	$399C,X
	TXA
	SEC
	SBC	#19
	TAX
	LDA	#131
	STA	$3900,X
	STA	$399C,X
	TXA
	CLC
	ADC	#39
	TAX
	DEY
	BNE	A8+48
	LDY	#5
	LDX	#4
A9	LDA	#133
	STA	$3900,X
	STA	$3A73,X
	LDA	#64
	INX
	STA	$3A73,X
	DEX
	DEX
	STA	$3900,X
	INX
	TXA
	CLC
	ADC	#19
	TAX
	DEY
	BNE	A9
	LDY	#5
	LDX	#15
	LDA	#134
	STA	$3900,X
	STA	$3A55,X
	LDA	#64
	INX
	STA	$3900,X
	DEX
	DEX
	STA	$3A55,X
	INX
	TXA
	CLC
	ADC	#21
	TAX
	DEY
	BNE	A9+32
	LDX	#131
	STX	$3964
	INX
	STX	$3A63
	LDA	#0
	LDX	#16
	STA	CH,X
	DEX
	BNE	A9+73
;COLORS
	LDX	#5
	LDA	CTB-1,X
	STA	707,X
	DEX
	BNE	A9+81
	LDA	#$1E
	STA	706
	STA	707
	LDA	$E2
	STA	$B0
	JSR	LEVC
	LDX	#$39
	STX	S+1
	INX
	STX	S+3
	LDA	$B3
	CMP	#1
	BEQ	START+11
;LOOP
B1	LDA	53279
	STA	53250
	STA	53251
	CMP	#6
	BEQ	START
	CMP	#3
	BEQ	OPT
	CMP	#5
	BEQ	SEL
	JMP	B1
SEL	LDX	$B0
	INX
	CPX	#10
	BCC	C3
	LDX	#1
C3	STX	$B0
	STX	$E2
	STX	77
	JSR	LEVC
	JMP	B2
OPT	LDX	$B1
	STX	77
	CPX	#1
	BEQ	B2-4
	DEX
	STX	$B1
	TXA
	CLC
	ADC	#16
	STA	$3AEA
	JMP	B2
	INX
	JMP	OPT+9
B2	LDA	20
	CLC
	ADC	#9
	LDX	#0
	STX	53250
	STX	53251
	CMP	20
	BEQ	B1
	JMP	B2+7
;START
START	LDA	$E2
	STA	$B0
	LDA	#1
	STA	$B3
	JMP	A6-3
	LDA	#0
	STA	$B3
	STA	$B8
	LDA	#19
	STA	$3ADF
	LDX	$B1
	CPX	#1
	BEQ	B3
	STA	$3AEE
B3	LDA	#100
	STA	HPO
	LDA	#130
	STA	VPO
	CPX	#1
	BEQ	B3+20
	STA	VPO+1
	LDA	#156
	STA	HPO+1
	LDX	#10
	LDA	#0
	STA	$D3,X
	DEX
	BNE	B3+24
	LDA	53770
	AND	#15
	CLC
	ADC	#3
	STA	$D5
	LDA	$B0
	CMP	#7
	BCC	G5-2
	LDX	#1
	STX	$BA
	LDY	#10
	STA	ASP
	CMP	#10
	BCC	G5-2
	STX	$BB
	LDY	#12
	STA	ASP+1
	LDY	$B7
G5	JSR	PX
	DEY
	BNE	G5
	LDY	#6
	LDA	#16
	STA	$3ACA,Y
	STA	$3AD4,Y
	STA	TS2+2,Y
	STA	TS2+12,Y
	DEY
	BNE	G5+10
	LDA	$B0
	STA	$E2
;MAIN LOOP
ML	LDA	53279
	CMP	#6
	BNE	ML+10
	JMP	START
	CMP	#7
	BCS	ML+17
	JMP	A6-3
	LDA	#0
	STA	77
	LDA	#$82
	STA	$3ABA
	LDA	$E0
	CMP	#45
	BCC	Q1
	JSR	SE
Q1	JSR	SUV
	LDA	764
	CMP	#255
	BEQ	N9
	JMP	PAUSE
N9	LDA	$B9
	LSR	A
	BCS	B5+3
	LDA	$0278
	JSR	JOY
	CPX	#0
	BEQ	B5
	LDA	$0284
	CMP	#1
	BEQ	B5
	LDA	#0
	STA	AMO
	STA	APO
	LDY	VMO
	LDA	$3B00,Y
	AND	#252
	STA	$3B00,Y
	LDA	HPO
	ADC	#3
	STA	HMO
	LDA	VPO
	SBC	#3
	STA	VMO
	STX	AMO
	LDA	#0
	STA	$BD
	JMP	B5+3
B5	STX	APO
	LDA	$B1
	CMP	#2
	BNE	B6+3
	LDA	$B9
	LSR	A
	LSR	A
	BCS	B6+3
	LDA	$0279
	JSR	JOY
	CPX	#0
	BEQ	B6
	LDA	$0285
	CMP	#1
	BEQ	B6
	LDA	#0
	STA	AMO+1
	STA	APO+1
	LDY	VMO+1
	LDA	$3B00,Y
	AND	#243
	STA	$3B00,Y
	LDA	HPO+1
	ADC	#3
	STA	HMO+1
	LDA	VPO+1
	SBC	#3
	STA	VMO+1
	STX	AMO+1
	LDA	#0
	STA	$BD
	JMP	B6+3
B6	STX	APO+1
	LDA	$CF
	CMP	$B4
	BCS	MLA-4
	JMP	C2
	LDA	#0
	STA	$CF
;LASER MOVE
MLA	LDY	#4
	LDA	XLA-1,Y
	CMP	#0
	BNE	I1
	DEY
	BNE	MLA+2
	JMP	C2
I1	LDX	#2
	CPY	#3
	BCS	I1+8
	LDX	#0
	STA	S,X
	LDA	LMN+3,Y
	STA	(S,X)
	STX	$C3
	LDA	53770
	AND	#1
	CPY	#3
	BEQ	I2
	CPY	#1
	BEQ	I2
	CLC
	ADC	#2
I2	CLC
	ADC	#1
	STA	$C2
	TAX
	LDA	XLA-1,Y
	CLC
	ADC	LVC-1,X
	LDX	$C3
	STA	S,X
	LDA	(S,X)
	CMP	LMN+3,Y
	BEQ	I4+4
	LDX	$C2
	CPX	#1
	BEQ	I4
	CPX	#3
	BEQ	I4
	DEX
	TXA
	JMP	I2+3
I4	INX
	JMP	I4-6
	LDA	S,X
	STA	XLA-1,Y
	LDA	LMN-1,Y
	STA	(S,X)
	JMP	MLA+9
C9	JMP	E4
;PULSAR MOVE
C2	LDA	$D6
	CMP	#1
	BCS	C9
	LDA	$B0
	CMP	#4
	BCC	C9
	LDA	$CE
	CMP	$B4
	BCC	C9
	LDA	#0
	STA	$CE
	LDA	$D5
	CMP	#0
	BEQ	C2+30
	DEC	$D5
	LDY	XPL
	LDX	BPL
	STY	S,X
	LDA	#131
	STA	(S,X)
	TYA
	CMP	#180
	BNE	C7
	LDA	#236
	STA	XPL
	LDX	#2
	STX	BPL
	JMP	C7+9
C7	CMP	#80
	BNE	C7+9
	LDX	#0
	STX	BPL
	LDA	XPL
	CLC
	ADC	#20
	STA	XPL
	STA	S,X
	LDA	#89
	STA	(S,X)
	LDA	$B0
	CMP	#7
	BCC	C9
	LDY	XPL+1
	LDX	BPL+1
	STY	S,X
	LDA	#132
	STA	(S,X)
	TYA
	CMP	#19
	BNE	C8
	LDX	#0
	STX	BPL+1
	LDA	#219
	STA	XPL+1
	JMP	C8+9
C8	CMP	#119
	BNE	C8+9
	LDX	#2
	STX	BPL+1
	LDA	XPL+1
	SEC
	SBC	#20
	STA	XPL+1
	STA	S,X
	LDA	#90
	STA	(S,X)
;PULSAR FIRE
E4	LDA	$B0
	CMP	#4
	BCS	D8-9
	JMP	CS
	LDA	$D5
	CMP	#0
	BEQ	D8
	JMP	CS
D8	LDA	$D6
	CMP	#1
	BEQ	D9
	CMP	#2
	BEQ	E1
	INC	$D6
	LDA	#50
	STA	$D7
	LDA	#200
	STA	$D205
	LDA	#163
	STA	$D204
	LDA	#252
	STA	$BE
	JMP	CS
D9	LDA	$D7
	CMP	#0
	BEQ	D9+9
	JMP	CS
	LDA	#30
	STA	$D7
	INC	$D6
	LDA	#211
	STA	$C4
E2	LDX	BPL
	LDY	XPL
	INY
	STY	S,X
	TYA
	LDY	#18
	LDA	$C4
	STA	(S,X)
	INC	S,X
	DEY
	BNE	E2+14
	LDA	#0
	STA	$BE
	LDA	$B0
	CMP	#7
	BCS	B4
	JMP	CS
B4	LDX	BPL+1
	LDY	XPL+1
	DEY
	STY	S,X
	LDY	#18
	LDA	$C4
	STA	(S,X)
	DEC	S,X
	DEY
	BNE	B4+13
	JMP	CS
E1	LDA	$D7
	CMP	#0
	BNE	CS
	STA	$C4
	STA	$D6
	LDA	53770
	AND	#15
	CLC
	ADC	#3
	STA	$D5
	JMP	E2
;SPIKE CHECK
CS	LDA	$B0
	CMP	#7
	BCS	CS+9
	JMP	E3
	LDY	#0
	LDA	HSP,Y
	CMP	#$33
	BCC	E7
	CMP	#$C4
	BCS	E7+9
	LDA	VSP,Y
	CMP	#$D9
	BCS	E7-13
	CMP	#$4F
	BCC	E7+18
	JMP	E6+9
	JSR	FA
	CMP	#6
	BNE	E6
	CLC
	ADC	#10
	JMP	E6
E7	JSR	FA
	CLC
	ADC	#2
	JMP	E6
	JSR	FA
	CLC
	ADC	#10
	JMP	E6
	JSR	FA
	CLC
	ADC	#6
E6	LDX	$BA,Y
	CPX	#0
	BEQ	E6+9
	STA	ASP,Y
	LDA	$B0
	CMP	#13
	BCC	E3
	INY
	CPY	#1
	BEQ	CS+11
;XENO MOVE
E3	LDA	$DB
	CMP	$B5
	BCS	F1
	JMP	E8
F1	LDA	#0
	STA	$DB
	LDY	$B7
	LDA	XPO,Y
	CMP	#0
	BEQ	F2-6
	LDX	BIT,Y
	STA	S,X
	LDA	(S,X)
	CMP	#1
	BEQ	F2
	LDA	#0
	STA	XPO,Y
	STA	BIT,Y
	DEC	$B8
	DEY
	BNE	F1+6
	JMP	E8
F2	LDX	DIR,Y
	LDA	XPO,Y
	CLC
	ADC	VC2,X
	LDX	BIT,Y
	CMP	#200
	BCC	F3
	JSR	H3
F3	STA	S,X
	LDA	(S,X)
	CMP	#0
	BEQ	F5
	LDA	53770
	AND	#7
	CLC
	ADC	#1
	STA	DIR,Y
	JMP	F2-6
F5	LDA	S,X
	STA	$C3
	STX	$C2
	LDA	XPO,Y
	LDX	BIT,Y
	STA	S,X
	LDA	#0
	STA	(S,X)
	LDA	$C3
	LDX	$C2
	STA	S,X
	STA	XPO,Y
	TXA
	STA	BIT,Y
	LDA	#1
	STA	(S,X)
	JMP	F2-6
;PUT XENO
PX	LDA	$B8
	CMP	$B7
	BCC	G6
	RTS
G6	LDA	#5
	STA	$C3
	LDA	XPO,Y
	CMP	#0
	BEQ	G6+12
	RTS
	LDA	53770
	AND	#2
	TAX
	STA	BIT,Y
	LDA	53770
	AND	#7
	CPX	#2
	BEQ	F6
	CLC
	ADC	#26
	STA	XPO,Y
	JMP	F6+6
F6	CLC
	ADC	#166
	STA	XPO,Y
	STA	S,X
	LDA	(S,X)
	CMP	#0
	BEQ	F7
	LDA	#0
	STA	XPO,Y
	DEC	$C3
	LDA	$C3
	CMP	#0
	BNE	G6+12
	LDA	53770
	AND	#7
	CLC
	ADC	#1
	STA	DIR,Y
	RTS
F7	INC	$B8
	LDA	#1
	STA	(S,X)
	RTS
E8	LDY	$B7
	JSR	PX
	DEY
	BNE	E8+2
;PUT LAS SHOT
PLS	LDY	#4
	LDA	XSH,Y
	CMP	#0
	BEQ	H4
	DEY
	BNE	PLS+2
	JMP	CMLS
H4	LDA	XLA-1,Y
	CMP	#0
	BEQ	PLS+9
	CLC
	ADC	LSV-1,Y
	LDX	#0
	CPY	#3
	BCC	H5
	LDX	#2
H5	STA	S,X
	LDA	(S,X)
	CMP	#0
	BNE	PLS+9
	LDA	S,X
	STA	XSH,Y
	TXA
	STA	BSH,Y
	LDA	LSV+3,Y
	STA	(S,X)
	JMP	PLS+9
;CH LAS MOVE
CMLS	LDA	$D8
	CMP	#0
	BEQ	CMLS+9
	JMP	CC
	LDX	#5
	LDY	#3
G7	CPY	$B0
	BCS	MLS-2
	INY
	INY
	INY
	DEX
	JMP	G7
	STX	$D8
;MOVE LAS SHOT
MLS	LDY	#4
	LDX	BSH,Y
	LDA	XSH,Y
	STA	S,X
	LDA	(S,X)
	CMP	CLS-1,Y
	BCC	H6
	LDA	#0
	STA	XSH,Y
	STA	BSH,Y
	DEY
	BNE	MLS+2
	JMP	CC
H6	CMP	CLS+3,Y
	BCS	H6+8
	JMP	H6-14
	CMP	CLS+7,Y
	BEQ	H7
	CPY	#3
	BCS	H7-8
	CLC
	ADC	#1
	STA	(S,X)
	JMP	H6-6
	SEC
	SBC	#1
	STA	(S,X)
	JMP	H6-6
H7	LDA	#0
	STA	(S,X)
	LDA	XSH,Y
	CLC
	ADC	LSV-1,Y
	LDX	BSH,Y
	CMP	#200
	BCC	H8
	JSR	H3
H8	STA	S,X
	LDA	(S,X)
	CMP	#0
	BEQ	H8+11
	JMP	H6-14
	TXA
	STA	BSH,Y
	LDA	S,X
	STA	XSH,Y
	LDA	CLS+3,Y
	CPY	#3
	BCS	H9
	STA	(S,X)
	JMP	H6-6
H9	CLC
	ADC	#3
	JMP	H9-5
;CHECK COLIS
CC	LDA	#0
	STA	$C0
	LDA	53252
	CMP	#0
	BEQ	K1
	STA	HPO
	JSR	K6
K1	LDA	53260
	CMP	#0
	BEQ	K2
	STA	HPO
	JSR	K6
K2	LDA	53253
	CMP	#0
	BEQ	K2+13
	STA	HPO+1
	JSR	K8
	LDA	53261
	CMP	#0
	BEQ	K3
	STA	HPO+1
	JSR	K8
K3	LDY	#0
	LDA	53248,Y
	CMP	#0
	BEQ	M1-5
	LSR	A
	PHA
	BCC	K4
	JSR	LOC
	LDA	#0
	STA	(S,X)
	LDX	#10
	STX	$DE
	JSR	ADS
	LDA	#25
	STA	$BF
K4	PLA
	LSR	A
	BCC	K5
	JSR	LOC
	LDA	(S,X)
	CMP	#75
	BCS	K5
	SEC
	SBC	#71
	TAX
	LDA	LMN+4,X
	PHA
	LDA	#0
	STA	XLA,X
	PLA
	LDX	$C1
	STA	(S,X)
	LDX	#50
	STX	$DE
	JSR	ADS
	LDA	#25
	STA	$BF
K5	INC	$C0
	LDA	#0
	STA	AMO,Y
	STA	HMO,Y
	INY
	CPY	#1
	BEQ	K3+2
M1	LDY	#0
	LDA	53256,Y
	LSR	A
	PHA
	BCC	M2
	CPY	#1
	BNE	M2
	LDA	$B9
	LSR	A
	BCS	M2
	STY	HPO
	JSR	K6
	LDY	#1
	LDX	#250
	STX	$DE
	JSR	ADS
	LDA	#25
	STA	$BF
M2	PLA
	LSR	A
	PHA
	BCC	M3
	CPY	#0
	BNE	M3
	LDA	$B9
	LSR	A
	LSR	A
	BCS	M3
	STY	HPO+1
	JSR	K8
	LDX	#250
	STX	$DE
	JSR	ADS
	LDA	#25
	STA	$BF
M3	PLA
	LSR	A
	PHA
	BCC	M4
	LDA	#0
	STA	ASP
	STA	HSP
	STA	VSP
	STA	$BA
	STA	HMO,Y
	STA	AMO,Y
	LDX	#100
	STX	$DE
	JSR	ADS
	LDA	#25
	STA	$BF
	LDX	#0
	TXA
	STA	$3E00,X
	DEX
	BNE	M4-8
	INC	$C0
M4	PLA
	LSR	A
	BCC	M5
	LDA	#0
	STA	ASP+1
	STA	HSP+1
	STA	VSP+1
	STA	$BB
	STA	HMO+1
	STA	AMO+1
	LDX	#100
	STX	$DE
	JSR	ADS
	LDA	#25
	STA	$BF
	LDX	#0
	TXA
	STA	$3F00,X
	DEX
	BNE	M5-8
	INC	$C0
M5	INY
	CPY	#1
	BNE	M5+8
	JMP	M1+2
	LDA	$C0
	CMP	#0
	BEQ	M5+14
	STA	53278
;TIMER&CD
	LDA	20
	CMP	#16
	BCS	O7
	JMP	CD
O7	LDA	#0
	STA	20
	LDA	$3AE7
	CMP	#16
	BEQ	O8
	DEC	$3AE7
	JMP	CD
O8	LDA	$3AE6
	CMP	#16
	BEQ	O9
	DEC	$3AE6
	LDA	#25
	STA	$3AE7
	JMP	CD
O9	LDA	$B0
	CMP	#15
	BCS	O9+8
	INC	$B0
	JSR	LEVC
	LDA	#25
	STA	$3AE6
	STA	$3AE7
CD	LDA	$3AEE
	CMP	#16
	BEQ	CD+10
	JMP	P3-2
	LDA	$3ADF
	CMP	#16
	BNE	P3-2
	JMP	BD
	LDX	#2
P3	LDA	HMO-1,X
	CMP	#$2F
	BCC	P2
	CMP	#$CC
	BCS	P2
	LDA	VMO-1,X
	CMP	#$43
	BCC	P2
	CMP	#$DF
	BCS	P2
	DEX
	BNE	P3
	JMP	ML
P2	LDA	#0
	STA	AMO-1,X
	STA	HMO-1,X
	JMP	P2-6
;LOCATE
LOC	LDA	#0
	STA	AMO,Y
	INC	$C0
	LDA	HMO,Y
	SEC
	SBC	#47
	LDX	#0
L1	CMP	#8
	BCC	L2
	SEC
	SBC	#8
	INX
	JMP	L1
L2	STX	$C2
	LDA	VMO,Y
	SEC
	SBC	#64
	LDX	#0
	CMP	#8
	BCC	L3
	SEC
	SBC	#8
	INX
	JMP	L2+10
L3	STX	$C3
	CPX	#10
	BCS	L4
	LDA	#0
	STA	$C1
	LDA	$C2
	CPX	#0
	BEQ	L4-5
L5	CLC
	ADC	#20
	DEX
	BNE	L5
	LDX	$C1
	STA	S,X
	RTS
L4	LDA	#2
	STA	$C1
	TXA
	SEC
	SBC	#10
	TAX
	JMP	L5-6
;HIT PLAYER
K6	INC	$C0
	LDA	$B9
	LSR	A
	BCS	K7+28
	LDA	#0
	STA	$E0
	STA	$BF
	LDX	$3ADF
	CPX	#16
	BEQ	K7+27
	DEX
	STX	$3ADF
	LDA	$B9
	ORA	#1
	STA	$B9
	LDY	VPO
	LDX	#8
	LDA	#0
K7	STA	$3C00,Y
	DEY
	DEX
	BNE	K7
	STA	APO
	LDX	$3ADF
	CPX	#16
	BEQ	K7+27
	LDA	#100
	STA	HPO
	LDA	#130
	STA	VPO
	RTS
	LDA	#100
	STA	HPO
	RTS
K8	INC	$C0
	LDA	$B9
	LSR	A
	LSR	A
	BCS	K9+28
	LDA	#0
	STA	$E0
	STA	$BF
	LDX	$3AEE
	CPX	#16
	BEQ	K9+27
	DEX
	STX	$3AEE
	LDA	$B9
	ORA	#2
	STA	$B9
	LDY	VPO+1
	LDX	#8
	LDA	#0
K9	STA	$3D00,Y
	DEY
	DEX
	BNE	K9
	STA	APO+1
	LDX	$3AEE
	CPX	#16
	BEQ	K9+27
	LDA	#156
	STA	HPO+1
	LDA	#130
	STA	VPO+1
	RTS
	LDA	#156
	STA	HPO+1
	RTS
;STAT EXIS
SE	LDA	$B9
	LSR	A
	BCC	L7
	LDA	$3ADF
	CMP	#17
	BCC	L7
	LDA	$0284
	CMP	#0
	BNE	L7
	LDA	$B9
	AND	#2
	STA	$B9
L7	LDA	$B1
	CMP	#2
	BNE	L6
	LDA	$B9
	LSR	A
	LSR	A
	BCC	L6
	LDA	$3AEE
	CMP	#17
	BCC	L6
	LDA	$0285
	CMP	#0
	BNE	L6
	LDA	$B9
	AND	#1
	STA	$B9
L6	RTS
;ADS
ADS	PHA
	TYA
	PHA
	CMP	#1
	BEQ	N1
	LDY	#6
	STY	$DD
N2	LDA	$B0
	PHA
	LDA	$3ACA,Y
	CMP	#25
	BCS	N3
	ADC	#1
	STA	$3ACA,Y
	CPY	#12
	BEQ	N6+3
	CPY	#2
	BEQ	N5
	LDY	$DD
	DEX
	BNE	N2+3
	LDX	$DE
	DEC	$B0
	BNE	N2+3
	PLA
	STA	$B0
	PLA
	TAY
	PLA
	RTS
N1	LDY	#16
	JMP	N2-2
N3	LDA	#16
	STA	$3ACA,Y
	CPY	#11
	BEQ	N3+12
	DEY
	BNE	N2+3
	LDY	$DD
	JMP	N2+3
N5	LDY	#0
	LDA	$3ADF,Y
	CMP	#25
	BEQ	N6
	CLC
	ADC	#1
	STA	$3ADF,Y
	LDA	#252
	STA	$E3
	LDA	#0
	STA	$E6
N6	JMP	N2+23
	LDY	#15
	JMP	N5+2
;SCORE UP VBI
SUV	LDA	$DA
	CMP	#0
	BEQ	SUV+7
	RTS
	LDA	20
	CMP	#4
	BEQ	P1
	CMP	#8
	BEQ	P1
	CMP	#12
	BEQ	P1
	RTS
P1	LDA	#1
	STA	$DA
	LDA	$B9
	LSR	A
	PHA
	BCS	N4
	LDX	#1
	LDY	#0
	STX	$DE
	JSR	ADS
N4	PLA
	LSR	A
	BCS	N4+13
	LDX	#1
	LDY	#1
	STX	$DE
	JSR	ADS
	RTS
;PUT
PUT	LDX	#4
	LDA	XLA-1,X
	CMP	#0
	BEQ	O1
	DEX
	BNE	PUT+2
	JMP	O2
O1	LDA	XAL-1,X
	STA	XLA-1,X
	JMP	PUT+9
O2	LDA	$B0
	CMP	#4
	BCC	O3
	LDA	XPL
	CMP	#0
	BNE	O4
	LDA	BPL
	CMP	#2
	BEQ	O4
	LDA	#100
	STA	XPL
O4	LDA	$B0
	CMP	#7
	BCC	O3
	LDA	XPL+1
	CMP	#0
	BNE	O5
	LDA	#99
	STA	XPL+1
	LDA	#2
	STA	BPL+1
O5	LDX	#0
	LDA	HSP,X
	CMP	#0
	BNE	O6
	LDA	#72
	STA	VSP,X
	LDA	#128
	STA	HSP,X
	LDA	#1
	STA	$BA,X
	STA	53250
	STA	53251
O6	INX
	CPX	#2
	BCS	O3
	LDA	$B0
	CMP	#10
	BCS	O5+2
O3	RTS
;PAUSE
PAUSE	LDA	#255
	STA	764
	LDA	$BE
	PHA
	LDA	#251
	STA	$BE
	LDA	$B0
	PHA
	LDA	#1
	STA	$B0
	LDA	#0
	LDX	AMO
	LDY	AMO+1
	STA	AMO
	STA	AMO+1
	LDA	$D01F
	CMP	#6
	BNE	N8
	PLA
	STA	$B0
	PLA
	JMP	START
N8	CMP	#7
	BCS	N8+11
	PLA
	STA	$B0
	PLA
	JMP	A6-3
	LDA	$0279
	CMP	#15
	BEQ	N8+21
	JMP	BD-15
	LDA	$0278
	CMP	#15
	BEQ	N8-14
	STX	AMO
	STY	AMO+1
	PLA
	STA	$B0
	PLA
	STA	$BE
	JMP	N9
;Hscore&Death
BD	LDY	#0
	LDA	$3ACB,Y
	CMP	$39D5,Y
	BCC	P4
	BNE	P5
	INY
	CPY	#6
	BCC	BD+2
P4	LDY	#0
	LDA	$3AD5,Y
	CMP	$39D5,Y
	BCC	P6
	BNE	P7
	INY
	CPY	#6
	BCC	P4+2
	JMP	P6
P5	LDY	#6
	LDA	$3ACA,Y
	STA	$39D4,Y
	STA	TS1+12,Y
	DEY
	BNE	P5+2
	JMP	P4
P7	LDY	#6
	LDA	$3AD4,Y
	STA	$39D4,Y
	STA	TS1+12,Y
	DEY
	BNE	P7+2
P6	LDY	#6
	LDA	$3ACA,Y
	STA	TS2+2,Y
	LDA	$3AD4,Y
	STA	TS2+12,Y
	DEY
	BNE	P6+2
	JMP	A6-3
	*=	$02E0
	.WORD	RUN
	.END  

This is non-commercial site, its content is based on Atari 8-bit home computer contents and references.
If you feel your rights are violated by showing/using any part of contents of your product represented on this page, please contact me immediatelly so I can remove it!