Home » Personal collection » Commodore disks » disk47a_unlabelled.d64 » main

main

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Personal collection » Commodore disks » disk47a_unlabelled.d64
Filename: main
Read OK:
File size: 1155 bytes
Load address: 0801
Exec address: 0000
Duplicates

There is 1 duplicate copy of this file in the archive:

File contents
    10 ; ???? MAIN PROGRAM
    20 ; BY DOMINIC FORD
    30 ; DECEMBER '94 -
    40 *=$C000
  1000 ; VARIABLES
  1005 DEAD=$CF40
  1010 CLOCK=$CF41
  1020 EFDAT=$CF42
  1030 NWAIT=$CF43
  1040 MHI=$3F
  1050 VDAT=$BC01
  1060 DATA=$CF45
  1070 XP=$CF44
  1080 YP=$CF47
  1090 MEMS=$41
  1100 MEMR=$22
  1110 BT=$CF48
  1120 XPS=$CF49
  1130 YPS=$CF4A
  1140 BTFB=$CF4B
  1150 XPTL=$CF4C
  1160 YPTL=$CF4D
  1170 XSSTE=$CF4E
  1180 YSSTE=$CF4F
  1190 MTAB=$CF50
  1200 STPAGE=$CF51
  2000 ; MUSIC ROUTINES
  2005 MUSON SEI
  2010 LDA #<MDATAPLAY
  2020 STA $0314
  2030 LDA #>MDATAPLAY
  2040 STA $0315
  2050 LDA DATA
  2060 STA MHI+1
  2070 LDA DATA+1
  2080 STA MHI
  2090 LDA #$00
  2100 STA NWAIT
  2110 JSR SCNCLRUP
  2120 CLI
  2130 RTS
  2140 MUSOFF SEI
  2150 LDA #$31
  2160 STA $0314
  2170 LDA #$EA
  2180 STA $0315
  2190 CLI
  2200 RTS
  2210 MDATAPLAY JSR STACK
  2220 LDA NWAIT
  2230 BEQ READ
  2240 JMP $EA31
  2250 READ LDY #$00
  2260 LDA (MHI),Y
  2270 AND #$01
  2280 BEQ CONTMA
  2290 LDA #$07
  2300 CONTMA TAX
  2310 LDA (MHI),Y
  2320 LSR A
  2330 STA NWAIT
  2340 CMP #$06
  2350 BNE MRCONT
  2360 LDA VDAT,X
  2370 STA $D404,X
  2380 TAY
  2390 INY
  2400 TYA
  2410 STA $D404,X
  2420 JSR DESTACK
  2430 JMP $EA31
  2440 STACK PHA
  2450 TXA
  2460 PHA
  2470 TYA
  2480 PHA
  2490 RTS
  2500 DESTACK JSR EFFECTS
  2510 UNSTACK PLA
  2520 TAY
  2530 PLA
  2540 TAX
  2550 PLA
  2560 RTS
  2570 MRCONT INY
  2580 LDA (MHI),Y
  2590 STA $D400,X
  2600 INY
  2610 LDA (MHI),Y
  2620 STA $D401,X
  2630 JSR DESTACK
  2640 JMP $EA31
  2650 SCNCLRUP LDX VDAT
  2660 INX
  2670 STX $D404
  2680 LDX VDAT+7
  2690 INX
  2700 STX $D40B
  2710 RTS
  2720 EFFECTSON SEI
  2730 LDA #<EFFONLY
  2740 STA $0314
  2750 LDA #>EFFONLY
  2760 STA $0315
  2770 CLI
  2780 RTS
  2790 EFFONLY JSR STACK
  2800 JSR DESTACK
  2810 JMP $EA31
  3000 ; MAIN GAME LOOP
  3005 MAIN LDA #$00
  3010 STA DEAD
  3020 STA EFDAT
  3030 JSR MUSON
  3040 JSR FULLSDISP
  3050 LDA $A2
  3060 CLC
  3070 ADC CLOCK
  3080 STA CLOCK
  3090 MAINLOP JSR YOU
  3100 JSR MONSTERS
  3110 JSR PANEL
  3120 LDA DEAD
  3130 BNE GAMEOVER
  3140 LDA CLOCK
  3150 TRLOP CMP $A2
  3160 BCC TRLOP
  3170 CLC
  3180 ADC #$03
  3190 STA CLOCK
  3200 JMP MAINLOP
  3210 GAMEOVER JSR GAMEND
  4000 ; GRAPHIC ROUTINES
  4005 DISPBLOCK JSR INITDB
  4010 LDX YPS
  4020 YPLOPD CPX #$00
  4030 BEQ YPDCNT
  4040 DEX
  4050 LDA MEMS
  4060 CLC
  4070 ADC #$50
  4082 STA MEMS
  4090 BCC YPLOPD
  4100 INC MEMS+1
  4110 JMP YPLOPD
  4120 YPDCNT LDA XPS
  4130 ASL A
  4140 CLC
  4150 ADC MEMS
  4160 STA MEMS
  4170 BCC XPCNT
  4180 INC MEMS+1
  4190 XPCNT LDA YP
  4200 LSR A
  4210 LSR A
  4220 CLC
  4230 ADC #$0C
  4240 STA MEMR+1
  4250 LDA YP
  4260 AND #$03
  4270 LSR A
  4280 ROR A
  4290 ROR A
  4300 STA MEMR
  4310 LDA XP
  4320 LSR A
  4330 LSR A
  4340 CLC
  4350 ADC MEMR
  4360 STA MEMR
  4370 LDA (MEMR),Y
  4380 STA BT
  4390 LDA XP
  4400 AND #$03
  4410 TAX
  4420 LDA YP
  4430 LSR A
  4440 CLC
  4450 ADC #$34
  4460 STA MEMR+1
  4470 LDA YP
  4480 AND #$01
  4490 LSR A
  4500 ROR A
  4510 STA MEMR
  4520 LDA XP
  4530 LSR A
  4540 CLC
  4550 ADC MEMR
  4560 STA MEMR
  4570 LDA (MEMR),Y
  4580 STA BTFB
  4590 TXA
  4600 AND #$01
  4610 BEQ FBNROT
  4620 LSR A
  4630 LSR A
  4640 LSR A
  4650 LSR A
  4660 FBNROT AND #$10
  4670 STA BTFB
  4680 LDA BT
  4690 DTBL CPX #$00
  4700 BEQ DTBLCONT
  4710 LSR A
  4720 LSR A
  4730 DEX
  4740 JMP DTBL
  4750 DTBLCONT AND #$03
  4760 ASL A
  4770 ASL A
  4780 ASL A
  4790 ASL A
  4800 CLC
  4810 ADC BTFB
  4820 STA BT
  4830 ASL A
  4840 ASL A
  4850 CLC
  4860 ADC #$40
  4870 STA (MEMS),Y
  4880 ADC #$01
  4890 INY
  4900 STA (MEMS),Y
  4910 ADC #$01
  4920 INY
  4930 STA (MEMS),Y
  4940 ADC #$27
  4950 LDY #$20
  4960 STA (MEMS),Y
  4970 ADC #$01
  4980 INY
  4990 STA (MEMS),Y
  5000 LDA MEMS+1
  5010 CLC
  5020 ADC #$54
  5030 STA MEMS+1
  5040 LDY #$00
  5050 LDA BT
  5060 STA (MEMS),Y
  5070 INY
  5080 STA (MEMS),Y
  5090 LDY #$20
  5100 STA (MEMS),Y
  5110 INY
  5120 STA (MEMS),Y
  5130 INY
  5140 STA (MEMS),Y
  5150 JSR UNSTACK
  5160 RTS
  5170 INITDB LDA #$84
  5180 STA MEMS+1
  5190 LDY #$00
  5200 STY MEMS
  5210 LDA XPTL
  5220 CLC
  5230 ADC XPS
  5240 STA XP
  5250 LDA YPTL
  5260 CLC
  5270 ADC YPS
  5280 STA YP
  5290 RTS
  6000 ; SCROLLER ROUTINES
  6005 DOWNMEM LDY MTAB
  6010 LDA ($FD),Y
  6020 LDY #$00
  6030 STA ($FD),Y
  6040 INC $FD
  6050 LDA $FD
  6060 BNE DOWNMEM
  6070 INC $FE
  6080 LDA $FE
  6090 CMP STPAGE
  6100 BNE DOWNMEM
  6110 RTS
  6120 UPMEM LDA $FE
  6130 PHA
  6140 LDA STPAGE
  6150 STA $FE
  6160 LDY #$00
  6170 LDA ($FD),Y
  6180 LDY MTAB
  6190 STA ($FD),Y
  6200 DEC $FD
  6210 LDA $FD
  6220 CMP #$FF
  6230 BNE UPMEM
  6240 DEC $FE
  6250 PLA
  6260 PHA
  6270 CMP $FE
  6280 BNE UPMEM
  6290 PLA
  6300 RTS
  6310 LSCROLL JSR STACK
  6320 LDX XSSTE
  6330 DEX
  6340 TXA
  6350 AND #$07
  6360 STA XSSTE
  6370 CLC
  6380 ADC #$10
  6390 STA $D016
  6400 CMP #$17
  6410 BEQ LSCRDISP
  6420 SLDC JSR UNSTACK
  6430 RTS
  6440 LSCRDISP LDA #$84
  6450 STA $FE
  6460 LDA #$08
  6470 STA STPAGE
  6480 LDA #$00
  6490 STA $FD
  6500 LDA #$28
  6510 STA MTAB
  6520 JSR DOWNMEM
  6530 LDA #$D8
  6540 STA $FE
  6550 LDA #$00
  6560 STA $FD
  6570 JSR DOWNMEM
  6580 LDA #$00
  6590 TAX
  6600 LSSCRDISP STA XPS
  6610 STX YPS
  6620 JSR DISPBLOCK
  6630 INX
  6640 CPX #$0A
  6650 BNE LSSCRDISP
  6660 JMP SLDC
 10000 ; TEMP ROUTINES
 10001 EFFECTS NOP
 10002 FULLSDISP NOP
 10003 YOU NOP
 10004 MONSTERS NOP
 10005 PANEL NOP
 10006 GAMEND NOP


