home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C64-128BBS / UPDATE-TO-3.6 (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  10.1 KB  |  316 lines

  1. 100 POKE152,PEEK(251)
  2. 110 GOTO480
  3. 120 :
  4. 130 :REM START OF USER JUMP TABLE.
  5. 140 :
  6. 150 GOTO790 :REM CHECK FOR CARRIER.
  7. 160 GOTO850 :REM SEND P$+CHR$(13) OUT.
  8. 170 GOTO860 :REM SEND P$ OUT.
  9. 180 GOTO1000:REM GET L$ FROM MODEM.
  10. 190 GOTO1250:REM CALL FOR CHAT.
  11. 200 GOTO1290:REM ENGAGE CHAT MODE.
  12. 210 GOSUB2610:GOTO1400:REM SEND 'P' TO USERFILE.
  13. 220 GOTO1440:REM READ ERROR CHANNEL.
  14. 230 GOTO1460:REM READ SYSTEM CLOCK.
  15. 240 GOTO1560:REM DISPLAY USER STATS.
  16. 250 GOTO1700:REM DISPLAY USER ONLINE.
  17. 260 GOTO1720:REM EDIT USER STATISTICS.
  18. 270 GOTO2080:REM REMOTE SYSOP MENU.
  19. 280 GOTO2300:REM DISPLAY DIR.
  20. 290 GOTO2600:REM BREAK RC INTO LO/HI.
  21. 300 GOTO2640:REM UPDATE (USER LOG).
  22. 310 GOTO2650:REM SAME AS 2330.
  23. 320 GOTO2660:REM GET U$() FROM DISK.
  24. 330 GOTO2670:REM GET N$() FROM DISK.
  25. 340 GOTO2680:REM SEND U$() TO DISK.
  26. 350 GOTO2690:REM SEND N$() TO DISK.
  27. 360 GOTO2740:REM FIND DV,DR$ IN DR%().
  28. 370 GOTO2760:REM FIND DV,DR$
  29. 380 GOTO2770:REM INCREMENT DV,DR$.
  30. 390 GOTO2830:REM HANG UP PHONE.
  31. 400 GOTO2900:REM FIND TIME CONNECTED.
  32. 410 GOTO3040:REM RETURN TO BBS.
  33. 420 GOTO3050:REM LOAD NEXT MODULE.
  34. 430 GOTO2930:REM GET SC() FROM DISK.
  35. 440 GOTO3010:REM SEND SC() TO DISK.
  36. 450 :
  37. 460 :REM END OF USER JUMP TABLE.
  38. 470 :
  39. 480 B1=56577:B2=56579:Q$=CHR$(34):B3=56590:B4=56588:DV=8:N$=CHR$(0):SI=54272
  40. 490 DIMIN%(255),OT%(255),U$(15),N$(15),DR%(7):DR$="0"
  41. 500 GOSUB580:GOSUB510:GOTO560
  42. 510 OPEN1,8,5,"0:(BBS.CONFIG)":FORT=0TO9:INPUT#1,A:IFA=0THEN530
  43. 520 FORI=0TOA-1:INPUT#1,A$,A,A:NEXT
  44. 530 NEXT:INPUT#1,DR:FORI=0TODR-1:INPUT#1,DR%(I):NEXT:DR=DR+7
  45. 540 INPUT#1,RF:AA=-((RFAND128)=128):RF$=MID$(STR$(AA),2)+":(USERFILE)"
  46. 550 INPUT#1,SY$,BD$,MT%,RC,S1$,S2$,RR,P1$,P2$,D5,D6,MF,N2,N3,N4:CLOSE1:RETURN
  47. 560 F$=CHR$(13):P=0:POKE51972,P:SYS51976:BS=255:UL$=""
  48. 570 DC$="[149] --===[129]***[158]===[153]---===[159]***[154]===---[156]===***[158]===--[152]":GOTO3110
  49. 580 FORI=1TO64:OT%(I)=I:NEXT:OT%(20)=8:OT%(160)=32
  50. 590 OT%(12)=12:FORI=65TO90:OT%(I)=I+32:NEXT:OT%(34)=ASC("'")
  51. 600 FORI=91TO95:OT%(I)=I:NEXT:FORI=193TO218:OT%(I)=I-128:NEXT
  52. 610 OT%(5)=0:OT%(8)=0:OT%(9)=0:OT%(14)=0:OT%(17)=0:OT%(18)=0:OT%(28)=0
  53. 620 OT%(29)=0:OT%(30)=0:OT%(31)=0
  54. 630 FORI=0TO255:T=OT%(I):IFT<>0THENIN%(T)=I:IN%(T+128)=I
  55. 640 NEXT:IN%(160)=32:IN%(32)=32:RETURN
  56. 650 TI$="000000":A$=""
  57. 660 GOSUB790:IFCDTHENRETURN
  58. 670 GOSUB2900:IFSY=0ANDCO>240THENCD=1:RETURN
  59. 680 GETZ$:IFSY=0THENGET#5,A$
  60. 690 IFZ$="[133]"THENSY=SY+1:GOSUB2080:SY=SY-1:RETURN
  61. 700 IFZ$="[134]"THENGOSUB1290:TI$="000000":RETURN
  62. 710 IFZ$="[140]"THENCD=1:RETURN
  63. 720 IFZ$<>""ORA$<>""THEN760
  64. 730 IFVAL(TI$)<400THEN660
  65. 740 OPEN1,8,5,"0:(USER LOG),A":PRINT#1,UL$:PRINT#1,"[212]IME [197]LAPSED![152]":CLOSE1
  66. 750 CD=1:UL$="":RETURN
  67. 760 IFA$=""ORZ$=""THENGOSUB780
  68. 770 RETURN
  69. 780 POKESI+4,21:POKESI+4,20:RETURN
  70. 790 CD=0:IFSYTHENRETURN
  71. 800 IF(PEEK(B1)AND16)<>HLTHENRETURN
  72. 810 TI$="000000"
  73. 820 IF(PEEK(B1)AND16)<>HLTHENRETURN
  74. 830 IFVAL(TI$)>5THENCD=1:RETURN
  75. 840 GOTO820
  76. 850 P$=P$+F$
  77. 860 IFL=55THENPRINT#4,P$;:RETURN
  78. 870 IFSYTHENPRINTP$;:GOTO910
  79. 880 IFCGTHENPRINTP$;:PRINT#5,P$;:GOTO910
  80. 890 FORI=1TOLEN(P$):A$=MID$(P$,I,1):IFA$=""THENGOSUB780
  81. 900 PRINTA$;:PRINT#5,CHR$(OT%(ASC(A$)));:NEXT
  82. 910 I=PEEK(673)AND1:GET#5,A$:IFA$=""THENGETA$
  83. 920 IFA$=CHR$(160)THENA$=" "
  84. 930 IF(A$>""ANDMM)ORA$=" "ORA$="/"ORCDTHEN990
  85. 940 IFA$=""THEN970
  86. 950 IFITHEN910
  87. 960 RETURN
  88. 970 GET#5,A$:IFA$=""THENGETA$
  89. 980 IFA$=""THEN970
  90. 990 ONPEEK(673)AND1GOTO990:RETURN
  91. 1000 L$="":FORI=1TOL:PRINT"[164][157]";
  92. 1010 GOSUB650:IFCDTHENRETURN
  93. 1020 IFZ$<>""THENT=ASC(Z$):A$=Z$:GOTO1060
  94. 1030 IFCGTHENT=ASC(A$+N$):GOTO1050
  95. 1040 T=IN%(ASC(A$+N$)):A$=CHR$(T)
  96. 1050 IFT=0THEN1010
  97. 1060 IFT=34THENT=39:A$="'"
  98. 1070 IFT=20ANDL$<>""THENL$=LEFT$(L$,LEN(L$)-1):I=I-1:GOTO1130
  99. 1080 IFT=20ANDL$=""THEN1010
  100. 1090 IFT=13ANDSYTHENPRINT" ":RETURN
  101. 1100 IFT=13THENPRINT" ":PRINT#5,F$;:RETURN
  102. 1110 IFT=10THEN1010
  103. 1120 IFLEN(L$)=38THENP$="":GOSUB860:GOTO1010
  104. 1130 IFI=>30AND(ASC(A$+N$)AND127)=32ANDMMTHENT=13:GOTO1090
  105. 1140 IFSYTHENPRINTA$;:GOTO1200
  106. 1150 IF(T=20)ANDCGANDECTHENPRINTA$;:PRINT#5,A$;:GOTO1200
  107. 1160 IFT=20ANDECTHENPRINTA$;:PRINT#5,CHR$(OT%(ASC(A$)));:GOTO1200
  108. 1170 IFECTHENPRINTA$;:PRINT#5,"-";:GOTO1200
  109. 1180 IFCGTHENPRINTA$;:PRINT#5,A$;:GOTO1200
  110. 1190 PRINTA$;:PRINT#5,CHR$(OT%(ASC(A$)));
  111. 1200 IFT=20THEN1010
  112. 1210 L$=L$+A$:NEXT:T=13:EC=0:GOTO1090
  113. 1220 P$=F$+"[197]NTER [193]CCESS LEVEL: ":GOSUB860:L=5:GOSUB1000:IFCDTHENRETURN
  114. 1230 IFVAL(L$)<0ORVAL(L$)>65535ORL$=""THENRETURN
  115. 1240 L=VAL(L$):A2=INT(L/256):A1=L-A2*256:A$=CHR$(A1)+CHR$(A2):RETURN
  116. 1250 IFSA<>1THENP$=F$+F$+SY$+" IS NOT AVAILABLE RIGHT NOW.":GOSUB850:RETURN
  117. 1260 P$="[195]ALLING "+SY$+"....":GOSUB850:FORI=1TO20:GETA$:IFA$="[134]"THEN1290
  118. 1270 GOSUB780:FORT=1TO600:NEXT:NEXT
  119. 1280 P$="[212]RY AGAIN LATER....":GOSUB850:RETURN
  120. 1290 P$=F$+F$+SY$+", CHATTING WITH "+U$(1)+F$:GOSUB850
  121. 1300 PRINT"[164][157]";:GETZ$:GET#5,A$:GOSUB790
  122. 1310 IFCG=0THENA$=CHR$(IN%(ASC(A$+N$)))
  123. 1320 IFZ$="[134]"ORCDTHENP$=F$+SY$+" HAS RETURNED TO "+BD$+".":GOSUB850:RETURN
  124. 1330 IFZ$="[133]"THENSY=SY+1:GOSUB2080:SY=SY-1
  125. 1340 IFA$=CHR$(0)ORA$=""THENA$=Z$
  126. 1350 IFA$=""THEN1300
  127. 1360 IFA$=""THENGOSUB780
  128. 1370 IFA$=CHR$(13)THENPRINT" ";:PRINT#5,CHR$(10);
  129. 1380 PRINT" [157]";:IFCGTHENPRINTA$;:PRINT#5,A$;:GOTO1300
  130. 1390 PRINTA$;:PRINT#5,CHR$(OT%(ASC(A$)));:GOTO1300
  131. 1400 GOSUB2610:AA=RF:GOSUB2740
  132. 1410 FORL=1TO2:PRINT#15-B,"P"CHR$(99)CHR$(R1)CHR$(R2)CHR$(1):GOSUB1440:NEXT
  133. 1420 GOSUB1440:IFER$<"20"ORER$="50"THENRETURN
  134. 1430 PRINT"[197]RROR IN (USERFILE)!":GOSUB2830:STOP
  135. 1440 ES$="":GOSUB1450:ER$=LEFT$(ES$,2):RETURN
  136. 1450 GET#15-B,A$:ES$=ES$+A$:ON-(A$<>CHR$(13))GOTO1450:RETURN
  137. 1460 T1$="02:57:22.3 AM":SYS51982,T1$:TM$=T1$+""
  138. 1470 HO$=LEFT$(TM$,2):MI$=MID$(TM$,4,2):FZ$=RIGHT$(TM$,2)
  139. 1520 IFVAL(LEFT$(TM$,2))<>12ANDFZ$<>"AM"THENC2=1:GOTO1550
  140. 1530 IFC2THENOPEN1,8,5,"@0:(T.CALLERS),S,W":PRINT#1," ":CLOSE1:DT=DT+1
  141. 1540 IFC2THENC2=0:NT=0:IFSFTHENOPEN1,8,5,"@0:(USER LOG),S,W":CLOSE1
  142. 1550 DA$=M$+STR$(DT):RETURN
  143. 1560 P$=F$+"[217]OUR [211]TATISTICS...."+F$:GOSUB850
  144. 1570 P$="[206]AME          : "+U$(1):GOSUB850
  145. 1580 P$="[193]CCESS LEVEL  :"+STR$(AC):GOSUB850:GOSUB1460
  146. 1590 P$="[196]ATE/[212]IME     : "+DA$+" "+TM$:GOSUB850:GOSUB2900
  147. 1600 P$="[195]ONNECT [212]IME  :"+STR$(CO)+" MINS.":GOSUB850
  148. 1610 P$="[205]EMBER #      : "+R$:GOSUB850
  149. 1620 P$="[208]ASSWORD      : "+U$(4):GOSUB850
  150. 1630 P$="[193]GE           : "+U$(6):GOSUB850
  151. 1640 P$="[210]EAL [206]AME     : "+U$(7):GOSUB850
  152. 1650 P$="[212]OTAL [213]/[204]'S   : "+U$(9):GOSUB850
  153. 1660 P$="[212]OTAL [196]/[204]'S   : "+U$(10):GOSUB850
  154. 1670 P$="       [[210]ATIO - "+MID$(STR$(RR),2)+":1]":GOSUB850
  155. 1680 P$="[204]AST CALL DATE: "+U$(11):GOSUB850
  156. 1690 P$="[212]OTAL CALLS   : "+U$(12):GOSUB850:RETURN
  157. 1700 PRINT"[156]"F$U$(1)" <*> [204]VL-"+MID$(STR$(AC),2):GOSUB2900
  158. 1710 PRINTTM$" [195]ONNECTED:"STR$(CO)" MINS.[152]":RETURN
  159. 1720 P$=" [147][197]NTER ACCOUNT # OF USER.":GOSUB850
  160. 1730 P$="[193]CCOUNT # OF CURRENT USER: "+R$:GOSUB850
  161. 1740 P$="[214][213]:":GOSUB860:L=3:GOSUB1000:IFCDTHENRETURN
  162. 1750 IFL$=""THENRETURN
  163. 1760 E$=L$:IFL$=R$THENFORL=1TO12:N$(L)=U$(L):NEXT:AA=AC:GOTO1780
  164. 1770 OPEN3,RF,3,RF$:RC=VAL(L$):GOSUB1400:GOSUB2670:CLOSE3
  165. 1780 P$=" [147]1 - [206]AME      : "+N$(1)+F$+"2 - [208]HONE     : "+N$(2):GOSUB850:GOSUB2630
  166. 1790 P$="3 - [193]CCESS [204]VL:"+STR$(AA)+F$+"4 - [208]ASSWORD  : "+N$(4):GOSUB850
  167. 1800 P$="5 - # OF [197]MAIL: "+N$(5)+F$+"6 - [193]GE       : "+N$(6):GOSUB850
  168. 1810 P$="7 - [210]EAL NAME : "+N$(7)+F$+"8 - C/G MODE  : "+N$(8):GOSUB850
  169. 1820 P$="9 - [212]OTAL [213]/[204] : "+N$(9)+F$+"[193] - [212]OTAL [196]/[204] : "+N$(10):GOSUB850
  170. 1830 P$="[194] - [204]AST CALL : "+N$(11):GOSUB850
  171. 1840 P$="[195] - # CALLS   : "+N$(12):GOSUB850
  172. 1850 IFL=55THENL=0:PRINT#4:CLOSE4:GOTO1780
  173. 1860 P$=F$+"[215]HICH TO CHANGE:":GOSUB860:L=1:GOSUB1000:IFCDTHENRETURN
  174. 1870 IFL$=""ANDR$=E$THENFORL=1TO12:U$(L)=N$(L):NEXT:AC=AA:GOTO1720
  175. 1880 IFL$=""THEN1720
  176. 1890 IFL$="S"ORL$="[211]"THEN1980
  177. 1900 IFL$="P"ORL$="[208]"THENL=55:OPEN4,4,7:GOTO1780
  178. 1910 S=(ASC(L$)AND127)-64:IFS=>1ANDS<=3THENS=S+9:GOTO1940
  179. 1920 S=VAL(L$):IFS<1ORS>14THEN1780
  180. 1930 IFS=3THENGOSUB1220:N$(3)=A$:AA=A:GOTO1780
  181. 1950 P$=F$+"["+N$(S)+"]:[195]HANGE TO->":GOSUB860
  182. 1960 L=20:GOSUB1000:IFCDTHENRETURN
  183. 1970 N$(S)=L$:GOTO1780
  184. 1980 P$=F$+"[211]AVE STATS WHERE? (DEFAULT="+E$+"):":GOSUB860
  185. 1990 L=3:GOSUB1000:IFCDTHENRETURN
  186. 2000 IFL$<>""ANDVAL(L$)>0THENE$=L$
  187. 2010 P$=F$+"[211]AVE AT: "+E$:GOSUB850
  188. 2020 P$="[195]ORRECT? (Y/N):":GOSUB860:L=1:GOSUB1000:IFCDTHENRETURN
  189. 2030 IFL$<>"Y"ANDL$<>"[217]"THEN1780
  190. 2040 OPEN3,RF,3,RF$:RC=VAL(E$):GOSUB1400
  191. 2050 GOSUB2690
  192. 2060 CLOSE3
  193. 2070 RETURN
  194. 2080 AA=DV:GOSUB2740
  195. 2090 P$=" [147]":GOSUB850
  196. 2100 P$=DC$+F$+"   --**]> [210]EMOTE [211]YS-[207]P [205]ENU <[**--"+F$+DC$+F$:GOSUB850
  197. 2110 P$="[214] - [214]ALIDATE USER":GOSUB850
  198. 2120 P$="[193] - [211]CAN ANY SEQ ON DISK":GOSUB850
  199. 2130 P$="$ - [196]IRECTORY":GOSUB850
  200. 2140 P$="@ - [196]OS COMMANDS":GOSUB850
  201. 2150 P$="[213] - [211]CAN USER LOG":GOSUB850
  202. 2160 P$="[212] - [212]ODAY'S CALLERS":GOSUB850
  203. 2170 P$="# - [212]OGGLE DRIVE #"+STR$(DV)+";"+DR$:GOSUB850
  204. 2180 P$=F$+"[210][211][205]"+MID$(STR$(DV),2)+";"+DR$+":":GOSUB860:L=1:GOSUB1000:IFCDTHENRETURN
  205. 2190 IFL$=""THENRETURN
  206. 2200 L$=CHR$(ASC(L$)AND127)
  207. 2210 GOSUB2640:UL$=UL$+"[211]YSOP-"+L$+CHR$(13)
  208. 2220 ON-(L$="U")-2*(L$="A")-3*(L$="V")-4*(L$="$")GOSUB2440,2550,1720,2300
  209. 2230 ON-(A$="#")-2*(L$="T")GOSUB2770,2540
  210. 2240 IFL$="?"THEN2090
  211. 2250 IFL$<>"@"THEN2180
  212. 2260 P$=F$+">":GOSUB860:L=39:GOSUB1000:IFCDTHENRETURN
  213. 2270 IFL$=""THENGOSUB1440:P$=F$+ES$:GOSUB850:GOTO2180
  214. 2280 IFLEFT$(L$,4)=P2$+":"THENPRINT#15-B,RIGHT$(L$,LEN(L$)-4)
  215. 2290 GOTO2180
  216. 2300 P$=F$:GOSUB850:OPEN1,DV,0,"$"+DR$+":*"
  217. 2310 GOSUB1440:IFER$>"01"THENCLOSE1:P$=F$+ES$:GOSUB850:RETURN
  218. 2320 GET#1,A$:GET#1,A$
  219. 2330 GET#1,A$:GET#1,A$:IF(ST)AND64THENCLOSE1:RETURN
  220. 2340 GET#1,LO$:GET#1,HI$
  221. 2350 LO$=LO$+N$:HI$=HI$+N$
  222. 2360 P$=STR$(ASC(LO$+CHR$(0))+256*ASC(HI$+CHR$(0)))+" "
  223. 2370 GET#1,A$:IFA$=""THEN2410
  224. 2380 GET#5,Z$:IFZ$=""THENGETZ$
  225. 2390 IFZ$=" "THENCLOSE1:RETURN
  226. 2400 P$=P$+A$:GOTO2370
  227. 2410 IFECANDMID$(P$,8,1)="("THEN2330
  228. 2420 GOSUB850:IFA$=" "THENCLOSE1:RETURN
  229. 2430 GOTO2330
  230. 2440 FI$="(USER LOG)"
  231. 2450 OPEN1,DV,5,DR$+":"+FI$:P$="":GOSUB1440:IFER$>"01"THENCLOSE1:RETURN
  232. 2460 GET#1,A$:IF(ST)AND64THEN2510
  233. 2470 GET#5,Z$:IFZ$=""THENGETZ$
  234. 2480 IFZ$=" "ORZ$="/"THEN2510
  235. 2490 IFA$=CHR$(13)ORLEN(P$)=39THENGOSUB850:P$="":GOTO2460
  236. 2500 P$=P$+A$:GOTO2460
  237. 2510 GOSUB850:CLOSE1:P$=F$+"[211]CRATCH? (Y/N):":GOSUB860:L=1:GOSUB1000
  238. 2520 IFL$=""OR(L$<>"Y"ANDL$<>"[217]")THENRETURN
  239. 2530 OPEN1,DV,5,"@"+DR$+":"+FI$+",S,W":PRINT#1," ":CLOSE1:RETURN
  240. 2540 FI$="(T.CALLERS)":GOTO2450
  241. 2550 P$=F$+"[211]CAN FILE: ":GOSUB860:L=16:GOSUB1000
  242. 2560 FI$=L$:GOTO2450
  243. 2570 POKEB3,65:POKEB4,40:POKEB2,231:POKEB1,57:POKEB4,48:RETURN
  244. 2580 GOSUB2570:POKEB2,PEEK(B2)OR32:POKEB1,PEEK(B1)AND223:POKEB1,PEEK(B1)OR32
  245. 2590 POKEB1,PEEK(B1)AND223:POKEB4,40:POKEB4,47:POKEB2,230:GOSUB2570:RETURN
  246. 2600 HI=INT(RC/256):LO=RC-(HI*256):RETURN
  247. 2610 GOSUB2600:R1=LO:R2=HI:RETURN
  248. 2620 AC=VAL(U$(3)):A2=INT(AC/256):A1=AC-A2*256:RETURN
  249. 2630 AA=VAL(N$(3)):RETURN
  250. 2640 IFLEN(UL$)<230THENRETURN
  251. 2650 OPEN1,8,5,"0:(USER LOG),A":PRINT#1,UL$:CLOSE1:UL$="":RETURN
  252. 2660 GOSUB2670:FORI=1TO15:U$(I)=N$(I):NEXT:RETURN
  253. 2670 FORT=1TO12:INPUT#3,N$(T):NEXT:RETURN
  254. 2680 FORI=1TO15:N$(I)=U$(I):NEXT
  255. 2690 N$(0)="":FORT=1TO15:N$(0)=N$(0)+Q$+N$(T)+F$:NEXT
  256. 2700 PRINT#3,N$(0):RC=1:GOSUB1400:RETURN
  257. 2710 N$(0)=N$(0)+LEFT$(N$(I)+A$,L%(I)):NEXT:PRINT#3,CHR$(34)N$(0)
  258. 2720 RC=1:GOSUB1400:RETURN
  259. 2740 B=AA-8:IFB<0THENB=0
  260. 2750 AA=-((DR%(B)AND128)=128):DR$=MID$(STR$(AA),2):RETURN
  261. 2760 GOSUB2740:AA=-((DVAND128)=128):DR$=MID$(STR$(AA),2):RETURN
  262. 2770 IFDR$="0"THENAA=DV:GOSUB2740:IFDR$="1"THENRETURN
  263. 2780 DV=DV+1:IFDV>15THENDV=8
  264. 2790 FORL=0TO(DR-8):IFDV<>(DR%(L)AND63)THENNEXT:GOTO2780
  265. 2800 IFA1AND32ORSYTHEN2820
  266. 2810 AA=DV:GOSUB2740:IFDR%(B)AND64THEN2780
  267. 2820 AA=DV:GOSUB2740:DR$="0":RETURN
  268. 2830 ON(MT%-1)GOTO2840,2850,2880,2890,2580,2580
  269. 2840 POKEB2,PEEK(B2)OR32:POKEB1,PEEK(B1)AND223:RETURN
  270. 2850 FORT=1TO2000:NEXT:PRINT#5,"+++";:FORT=1TO2000:NEXT
  271. 2860 PRINT#5,"[193][212][200]0[216]1[197]0[205]0[209]0[214]0":RETURN
  272. 2880 POKEB2,38:POKEB1,38:RETURN
  273. 2890 POKEB1,PEEK(B1)OR32:RETURN
  274. 2900 GOSUB1460:CT=VAL(HO$):MI=VAL(MI$):CO=ABS((LH*60+LM)-(CT*60+MI))
  275. 2910 IFLH=12ANDC2THENCO=ABS(CO-720)
  276. 2920 RETURN
  277. 2930 OPEN3,8,3,"0:(SCORES)":GOSUB220:IFER$>"01"THENCLOSE3:RETURN
  278. 2940 RC=R:GOSUB2600:B=0:GOSUB1410:GET#3,A$:IF(ST)AND64THENSC=0:GOTO2960
  279. 2950 INPUT#3,SC
  280. 2960 IFSC=0THENSC=I:CLOSE3:DIMSC(SC):RETURN
  281. 2970 IFI>SCTHENDIMSC(I):GOTO2990
  282. 2980 DIMSC(SC)
  283. 2990 FORT=1TOSC:INPUT#3,SC(T):NEXT:CLOSE3:IFI>SCTHENSC=I
  284. 3000 RETURN
  285. 3010 OPEN3,8,3,"0:(SCORES)":GOSUB220:IFER$>"01"THENCLOSE3:RETURN
  286. 3020 RC=R:GOSUB2600:B=0:GOSUB1410:SC$=STR$(SC)+F$:FORT=1TOSC
  287. 3030 SC$=SC$+STR$(SC(T))+F$:NEXT:PRINT#3,SC$;:RC=1:GOSUB1410:CLOSE3:RETURN
  288. 3040 FI$="(ST/R 3.5)":DV=D5
  289. 3050 OPEN1,8,5,"@0:(DATA),S,W":PRINT#1,R$:AA=DV:GOSUB2760:FORT=1TO15
  290. 3060 PRINT#1,Q$U$(T):NEXT:PRINT#1,LH:PRINT#1,LM:PRINT#1,SA:PRINT#1,SY
  291. 3070 PRINT#1,SF:PRINT#1,HL:PRINT#1,M$:PRINT#1,DT:PRINT#1,LEN(F$):PRINT#1,Q$LN$
  292. 3080 PRINT#1,DV:PRINT#1,NW:PRINT#1,L$:PRINT#1,HM$:CLOSE1:POKE252,32
  293. 3090 POKE251,PEEK(152):PRINT"[146][147]LOAD"Q$DR$":"FI$Q$","DVAND127""
  294. 3100 POKE631,131:POKE198,1:NEW
  295. 3110 OPEN1,8,5,"0:(DATA)":INPUT#1,R$:R=VAL(R$):FORT=1TO15
  296. 3120 INPUT#1,U$(T):NEXT:INPUT#1,LH,LM,SA,SY,SF,HL,M$,DT,T,LN$,DV,NW
  297. 3130 HM$="":FORT=1TO200:GET#1,A$:IFA$=""THENA$=CHR$(0)
  298. 3140 HM$=HM$+A$:NEXT
  299. 3150 CLOSE1:GOSUB2620:CG=VAL(U$(8)):IFT=2THENF$=CHR$(13)+CHR$(10)
  300. 3160 GOTO3200
  301. 3170 REM -    YOUR PROGRAM SHOULD    -
  302. 3180 REM -    START AT LINE 3160!    -
  303. 3190 GOSUB390:GOTO410
  304. 3200 P$=F$+"[212]HIS WILL CHANGE YOUR (USERFILE)"+F$+"FROM V3.4/5 TO V3.6"
  305. 3210 P$=P$+" OF THE [194][194][211].":GOSUB160
  306. 3220 P$=F$+"[200]IT A KEY OR [209] TO ABORT: ":GOSUB170:L=1:GOSUB180:IFCDTHEN3190
  307. 3230 IFL$="Q"ORL$="[209]"THEN410
  308. 3240 OPEN1,8,5,"0:(BBS DATA)":INPUT#1,CN,NU:CLOSE1:P$="":GOSUB160
  309. 3250 B=RF-8:OPEN3,RF,3,RF$:GOSUB220:IFER$="00"THEN3270
  310. 3260 P$=F$+ES$:GOSUB160:GOTO3220
  311. 3270 FORLC=1TONU:RC=LC:GOSUB210:GOSUB330:P$=N$(1):GOSUB170
  312. 3280 N$(9)=MID$(STR$(N2),2):N$(13)=MID$(STR$(N4),2):N$(14)=MID$(STR$(N3),2)
  313. 3290 N$(15)="0":RC=LC:GOSUB210:GOSUB350
  314. 3300 P$=" [196]ONE.":GOSUB160:NEXT:CLOSE3
  315. 3310 P$=F$+"[210]ETURNING TO [194][194][211].":GOSUB160:GOTO410
  316.