home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / simtel / sigm / vols200 / vol250 / instal38.asc < prev    next >
Encoding:
Text File  |  1994-07-13  |  16.1 KB  |  465 lines

  1. 1  ' RBBS38 Install Program
  2. 3  ' 
  3. 4  ' Lillypond Softwares   Dennis Recla 
  4. 6  '        (07/21/85)
  5. 8  '  
  6. 10 ERS$=CHR$(8)+" "+CHR$(8)
  7. 20 BSL$=CHR$(8)+"/"+CHR$(8)
  8. 30 DEF FNCT$(C$,SW)=STRING$(INT((SW-LEN(C$))/2)," ")+C$
  9. 40 ' 
  10. 50 PRINT:PRINT
  11. 60 VERS$="RBBS NSTALLATION PROGRAM v 3.8 (07/21/85)"
  12. 70 PRINT FNCT$(VERS$,80)
  13. 80 PRINT:PRINT
  14. 90 PRINT "          You will be asked several questions reguarding the way you"
  15. 100 PRINT "          will want the RBBS program to operate on your system."
  16. 110 PRINT
  17. 120 PRINT "          Answer the questions or select the proper choices from the"
  18. 130 PRINT "          menu that is provided.  This Installation program must be"
  19. 140 PRINT "          run on the drive/user area that you will want the RBBS"
  20. 150 PRINT "          program to reside.  Other drives can be assigned for the"
  21. 160 PRINT "          files required or created, but they must all be in the same"
  22. 170 PRINT "          user area. (i.e. user 14)  The RBBS Program does not allow"
  23. 180 PRINT "          for files to exist in other user areas, but will provide for"
  24. 190 PRINT "          alternate drives to be used in cases where your system has"
  25. 200 PRINT "          small capacity disk drives."
  26. 210 PRINT:PRINT
  27. 220 GOSUB 3480:GOTO 3670
  28. 230 PRINT:PRINT
  29. 240 PRINT " IF you need help then type a ? in place of an answer."
  30. 250 PRINT " Type a - if you need to go back to the last question."
  31. 260 PRINT:PRINT:GOSUB 4250
  32. 270 ' 
  33. 280 A1$="Enter drive to be used for DSK2$ files: ":N=1:GOSUB 2760
  34. 290 C=1:GOSUB 2890
  35. 300 IF B$="-" THEN 260
  36. 310 IF B$="?" THEN HLP=1:GOSUB 3560:GOTO 260
  37. 320 SL=1:GOSUB 3510:IF RTN=0 THEN 260 ELSE DSK2$=B$+":"
  38. 330 PRINT:PRINT:GOSUB 4250
  39. 340 ' 
  40. 350 A1$="Enter drive to be used for DSK3$ files: ":N=1:GOSUB 2760
  41. 360 C=1:GOSUB 2890
  42. 370 IF B$="-" THEN 260
  43. 380 IF B$="?" THEN HLP=2:GOSUB 3560:GOTO 330
  44. 390 SL=1:GOSUB 3510:IF RTN=0 THEN 330 ELSE DSK3$=B$+":"
  45. 400 PRINT:PRINT:GOSUB 4250
  46. 410 ' 
  47. 420 A1$="Enter your FIRST Name: ":N=1:GOSUB 2760
  48. 430 C=1:GOSUB 2890
  49. 440 IF B$="-" THEN 330
  50. 450 IF B$="?" THEN HLP=3:GOSUB 3560:GOTO 400
  51. 460 SYS1$=B$
  52. 470 PRINT:PRINT:GOSUB 4250
  53. 480 ' 
  54. 490 A1$="Enter your LAST Name: ":N=1:GOSUB 2760
  55. 500 C=1:GOSUB 2890
  56. 510 IF B$="-" THEN 400
  57. 520 IF B$="?" THEN HLP=4:GOSUB 3560:GOTO 470
  58. 530 SYS2$=B$
  59. 540 PRINT:PRINT:GOSUB 4250
  60. 550 ' 
  61. 560 A1$="Enter the name of your RBBS System: ":GOSUB 2760:PRINT
  62. 570 C=0:GOSUB 2890
  63. 580 IF B$="-" THEN 470
  64. 590 IF B$="?" THEN HLP=5:GOSUB 3560:GOTO 540
  65. 600 VERS1$=B$
  66. 610 PRINT:PRINT:GOSUB 4250
  67. 620 ' 
  68. 630 A1$="Enter your direct-to-CP/M FIRST Name password: ":N=1:GOSUB 2760
  69. 640 C=1:GOSUB 2890
  70. 650 IF B$="-" THEN 540
  71. 660 IF B$="?" THEN HLP=6:GOSUB 3560:GOTO 610
  72. 670 P1$=B$
  73. 680 PRINT:PRINT:GOSUB 4250
  74. 685 ' 
  75. 690 A1$="Enter your LAST Name password for SYSOP: ":N=1:GOSUB 2760
  76. 695 C=1:GOSUB 2890
  77. 700 IF B$="-" THEN 610
  78. 705 IF B$="?" THEN HLP=7:GOSUB 3560:GOTO 680
  79. 708 P2$=B$
  80. 710 PRINT:PRINT:GOSUB 4250
  81. 715 '
  82. 720 A1$="Set the WHEEL for SYSOP on exit to CP/M (Y/N) ":N=1:GOSUB 2760
  83. 725 C=1:GOSUB 2890
  84. 730 IF B$="-" THEN 680
  85. 735 IF B$="?" THEN HLP=8:GOSUB 3560:GOTO 710
  86. 740 IF LEFT$(B$,1)="Y" THEN WHEEL=-1:GOTO 750
  87. 745 WHEEL=0
  88. 750 PRINT:PRINT:GOSUB 4250
  89. 760 '
  90. 770 A1$="Enter your USER Validation password: ":N=1:GOSUB 2760
  91. 780 C=1:GOSUB 2890
  92. 790 IF B$="-" THEN 710
  93. 800 IF B$="?" THEN HLP=9:GOSUB 3560:GOTO 750
  94. 810 VAP$=B$
  95. 820 PRINT:PRINT:GOSUB 4250
  96. 830 ' 
  97. 840 A1$="Enter your CP/M entry question: ":N=1:GOSUB 2760:PRINT
  98. 850 C=0:GOSUB 2890
  99. 860 IF B$="-" THEN 750
  100. 870 IF B$="?" THEN HLP=10:GOSUB 3560:GOTO 820
  101. 880 PC$=B$
  102. 890 PRINT:PRINT:GOSUB 4250
  103. 900 ' 
  104. 910 A1$="Enter the answer to your CP/M entry question: ":N=1:GOSUB 2760
  105. 920 C=1:GOSUB 2890
  106. 930 IF B$="-" THEN 820
  107. 940 IF B$="?" THEN HLP=11:GOSUB 3560:GOTO 890
  108. 950 P3$=B$
  109. 960 PRINT:PRINT:GOSUB 4250
  110. 970 ' 
  111. 980 A1$="More than one SYSOP? (Y/N) ":N=1:GOSUB 2760
  112. 990 C=1:GOSUB 2890
  113. 1000 IF B$="-" THEN 890
  114. 1010 IF B$="?" THEN HLP=12:GOSUB 3560:GOTO 960
  115. 1020 IF LEFT$(B$,1)="Y" THEN MSYS=-1:GOTO 1040
  116. 1030 MSYS=0
  117. 1040 PRINT:PRINT:GOSUB 4250
  118. 1050 ' 
  119. 1060 A1$="Bell delay value (try 20000): ":N=1:GOSUB 2760
  120. 1070 C=1:GOSUB 2890
  121. 1080 IF B$="-" THEN 960
  122. 1090 IF B$="?" THEN HLP=13:GOSUB 3560:GOTO 1040
  123. 1100 BEEP=VAL(B$)
  124. 1110 PRINT:PRINT:GOSUB 4250
  125. 1120 ' 
  126. 1130 A1$="Number of lines allowed in messages (try 15): ":N=1:GOSUB 2760
  127. 1140 C=1:GOSUB 2890
  128. 1150 IF B$="-" THEN 1040
  129. 1160 IF B$="?" THEN HLP=14:GOSUB 3560:GOTO 1110
  130. 1170 SIZE=VAL(B$)
  131. 1175 IF SIZE>25 THEN A$="Sorry more than 25 cause problems " ELSE 1180
  132. 1178 N=1:GOSUB 2760:PRINT:GOTO 1130
  133. 1180 PRINT:PRINT:GOSUB 4250
  134. 1190 ' 
  135. 1200 A1$="Number of NEWS files: ":N=1:GOSUB 2760
  136. 1210 C=1:GOSUB 2890
  137. 1220 IF B$="-" THEN 1110
  138. 1230 IF B$="?" THEN HLP=15:GOSUB 3560:GOTO 1180
  139. 1240 NNUM=VAL(B$)
  140. 1250 PRINT:PRINT:GOSUB 4250
  141. 1260 ' 
  142. 1270 A1$="Which drive contains your NEWS files: ":N=1:GOSUB 2760
  143. 1280 C=1:GOSUB 2890
  144. 1290 IF B$="-" THEN 1180
  145. 1300 IF B$="?" THEN HLP=16:GOSUB 3560:GOTO 1250
  146. 1310 SL=1:GOSUB 3510:IF RTN=0 THEN 1250 ELSE DSK5$=B$+":"
  147. 1320 PRINT:PRINT:GOSUB 4250
  148. 1330 ' 
  149. 1340 A1$="Number of HELP files: ":N=1:GOSUB 2760
  150. 1350 C=1:GOSUB 2890
  151. 1360 IF B$="-" THEN 1250
  152. 1370 IF B$="?" THEN HLP=17:GOSUB 3560:GOTO 1320
  153. 1380 HNUM=VAL(B$)
  154. 1390 PRINT:PRINT:GOSUB 4250
  155. 1400 ' 
  156. 1410 A1$="Which drive contains your HELP files: ":N=1:GOSUB 2760
  157. 1420 C=1:GOSUB 2890
  158. 1430 IF B$="-" THEN 1320
  159. 1440 IF B$="?" THEN HLP=18:GOSUB 3560:GOTO 1390
  160. 1450 SL=1:GOSUB 3510:IF RTN=0 THEN 1390 ELSE DSK4$=B$+":"
  161. 1460 PRINT:PRINT:GOSUB 4250
  162. 1470 ' 
  163. 1480 A1$="Skip (Last Message Read) info? (Y/N) ":N=1:GOSUB 2760
  164. 1490 C=1:GOSUB 2890
  165. 1500 IF B$="-" THEN 1390
  166. 1510 IF B$="?" THEN HLP=19:GOSUB 3560:GOTO 1460
  167. 1520 IF LEFT$(B$,1)="Y" THEN SKIP=-1:GOTO 1540
  168. 1530 SKIP=0
  169. 1540 PRINT:PRINT:GOSUB 4250
  170. 1550 ' 
  171. 1560 A1$="Logout TWITs? (Y/N) ":N=1:GOSUB 2760
  172. 1570 C=1:GOSUB 2890
  173. 1580 IF B$="-" THEN 1460
  174. 1590 IF B$="?" THEN HLP=20:GOSUB 3560:GOTO 1540
  175. 1600 IF LEFT$(B$,1)="Y" THEN TWIT=-1:GOTO 1620
  176. 1610 TWIT=0
  177. 1620 PRINT:PRINT:GOSUB 4250
  178. 1630 ' 
  179. 1640 A$="Can <E>veryone enter messages, both <V>alid and Super"
  180. 1650 N=1:GOSUB 2760
  181. 1660 A$="users, or just <S>uper users?"
  182. 1670 N=1:GOSUB 2760
  183. 1680 A1$="  Enter (E, V or S): ":N=1:GOSUB 2760
  184. 1690 C=1:GOSUB 2890
  185. 1700 IF B$="-" THEN 1540
  186. 1710 IF B$="?" THEN HLP=21:GOSUB 3560:GOTO 1620
  187. 1720 BT$=LEFT$(B$,1)
  188. 1730 IF BT$="E" THEN LMSG=1:GOTO 1760
  189. 1740 IF BT$="V" THEN LMSG=2:GOTO 1760
  190. 1750 IF BT$="S" THEN LMSG=3
  191. 1760 PRINT:PRINT:GOSUB 4250
  192. 1770 ' 
  193. 1780 A$="Can <E>veryone have passworded CP/M access, both <V>alid"
  194. 1790 N=1:GOSUB 2760
  195. 1800 A$="and Super users, or just <S>uper users?"
  196. 1810 N=1:GOSUB 2760
  197. 1820 A1$="  Enter (E, V or S): ":N=1:GOSUB 2760
  198. 1830 C=1:GOSUB 2890
  199. 1840 IF B$="-" THEN 1620
  200. 1850 IF B$="?" THEN HLP=22:GOSUB 3560:GOTO 1760
  201. 1860 BT$=LEFT$(B$,1)
  202. 1870 IF BT$="E" THEN GOCPM=1:GOTO 1900
  203. 1880 IF BT$="V" THEN GOCPM=2:GOTO 1900
  204. 1890 IF BT$="S" THEN GOCPM=3
  205. 1900 PRINT:PRINT:GOSUB 4250
  206. 1910 ' 
  207. 1920 A1$="Do you have an external clock? (Y/N) ":N=1:GOSUB 2760
  208. 1930 C=1:GOSUB 2890
  209. 1940 IF B$="-" THEN 1760
  210. 1950 IF B$="?" THEN HLP=23:GOSUB 3560:GOTO 1900
  211. 1960 IF LEFT$(B$,1)="Y" THEN DATIM=-1:GOTO 1980
  212. 1970 DATIM=0
  213. 1980 PRINT:PRINT:GOSUB 4250
  214. 1990 ' 
  215. 2000 A$="Enter the filename you want to be loaded at Goodbye: ":N=1:GOSUB 2760
  216. 2010 C=1:GOSUB 2890
  217. 2020 IF B$="-" THEN 1900
  218. 2030 IF B$="?" THEN HLP=24:GOSUB 3560:GOTO 1980
  219. 2040 EXIT$=B$
  220. 2050 PRINT:PRINT:GOSUB 4250
  221. 2060 ' 
  222. 2070 A$="Show location of callers and users? (Y/N) ":N=1:GOSUB 2760
  223. 2080 C=1:GOSUB 2890
  224. 2090 IF B$="-" THEN 1980
  225. 2100 IF B$="?" THEN HLP=25:GOSUB 3560:GOTO 2050
  226. 2110 IF LEFT$(B$,1)="Y" THEN SHOLOC=-1:GOTO 2130
  227. 2120 SHOLOC=0
  228. 2130 PRINT:PRINT:GOSUB 4250
  229. 2140 ' 
  230. 2150 A$="Log unvalidated callers? (Y/N) ":N=1:GOSUB 2760
  231. 2160 C=1:GOSUB 2890
  232. 2170 IF B$="-" THEN 2050
  233. 2180 IF B$="?" THEN HLP=26:GOSUB 3560:GOTO 2130
  234. 2190 IF LEFT$(B$,1)="Y" THEN LOGALL=-1:GOTO 2210
  235. 2200 LOGALL=0
  236. 2210 PRINT:PRINT:GOSUB 4250
  237. 2220 ' 
  238. 2230 A$="Display unvalidated users? (Y/N) ":N=1:GOSUB 2760
  239. 2240 C=1:GOSUB 2890
  240. 2250 IF B$="-" THEN 2130
  241. 2260 IF B$="?" THEN HLP=27:GOSUB 3560:GOTO 2210
  242. 2270 IF LEFT$(B$,1)="Y" THEN SHOALL=-1:GOTO 2290
  243. 2280 SHOALL=0
  244. 2290 PRINT:PRINT:GOSUB 4250
  245. 2292 ' 
  246. 2295 A1$="Set RBBS in secure mode? (Y/N) ":N=1:GOSUB 2760
  247. 2298 C=1:GOSUB 2890
  248. 2300 IF B$="-" THEN 2210
  249. 2305 IF B$="?" THEN HLP=28:GOSUB 3560:GOTO 2290
  250. 2310 IF LEFT$(B$,1)="Y" THEN SEC=-1:GOTO 2320
  251. 2315 SEC=0
  252. 2320 PRINT:PRINT:GOSUB 4250
  253. 2325 '
  254. 2330 A1$="Name of .COM file/program to run on CP/M entry  :":N=1:GOSUB 2760
  255. 2332 C=1:GOSUB 2890
  256. 2335 IF B$="-" THEN 2290
  257. 2336 IF B$="?" THEN HLP=29:GOSUB 3560:GOTO 2320
  258. 2338 EPRG$=B$
  259. 2340 PRINT:PRINT:GOSUB 4250
  260. 2342 '
  261. 2345 A1$="Name of file to Read with 'D' command  :":N=1:GOSUB 2760
  262. 2350 C=1:GOSUB 2890
  263. 2355 IF B$="-" THEN 2320
  264. 2360 IF B$="?" THEN HLP=30:GOSUB 3560:GOTO 2340
  265. 2370 DFIL$=B$
  266. 2380 PRINT:PRINT:GOSUB 4250
  267. 2385 '
  268. 2390 A1$="Ready to create the password files? (Y/N) ":N=1:GOSUB 2760
  269. 2400 C=1:GOSUB 2890
  270. 2410 IF B$="-" THEN 2340
  271. 2420 IF B$="?" THEN HLP=31:GOSUB 3560:GOTO 2380
  272. 2430 IF LEFT$(B$,1)="N" THEN 220
  273. 2440 PRINT:PRINT
  274. 2450 ' 
  275. 2460 ' Now we can create the two password files for the system
  276. 2470 ' The BOOTPWD on the current drive A: and PWDS on the drive
  277. 2480 ' taged as being DSK2$
  278. 2490 ' 
  279. 2500 PRINT "The file BOOTPWD will be written to drive A: "
  280. 2510 PRINT "and the PWDS file will be written to drive ";DSK2$
  281. 2520 PRINT
  282. 2530 A1$="Is this correct before the files are written? (Y/N) "
  283. 2540 GOSUB 3340:IF NOT OK THEN 230
  284. 2550 ' 
  285. 2560 PRINT:PRINT
  286. 2570 ' 
  287. 2580 S$=","
  288. 2590 DSK$="A:"
  289. 2600 ' 
  290. 2610 OPEN "O",1,DSK$+"BOOTPWD"
  291. 2620 PRINT #1,DSK2$;S$;DSK3$;S$;DSK4$;S$;DSK5$;S$SYS1$;S$;SYS2$;S$;VERS1$
  292. 2630 PRINT #1,TWIT;S$;DATIM;S$;SEC;S$;SHOLOC;S$;DFIL$;S$;EPRG$;S$;WHEEL
  293. 2640 CLOSE
  294. 2650 OPEN "O",1,DSK2$+"pwds"
  295. 2660 PRINT #1,P1$;S$;P2$;S$;P3$;S$;PC$;S$;VAP$;S$;EXIT$;S$;LOGALL;S$;SHOALL
  296. 2670 PRINT #1,BEEP;S$;SIZE;S$;MSYS;S$;NNUM;S$;HNUM;S$;SKIP;S$;LMSG;S$;GOCPM
  297. 2680 CLOSE
  298. 2690 PRINT:PRINT "Your password files (BOOTPWD) and (pwds) have been created."
  299. 2700 PRINT:PRINT
  300. 2710 SYSTEM
  301. 2720 END
  302. 2730 ' 
  303. 2740 ' Print string from A$ on console
  304. 2750 ' 
  305. 2760 IF SAV$<>"" AND A1$<>"" THEN A1$="":RETURN
  306. 2770 IF A1$<>"" THEN A$=A1$:A1$=""
  307. 2780 IF N=1 THEN PRINT A$;:PP$=A$:GOTO 2830
  308. 2790 BI=ASC(INKEY$+" ")
  309. 2800 IF BI=&H13 OR BI=&H53 OR BI=&H73 THEN BI=ASC(INPUT$(1)):GOTO 2820
  310. 2810 IF BI=&HB OR BI=&H4B OR BI=&H6B THEN BK=-1:GOTO 2840 
  311. 2820 PRINT A$
  312. 2830 A=A+LEN(A$)
  313. 2840 A$="":N=0
  314. 2850 RETURN
  315. 2860 ' 
  316. 2870 ' Accept string into B$ from console
  317. 2880 ' 
  318. 2890 IF BEL AND SAV$="" THEN PRINT CHR$(7);
  319. 2900 B$="":BK=0
  320. 2910 IF SAV$="" THEN GOSUB 3030:IF C<>3 THEN PRINT
  321. 2920 SP=INSTR(SAV$,";"):IF SP=0 THEN B$=SAV$:SAV$="":GOTO 2940
  322. 2930 B$=LEFT$(SAV$,SP-1):SAV$=MID$(SAV$,SP+1)
  323. 2940 IF LEN(B$)=0 THEN C=0:RETURN
  324. 2950 IF C=0 THEN 2970
  325. 2960 CY$=B$:GOSUB 3420:B$=CY$
  326. 2970 D=D+LEN(B$):C=0
  327. 2980 IF B$="+" THEN 3800
  328. 2990 RETURN
  329. 3000 ' 
  330. 3010 ' Character-at-a-time line input with editing (IF C=2, NO ECHO)
  331. 3020 ' 
  332. 3030 CHC=0: SAV$="":DC=0:IC=&H30
  333. 3040 NCH=ASC(INPUT$(1))
  334. 3050 IF NCH=13 THEN RETURN                                              ' CR
  335. 3060 IF NCH=127 THEN 3140
  336. 3070 IF NCH<32 THEN 3160
  337. 3080 IF CHC>=63 THEN PRINT CHR$(7);:GOTO 3040
  338. 3090 SAV$=SAV$+CHR$(NCH): CHC=CHC+1 :IC=IC+1:IF IC=&H3A THEN IC=&H30
  339. 3100 IF DC THEN PRINT CHR$(10);
  340. 3110 IF C<>2 THEN PRINT CHR$(NCH); ELSE PRINT CHR$(IC);
  341. 3120 IF CHC=55 THEN PRINT CHR$(7);
  342. 3130 DC=0:GOTO 3040
  343. 3140 IF CHC=0 THEN 3040 ELSE PRINT BSL$;:DC=-1
  344. 3150 CHC=CHC-1:IC=IC-1: SAV$=LEFT$(SAV$,CHC): GOTO 3040
  345. 3160 IF CHC=0 THEN 3040
  346. 3170 IF NCH=8 THEN PRINT ERS$;:DC=0:GOTO 3150                           ' BS
  347. 3180 IF NCH=12 THEN GOSUB 3240:GOTO 3250                                ' ^L
  348. 3190 IF NCH=18 THEN PRINT:PRINT PP$;:GOTO 3250                          ' ^Retype
  349. 3200 IF NCH=21 THEN PRINT " #": PRINT PP$;:DC=0:GOTO 3030               ' ^U
  350. 3210 IF NCH<>24 THEN 3040                                               ' ^X
  351. 3220 GOSUB 3240
  352. 3230 GOTO 3030
  353. 3240 FOR BCC=1 TO CHC: PRINT ERS$;: NEXT BCC: RETURN
  354. 3250 IF C<>2 THEN PRINT SAV$;: GOTO 3300
  355. 3260 ' 
  356. 3270 ' Print numbers to hide password
  357. 3280 ' 
  358. 3290 IC=&H30:FOR BCC=1 TO CHC: IC=IC+1: PRINT CHR$(IC);: NEXT BCC
  359. 3300 DC=0:GOTO 3040
  360. 3310 ' 
  361. 3320 ' Prompt for YES or NO answer
  362. 3330 ' 
  363. 3340 A2$=A1$:OK=0
  364. 3350 A1$=A2$:N=1:GOSUB 2760:C=1:GOSUB 2890:ANS$=LEFT$(B$,1)
  365. 3360 IF ANS$="" THEN 3380 ELSE IF ANS$="Y" THEN OK=-1:RETURN
  366. 3370 IF ANS$="N" THEN RETURN
  367. 3380 A$="<Y or N>":GOSUB 2760:GOTO 3340
  368. 3390 ' 
  369. 3400 ' Uppercase string CY$ (frank -> FRANK)
  370. 3410 ' 
  371. 3420 FOR ZZ=1 TO LEN(CY$)
  372. 3430 ZA=ASC(MID$(CY$,ZZ,1)):IF ZA<&H61 OR ZA>&H7A THEN 3450
  373. 3440 MID$(CY$,ZZ,1)=CHR$(ZA-&H20)
  374. 3450 NEXT ZZ
  375. 3460 RETURN
  376. 3470 ' 
  377. 3480 INPUT "Press RETURN to continue.",A$
  378. 3490 FOR SCROLL=1 TO 24:PRINT:NEXT SCROLL:RETURN
  379. 3500 ' 
  380. 3510 IF LEN(B$)>SL THEN RTN=0:RETURN
  381. 3520 RTN=1:RETURN
  382. 3530 ' 
  383. 3540 ' Come here to find and print the help files
  384. 3550 ' 
  385. 3560 CHK$=STR$(HLP)+"*"
  386. 3570 ND$=" **"
  387. 3580 TXT=0
  388. 3590 OPEN "I",1,DSK$+"INSTALL.HLP":BK=0:IF EOF(1) THEN 3660
  389. 3600 IF EOF(1) OR BK THEN 3660 ELSE LINE INPUT #1,A$
  390. 3610 A$=" "+A$
  391. 3620 IF A$=CHK$ THEN TXT=1:A$=" ":A$=" ":GOTO 3600
  392. 3630 IF A$=ND$ AND TXT=1 THEN 3660
  393. 3640 IF TXT=1 THEN GOSUB 2760
  394. 3650 GOTO 3600
  395. 3660 CLOSE #1:RETURN
  396. 3670 PRINT:PRINT:NF1=0:NF2=0
  397. 3680 ' 
  398. 3690 ' Come here to get the existing password file data
  399. 3700 ' 
  400. 3710 ON ERROR GOTO 4300
  401. 3720 OPEN "I",1,DSK$+"BOOTPWD":IF EOF(1) THEN 3740
  402. 3730 INPUT #1,DSK2$,DSK3$,DSK4$,DSK5$,SYS1$,SYS2$,VERS1$,TWIT
  403. 3735 INPUT #1,DATIM,SEC,SHOLOC,DFIL$,EPRG$,WHEEL
  404. 3740 CLOSE #1
  405. 3750 OPEN "I",1,DSK2$+"pwds":IF EOF(1) THEN 3780
  406. 3760 INPUT #1,P1$,P2$,P3$,PC$,VAP$,EXIT$,LOGALL,SHOALL
  407. 3770 INPUT #1,BEEP,SIZE,MSYS,NNUM,HNUM,SKIP,LMSG,GOCPM
  408. 3780 CLOSE #1
  409. 3790 ' 
  410. 3800 PRINT
  411. 3810 PRINT "1.   DSK2$ -> ";DSK2$,"2.  DSK3$ -> ";DSK3$
  412. 3820 PRINT "3.   FIRST Name -> ";SYS1$,"4.  LAST Name -> ";SYS2$
  413. 3830 PRINT "5.   RBBS name -> ";VERS1$
  414. 3840 PRINT "6.   Direct CP/M password -> ";P1$,"7.  SYSOP password -> ";P2$
  415. 3845 IF WHEEL THEN A$="YES" ELSE A$="NO"
  416. 3850 PRINT "8.   Set Wheel for SYSOP -> ";A$,"9. Validation password -> ";VAP$
  417. 3860 PRINT "10.  CP/M entry question -> ";PC$
  418. 3870 PRINT "11.  Answer to CP/M entry question -> ";P3$
  419. 3880 IF MSYS THEN A$="YES" ELSE A$="NO"
  420. 3890 PRINT "12.  Multiple SYSOPs -> ";A$
  421. 3900 PRINT "13.  CHAT delay value -> ";BEEP,"14.  Message length -> ";SIZE
  422. 3910 PRINT "15.  Number NEWS messages -> ";NNUM,"16.  NEWS drive ";DSK5$
  423. 3920 PRINT "17.  Number HELP messages -> ";HNUM,"18.  HELP drive ";DSK4$
  424. 3930 IF SKIP THEN A$="YES" ELSE A$="NO"
  425. 3940 PRINT "19.  Skip (Highest Message Read) -> ";A$
  426. 3950 IF TWIT THEN A$="YES" ELSE A$="NO"
  427. 3960 PRINT "20.  Logout TWITs -> ";A$
  428. 3970 IF LMSG=1 THEN A$="Anyone but TWITs"
  429. 3980 IF LMSG=2 THEN A$="VALID and SUPER users"
  430. 3990 IF LMSG=3 THEN A$="SUPER users only"
  431. 4000 PRINT "21.  Who can enter messages -> ";A$
  432. 4010 IF GOCPM=1 THEN A$="Anyone but TWITs"
  433. 4020 IF GOCPM=2 THEN A$="VALID and SUPER users"
  434. 4030 IF GOCPM=3 THEN A$="SUPER users only"
  435. 4040 PRINT "22.  Who can go to CP/M -> ";A$
  436. 4050 IF DATIM THEN A$="YES" ELSE A$="NO"
  437. 4060 PRINT "23.  External clock -> ";A$
  438. 4070 PRINT "24.  Goodbye program -> ";EXIT$
  439. 4080 IF SHOLOC THEN A$="YES" ELSE A$="NO"
  440. 4090 PRINT "25.  Show location of callers and users -> ";A$
  441. 4100 IF LOGALL THEN A$="YES" ELSE A$="NO"
  442. 4110 PRINT "26.  Log unvalidated callers -> ";A$
  443. 4120 IF SHOALL THEN A$="YES" ELSE A$="NO"
  444. 4130 PRINT "27.  Show unvalidated users -> ";A$;,
  445. 4140 IF SEC THEN A$="YES" ELSE A$="NO"
  446. 4145 PRINT "28.  SECURE Mode -> ";A$
  447. 4150 PRINT "29.  Exit file to run -> ";EPRG$,"30.  D File to print -> ";DFIL$
  448. 4160 PRINT "31.  DONE -> create new password files."
  449. 4170 PRINT
  450. 4180 ' 
  451. 4190 INPUT "Enter the number of your choice: ",ENTRY
  452. 4200 IF ENTRY >16 THEN ENTRY=ENTRY-16:GOTO 4220
  453. 4210 ON ENTRY GOTO 260,330,400,470,540,610,680,710,750,820,890,960,1040,1110,1180,1250
  454. 4220 ON ENTRY GOTO 1320,1390,1460,1540,1620,1760,1900,1980,2050,2130,2210,2290,2320,2340,2380
  455. 4230 GOTO 230
  456. 4240 ' 
  457. 4250 PRINT " <?> For HELP "
  458. 4260 PRINT " <-> For previous MENU "
  459. 4270 PRINT " <+> To return to Select Menu "
  460. 4280 PRINT:RETURN 
  461. 4290 ' 
  462. 4300 PRINT:PRINT "Old password file not found, new password file initialized."
  463. 4310 CLOSE #1
  464. 4320 PRINT:PRINT:GOTO 230
  465.