; ???? MAIN PROGRAM/; BY DOMINIC FORDD; DECEMBER '94 -P(��$C000`�; VARIABLESo�DEAD�$CF40�CLOCK�$CF41��EFDAT�$CF42�N��$CF43�MHI�$3F�VDAT�$BC01�$�=$CF45�.XP�$CF44�8YP�$CF47�BMEMS�$41�LMEMR�$22	VBT�$CF48	`XPS�$CF49 	jYPS�$CF4A/	tBTFB�$CF4B>	~XPTL�$CF4CM	�YPTL�$CF4D]	�XSSTE�$CF4Em	�YSSTE�$CF4F|	�MTAB�$CF50�	�STPAGE�$CF51�	�; MUSIC ROUTINES�	�MUS� SEI�	�LDA #�M�PLAY�	�STA $0314�	�LDA #�M�PLAY�	�STA $0315�	LDA �
STA MHI�1
LDA �+1
 STA MHI*
*LDA #$005
4STA N�A
>JSR �UPI
HCLIQ
RRTS`
\MUSOFF SEIm
fLDA #$31{
pSTA $0314�
zLDA #$EA�
�STA $0315�
�CLI�
�RTS�
�M�PLAY JSR STACK�
�LDA N��
�BEQ ��
�JMP $EA31�
�� LDY #$00�
�LDA (MHI),Y�� #$01�BEQ �MA!�LDA #$07-��MA TAX=	LDA (MHI),YG	LSR AR	STA N�_$	CMP #$06k.	BNE MR�z8	LDA VDAT,X�B	STA $D404,X�L	TAY�V	INY�`	TYA�j	STA $D404,X�t	JSR DESTACK�~	JMP $EA31��	STACK PHA��	TXA��	PHA��	TYA��	PHA�	RTS�	DESTACK JSR EFFECTS.�	UNSTACK PLA6�	TAY>�	PLAF�	TAXN�	PLAV
RTSb

