Home » Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_27.ADF » P/AUTOsrc
P/AUTOsrc
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 » Acorn ADFS disks » Electron_User_Group » EUG_27.ADF |
| Filename: | P/AUTOsrc |
| Read OK: | ✔ |
| File size: | 2AF5 bytes |
| Load address: | FFFF0E00 |
| Exec address: | FFFF802B |
Duplicates
There is 1 duplicate copy of this file in the archive:
- AEW website » eug » eug_5_25_discs_Eug-27_D-EUG27.dsd » U.AUTOSrc
- Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_27.ADF » P/AUTOsrc
File contents
10REM >AutoSource (Po85)
20REM By David Lawrence
30REM For BBC B/B+/M/C/E with SWR
40REM (C) BAU January 1992 & March 1988
45REM Adapted for 10 character ADFS
46REM filenames by Richard Dimond
47REM July 1996
50:
60PROCvars
70PROCass
80PROCcheck
90PRINTCHR$13;"Checked O.K."'"Saving..."
100OSCLI"*SAVE Autorom "+STR$~code+" "+STR$~O%+" 8000 8000"
110END
120:
130DEF PROCvars
140DIM code 2000
150cr$=CHR$13
160z$=CHR$0
170mem=&70:ext=&70
180len=&70:from=&72
190to=&74:ptr=&F2
200err=&100:finfo=&100
210fname=&115:index=&8800
220store=&8900
230oswrch=&FFEE:osnewl=&FFE7
240osasci=&FFE3:osbyte=&FFF4
250osfile=&FFDD:osargs=&FFDA
260osfind=&FFCE:oscli =&FFF7
270ENDPROC
280:
290DEF PROCass
300FOR pass=4 TO 6 STEP 2
310P%=&8000:O%=code
320[OPT pass
330.start
340RTS
350RTS
360RTS
370JMP service
380EQUB 129
390EQUB copy
400EQUB 1
410.title
420EQUS "Autorom 1.0"+z$
430.copy
440EQUS z$+"(C) Acorn User 1988"+z$
450:
460.service
470PHP
480PHA
490CMP #9
500BNE not9
510JMP help
520.not9
530CMP #4
540BNE not4
550JMP starcom
560.not4
570PLA
580PLP
590RTS
600:
610.error
620STX mem
630STY mem+1
640LDY #1
650.xerror
660LDA (mem),Y
670STA err,Y
680INY
690CMP #0
700BNE xerror
710LDA #0
720STA err
730JMP err
740:
750.mess
760STX mem
770STY mem+1
780LDY #&FF
790.pmess
800INY
810LDA (mem),Y
820JSR osasci
830BNE pmess
840RTS
850:
860.loadzero
870LDX #5
880.lzero
890LDA zero,X
900STA ext,X
910DEX
920BPL lzero
930RTS
940.savezero
950LDX #5
960.szero
970LDA ext,X
980STA zero,X
990DEX
1000BPL szero
1010RTS
1020:
1030.hex
1040PHA
1050LSR A
1060LSR A
1070LSR A
1080LSR A
1090JSR dig
1100PLA
1110AND #&F
1120.dig
1130CMP #10
1140BCC isnum
1150CLC
1160ADC #7
1170.isnum
1180ADC #48
1190JMP oswrch
1200:
1210.help
1220TXA
1230PHA
1240TYA
1250PHA
1260JSR savezero
1270LDA (ptr),Y
1280CMP #13
1290BEQ nonly
1300LDX #&FF
1310DEY
1320.help1
1330INX
1340INY
1350LDA hword,X
1360CMP #13
1370BEQ bighelp
1380LDA (ptr),Y
1390CMP #ASC"."
1400BEQ bighelp
1410AND #&DF
1420CMP hword,X
1430BEQ help1
1440.out
1450JSR loadzero
1460PLA
1470TAY
1480PLA
1490TAX
1500PLA
1510PLP
1520RTS
1530.nonly
1540JSR nameonly
1550JMP out
1560:
1570.bighelp
1580JSR nameonly
1590LDX #hlptxt MOD 256
1600LDY #hlptxt DIV 256
1610JSR mess
1620LDA index
1630BEQ nomore
1640LDX #fcached MOD 256
1650LDY #fcached DIV 256
1660JSR mess
1670LDX #0
1680STX tmp
1690.hloop
1700LDX tmp
1710LDA index,X
1720BEQ hdone
1730LDY #4
1740JSR spcs
1750LDY #8
1760.names
1770LDA index,X
1780BNE notend
1790LDA #32
1800.notend
1810JSR oswrch
1820INX
1830DEY
1840BNE names
1850LDY #8
1860JSR spcs
1870LDA tmp
1880CLC
1890ADC #16
1900STA tmp
1910BCC hloop
1920.hdone
1930LDA #&86
1940JSR osbyte
1950CPX #0
1960BEQ nomore
1970JSR osnewl
1980.nomore
1990JMP out
2000:
2010.nameonly
2020JSR osnewl
2030LDY #&FF
2040.pname
2050INY
2060LDA title,Y
2070JSR oswrch
2080BNE pname
2090JSR osnewl
2100RTS
2110:
2120.spcs
2130LDA #32
2140.spcsl
2150JSR oswrch
2160DEY
2170BNE spcsl
2180RTS
2190:
2200.bmove
2210LDY #0
2220.move
2230LDA len
2240ORA len+1
2250BEQ bmoved
2260LDA (from),Y
2270STA (to),Y
2280INC from
2290BNE notfhi
2300INC from+1
2310.notfhi
2320INC to
2330BNE notthi
2340INC to+1
2350.notthi
2360DEC len
2370LDA len
2380CMP #&FF
2390BNE move
2400DEC len+1
2410LDA len+1
2420CMP #&FF
2430BNE move
2440.bmoved
2450RTS
2460:
2470.starcom
2480TXA
2490PHA
2500TYA
2510PHA
2520JSR savezero
2530LDX #0
2540STY tmp
2550.com1
2560LDA coms,X
2570CMP #255
2580BEQ nocom
2590LDY tmp
2600.com2
2610LDA coms,X
2620BEQ gotcom
2630LDA (ptr),Y
2640AND #&DF
2650CMP coms,X
2660BNE nextone
2670INY
2680INX
2690BNE com2
2700.nextone
2710INX
2720LDA coms,X
2730BNE nextone
2740INX
2750INX
2760INX
2770BNE com1
2780.gotcom
2790INX
2800LDA coms,X
2810STA mem
2820LDA coms+1,X
2830STA mem+1
2840.movey
2850LDA (ptr),Y
2860CMP #13
2870BEQ ymoved
2880INY
2890CMP #32
2900BEQ movey
2910DEY
2920.ymoved
2930JMP (mem)
2940:
2950.nocom
2960LDX #0
2970STX ind
2980.chkind
2990LDX ind
3000LDA index,X
3010BEQ none
3020LDY tmp
3030LDA #11
3040STA count
3050.cloop
3060LDA index,X
3070BEQ gotind
3080LDA (ptr),Y
3090AND #&DF
3100CMP index,X
3110BNE nextind
3120INY
3130INX
3140DEC count
3150BNE cloop
3160.gotind
3170LDA (ptr),Y
3180CMP #32
3190BEQ indok
3200CMP #13
3210BEQ indok
3220.nextind
3230LDA ind
3240CLC
3250ADC #19
3260STA ind
3270BCC chkind
3280.none
3290JMP out
3300.indok
3310LDX ind
3320LDA index+11,X
3330STA from
3340LDA index+12,X
3350STA from+1
3360LDA index+13,X
3370STA to
3380LDA index+14,X
3390STA to+1
3400LDA index+17,X
3410STA len
3420LDA index+18,X
3430STA len+1
3440JSR bmove
3450LDA index+15,X
3460STA jsr+1
3470LDA index+16,X
3480STA jsr+2
3490LDA ptr
3500STA optr
3510LDA ptr+1
3520STA optr+1
3530LDY #0
3540.moveptr
3550INC ptr
3560BNE notphi
3570INC ptr+1
3580.notphi
3590LDA (ptr),Y
3600CMP #ASC"*"
3610BEQ moveptr
3620CMP #ASC" "
3630BEQ moveptr
3640JSR loadzero
3650PLA
3660TAY
3670STY y
3680PLA
3690TAX
3700STX x
3710PLA
3720STA a
3730PLA
3740STA p
3750PHA
3760LDA a
3770PLP
3780.jsr
3790JSR &CAFE
3800LDA optr
3810STA ptr
3820LDA optr+1
3830STA ptr+1
3840LDX x
3850LDY y
3860LDA p
3870PHA
3880LDA #0
3890PLP
3900RTS
3910:
3920.comout
3930JSR loadzero
3940PLA
3950TAX
3960PLA
3970TAX
3980PLA
3990LDA #0
4000PLP
4010RTS
4020:
4030.clear
4040CMP #13
4050BNE notclr
4060LDY #0
4070TYA
4080.clrind
4090STA index,Y
4100DEY
4110BNE clrind
4120LDX #store MOD 256
4130STX mem
4140STX index+11
4150LDX #store DIV 256
4160STX mem+1
4170STX index+12
4180LDA #&C0
4190SEC
4200SBC mem+1
4210STA memfree+1
4220LDA #0
4230STA iptr
4240STA num
4250STA memfree
4260JMP comout
4270.notclr
4280JMP out
4290:
4300.data
4310CMP #13
4320BNE notclr
4330LDA index
4340BEQ sdone
4350LDX #dhead MOD 256
4360LDY #dhead DIV 256
4370JSR mess
4380LDX #0
4390STX tmp
4400.snames
4410LDX tmp
4420LDA index,X
4430BEQ sdone
4440LDY #11
4450.dloop
4460LDA index,X
4470BNE nospc
4480LDA #32
4490.nospc
4500JSR oswrch
4510INX
4520DEY
4530BNE dloop
4540LDA tmp
4550CLC
4560ADC #13
4570PHA
4580TAY
4590JSR pdata
4600INY
4610INY
4620JSR pdata
4630INY
4640INY
4650JSR pdata
4660PLA
4670TAY
4680DEY
4690DEY
4700JSR pdata
4710JSR osnewl
4720LDA tmp
4730CLC
4740ADC #19
4750STA tmp
4760BCC snames
4770.sdone
4780LDA #ASC"&"
4790JSR oswrch
4800LDA memfree+1
4810JSR hex
4820LDA memfree
4830JSR hex
4840LDX #dfoot MOD 256
4850LDY #dfoot DIV 256
4860JSR mess
4870JMP comout
4880:
4890.pdata
4900LDA #32
4910JSR oswrch
4920JSR oswrch
4930LDA index+1,Y
4940JSR hex
4950LDA index,Y
4960JMP hex
4970:
4980.cache
4990CMP #13
5000BNE docache
5010LDX #csyn MOD 256
5020LDY #csyn DIV 256
5030JMP error
5040.docache
5050LDX #0
5060.xname
5070LDA (ptr),Y
5080STA fname,X
5090INY
5100INX
5110CMP #13
5120BNE xname
5130LDX #fname MOD 256
5140LDY #fname DIV 256
5150LDA #&40
5160JSR osfind
5170CMP #0
5180BEQ nofile
5190TAY
5200LDX #ext
5210LDA #2
5220JSR osargs
5230LDA #0
5240JSR osfind
5250LDA num
5260CMP #12
5270BEQ noroom
5280LDA ext+2
5290ORA ext+3
5300BNE toobig
5310LDA ext+1
5320CMP memfree+1
5330BCC ok
5340BNE toobig
5350LDA ext
5360CMP memfree
5370BEQ ok
5380BCC ok
5390:
5400.toobig
5410LDX #ftb MOD 256
5420LDY #ftb DIV 256
5430JMP error
5440.nofile
5450LDX #fnf MOD 256
5460LDY #fnf DIV 256
5470JMP error
5480.noroom
5490LDX #nis MOD 256
5500LDY #nis DIV 256
5510JMP error
5520:
5530.ok
5540LDY #&14
5550LDA #&FF
5560.clrblk
5570STA finfo,Y
5580DEY
5590BNE clrblk
5600LDA #fname MOD 256
5610STA finfo
5620LDA #fname DIV 256
5630STA finfo+1
5640LDX #finfo MOD 256
5650LDY #finfo DIV 256
5660LDA #&FF
5670JSR osfile
5680LDY iptr
5690LDA finfo+2
5700STA from
5710STA index+13,Y
5720LDA finfo+3
5730STA from+1
5740STA index+14,Y
5750LDA index+11,Y
5760STA to
5770LDA index+12,Y
5780STA to+1
5790LDA finfo+6
5800STA index+15,Y
5810LDA finfo+7
5820STA index+16,Y
5830LDA ext
5840STA index+17,Y
5850LDA ext+1
5860STA index+18,Y
5870LDA memfree
5880SEC
5890SBC len
5900STA memfree
5910LDA memfree+1
5920SBC len+1
5930STA memfree+1
5940JSR bmove
5950LDX #0
5960.fret
5970INX
5980LDA fname,X
5990CMP #32
6000BEQ ndot
6010CMP #13
6020BNE fret
6030.ndot
6040DEX
6050BEQ gotit
6060LDA fname,X
6070CMP #ASC"."
6080BNE ndot
6090INX
6100.gotit
6110LDY #11
6120STY tmp
6130LDY iptr
6140.mname
6150LDA fname,X
6160CMP #32
6170BEQ mndone
6180CMP #13
6190BEQ mndone
6200STA index,Y
6210INX
6220INY
6230DEC tmp
6240BNE mname
6250.mndone
6260LDA num
6270CMP #15
6280BEQ noinc
6290LDA iptr
6300CLC
6310ADC #19
6320STA iptr
6330TAY
6340LDA to
6350STA index+11,Y
6360LDA to+1
6370STA index+12,Y
6380.noinc
6390INC num
6400JMP comout
6410:
6420.scrap
6430CMP #13
6440BNE doscrap
6450LDX #ssyn MOD 256
6460LDY #ssyn DIV 256
6470JMP error
6480.doscrap
6490LDX #0
6500.scrap1
6510LDA (ptr),Y
6520STA fname,X
6530CMP #13
6540BEQ eoc
6550CMP #32
6560BEQ eoc
6570INY
6580INX
6590CPX #11
6600BNE scrap1
6610JMP nofile
6620.eoc
6630LDX #0
6640STX tmp
6650.fscrap
6660LDX tmp
6670LDA index,X
6680BEQ notthere
6690LDY #0
6700LDA #11
6710STA count
6720.comploop
6730LDA index,X
6740BEQ comped
6750CMP fname,Y
6760BNE ncomp
6770INX
6780INY
6790DEC count
6800BNE comploop
6810.notthere
6820JMP nofile
6830:
6840.ncomp
6850LDA tmp
6860CLC
6870ADC #19
6880STA tmp
6890BCC fscrap
6900JMP nofile
6910.comped
6920LDA fname,Y
6930CMP #32
6940BEQ compok
6950CMP #13
6960BNE ncomp
6970:
6980.compok
6990LDX tmp
7000LDA index+17,X
7010STA len
7020LDA index+18,X
7030STA len+1
7040CPX #&F0
7050BEQ justdel
7060LDA index+11,X
7070STA to
7080LDA index+12,X
7090STA to+1
7100LDA index+30,X
7110STA from
7120LDA index+31,X
7130STA from+1
7140LDY #0
7150.shuffle
7160LDA (from),Y
7170STA (to),Y
7180INC to
7190BNE shuf1
7200INC to+1
7210.shuf1
7220INC from
7230BNE shuffle
7240INC from+1
7250LDA from+1
7260CMP #&C0
7270BNE shuffle
7280LDA tmp
7290TAX
7300CLC
7310ADC #19
7320TAY
7330.shufind
7340LDA index,Y
7350STA index,X
7360INX
7370INY
7380BNE shufind
7390LDX tmp
7400.sublen
7410LDA index+11,X
7420SEC
7430SBC len
7440STA index+11,X
7450LDA index+12,X
7460SBC len+1
7470STA index+12,X
7480TXA
7490CLC
7500ADC #19
7510TAX
7520BCC sublen
7530LDA num
7540CMP #19
7550BEQ justdel
7560LDA iptr
7570SEC
7580SBC #19
7590STA iptr
7600.justdel
7610DEC num
7620LDA memfree
7630CLC
7640ADC len
7650STA memfree
7660LDA memfree+1
7670ADC len+1
7680STA memfree+1
7690LDA #0
7700LDY #&F0
7710.deloop
7720CPY #&F8
7730BNE noiny
7740INY
7750INY
7760.noiny
7770STA index,Y
7780INY
7790BNE deloop
7800JMP comout
7810:
7820.hlptxt EQUS " Commands:"+cr$
7830 EQUS " *CACHE <file>"+cr$
7840 EQUS " *SCRAP <file>"+cr$
7850 EQUS " *CLEAR"+cr$
7860 EQUS " *DATA"+cr$
7870 EQUB 0
7880.fcached EQUS " Files cached:"+cr$+z$
7890.dhead EQUS "Filename Load Exec Size Addr"+cr$+z$
7900.dfoot EQUS " bytes free."+cr$+z$
7910.fnf BRK:EQUB 255:EQUS "File not found"+z$
7920.ftb BRK:EQUB 254:EQUS "File too big"+z$
7930.nis BRK:EQUB 253:EQUS "No room in index"+z$
7940.csyn BRK:EQUB 252:EQUS "Syntax: *CACHE <file>"+z$
7950.ssyn BRK:EQUB 251:EQUS "Syntax: *SCRAP <file>"+z$
7960.hword EQUS "AUTOROM"+cr$
7970.coms EQUS "CACHE"+z$ : EQUW cache
7980 EQUS "SCRAP"+z$ : EQUW scrap
7990 EQUS "CLEAR"+z$ : EQUW clear
8000 EQUS "DATA"+z$ : EQUW data
8010 EQUB -1
8020.zero EQUD 0
8030 EQUW 0
8040.tmp EQUB 0
8050.memfree EQUW 0
8060.iptr EQUB 0
8070.num EQUB 0
8080.count EQUB 0
8090.ind EQUB 0
8100.a EQUB 0
8110.x EQUB 0
8120.y EQUB 0
8130.p EQUB 0
8140.optr EQUW 0
8150.end EQUB 0
8160]NEXT
8170ENDPROC
8180:
8190DEF PROCcheck
8200PRINT "Checking...";
8210PROCsum("start","out",20056)
8220PROCsum("out","bmove",16673)
8230PROCsum("bmove","gotind",23671)
8240PROCsum("gotind","data",28094)
8250PROCsum("data","toobig",26934)
8260PROCsum("toobig","scrap",24858)
8270PROCsum("scrap","shufind",22027)
8280PROCsum("shufind","hlptxt",12271)
8290PROCsum("hlptxt","end",20997)
8300ENDPROC
8310:
8320DEF PROCsum(S$,E$,N%)
8330T%=0
8340FOR I%=EVAL(S$)-P%+O% TO EVAL(E$)-P%+O%-1
8350T%=T%+?I%:NEXT
8360IF T%=N% ENDPROC
8370PRINT "Please check from ";S$;" to ";E$;"."
� >AutoSource (Po85)
� By David Lawrence
!� For BBC B/B+/M/C/E with SWR
('� (C) BAU January 1992 & March 1988
-#� Adapted for 10 character ADFS
.!� filenames by Richard Dimond
/� July 1996
2:
< �vars
F�ass
P
�check
Z#�13;"Checked O.K."'"Saving..."
d2�"*SAVE Autorom "+�~code+" "+�~O%+" 8000 8000"
n�
x:
�� �vars
�� code 2000
�cr$=�13
� z$=�0
�mem=&70:ext=&70
�len=&70:from=&72
�to=&74:ptr=&F2
�err=&100:finfo=&100
�fname=&115:index=&8800
�store=&8900
�oswrch=&FFEE:osnewl=&FFE7
�osasci=&FFE3:osbyte=&FFF4
�osfile=&FFDD:osargs=&FFDA
osfind=&FFCE:oscli =&FFF7
�
:
"
� �ass
,� pass=4 � 6 � 2
6P%=&8000:O%=code
@
[OPT pass
J
.start
TRTS
^RTS
hRTS
rJMP service
|EQUB 129
�
EQUB copy
�
EQUB 1
�
.title
�EQUS "Autorom 1.0"+z$
� .copy
�$EQUS z$+"(C) Acorn User 1988"+z$
�:
�.service
�PHP
�PHA
�
CMP #9
�BNE not9
�JMP help
.not9
CMP #4
BNE not4
&JMP starcom
0 .not4
:PLA
DPLP
NRTS
X:
b
.error
lSTX mem
v
STY mem+1
�
LDY #1
�.xerror
�LDA (mem),Y
�
STA err,Y
�INY
�
CMP #0
�BNE xerror
�
LDA #0
�STA err
�JMP err
�:
� .mess
�STX mem
STY mem+1
LDY #&FF
.pmess
INY
*LDA (mem),Y
4JSR osasci
>
BNE pmess
HRTS
R:
\
.loadzero
f
LDX #5
p
.lzero
zLDA zero,X
�
STA ext,X
�DEX
�
BPL lzero
�RTS
�
.savezero
�
LDX #5
�
.szero
�
LDA ext,X
�STA zero,X
�DEX
�
BPL szero
�RTS
�:
.hex
PHA
LSR A
$ LSR A
. LSR A
8 LSR A
BJSR dig
LPLA
V � #&F
`.dig
jCMP #10
t
BCC isnum
~CLC
�
ADC #7
�
.isnum
�ADC #48
�JMP oswrch
�:
� .help
�TXA
�PHA
�TYA
�PHA
�JSR savezero
�LDA (ptr),Y
CMP #13
BEQ nonly
LDX #&FF
DEY
(
.help1
2INX
<INY
FLDA hword,X
PCMP #13
ZBEQ bighelp
dLDA (ptr),Y
n
CMP #�"."
xBEQ bighelp
�
� #&DF
�CMP hword,X
�
BEQ help1
�.out
�JSR loadzero
�PLA
�TAY
�PLA
�TAX
�PLA
�PLP
�RTS
�
.nonly
JSR nameonly
JMP out
:
".bighelp
,JSR nameonly
6LDX #hlptxt � 256
@LDY #hlptxt � 256
JJSR mess
T
LDA index
^BEQ nomore
hLDX #fcached � 256
rLDY #fcached � 256
|JSR mess
�
LDX #0
�STX tmp
�
.hloop
�LDX tmp
�LDA index,X
�
BEQ hdone
�
LDY #4
�JSR spcs
�
LDY #8
�
.names
�LDA index,X
�BNE notend
�LDA #32
.notend
JSR oswrch
INX
&DEY
0
BNE names
:
LDY #8
DJSR spcs
NLDA tmp
XCLC
bADC #16
lSTA tmp
v
BCC hloop
�
.hdone
�LDA #&86
�JSR osbyte
�
CPX #0
�BEQ nomore
�JSR osnewl
�.nomore
�JMP out
�:
�
.nameonly
�JSR osnewl
�LDY #&FF
�
.pname
INY
LDA title,Y
JSR oswrch
BNE pname
*JSR osnewl
4RTS
>:
H .spcs
RLDA #32
\
.spcsl
fJSR oswrch
pDEY
z
BNE spcsl
�RTS
�:
�
.bmove
�
LDY #0
� .move
�LDA len
��A len+1
�BEQ bmoved
�LDA (from),Y
�STA (to),Y
�INC from
�BNE notfhi
�INC from+1
.notfhi
INC to
BNE notthi
$INC to+1
..notthi
8DEC len
BLDA len
LCMP #&FF
VBNE move
`
DEC len+1
j
LDA len+1
tCMP #&FF
~BNE move
�.bmoved
�RTS
�:
�.starcom
�TXA
�PHA
�TYA
�PHA
�JSR savezero
�
LDX #0
�STY tmp
� .com1
LDA coms,X
CMP #255
BEQ nocom
LDY tmp
( .com2
2LDA coms,X
<BEQ gotcom
FLDA (ptr),Y
P
� #&DF
ZCMP coms,X
dBNE nextone
nINY
xINX
�BNE com2
�.nextone
�INX
�LDA coms,X
�BNE nextone
�INX
�INX
�INX
�BNE com1
�.gotcom
�INX
�LDA coms,X
�STA mem
LDA coms+1,X
STA mem+1
.movey
"LDA (ptr),Y
,CMP #13
6BEQ ymoved
@INY
JCMP #32
T
BEQ movey
^DEY
h.ymoved
r
JMP (mem)
|:
�
.nocom
�
LDX #0
�STX ind
�.chkind
�LDX ind
�LDA index,X
�BEQ none
�LDY tmp
�LDA #11
�
STA count
�
.cloop
�LDA index,X
�BEQ gotind
LDA (ptr),Y
� #&DF
CMP index,X
&BNE nextind
0INY
:INX
D
DEC count
N
BNE cloop
X.gotind
bLDA (ptr),Y
lCMP #32
v
BEQ indok
�CMP #13
�
BEQ indok
�.nextind
�LDA ind
�CLC
�ADC #19
�STA ind
�BCC chkind
� .none
�JMP out
�
.indok
�LDX ind
�LDA index+11,X
STA from
LDA index+12,X
STA from+1
LDA index+13,X
*
STA to
4LDA index+14,X
>STA to+1
HLDA index+17,X
RSTA len
\LDA index+18,X
f
STA len+1
p
JSR bmove
zLDA index+15,X
�
STA jsr+1
�LDA index+16,X
�
STA jsr+2
�LDA ptr
�STA optr
�
LDA ptr+1
�STA optr+1
�
LDY #0
�.moveptr
�INC ptr
�BNE notphi
�
INC ptr+1
�.notphi
LDA (ptr),Y
CMP #�"*"
BEQ moveptr
$
CMP #�" "
.BEQ moveptr
8JSR loadzero
BPLA
LTAY
V STY y
`PLA
jTAX
t STX x
~PLA
� STA a
�PLA
� STA p
�PHA
� LDA a
�PLP
�.jsr
�
JSR &CAFE
�LDA optr
�STA ptr
�LDA optr+1
�
STA ptr+1
LDX x
LDY y
LDA p
PHA
(
LDA #0
2PLP
<RTS
F:
P.comout
ZJSR loadzero
dPLA
nTAX
xPLA
�TAX
�PLA
�
LDA #0
�PLP
�RTS
�:
�
.clear
�CMP #13
�BNE notclr
�
LDY #0
�TYA
�.clrind
�STA index,Y
DEY
BNE clrind
LDX #store � 256
"STX mem
,STX index+11
6LDX #store � 256
@
STX mem+1
JSTX index+12
TLDA #&C0
^SEC
h
SBC mem+1
rSTA memfree+1
|
LDA #0
�STA iptr
�STA num
�STA memfree
�JMP comout
�.notclr
�JMP out
�:
� .data
�CMP #13
�BNE notclr
�
LDA index
�
BEQ sdone
�LDX #dhead � 256
LDY #dhead � 256
JSR mess
LDX #0
&STX tmp
0.snames
:LDX tmp
DLDA index,X
N
BEQ sdone
XLDY #11
b
.dloop
lLDA index,X
v
BNE nospc
�LDA #32
�
.nospc
�JSR oswrch
�INX
�DEY
�
BNE dloop
�LDA tmp
�CLC
�ADC #13
�PHA
�TAY
�
JSR pdata
�INY
INY
JSR pdata
INY
INY
*
JSR pdata
4PLA
>TAY
HDEY
RDEY
\
JSR pdata
fJSR osnewl
pLDA tmp
zCLC
�ADC #19
�STA tmp
�BCC snames
�
.sdone
�
LDA #�"&"
�JSR oswrch
�LDA memfree+1
�JSR hex
�LDA memfree
�JSR hex
�LDX #dfoot � 256
�LDY #dfoot � 256
�JSR mess
JMP comout
:
.pdata
$LDA #32
.JSR oswrch
8JSR oswrch
BLDA index+1,Y
LJSR hex
VLDA index,Y
`JMP hex
j:
t
.cache
~CMP #13
�BNE docache
�LDX #csyn � 256
�LDY #csyn � 256
�
JMP error
�.docache
�
LDX #0
�
.xname
�LDA (ptr),Y
�STA fname,X
�INY
�INX
�CMP #13
BNE xname
LDX #fname � 256
LDY #fname � 256
LDA #&40
(JSR osfind
2
CMP #0
<BEQ nofile
FTAY
PLDX #ext
Z
LDA #2
dJSR osargs
n
LDA #0
xJSR osfind
�LDA num
�CMP #12
�BEQ noroom
�
LDA ext+2
��A ext+3
�BNE toobig
�
LDA ext+1
�CMP memfree+1
�
BCC ok
�BNE toobig
�LDA ext
�CMP memfree
�
BEQ ok
BCC ok
:
.toobig
"LDX #ftb � 256
,LDY #ftb � 256
6
JMP error
@.nofile
JLDX #fnf � 256
TLDY #fnf � 256
^
JMP error
h.noroom
rLDX #nis � 256
|LDY #nis � 256
�
JMP error
�:
�.ok
�LDY #&14
�LDA #&FF
�.clrblk
�STA finfo,Y
�DEY
�BNE clrblk
�LDA #fname � 256
�
STA finfo
�LDA #fname � 256
�STA finfo+1
LDX #finfo � 256
LDY #finfo � 256
LDA #&FF
&JSR osfile
0LDY iptr
:LDA finfo+2
DSTA from
NSTA index+13,Y
XLDA finfo+3
bSTA from+1
lSTA index+14,Y
vLDA index+11,Y
�
STA to
�LDA index+12,Y
�STA to+1
�LDA finfo+6
�STA index+15,Y
�LDA finfo+7
�STA index+16,Y
�LDA ext
�STA index+17,Y
�
LDA ext+1
�STA index+18,Y
�LDA memfree
�SEC
SBC len
STA memfree
LDA memfree+1
SBC len+1
*STA memfree+1
4
JSR bmove
>
LDX #0
H .fret
RINX
\LDA fname,X
fCMP #32
pBEQ ndot
zCMP #13
�BNE fret
� .ndot
�DEX
�
BEQ gotit
�LDA fname,X
�
CMP #�"."
�BNE ndot
�INX
�
.gotit
�LDY #11
�STY tmp
�LDY iptr
�
.mname
LDA fname,X
CMP #32
BEQ mndone
$CMP #13
.BEQ mndone
8STA index,Y
BINX
LINY
VDEC tmp
`
BNE mname
j.mndone
tLDA num
~CMP #15
�
BEQ noinc
�LDA iptr
�CLC
�ADC #19
�STA iptr
�TAY
�
LDA to
�STA index+11,Y
�LDA to+1
�STA index+12,Y
�
.noinc
�INC num
JMP comout
:
.scrap
CMP #13
(BNE doscrap
2LDX #ssyn � 256
<LDY #ssyn � 256
F
JMP error
P.doscrap
Z
LDX #0
d.scrap1
nLDA (ptr),Y
xSTA fname,X
�CMP #13
�BEQ eoc
�CMP #32
�BEQ eoc
�INY
�INX
�CPX #11
�BNE scrap1
�JMP nofile
�.eoc
�
LDX #0
�STX tmp
�.fscrap
LDX tmp
LDA index,X
BEQ notthere
"
LDY #0
,LDA #11
6
STA count
@
.comploop
JLDA index,X
TBEQ comped
^CMP fname,Y
h
BNE ncomp
rINX
|INY
�
DEC count
�BNE comploop
�
.notthere
�JMP nofile
�:
�
.ncomp
�LDA tmp
�CLC
�ADC #19
�STA tmp
�BCC fscrap
�JMP nofile
�.comped
LDA fname,Y
CMP #32
BEQ compok
&CMP #13
0
BNE ncomp
::
D.compok
NLDX tmp
XLDA index+17,X
bSTA len
lLDA index+18,X
v
STA len+1
�CPX #&F0
�BEQ justdel
�LDA index+11,X
�
STA to
�LDA index+12,X
�STA to+1
�LDA index+30,X
�STA from
�LDA index+31,X
�STA from+1
�
LDY #0
�.shuffle
�LDA (from),Y
STA (to),Y
INC to
BNE shuf1
INC to+1
*
.shuf1
4INC from
>BNE shuffle
HINC from+1
RLDA from+1
\CMP #&C0
fBNE shuffle
pLDA tmp
zTAX
�CLC
�ADC #19
�TAY
�.shufind
�LDA index,Y
�STA index,X
�INX
�INY
�BNE shufind
�LDX tmp
�.sublen
�LDA index+11,X
�SEC
SBC len
STA index+11,X
LDA index+12,X
$
SBC len+1
.STA index+12,X
8TXA
BCLC
LADC #19
VTAX
`BCC sublen
jLDA num
tCMP #19
~BEQ justdel
�LDA iptr
�SEC
�SBC #19
�STA iptr
�.justdel
�DEC num
�LDA memfree
�CLC
�ADC len
�STA memfree
�LDA memfree+1
�
ADC len+1
STA memfree+1
LDA #0
LDY #&F0
.deloop
(CPY #&F8
2
BNE noiny
<INY
FINY
P
.noiny
ZSTA index,Y
dINY
nBNE deloop
xJMP comout
�:
�#.hlptxt EQUS " Commands:"+cr$
�) EQUS " *CACHE <file>"+cr$
�) EQUS " *SCRAP <file>"+cr$
�" EQUS " *CLEAR"+cr$
�! EQUS " *DATA"+cr$
� EQUB 0
�*.fcached EQUS " Files cached:"+cr$+z$
�>.dhead EQUS "Filename Load Exec Size Addr"+cr$+z$
�'.dfoot EQUS " bytes free."+cr$+z$
�2.fnf BRK:EQUB 255:EQUS "File not found"+z$
�0.ftb BRK:EQUB 254:EQUS "File too big"+z$
�4.nis BRK:EQUB 253:EQUS "No room in index"+z$
9.csyn BRK:EQUB 252:EQUS "Syntax: *CACHE <file>"+z$
9.ssyn BRK:EQUB 251:EQUS "Syntax: *SCRAP <file>"+z$
.hword EQUS "AUTOROM"+cr$
").coms EQUS "CACHE"+z$ : EQUW cache
,) EQUS "SCRAP"+z$ : EQUW scrap
6) EQUS "CLEAR"+z$ : EQUW clear
@( EQUS "DATA"+z$ : EQUW data
J EQUB -1
T.zero EQUD 0
^ EQUW 0
h.tmp EQUB 0
r.memfree EQUW 0
|.iptr EQUB 0
�.num EQUB 0
�.count EQUB 0
�.ind EQUB 0
�.a EQUB 0
�.x EQUB 0
�.y EQUB 0
�.p EQUB 0
�.optr EQUW 0
�.end EQUB 0
�]�
��
�:
�� �check
� "Checking...";
�sum("start","out",20056)
�sum("out","bmove",16673)
& �sum("bmove","gotind",23671)
0�sum("gotind","data",28094)
:�sum("data","toobig",26934)
D �sum("toobig","scrap",24858)
N!�sum("scrap","shufind",22027)
X"�sum("shufind","hlptxt",12271)
b�sum("hlptxt","end",20997)
l�
v:
�� �sum(S$,E$,N%)
�T%=0
�$� I%=�(S$)-P%+O% � �(E$)-P%+O%-1
�T%=T%+?I%:�
�
� T%=N% �
�+� "Please check from ";S$;" to ";E$;"."
� 00000000 0d 00 0a 18 f4 20 3e 41 75 74 6f 53 6f 75 72 63 |..... >AutoSourc|
00000010 65 20 28 50 6f 38 35 29 0d 00 14 17 f4 20 42 79 |e (Po85)..... By|
00000020 20 44 61 76 69 64 20 4c 61 77 72 65 6e 63 65 0d | David Lawrence.|
00000030 00 1e 21 f4 20 46 6f 72 20 42 42 43 20 42 2f 42 |..!. For BBC B/B|
00000040 2b 2f 4d 2f 43 2f 45 20 77 69 74 68 20 53 57 52 |+/M/C/E with SWR|
00000050 0d 00 28 27 f4 20 28 43 29 20 42 41 55 20 4a 61 |..('. (C) BAU Ja|
00000060 6e 75 61 72 79 20 31 39 39 32 20 26 20 4d 61 72 |nuary 1992 & Mar|
00000070 63 68 20 31 39 38 38 0d 00 2d 23 f4 20 41 64 61 |ch 1988..-#. Ada|
00000080 70 74 65 64 20 66 6f 72 20 31 30 20 63 68 61 72 |pted for 10 char|
00000090 61 63 74 65 72 20 41 44 46 53 0d 00 2e 21 f4 20 |acter ADFS...!. |
000000a0 66 69 6c 65 6e 61 6d 65 73 20 62 79 20 52 69 63 |filenames by Ric|
000000b0 68 61 72 64 20 44 69 6d 6f 6e 64 0d 00 2f 0f f4 |hard Dimond../..|
000000c0 20 4a 75 6c 79 20 31 39 39 36 0d 00 32 05 3a 0d | July 1996..2.:.|
000000d0 00 3c 09 f2 76 61 72 73 0d 00 46 08 f2 61 73 73 |.<..vars..F..ass|
000000e0 0d 00 50 0a f2 63 68 65 63 6b 0d 00 5a 23 f1 bd |..P..check..Z#..|
000000f0 31 33 3b 22 43 68 65 63 6b 65 64 20 4f 2e 4b 2e |13;"Checked O.K.|
00000100 22 27 22 53 61 76 69 6e 67 2e 2e 2e 22 0d 00 64 |"'"Saving..."..d|
00000110 32 ff 22 2a 53 41 56 45 20 41 75 74 6f 72 6f 6d |2."*SAVE Autorom|
00000120 20 22 2b c3 7e 63 6f 64 65 2b 22 20 22 2b c3 7e | "+.~code+" "+.~|
00000130 4f 25 2b 22 20 38 30 30 30 20 38 30 30 30 22 0d |O%+" 8000 8000".|
00000140 00 6e 05 e0 0d 00 78 05 3a 0d 00 82 0b dd 20 f2 |.n....x.:..... .|
00000150 76 61 72 73 0d 00 8c 0f de 20 63 6f 64 65 20 32 |vars..... code 2|
00000160 30 30 30 0d 00 96 0b 63 72 24 3d bd 31 33 0d 00 |000....cr$=.13..|
00000170 a0 09 7a 24 3d bd 30 0d 00 aa 13 6d 65 6d 3d 26 |..z$=.0....mem=&|
00000180 37 30 3a 65 78 74 3d 26 37 30 0d 00 b4 14 6c 65 |70:ext=&70....le|
00000190 6e 3d 26 37 30 3a 66 72 6f 6d 3d 26 37 32 0d 00 |n=&70:from=&72..|
000001a0 be 12 74 6f 3d 26 37 34 3a 70 74 72 3d 26 46 32 |..to=&74:ptr=&F2|
000001b0 0d 00 c8 17 65 72 72 3d 26 31 30 30 3a 66 69 6e |....err=&100:fin|
000001c0 66 6f 3d 26 31 30 30 0d 00 d2 1a 66 6e 61 6d 65 |fo=&100....fname|
000001d0 3d 26 31 31 35 3a 69 6e 64 65 78 3d 26 38 38 30 |=&115:index=&880|
000001e0 30 0d 00 dc 0f 73 74 6f 72 65 3d 26 38 39 30 30 |0....store=&8900|
000001f0 0d 00 e6 1d 6f 73 77 72 63 68 3d 26 46 46 45 45 |....oswrch=&FFEE|
00000200 3a 6f 73 6e 65 77 6c 3d 26 46 46 45 37 0d 00 f0 |:osnewl=&FFE7...|
00000210 1d 6f 73 61 73 63 69 3d 26 46 46 45 33 3a 6f 73 |.osasci=&FFE3:os|
00000220 62 79 74 65 3d 26 46 46 46 34 0d 00 fa 1d 6f 73 |byte=&FFF4....os|
00000230 66 69 6c 65 3d 26 46 46 44 44 3a 6f 73 61 72 67 |file=&FFDD:osarg|
00000240 73 3d 26 46 46 44 41 0d 01 04 1d 6f 73 66 69 6e |s=&FFDA....osfin|
00000250 64 3d 26 46 46 43 45 3a 6f 73 63 6c 69 20 3d 26 |d=&FFCE:oscli =&|
00000260 46 46 46 37 0d 01 0e 05 e1 0d 01 18 05 3a 0d 01 |FFF7.........:..|
00000270 22 0a dd 20 f2 61 73 73 0d 01 2c 14 e3 20 70 61 |".. .ass..,.. pa|
00000280 73 73 3d 34 20 b8 20 36 20 88 20 32 0d 01 36 14 |ss=4 . 6 . 2..6.|
00000290 50 25 3d 26 38 30 30 30 3a 4f 25 3d 63 6f 64 65 |P%=&8000:O%=code|
000002a0 0d 01 40 0d 5b 4f 50 54 20 70 61 73 73 0d 01 4a |..@.[OPT pass..J|
000002b0 0a 2e 73 74 61 72 74 0d 01 54 07 52 54 53 0d 01 |..start..T.RTS..|
000002c0 5e 07 52 54 53 0d 01 68 07 52 54 53 0d 01 72 0f |^.RTS..h.RTS..r.|
000002d0 4a 4d 50 20 73 65 72 76 69 63 65 0d 01 7c 0c 45 |JMP service..|.E|
000002e0 51 55 42 20 31 32 39 0d 01 86 0d 45 51 55 42 20 |QUB 129....EQUB |
000002f0 63 6f 70 79 0d 01 90 0a 45 51 55 42 20 31 0d 01 |copy....EQUB 1..|
00000300 9a 0a 2e 74 69 74 6c 65 0d 01 a4 19 45 51 55 53 |...title....EQUS|
00000310 20 22 41 75 74 6f 72 6f 6d 20 31 2e 30 22 2b 7a | "Autorom 1.0"+z|
00000320 24 0d 01 ae 09 2e 63 6f 70 79 0d 01 b8 24 45 51 |$.....copy...$EQ|
00000330 55 53 20 7a 24 2b 22 28 43 29 20 41 63 6f 72 6e |US z$+"(C) Acorn|
00000340 20 55 73 65 72 20 31 39 38 38 22 2b 7a 24 0d 01 | User 1988"+z$..|
00000350 c2 05 3a 0d 01 cc 0c 2e 73 65 72 76 69 63 65 0d |..:.....service.|
00000360 01 d6 07 50 48 50 0d 01 e0 07 50 48 41 0d 01 ea |...PHP....PHA...|
00000370 0a 43 4d 50 20 23 39 0d 01 f4 0c 42 4e 45 20 6e |.CMP #9....BNE n|
00000380 6f 74 39 0d 01 fe 0c 4a 4d 50 20 68 65 6c 70 0d |ot9....JMP help.|
00000390 02 08 09 2e 6e 6f 74 39 0d 02 12 0a 43 4d 50 20 |....not9....CMP |
000003a0 23 34 0d 02 1c 0c 42 4e 45 20 6e 6f 74 34 0d 02 |#4....BNE not4..|
000003b0 26 0f 4a 4d 50 20 73 74 61 72 63 6f 6d 0d 02 30 |&.JMP starcom..0|
000003c0 09 2e 6e 6f 74 34 0d 02 3a 07 50 4c 41 0d 02 44 |..not4..:.PLA..D|
000003d0 07 50 4c 50 0d 02 4e 07 52 54 53 0d 02 58 05 3a |.PLP..N.RTS..X.:|
000003e0 0d 02 62 0a 2e 65 72 72 6f 72 0d 02 6c 0b 53 54 |..b..error..l.ST|
000003f0 58 20 6d 65 6d 0d 02 76 0d 53 54 59 20 6d 65 6d |X mem..v.STY mem|
00000400 2b 31 0d 02 80 0a 4c 44 59 20 23 31 0d 02 8a 0b |+1....LDY #1....|
00000410 2e 78 65 72 72 6f 72 0d 02 94 0f 4c 44 41 20 28 |.xerror....LDA (|
00000420 6d 65 6d 29 2c 59 0d 02 9e 0d 53 54 41 20 65 72 |mem),Y....STA er|
00000430 72 2c 59 0d 02 a8 07 49 4e 59 0d 02 b2 0a 43 4d |r,Y....INY....CM|
00000440 50 20 23 30 0d 02 bc 0e 42 4e 45 20 78 65 72 72 |P #0....BNE xerr|
00000450 6f 72 0d 02 c6 0a 4c 44 41 20 23 30 0d 02 d0 0b |or....LDA #0....|
00000460 53 54 41 20 65 72 72 0d 02 da 0b 4a 4d 50 20 65 |STA err....JMP e|
00000470 72 72 0d 02 e4 05 3a 0d 02 ee 09 2e 6d 65 73 73 |rr....:.....mess|
00000480 0d 02 f8 0b 53 54 58 20 6d 65 6d 0d 03 02 0d 53 |....STX mem....S|
00000490 54 59 20 6d 65 6d 2b 31 0d 03 0c 0c 4c 44 59 20 |TY mem+1....LDY |
000004a0 23 26 46 46 0d 03 16 0a 2e 70 6d 65 73 73 0d 03 |#&FF.....pmess..|
000004b0 20 07 49 4e 59 0d 03 2a 0f 4c 44 41 20 28 6d 65 | .INY..*.LDA (me|
000004c0 6d 29 2c 59 0d 03 34 0e 4a 53 52 20 6f 73 61 73 |m),Y..4.JSR osas|
000004d0 63 69 0d 03 3e 0d 42 4e 45 20 70 6d 65 73 73 0d |ci..>.BNE pmess.|
000004e0 03 48 07 52 54 53 0d 03 52 05 3a 0d 03 5c 0d 2e |.H.RTS..R.:..\..|
000004f0 6c 6f 61 64 7a 65 72 6f 0d 03 66 0a 4c 44 58 20 |loadzero..f.LDX |
00000500 23 35 0d 03 70 0a 2e 6c 7a 65 72 6f 0d 03 7a 0e |#5..p..lzero..z.|
00000510 4c 44 41 20 7a 65 72 6f 2c 58 0d 03 84 0d 53 54 |LDA zero,X....ST|
00000520 41 20 65 78 74 2c 58 0d 03 8e 07 44 45 58 0d 03 |A ext,X....DEX..|
00000530 98 0d 42 50 4c 20 6c 7a 65 72 6f 0d 03 a2 07 52 |..BPL lzero....R|
00000540 54 53 0d 03 ac 0d 2e 73 61 76 65 7a 65 72 6f 0d |TS.....savezero.|
00000550 03 b6 0a 4c 44 58 20 23 35 0d 03 c0 0a 2e 73 7a |...LDX #5.....sz|
00000560 65 72 6f 0d 03 ca 0d 4c 44 41 20 65 78 74 2c 58 |ero....LDA ext,X|
00000570 0d 03 d4 0e 53 54 41 20 7a 65 72 6f 2c 58 0d 03 |....STA zero,X..|
00000580 de 07 44 45 58 0d 03 e8 0d 42 50 4c 20 73 7a 65 |..DEX....BPL sze|
00000590 72 6f 0d 03 f2 07 52 54 53 0d 03 fc 05 3a 0d 04 |ro....RTS....:..|
000005a0 06 08 2e 68 65 78 0d 04 10 07 50 48 41 0d 04 1a |...hex....PHA...|
000005b0 09 4c 53 52 20 41 0d 04 24 09 4c 53 52 20 41 0d |.LSR A..$.LSR A.|
000005c0 04 2e 09 4c 53 52 20 41 0d 04 38 09 4c 53 52 20 |...LSR A..8.LSR |
000005d0 41 0d 04 42 0b 4a 53 52 20 64 69 67 0d 04 4c 07 |A..B.JSR dig..L.|
000005e0 50 4c 41 0d 04 56 09 80 20 23 26 46 0d 04 60 08 |PLA..V.. #&F..`.|
000005f0 2e 64 69 67 0d 04 6a 0b 43 4d 50 20 23 31 30 0d |.dig..j.CMP #10.|
00000600 04 74 0d 42 43 43 20 69 73 6e 75 6d 0d 04 7e 07 |.t.BCC isnum..~.|
00000610 43 4c 43 0d 04 88 0a 41 44 43 20 23 37 0d 04 92 |CLC....ADC #7...|
00000620 0a 2e 69 73 6e 75 6d 0d 04 9c 0b 41 44 43 20 23 |..isnum....ADC #|
00000630 34 38 0d 04 a6 0e 4a 4d 50 20 6f 73 77 72 63 68 |48....JMP oswrch|
00000640 0d 04 b0 05 3a 0d 04 ba 09 2e 68 65 6c 70 0d 04 |....:.....help..|
00000650 c4 07 54 58 41 0d 04 ce 07 50 48 41 0d 04 d8 07 |..TXA....PHA....|
00000660 54 59 41 0d 04 e2 07 50 48 41 0d 04 ec 10 4a 53 |TYA....PHA....JS|
00000670 52 20 73 61 76 65 7a 65 72 6f 0d 04 f6 0f 4c 44 |R savezero....LD|
00000680 41 20 28 70 74 72 29 2c 59 0d 05 00 0b 43 4d 50 |A (ptr),Y....CMP|
00000690 20 23 31 33 0d 05 0a 0d 42 45 51 20 6e 6f 6e 6c | #13....BEQ nonl|
000006a0 79 0d 05 14 0c 4c 44 58 20 23 26 46 46 0d 05 1e |y....LDX #&FF...|
000006b0 07 44 45 59 0d 05 28 0a 2e 68 65 6c 70 31 0d 05 |.DEY..(..help1..|
000006c0 32 07 49 4e 58 0d 05 3c 07 49 4e 59 0d 05 46 0f |2.INX..<.INY..F.|
000006d0 4c 44 41 20 68 77 6f 72 64 2c 58 0d 05 50 0b 43 |LDA hword,X..P.C|
000006e0 4d 50 20 23 31 33 0d 05 5a 0f 42 45 51 20 62 69 |MP #13..Z.BEQ bi|
000006f0 67 68 65 6c 70 0d 05 64 0f 4c 44 41 20 28 70 74 |ghelp..d.LDA (pt|
00000700 72 29 2c 59 0d 05 6e 0d 43 4d 50 20 23 97 22 2e |r),Y..n.CMP #.".|
00000710 22 0d 05 78 0f 42 45 51 20 62 69 67 68 65 6c 70 |"..x.BEQ bighelp|
00000720 0d 05 82 0a 80 20 23 26 44 46 0d 05 8c 0f 43 4d |..... #&DF....CM|
00000730 50 20 68 77 6f 72 64 2c 58 0d 05 96 0d 42 45 51 |P hword,X....BEQ|
00000740 20 68 65 6c 70 31 0d 05 a0 08 2e 6f 75 74 0d 05 | help1.....out..|
00000750 aa 10 4a 53 52 20 6c 6f 61 64 7a 65 72 6f 0d 05 |..JSR loadzero..|
00000760 b4 07 50 4c 41 0d 05 be 07 54 41 59 0d 05 c8 07 |..PLA....TAY....|
00000770 50 4c 41 0d 05 d2 07 54 41 58 0d 05 dc 07 50 4c |PLA....TAX....PL|
00000780 41 0d 05 e6 07 50 4c 50 0d 05 f0 07 52 54 53 0d |A....PLP....RTS.|
00000790 05 fa 0a 2e 6e 6f 6e 6c 79 0d 06 04 10 4a 53 52 |....nonly....JSR|
000007a0 20 6e 61 6d 65 6f 6e 6c 79 0d 06 0e 0b 4a 4d 50 | nameonly....JMP|
000007b0 20 6f 75 74 0d 06 18 05 3a 0d 06 22 0c 2e 62 69 | out....:.."..bi|
000007c0 67 68 65 6c 70 0d 06 2c 10 4a 53 52 20 6e 61 6d |ghelp..,.JSR nam|
000007d0 65 6f 6e 6c 79 0d 06 36 15 4c 44 58 20 23 68 6c |eonly..6.LDX #hl|
000007e0 70 74 78 74 20 83 20 32 35 36 0d 06 40 15 4c 44 |ptxt . 256..@.LD|
000007f0 59 20 23 68 6c 70 74 78 74 20 81 20 32 35 36 0d |Y #hlptxt . 256.|
00000800 06 4a 0c 4a 53 52 20 6d 65 73 73 0d 06 54 0d 4c |.J.JSR mess..T.L|
00000810 44 41 20 69 6e 64 65 78 0d 06 5e 0e 42 45 51 20 |DA index..^.BEQ |
00000820 6e 6f 6d 6f 72 65 0d 06 68 16 4c 44 58 20 23 66 |nomore..h.LDX #f|
00000830 63 61 63 68 65 64 20 83 20 32 35 36 0d 06 72 16 |cached . 256..r.|
00000840 4c 44 59 20 23 66 63 61 63 68 65 64 20 81 20 32 |LDY #fcached . 2|
00000850 35 36 0d 06 7c 0c 4a 53 52 20 6d 65 73 73 0d 06 |56..|.JSR mess..|
00000860 86 0a 4c 44 58 20 23 30 0d 06 90 0b 53 54 58 20 |..LDX #0....STX |
00000870 74 6d 70 0d 06 9a 0a 2e 68 6c 6f 6f 70 0d 06 a4 |tmp.....hloop...|
00000880 0b 4c 44 58 20 74 6d 70 0d 06 ae 0f 4c 44 41 20 |.LDX tmp....LDA |
00000890 69 6e 64 65 78 2c 58 0d 06 b8 0d 42 45 51 20 68 |index,X....BEQ h|
000008a0 64 6f 6e 65 0d 06 c2 0a 4c 44 59 20 23 34 0d 06 |done....LDY #4..|
000008b0 cc 0c 4a 53 52 20 73 70 63 73 0d 06 d6 0a 4c 44 |..JSR spcs....LD|
000008c0 59 20 23 38 0d 06 e0 0a 2e 6e 61 6d 65 73 0d 06 |Y #8.....names..|
000008d0 ea 0f 4c 44 41 20 69 6e 64 65 78 2c 58 0d 06 f4 |..LDA index,X...|
000008e0 0e 42 4e 45 20 6e 6f 74 65 6e 64 0d 06 fe 0b 4c |.BNE notend....L|
000008f0 44 41 20 23 33 32 0d 07 08 0b 2e 6e 6f 74 65 6e |DA #32.....noten|
00000900 64 0d 07 12 0e 4a 53 52 20 6f 73 77 72 63 68 0d |d....JSR oswrch.|
00000910 07 1c 07 49 4e 58 0d 07 26 07 44 45 59 0d 07 30 |...INX..&.DEY..0|
00000920 0d 42 4e 45 20 6e 61 6d 65 73 0d 07 3a 0a 4c 44 |.BNE names..:.LD|
00000930 59 20 23 38 0d 07 44 0c 4a 53 52 20 73 70 63 73 |Y #8..D.JSR spcs|
00000940 0d 07 4e 0b 4c 44 41 20 74 6d 70 0d 07 58 07 43 |..N.LDA tmp..X.C|
00000950 4c 43 0d 07 62 0b 41 44 43 20 23 31 36 0d 07 6c |LC..b.ADC #16..l|
00000960 0b 53 54 41 20 74 6d 70 0d 07 76 0d 42 43 43 20 |.STA tmp..v.BCC |
00000970 68 6c 6f 6f 70 0d 07 80 0a 2e 68 64 6f 6e 65 0d |hloop.....hdone.|
00000980 07 8a 0c 4c 44 41 20 23 26 38 36 0d 07 94 0e 4a |...LDA #&86....J|
00000990 53 52 20 6f 73 62 79 74 65 0d 07 9e 0a 43 50 58 |SR osbyte....CPX|
000009a0 20 23 30 0d 07 a8 0e 42 45 51 20 6e 6f 6d 6f 72 | #0....BEQ nomor|
000009b0 65 0d 07 b2 0e 4a 53 52 20 6f 73 6e 65 77 6c 0d |e....JSR osnewl.|
000009c0 07 bc 0b 2e 6e 6f 6d 6f 72 65 0d 07 c6 0b 4a 4d |....nomore....JM|
000009d0 50 20 6f 75 74 0d 07 d0 05 3a 0d 07 da 0d 2e 6e |P out....:.....n|
000009e0 61 6d 65 6f 6e 6c 79 0d 07 e4 0e 4a 53 52 20 6f |ameonly....JSR o|
000009f0 73 6e 65 77 6c 0d 07 ee 0c 4c 44 59 20 23 26 46 |snewl....LDY #&F|
00000a00 46 0d 07 f8 0a 2e 70 6e 61 6d 65 0d 08 02 07 49 |F.....pname....I|
00000a10 4e 59 0d 08 0c 0f 4c 44 41 20 74 69 74 6c 65 2c |NY....LDA title,|
00000a20 59 0d 08 16 0e 4a 53 52 20 6f 73 77 72 63 68 0d |Y....JSR oswrch.|
00000a30 08 20 0d 42 4e 45 20 70 6e 61 6d 65 0d 08 2a 0e |. .BNE pname..*.|
00000a40 4a 53 52 20 6f 73 6e 65 77 6c 0d 08 34 07 52 54 |JSR osnewl..4.RT|
00000a50 53 0d 08 3e 05 3a 0d 08 48 09 2e 73 70 63 73 0d |S..>.:..H..spcs.|
00000a60 08 52 0b 4c 44 41 20 23 33 32 0d 08 5c 0a 2e 73 |.R.LDA #32..\..s|
00000a70 70 63 73 6c 0d 08 66 0e 4a 53 52 20 6f 73 77 72 |pcsl..f.JSR oswr|
00000a80 63 68 0d 08 70 07 44 45 59 0d 08 7a 0d 42 4e 45 |ch..p.DEY..z.BNE|
00000a90 20 73 70 63 73 6c 0d 08 84 07 52 54 53 0d 08 8e | spcsl....RTS...|
00000aa0 05 3a 0d 08 98 0a 2e 62 6d 6f 76 65 0d 08 a2 0a |.:.....bmove....|
00000ab0 4c 44 59 20 23 30 0d 08 ac 09 2e 6d 6f 76 65 0d |LDY #0.....move.|
00000ac0 08 b6 0b 4c 44 41 20 6c 65 6e 0d 08 c0 0c 84 41 |...LDA len.....A|
00000ad0 20 6c 65 6e 2b 31 0d 08 ca 0e 42 45 51 20 62 6d | len+1....BEQ bm|
00000ae0 6f 76 65 64 0d 08 d4 10 4c 44 41 20 28 66 72 6f |oved....LDA (fro|
00000af0 6d 29 2c 59 0d 08 de 0e 53 54 41 20 28 74 6f 29 |m),Y....STA (to)|
00000b00 2c 59 0d 08 e8 0c 49 4e 43 20 66 72 6f 6d 0d 08 |,Y....INC from..|
00000b10 f2 0e 42 4e 45 20 6e 6f 74 66 68 69 0d 08 fc 0e |..BNE notfhi....|
00000b20 49 4e 43 20 66 72 6f 6d 2b 31 0d 09 06 0b 2e 6e |INC from+1.....n|
00000b30 6f 74 66 68 69 0d 09 10 0a 49 4e 43 20 74 6f 0d |otfhi....INC to.|
00000b40 09 1a 0e 42 4e 45 20 6e 6f 74 74 68 69 0d 09 24 |...BNE notthi..$|
00000b50 0c 49 4e 43 20 74 6f 2b 31 0d 09 2e 0b 2e 6e 6f |.INC to+1.....no|
00000b60 74 74 68 69 0d 09 38 0b 44 45 43 20 6c 65 6e 0d |tthi..8.DEC len.|
00000b70 09 42 0b 4c 44 41 20 6c 65 6e 0d 09 4c 0c 43 4d |.B.LDA len..L.CM|
00000b80 50 20 23 26 46 46 0d 09 56 0c 42 4e 45 20 6d 6f |P #&FF..V.BNE mo|
00000b90 76 65 0d 09 60 0d 44 45 43 20 6c 65 6e 2b 31 0d |ve..`.DEC len+1.|
00000ba0 09 6a 0d 4c 44 41 20 6c 65 6e 2b 31 0d 09 74 0c |.j.LDA len+1..t.|
00000bb0 43 4d 50 20 23 26 46 46 0d 09 7e 0c 42 4e 45 20 |CMP #&FF..~.BNE |
00000bc0 6d 6f 76 65 0d 09 88 0b 2e 62 6d 6f 76 65 64 0d |move.....bmoved.|
00000bd0 09 92 07 52 54 53 0d 09 9c 05 3a 0d 09 a6 0c 2e |...RTS....:.....|
00000be0 73 74 61 72 63 6f 6d 0d 09 b0 07 54 58 41 0d 09 |starcom....TXA..|
00000bf0 ba 07 50 48 41 0d 09 c4 07 54 59 41 0d 09 ce 07 |..PHA....TYA....|
00000c00 50 48 41 0d 09 d8 10 4a 53 52 20 73 61 76 65 7a |PHA....JSR savez|
00000c10 65 72 6f 0d 09 e2 0a 4c 44 58 20 23 30 0d 09 ec |ero....LDX #0...|
00000c20 0b 53 54 59 20 74 6d 70 0d 09 f6 09 2e 63 6f 6d |.STY tmp.....com|
00000c30 31 0d 0a 00 0e 4c 44 41 20 63 6f 6d 73 2c 58 0d |1....LDA coms,X.|
00000c40 0a 0a 0c 43 4d 50 20 23 32 35 35 0d 0a 14 0d 42 |...CMP #255....B|
00000c50 45 51 20 6e 6f 63 6f 6d 0d 0a 1e 0b 4c 44 59 20 |EQ nocom....LDY |
00000c60 74 6d 70 0d 0a 28 09 2e 63 6f 6d 32 0d 0a 32 0e |tmp..(..com2..2.|
00000c70 4c 44 41 20 63 6f 6d 73 2c 58 0d 0a 3c 0e 42 45 |LDA coms,X..<.BE|
00000c80 51 20 67 6f 74 63 6f 6d 0d 0a 46 0f 4c 44 41 20 |Q gotcom..F.LDA |
00000c90 28 70 74 72 29 2c 59 0d 0a 50 0a 80 20 23 26 44 |(ptr),Y..P.. #&D|
00000ca0 46 0d 0a 5a 0e 43 4d 50 20 63 6f 6d 73 2c 58 0d |F..Z.CMP coms,X.|
00000cb0 0a 64 0f 42 4e 45 20 6e 65 78 74 6f 6e 65 0d 0a |.d.BNE nextone..|
00000cc0 6e 07 49 4e 59 0d 0a 78 07 49 4e 58 0d 0a 82 0c |n.INY..x.INX....|
00000cd0 42 4e 45 20 63 6f 6d 32 0d 0a 8c 0c 2e 6e 65 78 |BNE com2.....nex|
00000ce0 74 6f 6e 65 0d 0a 96 07 49 4e 58 0d 0a a0 0e 4c |tone....INX....L|
00000cf0 44 41 20 63 6f 6d 73 2c 58 0d 0a aa 0f 42 4e 45 |DA coms,X....BNE|
00000d00 20 6e 65 78 74 6f 6e 65 0d 0a b4 07 49 4e 58 0d | nextone....INX.|
00000d10 0a be 07 49 4e 58 0d 0a c8 07 49 4e 58 0d 0a d2 |...INX....INX...|
00000d20 0c 42 4e 45 20 63 6f 6d 31 0d 0a dc 0b 2e 67 6f |.BNE com1.....go|
00000d30 74 63 6f 6d 0d 0a e6 07 49 4e 58 0d 0a f0 0e 4c |tcom....INX....L|
00000d40 44 41 20 63 6f 6d 73 2c 58 0d 0a fa 0b 53 54 41 |DA coms,X....STA|
00000d50 20 6d 65 6d 0d 0b 04 10 4c 44 41 20 63 6f 6d 73 | mem....LDA coms|
00000d60 2b 31 2c 58 0d 0b 0e 0d 53 54 41 20 6d 65 6d 2b |+1,X....STA mem+|
00000d70 31 0d 0b 18 0a 2e 6d 6f 76 65 79 0d 0b 22 0f 4c |1.....movey..".L|
00000d80 44 41 20 28 70 74 72 29 2c 59 0d 0b 2c 0b 43 4d |DA (ptr),Y..,.CM|
00000d90 50 20 23 31 33 0d 0b 36 0e 42 45 51 20 79 6d 6f |P #13..6.BEQ ymo|
00000da0 76 65 64 0d 0b 40 07 49 4e 59 0d 0b 4a 0b 43 4d |ved..@.INY..J.CM|
00000db0 50 20 23 33 32 0d 0b 54 0d 42 45 51 20 6d 6f 76 |P #32..T.BEQ mov|
00000dc0 65 79 0d 0b 5e 07 44 45 59 0d 0b 68 0b 2e 79 6d |ey..^.DEY..h..ym|
00000dd0 6f 76 65 64 0d 0b 72 0d 4a 4d 50 20 28 6d 65 6d |oved..r.JMP (mem|
00000de0 29 0d 0b 7c 05 3a 0d 0b 86 0a 2e 6e 6f 63 6f 6d |)..|.:.....nocom|
00000df0 0d 0b 90 0a 4c 44 58 20 23 30 0d 0b 9a 0b 53 54 |....LDX #0....ST|
00000e00 58 20 69 6e 64 0d 0b a4 0b 2e 63 68 6b 69 6e 64 |X ind.....chkind|
00000e10 0d 0b ae 0b 4c 44 58 20 69 6e 64 0d 0b b8 0f 4c |....LDX ind....L|
00000e20 44 41 20 69 6e 64 65 78 2c 58 0d 0b c2 0c 42 45 |DA index,X....BE|
00000e30 51 20 6e 6f 6e 65 0d 0b cc 0b 4c 44 59 20 74 6d |Q none....LDY tm|
00000e40 70 0d 0b d6 0b 4c 44 41 20 23 31 31 0d 0b e0 0d |p....LDA #11....|
00000e50 53 54 41 20 63 6f 75 6e 74 0d 0b ea 0a 2e 63 6c |STA count.....cl|
00000e60 6f 6f 70 0d 0b f4 0f 4c 44 41 20 69 6e 64 65 78 |oop....LDA index|
00000e70 2c 58 0d 0b fe 0e 42 45 51 20 67 6f 74 69 6e 64 |,X....BEQ gotind|
00000e80 0d 0c 08 0f 4c 44 41 20 28 70 74 72 29 2c 59 0d |....LDA (ptr),Y.|
00000e90 0c 12 0a 80 20 23 26 44 46 0d 0c 1c 0f 43 4d 50 |.... #&DF....CMP|
00000ea0 20 69 6e 64 65 78 2c 58 0d 0c 26 0f 42 4e 45 20 | index,X..&.BNE |
00000eb0 6e 65 78 74 69 6e 64 0d 0c 30 07 49 4e 59 0d 0c |nextind..0.INY..|
00000ec0 3a 07 49 4e 58 0d 0c 44 0d 44 45 43 20 63 6f 75 |:.INX..D.DEC cou|
00000ed0 6e 74 0d 0c 4e 0d 42 4e 45 20 63 6c 6f 6f 70 0d |nt..N.BNE cloop.|
00000ee0 0c 58 0b 2e 67 6f 74 69 6e 64 0d 0c 62 0f 4c 44 |.X..gotind..b.LD|
00000ef0 41 20 28 70 74 72 29 2c 59 0d 0c 6c 0b 43 4d 50 |A (ptr),Y..l.CMP|
00000f00 20 23 33 32 0d 0c 76 0d 42 45 51 20 69 6e 64 6f | #32..v.BEQ indo|
00000f10 6b 0d 0c 80 0b 43 4d 50 20 23 31 33 0d 0c 8a 0d |k....CMP #13....|
00000f20 42 45 51 20 69 6e 64 6f 6b 0d 0c 94 0c 2e 6e 65 |BEQ indok.....ne|
00000f30 78 74 69 6e 64 0d 0c 9e 0b 4c 44 41 20 69 6e 64 |xtind....LDA ind|
00000f40 0d 0c a8 07 43 4c 43 0d 0c b2 0b 41 44 43 20 23 |....CLC....ADC #|
00000f50 31 39 0d 0c bc 0b 53 54 41 20 69 6e 64 0d 0c c6 |19....STA ind...|
00000f60 0e 42 43 43 20 63 68 6b 69 6e 64 0d 0c d0 09 2e |.BCC chkind.....|
00000f70 6e 6f 6e 65 0d 0c da 0b 4a 4d 50 20 6f 75 74 0d |none....JMP out.|
00000f80 0c e4 0a 2e 69 6e 64 6f 6b 0d 0c ee 0b 4c 44 58 |....indok....LDX|
00000f90 20 69 6e 64 0d 0c f8 12 4c 44 41 20 69 6e 64 65 | ind....LDA inde|
00000fa0 78 2b 31 31 2c 58 0d 0d 02 0c 53 54 41 20 66 72 |x+11,X....STA fr|
00000fb0 6f 6d 0d 0d 0c 12 4c 44 41 20 69 6e 64 65 78 2b |om....LDA index+|
00000fc0 31 32 2c 58 0d 0d 16 0e 53 54 41 20 66 72 6f 6d |12,X....STA from|
00000fd0 2b 31 0d 0d 20 12 4c 44 41 20 69 6e 64 65 78 2b |+1.. .LDA index+|
00000fe0 31 33 2c 58 0d 0d 2a 0a 53 54 41 20 74 6f 0d 0d |13,X..*.STA to..|
00000ff0 34 12 4c 44 41 20 69 6e 64 65 78 2b 31 34 2c 58 |4.LDA index+14,X|
00001000 0d 0d 3e 0c 53 54 41 20 74 6f 2b 31 0d 0d 48 12 |..>.STA to+1..H.|
00001010 4c 44 41 20 69 6e 64 65 78 2b 31 37 2c 58 0d 0d |LDA index+17,X..|
00001020 52 0b 53 54 41 20 6c 65 6e 0d 0d 5c 12 4c 44 41 |R.STA len..\.LDA|
00001030 20 69 6e 64 65 78 2b 31 38 2c 58 0d 0d 66 0d 53 | index+18,X..f.S|
00001040 54 41 20 6c 65 6e 2b 31 0d 0d 70 0d 4a 53 52 20 |TA len+1..p.JSR |
00001050 62 6d 6f 76 65 0d 0d 7a 12 4c 44 41 20 69 6e 64 |bmove..z.LDA ind|
00001060 65 78 2b 31 35 2c 58 0d 0d 84 0d 53 54 41 20 6a |ex+15,X....STA j|
00001070 73 72 2b 31 0d 0d 8e 12 4c 44 41 20 69 6e 64 65 |sr+1....LDA inde|
00001080 78 2b 31 36 2c 58 0d 0d 98 0d 53 54 41 20 6a 73 |x+16,X....STA js|
00001090 72 2b 32 0d 0d a2 0b 4c 44 41 20 70 74 72 0d 0d |r+2....LDA ptr..|
000010a0 ac 0c 53 54 41 20 6f 70 74 72 0d 0d b6 0d 4c 44 |..STA optr....LD|
000010b0 41 20 70 74 72 2b 31 0d 0d c0 0e 53 54 41 20 6f |A ptr+1....STA o|
000010c0 70 74 72 2b 31 0d 0d ca 0a 4c 44 59 20 23 30 0d |ptr+1....LDY #0.|
000010d0 0d d4 0c 2e 6d 6f 76 65 70 74 72 0d 0d de 0b 49 |....moveptr....I|
000010e0 4e 43 20 70 74 72 0d 0d e8 0e 42 4e 45 20 6e 6f |NC ptr....BNE no|
000010f0 74 70 68 69 0d 0d f2 0d 49 4e 43 20 70 74 72 2b |tphi....INC ptr+|
00001100 31 0d 0d fc 0b 2e 6e 6f 74 70 68 69 0d 0e 06 0f |1.....notphi....|
00001110 4c 44 41 20 28 70 74 72 29 2c 59 0d 0e 10 0d 43 |LDA (ptr),Y....C|
00001120 4d 50 20 23 97 22 2a 22 0d 0e 1a 0f 42 45 51 20 |MP #."*"....BEQ |
00001130 6d 6f 76 65 70 74 72 0d 0e 24 0d 43 4d 50 20 23 |moveptr..$.CMP #|
00001140 97 22 20 22 0d 0e 2e 0f 42 45 51 20 6d 6f 76 65 |." "....BEQ move|
00001150 70 74 72 0d 0e 38 10 4a 53 52 20 6c 6f 61 64 7a |ptr..8.JSR loadz|
00001160 65 72 6f 0d 0e 42 07 50 4c 41 0d 0e 4c 07 54 41 |ero..B.PLA..L.TA|
00001170 59 0d 0e 56 09 53 54 59 20 79 0d 0e 60 07 50 4c |Y..V.STY y..`.PL|
00001180 41 0d 0e 6a 07 54 41 58 0d 0e 74 09 53 54 58 20 |A..j.TAX..t.STX |
00001190 78 0d 0e 7e 07 50 4c 41 0d 0e 88 09 53 54 41 20 |x..~.PLA....STA |
000011a0 61 0d 0e 92 07 50 4c 41 0d 0e 9c 09 53 54 41 20 |a....PLA....STA |
000011b0 70 0d 0e a6 07 50 48 41 0d 0e b0 09 4c 44 41 20 |p....PHA....LDA |
000011c0 61 0d 0e ba 07 50 4c 50 0d 0e c4 08 2e 6a 73 72 |a....PLP.....jsr|
000011d0 0d 0e ce 0d 4a 53 52 20 26 43 41 46 45 0d 0e d8 |....JSR &CAFE...|
000011e0 0c 4c 44 41 20 6f 70 74 72 0d 0e e2 0b 53 54 41 |.LDA optr....STA|
000011f0 20 70 74 72 0d 0e ec 0e 4c 44 41 20 6f 70 74 72 | ptr....LDA optr|
00001200 2b 31 0d 0e f6 0d 53 54 41 20 70 74 72 2b 31 0d |+1....STA ptr+1.|
00001210 0f 00 09 4c 44 58 20 78 0d 0f 0a 09 4c 44 59 20 |...LDX x....LDY |
00001220 79 0d 0f 14 09 4c 44 41 20 70 0d 0f 1e 07 50 48 |y....LDA p....PH|
00001230 41 0d 0f 28 0a 4c 44 41 20 23 30 0d 0f 32 07 50 |A..(.LDA #0..2.P|
00001240 4c 50 0d 0f 3c 07 52 54 53 0d 0f 46 05 3a 0d 0f |LP..<.RTS..F.:..|
00001250 50 0b 2e 63 6f 6d 6f 75 74 0d 0f 5a 10 4a 53 52 |P..comout..Z.JSR|
00001260 20 6c 6f 61 64 7a 65 72 6f 0d 0f 64 07 50 4c 41 | loadzero..d.PLA|
00001270 0d 0f 6e 07 54 41 58 0d 0f 78 07 50 4c 41 0d 0f |..n.TAX..x.PLA..|
00001280 82 07 54 41 58 0d 0f 8c 07 50 4c 41 0d 0f 96 0a |..TAX....PLA....|
00001290 4c 44 41 20 23 30 0d 0f a0 07 50 4c 50 0d 0f aa |LDA #0....PLP...|
000012a0 07 52 54 53 0d 0f b4 05 3a 0d 0f be 0a 2e 63 6c |.RTS....:.....cl|
000012b0 65 61 72 0d 0f c8 0b 43 4d 50 20 23 31 33 0d 0f |ear....CMP #13..|
000012c0 d2 0e 42 4e 45 20 6e 6f 74 63 6c 72 0d 0f dc 0a |..BNE notclr....|
000012d0 4c 44 59 20 23 30 0d 0f e6 07 54 59 41 0d 0f f0 |LDY #0....TYA...|
000012e0 0b 2e 63 6c 72 69 6e 64 0d 0f fa 0f 53 54 41 20 |..clrind....STA |
000012f0 69 6e 64 65 78 2c 59 0d 10 04 07 44 45 59 0d 10 |index,Y....DEY..|
00001300 0e 0e 42 4e 45 20 63 6c 72 69 6e 64 0d 10 18 14 |..BNE clrind....|
00001310 4c 44 58 20 23 73 74 6f 72 65 20 83 20 32 35 36 |LDX #store . 256|
00001320 0d 10 22 0b 53 54 58 20 6d 65 6d 0d 10 2c 10 53 |..".STX mem..,.S|
00001330 54 58 20 69 6e 64 65 78 2b 31 31 0d 10 36 14 4c |TX index+11..6.L|
00001340 44 58 20 23 73 74 6f 72 65 20 81 20 32 35 36 0d |DX #store . 256.|
00001350 10 40 0d 53 54 58 20 6d 65 6d 2b 31 0d 10 4a 10 |.@.STX mem+1..J.|
00001360 53 54 58 20 69 6e 64 65 78 2b 31 32 0d 10 54 0c |STX index+12..T.|
00001370 4c 44 41 20 23 26 43 30 0d 10 5e 07 53 45 43 0d |LDA #&C0..^.SEC.|
00001380 10 68 0d 53 42 43 20 6d 65 6d 2b 31 0d 10 72 11 |.h.SBC mem+1..r.|
00001390 53 54 41 20 6d 65 6d 66 72 65 65 2b 31 0d 10 7c |STA memfree+1..||
000013a0 0a 4c 44 41 20 23 30 0d 10 86 0c 53 54 41 20 69 |.LDA #0....STA i|
000013b0 70 74 72 0d 10 90 0b 53 54 41 20 6e 75 6d 0d 10 |ptr....STA num..|
000013c0 9a 0f 53 54 41 20 6d 65 6d 66 72 65 65 0d 10 a4 |..STA memfree...|
000013d0 0e 4a 4d 50 20 63 6f 6d 6f 75 74 0d 10 ae 0b 2e |.JMP comout.....|
000013e0 6e 6f 74 63 6c 72 0d 10 b8 0b 4a 4d 50 20 6f 75 |notclr....JMP ou|
000013f0 74 0d 10 c2 05 3a 0d 10 cc 09 2e 64 61 74 61 0d |t....:.....data.|
00001400 10 d6 0b 43 4d 50 20 23 31 33 0d 10 e0 0e 42 4e |...CMP #13....BN|
00001410 45 20 6e 6f 74 63 6c 72 0d 10 ea 0d 4c 44 41 20 |E notclr....LDA |
00001420 69 6e 64 65 78 0d 10 f4 0d 42 45 51 20 73 64 6f |index....BEQ sdo|
00001430 6e 65 0d 10 fe 14 4c 44 58 20 23 64 68 65 61 64 |ne....LDX #dhead|
00001440 20 83 20 32 35 36 0d 11 08 14 4c 44 59 20 23 64 | . 256....LDY #d|
00001450 68 65 61 64 20 81 20 32 35 36 0d 11 12 0c 4a 53 |head . 256....JS|
00001460 52 20 6d 65 73 73 0d 11 1c 0a 4c 44 58 20 23 30 |R mess....LDX #0|
00001470 0d 11 26 0b 53 54 58 20 74 6d 70 0d 11 30 0b 2e |..&.STX tmp..0..|
00001480 73 6e 61 6d 65 73 0d 11 3a 0b 4c 44 58 20 74 6d |snames..:.LDX tm|
00001490 70 0d 11 44 0f 4c 44 41 20 69 6e 64 65 78 2c 58 |p..D.LDA index,X|
000014a0 0d 11 4e 0d 42 45 51 20 73 64 6f 6e 65 0d 11 58 |..N.BEQ sdone..X|
000014b0 0b 4c 44 59 20 23 31 31 0d 11 62 0a 2e 64 6c 6f |.LDY #11..b..dlo|
000014c0 6f 70 0d 11 6c 0f 4c 44 41 20 69 6e 64 65 78 2c |op..l.LDA index,|
000014d0 58 0d 11 76 0d 42 4e 45 20 6e 6f 73 70 63 0d 11 |X..v.BNE nospc..|
000014e0 80 0b 4c 44 41 20 23 33 32 0d 11 8a 0a 2e 6e 6f |..LDA #32.....no|
000014f0 73 70 63 0d 11 94 0e 4a 53 52 20 6f 73 77 72 63 |spc....JSR oswrc|
00001500 68 0d 11 9e 07 49 4e 58 0d 11 a8 07 44 45 59 0d |h....INX....DEY.|
00001510 11 b2 0d 42 4e 45 20 64 6c 6f 6f 70 0d 11 bc 0b |...BNE dloop....|
00001520 4c 44 41 20 74 6d 70 0d 11 c6 07 43 4c 43 0d 11 |LDA tmp....CLC..|
00001530 d0 0b 41 44 43 20 23 31 33 0d 11 da 07 50 48 41 |..ADC #13....PHA|
00001540 0d 11 e4 07 54 41 59 0d 11 ee 0d 4a 53 52 20 70 |....TAY....JSR p|
00001550 64 61 74 61 0d 11 f8 07 49 4e 59 0d 12 02 07 49 |data....INY....I|
00001560 4e 59 0d 12 0c 0d 4a 53 52 20 70 64 61 74 61 0d |NY....JSR pdata.|
00001570 12 16 07 49 4e 59 0d 12 20 07 49 4e 59 0d 12 2a |...INY.. .INY..*|
00001580 0d 4a 53 52 20 70 64 61 74 61 0d 12 34 07 50 4c |.JSR pdata..4.PL|
00001590 41 0d 12 3e 07 54 41 59 0d 12 48 07 44 45 59 0d |A..>.TAY..H.DEY.|
000015a0 12 52 07 44 45 59 0d 12 5c 0d 4a 53 52 20 70 64 |.R.DEY..\.JSR pd|
000015b0 61 74 61 0d 12 66 0e 4a 53 52 20 6f 73 6e 65 77 |ata..f.JSR osnew|
000015c0 6c 0d 12 70 0b 4c 44 41 20 74 6d 70 0d 12 7a 07 |l..p.LDA tmp..z.|
000015d0 43 4c 43 0d 12 84 0b 41 44 43 20 23 31 39 0d 12 |CLC....ADC #19..|
000015e0 8e 0b 53 54 41 20 74 6d 70 0d 12 98 0e 42 43 43 |..STA tmp....BCC|
000015f0 20 73 6e 61 6d 65 73 0d 12 a2 0a 2e 73 64 6f 6e | snames.....sdon|
00001600 65 0d 12 ac 0d 4c 44 41 20 23 97 22 26 22 0d 12 |e....LDA #."&"..|
00001610 b6 0e 4a 53 52 20 6f 73 77 72 63 68 0d 12 c0 11 |..JSR oswrch....|
00001620 4c 44 41 20 6d 65 6d 66 72 65 65 2b 31 0d 12 ca |LDA memfree+1...|
00001630 0b 4a 53 52 20 68 65 78 0d 12 d4 0f 4c 44 41 20 |.JSR hex....LDA |
00001640 6d 65 6d 66 72 65 65 0d 12 de 0b 4a 53 52 20 68 |memfree....JSR h|
00001650 65 78 0d 12 e8 14 4c 44 58 20 23 64 66 6f 6f 74 |ex....LDX #dfoot|
00001660 20 83 20 32 35 36 0d 12 f2 14 4c 44 59 20 23 64 | . 256....LDY #d|
00001670 66 6f 6f 74 20 81 20 32 35 36 0d 12 fc 0c 4a 53 |foot . 256....JS|
00001680 52 20 6d 65 73 73 0d 13 06 0e 4a 4d 50 20 63 6f |R mess....JMP co|
00001690 6d 6f 75 74 0d 13 10 05 3a 0d 13 1a 0a 2e 70 64 |mout....:.....pd|
000016a0 61 74 61 0d 13 24 0b 4c 44 41 20 23 33 32 0d 13 |ata..$.LDA #32..|
000016b0 2e 0e 4a 53 52 20 6f 73 77 72 63 68 0d 13 38 0e |..JSR oswrch..8.|
000016c0 4a 53 52 20 6f 73 77 72 63 68 0d 13 42 11 4c 44 |JSR oswrch..B.LD|
000016d0 41 20 69 6e 64 65 78 2b 31 2c 59 0d 13 4c 0b 4a |A index+1,Y..L.J|
000016e0 53 52 20 68 65 78 0d 13 56 0f 4c 44 41 20 69 6e |SR hex..V.LDA in|
000016f0 64 65 78 2c 59 0d 13 60 0b 4a 4d 50 20 68 65 78 |dex,Y..`.JMP hex|
00001700 0d 13 6a 05 3a 0d 13 74 0a 2e 63 61 63 68 65 0d |..j.:..t..cache.|
00001710 13 7e 0b 43 4d 50 20 23 31 33 0d 13 88 0f 42 4e |.~.CMP #13....BN|
00001720 45 20 64 6f 63 61 63 68 65 0d 13 92 13 4c 44 58 |E docache....LDX|
00001730 20 23 63 73 79 6e 20 83 20 32 35 36 0d 13 9c 13 | #csyn . 256....|
00001740 4c 44 59 20 23 63 73 79 6e 20 81 20 32 35 36 0d |LDY #csyn . 256.|
00001750 13 a6 0d 4a 4d 50 20 65 72 72 6f 72 0d 13 b0 0c |...JMP error....|
00001760 2e 64 6f 63 61 63 68 65 0d 13 ba 0a 4c 44 58 20 |.docache....LDX |
00001770 23 30 0d 13 c4 0a 2e 78 6e 61 6d 65 0d 13 ce 0f |#0.....xname....|
00001780 4c 44 41 20 28 70 74 72 29 2c 59 0d 13 d8 0f 53 |LDA (ptr),Y....S|
00001790 54 41 20 66 6e 61 6d 65 2c 58 0d 13 e2 07 49 4e |TA fname,X....IN|
000017a0 59 0d 13 ec 07 49 4e 58 0d 13 f6 0b 43 4d 50 20 |Y....INX....CMP |
000017b0 23 31 33 0d 14 00 0d 42 4e 45 20 78 6e 61 6d 65 |#13....BNE xname|
000017c0 0d 14 0a 14 4c 44 58 20 23 66 6e 61 6d 65 20 83 |....LDX #fname .|
000017d0 20 32 35 36 0d 14 14 14 4c 44 59 20 23 66 6e 61 | 256....LDY #fna|
000017e0 6d 65 20 81 20 32 35 36 0d 14 1e 0c 4c 44 41 20 |me . 256....LDA |
000017f0 23 26 34 30 0d 14 28 0e 4a 53 52 20 6f 73 66 69 |#&40..(.JSR osfi|
00001800 6e 64 0d 14 32 0a 43 4d 50 20 23 30 0d 14 3c 0e |nd..2.CMP #0..<.|
00001810 42 45 51 20 6e 6f 66 69 6c 65 0d 14 46 07 54 41 |BEQ nofile..F.TA|
00001820 59 0d 14 50 0c 4c 44 58 20 23 65 78 74 0d 14 5a |Y..P.LDX #ext..Z|
00001830 0a 4c 44 41 20 23 32 0d 14 64 0e 4a 53 52 20 6f |.LDA #2..d.JSR o|
00001840 73 61 72 67 73 0d 14 6e 0a 4c 44 41 20 23 30 0d |sargs..n.LDA #0.|
00001850 14 78 0e 4a 53 52 20 6f 73 66 69 6e 64 0d 14 82 |.x.JSR osfind...|
00001860 0b 4c 44 41 20 6e 75 6d 0d 14 8c 0b 43 4d 50 20 |.LDA num....CMP |
00001870 23 31 32 0d 14 96 0e 42 45 51 20 6e 6f 72 6f 6f |#12....BEQ noroo|
00001880 6d 0d 14 a0 0d 4c 44 41 20 65 78 74 2b 32 0d 14 |m....LDA ext+2..|
00001890 aa 0c 84 41 20 65 78 74 2b 33 0d 14 b4 0e 42 4e |...A ext+3....BN|
000018a0 45 20 74 6f 6f 62 69 67 0d 14 be 0d 4c 44 41 20 |E toobig....LDA |
000018b0 65 78 74 2b 31 0d 14 c8 11 43 4d 50 20 6d 65 6d |ext+1....CMP mem|
000018c0 66 72 65 65 2b 31 0d 14 d2 0a 42 43 43 20 6f 6b |free+1....BCC ok|
000018d0 0d 14 dc 0e 42 4e 45 20 74 6f 6f 62 69 67 0d 14 |....BNE toobig..|
000018e0 e6 0b 4c 44 41 20 65 78 74 0d 14 f0 0f 43 4d 50 |..LDA ext....CMP|
000018f0 20 6d 65 6d 66 72 65 65 0d 14 fa 0a 42 45 51 20 | memfree....BEQ |
00001900 6f 6b 0d 15 04 0a 42 43 43 20 6f 6b 0d 15 0e 05 |ok....BCC ok....|
00001910 3a 0d 15 18 0b 2e 74 6f 6f 62 69 67 0d 15 22 12 |:.....toobig..".|
00001920 4c 44 58 20 23 66 74 62 20 83 20 32 35 36 0d 15 |LDX #ftb . 256..|
00001930 2c 12 4c 44 59 20 23 66 74 62 20 81 20 32 35 36 |,.LDY #ftb . 256|
00001940 0d 15 36 0d 4a 4d 50 20 65 72 72 6f 72 0d 15 40 |..6.JMP error..@|
00001950 0b 2e 6e 6f 66 69 6c 65 0d 15 4a 12 4c 44 58 20 |..nofile..J.LDX |
00001960 23 66 6e 66 20 83 20 32 35 36 0d 15 54 12 4c 44 |#fnf . 256..T.LD|
00001970 59 20 23 66 6e 66 20 81 20 32 35 36 0d 15 5e 0d |Y #fnf . 256..^.|
00001980 4a 4d 50 20 65 72 72 6f 72 0d 15 68 0b 2e 6e 6f |JMP error..h..no|
00001990 72 6f 6f 6d 0d 15 72 12 4c 44 58 20 23 6e 69 73 |room..r.LDX #nis|
000019a0 20 83 20 32 35 36 0d 15 7c 12 4c 44 59 20 23 6e | . 256..|.LDY #n|
000019b0 69 73 20 81 20 32 35 36 0d 15 86 0d 4a 4d 50 20 |is . 256....JMP |
000019c0 65 72 72 6f 72 0d 15 90 05 3a 0d 15 9a 07 2e 6f |error....:.....o|
000019d0 6b 0d 15 a4 0c 4c 44 59 20 23 26 31 34 0d 15 ae |k....LDY #&14...|
000019e0 0c 4c 44 41 20 23 26 46 46 0d 15 b8 0b 2e 63 6c |.LDA #&FF.....cl|
000019f0 72 62 6c 6b 0d 15 c2 0f 53 54 41 20 66 69 6e 66 |rblk....STA finf|
00001a00 6f 2c 59 0d 15 cc 07 44 45 59 0d 15 d6 0e 42 4e |o,Y....DEY....BN|
00001a10 45 20 63 6c 72 62 6c 6b 0d 15 e0 14 4c 44 41 20 |E clrblk....LDA |
00001a20 23 66 6e 61 6d 65 20 83 20 32 35 36 0d 15 ea 0d |#fname . 256....|
00001a30 53 54 41 20 66 69 6e 66 6f 0d 15 f4 14 4c 44 41 |STA finfo....LDA|
00001a40 20 23 66 6e 61 6d 65 20 81 20 32 35 36 0d 15 fe | #fname . 256...|
00001a50 0f 53 54 41 20 66 69 6e 66 6f 2b 31 0d 16 08 14 |.STA finfo+1....|
00001a60 4c 44 58 20 23 66 69 6e 66 6f 20 83 20 32 35 36 |LDX #finfo . 256|
00001a70 0d 16 12 14 4c 44 59 20 23 66 69 6e 66 6f 20 81 |....LDY #finfo .|
00001a80 20 32 35 36 0d 16 1c 0c 4c 44 41 20 23 26 46 46 | 256....LDA #&FF|
00001a90 0d 16 26 0e 4a 53 52 20 6f 73 66 69 6c 65 0d 16 |..&.JSR osfile..|
00001aa0 30 0c 4c 44 59 20 69 70 74 72 0d 16 3a 0f 4c 44 |0.LDY iptr..:.LD|
00001ab0 41 20 66 69 6e 66 6f 2b 32 0d 16 44 0c 53 54 41 |A finfo+2..D.STA|
00001ac0 20 66 72 6f 6d 0d 16 4e 12 53 54 41 20 69 6e 64 | from..N.STA ind|
00001ad0 65 78 2b 31 33 2c 59 0d 16 58 0f 4c 44 41 20 66 |ex+13,Y..X.LDA f|
00001ae0 69 6e 66 6f 2b 33 0d 16 62 0e 53 54 41 20 66 72 |info+3..b.STA fr|
00001af0 6f 6d 2b 31 0d 16 6c 12 53 54 41 20 69 6e 64 65 |om+1..l.STA inde|
00001b00 78 2b 31 34 2c 59 0d 16 76 12 4c 44 41 20 69 6e |x+14,Y..v.LDA in|
00001b10 64 65 78 2b 31 31 2c 59 0d 16 80 0a 53 54 41 20 |dex+11,Y....STA |
00001b20 74 6f 0d 16 8a 12 4c 44 41 20 69 6e 64 65 78 2b |to....LDA index+|
00001b30 31 32 2c 59 0d 16 94 0c 53 54 41 20 74 6f 2b 31 |12,Y....STA to+1|
00001b40 0d 16 9e 0f 4c 44 41 20 66 69 6e 66 6f 2b 36 0d |....LDA finfo+6.|
00001b50 16 a8 12 53 54 41 20 69 6e 64 65 78 2b 31 35 2c |...STA index+15,|
00001b60 59 0d 16 b2 0f 4c 44 41 20 66 69 6e 66 6f 2b 37 |Y....LDA finfo+7|
00001b70 0d 16 bc 12 53 54 41 20 69 6e 64 65 78 2b 31 36 |....STA index+16|
00001b80 2c 59 0d 16 c6 0b 4c 44 41 20 65 78 74 0d 16 d0 |,Y....LDA ext...|
00001b90 12 53 54 41 20 69 6e 64 65 78 2b 31 37 2c 59 0d |.STA index+17,Y.|
00001ba0 16 da 0d 4c 44 41 20 65 78 74 2b 31 0d 16 e4 12 |...LDA ext+1....|
00001bb0 53 54 41 20 69 6e 64 65 78 2b 31 38 2c 59 0d 16 |STA index+18,Y..|
00001bc0 ee 0f 4c 44 41 20 6d 65 6d 66 72 65 65 0d 16 f8 |..LDA memfree...|
00001bd0 07 53 45 43 0d 17 02 0b 53 42 43 20 6c 65 6e 0d |.SEC....SBC len.|
00001be0 17 0c 0f 53 54 41 20 6d 65 6d 66 72 65 65 0d 17 |...STA memfree..|
00001bf0 16 11 4c 44 41 20 6d 65 6d 66 72 65 65 2b 31 0d |..LDA memfree+1.|
00001c00 17 20 0d 53 42 43 20 6c 65 6e 2b 31 0d 17 2a 11 |. .SBC len+1..*.|
00001c10 53 54 41 20 6d 65 6d 66 72 65 65 2b 31 0d 17 34 |STA memfree+1..4|
00001c20 0d 4a 53 52 20 62 6d 6f 76 65 0d 17 3e 0a 4c 44 |.JSR bmove..>.LD|
00001c30 58 20 23 30 0d 17 48 09 2e 66 72 65 74 0d 17 52 |X #0..H..fret..R|
00001c40 07 49 4e 58 0d 17 5c 0f 4c 44 41 20 66 6e 61 6d |.INX..\.LDA fnam|
00001c50 65 2c 58 0d 17 66 0b 43 4d 50 20 23 33 32 0d 17 |e,X..f.CMP #32..|
00001c60 70 0c 42 45 51 20 6e 64 6f 74 0d 17 7a 0b 43 4d |p.BEQ ndot..z.CM|
00001c70 50 20 23 31 33 0d 17 84 0c 42 4e 45 20 66 72 65 |P #13....BNE fre|
00001c80 74 0d 17 8e 09 2e 6e 64 6f 74 0d 17 98 07 44 45 |t.....ndot....DE|
00001c90 58 0d 17 a2 0d 42 45 51 20 67 6f 74 69 74 0d 17 |X....BEQ gotit..|
00001ca0 ac 0f 4c 44 41 20 66 6e 61 6d 65 2c 58 0d 17 b6 |..LDA fname,X...|
00001cb0 0d 43 4d 50 20 23 97 22 2e 22 0d 17 c0 0c 42 4e |.CMP #."."....BN|
00001cc0 45 20 6e 64 6f 74 0d 17 ca 07 49 4e 58 0d 17 d4 |E ndot....INX...|
00001cd0 0a 2e 67 6f 74 69 74 0d 17 de 0b 4c 44 59 20 23 |..gotit....LDY #|
00001ce0 31 31 0d 17 e8 0b 53 54 59 20 74 6d 70 0d 17 f2 |11....STY tmp...|
00001cf0 0c 4c 44 59 20 69 70 74 72 0d 17 fc 0a 2e 6d 6e |.LDY iptr.....mn|
00001d00 61 6d 65 0d 18 06 0f 4c 44 41 20 66 6e 61 6d 65 |ame....LDA fname|
00001d10 2c 58 0d 18 10 0b 43 4d 50 20 23 33 32 0d 18 1a |,X....CMP #32...|
00001d20 0e 42 45 51 20 6d 6e 64 6f 6e 65 0d 18 24 0b 43 |.BEQ mndone..$.C|
00001d30 4d 50 20 23 31 33 0d 18 2e 0e 42 45 51 20 6d 6e |MP #13....BEQ mn|
00001d40 64 6f 6e 65 0d 18 38 0f 53 54 41 20 69 6e 64 65 |done..8.STA inde|
00001d50 78 2c 59 0d 18 42 07 49 4e 58 0d 18 4c 07 49 4e |x,Y..B.INX..L.IN|
00001d60 59 0d 18 56 0b 44 45 43 20 74 6d 70 0d 18 60 0d |Y..V.DEC tmp..`.|
00001d70 42 4e 45 20 6d 6e 61 6d 65 0d 18 6a 0b 2e 6d 6e |BNE mname..j..mn|
00001d80 64 6f 6e 65 0d 18 74 0b 4c 44 41 20 6e 75 6d 0d |done..t.LDA num.|
00001d90 18 7e 0b 43 4d 50 20 23 31 35 0d 18 88 0d 42 45 |.~.CMP #15....BE|
00001da0 51 20 6e 6f 69 6e 63 0d 18 92 0c 4c 44 41 20 69 |Q noinc....LDA i|
00001db0 70 74 72 0d 18 9c 07 43 4c 43 0d 18 a6 0b 41 44 |ptr....CLC....AD|
00001dc0 43 20 23 31 39 0d 18 b0 0c 53 54 41 20 69 70 74 |C #19....STA ipt|
00001dd0 72 0d 18 ba 07 54 41 59 0d 18 c4 0a 4c 44 41 20 |r....TAY....LDA |
00001de0 74 6f 0d 18 ce 12 53 54 41 20 69 6e 64 65 78 2b |to....STA index+|
00001df0 31 31 2c 59 0d 18 d8 0c 4c 44 41 20 74 6f 2b 31 |11,Y....LDA to+1|
00001e00 0d 18 e2 12 53 54 41 20 69 6e 64 65 78 2b 31 32 |....STA index+12|
00001e10 2c 59 0d 18 ec 0a 2e 6e 6f 69 6e 63 0d 18 f6 0b |,Y.....noinc....|
00001e20 49 4e 43 20 6e 75 6d 0d 19 00 0e 4a 4d 50 20 63 |INC num....JMP c|
00001e30 6f 6d 6f 75 74 0d 19 0a 05 3a 0d 19 14 0a 2e 73 |omout....:.....s|
00001e40 63 72 61 70 0d 19 1e 0b 43 4d 50 20 23 31 33 0d |crap....CMP #13.|
00001e50 19 28 0f 42 4e 45 20 64 6f 73 63 72 61 70 0d 19 |.(.BNE doscrap..|
00001e60 32 13 4c 44 58 20 23 73 73 79 6e 20 83 20 32 35 |2.LDX #ssyn . 25|
00001e70 36 0d 19 3c 13 4c 44 59 20 23 73 73 79 6e 20 81 |6..<.LDY #ssyn .|
00001e80 20 32 35 36 0d 19 46 0d 4a 4d 50 20 65 72 72 6f | 256..F.JMP erro|
00001e90 72 0d 19 50 0c 2e 64 6f 73 63 72 61 70 0d 19 5a |r..P..doscrap..Z|
00001ea0 0a 4c 44 58 20 23 30 0d 19 64 0b 2e 73 63 72 61 |.LDX #0..d..scra|
00001eb0 70 31 0d 19 6e 0f 4c 44 41 20 28 70 74 72 29 2c |p1..n.LDA (ptr),|
00001ec0 59 0d 19 78 0f 53 54 41 20 66 6e 61 6d 65 2c 58 |Y..x.STA fname,X|
00001ed0 0d 19 82 0b 43 4d 50 20 23 31 33 0d 19 8c 0b 42 |....CMP #13....B|
00001ee0 45 51 20 65 6f 63 0d 19 96 0b 43 4d 50 20 23 33 |EQ eoc....CMP #3|
00001ef0 32 0d 19 a0 0b 42 45 51 20 65 6f 63 0d 19 aa 07 |2....BEQ eoc....|
00001f00 49 4e 59 0d 19 b4 07 49 4e 58 0d 19 be 0b 43 50 |INY....INX....CP|
00001f10 58 20 23 31 31 0d 19 c8 0e 42 4e 45 20 73 63 72 |X #11....BNE scr|
00001f20 61 70 31 0d 19 d2 0e 4a 4d 50 20 6e 6f 66 69 6c |ap1....JMP nofil|
00001f30 65 0d 19 dc 08 2e 65 6f 63 0d 19 e6 0a 4c 44 58 |e.....eoc....LDX|
00001f40 20 23 30 0d 19 f0 0b 53 54 58 20 74 6d 70 0d 19 | #0....STX tmp..|
00001f50 fa 0b 2e 66 73 63 72 61 70 0d 1a 04 0b 4c 44 58 |...fscrap....LDX|
00001f60 20 74 6d 70 0d 1a 0e 0f 4c 44 41 20 69 6e 64 65 | tmp....LDA inde|
00001f70 78 2c 58 0d 1a 18 10 42 45 51 20 6e 6f 74 74 68 |x,X....BEQ notth|
00001f80 65 72 65 0d 1a 22 0a 4c 44 59 20 23 30 0d 1a 2c |ere..".LDY #0..,|
00001f90 0b 4c 44 41 20 23 31 31 0d 1a 36 0d 53 54 41 20 |.LDA #11..6.STA |
00001fa0 63 6f 75 6e 74 0d 1a 40 0d 2e 63 6f 6d 70 6c 6f |count..@..complo|
00001fb0 6f 70 0d 1a 4a 0f 4c 44 41 20 69 6e 64 65 78 2c |op..J.LDA index,|
00001fc0 58 0d 1a 54 0e 42 45 51 20 63 6f 6d 70 65 64 0d |X..T.BEQ comped.|
00001fd0 1a 5e 0f 43 4d 50 20 66 6e 61 6d 65 2c 59 0d 1a |.^.CMP fname,Y..|
00001fe0 68 0d 42 4e 45 20 6e 63 6f 6d 70 0d 1a 72 07 49 |h.BNE ncomp..r.I|
00001ff0 4e 58 0d 1a 7c 07 49 4e 59 0d 1a 86 0d 44 45 43 |NX..|.INY....DEC|
00002000 20 63 6f 75 6e 74 0d 1a 90 10 42 4e 45 20 63 6f | count....BNE co|
00002010 6d 70 6c 6f 6f 70 0d 1a 9a 0d 2e 6e 6f 74 74 68 |mploop.....notth|
00002020 65 72 65 0d 1a a4 0e 4a 4d 50 20 6e 6f 66 69 6c |ere....JMP nofil|
00002030 65 0d 1a ae 05 3a 0d 1a b8 0a 2e 6e 63 6f 6d 70 |e....:.....ncomp|
00002040 0d 1a c2 0b 4c 44 41 20 74 6d 70 0d 1a cc 07 43 |....LDA tmp....C|
00002050 4c 43 0d 1a d6 0b 41 44 43 20 23 31 39 0d 1a e0 |LC....ADC #19...|
00002060 0b 53 54 41 20 74 6d 70 0d 1a ea 0e 42 43 43 20 |.STA tmp....BCC |
00002070 66 73 63 72 61 70 0d 1a f4 0e 4a 4d 50 20 6e 6f |fscrap....JMP no|
00002080 66 69 6c 65 0d 1a fe 0b 2e 63 6f 6d 70 65 64 0d |file.....comped.|
00002090 1b 08 0f 4c 44 41 20 66 6e 61 6d 65 2c 59 0d 1b |...LDA fname,Y..|
000020a0 12 0b 43 4d 50 20 23 33 32 0d 1b 1c 0e 42 45 51 |..CMP #32....BEQ|
000020b0 20 63 6f 6d 70 6f 6b 0d 1b 26 0b 43 4d 50 20 23 | compok..&.CMP #|
000020c0 31 33 0d 1b 30 0d 42 4e 45 20 6e 63 6f 6d 70 0d |13..0.BNE ncomp.|
000020d0 1b 3a 05 3a 0d 1b 44 0b 2e 63 6f 6d 70 6f 6b 0d |.:.:..D..compok.|
000020e0 1b 4e 0b 4c 44 58 20 74 6d 70 0d 1b 58 12 4c 44 |.N.LDX tmp..X.LD|
000020f0 41 20 69 6e 64 65 78 2b 31 37 2c 58 0d 1b 62 0b |A index+17,X..b.|
00002100 53 54 41 20 6c 65 6e 0d 1b 6c 12 4c 44 41 20 69 |STA len..l.LDA i|
00002110 6e 64 65 78 2b 31 38 2c 58 0d 1b 76 0d 53 54 41 |ndex+18,X..v.STA|
00002120 20 6c 65 6e 2b 31 0d 1b 80 0c 43 50 58 20 23 26 | len+1....CPX #&|
00002130 46 30 0d 1b 8a 0f 42 45 51 20 6a 75 73 74 64 65 |F0....BEQ justde|
00002140 6c 0d 1b 94 12 4c 44 41 20 69 6e 64 65 78 2b 31 |l....LDA index+1|
00002150 31 2c 58 0d 1b 9e 0a 53 54 41 20 74 6f 0d 1b a8 |1,X....STA to...|
00002160 12 4c 44 41 20 69 6e 64 65 78 2b 31 32 2c 58 0d |.LDA index+12,X.|
00002170 1b b2 0c 53 54 41 20 74 6f 2b 31 0d 1b bc 12 4c |...STA to+1....L|
00002180 44 41 20 69 6e 64 65 78 2b 33 30 2c 58 0d 1b c6 |DA index+30,X...|
00002190 0c 53 54 41 20 66 72 6f 6d 0d 1b d0 12 4c 44 41 |.STA from....LDA|
000021a0 20 69 6e 64 65 78 2b 33 31 2c 58 0d 1b da 0e 53 | index+31,X....S|
000021b0 54 41 20 66 72 6f 6d 2b 31 0d 1b e4 0a 4c 44 59 |TA from+1....LDY|
000021c0 20 23 30 0d 1b ee 0c 2e 73 68 75 66 66 6c 65 0d | #0.....shuffle.|
000021d0 1b f8 10 4c 44 41 20 28 66 72 6f 6d 29 2c 59 0d |...LDA (from),Y.|
000021e0 1c 02 0e 53 54 41 20 28 74 6f 29 2c 59 0d 1c 0c |...STA (to),Y...|
000021f0 0a 49 4e 43 20 74 6f 0d 1c 16 0d 42 4e 45 20 73 |.INC to....BNE s|
00002200 68 75 66 31 0d 1c 20 0c 49 4e 43 20 74 6f 2b 31 |huf1.. .INC to+1|
00002210 0d 1c 2a 0a 2e 73 68 75 66 31 0d 1c 34 0c 49 4e |..*..shuf1..4.IN|
00002220 43 20 66 72 6f 6d 0d 1c 3e 0f 42 4e 45 20 73 68 |C from..>.BNE sh|
00002230 75 66 66 6c 65 0d 1c 48 0e 49 4e 43 20 66 72 6f |uffle..H.INC fro|
00002240 6d 2b 31 0d 1c 52 0e 4c 44 41 20 66 72 6f 6d 2b |m+1..R.LDA from+|
00002250 31 0d 1c 5c 0c 43 4d 50 20 23 26 43 30 0d 1c 66 |1..\.CMP #&C0..f|
00002260 0f 42 4e 45 20 73 68 75 66 66 6c 65 0d 1c 70 0b |.BNE shuffle..p.|
00002270 4c 44 41 20 74 6d 70 0d 1c 7a 07 54 41 58 0d 1c |LDA tmp..z.TAX..|
00002280 84 07 43 4c 43 0d 1c 8e 0b 41 44 43 20 23 31 39 |..CLC....ADC #19|
00002290 0d 1c 98 07 54 41 59 0d 1c a2 0c 2e 73 68 75 66 |....TAY.....shuf|
000022a0 69 6e 64 0d 1c ac 0f 4c 44 41 20 69 6e 64 65 78 |ind....LDA index|
000022b0 2c 59 0d 1c b6 0f 53 54 41 20 69 6e 64 65 78 2c |,Y....STA index,|
000022c0 58 0d 1c c0 07 49 4e 58 0d 1c ca 07 49 4e 59 0d |X....INX....INY.|
000022d0 1c d4 0f 42 4e 45 20 73 68 75 66 69 6e 64 0d 1c |...BNE shufind..|
000022e0 de 0b 4c 44 58 20 74 6d 70 0d 1c e8 0b 2e 73 75 |..LDX tmp.....su|
000022f0 62 6c 65 6e 0d 1c f2 12 4c 44 41 20 69 6e 64 65 |blen....LDA inde|
00002300 78 2b 31 31 2c 58 0d 1c fc 07 53 45 43 0d 1d 06 |x+11,X....SEC...|
00002310 0b 53 42 43 20 6c 65 6e 0d 1d 10 12 53 54 41 20 |.SBC len....STA |
00002320 69 6e 64 65 78 2b 31 31 2c 58 0d 1d 1a 12 4c 44 |index+11,X....LD|
00002330 41 20 69 6e 64 65 78 2b 31 32 2c 58 0d 1d 24 0d |A index+12,X..$.|
00002340 53 42 43 20 6c 65 6e 2b 31 0d 1d 2e 12 53 54 41 |SBC len+1....STA|
00002350 20 69 6e 64 65 78 2b 31 32 2c 58 0d 1d 38 07 54 | index+12,X..8.T|
00002360 58 41 0d 1d 42 07 43 4c 43 0d 1d 4c 0b 41 44 43 |XA..B.CLC..L.ADC|
00002370 20 23 31 39 0d 1d 56 07 54 41 58 0d 1d 60 0e 42 | #19..V.TAX..`.B|
00002380 43 43 20 73 75 62 6c 65 6e 0d 1d 6a 0b 4c 44 41 |CC sublen..j.LDA|
00002390 20 6e 75 6d 0d 1d 74 0b 43 4d 50 20 23 31 39 0d | num..t.CMP #19.|
000023a0 1d 7e 0f 42 45 51 20 6a 75 73 74 64 65 6c 0d 1d |.~.BEQ justdel..|
000023b0 88 0c 4c 44 41 20 69 70 74 72 0d 1d 92 07 53 45 |..LDA iptr....SE|
000023c0 43 0d 1d 9c 0b 53 42 43 20 23 31 39 0d 1d a6 0c |C....SBC #19....|
000023d0 53 54 41 20 69 70 74 72 0d 1d b0 0c 2e 6a 75 73 |STA iptr.....jus|
000023e0 74 64 65 6c 0d 1d ba 0b 44 45 43 20 6e 75 6d 0d |tdel....DEC num.|
000023f0 1d c4 0f 4c 44 41 20 6d 65 6d 66 72 65 65 0d 1d |...LDA memfree..|
00002400 ce 07 43 4c 43 0d 1d d8 0b 41 44 43 20 6c 65 6e |..CLC....ADC len|
00002410 0d 1d e2 0f 53 54 41 20 6d 65 6d 66 72 65 65 0d |....STA memfree.|
00002420 1d ec 11 4c 44 41 20 6d 65 6d 66 72 65 65 2b 31 |...LDA memfree+1|
00002430 0d 1d f6 0d 41 44 43 20 6c 65 6e 2b 31 0d 1e 00 |....ADC len+1...|
00002440 11 53 54 41 20 6d 65 6d 66 72 65 65 2b 31 0d 1e |.STA memfree+1..|
00002450 0a 0a 4c 44 41 20 23 30 0d 1e 14 0c 4c 44 59 20 |..LDA #0....LDY |
00002460 23 26 46 30 0d 1e 1e 0b 2e 64 65 6c 6f 6f 70 0d |#&F0.....deloop.|
00002470 1e 28 0c 43 50 59 20 23 26 46 38 0d 1e 32 0d 42 |.(.CPY #&F8..2.B|
00002480 4e 45 20 6e 6f 69 6e 79 0d 1e 3c 07 49 4e 59 0d |NE noiny..<.INY.|
00002490 1e 46 07 49 4e 59 0d 1e 50 0a 2e 6e 6f 69 6e 79 |.F.INY..P..noiny|
000024a0 0d 1e 5a 0f 53 54 41 20 69 6e 64 65 78 2c 59 0d |..Z.STA index,Y.|
000024b0 1e 64 07 49 4e 59 0d 1e 6e 0e 42 4e 45 20 64 65 |.d.INY..n.BNE de|
000024c0 6c 6f 6f 70 0d 1e 78 0e 4a 4d 50 20 63 6f 6d 6f |loop..x.JMP como|
000024d0 75 74 0d 1e 82 05 3a 0d 1e 8c 23 2e 68 6c 70 74 |ut....:...#.hlpt|
000024e0 78 74 20 20 45 51 55 53 20 22 20 20 43 6f 6d 6d |xt EQUS " Comm|
000024f0 61 6e 64 73 3a 22 2b 63 72 24 0d 1e 96 29 20 20 |ands:"+cr$...) |
00002500 20 20 20 20 20 20 20 45 51 55 53 20 22 20 20 20 | EQUS " |
00002510 20 2a 43 41 43 48 45 20 3c 66 69 6c 65 3e 22 2b | *CACHE <file>"+|
00002520 63 72 24 0d 1e a0 29 20 20 20 20 20 20 20 20 20 |cr$...) |
00002530 45 51 55 53 20 22 20 20 20 20 2a 53 43 52 41 50 |EQUS " *SCRAP|
00002540 20 3c 66 69 6c 65 3e 22 2b 63 72 24 0d 1e aa 22 | <file>"+cr$..."|
00002550 20 20 20 20 20 20 20 20 20 45 51 55 53 20 22 20 | EQUS " |
00002560 20 20 20 2a 43 4c 45 41 52 22 2b 63 72 24 0d 1e | *CLEAR"+cr$..|
00002570 b4 21 20 20 20 20 20 20 20 20 20 45 51 55 53 20 |.! EQUS |
00002580 22 20 20 20 20 2a 44 41 54 41 22 2b 63 72 24 0d |" *DATA"+cr$.|
00002590 1e be 13 20 20 20 20 20 20 20 20 20 45 51 55 42 |... EQUB|
000025a0 20 30 0d 1e c8 2a 2e 66 63 61 63 68 65 64 20 45 | 0...*.fcached E|
000025b0 51 55 53 20 22 20 20 46 69 6c 65 73 20 63 61 63 |QUS " Files cac|
000025c0 68 65 64 3a 22 2b 63 72 24 2b 7a 24 0d 1e d2 3e |hed:"+cr$+z$...>|
000025d0 2e 64 68 65 61 64 20 20 20 45 51 55 53 20 22 46 |.dhead EQUS "F|
000025e0 69 6c 65 6e 61 6d 65 20 20 20 20 20 4c 6f 61 64 |ilename Load|
000025f0 20 20 45 78 65 63 20 20 53 69 7a 65 20 20 41 64 | Exec Size Ad|
00002600 64 72 22 2b 63 72 24 2b 7a 24 0d 1e dc 27 2e 64 |dr"+cr$+z$...'.d|
00002610 66 6f 6f 74 20 20 20 45 51 55 53 20 22 20 62 79 |foot EQUS " by|
00002620 74 65 73 20 66 72 65 65 2e 22 2b 63 72 24 2b 7a |tes free."+cr$+z|
00002630 24 0d 1e e6 32 2e 66 6e 66 20 20 20 20 20 42 52 |$...2.fnf BR|
00002640 4b 3a 45 51 55 42 20 32 35 35 3a 45 51 55 53 20 |K:EQUB 255:EQUS |
00002650 22 46 69 6c 65 20 6e 6f 74 20 66 6f 75 6e 64 22 |"File not found"|
00002660 2b 7a 24 0d 1e f0 30 2e 66 74 62 20 20 20 20 20 |+z$...0.ftb |
00002670 42 52 4b 3a 45 51 55 42 20 32 35 34 3a 45 51 55 |BRK:EQUB 254:EQU|
00002680 53 20 22 46 69 6c 65 20 74 6f 6f 20 62 69 67 22 |S "File too big"|
00002690 2b 7a 24 0d 1e fa 34 2e 6e 69 73 20 20 20 20 20 |+z$...4.nis |
000026a0 42 52 4b 3a 45 51 55 42 20 32 35 33 3a 45 51 55 |BRK:EQUB 253:EQU|
000026b0 53 20 22 4e 6f 20 72 6f 6f 6d 20 69 6e 20 69 6e |S "No room in in|
000026c0 64 65 78 22 2b 7a 24 0d 1f 04 39 2e 63 73 79 6e |dex"+z$...9.csyn|
000026d0 20 20 20 20 42 52 4b 3a 45 51 55 42 20 32 35 32 | BRK:EQUB 252|
000026e0 3a 45 51 55 53 20 22 53 79 6e 74 61 78 3a 20 2a |:EQUS "Syntax: *|
000026f0 43 41 43 48 45 20 3c 66 69 6c 65 3e 22 2b 7a 24 |CACHE <file>"+z$|
00002700 0d 1f 0e 39 2e 73 73 79 6e 20 20 20 20 42 52 4b |...9.ssyn BRK|
00002710 3a 45 51 55 42 20 32 35 31 3a 45 51 55 53 20 22 |:EQUB 251:EQUS "|
00002720 53 79 6e 74 61 78 3a 20 2a 53 43 52 41 50 20 3c |Syntax: *SCRAP <|
00002730 66 69 6c 65 3e 22 2b 7a 24 0d 1f 18 1f 2e 68 77 |file>"+z$.....hw|
00002740 6f 72 64 20 20 20 45 51 55 53 20 22 41 55 54 4f |ord EQUS "AUTO|
00002750 52 4f 4d 22 2b 63 72 24 0d 1f 22 29 2e 63 6f 6d |ROM"+cr$..").com|
00002760 73 20 20 20 20 45 51 55 53 20 22 43 41 43 48 45 |s EQUS "CACHE|
00002770 22 2b 7a 24 20 3a 20 45 51 55 57 20 63 61 63 68 |"+z$ : EQUW cach|
00002780 65 0d 1f 2c 29 20 20 20 20 20 20 20 20 20 45 51 |e..,) EQ|
00002790 55 53 20 22 53 43 52 41 50 22 2b 7a 24 20 3a 20 |US "SCRAP"+z$ : |
000027a0 45 51 55 57 20 73 63 72 61 70 0d 1f 36 29 20 20 |EQUW scrap..6) |
000027b0 20 20 20 20 20 20 20 45 51 55 53 20 22 43 4c 45 | EQUS "CLE|
000027c0 41 52 22 2b 7a 24 20 3a 20 45 51 55 57 20 63 6c |AR"+z$ : EQUW cl|
000027d0 65 61 72 0d 1f 40 28 20 20 20 20 20 20 20 20 20 |ear..@( |
000027e0 45 51 55 53 20 22 44 41 54 41 22 2b 7a 24 20 20 |EQUS "DATA"+z$ |
000027f0 3a 20 45 51 55 57 20 64 61 74 61 0d 1f 4a 14 20 |: EQUW data..J. |
00002800 20 20 20 20 20 20 20 20 45 51 55 42 20 2d 31 0d | EQUB -1.|
00002810 1f 54 13 2e 7a 65 72 6f 20 20 20 20 45 51 55 44 |.T..zero EQUD|
00002820 20 30 0d 1f 5e 13 20 20 20 20 20 20 20 20 20 45 | 0..^. E|
00002830 51 55 57 20 30 0d 1f 68 13 2e 74 6d 70 20 20 20 |QUW 0..h..tmp |
00002840 20 20 45 51 55 42 20 30 0d 1f 72 13 2e 6d 65 6d | EQUB 0..r..mem|
00002850 66 72 65 65 20 45 51 55 57 20 30 0d 1f 7c 13 2e |free EQUW 0..|..|
00002860 69 70 74 72 20 20 20 20 45 51 55 42 20 30 0d 1f |iptr EQUB 0..|
00002870 86 13 2e 6e 75 6d 20 20 20 20 20 45 51 55 42 20 |...num EQUB |
00002880 30 0d 1f 90 13 2e 63 6f 75 6e 74 20 20 20 45 51 |0.....count EQ|
00002890 55 42 20 30 0d 1f 9a 13 2e 69 6e 64 20 20 20 20 |UB 0.....ind |
000028a0 20 45 51 55 42 20 30 0d 1f a4 13 2e 61 20 20 20 | EQUB 0.....a |
000028b0 20 20 20 20 45 51 55 42 20 30 0d 1f ae 13 2e 78 | EQUB 0.....x|
000028c0 20 20 20 20 20 20 20 45 51 55 42 20 30 0d 1f b8 | EQUB 0...|
000028d0 13 2e 79 20 20 20 20 20 20 20 45 51 55 42 20 30 |..y EQUB 0|
000028e0 0d 1f c2 13 2e 70 20 20 20 20 20 20 20 45 51 55 |.....p EQU|
000028f0 42 20 30 0d 1f cc 13 2e 6f 70 74 72 20 20 20 20 |B 0.....optr |
00002900 45 51 55 57 20 30 0d 1f d6 13 2e 65 6e 64 20 20 |EQUW 0.....end |
00002910 20 20 20 45 51 55 42 20 30 0d 1f e0 06 5d ed 0d | EQUB 0....]..|
00002920 1f ea 05 e1 0d 1f f4 05 3a 0d 1f fe 0c dd 20 f2 |........:..... .|
00002930 63 68 65 63 6b 0d 20 08 14 f1 20 22 43 68 65 63 |check. ... "Chec|
00002940 6b 69 6e 67 2e 2e 2e 22 3b 0d 20 12 1d f2 73 75 |king...";. ...su|
00002950 6d 28 22 73 74 61 72 74 22 2c 22 6f 75 74 22 2c |m("start","out",|
00002960 32 30 30 35 36 29 0d 20 1c 1d f2 73 75 6d 28 22 |20056). ...sum("|
00002970 6f 75 74 22 2c 22 62 6d 6f 76 65 22 2c 31 36 36 |out","bmove",166|
00002980 37 33 29 0d 20 26 20 f2 73 75 6d 28 22 62 6d 6f |73). & .sum("bmo|
00002990 76 65 22 2c 22 67 6f 74 69 6e 64 22 2c 32 33 36 |ve","gotind",236|
000029a0 37 31 29 0d 20 30 1f f2 73 75 6d 28 22 67 6f 74 |71). 0..sum("got|
000029b0 69 6e 64 22 2c 22 64 61 74 61 22 2c 32 38 30 39 |ind","data",2809|
000029c0 34 29 0d 20 3a 1f f2 73 75 6d 28 22 64 61 74 61 |4). :..sum("data|
000029d0 22 2c 22 74 6f 6f 62 69 67 22 2c 32 36 39 33 34 |","toobig",26934|
000029e0 29 0d 20 44 20 f2 73 75 6d 28 22 74 6f 6f 62 69 |). D .sum("toobi|
000029f0 67 22 2c 22 73 63 72 61 70 22 2c 32 34 38 35 38 |g","scrap",24858|
00002a00 29 0d 20 4e 21 f2 73 75 6d 28 22 73 63 72 61 70 |). N!.sum("scrap|
00002a10 22 2c 22 73 68 75 66 69 6e 64 22 2c 32 32 30 32 |","shufind",2202|
00002a20 37 29 0d 20 58 22 f2 73 75 6d 28 22 73 68 75 66 |7). X".sum("shuf|
00002a30 69 6e 64 22 2c 22 68 6c 70 74 78 74 22 2c 31 32 |ind","hlptxt",12|
00002a40 32 37 31 29 0d 20 62 1e f2 73 75 6d 28 22 68 6c |271). b..sum("hl|
00002a50 70 74 78 74 22 2c 22 65 6e 64 22 2c 32 30 39 39 |ptxt","end",2099|
00002a60 37 29 0d 20 6c 05 e1 0d 20 76 05 3a 0d 20 80 14 |7). l... v.:. ..|
00002a70 dd 20 f2 73 75 6d 28 53 24 2c 45 24 2c 4e 25 29 |. .sum(S$,E$,N%)|
00002a80 0d 20 8a 08 54 25 3d 30 0d 20 94 24 e3 20 49 25 |. ..T%=0. .$. I%|
00002a90 3d a0 28 53 24 29 2d 50 25 2b 4f 25 20 b8 20 a0 |=.(S$)-P%+O% . .|
00002aa0 28 45 24 29 2d 50 25 2b 4f 25 2d 31 0d 20 9e 0f |(E$)-P%+O%-1. ..|
00002ab0 54 25 3d 54 25 2b 3f 49 25 3a ed 0d 20 a8 0d e7 |T%=T%+?I%:.. ...|
00002ac0 20 54 25 3d 4e 25 20 e1 0d 20 b2 2b f1 20 22 50 | T%=N% .. .+. "P|
00002ad0 6c 65 61 73 65 20 63 68 65 63 6b 20 66 72 6f 6d |lease check from|
00002ae0 20 22 3b 53 24 3b 22 20 74 6f 20 22 3b 45 24 3b | ";S$;" to ";E$;|
00002af0 22 2e 22 0d ff |"."..|
00002af5
.