Home » CEEFAX disks » telesoftware1.adl » CeeFax/LOADALL
CeeFax/LOADALL
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 » CEEFAX disks » telesoftware1.adl |
Filename: | CeeFax/LOADALL |
Read OK: | ✔ |
File size: | 16E6 bytes |
Load address: | FFFF0E00 |
Exec address: | FFFF802B |
File contents
10REM"�ATS6a 20REM"�***************************** 30REM"�*�ATS�Routine to interpret �* 40REM"�*�catalogue info & download�* 50REM"�*�files �* 60REM"�***************************** 70REM"�*�(C)�J.J.Brayshaw�May 1987�* 80REM"�***************************** 90REM"�*�Lines following�GREEN�REM�* 100REM"�*�statements to be adjusted�* 110REM"�*�as required. �* 120REM"�*�REM's in�YELLOW�for info.�* 130REM"�*�only. �* 140REM"�***************************** 150ONERRORGOTO510 160MODE7 170VDU23;8202;0;0;0; 180*TTXON 190REM"�Select channel: 200*BBC2 210*HON 220PROCmove_oshwm 230DIM space 20,name 12,line 15 240DIMpage%(35),fname$(35),load%(35),exec%(35),pages$(35),mag%(35),col$(35),type$(35), mark%(35), mc$(35) 250DIM D(5) 260Z%=0 270PROCheading("File:�Catalogue") 280A%=TIME:REPEAT:UNTILTIME>A%+200 290PROCfindcat(FNgetlink) 300IFM%>9 ORN%>&FE PROCheading("�Error�- No Catalogue"):GOTO510 310PROCheading("File:�Catalogue �Page:�"+STR$(M%)+RIGHT$("00"+STR$~(N%),2)) 320PRINTTAB(0,0);"P";STR$(M%);RIGHT$("00"+STR$~(N%),2) 330PROCdownload(M%,N%,"CATALOG",0,0,FALSE,TRUE) 340PROCinterpret 350IFZ%=0 MODE7:PROCheading("�No valid files broadcast this week"):GOTO510 360PROCchoose(Z%) 370FORW%=1TOZ% 380IF mark%(W%) = 0 THEN GOTO 430 390MODE7:VDU23;8202;0;0;0; 400PROCheading("File:�"+fname$(W%)+STRING$((12-LEN(fname$(W%)))," ")+"�Length:�"+pages$(W%)) 410PRINTTAB(0,0);"P";mag%(W%);RIGHT$("00"+STR$~(page%(W%)),2) 420PROCdownload(mag%(W%),page%(W%),fname$(W%),load%(W%),exec%(W%),TRUE,TRUE) 430NEXT 440MODE7 450*HOFF 460PROCheading("�Files downloaded:") 470FORA%=1TOZ% 480IF mark%(A%) = 0 THEN GOTO 500 490PRINT;col$(A%);LEFT$(fname$(A%)+" ",8);LEFT$("("+type$(A%)+") ",8);" ";LEFT$(pages$(A%)+" ",9);"�Ld";col$(A%);"&";RIGHT$("00000"+STR$~(load%(A%)),6) 500NEXT 510*HOFF 520PROCreturn_oshwm 530*FX4 540END 550: 560DEFPROCmove_oshwm 570S%=&5000 580A%=&B4:X%=S%DIV256:Y%=0:CALL&FFF4 590ENDPROC 600: 610DEFPROCdownload(magazine%,page%,filename$,load%,exec%,save%,reset%) 620PROCoscli("MAGAZINE "+STR$(magazine%)) 630space?0=24 640space?1=name MOD256:space?2=name DIV256 650$name=filename$ 660space!3=load% 670space!7=exec% 680space?11=magazine% 690space?12=page% 700IFsave%=TRUE space?13=1 ELSE space?13=0 710IFreset%=TRUE space?14=0 ELSE space?14=1 720A%=&7A:X%=space MOD256:Y%=space DIV256 730CALL&FFF1 740ENDPROC 750: 760DEFPROCoscli(text$) 770$line=text$:X%=line MOD256:Y%=line DIV256 780CALL&FFF7 790ENDPROC 800: 810DEFPROCheading(fname$) 820CLS 830PRINT'SPC3;CHR$132;CHR$157;CHR$141;"�Files from Telesoftware ";CHR$156 840PRINTSPC3;CHR$132;CHR$157;CHR$141;"�Files from Telesoftware ";CHR$156 850PRINTTAB(1,5)fname$ 860ENDPROC 870: 880DEFPROCreturn_oshwm 890A%=&B4:X%=PAGE DIV256:Y%=0:CALL&FFF4 900ENDPROC 910: 920DEFPROCinterpret 930sta%=S%:Z%=0 940REM"�Ignore 1st 2 strings in cat.: 950sta%=sta%+1+?sta%:sta%=sta%+1+?sta% 960REPEAT 970REM"�Decode catalogue: 980REM"�machine type: 990len%=?sta% 1000FORA%=sta%TOsta%+len%:?A%=(?A%)AND&7F:NEXT 1010T%=?(sta%+len%+1):?(sta%+len%+1)=13:mc$=$(sta%+1):?(sta%+len%+1)=T% 1020sta%=sta%+1+?sta% 1030REM"�End of catalogue is ***: 1040IFmc$="***" GOTO1300 1050REM"�get filename: 1060len%=?sta% 1070col$=CHR$((?(sta%+1))OR&80) 1080FORA%=sta%TOsta%+len%:?A%=(?A%)AND&7F 1090IF(?A%>&60) AND (?A%<&7B) ?A%=(?A%)AND&DF 1100NEXT 1110T%=?(sta%+len%+1):?(sta%+len%+1)=13:fn$=$(sta%+2):?(sta%+len%+1)=T% 1120sta%=sta%+1+?sta% 1130REM"�get file type: 1140len%=?sta% 1150FORA%=sta%TOsta%+len%:?A%=(?A%)AND&7F:NEXT 1160T%=?(sta%+len%+1):?(sta%+len%+1)=13:ft$=$(sta%+1):?(sta%+len%+1)=T% 1170sta%=sta%+1+?sta% 1180REM"�Get file size: 1190len%=?sta% 1200FORA%=sta%TOsta%+len%:?A%=(?A%)AND&7F:NEXT 1210T%=?(sta%+len%+1):?(sta%+len%+1)=13:len$=$(sta%+1):?(sta%+len%+1)=T% 1220sta%=sta%+1+?sta% 1230REM"�get load & exec addresses: 1240load%=FNaddr(sta%):exec%=FNaddr(sta%+4) 1250REM"�get mag & page no.: 1260mag%=?(sta%+8):page%=?(sta%+9) 1270sta%=sta%+10 1280PROCsave_info(mc$,col$,fn$,ft$,len$,load%,exec%,mag%,page%) 1290REM"�Until end of catalogue: 1300UNTILmc$="***" 1310ENDPROC 1320: 1330DEFFNaddr(st%) 1340=(((((?st%*256)+?(st%+1))*256)+?(st%+2)*256)+?(st%+3)) 1350DEFFNgetlink 1360=200 1370space?0=15:A%=&7A:X%=space MOD256:Y%=space DIV256:CALL&FFF1 1380IF((space?1)*100)+space?2>999 PROCheading("�Error�- No Catalogue"):GOTO510 1390=((space?1)*100)+space?2 1400: 1410DEFPROCfindcat(O%) 1420PROCoscli("PAGE "+STR$(O%)) 1430LOCALa%,pn$,row% 1440*DATA 5000 1450a%=&5000-42 1460REPEAT 1470a%=a%+42 1480UNTIL(a%?1=27 AND FNdeham(a%?2)=0) ORa%>&5800 1490IFa%>&5800 M%=0:PROCheading("�Error�-no catalogue"):GOTO510 1500FORV%=0TO5 1510D(V%)=27+V% 1520D(V%)=FNdeham(a%?D(V%)) 1530NEXT 1540M%=(((D(5) AND12)DIV2)OR(D(3) DIV8))EOR(O%DIV100) 1550N%=(D(1)*16)+(D(0)) 1560ENDPROC 1570: 1580DEFFNdeham(byte%) 1590space?0=25:space?1=byte%:A%=&7A:X%=space MOD256:Y%=space DIV256:CALL&FFF1 1600=(space?2)AND&F 1610: 1620DEFPROCsave_info(mc$,col$,fn$,ft$,len$,load%,exec%,mag%,page%) 1630REM"�Ignore files for other m/c's: 1640REM"�Add routines here to ignore 1650REM"�any unwanted files.�Each file 1660REM"�identified by the following 1670REM"�arrays: 1680REM"�col$�Filename colour code 1690REM"�fn$�Filename 1700REM"�ft$�File type 1710REM"�len$�File length 1720REM"�load%�Load address 1730REM"�exec%�Execution address 1740REM"�mag%�Magazine in which file 1750REM" �is transmitted 1760REM"�page%�Page on which file is 1770REM" �transmitted 1780REM"�Any file not required should 1790REM"�cause this procedure to exit 1800REM"�before the next line. 1810REM"�For example: 1820REM"�IF ft$<>"BASIC" THEN ENDPROC 1830Z%=Z%+1:page%(Z%)=page%:fname$(Z%)=fn$:type$(Z%)=ft$:load%(Z%)=load%:exec%(Z%)=exec%:pages$(Z%)=len$:mag%(Z%)=mag%:col$(Z%)=col$:mc$(Z%)=mc$ 1840mark%(Z%) = 0 1850ENDPROC 1860DEFPROCchoose(files%) 1870*FX4,1 1880S%=1 1890VDU 28,0,19,39,4 1900CLS 1910VDU23;8202;0;0;0; 1920PROCdis1 1930I%=0 1940PROCin 1950REPEAT 1960A%=GET 1970IF A%=139 PROCup 1980IF A%=138 PROCdown 1990IF A%=13 mark%(S% + I%) = 1:PROCdis(S% + I%,I%) 2000UNTILA%=32 2010ENDPROC 2020DEFPROCin 2030PRINTTAB(0,I%);CHR$(132);CHR$(&9D); 2040ENDPROC 2050DEFPROCout 2060PRINTTAB(0,I%);CHR$(135);CHR$(&9C); 2070ENDPROC 2080DEFPROCup 2090IF I% = 0 AND S% = 1 ENDPROC 2100IF I% = 0:PROCout:S%=S%-1:VDU30,11:PROCdis(S%,0):PROCin:ENDPROC 2110PROCout 2120I%=I%-1 2130PROCin 2140ENDPROC 2150DEFPROCdown 2160IF I% = 14 AND S% = files% - 14:ENDPROC 2170IF I% = 14:PROCout:PRINTTAB(0,14)':S%=S%+1:PROCdis(S% + 14,14):PROCin:ENDPROC 2180PROCout 2190I%=I%+1 2200PROCin 2210ENDPROC 2220DEFPROCdis1 2230LOCAL Z% 2240E%=S% + 14 2250IF E%>files% E%=files% - 1 2260FOR Z%=S% TO E% 2270C%=Z% - S% 2280PROCdis(Z%,C%) 2290NEXT 2300ENDPROC 2310DEFPROCdis(S%,R%) 2320PRINTTAB(2,R%);CHR$(135);CHR$(mark%(S%) * 42);TAB(5,R%);mc$(S%);TAB(10,R%);col$(S%);fname$(S%);TAB(20,R%);type$(S%);TAB(28,R%);pages$(S%) 2330ENDPROC
�"�ATS6a $�"�***************************** $�"�*�ATS�Routine to interpret �* ($�"�*�catalogue info & download�* 2$�"�*�files �* <$�"�***************************** F$�"�*�(C)�J.J.Brayshaw�May 1987�* P$�"�***************************** Z$�"�*�Lines following�GREEN�REM�* d$�"�*�statements to be adjusted�* n$�"�*�as required. �* x$�"�*�REM's in�YELLOW�for info.�* �$�"�*�only. �* �$�"�***************************** ���d~A ��7 ��23;8202;0;0;0; � *TTXON ��"�Select channel: � *BBC2 �*HON ��move_oshwm �� space 20,name 12,line 15 �h�page%(35),fname$(35),load%(35),exec%(35),pages$(35),mag%(35),col$(35),type$(35), mark%(35), mc$(35) � � D(5) Z%=0 �heading("File:�Catalogue") A%=�:�:��>A%+200 "�findcat(�getlink) ,9�M%>9 �N%>&FE �heading("�Error�- No Catalogue"):�d~A 6@�heading("File:�Catalogue �Page:�"+�(M%)+�"00"+�~(N%),2)) @$�0,0);"P";�(M%);�"00"+�~(N%),2) J&�download(M%,N%,"CATALOG",0,0,�,�) T�interpret ^B�Z%=0 �7:�heading("�No valid files broadcast this week"):�d~A h�choose(Z%) r�W%=1�Z% |� mark%(W%) = 0 � � �tnA ��7:�23;8202;0;0;0; �Q�heading("File:�"+fname$(W%)+�(12-�(fname$(W%)))," ")+"�Length:�"+pages$(W%)) �.�0,0);"P";mag%(W%);�"00"+�~(page%(W%)),2) �D�download(mag%(W%),page%(W%),fname$(W%),load%(W%),exec%(W%),�,�) �� ��7 � *HOFF �"�heading("�Files downloaded:") ��A%=1�Z% �� mark%(A%) = 0 � � �dtA ��;col$(A%);�fname$(A%)+" ",8);�"("+type$(A%)+") ",8);" ";�pages$(A%)+" ",9);"�Ld";col$(A%);"&";�"00000"+�~(load%(A%)),6) �� � *HOFF �return_oshwm *FX4 � &: 0��move_oshwm :S%=&5000 D A%=&B4:X%=S%�256:Y%=0:�&FFF4 N� X: bB��download(magazine%,page%,filename$,load%,exec%,save%,reset%) l$�oscli("MAGAZINE "+�(magazine%)) vspace?0=24 �'space?1=name �256:space?2=name �256 �$name=filename$ �space!3=load% �space!7=exec% �space?11=magazine% �space?12=page% �$�save%=� space?13=1 � space?13=0 �%�reset%=� space?14=0 � space?14=1 �&A%=&7A:X%=space �256:Y%=space �256 � �&FFF1 �� �: ���oscli(text$) )$line=text$:X%=line �256:Y%=line �256 �&FFF7 � : *��heading(fname$) 4� >:�'�3;�132;�157;�141;"�Files from Telesoftware ";�156 H9�3;�132;�157;�141;"�Files from Telesoftware ";�156 R�1,5)fname$ \� f: p��return_oshwm z A%=&B4:X%=� �256:Y%=0:�&FFF4 �� �: ���interpret �sta%=S%:Z%=0 �$�"�Ignore 1st 2 strings in cat.: �'sta%=sta%+1+?sta%:sta%=sta%+1+?sta% �� ��"�Decode catalogue: ��"�machine type: �len%=?sta% �&�A%=sta%�sta%+len%:?A%=(?A%)�&7F:� �GT%=?(sta%+len%+1):?(sta%+len%+1)=13:mc$=$(sta%+1):?(sta%+len%+1)=T% �sta%=sta%+1+?sta% �"�End of catalogue is ***: �mc$="***" �TTE �"�get filename: $len%=?sta% .col$=�((?(sta%+1))�&80) 8$�A%=sta%�sta%+len%:?A%=(?A%)�&7F B(�(?A%>&60) � (?A%<&7B) ?A%=(?A%)�&DF L� VGT%=?(sta%+len%+1):?(sta%+len%+1)=13:fn$=$(sta%+2):?(sta%+len%+1)=T% `sta%=sta%+1+?sta% j�"�get file type: tlen%=?sta% ~&�A%=sta%�sta%+len%:?A%=(?A%)�&7F:� �GT%=?(sta%+len%+1):?(sta%+len%+1)=13:ft$=$(sta%+1):?(sta%+len%+1)=T% �sta%=sta%+1+?sta% ��"�Get file size: �len%=?sta% �&�A%=sta%�sta%+len%:?A%=(?A%)�&7F:� �HT%=?(sta%+len%+1):?(sta%+len%+1)=13:len$=$(sta%+1):?(sta%+len%+1)=T% �sta%=sta%+1+?sta% �!�"�get load & exec addresses: �)load%=�addr(sta%):exec%=�addr(sta%+4) ��"�get mag & page no.: �"mag%=?(sta%+8):page%=?(sta%+9) �sta%=sta%+10 <�save_info(mc$,col$,fn$,ft$,len$,load%,exec%,mag%,page%) �"�Until end of catalogue: �mc$="***" � (: 2ݤaddr(st%) <:=(((((?st%*256)+?(st%+1))*256)+?(st%+2)*256)+?(st%+3)) F ݤgetlink P=200 Z8space?0=15:A%=&7A:X%=space �256:Y%=space �256:�&FFF1 dH�((space?1)*100)+space?2>999 �heading("�Error�- No Catalogue"):�d~A n=((space?1)*100)+space?2 x: ���findcat(O%) ��oscli("PAGE "+�(O%)) ��a%,pn$,row% �*DATA 5000 �a%=&5000-42 �� �a%=a%+42 �)�(a%?1=27 � �deham(a%?2)=0) �a%>&5800 �9�a%>&5800 M%=0:�heading("�Error�-no catalogue"):�d~A ��V%=0�5 �D(V%)=27+V% �D(V%)=�deham(a%?D(V%)) �� *M%=(((D(5) �12)�2)�(D(3) �8))�(O%�100) N%=(D(1)*16)+(D(0)) � ": ,ݤdeham(byte%) 6Fspace?0=25:space?1=byte%:A%=&7A:X%=space �256:Y%=space �256:�&FFF1 @=(space?2)�&F J: T=��save_info(mc$,col$,fn$,ft$,len$,load%,exec%,mag%,page%) ^$�"�Ignore files for other m/c's: h"�"�Add routines here to ignore r$�"�any unwanted files.�Each file |"�"�identified by the following ��"�arrays: � �"�col$�Filename colour code ��"�fn$�Filename ��"�ft$�File type ��"�len$�File length ��"�load%�Load address ��"�exec%�Execution address �"�"�mag%�Magazine in which file ��" �is transmitted �"�"�page%�Page on which file is ��" �transmitted �#�"�Any file not required should �#�"�cause this procedure to exit �"�before the next line. �"�For example: #�"�IF ft$<>"BASIC" THEN ENDPROC &�Z%=Z%+1:page%(Z%)=page%:fname$(Z%)=fn$:type$(Z%)=ft$:load%(Z%)=load%:exec%(Z%)=exec%:pages$(Z%)=len$:mag%(Z%)=mag%:col$(Z%)=col$:mc$(Z%)=mc$ 0mark%(Z%) = 0 :� D��choose(files%) N *FX4,1 XS%=1 b� 28,0,19,39,4 l� v�23;8202;0;0;0; � �dis1 �I%=0 ��in �� �A%=� �� A%=139 �up �� A%=138 �down �/� A%=13 mark%(S% + I%) = 1:�dis(S% + I%,I%) � �A%=32 �� ���in ��0,I%);�(132);�(&9D); �� ��out �0,I%);�(135);�(&9C); � ��up *� I% = 0 � S% = 1 � 41� I% = 0:�out:S%=S%-1:�30,11:�dis(S%,0):�in:� >�out HI%=I%-1 R�in \� f ��down p"� I% = 14 � S% = files% - 14:� z:� I% = 14:�out:�0,14)':S%=S%+1:�dis(S% + 14,14):�in:� ��out �I%=I%+1 ��in �� � ��dis1 �� Z% �E%=S% + 14 �� E%>files% E%=files% - 1 �� Z%=S% � E% �C%=Z% - S% ��dis(Z%,C%) �� �� ��dis(S%,R%) t�2,R%);�(135);�(mark%(S%) * 42);�5,R%);mc$(S%);�10,R%);col$(S%);fname$(S%);�20,R%);type$(S%);�28,R%);pages$(S%) � �
00000000 0d 00 0a 0c f4 22 85 41 54 53 36 61 0d 00 14 24 |.....".ATS6a...$| 00000010 f4 22 81 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |.".*************| 00000020 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************| 00000030 0d 00 1e 24 f4 22 81 2a 86 41 54 53 83 52 6f 75 |...$.".*.ATS.Rou| 00000040 74 69 6e 65 20 74 6f 20 69 6e 74 65 72 70 72 65 |tine to interpre| 00000050 74 20 81 2a 0d 00 28 24 f4 22 81 2a 83 63 61 74 |t .*..($.".*.cat| 00000060 61 6c 6f 67 75 65 20 69 6e 66 6f 20 26 20 64 6f |alogue info & do| 00000070 77 6e 6c 6f 61 64 81 2a 0d 00 32 24 f4 22 81 2a |wnload.*..2$.".*| 00000080 83 66 69 6c 65 73 20 20 20 20 20 20 20 20 20 20 |.files | 00000090 20 20 20 20 20 20 20 20 20 20 81 2a 0d 00 3c 24 | .*..<$| 000000a0 f4 22 81 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |.".*************| 000000b0 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************| 000000c0 0d 00 46 24 f4 22 81 2a 82 28 43 29 87 4a 2e 4a |..F$.".*.(C).J.J| 000000d0 2e 42 72 61 79 73 68 61 77 85 4d 61 79 20 31 39 |.Brayshaw.May 19| 000000e0 38 37 81 2a 0d 00 50 24 f4 22 81 2a 2a 2a 2a 2a |87.*..P$.".*****| 000000f0 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************| 00000100 2a 2a 2a 2a 2a 2a 2a 2a 0d 00 5a 24 f4 22 81 2a |********..Z$.".*| 00000110 87 4c 69 6e 65 73 20 66 6f 6c 6c 6f 77 69 6e 67 |.Lines following| 00000120 82 47 52 45 45 4e 87 52 45 4d 81 2a 0d 00 64 24 |.GREEN.REM.*..d$| 00000130 f4 22 81 2a 87 73 74 61 74 65 6d 65 6e 74 73 20 |.".*.statements | 00000140 74 6f 20 62 65 20 61 64 6a 75 73 74 65 64 81 2a |to be adjusted.*| 00000150 0d 00 6e 24 f4 22 81 2a 87 61 73 20 72 65 71 75 |..n$.".*.as requ| 00000160 69 72 65 64 2e 20 20 20 20 20 20 20 20 20 20 20 |ired. | 00000170 20 20 81 2a 0d 00 78 24 f4 22 81 2a 87 52 45 4d | .*..x$.".*.REM| 00000180 27 73 20 69 6e 83 59 45 4c 4c 4f 57 87 66 6f 72 |'s in.YELLOW.for| 00000190 20 69 6e 66 6f 2e 81 2a 0d 00 82 24 f4 22 81 2a | info..*...$.".*| 000001a0 87 6f 6e 6c 79 2e 20 20 20 20 20 20 20 20 20 20 |.only. | 000001b0 20 20 20 20 20 20 20 20 20 20 81 2a 0d 00 8c 24 | .*...$| 000001c0 f4 22 81 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |.".*************| 000001d0 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************| 000001e0 0d 00 96 0b ee 85 e5 8d 64 7e 41 0d 00 a0 06 eb |........d~A.....| 000001f0 37 0d 00 aa 13 ef 32 33 3b 38 32 30 32 3b 30 3b |7.....23;8202;0;| 00000200 30 3b 30 3b 0d 00 b4 0a 2a 54 54 58 4f 4e 0d 00 |0;0;....*TTXON..| 00000210 be 16 f4 22 82 53 65 6c 65 63 74 20 63 68 61 6e |...".Select chan| 00000220 6e 65 6c 3a 0d 00 c8 09 2a 42 42 43 32 0d 00 d2 |nel:....*BBC2...| 00000230 08 2a 48 4f 4e 0d 00 dc 0f f2 6d 6f 76 65 5f 6f |.*HON.....move_o| 00000240 73 68 77 6d 0d 00 e6 1e de 20 73 70 61 63 65 20 |shwm..... space | 00000250 32 30 2c 6e 61 6d 65 20 31 32 2c 6c 69 6e 65 20 |20,name 12,line | 00000260 31 35 0d 00 f0 68 de 70 61 67 65 25 28 33 35 29 |15...h.page%(35)| 00000270 2c 66 6e 61 6d 65 24 28 33 35 29 2c 6c 6f 61 64 |,fname$(35),load| 00000280 25 28 33 35 29 2c 65 78 65 63 25 28 33 35 29 2c |%(35),exec%(35),| 00000290 70 61 67 65 73 24 28 33 35 29 2c 6d 61 67 25 28 |pages$(35),mag%(| 000002a0 33 35 29 2c 63 6f 6c 24 28 33 35 29 2c 74 79 70 |35),col$(35),typ| 000002b0 65 24 28 33 35 29 2c 20 6d 61 72 6b 25 28 33 35 |e$(35), mark%(35| 000002c0 29 2c 20 6d 63 24 28 33 35 29 0d 00 fa 0a de 20 |), mc$(35)..... | 000002d0 44 28 35 29 0d 01 04 08 5a 25 3d 30 0d 01 0e 1f |D(5)....Z%=0....| 000002e0 f2 68 65 61 64 69 6e 67 28 22 46 69 6c 65 3a 86 |.heading("File:.| 000002f0 43 61 74 61 6c 6f 67 75 65 22 29 0d 01 18 14 41 |Catalogue")....A| 00000300 25 3d 91 3a f5 3a fd 91 3e 41 25 2b 32 30 30 0d |%=.:.:..>A%+200.| 00000310 01 22 16 f2 66 69 6e 64 63 61 74 28 a4 67 65 74 |."..findcat(.get| 00000320 6c 69 6e 6b 29 0d 01 2c 39 e7 4d 25 3e 39 20 84 |link)..,9.M%>9 .| 00000330 4e 25 3e 26 46 45 20 f2 68 65 61 64 69 6e 67 28 |N%>&FE .heading(| 00000340 22 81 45 72 72 6f 72 86 2d 20 4e 6f 20 43 61 74 |".Error.- No Cat| 00000350 61 6c 6f 67 75 65 22 29 3a e5 8d 64 7e 41 0d 01 |alogue"):..d~A..| 00000360 36 40 f2 68 65 61 64 69 6e 67 28 22 46 69 6c 65 |6@.heading("File| 00000370 3a 86 43 61 74 61 6c 6f 67 75 65 20 20 20 20 87 |:.Catalogue .| 00000380 50 61 67 65 3a 86 22 2b c3 28 4d 25 29 2b c2 22 |Page:."+.(M%)+."| 00000390 30 30 22 2b c3 7e 28 4e 25 29 2c 32 29 29 0d 01 |00"+.~(N%),2))..| 000003a0 40 24 f1 8a 30 2c 30 29 3b 22 50 22 3b c3 28 4d |@$..0,0);"P";.(M| 000003b0 25 29 3b c2 22 30 30 22 2b c3 7e 28 4e 25 29 2c |%);."00"+.~(N%),| 000003c0 32 29 0d 01 4a 26 f2 64 6f 77 6e 6c 6f 61 64 28 |2)..J&.download(| 000003d0 4d 25 2c 4e 25 2c 22 43 41 54 41 4c 4f 47 22 2c |M%,N%,"CATALOG",| 000003e0 30 2c 30 2c a3 2c b9 29 0d 01 54 0e f2 69 6e 74 |0,0,.,.)..T..int| 000003f0 65 72 70 72 65 74 0d 01 5e 42 e7 5a 25 3d 30 20 |erpret..^B.Z%=0 | 00000400 eb 37 3a f2 68 65 61 64 69 6e 67 28 22 81 4e 6f |.7:.heading(".No| 00000410 20 76 61 6c 69 64 20 66 69 6c 65 73 20 62 72 6f | valid files bro| 00000420 61 64 63 61 73 74 20 74 68 69 73 20 77 65 65 6b |adcast this week| 00000430 22 29 3a e5 8d 64 7e 41 0d 01 68 0f f2 63 68 6f |"):..d~A..h..cho| 00000440 6f 73 65 28 5a 25 29 0d 01 72 0c e3 57 25 3d 31 |ose(Z%)..r..W%=1| 00000450 b8 5a 25 0d 01 7c 1c e7 20 6d 61 72 6b 25 28 57 |.Z%..|.. mark%(W| 00000460 25 29 20 3d 20 30 20 8c 20 e5 20 8d 74 6e 41 0d |%) = 0 . . .tnA.| 00000470 01 86 16 eb 37 3a ef 32 33 3b 38 32 30 32 3b 30 |....7:.23;8202;0| 00000480 3b 30 3b 30 3b 0d 01 90 51 f2 68 65 61 64 69 6e |;0;0;...Q.headin| 00000490 67 28 22 46 69 6c 65 3a 86 22 2b 66 6e 61 6d 65 |g("File:."+fname| 000004a0 24 28 57 25 29 2b c4 28 31 32 2d a9 28 66 6e 61 |$(W%)+.(12-.(fna| 000004b0 6d 65 24 28 57 25 29 29 29 2c 22 20 22 29 2b 22 |me$(W%)))," ")+"| 000004c0 87 4c 65 6e 67 74 68 3a 86 22 2b 70 61 67 65 73 |.Length:."+pages| 000004d0 24 28 57 25 29 29 0d 01 9a 2e f1 8a 30 2c 30 29 |$(W%))......0,0)| 000004e0 3b 22 50 22 3b 6d 61 67 25 28 57 25 29 3b c2 22 |;"P";mag%(W%);."| 000004f0 30 30 22 2b c3 7e 28 70 61 67 65 25 28 57 25 29 |00"+.~(page%(W%)| 00000500 29 2c 32 29 0d 01 a4 44 f2 64 6f 77 6e 6c 6f 61 |),2)...D.downloa| 00000510 64 28 6d 61 67 25 28 57 25 29 2c 70 61 67 65 25 |d(mag%(W%),page%| 00000520 28 57 25 29 2c 66 6e 61 6d 65 24 28 57 25 29 2c |(W%),fname$(W%),| 00000530 6c 6f 61 64 25 28 57 25 29 2c 65 78 65 63 25 28 |load%(W%),exec%(| 00000540 57 25 29 2c b9 2c b9 29 0d 01 ae 05 ed 0d 01 b8 |W%),.,.)........| 00000550 06 eb 37 0d 01 c2 09 2a 48 4f 46 46 0d 01 cc 22 |..7....*HOFF..."| 00000560 f2 68 65 61 64 69 6e 67 28 22 86 46 69 6c 65 73 |.heading(".Files| 00000570 20 64 6f 77 6e 6c 6f 61 64 65 64 3a 22 29 0d 01 | downloaded:")..| 00000580 d6 0c e3 41 25 3d 31 b8 5a 25 0d 01 e0 1c e7 20 |...A%=1.Z%..... | 00000590 6d 61 72 6b 25 28 41 25 29 20 3d 20 30 20 8c 20 |mark%(A%) = 0 . | 000005a0 e5 20 8d 64 74 41 0d 01 ea 90 f1 3b 63 6f 6c 24 |. .dtA.....;col$| 000005b0 28 41 25 29 3b c0 66 6e 61 6d 65 24 28 41 25 29 |(A%);.fname$(A%)| 000005c0 2b 22 20 20 20 20 20 20 20 20 22 2c 38 29 3b c0 |+" ",8);.| 000005d0 22 28 22 2b 74 79 70 65 24 28 41 25 29 2b 22 29 |"("+type$(A%)+")| 000005e0 20 20 20 20 20 20 22 2c 38 29 3b 22 20 22 3b c0 | ",8);" ";.| 000005f0 70 61 67 65 73 24 28 41 25 29 2b 22 20 20 20 20 |pages$(A%)+" | 00000600 20 20 20 20 20 22 2c 39 29 3b 22 86 4c 64 22 3b | ",9);".Ld";| 00000610 63 6f 6c 24 28 41 25 29 3b 22 26 22 3b c2 22 30 |col$(A%);"&";."0| 00000620 30 30 30 30 22 2b c3 7e 28 6c 6f 61 64 25 28 41 |0000"+.~(load%(A| 00000630 25 29 29 2c 36 29 0d 01 f4 05 ed 0d 01 fe 09 2a |%)),6).........*| 00000640 48 4f 46 46 0d 02 08 11 f2 72 65 74 75 72 6e 5f |HOFF.....return_| 00000650 6f 73 68 77 6d 0d 02 12 08 2a 46 58 34 0d 02 1c |oshwm....*FX4...| 00000660 05 e0 0d 02 26 05 3a 0d 02 30 10 dd f2 6d 6f 76 |....&.:..0...mov| 00000670 65 5f 6f 73 68 77 6d 0d 02 3a 0c 53 25 3d 26 35 |e_oshwm..:.S%=&5| 00000680 30 30 30 0d 02 44 20 41 25 3d 26 42 34 3a 58 25 |000..D A%=&B4:X%| 00000690 3d 53 25 81 32 35 36 3a 59 25 3d 30 3a d6 26 46 |=S%.256:Y%=0:.&F| 000006a0 46 46 34 0d 02 4e 05 e1 0d 02 58 05 3a 0d 02 62 |FF4..N....X.:..b| 000006b0 42 dd f2 64 6f 77 6e 6c 6f 61 64 28 6d 61 67 61 |B..download(maga| 000006c0 7a 69 6e 65 25 2c 70 61 67 65 25 2c 66 69 6c 65 |zine%,page%,file| 000006d0 6e 61 6d 65 24 2c 6c 6f 61 64 25 2c 65 78 65 63 |name$,load%,exec| 000006e0 25 2c 73 61 76 65 25 2c 72 65 73 65 74 25 29 0d |%,save%,reset%).| 000006f0 02 6c 24 f2 6f 73 63 6c 69 28 22 4d 41 47 41 5a |.l$.oscli("MAGAZ| 00000700 49 4e 45 20 22 2b c3 28 6d 61 67 61 7a 69 6e 65 |INE "+.(magazine| 00000710 25 29 29 0d 02 76 0e 73 70 61 63 65 3f 30 3d 32 |%))..v.space?0=2| 00000720 34 0d 02 80 27 73 70 61 63 65 3f 31 3d 6e 61 6d |4...'space?1=nam| 00000730 65 20 83 32 35 36 3a 73 70 61 63 65 3f 32 3d 6e |e .256:space?2=n| 00000740 61 6d 65 20 81 32 35 36 0d 02 8a 13 24 6e 61 6d |ame .256....$nam| 00000750 65 3d 66 69 6c 65 6e 61 6d 65 24 0d 02 94 11 73 |e=filename$....s| 00000760 70 61 63 65 21 33 3d 6c 6f 61 64 25 0d 02 9e 11 |pace!3=load%....| 00000770 73 70 61 63 65 21 37 3d 65 78 65 63 25 0d 02 a8 |space!7=exec%...| 00000780 16 73 70 61 63 65 3f 31 31 3d 6d 61 67 61 7a 69 |.space?11=magazi| 00000790 6e 65 25 0d 02 b2 12 73 70 61 63 65 3f 31 32 3d |ne%....space?12=| 000007a0 70 61 67 65 25 0d 02 bc 24 e7 73 61 76 65 25 3d |page%...$.save%=| 000007b0 b9 20 73 70 61 63 65 3f 31 33 3d 31 20 8b 20 73 |. space?13=1 . s| 000007c0 70 61 63 65 3f 31 33 3d 30 0d 02 c6 25 e7 72 65 |pace?13=0...%.re| 000007d0 73 65 74 25 3d b9 20 73 70 61 63 65 3f 31 34 3d |set%=. space?14=| 000007e0 30 20 8b 20 73 70 61 63 65 3f 31 34 3d 31 0d 02 |0 . space?14=1..| 000007f0 d0 26 41 25 3d 26 37 41 3a 58 25 3d 73 70 61 63 |.&A%=&7A:X%=spac| 00000800 65 20 83 32 35 36 3a 59 25 3d 73 70 61 63 65 20 |e .256:Y%=space | 00000810 81 32 35 36 0d 02 da 0a d6 26 46 46 46 31 0d 02 |.256.....&FFF1..| 00000820 e4 05 e1 0d 02 ee 05 3a 0d 02 f8 12 dd f2 6f 73 |.......:......os| 00000830 63 6c 69 28 74 65 78 74 24 29 0d 03 02 29 24 6c |cli(text$)...)$l| 00000840 69 6e 65 3d 74 65 78 74 24 3a 58 25 3d 6c 69 6e |ine=text$:X%=lin| 00000850 65 20 83 32 35 36 3a 59 25 3d 6c 69 6e 65 20 81 |e .256:Y%=line .| 00000860 32 35 36 0d 03 0c 0a d6 26 46 46 46 37 0d 03 16 |256.....&FFF7...| 00000870 05 e1 0d 03 20 05 3a 0d 03 2a 15 dd f2 68 65 61 |.... .:..*...hea| 00000880 64 69 6e 67 28 66 6e 61 6d 65 24 29 0d 03 34 05 |ding(fname$)..4.| 00000890 db 0d 03 3e 3a f1 27 89 33 3b bd 31 33 32 3b bd |...>:.'.3;.132;.| 000008a0 31 35 37 3b bd 31 34 31 3b 22 83 46 69 6c 65 73 |157;.141;".Files| 000008b0 20 66 72 6f 6d 20 54 65 6c 65 73 6f 66 74 77 61 | from Telesoftwa| 000008c0 72 65 20 20 20 22 3b bd 31 35 36 0d 03 48 39 f1 |re ";.156..H9.| 000008d0 89 33 3b bd 31 33 32 3b bd 31 35 37 3b bd 31 34 |.3;.132;.157;.14| 000008e0 31 3b 22 83 46 69 6c 65 73 20 66 72 6f 6d 20 54 |1;".Files from T| 000008f0 65 6c 65 73 6f 66 74 77 61 72 65 20 20 20 22 3b |elesoftware ";| 00000900 bd 31 35 36 0d 03 52 10 f1 8a 31 2c 35 29 66 6e |.156..R...1,5)fn| 00000910 61 6d 65 24 0d 03 5c 05 e1 0d 03 66 05 3a 0d 03 |ame$..\....f.:..| 00000920 70 12 dd f2 72 65 74 75 72 6e 5f 6f 73 68 77 6d |p...return_oshwm| 00000930 0d 03 7a 20 41 25 3d 26 42 34 3a 58 25 3d 90 20 |..z A%=&B4:X%=. | 00000940 81 32 35 36 3a 59 25 3d 30 3a d6 26 46 46 46 34 |.256:Y%=0:.&FFF4| 00000950 0d 03 84 05 e1 0d 03 8e 05 3a 0d 03 98 0f dd f2 |.........:......| 00000960 69 6e 74 65 72 70 72 65 74 0d 03 a2 10 73 74 61 |interpret....sta| 00000970 25 3d 53 25 3a 5a 25 3d 30 0d 03 ac 24 f4 22 83 |%=S%:Z%=0...$.".| 00000980 49 67 6e 6f 72 65 20 31 73 74 20 32 20 73 74 72 |Ignore 1st 2 str| 00000990 69 6e 67 73 20 69 6e 20 63 61 74 2e 3a 0d 03 b6 |ings in cat.:...| 000009a0 27 73 74 61 25 3d 73 74 61 25 2b 31 2b 3f 73 74 |'sta%=sta%+1+?st| 000009b0 61 25 3a 73 74 61 25 3d 73 74 61 25 2b 31 2b 3f |a%:sta%=sta%+1+?| 000009c0 73 74 61 25 0d 03 c0 05 f5 0d 03 ca 18 f4 22 83 |sta%..........".| 000009d0 44 65 63 6f 64 65 20 63 61 74 61 6c 6f 67 75 65 |Decode catalogue| 000009e0 3a 0d 03 d4 14 f4 22 81 6d 61 63 68 69 6e 65 20 |:.....".machine | 000009f0 74 79 70 65 3a 0d 03 de 0e 6c 65 6e 25 3d 3f 73 |type:....len%=?s| 00000a00 74 61 25 0d 03 e8 26 e3 41 25 3d 73 74 61 25 b8 |ta%...&.A%=sta%.| 00000a10 73 74 61 25 2b 6c 65 6e 25 3a 3f 41 25 3d 28 3f |sta%+len%:?A%=(?| 00000a20 41 25 29 80 26 37 46 3a ed 0d 03 f2 47 54 25 3d |A%).&7F:....GT%=| 00000a30 3f 28 73 74 61 25 2b 6c 65 6e 25 2b 31 29 3a 3f |?(sta%+len%+1):?| 00000a40 28 73 74 61 25 2b 6c 65 6e 25 2b 31 29 3d 31 33 |(sta%+len%+1)=13| 00000a50 3a 6d 63 24 3d 24 28 73 74 61 25 2b 31 29 3a 3f |:mc$=$(sta%+1):?| 00000a60 28 73 74 61 25 2b 6c 65 6e 25 2b 31 29 3d 54 25 |(sta%+len%+1)=T%| 00000a70 0d 03 fc 15 73 74 61 25 3d 73 74 61 25 2b 31 2b |....sta%=sta%+1+| 00000a80 3f 73 74 61 25 0d 04 06 1f f4 22 83 45 6e 64 20 |?sta%.....".End | 00000a90 6f 66 20 63 61 74 61 6c 6f 67 75 65 20 69 73 20 |of catalogue is | 00000aa0 2a 2a 2a 3a 0d 04 10 14 e7 6d 63 24 3d 22 2a 2a |***:.....mc$="**| 00000ab0 2a 22 20 e5 8d 54 54 45 0d 04 1a 14 f4 22 81 67 |*" ..TTE.....".g| 00000ac0 65 74 20 66 69 6c 65 6e 61 6d 65 3a 0d 04 24 0e |et filename:..$.| 00000ad0 6c 65 6e 25 3d 3f 73 74 61 25 0d 04 2e 1b 63 6f |len%=?sta%....co| 00000ae0 6c 24 3d bd 28 28 3f 28 73 74 61 25 2b 31 29 29 |l$=.((?(sta%+1))| 00000af0 84 26 38 30 29 0d 04 38 24 e3 41 25 3d 73 74 61 |.&80)..8$.A%=sta| 00000b00 25 b8 73 74 61 25 2b 6c 65 6e 25 3a 3f 41 25 3d |%.sta%+len%:?A%=| 00000b10 28 3f 41 25 29 80 26 37 46 0d 04 42 28 e7 28 3f |(?A%).&7F..B(.(?| 00000b20 41 25 3e 26 36 30 29 20 80 20 28 3f 41 25 3c 26 |A%>&60) . (?A%<&| 00000b30 37 42 29 20 3f 41 25 3d 28 3f 41 25 29 80 26 44 |7B) ?A%=(?A%).&D| 00000b40 46 0d 04 4c 05 ed 0d 04 56 47 54 25 3d 3f 28 73 |F..L....VGT%=?(s| 00000b50 74 61 25 2b 6c 65 6e 25 2b 31 29 3a 3f 28 73 74 |ta%+len%+1):?(st| 00000b60 61 25 2b 6c 65 6e 25 2b 31 29 3d 31 33 3a 66 6e |a%+len%+1)=13:fn| 00000b70 24 3d 24 28 73 74 61 25 2b 32 29 3a 3f 28 73 74 |$=$(sta%+2):?(st| 00000b80 61 25 2b 6c 65 6e 25 2b 31 29 3d 54 25 0d 04 60 |a%+len%+1)=T%..`| 00000b90 15 73 74 61 25 3d 73 74 61 25 2b 31 2b 3f 73 74 |.sta%=sta%+1+?st| 00000ba0 61 25 0d 04 6a 15 f4 22 81 67 65 74 20 66 69 6c |a%..j..".get fil| 00000bb0 65 20 74 79 70 65 3a 0d 04 74 0e 6c 65 6e 25 3d |e type:..t.len%=| 00000bc0 3f 73 74 61 25 0d 04 7e 26 e3 41 25 3d 73 74 61 |?sta%..~&.A%=sta| 00000bd0 25 b8 73 74 61 25 2b 6c 65 6e 25 3a 3f 41 25 3d |%.sta%+len%:?A%=| 00000be0 28 3f 41 25 29 80 26 37 46 3a ed 0d 04 88 47 54 |(?A%).&7F:....GT| 00000bf0 25 3d 3f 28 73 74 61 25 2b 6c 65 6e 25 2b 31 29 |%=?(sta%+len%+1)| 00000c00 3a 3f 28 73 74 61 25 2b 6c 65 6e 25 2b 31 29 3d |:?(sta%+len%+1)=| 00000c10 31 33 3a 66 74 24 3d 24 28 73 74 61 25 2b 31 29 |13:ft$=$(sta%+1)| 00000c20 3a 3f 28 73 74 61 25 2b 6c 65 6e 25 2b 31 29 3d |:?(sta%+len%+1)=| 00000c30 54 25 0d 04 92 15 73 74 61 25 3d 73 74 61 25 2b |T%....sta%=sta%+| 00000c40 31 2b 3f 73 74 61 25 0d 04 9c 15 f4 22 81 47 65 |1+?sta%.....".Ge| 00000c50 74 20 66 69 6c 65 20 73 69 7a 65 3a 0d 04 a6 0e |t file size:....| 00000c60 6c 65 6e 25 3d 3f 73 74 61 25 0d 04 b0 26 e3 41 |len%=?sta%...&.A| 00000c70 25 3d 73 74 61 25 b8 73 74 61 25 2b 6c 65 6e 25 |%=sta%.sta%+len%| 00000c80 3a 3f 41 25 3d 28 3f 41 25 29 80 26 37 46 3a ed |:?A%=(?A%).&7F:.| 00000c90 0d 04 ba 48 54 25 3d 3f 28 73 74 61 25 2b 6c 65 |...HT%=?(sta%+le| 00000ca0 6e 25 2b 31 29 3a 3f 28 73 74 61 25 2b 6c 65 6e |n%+1):?(sta%+len| 00000cb0 25 2b 31 29 3d 31 33 3a 6c 65 6e 24 3d 24 28 73 |%+1)=13:len$=$(s| 00000cc0 74 61 25 2b 31 29 3a 3f 28 73 74 61 25 2b 6c 65 |ta%+1):?(sta%+le| 00000cd0 6e 25 2b 31 29 3d 54 25 0d 04 c4 15 73 74 61 25 |n%+1)=T%....sta%| 00000ce0 3d 73 74 61 25 2b 31 2b 3f 73 74 61 25 0d 04 ce |=sta%+1+?sta%...| 00000cf0 21 f4 22 81 67 65 74 20 6c 6f 61 64 20 26 20 65 |!.".get load & e| 00000d00 78 65 63 20 61 64 64 72 65 73 73 65 73 3a 0d 04 |xec addresses:..| 00000d10 d8 29 6c 6f 61 64 25 3d a4 61 64 64 72 28 73 74 |.)load%=.addr(st| 00000d20 61 25 29 3a 65 78 65 63 25 3d a4 61 64 64 72 28 |a%):exec%=.addr(| 00000d30 73 74 61 25 2b 34 29 0d 04 e2 1a f4 22 81 67 65 |sta%+4).....".ge| 00000d40 74 20 6d 61 67 20 26 20 70 61 67 65 20 6e 6f 2e |t mag & page no.| 00000d50 3a 0d 04 ec 22 6d 61 67 25 3d 3f 28 73 74 61 25 |:..."mag%=?(sta%| 00000d60 2b 38 29 3a 70 61 67 65 25 3d 3f 28 73 74 61 25 |+8):page%=?(sta%| 00000d70 2b 39 29 0d 04 f6 10 73 74 61 25 3d 73 74 61 25 |+9)....sta%=sta%| 00000d80 2b 31 30 0d 05 00 3c f2 73 61 76 65 5f 69 6e 66 |+10...<.save_inf| 00000d90 6f 28 6d 63 24 2c 63 6f 6c 24 2c 66 6e 24 2c 66 |o(mc$,col$,fn$,f| 00000da0 74 24 2c 6c 65 6e 24 2c 6c 6f 61 64 25 2c 65 78 |t$,len$,load%,ex| 00000db0 65 63 25 2c 6d 61 67 25 2c 70 61 67 65 25 29 0d |ec%,mag%,page%).| 00000dc0 05 0a 1e f4 22 83 55 6e 74 69 6c 20 65 6e 64 20 |....".Until end | 00000dd0 6f 66 20 63 61 74 61 6c 6f 67 75 65 3a 0d 05 14 |of catalogue:...| 00000de0 0e fd 6d 63 24 3d 22 2a 2a 2a 22 0d 05 1e 05 e1 |..mc$="***".....| 00000df0 0d 05 28 05 3a 0d 05 32 0f dd a4 61 64 64 72 28 |..(.:..2...addr(| 00000e00 73 74 25 29 0d 05 3c 3a 3d 28 28 28 28 28 3f 73 |st%)..<:=(((((?s| 00000e10 74 25 2a 32 35 36 29 2b 3f 28 73 74 25 2b 31 29 |t%*256)+?(st%+1)| 00000e20 29 2a 32 35 36 29 2b 3f 28 73 74 25 2b 32 29 2a |)*256)+?(st%+2)*| 00000e30 32 35 36 29 2b 3f 28 73 74 25 2b 33 29 29 0d 05 |256)+?(st%+3))..| 00000e40 46 0d dd a4 67 65 74 6c 69 6e 6b 0d 05 50 08 3d |F...getlink..P.=| 00000e50 32 30 30 0d 05 5a 38 73 70 61 63 65 3f 30 3d 31 |200..Z8space?0=1| 00000e60 35 3a 41 25 3d 26 37 41 3a 58 25 3d 73 70 61 63 |5:A%=&7A:X%=spac| 00000e70 65 20 83 32 35 36 3a 59 25 3d 73 70 61 63 65 20 |e .256:Y%=space | 00000e80 81 32 35 36 3a d6 26 46 46 46 31 0d 05 64 48 e7 |.256:.&FFF1..dH.| 00000e90 28 28 73 70 61 63 65 3f 31 29 2a 31 30 30 29 2b |((space?1)*100)+| 00000ea0 73 70 61 63 65 3f 32 3e 39 39 39 20 f2 68 65 61 |space?2>999 .hea| 00000eb0 64 69 6e 67 28 22 81 45 72 72 6f 72 86 2d 20 4e |ding(".Error.- N| 00000ec0 6f 20 43 61 74 61 6c 6f 67 75 65 22 29 3a e5 8d |o Catalogue"):..| 00000ed0 64 7e 41 0d 05 6e 1c 3d 28 28 73 70 61 63 65 3f |d~A..n.=((space?| 00000ee0 31 29 2a 31 30 30 29 2b 73 70 61 63 65 3f 32 0d |1)*100)+space?2.| 00000ef0 05 78 05 3a 0d 05 82 11 dd f2 66 69 6e 64 63 61 |.x.:......findca| 00000f00 74 28 4f 25 29 0d 05 8c 19 f2 6f 73 63 6c 69 28 |t(O%).....oscli(| 00000f10 22 50 41 47 45 20 22 2b c3 28 4f 25 29 29 0d 05 |"PAGE "+.(O%))..| 00000f20 96 10 ea 61 25 2c 70 6e 24 2c 72 6f 77 25 0d 05 |...a%,pn$,row%..| 00000f30 a0 0e 2a 44 41 54 41 20 35 30 30 30 0d 05 aa 0f |..*DATA 5000....| 00000f40 61 25 3d 26 35 30 30 30 2d 34 32 0d 05 b4 05 f5 |a%=&5000-42.....| 00000f50 0d 05 be 0c 61 25 3d 61 25 2b 34 32 0d 05 c8 29 |....a%=a%+42...)| 00000f60 fd 28 61 25 3f 31 3d 32 37 20 80 20 a4 64 65 68 |.(a%?1=27 . .deh| 00000f70 61 6d 28 61 25 3f 32 29 3d 30 29 20 84 61 25 3e |am(a%?2)=0) .a%>| 00000f80 26 35 38 30 30 0d 05 d2 39 e7 61 25 3e 26 35 38 |&5800...9.a%>&58| 00000f90 30 30 20 4d 25 3d 30 3a f2 68 65 61 64 69 6e 67 |00 M%=0:.heading| 00000fa0 28 22 81 45 72 72 6f 72 86 2d 6e 6f 20 63 61 74 |(".Error.-no cat| 00000fb0 61 6c 6f 67 75 65 22 29 3a e5 8d 64 7e 41 0d 05 |alogue"):..d~A..| 00000fc0 dc 0b e3 56 25 3d 30 b8 35 0d 05 e6 0f 44 28 56 |...V%=0.5....D(V| 00000fd0 25 29 3d 32 37 2b 56 25 0d 05 f0 1a 44 28 56 25 |%)=27+V%....D(V%| 00000fe0 29 3d a4 64 65 68 61 6d 28 61 25 3f 44 28 56 25 |)=.deham(a%?D(V%| 00000ff0 29 29 0d 05 fa 05 ed 0d 06 04 2a 4d 25 3d 28 28 |))........*M%=((| 00001000 28 44 28 35 29 20 80 31 32 29 81 32 29 84 28 44 |(D(5) .12).2).(D| 00001010 28 33 29 20 81 38 29 29 82 28 4f 25 81 31 30 30 |(3) .8)).(O%.100| 00001020 29 0d 06 0e 17 4e 25 3d 28 44 28 31 29 2a 31 36 |)....N%=(D(1)*16| 00001030 29 2b 28 44 28 30 29 29 0d 06 18 05 e1 0d 06 22 |)+(D(0))......."| 00001040 05 3a 0d 06 2c 12 dd a4 64 65 68 61 6d 28 62 79 |.:..,...deham(by| 00001050 74 65 25 29 0d 06 36 46 73 70 61 63 65 3f 30 3d |te%)..6Fspace?0=| 00001060 32 35 3a 73 70 61 63 65 3f 31 3d 62 79 74 65 25 |25:space?1=byte%| 00001070 3a 41 25 3d 26 37 41 3a 58 25 3d 73 70 61 63 65 |:A%=&7A:X%=space| 00001080 20 83 32 35 36 3a 59 25 3d 73 70 61 63 65 20 81 | .256:Y%=space .| 00001090 32 35 36 3a d6 26 46 46 46 31 0d 06 40 11 3d 28 |256:.&FFF1..@.=(| 000010a0 73 70 61 63 65 3f 32 29 80 26 46 0d 06 4a 05 3a |space?2).&F..J.:| 000010b0 0d 06 54 3d dd f2 73 61 76 65 5f 69 6e 66 6f 28 |..T=..save_info(| 000010c0 6d 63 24 2c 63 6f 6c 24 2c 66 6e 24 2c 66 74 24 |mc$,col$,fn$,ft$| 000010d0 2c 6c 65 6e 24 2c 6c 6f 61 64 25 2c 65 78 65 63 |,len$,load%,exec| 000010e0 25 2c 6d 61 67 25 2c 70 61 67 65 25 29 0d 06 5e |%,mag%,page%)..^| 000010f0 24 f4 22 83 49 67 6e 6f 72 65 20 66 69 6c 65 73 |$.".Ignore files| 00001100 20 66 6f 72 20 6f 74 68 65 72 20 6d 2f 63 27 73 | for other m/c's| 00001110 3a 0d 06 68 22 f4 22 82 41 64 64 20 72 6f 75 74 |:..h".".Add rout| 00001120 69 6e 65 73 20 68 65 72 65 20 74 6f 20 69 67 6e |ines here to ign| 00001130 6f 72 65 0d 06 72 24 f4 22 82 61 6e 79 20 75 6e |ore..r$.".any un| 00001140 77 61 6e 74 65 64 20 66 69 6c 65 73 2e 83 45 61 |wanted files..Ea| 00001150 63 68 20 66 69 6c 65 0d 06 7c 22 f4 22 83 69 64 |ch file..|".".id| 00001160 65 6e 74 69 66 69 65 64 20 62 79 20 74 68 65 20 |entified by the | 00001170 66 6f 6c 6c 6f 77 69 6e 67 0d 06 86 0e f4 22 83 |following.....".| 00001180 61 72 72 61 79 73 3a 0d 06 90 20 f4 22 86 63 6f |arrays:... .".co| 00001190 6c 24 81 46 69 6c 65 6e 61 6d 65 20 63 6f 6c 6f |l$.Filename colo| 000011a0 75 72 20 63 6f 64 65 0d 06 9a 13 f4 22 86 66 6e |ur code.....".fn| 000011b0 24 81 46 69 6c 65 6e 61 6d 65 0d 06 a4 14 f4 22 |$.Filename....."| 000011c0 86 66 74 24 81 46 69 6c 65 20 74 79 70 65 0d 06 |.ft$.File type..| 000011d0 ae 17 f4 22 86 6c 65 6e 24 81 46 69 6c 65 20 6c |...".len$.File l| 000011e0 65 6e 67 74 68 0d 06 b8 19 f4 22 86 6c 6f 61 64 |ength.....".load| 000011f0 25 81 4c 6f 61 64 20 61 64 64 72 65 73 73 0d 06 |%.Load address..| 00001200 c2 1e f4 22 86 65 78 65 63 25 81 45 78 65 63 75 |...".exec%.Execu| 00001210 74 69 6f 6e 20 61 64 64 72 65 73 73 0d 06 cc 22 |tion address..."| 00001220 f4 22 86 6d 61 67 25 81 4d 61 67 61 7a 69 6e 65 |.".mag%.Magazine| 00001230 20 69 6e 20 77 68 69 63 68 20 66 69 6c 65 0d 06 | in which file..| 00001240 d6 1a f4 22 20 20 20 20 20 81 69 73 20 74 72 61 |..." .is tra| 00001250 6e 73 6d 69 74 74 65 64 0d 06 e0 22 f4 22 86 70 |nsmitted...".".p| 00001260 61 67 65 25 81 50 61 67 65 20 6f 6e 20 77 68 69 |age%.Page on whi| 00001270 63 68 20 66 69 6c 65 20 69 73 0d 06 ea 17 f4 22 |ch file is....."| 00001280 20 20 20 20 20 81 74 72 61 6e 73 6d 69 74 74 65 | .transmitte| 00001290 64 0d 06 f4 23 f4 22 83 41 6e 79 20 66 69 6c 65 |d...#.".Any file| 000012a0 20 6e 6f 74 20 72 65 71 75 69 72 65 64 20 73 68 | not required sh| 000012b0 6f 75 6c 64 0d 06 fe 23 f4 22 83 63 61 75 73 65 |ould...#.".cause| 000012c0 20 74 68 69 73 20 70 72 6f 63 65 64 75 72 65 20 | this procedure | 000012d0 74 6f 20 65 78 69 74 0d 07 08 1c f4 22 83 62 65 |to exit.....".be| 000012e0 66 6f 72 65 20 74 68 65 20 6e 65 78 74 20 6c 69 |fore the next li| 000012f0 6e 65 2e 0d 07 12 13 f4 22 83 46 6f 72 20 65 78 |ne......".For ex| 00001300 61 6d 70 6c 65 3a 0d 07 1c 23 f4 22 81 49 46 20 |ample:...#.".IF | 00001310 66 74 24 3c 3e 22 42 41 53 49 43 22 20 54 48 45 |ft$<>"BASIC" THE| 00001320 4e 20 45 4e 44 50 52 4f 43 0d 07 26 90 5a 25 3d |N ENDPROC..&.Z%=| 00001330 5a 25 2b 31 3a 70 61 67 65 25 28 5a 25 29 3d 70 |Z%+1:page%(Z%)=p| 00001340 61 67 65 25 3a 66 6e 61 6d 65 24 28 5a 25 29 3d |age%:fname$(Z%)=| 00001350 66 6e 24 3a 74 79 70 65 24 28 5a 25 29 3d 66 74 |fn$:type$(Z%)=ft| 00001360 24 3a 6c 6f 61 64 25 28 5a 25 29 3d 6c 6f 61 64 |$:load%(Z%)=load| 00001370 25 3a 65 78 65 63 25 28 5a 25 29 3d 65 78 65 63 |%:exec%(Z%)=exec| 00001380 25 3a 70 61 67 65 73 24 28 5a 25 29 3d 6c 65 6e |%:pages$(Z%)=len| 00001390 24 3a 6d 61 67 25 28 5a 25 29 3d 6d 61 67 25 3a |$:mag%(Z%)=mag%:| 000013a0 63 6f 6c 24 28 5a 25 29 3d 63 6f 6c 24 3a 6d 63 |col$(Z%)=col$:mc| 000013b0 24 28 5a 25 29 3d 6d 63 24 0d 07 30 11 6d 61 72 |$(Z%)=mc$..0.mar| 000013c0 6b 25 28 5a 25 29 20 3d 20 30 0d 07 3a 05 e1 0d |k%(Z%) = 0..:...| 000013d0 07 44 14 dd f2 63 68 6f 6f 73 65 28 66 69 6c 65 |.D...choose(file| 000013e0 73 25 29 0d 07 4e 0a 2a 46 58 34 2c 31 0d 07 58 |s%)..N.*FX4,1..X| 000013f0 08 53 25 3d 31 0d 07 62 12 ef 20 32 38 2c 30 2c |.S%=1..b.. 28,0,| 00001400 31 39 2c 33 39 2c 34 0d 07 6c 05 db 0d 07 76 13 |19,39,4..l....v.| 00001410 ef 32 33 3b 38 32 30 32 3b 30 3b 30 3b 30 3b 0d |.23;8202;0;0;0;.| 00001420 07 80 09 f2 64 69 73 31 0d 07 8a 08 49 25 3d 30 |....dis1....I%=0| 00001430 0d 07 94 07 f2 69 6e 0d 07 9e 05 f5 0d 07 a8 08 |.....in.........| 00001440 41 25 3d a5 0d 07 b2 10 e7 20 41 25 3d 31 33 39 |A%=...... A%=139| 00001450 20 f2 75 70 0d 07 bc 12 e7 20 41 25 3d 31 33 38 | .up..... A%=138| 00001460 20 f2 64 6f 77 6e 0d 07 c6 2f e7 20 41 25 3d 31 | .down.../. A%=1| 00001470 33 20 6d 61 72 6b 25 28 53 25 20 2b 20 49 25 29 |3 mark%(S% + I%)| 00001480 20 3d 20 31 3a f2 64 69 73 28 53 25 20 2b 20 49 | = 1:.dis(S% + I| 00001490 25 2c 49 25 29 0d 07 d0 0a fd 41 25 3d 33 32 0d |%,I%).....A%=32.| 000014a0 07 da 05 e1 0d 07 e4 08 dd f2 69 6e 0d 07 ee 1a |..........in....| 000014b0 f1 8a 30 2c 49 25 29 3b bd 28 31 33 32 29 3b bd |..0,I%);.(132);.| 000014c0 28 26 39 44 29 3b 0d 07 f8 05 e1 0d 08 02 09 dd |(&9D);..........| 000014d0 f2 6f 75 74 0d 08 0c 1a f1 8a 30 2c 49 25 29 3b |.out......0,I%);| 000014e0 bd 28 31 33 35 29 3b bd 28 26 39 43 29 3b 0d 08 |.(135);.(&9C);..| 000014f0 16 05 e1 0d 08 20 08 dd f2 75 70 0d 08 2a 17 e7 |..... ...up..*..| 00001500 20 49 25 20 3d 20 30 20 80 20 53 25 20 3d 20 31 | I% = 0 . S% = 1| 00001510 20 e1 0d 08 34 31 e7 20 49 25 20 3d 20 30 3a f2 | ...41. I% = 0:.| 00001520 6f 75 74 3a 53 25 3d 53 25 2d 31 3a ef 33 30 2c |out:S%=S%-1:.30,| 00001530 31 31 3a f2 64 69 73 28 53 25 2c 30 29 3a f2 69 |11:.dis(S%,0):.i| 00001540 6e 3a e1 0d 08 3e 08 f2 6f 75 74 0d 08 48 0b 49 |n:...>..out..H.I| 00001550 25 3d 49 25 2d 31 0d 08 52 07 f2 69 6e 0d 08 5c |%=I%-1..R..in..\| 00001560 05 e1 0d 08 66 0a dd f2 64 6f 77 6e 0d 08 70 22 |....f...down..p"| 00001570 e7 20 49 25 20 3d 20 31 34 20 80 20 53 25 20 3d |. I% = 14 . S% =| 00001580 20 66 69 6c 65 73 25 20 2d 20 31 34 3a e1 0d 08 | files% - 14:...| 00001590 7a 3a e7 20 49 25 20 3d 20 31 34 3a f2 6f 75 74 |z:. I% = 14:.out| 000015a0 3a f1 8a 30 2c 31 34 29 27 3a 53 25 3d 53 25 2b |:..0,14)':S%=S%+| 000015b0 31 3a f2 64 69 73 28 53 25 20 2b 20 31 34 2c 31 |1:.dis(S% + 14,1| 000015c0 34 29 3a f2 69 6e 3a e1 0d 08 84 08 f2 6f 75 74 |4):.in:......out| 000015d0 0d 08 8e 0b 49 25 3d 49 25 2b 31 0d 08 98 07 f2 |....I%=I%+1.....| 000015e0 69 6e 0d 08 a2 05 e1 0d 08 ac 0a dd f2 64 69 73 |in...........dis| 000015f0 31 0d 08 b6 08 ea 20 5a 25 0d 08 c0 0e 45 25 3d |1..... Z%....E%=| 00001600 53 25 20 2b 20 31 34 0d 08 ca 1d e7 20 45 25 3e |S% + 14..... E%>| 00001610 66 69 6c 65 73 25 20 45 25 3d 66 69 6c 65 73 25 |files% E%=files%| 00001620 20 2d 20 31 0d 08 d4 10 e3 20 5a 25 3d 53 25 20 | - 1..... Z%=S% | 00001630 b8 20 45 25 0d 08 de 0e 43 25 3d 5a 25 20 2d 20 |. E%....C%=Z% - | 00001640 53 25 0d 08 e8 0f f2 64 69 73 28 5a 25 2c 43 25 |S%.....dis(Z%,C%| 00001650 29 0d 08 f2 05 ed 0d 08 fc 05 e1 0d 09 06 10 dd |)...............| 00001660 f2 64 69 73 28 53 25 2c 52 25 29 0d 09 10 74 f1 |.dis(S%,R%)...t.| 00001670 8a 32 2c 52 25 29 3b bd 28 31 33 35 29 3b bd 28 |.2,R%);.(135);.(| 00001680 6d 61 72 6b 25 28 53 25 29 20 2a 20 34 32 29 3b |mark%(S%) * 42);| 00001690 8a 35 2c 52 25 29 3b 6d 63 24 28 53 25 29 3b 8a |.5,R%);mc$(S%);.| 000016a0 31 30 2c 52 25 29 3b 63 6f 6c 24 28 53 25 29 3b |10,R%);col$(S%);| 000016b0 66 6e 61 6d 65 24 28 53 25 29 3b 8a 32 30 2c 52 |fname$(S%);.20,R| 000016c0 25 29 3b 74 79 70 65 24 28 53 25 29 3b 8a 32 38 |%);type$(S%);.28| 000016d0 2c 52 25 29 3b 70 61 67 65 73 24 28 53 25 29 0d |,R%);pages$(S%).| 000016e0 09 1a 05 e1 0d ff |......| 000016e6