MR� INYr
LDA (MHI),Y�
STA $D400,X�(
INY�2
LDA (MHI),Y�<
STA $D401,X�F
JSR DESTACK�P
JMP $EA31�Z
�UP LDX VDAT�d
INX�n
STX $D404�x
LDX VDAT�7
�
INX
�
STX $D40B
�
RTS-
�
EFFECTS� SEI>
�
LDA #�EFF�LYL
�
STA $0314]
�
LDA #�EFF�LYk
�
STA $0315s
�
CLI{
�
RTS�
�
EFF�LY JSR STACK�
�
JSR DESTACK�
�
JMP $EA31�
�; MAIN GAME LOOP�
�MAIN LDA #$00�
�STA DEAD�
�STA EFDAT�
�JSR MUS��JSR FULLSDISP�LDA $A2#�CLC1�ADC CLOCK?STA CLOCKSMAINLOP JSR YOUcJSR M�STERSq&JSR PANEL~0LDA DEAD�:BNE GAMEOVER�DLDA CLOCK�NTRLOP CMP $A2�XBCC TRLOP�bCLC�lADC #$03�vSTA CLOCK��JMP MAINLOP�GAMEOVER JSR GAM��; GRAPHIC ROUTINES6�DISPBLOCK JSR INITDBB�LDX YPSV�YPLOPD CPX #$00e�BEQ YPDCNTm�DEXz�LDA MEMS��CLC��ADC #$50��STA MEMS��BCC YPLOPD�INC MEMS�1�JMP YPLOPD�YPDCNT LDA XPS�"ASL A�,CLC�6ADC MEMS@STA MEMSJBCC XPCNT%TINC MEMS�16^XPCNT LDA YP@hLSR AJrLSR AR|CLC_�ADC #$0Cn�STA MEMR�1y�LDA YP��� #$03��LSR A��R� A��R� A��STA MEMR��LDA XP��LSR A��LSR A��CLC��ADC MEMR�STA MEMR�LDA (MEMR),Y
STA BT&LDA XP 0� #$03(:TAX3DLDA YP=NLSR AEXCLCRbADC #$34alSTA MEMR�1lvLDA YPw�� #$01��LSR A��R� A��STA MEMR��LDA XP��LSR A��CLC��ADC MEMR��STA MEMR��LDA (MEMR),Y��STA BTFB��TXA��� #$01BEQ FBNROTLSR A"LSR A, LSR A6*LSR AH4FBNROT � #$10U>STA BTFB`HLDA BTrRDTBL CPX #$00�\BEQ DTBL��fLSR A�pLSR A�zDEX��JMP DTBL��DTBL� � #$03��ASL A��ASL A��ASL A��ASL A��CLC��ADC BTFB�STA BT�ASL A�ASL A�CLC+�ADC #$40<STA (MEMS),YIADC #$01QINYb$STA (MEMS),Yo.ADC #$01w8INY�BSTA (MEMS),Y�LADC #$27�VLDY #$20�`STA (MEMS),Y�jADC #$01�tINY�~STA (MEMS),Y��LDA MEMS�1��CLC��ADC #$54�STA MEMS�1�LDY #$00$�LDA BT5�STA (MEMS),Y=�INYN�STA (MEMS),Y[�LDY #$20l�STA (MEMS),Yt�INY�STA (MEMS),Y�
INY�STA (MEMS),Y�JSR UNSTACK�(RTS�2INITDB LDA #$84�<STA MEMS�1�FLDY #$00�PSTY MEMSZLDA XPTLdCLCnADC XPSxSTA XP,�LDA YPTL4�CLC@�ADC YPSK�STA YPS�RTSkp; SCROLLER ROUTINES�uDOWNMEM LDY MTAB�zLDA ($FD),Y��LDY #$00��STA ($FD),Y��INC $FD��LDA $FD��BNE DOWNMEM��INC $FE��LDA $FE��CMP STPAGE�BNE DOWNMEM�RTS&�UPMEM LDA $FE.�PHA=�LDA STPAGEISTA $FEVLDY #$00fLDA ($FD),Ys$LDY MTAB�.STA ($FD),Y�8DEC $FD�BLDA $FD�LCMP #$FF�VBNE UPMEM�`DEC $FE�jPLA�tPHA�~CMP $FE��BNE UPMEM��PLA��RTS�LSCROLL JSR STACK �LDX XSSTE(�DEX0�TXA;�� #$07I�STA XSSTEQ�CLC^�ADC #$10l�STA $D016yCMP #$17�
BEQ LSCRDISP�SLDC JSR UNSTACK�RTS�(LSCRDISP LDA #$84�2STA $FE�<LDA #$08�FSTA STPAGE�PLDA #$00�ZSTA $FDdLDA #$28nSTA MTAB(xJSR DOWNMEM5�LDA #$D8A�STA $FEN�LDA #$00Z�STA $FDj�JSR DOWNMEMw�LDA #$00�TAX��LSSCRDISP STA XPS��STX YPS��JSR DISPBLOCK��INX��CPX #$0A��BNE LSSCRDISP�JMP SLDC�'; TEMP ROUTINES'EFFECTS NOP'FULLSDISP NOP)'YOU NOP9'M�STERS NOPG'PANEL NOPT'GAM� NOP
YHJ@; ???? main program@/HT@; by dominic ford@dH.@; december '94 -@pH(@..$c000@.H.C; variables@OH.Cdead.$cf40@.H.Cclock.$cf41@.H.Cefdat.$cf42@.HFDn..$cf43@.HPDmhi.$3f@.HZDvdat.$bc01@.H$D.=$cf45@.H.Dxp.$cf44@.H8Dyp.$cf47@.HbDmems.$41@.HlDmemr.$22@DIvDbt.$cf48@RI.Dxps.$cf49@ IJDyps.$cf4a@/ITDbtfb.$cf4b@>I.Dxptl.$cf4c@mI.Dyptl.$cf4d@]I.Dxsste.$cf4e@MI.Dysste.$cf4f@.I.Dmtab.$cf50@.I.Dstpage.$cf51@.I.G; music routines@.I.Gmus. sei@.I.Glda #.m.play@.I.Gsta $0314@.I.Glda #.m.play@.I.Gsta $0315@.IBHlda .@EJLHsta mhi.1@QJVHlda .+1@]J Hsta mhi@*J*Hlda #$00@5J4Hsta n.@aJ>Hjsr .up@iJhHcli@qJrHrts@.J£Hmusoff sei@MJFHlda #$31@.JPHsta $0314@.JZHlda #$ea@.J.Hsta $0315@.J.Hcli@.J.Hrts@.J.Hm.play jsr stack@.J.Hlda n.@.J.Hbeq .@.J.Hjmp $ea31@.J.H. ldy #$00@.J.Hlda (mhi),y@HK.H. #$01@TK.Hbeq .ma@!K.Hlda #$07@-K.H.ma tax@=KFIlda (mhi),y@gKPIlsr a@rKZIsta n.@.K$Icmp #$06@KK.Ibne mr.@ZK8Ilda vdat,x@.KbIsta $d404,x@.KlItay@.KvIiny@.K.Itya@.KJIsta $d404,x@.KTIjsr destack@.K.Ijmp $ea31@.K.Istack pha@.K.Itxa@.K.Ipha@.K.Itya@.K.Ipha@FL.Irts@.L.Idestack jsr effects@.L.Iunstack pla@6L.Itay@>L.Ipla@fL.Itax@nL.Ipla@vL@Jrts@BLJJmr. iny@RLTJlda (mhi),y@.L.Jsta $d400,x@.L(Jiny@.L2Jlda (mhi),y@.L<Jsta $d401,x@.LfJjsr destack@.LpJjmp $ea31@.LzJ.up ldx vdat@.LDJinx@.LNJstx $d404@.LXJldx vdat.7@FM.Jinx@TM.Jstx $d40b@£M.Jrts@-M.Jeffects. sei@>M.Jlda #.eff.ly@lM.Jsta $0314@]M.Jlda #.eff.ly@KM.Jsta $0315@SM.Jcli@.M.Jrts@.M.Jeff.ly jsr stack@.M.Jjsr destack@.M.Jjmp $ea31@.M.K; main game loop@.M.Kmain lda #$00@.M.Ksta dead@.M.Ksta efdat@.M.Kjsr mus.@ON.Kjsr fullsdisp@[N.Klda $a2@#N.Kclc@1N.Kadc clock@?NHLsta clock@sNRLmainlop jsr you@CN£Ljsr m.sters@QN&Ljsr panel@.N0Llda dead@.N:Lbne gameover@.NdLlda clock@.NnLtrlop cmp $a2@.NxLbcc trlop@.NBLclc@.NLLadc #$03@.NVLsta clock@.N.Ljmp mainlop@FO.Lgameover jsr gam.@]O.O; graphic routines@6O.Odispblock jsr initdb@bO.Oldx yps@vO.Oyplopd cpx #$00@EO.Obeq ypdcnt@MO.Odex@ZO.Olda mems@.O.Oclc@.O.Oadc #$50@.O.Osta mems@.O.Obcc yplopd@.ODPinc mems.1@.ONPjmp yplopd@.OXPypdcnt lda xps@.O"Pasl a@.O,Pclc@.O6Padc mems@HP@Psta mems@VPjPbcc xpcnt@%PtPinc mems.1@6P.Pxpcnt lda yp@@PHPlsr a@jPRPlsr a@rP.Pclc@.P.Padc #$0c@NP.Psta memr.1@YP.Plda yp@.P.P. #$03@.P.Plsr a@.P.Pr. a@.P.Pr. a@.P.Psta memr@.P.Plda xp@.P.Plsr a@.P.Plsr a@.P.Pclc@.P.Padc memr@.PHQsta memr@.PRQlda (memr),y@JQ£Qsta bt@UQ&Qlda xp@ Q0Q. #$03@(Q:Qtax@3QdQlda yp@=QnQlsr a@eQxQclc@rQBQadc #$34@AQLQsta memr.1@LQVQlda yp@WQ.Q. #$01@.Q.Qlsr a@.Q.Qr. a@.Q.Qsta memr@.Q.Qlda xp@.Q.Qlsr a@.Q.Qclc@.Q.Qadc memr@.Q.Qsta memr@.Q.Qlda (memr),y@.Q.Qsta btfb@.Q.Qtxa@.Q.Q. #$01@NRBRbeq fbnrot@XRLRlsr a@"RVRlsr a@,R Rlsr a@6R*Rlsr a@hR4Rfbnrot . #$10@uR>Rsta btfb@.RhRlda bt@RRrRdtbl cpx #$00@.R£Rbeq dtbl.@.RFRlsr a@.RPRlsr a@.RZRdex@.R.Rjmp dtbl@.R.Rdtbl. . #$03@.R.Rasl a@.R.Rasl a@.R.Rasl a@.R.Rasl a@.R.Rclc@.R.Radc btfb@BS.Rsta bt@LS.Rasl a@VS.Rasl a@.S.Rclc@+S.Radc #$40@<SFSsta (mems),y@iSPSadc #$01@qSZSiny@BS$Ssta (mems),y@OS.Sadc #$01@WS8Siny@.SbSsta (mems),y@.SlSadc #$27@.SvSldy #$20@.S.Ssta (mems),y@.SJSadc #$01@.STSiny@.S.Ssta (mems),y@.S.Slda mems.1@.S.Sclc@.S.Sadc #$54@LT.Ssta mems.1@YT.Sldy #$00@$T.Slda bt@5T.Ssta (mems),y@=T.Siny@nT.Ssta (mems),y@[T.Sldy #$20@LT.Ssta (mems),y@TT.Siny@.T@Tsta (mems),y@.TJTiny@.TTTsta (mems),y@.T.Tjsr unstack@.T(Trts@.T2Tinitdb lda #$84@.T<Tsta mems.1@.TfTldy #$00@.TpTsty mems@@UzTlda xptl@HUDTclc@TUNTadc xps@.UXTsta xp@,U.Tlda yptl@4U.Tclc@@U.Tadc yps@kU.Tsta yp@sU.Trts@KUPW; scroller routines@.UUWdownmem ldy mtab@.UZWlda ($fd),y@.U.Wldy #$00@.U.Wsta ($fd),y@.U.Winc $fd@.U.Wlda $fd@.U.Wbne downmem@.U.Winc $fe@.U.Wlda $fe@.U.Wcmp stpage@LV.Wbne downmem@TV.Wrts@&V.Wupmem lda $fe@.V.Wpha@=V.Wlda stpage@iVFXsta $fe@vVPXldy #$00@FVZXlda ($fd),y@SV$Xldy mtab@.V.Xsta ($fd),y@.V8Xdec $fd@.VbXlda $fd@.VlXcmp #$ff@.VvXbne upmem@.V.Xdec $fe@.VJXpla@.VTXpha@.V.Xcmp $fe@.V.Xbne upmem@.V.Xpla@.V.Xrts@RW.Xlscroll jsr stack@ W.Xldx xsste@(W.Xdex@0W.Xtxa@;W.X. #$07@iW.Xsta xsste@qW.Xclc@.W.Xadc #$10@LW.Xsta $d016@YW@Ycmp #$17@.WJYbeq lscrdisp@.WTYsldc jsr unstack@.W.Yrts@.W(Ylscrdisp lda #$84@.W2Ysta $fe@.W<Ylda #$08@.WfYsta stpage@.WpYlda #$00@.WzYsta $fd@KXDYlda #$28@XXNYsta mtab@(XXYjsr downmem@5X.Ylda #$d8@aX.Ysta $fe@nX.Ylda #$00@zX.Ysta $fd@JX.Yjsr downmem@WX.Ylda #$00@.X.Ytax@.X.Ylsscrdisp sta xps@.X.Ystx yps@.X.Yjsr dispblock@.X.Yinx@.X.Ycpx #$0a@.X.Ybne lsscrdisp@.XDZjmp sldc@.XP'; temp routines@KYQ'effects nop@]YR'fullsdisp nop@)YS'you nop@9YT'm.sters nop@gYU'panel nop@tYV'gam. nop@@@
00000000  19 08 0a 00 3b 20 3f 3f  3f 3f 20 4d 41 49 4e 20  |....; ???? MAIN |
00000010  50 52 4f 47 52 41 4d 00  2f 08 14 00 3b 20 42 59  |PROGRAM./...; BY|
00000020  20 44 4f 4d 49 4e 49 43  20 46 4f 52 44 00 44 08  | DOMINIC FORD.D.|
00000030  1e 00 3b 20 44 45 43 45  4d 42 45 52 20 27 39 34  |..; DECEMBER '94|
00000040  20 2d 00 50 08 28 00 ac  b2 24 43 30 30 30 00 60  | -.P.(...$C000.`|
00000050  08 e8 03 3b 20 56 41 52  49 41 42 4c 45 53 00 6f  |...; VARIABLES.o|
00000060  08 ed 03 44 45 41 44 b2  24 43 46 34 30 00 7f 08  |...DEAD.$CF40...|
00000070  f2 03 43 4c 4f 43 4b b2  24 43 46 34 31 00 8f 08  |..CLOCK.$CF41...|
00000080  fc 03 45 46 44 41 54 b2  24 43 46 34 32 00 9c 08  |..EFDAT.$CF42...|
00000090  06 04 4e 92 b2 24 43 46  34 33 00 a8 08 10 04 4d  |..N..$CF43.....M|
000000a0  48 49 b2 24 33 46 00 b7  08 1a 04 56 44 41 54 b2  |HI.$3F.....VDAT.|
000000b0  24 42 43 30 31 00 c3 08  24 04 83 3d 24 43 46 34  |$BC01...$..=$CF4|
000000c0  35 00 d0 08 2e 04 58 50  b2 24 43 46 34 34 00 dd  |5.....XP.$CF44..|
000000d0  08 38 04 59 50 b2 24 43  46 34 37 00 ea 08 42 04  |.8.YP.$CF47...B.|
000000e0  4d 45 4d 53 b2 24 34 31  00 f7 08 4c 04 4d 45 4d  |MEMS.$41...L.MEM|
000000f0  52 b2 24 32 32 00 04 09  56 04 42 54 b2 24 43 46  |R.$22...V.BT.$CF|
00000100  34 38 00 12 09 60 04 58  50 53 b2 24 43 46 34 39  |48...`.XPS.$CF49|
00000110  00 20 09 6a 04 59 50 53  b2 24 43 46 34 41 00 2f  |. .j.YPS.$CF4A./|
00000120  09 74 04 42 54 46 42 b2  24 43 46 34 42 00 3e 09  |.t.BTFB.$CF4B.>.|
00000130  7e 04 58 50 54 4c b2 24  43 46 34 43 00 4d 09 88  |~.XPTL.$CF4C.M..|
00000140  04 59 50 54 4c b2 24 43  46 34 44 00 5d 09 92 04  |.YPTL.$CF4D.]...|
00000150  58 53 53 54 45 b2 24 43  46 34 45 00 6d 09 9c 04  |XSSTE.$CF4E.m...|
00000160  59 53 53 54 45 b2 24 43  46 34 46 00 7c 09 a6 04  |YSSTE.$CF4F.|...|
00000170  4d 54 41 42 b2 24 43 46  35 30 00 8d 09 b0 04 53  |MTAB.$CF50.....S|
00000180  54 50 41 47 45 b2 24 43  46 35 31 00 a2 09 d0 07  |TPAGE.$CF51.....|
00000190  3b 20 4d 55 53 49 43 20  52 4f 55 54 49 4e 45 53  |; MUSIC ROUTINES|
000001a0  00 af 09 d5 07 4d 55 53  91 20 53 45 49 00 c0 09  |.....MUS. SEI...|
000001b0  da 07 4c 44 41 20 23 b3  4d 83 50 4c 41 59 00 ce  |..LDA #.M.PLAY..|
000001c0  09 e4 07 53 54 41 20 24  30 33 31 34 00 df 09 ee  |...STA $0314....|
000001d0  07 4c 44 41 20 23 b1 4d  83 50 4c 41 59 00 ed 09  |.LDA #.M.PLAY...|
000001e0  f8 07 53 54 41 20 24 30  33 31 35 00 f7 09 02 08  |..STA $0315.....|
000001f0  4c 44 41 20 83 00 05 0a  0c 08 53 54 41 20 4d 48  |LDA ......STA MH|
00000200  49 aa 31 00 11 0a 16 08  4c 44 41 20 83 2b 31 00  |I.1.....LDA .+1.|
00000210  1d 0a 20 08 53 54 41 20  4d 48 49 00 2a 0a 2a 08  |.. .STA MHI.*.*.|
00000220  4c 44 41 20 23 24 30 30  00 35 0a 34 08 53 54 41  |LDA #$00.5.4.STA|
00000230  20 4e 92 00 41 0a 3e 08  4a 53 52 20 e8 55 50 00  | N..A.>.JSR .UP.|
00000240  49 0a 48 08 43 4c 49 00  51 0a 52 08 52 54 53 00  |I.H.CLI.Q.R.RTS.|
00000250  60 0a 5c 08 4d 55 53 4f  46 46 20 53 45 49 00 6d  |`.\.MUSOFF SEI.m|
00000260  0a 66 08 4c 44 41 20 23  24 33 31 00 7b 0a 70 08  |.f.LDA #$31.{.p.|
00000270  53 54 41 20 24 30 33 31  34 00 88 0a 7a 08 4c 44  |STA $0314...z.LD|
00000280  41 20 23 24 45 41 00 96  0a 84 08 53 54 41 20 24  |A #$EA.....STA $|
00000290  30 33 31 35 00 9e 0a 8e  08 43 4c 49 00 a6 0a 98  |0315.....CLI....|
000002a0  08 52 54 53 00 bb 0a a2  08 4d 83 50 4c 41 59 20  |.RTS.....M.PLAY |
000002b0  4a 53 52 20 53 54 41 43  4b 00 c6 0a ac 08 4c 44  |JSR STACK.....LD|
000002c0  41 20 4e 92 00 d0 0a b6  08 42 45 51 20 87 00 de  |A N......BEQ ...|
000002d0  0a c0 08 4a 4d 50 20 24  45 41 33 31 00 ed 0a ca  |...JMP $EA31....|
000002e0  08 87 20 4c 44 59 20 23  24 30 30 00 fd 0a d4 08  |.. LDY #$00.....|
000002f0  4c 44 41 20 28 4d 48 49  29 2c 59 00 08 0b de 08  |LDA (MHI),Y.....|
00000300  af 20 23 24 30 31 00 14  0b e8 08 42 45 51 20 9a  |. #$01.....BEQ .|
00000310  4d 41 00 21 0b f2 08 4c  44 41 20 23 24 30 37 00  |MA.!...LDA #$07.|
00000320  2d 0b fc 08 9a 4d 41 20  54 41 58 00 3d 0b 06 09  |-....MA TAX.=...|
00000330  4c 44 41 20 28 4d 48 49  29 2c 59 00 47 0b 10 09  |LDA (MHI),Y.G...|
00000340  4c 53 52 20 41 00 52 0b  1a 09 53 54 41 20 4e 92  |LSR A.R...STA N.|
00000350  00 5f 0b 24 09 43 4d 50  20 23 24 30 36 00 6b 0b  |._.$.CMP #$06.k.|
00000360  2e 09 42 4e 45 20 4d 52  9a 00 7a 0b 38 09 4c 44  |..BNE MR..z.8.LD|
00000370  41 20 56 44 41 54 2c 58  00 8a 0b 42 09 53 54 41  |A VDAT,X...B.STA|
00000380  20 24 44 34 30 34 2c 58  00 92 0b 4c 09 54 41 59  | $D404,X...L.TAY|
00000390  00 9a 0b 56 09 49 4e 59  00 a2 0b 60 09 54 59 41  |...V.INY...`.TYA|
000003a0  00 b2 0b 6a 09 53 54 41  20 24 44 34 30 34 2c 58  |...j.STA $D404,X|
000003b0  00 c2 0b 74 09 4a 53 52  20 44 45 53 54 41 43 4b  |...t.JSR DESTACK|
000003c0  00 d0 0b 7e 09 4a 4d 50  20 24 45 41 33 31 00 de  |...~.JMP $EA31..|
000003d0  0b 88 09 53 54 41 43 4b  20 50 48 41 00 e6 0b 92  |...STACK PHA....|
000003e0  09 54 58 41 00 ee 0b 9c  09 50 48 41 00 f6 0b a6  |.TXA.....PHA....|
000003f0  09 54 59 41 00 fe 0b b0  09 50 48 41 00 06 0c ba  |.TYA.....PHA....|
00000400  09 52 54 53 00 1e 0c c4  09 44 45 53 54 41 43 4b  |.RTS.....DESTACK|
00000410  20 4a 53 52 20 45 46 46  45 43 54 53 00 2e 0c ce  | JSR EFFECTS....|
00000420  09 55 4e 53 54 41 43 4b  20 50 4c 41 00 36 0c d8  |.UNSTACK PLA.6..|
00000430  09 54 41 59 00 3e 0c e2  09 50 4c 41 00 46 0c ec  |.TAY.>...PLA.F..|
00000440  09 54 41 58 00 4e 0c f6  09 50 4c 41 00 56 0c 00  |.TAX.N...PLA.V..|
00000450  0a 52 54 53 00 62 0c 0a  0a 4d 52 9a 20 49 4e 59  |.RTS.b...MR. INY|
00000460  00 72 0c 14 0a 4c 44 41  20 28 4d 48 49 29 2c 59  |.r...LDA (MHI),Y|
00000470  00 82 0c 1e 0a 53 54 41  20 24 44 34 30 30 2c 58  |.....STA $D400,X|
00000480  00 8a 0c 28 0a 49 4e 59  00 9a 0c 32 0a 4c 44 41  |...(.INY...2.LDA|
00000490  20 28 4d 48 49 29 2c 59  00 aa 0c 3c 0a 53 54 41  | (MHI),Y...<.STA|
000004a0  20 24 44 34 30 31 2c 58  00 ba 0c 46 0a 4a 53 52  | $D401,X...F.JSR|
000004b0  20 44 45 53 54 41 43 4b  00 c8 0c 50 0a 4a 4d 50  | DESTACK...P.JMP|
000004c0  20 24 45 41 33 31 00 d9  0c 5a 0a e8 55 50 20 4c  | $EA31...Z..UP L|
000004d0  44 58 20 56 44 41 54 00  e1 0c 64 0a 49 4e 58 00  |DX VDAT...d.INX.|
000004e0  ef 0c 6e 0a 53 54 58 20  24 44 34 30 34 00 fe 0c  |..n.STX $D404...|
000004f0  78 0a 4c 44 58 20 56 44  41 54 aa 37 00 06 0d 82  |x.LDX VDAT.7....|
00000500  0a 49 4e 58 00 14 0d 8c  0a 53 54 58 20 24 44 34  |.INX.....STX $D4|
00000510  30 42 00 1c 0d 96 0a 52  54 53 00 2d 0d a0 0a 45  |0B.....RTS.-...E|
00000520  46 46 45 43 54 53 91 20  53 45 49 00 3e 0d aa 0a  |FFECTS. SEI.>...|
00000530  4c 44 41 20 23 b3 45 46  46 91 4c 59 00 4c 0d b4  |LDA #.EFF.LY.L..|
00000540  0a 53 54 41 20 24 30 33  31 34 00 5d 0d be 0a 4c  |.STA $0314.]...L|
00000550  44 41 20 23 b1 45 46 46  91 4c 59 00 6b 0d c8 0a  |DA #.EFF.LY.k...|
00000560  53 54 41 20 24 30 33 31  35 00 73 0d d2 0a 43 4c  |STA $0315.s...CL|
00000570  49 00 7b 0d dc 0a 52 54  53 00 90 0d e6 0a 45 46  |I.{...RTS.....EF|
00000580  46 91 4c 59 20 4a 53 52  20 53 54 41 43 4b 00 a0  |F.LY JSR STACK..|
00000590  0d f0 0a 4a 53 52 20 44  45 53 54 41 43 4b 00 ae  |...JSR DESTACK..|
000005a0  0d fa 0a 4a 4d 50 20 24  45 41 33 31 00 c3 0d b8  |...JMP $EA31....|
000005b0  0b 3b 20 4d 41 49 4e 20  47 41 4d 45 20 4c 4f 4f  |.; MAIN GAME LOO|
000005c0  50 00 d5 0d bd 0b 4d 41  49 4e 20 4c 44 41 20 23  |P.....MAIN LDA #|
000005d0  24 30 30 00 e2 0d c2 0b  53 54 41 20 44 45 41 44  |$00.....STA DEAD|
000005e0  00 f0 0d cc 0b 53 54 41  20 45 46 44 41 54 00 fd  |.....STA EFDAT..|
000005f0  0d d6 0b 4a 53 52 20 4d  55 53 91 00 0f 0e e0 0b  |...JSR MUS......|
00000600  4a 53 52 20 46 55 4c 4c  53 44 49 53 50 00 1b 0e  |JSR FULLSDISP...|
00000610  ea 0b 4c 44 41 20 24 41  32 00 23 0e f4 0b 43 4c  |..LDA $A2.#...CL|
00000620  43 00 31 0e fe 0b 41 44  43 20 43 4c 4f 43 4b 00  |C.1...ADC CLOCK.|
00000630  3f 0e 08 0c 53 54 41 20  43 4c 4f 43 4b 00 53 0e  |?...STA CLOCK.S.|
00000640  12 0c 4d 41 49 4e 4c 4f  50 20 4a 53 52 20 59 4f  |..MAINLOP JSR YO|
00000650  55 00 63 0e 1c 0c 4a 53  52 20 4d 91 53 54 45 52  |U.c...JSR M.STER|
00000660  53 00 71 0e 26 0c 4a 53  52 20 50 41 4e 45 4c 00  |S.q.&.JSR PANEL.|
00000670  7e 0e 30 0c 4c 44 41 20  44 45 41 44 00 8f 0e 3a  |~.0.LDA DEAD...:|
00000680  0c 42 4e 45 20 47 41 4d  45 4f 56 45 52 00 9d 0e  |.BNE GAMEOVER...|
00000690  44 0c 4c 44 41 20 43 4c  4f 43 4b 00 af 0e 4e 0c  |D.LDA CLOCK...N.|
000006a0  54 52 4c 4f 50 20 43 4d  50 20 24 41 32 00 bd 0e  |TRLOP CMP $A2...|
000006b0  58 0c 42 43 43 20 54 52  4c 4f 50 00 c5 0e 62 0c  |X.BCC TRLOP...b.|
000006c0  43 4c 43 00 d2 0e 6c 0c  41 44 43 20 23 24 30 33  |CLC...l.ADC #$03|
000006d0  00 e0 0e 76 0c 53 54 41  20 43 4c 4f 43 4b 00 f0  |...v.STA CLOCK..|
000006e0  0e 80 0c 4a 4d 50 20 4d  41 49 4e 4c 4f 50 00 06  |...JMP MAINLOP..|
000006f0  0f 8a 0c 47 41 4d 45 4f  56 45 52 20 4a 53 52 20  |...GAMEOVER JSR |
00000700  47 41 4d 80 00 1d 0f a0  0f 3b 20 47 52 41 50 48  |GAM......; GRAPH|
00000710  49 43 20 52 4f 55 54 49  4e 45 53 00 36 0f a5 0f  |IC ROUTINES.6...|
00000720  44 49 53 50 42 4c 4f 43  4b 20 4a 53 52 20 49 4e  |DISPBLOCK JSR IN|
00000730  49 54 44 42 00 42 0f aa  0f 4c 44 58 20 59 50 53  |ITDB.B...LDX YPS|
00000740  00 56 0f b4 0f 59 50 4c  4f 50 44 20 43 50 58 20  |.V...YPLOPD CPX |
00000750  23 24 30 30 00 65 0f be  0f 42 45 51 20 59 50 44  |#$00.e...BEQ YPD|
00000760  43 4e 54 00 6d 0f c8 0f  44 45 58 00 7a 0f d2 0f  |CNT.m...DEX.z...|
00000770  4c 44 41 20 4d 45 4d 53  00 82 0f dc 0f 43 4c 43  |LDA MEMS.....CLC|
00000780  00 8f 0f e6 0f 41 44 43  20 23 24 35 30 00 9c 0f  |.....ADC #$50...|
00000790  f2 0f 53 54 41 20 4d 45  4d 53 00 ab 0f fa 0f 42  |..STA MEMS.....B|
000007a0  43 43 20 59 50 4c 4f 50  44 00 ba 0f 04 10 49 4e  |CC YPLOPD.....IN|
000007b0  43 20 4d 45 4d 53 aa 31  00 c9 0f 0e 10 4a 4d 50  |C MEMS.1.....JMP|
000007c0  20 59 50 4c 4f 50 44 00  dc 0f 18 10 59 50 44 43  | YPLOPD.....YPDC|
000007d0  4e 54 20 4c 44 41 20 58  50 53 00 e6 0f 22 10 41  |NT LDA XPS...".A|
000007e0  53 4c 20 41 00 ee 0f 2c  10 43 4c 43 00 fb 0f 36  |SL A...,.CLC...6|
000007f0  10 41 44 43 20 4d 45 4d  53 00 08 10 40 10 53 54  |.ADC MEMS...@.ST|
00000800  41 20 4d 45 4d 53 00 16  10 4a 10 42 43 43 20 58  |A MEMS...J.BCC X|
00000810  50 43 4e 54 00 25 10 54  10 49 4e 43 20 4d 45 4d  |PCNT.%.T.INC MEM|
00000820  53 aa 31 00 36 10 5e 10  58 50 43 4e 54 20 4c 44  |S.1.6.^.XPCNT LD|
00000830  41 20 59 50 00 40 10 68  10 4c 53 52 20 41 00 4a  |A YP.@.h.LSR A.J|
00000840  10 72 10 4c 53 52 20 41  00 52 10 7c 10 43 4c 43  |.r.LSR A.R.|.CLC|
00000850  00 5f 10 86 10 41 44 43  20 23 24 30 43 00 6e 10  |._...ADC #$0C.n.|
00000860  90 10 53 54 41 20 4d 45  4d 52 aa 31 00 79 10 9a  |..STA MEMR.1.y..|
00000870  10 4c 44 41 20 59 50 00  84 10 a4 10 af 20 23 24  |.LDA YP...... #$|
00000880  30 33 00 8e 10 ae 10 4c  53 52 20 41 00 97 10 b8  |03.....LSR A....|
00000890  10 52 b0 20 41 00 a0 10  c2 10 52 b0 20 41 00 ad  |.R. A.....R. A..|
000008a0  10 cc 10 53 54 41 20 4d  45 4d 52 00 b8 10 d6 10  |...STA MEMR.....|
000008b0  4c 44 41 20 58 50 00 c2  10 e0 10 4c 53 52 20 41  |LDA XP.....LSR A|
000008c0  00 cc 10 ea 10 4c 53 52  20 41 00 d4 10 f4 10 43  |.....LSR A.....C|
000008d0  4c 43 00 e1 10 fe 10 41  44 43 20 4d 45 4d 52 00  |LC.....ADC MEMR.|
000008e0  ee 10 08 11 53 54 41 20  4d 45 4d 52 00 ff 10 12  |....STA MEMR....|
000008f0  11 4c 44 41 20 28 4d 45  4d 52 29 2c 59 00 0a 11  |.LDA (MEMR),Y...|
00000900  1c 11 53 54 41 20 42 54  00 15 11 26 11 4c 44 41  |..STA BT...&.LDA|
00000910  20 58 50 00 20 11 30 11  af 20 23 24 30 33 00 28  | XP. .0.. #$03.(|
00000920  11 3a 11 54 41 58 00 33  11 44 11 4c 44 41 20 59  |.:.TAX.3.D.LDA Y|
00000930  50 00 3d 11 4e 11 4c 53  52 20 41 00 45 11 58 11  |P.=.N.LSR A.E.X.|
00000940  43 4c 43 00 52 11 62 11  41 44 43 20 23 24 33 34  |CLC.R.b.ADC #$34|
00000950  00 61 11 6c 11 53 54 41  20 4d 45 4d 52 aa 31 00  |.a.l.STA MEMR.1.|
00000960  6c 11 76 11 4c 44 41 20  59 50 00 77 11 80 11 af  |l.v.LDA YP.w....|
00000970  20 23 24 30 31 00 81 11  8a 11 4c 53 52 20 41 00  | #$01.....LSR A.|
00000980  8a 11 94 11 52 b0 20 41  00 97 11 9e 11 53 54 41  |....R. A.....STA|
00000990  20 4d 45 4d 52 00 a2 11  a8 11 4c 44 41 20 58 50  | MEMR.....LDA XP|
000009a0  00 ac 11 b2 11 4c 53 52  20 41 00 b4 11 bc 11 43  |.....LSR A.....C|
000009b0  4c 43 00 c1 11 c6 11 41  44 43 20 4d 45 4d 52 00  |LC.....ADC MEMR.|
000009c0  ce 11 d0 11 53 54 41 20  4d 45 4d 52 00 df 11 da  |....STA MEMR....|
000009d0  11 4c 44 41 20 28 4d 45  4d 52 29 2c 59 00 ec 11  |.LDA (MEMR),Y...|
000009e0  e4 11 53 54 41 20 42 54  46 42 00 f4 11 ee 11 54  |..STA BTFB.....T|
000009f0  58 41 00 ff 11 f8 11 af  20 23 24 30 31 00 0e 12  |XA...... #$01...|
00000a00  02 12 42 45 51 20 46 42  4e 52 4f 54 00 18 12 0c  |..BEQ FBNROT....|
00000a10  12 4c 53 52 20 41 00 22  12 16 12 4c 53 52 20 41  |.LSR A."...LSR A|
00000a20  00 2c 12 20 12 4c 53 52  20 41 00 36 12 2a 12 4c  |.,. .LSR A.6.*.L|
00000a30  53 52 20 41 00 48 12 34  12 46 42 4e 52 4f 54 20  |SR A.H.4.FBNROT |
00000a40  af 20 23 24 31 30 00 55  12 3e 12 53 54 41 20 42  |. #$10.U.>.STA B|
00000a50  54 46 42 00 60 12 48 12  4c 44 41 20 42 54 00 72  |TFB.`.H.LDA BT.r|
00000a60  12 52 12 44 54 42 4c 20  43 50 58 20 23 24 30 30  |.R.DTBL CPX #$00|
00000a70  00 80 12 5c 12 42 45 51  20 44 54 42 4c 9a 00 8a  |...\.BEQ DTBL...|
00000a80  12 66 12 4c 53 52 20 41  00 94 12 70 12 4c 53 52  |.f.LSR A...p.LSR|
00000a90  20 41 00 9c 12 7a 12 44  45 58 00 a9 12 84 12 4a  | A...z.DEX.....J|
00000aa0  4d 50 20 44 54 42 4c 00  ba 12 8e 12 44 54 42 4c  |MP DTBL.....DTBL|
00000ab0  9a 20 af 20 23 24 30 33  00 c4 12 98 12 41 53 4c  |. . #$03.....ASL|
00000ac0  20 41 00 ce 12 a2 12 41  53 4c 20 41 00 d8 12 ac  | A.....ASL A....|
00000ad0  12 41 53 4c 20 41 00 e2  12 b6 12 41 53 4c 20 41  |.ASL A.....ASL A|
00000ae0  00 ea 12 c0 12 43 4c 43  00 f7 12 ca 12 41 44 43  |.....CLC.....ADC|
00000af0  20 42 54 46 42 00 02 13  d4 12 53 54 41 20 42 54  | BTFB.....STA BT|
00000b00  00 0c 13 de 12 41 53 4c  20 41 00 16 13 e8 12 41  |.....ASL A.....A|
00000b10  53 4c 20 41 00 1e 13 f2  12 43 4c 43 00 2b 13 fc  |SL A.....CLC.+..|
00000b20  12 41 44 43 20 23 24 34  30 00 3c 13 06 13 53 54  |.ADC #$40.<...ST|
00000b30  41 20 28 4d 45 4d 53 29  2c 59 00 49 13 10 13 41  |A (MEMS),Y.I...A|
00000b40  44 43 20 23 24 30 31 00  51 13 1a 13 49 4e 59 00  |DC #$01.Q...INY.|
00000b50  62 13 24 13 53 54 41 20  28 4d 45 4d 53 29 2c 59  |b.$.STA (MEMS),Y|
00000b60  00 6f 13 2e 13 41 44 43  20 23 24 30 31 00 77 13  |.o...ADC #$01.w.|
00000b70  38 13 49 4e 59 00 88 13  42 13 53 54 41 20 28 4d  |8.INY...B.STA (M|
00000b80  45 4d 53 29 2c 59 00 95  13 4c 13 41 44 43 20 23  |EMS),Y...L.ADC #|
00000b90  24 32 37 00 a2 13 56 13  4c 44 59 20 23 24 32 30  |$27...V.LDY #$20|
00000ba0  00 b3 13 60 13 53 54 41  20 28 4d 45 4d 53 29 2c  |...`.STA (MEMS),|
00000bb0  59 00 c0 13 6a 13 41 44  43 20 23 24 30 31 00 c8  |Y...j.ADC #$01..|
00000bc0  13 74 13 49 4e 59 00 d9  13 7e 13 53 54 41 20 28  |.t.INY...~.STA (|
00000bd0  4d 45 4d 53 29 2c 59 00  e8 13 88 13 4c 44 41 20  |MEMS),Y.....LDA |
00000be0  4d 45 4d 53 aa 31 00 f0  13 92 13 43 4c 43 00 fd  |MEMS.1.....CLC..|
00000bf0  13 9c 13 41 44 43 20 23  24 35 34 00 0c 14 a6 13  |...ADC #$54.....|
00000c00  53 54 41 20 4d 45 4d 53  aa 31 00 19 14 b0 13 4c  |STA MEMS.1.....L|
00000c10  44 59 20 23 24 30 30 00  24 14 ba 13 4c 44 41 20  |DY #$00.$...LDA |
00000c20  42 54 00 35 14 c4 13 53  54 41 20 28 4d 45 4d 53  |BT.5...STA (MEMS|
00000c30  29 2c 59 00 3d 14 ce 13  49 4e 59 00 4e 14 d8 13  |),Y.=...INY.N...|
00000c40  53 54 41 20 28 4d 45 4d  53 29 2c 59 00 5b 14 e2  |STA (MEMS),Y.[..|
00000c50  13 4c 44 59 20 23 24 32  30 00 6c 14 ec 13 53 54  |.LDY #$20.l...ST|
00000c60  41 20 28 4d 45 4d 53 29  2c 59 00 74 14 f6 13 49  |A (MEMS),Y.t...I|
00000c70  4e 59 00 85 14 00 14 53  54 41 20 28 4d 45 4d 53  |NY.....STA (MEMS|
00000c80  29 2c 59 00 8d 14 0a 14  49 4e 59 00 9e 14 14 14  |),Y.....INY.....|
00000c90  53 54 41 20 28 4d 45 4d  53 29 2c 59 00 ae 14 1e  |STA (MEMS),Y....|
00000ca0  14 4a 53 52 20 55 4e 53  54 41 43 4b 00 b6 14 28  |.JSR UNSTACK...(|
00000cb0  14 52 54 53 00 ca 14 32  14 49 4e 49 54 44 42 20  |.RTS...2.INITDB |
00000cc0  4c 44 41 20 23 24 38 34  00 d9 14 3c 14 53 54 41  |LDA #$84...<.STA|
00000cd0  20 4d 45 4d 53 aa 31 00  e6 14 46 14 4c 44 59 20  | MEMS.1...F.LDY |
00000ce0  23 24 30 30 00 f3 14 50  14 53 54 59 20 4d 45 4d  |#$00...P.STY MEM|
00000cf0  53 00 00 15 5a 14 4c 44  41 20 58 50 54 4c 00 08  |S...Z.LDA XPTL..|
00000d00  15 64 14 43 4c 43 00 14  15 6e 14 41 44 43 20 58  |.d.CLC...n.ADC X|
00000d10  50 53 00 1f 15 78 14 53  54 41 20 58 50 00 2c 15  |PS...x.STA XP.,.|
00000d20  82 14 4c 44 41 20 59 50  54 4c 00 34 15 8c 14 43  |..LDA YPTL.4...C|
00000d30  4c 43 00 40 15 96 14 41  44 43 20 59 50 53 00 4b  |LC.@...ADC YPS.K|
00000d40  15 a0 14 53 54 41 20 59  50 00 53 15 aa 14 52 54  |...STA YP.S...RT|
00000d50  53 00 6b 15 70 17 3b 20  53 43 52 4f 4c 4c 45 52  |S.k.p.; SCROLLER|
00000d60  20 52 4f 55 54 49 4e 45  53 00 80 15 75 17 44 4f  | ROUTINES...u.DO|
00000d70  57 4e 4d 45 4d 20 4c 44  59 20 4d 54 41 42 00 90  |WNMEM LDY MTAB..|
00000d80  15 7a 17 4c 44 41 20 28  24 46 44 29 2c 59 00 9d  |.z.LDA ($FD),Y..|
00000d90  15 84 17 4c 44 59 20 23  24 30 30 00 ad 15 8e 17  |...LDY #$00.....|
00000da0  53 54 41 20 28 24 46 44  29 2c 59 00 b9 15 98 17  |STA ($FD),Y.....|
00000db0  49 4e 43 20 24 46 44 00  c5 15 a2 17 4c 44 41 20  |INC $FD.....LDA |
00000dc0  24 46 44 00 d5 15 ac 17  42 4e 45 20 44 4f 57 4e  |$FD.....BNE DOWN|
00000dd0  4d 45 4d 00 e1 15 b6 17  49 4e 43 20 24 46 45 00  |MEM.....INC $FE.|
00000de0  ed 15 c0 17 4c 44 41 20  24 46 45 00 fc 15 ca 17  |....LDA $FE.....|
00000df0  43 4d 50 20 53 54 50 41  47 45 00 0c 16 d4 17 42  |CMP STPAGE.....B|
00000e00  4e 45 20 44 4f 57 4e 4d  45 4d 00 14 16 de 17 52  |NE DOWNMEM.....R|
00000e10  54 53 00 26 16 e8 17 55  50 4d 45 4d 20 4c 44 41  |TS.&...UPMEM LDA|
00000e20  20 24 46 45 00 2e 16 f2  17 50 48 41 00 3d 16 fc  | $FE.....PHA.=..|
00000e30  17 4c 44 41 20 53 54 50  41 47 45 00 49 16 06 18  |.LDA STPAGE.I...|
00000e40  53 54 41 20 24 46 45 00  56 16 10 18 4c 44 59 20  |STA $FE.V...LDY |
00000e50  23 24 30 30 00 66 16 1a  18 4c 44 41 20 28 24 46  |#$00.f...LDA ($F|
00000e60  44 29 2c 59 00 73 16 24  18 4c 44 59 20 4d 54 41  |D),Y.s.$.LDY MTA|
00000e70  42 00 83 16 2e 18 53 54  41 20 28 24 46 44 29 2c  |B.....STA ($FD),|
00000e80  59 00 8f 16 38 18 44 45  43 20 24 46 44 00 9b 16  |Y...8.DEC $FD...|
00000e90  42 18 4c 44 41 20 24 46  44 00 a8 16 4c 18 43 4d  |B.LDA $FD...L.CM|
00000ea0  50 20 23 24 46 46 00 b6  16 56 18 42 4e 45 20 55  |P #$FF...V.BNE U|
00000eb0  50 4d 45 4d 00 c2 16 60  18 44 45 43 20 24 46 45  |PMEM...`.DEC $FE|
00000ec0  00 ca 16 6a 18 50 4c 41  00 d2 16 74 18 50 48 41  |...j.PLA...t.PHA|
00000ed0  00 de 16 7e 18 43 4d 50  20 24 46 45 00 ec 16 88  |...~.CMP $FE....|
00000ee0  18 42 4e 45 20 55 50 4d  45 4d 00 f4 16 92 18 50  |.BNE UPMEM.....P|
00000ef0  4c 41 00 fc 16 9c 18 52  54 53 00 12 17 a6 18 4c  |LA.....RTS.....L|
00000f00  53 43 52 4f 4c 4c 20 4a  53 52 20 53 54 41 43 4b  |SCROLL JSR STACK|
00000f10  00 20 17 b0 18 4c 44 58  20 58 53 53 54 45 00 28  |. ...LDX XSSTE.(|
00000f20  17 ba 18 44 45 58 00 30  17 c4 18 54 58 41 00 3b  |...DEX.0...TXA.;|
00000f30  17 ce 18 af 20 23 24 30  37 00 49 17 d8 18 53 54  |.... #$07.I...ST|
00000f40  41 20 58 53 53 54 45 00  51 17 e2 18 43 4c 43 00  |A XSSTE.Q...CLC.|
00000f50  5e 17 ec 18 41 44 43 20  23 24 31 30 00 6c 17 f6  |^...ADC #$10.l..|
00000f60  18 53 54 41 20 24 44 30  31 36 00 79 17 00 19 43  |.STA $D016.y...C|
00000f70  4d 50 20 23 24 31 37 00  8a 17 0a 19 42 45 51 20  |MP #$17.....BEQ |
00000f80  4c 53 43 52 44 49 53 50  00 9f 17 14 19 53 4c 44  |LSCRDISP.....SLD|
00000f90  43 20 4a 53 52 20 55 4e  53 54 41 43 4b 00 a7 17  |C JSR UNSTACK...|
00000fa0  1e 19 52 54 53 00 bd 17  28 19 4c 53 43 52 44 49  |..RTS...(.LSCRDI|
00000fb0  53 50 20 4c 44 41 20 23  24 38 34 00 c9 17 32 19  |SP LDA #$84...2.|
00000fc0  53 54 41 20 24 46 45 00  d6 17 3c 19 4c 44 41 20  |STA $FE...<.LDA |
00000fd0  23 24 30 38 00 e5 17 46  19 53 54 41 20 53 54 50  |#$08...F.STA STP|
00000fe0  41 47 45 00 f2 17 50 19  4c 44 41 20 23 24 30 30  |AGE...P.LDA #$00|
00000ff0  00 fe 17 5a 19 53 54 41  20 24 46 44 00 0b 18 64  |...Z.STA $FD...d|
00001000  19 4c 44 41 20 23 24 32  38 00 18 18 6e 19 53 54  |.LDA #$28...n.ST|
00001010  41 20 4d 54 41 42 00 28  18 78 19 4a 53 52 20 44  |A MTAB.(.x.JSR D|
00001020  4f 57 4e 4d 45 4d 00 35  18 82 19 4c 44 41 20 23  |OWNMEM.5...LDA #|
00001030  24 44 38 00 41 18 8c 19  53 54 41 20 24 46 45 00  |$D8.A...STA $FE.|
00001040  4e 18 96 19 4c 44 41 20  23 24 30 30 00 5a 18 a0  |N...LDA #$00.Z..|
00001050  19 53 54 41 20 24 46 44  00 6a 18 aa 19 4a 53 52  |.STA $FD.j...JSR|
00001060  20 44 4f 57 4e 4d 45 4d  00 77 18 b4 19 4c 44 41  | DOWNMEM.w...LDA|
00001070  20 23 24 30 30 00 7f 18  be 19 54 41 58 00 95 18  | #$00.....TAX...|
00001080  c8 19 4c 53 53 43 52 44  49 53 50 20 53 54 41 20  |..LSSCRDISP STA |
00001090  58 50 53 00 a1 18 d2 19  53 54 58 20 59 50 53 00  |XPS.....STX YPS.|
000010a0  b3 18 dc 19 4a 53 52 20  44 49 53 50 42 4c 4f 43  |....JSR DISPBLOC|
000010b0  4b 00 bb 18 e6 19 49 4e  58 00 c8 18 f0 19 43 50  |K.....INX.....CP|
000010c0  58 20 23 24 30 41 00 da  18 fa 19 42 4e 45 20 4c  |X #$0A.....BNE L|
000010d0  53 53 43 52 44 49 53 50  00 e7 18 04 1a 4a 4d 50  |SSCRDISP.....JMP|
000010e0  20 53 4c 44 43 00 fb 18  10 27 3b 20 54 45 4d 50  | SLDC....'; TEMP|
000010f0  20 52 4f 55 54 49 4e 45  53 00 0b 19 11 27 45 46  | ROUTINES....'EF|
00001100  46 45 43 54 53 20 4e 4f  50 00 1d 19 12 27 46 55  |FECTS NOP....'FU|
00001110  4c 4c 53 44 49 53 50 20  4e 4f 50 00 29 19 13 27  |LLSDISP NOP.)..'|
00001120  59 4f 55 20 4e 4f 50 00  39 19 14 27 4d 91 53 54  |YOU NOP.9..'M.ST|
00001130  45 52 53 20 4e 4f 50 00  47 19 15 27 50 41 4e 45  |ERS NOP.G..'PANE|
00001140  4c 20 4e 4f 50 00 54 19  16 27 47 41 4d 80 20 4e  |L NOP.T..'GAM. N|
00001150  4f 50 00 00 00                                    |OP...|
00001155