home *** CD-ROM | disk | FTP | other *** search
/ Black Box 4 / BlackBox.cdr / progbas / autil101.arj / START.ASI < prev    next >
Encoding:
Text File  |  1992-01-29  |  20.9 KB  |  1,065 lines

  1. start:
  2.  
  3. rem This version of START.COM is for the Some ASIC Utilities disk.
  4.  
  5. rem It requires approximately 65K RAM.
  6.  
  7. rem First, initialize the Esc key.
  8.  
  9. b$=chr$(27)
  10.  
  11. rem Next, initialize the Enter(Return) key and space bar.
  12.  
  13. c$=chr$(13)
  14. e$=chr$(32)
  15.  
  16. rem Parameters will go here when they're ready.
  17.  
  18. rem If no parameters, begin from the beginning.
  19.  
  20. cls
  21. print "                                 Matt Roberts"
  22. print "                               3 Cedar St., # 8"
  23. print "                           Montpelier, Vt 05602-3006"
  24. print "                                 (802)223-2553"
  25. print
  26. print
  27. print
  28. print "                           Some ASIC Utilities 1.00"
  29. print
  30. print
  31. print "If you have trouble running the programs on this disk, and the"
  32. print "documentation doesn't seem to help, you can call between 9AM and 9PM"
  33. print "EST, and I'll try to help.  Keep trying."
  34. print
  35. print
  36. print "If you find the files on this disk useful, a donation of $5.00 would"
  37. print "be greatly appreciated.  Thanks."
  38. print
  39. print
  40. print
  41. print
  42. print
  43. print "Press any key to continue. ";
  44. gosub continue:
  45.  
  46. options:
  47. cls
  48. print "Here are your options:"
  49. print
  50. print
  51. print "F1- See a list of the files on this disk."
  52. print
  53. print "F2- Read the text file of your choice, on the screen."
  54. print
  55. print "F3- Print the text file of your choice."
  56. print
  57. print "F4- Shell to DOS."
  58. print
  59. print "F5- Change to 40-column width."
  60. print
  61. print "Esc- Quit and return to DOS."
  62. print
  63. print
  64. print "Please press the key corresponding to your choice. ";
  65.  
  66. wait1:
  67. gosub continue:
  68. if a$=b$ then finish:
  69. if extended=1 then readext:
  70. goto wait1:
  71.  
  72. readext:
  73. if a$=";" then seefiles:
  74. if a$="<" then readfile:
  75. if a$="=" then printdoc:
  76. if a$=">" then shell:
  77. if a$="?" then option40:
  78. goto wait1:
  79.  
  80. rem Here is the routine for listing the files on this disk.
  81.  
  82. seefiles:
  83. cls
  84. print "Here are the files on this disk:"
  85. print
  86. print
  87. print "BEEP.ASI- The ASIC code for BEEP.COM."
  88. print
  89. print "BEEP.COM- Makes your computer go beep."
  90. print
  91. print "BEEP.DOC- The documentation for BEEP.COM."
  92. print
  93. print "BLANKLIN.ASI- The ASIC code for BLANKLIN.COM."
  94. print
  95. print "BLANKLIN.COM- Makes blank lines in DOS 2.X batch files."
  96. print
  97. print "BLANKLIN.DOC- The documentation for BLANKLIN.COM."
  98. print
  99. print "CORRECT.ASI- The ASIC code for CORRECT.COM."
  100. print
  101. print "CORRECT.COM- Batch file utility; rewards correct answers."
  102. print
  103. print "CORRECT.DOC- The documentation for CORRECT.COM."
  104. print
  105. print
  106. print "Press any key to continue. ";
  107. gosub continue:
  108. cls
  109. print "LIST.COM- Excellent utility by Vern Buerg; lists files on the screen."
  110. print
  111. print "LITTLEBP.ASI- The ASIC code for LITTLEBP.COM."
  112. print
  113. print "LITTLEBP.COM- Makes a short beep on your computer."
  114. print
  115. print "LITTLEBP.DOC- The documentation for LITTLEBP.COM."
  116. print
  117. print "SIREN.ASI- The ASIC code for SIREN.COM."
  118. print
  119. print "SIREN.COM- Makes a siren noise on your computer."
  120. print
  121. print "SIREN.DOC- The documentation for SIREN.COM."
  122. print
  123. print "SMILEDLY.ASI- The ASIC code for SMILEDLY.COM."
  124. print
  125. print "SMILEDLY.COM- Makes a smiley-face, and delays before returning to DOS."
  126. print
  127. print "SMILEDLY.DOC- The documentation for SMILEDLY.COM."
  128. print
  129. print
  130. print "Press any key to continue. ";
  131. gosub continue:
  132. cls
  133. print "SPLAT.ASI- The ASIC code for SPLAT.COM."
  134. print
  135. print "SPLAT.COM- Batch file utility; 'rewards' incorrect answers."
  136. print
  137. print "SPLAT.DOC- The documentation for SPLAT.COM."
  138. print
  139. print "START.ASI- The ASIC code for START.COM."
  140. print
  141. print "START.COM- The file you're using right now."
  142. print
  143. print
  144. print "Press any key to return to the Main Options Menu. ";
  145. gosub continue:
  146. goto options:
  147.  
  148. rem Here is the routine for reading a text file.
  149.  
  150. readfile:
  151. cls
  152. print "To move ahead in the file(s) you are about to view, press PgDn."
  153. print
  154. print "To move back, press PgUp."
  155. print
  156. print "To exit the document, press Esc."
  157. print
  158. print
  159. print "Press any key to see the menu of files. ";
  160. gosub continue:
  161.  
  162. readmenu:
  163. cls
  164. print "Here are the files you can view:"
  165. print
  166. print
  167. print "A- BEEP.ASI              J- SIREN.ASI"
  168. print
  169. print "B- BEEP.DOC              K- SIREN.DOC"
  170. print
  171. print "C- BLANKLIN.ASI          L- SMILEDLY.ASI"
  172. print
  173. print "D- BLANKLIN.DOC          M- SMILEDLY.DOC"
  174. print
  175. print "E- CORRECT.ASI           N- SPLAT.ASI"
  176. print
  177. print "F- CORRECT.DOC           O- SPLAT.DOC"
  178. print
  179. print "G- NOT IN USE            P- START.ASI"
  180. print
  181. print "H- LITTLEBP.ASI"
  182. print
  183. print "I- LITTLEBP.DOC          Esc- Return to the Main Options Menu."
  184. print
  185. print
  186. print "Please press the key corresponding to your choice. ";
  187. gosub continue:
  188.  
  189. if a$=b$ then options:
  190. print a$;
  191. if a$="a" then readbeea:
  192. if a$="A" then readbeea:
  193. if a$="b" then readbeed:
  194. if a$="B" then readbeed:
  195. if a$="c" then readblaa:
  196. if a$="C" then readblaa:
  197. if a$="d" then readblad:
  198. if a$="D" then readblad:
  199. if a$="e" then readcora:
  200. if a$="E" then readcora:
  201. if a$="f" then readcord:
  202. if a$="F" then readcord:
  203. if a$="g" then readmenu:
  204. if a$="G" then readmenu:
  205. if a$="h" then readlita:
  206. if a$="H" then readlita:
  207. if a$="i" then readlitd:
  208. if a$="I" then readlitd:
  209. if a$="j" then readsira:
  210. if a$="J" then readsira:
  211. if a$="k" then readsird:
  212. if a$="K" then readsird:
  213. if a$="l" then readsmia:
  214. if a$="L" then readsmia:
  215. if a$="m" then readsmid:
  216. if a$="M" then readsmid:
  217. if a$="n" then readspla:
  218. if a$="N" then readspla:
  219. if a$="o" then readspld:
  220. if a$="O" then readspld:
  221. if a$="p" then readstar:
  222. if a$="P" then readstar:
  223. goto readmenu:
  224.  
  225. readbeea:
  226. call ("list.com"," beep.asi")
  227. goto readmenu:
  228. readbeed:
  229. call ("list.com"," beep.doc")
  230. goto readmenu:
  231. readblaa:
  232. call ("list.com"," blanklin.asi")
  233. goto readmenu:
  234. readblad:
  235. call ("list.com"," blanklin.doc")
  236. goto readmenu:
  237. readcora:
  238. call ("list.com"," correct.asi")
  239. goto readmenu:
  240. readcord:
  241. call ("list.com"," correct.doc")
  242. goto readmenu:
  243. readlita:
  244. call ("list.com"," littlebp.asi")
  245. goto readmenu:
  246. readlitd:
  247. call ("list.com"," littlebp.doc")
  248. goto readmenu:
  249. readsira:
  250. call ("list.com"," siren.asi")
  251. goto readmenu:
  252. readsird:
  253. call ("list.com"," siren.doc")
  254. goto readmenu:
  255. readsmia:
  256. call ("list.com"," smiledly.asi")
  257. goto readmenu:
  258. readsmid:
  259. call ("list.com"," smiledly.doc")
  260. goto readmenu:
  261. readspla:
  262. call ("list.com"," splat.asi")
  263. goto readmenu:
  264. readspld:
  265. call ("list.com"," splat.doc")
  266. goto readmenu:
  267. readstar:
  268. call ("list.com"," start.asi")
  269. goto readmenu:
  270.  
  271.  
  272. rem Here is the routine for printing a file.
  273.  
  274. printdoc:
  275. cls
  276. print "Please ready your printer; press any key to see the menu of files. ";
  277. gosub continue:
  278.  
  279. printmen:
  280. cls
  281. print "Here are the files you can print:"
  282. print
  283. print
  284. print "A- BEEP.ASI              J- SIREN.ASI"
  285. print
  286. print "B- BEEP.DOC              K- SIREN.DOC"
  287. print
  288. print "C- BLANKLIN.ASI          L- SMILEDLY.ASI"
  289. print
  290. print "D- BLANKLIN.DOC          M- SMILEDLY.DOC"
  291. print
  292. print "E- CORRECT.ASI           N- SPLAT.ASI"
  293. print
  294. print "F- CORRECT.DOC           O- SPLAT.DOC"
  295. print
  296. print "G- NOT IN USE            P- START.ASI"
  297. print
  298. print "H- LITTLEBP.ASI"
  299. print
  300. print "I- LITTLEBP.DOC          Esc- Return to the Main Options Menu."
  301. print
  302. print
  303. print "Please press the key corresponding to your choice. ";
  304. gosub continue:
  305.  
  306. wait2:
  307. if a$=b$ then options:
  308. if a$="a" then printbea:
  309. if a$="A" then printbea:
  310. if a$="b" then printbed:
  311. if a$="B" then printbed:
  312. if a$="c" then printbla:
  313. if a$="C" then printbla:
  314. if a$="d" then printbld:
  315. if a$="D" then printbld:
  316. if a$="e" then printcoa:
  317. if a$="E" then printcoa:
  318. if a$="f" then printcod:
  319. if a$="F" then printcod:
  320. if a$="g" then printmen:
  321. if a$="G" then printmen:
  322. if a$="h" then printlia:
  323. if a$="H" then printlia:
  324. if a$="i" then printlid:
  325. if a$="I" then printlid:
  326. if a$="j" then printsia:
  327. if a$="J" then printsia:
  328. if a$="k" then printsid:
  329. if a$="K" then printsid:
  330. if a$="l" then printsma:
  331. if a$="L" then printsma:
  332. if a$="m" then printsmd:
  333. if a$="M" then printsmd:
  334. if a$="n" then printspa:
  335. if a$="N" then printspa:
  336. if a$="o" then printspd:
  337. if a$="O" then printspd:
  338. if a$="p" then printsta:
  339. if a$="P" then printsta:
  340. goto wait2:
  341.  
  342. printbea:
  343. file$="beep.asi"
  344. gosub printfil:
  345. goto printmen:
  346.  
  347. printbed:
  348. file$="beep.doc"
  349. gosub printfil:
  350. goto printmen:
  351.  
  352. printbla:
  353. file$="blanklin.asi"
  354. gosub printfil:
  355. goto printmen:
  356.  
  357. printbld:
  358. file$="blanklin.doc"
  359. gosub printfil:
  360. goto printmen:
  361.  
  362. printcoa:
  363. file$="correct.asi"
  364. gosub printfil:
  365. goto printmen:
  366.  
  367. printcod:
  368. file$="correct.doc"
  369. gosub printfil:
  370. goto printmen:
  371.  
  372. printlia: 
  373. file$="littlebp.asi"
  374. gosub printfil:
  375. goto printmen:
  376.  
  377. printlid:
  378. file$="littlebp.doc"
  379. gosub printfil:
  380. goto printmen:
  381.  
  382. printsia:
  383. file$="siren.asi"
  384. gosub printfil:
  385. goto printmen:
  386.  
  387. printsid:
  388. file$="siren.doc"
  389. gosub printfil:
  390. goto printmen:
  391.  
  392. printsma:
  393. file$="smiledly.asi"
  394. gosub printfil:
  395. goto printmen:
  396.  
  397. printsmd:
  398. file$="smiledly.doc"
  399. gosub printfil:
  400. goto printmen:
  401.  
  402. printspa:
  403. file$="splat.asi"
  404. gosub printfil:
  405. goto printmen:
  406.  
  407. printspd:
  408. file$="splat.doc"
  409. gosub printfil:
  410. goto printmen:
  411.  
  412. printsta:
  413. file$="start.asi"
  414. gosub printfil:
  415. goto printmen:
  416.  
  417.  
  418. rem Here is the file-printing subroutine.
  419.  
  420. printfil:
  421. cls
  422. f$=chr$(12)
  423. open "i",1,file$
  424.  
  425. if error=2 then
  426. print ""
  427. print ""
  428. print "File not found."
  429. print
  430. print
  431. print "Press any key to continue. ";
  432. gosub continue:
  433. close 1
  434. return
  435. endif
  436.  
  437. heading:
  438. cls
  439. print "Printing...";
  440. realfile$=ucase$(file$)
  441. color 0,7
  442. print realfile$
  443. color 7,0
  444. print
  445. print
  446. print "Press space bar to pause printing, or Esc to quit."
  447. print
  448. print
  449.  
  450. printmor:
  451. input# 1, line$ crlf
  452.  
  453. if error=96 then
  454. lprint line$
  455. goto blanklin:
  456. endif
  457.  
  458. contlprn:
  459. lprint line$
  460.  
  461. a$=inkey$
  462.  
  463. if a$=b$ then
  464. print "Printing has been terminated.  The printer may still have data in its"
  465. print "buffer.  If so, it will continue printing until the buffer is empty."
  466. print
  467. lprint f$
  468. close 1
  469. file$=""
  470. print "Press any key to continue. ";
  471. gosub continue:
  472. return
  473. endif
  474.  
  475. if a$=e$ then pause: else nopause:
  476.  
  477. pause:
  478.  
  479. print "Press any key to resume printing. ";
  480.  
  481. pausemor:
  482. a$=inkey$
  483. if a$="" then pausemor:
  484. a$=""
  485. goto heading:
  486.  
  487. nopause:
  488. if error=99 then eofp:
  489. goto printmor:
  490.  
  491. blanklin:
  492. input# 1, line$ crlf
  493. if line$="" then printmor: else contlprn:
  494.  
  495. eofp:
  496. lprint line$
  497. print "Finished."
  498. print
  499. close 1
  500. lprint f$
  501. print "Press any key to continue. ";
  502. gosub continue:
  503. return
  504.  
  505.  
  506. rem This is the end of the routine for printing text files.
  507.  
  508.  
  509. rem Here is the routine for shelling to DOS.
  510.  
  511. shell:
  512. cls
  513. print "On which drive is your COMMAND.COM (don't type the colon)? ";
  514. gosub continue:
  515. path$=a$+":\command.com"
  516. cls
  517. print "Use the DOS command EXIT to return to START.COM."
  518. print
  519. call path$,""
  520. goto options:
  521.  
  522.  
  523. rem Here is the routine for START.COM in 40-column mode.
  524.  
  525. option40:
  526. width 40
  527. print "Here are your options:"
  528. print
  529. print
  530. print "F1- See a list of disk files."
  531. print
  532. print "F2- Read the text file of your choice,"
  533. print "on the screen."
  534. print
  535. print "F3- Print a text file."
  536. print
  537. print "F4- Shell to DOS."
  538. print
  539. print "F5- Return to 80-column mode."
  540. print
  541. print "Esc- Quit and return to DOS."
  542. print
  543. print
  544. print "Please press the key corresponding to"
  545. print "your choice. ";
  546.  
  547. wait3:
  548. gosub continue:
  549. if a$=b$ then finish:
  550. if extended=1 then readex40:
  551. goto wait3:
  552.  
  553. readex40:
  554. if a$=";" then seefil40:
  555. if a$="<" then rdfile40:
  556. if a$="=" then prtdoc40:
  557. if a$=">" then shell40:
  558. if a$="?" then width80:
  559. goto wait3:
  560.  
  561.  
  562. rem Here is the routine for viewing disk files in 40-column mode.
  563.  
  564. seefil40:
  565. width 40
  566. print "Here are the files on this disk:"
  567. print
  568. print
  569. print "BEEP.ASI- The ASIC code for BEEP.COM."
  570. print
  571. print "BEEP.COM- Makes your computer go beep."
  572. print
  573. print "BEEP.DOC- The documentation for"
  574. print "BEEP.COM."
  575. print
  576. print "BLANKLIN.ASI- The ASIC code for"
  577. print "BLANKLIN.COM."
  578. print
  579. print "BLANKLIN.COM- Makes blank lines in DOS"
  580. print "2.X batch files."
  581. print
  582. print "BLANKLIN.DOC- The documentation for"
  583. print "BLANKLIN.COM."
  584. print
  585. print "CORRECT.ASI- The ASIC code for"
  586. print "CORRECT.COM."
  587. print
  588. print
  589. print "Press any key to continue. ";
  590. gosub continue:
  591. cls
  592. print "CORRECT.COM- Batch file utility to re-"
  593. print "ward correct answers."
  594. print
  595. print "CORRECT.DOC- The documentation for"
  596. print "CORRECT.COM."
  597. print
  598. print "LIST.COM- Excellent utility by Vern"
  599. print "Buerg; prints files on the screen."
  600. print
  601. print "LITTLEBP.ASI- The ASIC code for"
  602. print "LITTLEBP.COM."
  603. print
  604. print "LITTLEBP.COM- Makes a short beep on"
  605. print "your computer."
  606. print
  607. print "LITTLEBP.DOC- The documentation for"
  608. print "LITTLEBP.COM."
  609. print
  610. print
  611. print "Press any key to continue. ";
  612. gosub continue:
  613. cls
  614. print "SIREN.ASI- The ASIC code for"
  615. print "SIREN.COM."
  616. print
  617. print "SIREN.COM- Makes a siren noise."
  618. print
  619. print "SIREN.DOC- The documentation for"
  620. print "SIREN.COM."
  621. print
  622. print "SMILEDLY.ASI- The ASIC code for"
  623. print "SMILEDLY.COM."
  624. print
  625. print "SMILEDLY.COM- Makes a smiley-face, and"
  626. print "delays before returning to DOS."
  627. print
  628. print "SMILEDLY.DOC- The documentation for"
  629. print "SMILEDLY.COM."
  630. print
  631. print "SPLAT.ASI- The ASIC code for"
  632. print "SPLAT.COM."
  633. print
  634. print
  635. print "Press any key to continue. ";
  636. gosub continue:
  637. cls
  638. print "SPLAT.COM- Batch file utility; rewards"
  639. print "incorrect answers."
  640. print
  641. print "START.ASI- The ASIC code for"
  642. print "START.COM."
  643. print
  644. print "START.COM- The file you're using right"
  645. print "now."
  646. print
  647. print
  648. print "Press any key to return to the Main"
  649. print "Options Menu. ";
  650. gosub continue:
  651. goto option40:
  652.  
  653.  
  654. rem Here is the routine for reading a text file in 40-column mode.
  655.  
  656. rdfile40:
  657. width 40
  658. print "To move ahead in the file(s) you are"
  659. print "about to view, press PgDn."
  660. print
  661. print "To move back, press PgUp."
  662. print
  663. print "To move to the side, use the arrow"
  664. print "keys."
  665. print
  666. print "To exit the document, press Esc."
  667. print
  668. print
  669. print "Press any key to see the menu of"
  670. print "files. ";
  671. gosub continue:
  672.  
  673. rdmenu40:
  674. cls
  675. print "Here are the files you can view:"
  676. print
  677. print
  678. print "A- BEEP.ASI           J- SIREN.ASI"
  679. print
  680. print "B- BEEP.DOC           K- SIREN.DOC"
  681. print
  682. print "C- BLANKLIN.ASI       L- SMILEDLY.ASI"
  683. print
  684. print "D- BLANKLIN.DOC       M- SMILEDLY.DOC"
  685. print
  686. print "E- CORRECT.ASI        N- SPLAT.ASI"
  687. print
  688. print "F- CORRECT.DOC        O- SPLAT.DOC"
  689. print
  690. print "G- NOT IN USE         P- START.ASI"
  691. print
  692. print "H- LITTLEBP.ASI"
  693. print
  694. print "I- LITTLEBP.DOC       Esc- Main Menu."
  695. print
  696. print
  697. print "Please press the key corresponding to"
  698. print "your choice. ";
  699. gosub continue:
  700.  
  701. if a$=b$ then option40:
  702. print a$;
  703. if a$="a" then rdbeea40:
  704. if a$="A" then rdbeea40:
  705. if a$="b" then rdbeed40:
  706. if a$="B" then rdbeed40:
  707. if a$="c" then rdblaa40:
  708. if a$="C" then rdblaa40:
  709. if a$="d" then rdblad40:
  710. if a$="D" then rdblad40:
  711. if a$="e" then rdcora40:
  712. if a$="E" then rdcora40:
  713. if a$="f" then rdcord40:
  714. if a$="F" then rdcord40:
  715. if a$="g" then rdmenu40:
  716. if a$="G" then rdmenu40:
  717. if a$="h" then rdlita40:
  718. if a$="H" then rdlita40:
  719. if a$="i" then rdlitd40:
  720. if a$="I" then rdlitd40:
  721. if a$="j" then rdsira40:
  722. if a$="J" then rdsira40:
  723. if a$="k" then rdsird40:
  724. if a$="K" then rdsird40:
  725. if a$="l" then rdsmia40:
  726. if a$="L" then rdsmia40:
  727. if a$="m" then rdsmid40:
  728. if a$="M" then rdsmid40:
  729. if a$="n" then rdspla40:
  730. if a$="N" then rdspla40:
  731. if a$="o" then rdspld40:
  732. if a$="O" then rdspld40:
  733. if a$="p" then rdstar40:
  734. if a$="P" then rdstar40:
  735. goto rdmenu40:
  736.  
  737. rdbeea40:
  738. call ("list.com"," beep.asi")
  739. goto rdmenu40:
  740. rdbeed40:
  741. call ("list.com"," beep.doc")
  742. goto rdmenu40:
  743. rdblaa40:
  744. call ("list.com"," blanklin.asi")
  745. goto rdmenu40:
  746. rdblad40:
  747. call ("list.com"," blanklin.doc")
  748. goto rdmenu40:
  749. rdcora40:
  750. call ("list.com"," correct.asi")
  751. goto rdmenu40:
  752. rdcord40:
  753. call ("list.com"," correct.doc")
  754. goto rdmenu40:
  755. rdlita40:
  756. call ("list.com"," littlebp.asi")
  757. goto rdmenu40:
  758. rdlitd40:
  759. call ("list.com"," littlebp.doc")
  760. goto rdmenu40:
  761. rdsira40:
  762. call ("list.com"," siren.asi")
  763. goto rdmenu40:
  764. rdsird40:
  765. call ("list.com"," siren.doc")
  766. goto rdmenu40:
  767. rdsmia40:
  768. call ("list.com"," smiledly.asi")
  769. goto rdmenu40:
  770. rdsmid40:
  771. call ("list.com"," smiledly.doc")
  772. goto rdmenu40:
  773. rdspla40:
  774. call ("list.com"," splat.asi")
  775. goto rdmenu40:
  776. rdspld40:
  777. call ("list.com"," splat.doc")
  778. goto rdmenu40:
  779. rdstar40:
  780. call ("list.com"," start.asi")
  781. goto rdmenu40:
  782.  
  783.  
  784. rem Here is the routine for printing text files.
  785.  
  786. prtdoc40:
  787. width 40
  788. print "Please ready your printer; press any"
  789. print "key to see the menu of files."
  790. gosub continue:
  791.  
  792. prmenu40:
  793. cls
  794. print "Here are the files you can print:"
  795. print
  796. print
  797. print "A- BEEP.ASI           J- SIREN.ASI"
  798. print
  799. print "B- BEEP.DOC           K- SIREN.DOC"
  800. print
  801. print "C- BLANKLIN.ASI       L- SMILEDLY.ASI"
  802. print
  803. print "D- BLANKLIN.DOC       M- SMILEDLY.DOC"
  804. print
  805. print "E- CORRECT.ASI        N- SPLAT.ASI"
  806. print
  807. print "F- CORRECT.DOC        O- SPLAT.DOC"
  808. print
  809. print "G- NOT IN USE         P- START.ASI"
  810. print
  811. print "H- LITTLEBP.ASI"
  812. print
  813. print "I- LITTLEBP.DOC       Esc- Main Menu."
  814. print
  815. print
  816. print "Please press the key corresponding to"
  817. print "your choice. ";
  818.  
  819. wait4:
  820. gosub continue:
  821. if a$=b$ then option40:
  822. if a$="a" then prbeea40:
  823. if a$="A" then prbeea40:
  824. if a$="b" then prbeed40:
  825. if a$="B" then prbeed40:
  826. if a$="c" then prblaa40:
  827. if a$="C" then prblaa40:
  828. if a$="d" then prblad40:
  829. if a$="D" then prblad40:
  830. if a$="e" then prcora40:
  831. if a$="E" then prcora40:
  832. if a$="f" then prcord40:
  833. if a$="F" then prcord40:
  834. if a$="g" then prmenu40:
  835. if a$="G" then prmenu40:
  836. if a$="h" then prlita40:
  837. if a$="H" then prlita40:
  838. if a$="i" then prlitd40:
  839. if a$="I" then prlitd40:
  840. if a$="j" then prsira40:
  841. if a$="J" then prsira40:
  842. if a$="k" then prsird40:
  843. if a$="K" then prsird40:
  844. if a$="l" then prsmia40:
  845. if a$="L" then prsmia40:
  846. if a$="m" then prsmid40:
  847. if a$="M" then prsmid40:
  848. if a$="n" then prspla40:
  849. if a$="N" then prspla40:
  850. if a$="o" then prspld40:
  851. if a$="O" then prspld40:
  852. if a$="p" then prstar40:
  853. if a$="P" then prstar40:
  854. goto wait4:
  855.  
  856. prbeea40:
  857. file$="beep.asi"
  858. gosub prfile40:
  859. goto prmenu40:
  860.  
  861. prbeed40:
  862. file$="beep.doc"
  863. gosub prfile40:
  864. goto prmenu40:
  865.  
  866. prblaa40:
  867. file$="blanklin.asi"
  868. gosub prfile40:
  869. goto prmenu40:
  870.  
  871. prblad40:
  872. file$="blanklin.doc"
  873. gosub prfile40:
  874. goto prmenu40:
  875.  
  876. prcora40:
  877. file$="correct.asi"
  878. gosub prfile40:
  879. goto prmenu40:
  880.  
  881. prcord40:
  882. file$="correct.doc"
  883. gosub prfile40:
  884. goto prmenu40:
  885.  
  886. prlita40:
  887. file$="littlebp.asi"
  888. gosub prfile40:
  889. goto prmenu40:
  890.  
  891. prlitd40:
  892. file$="littlebp.doc"
  893. gosub prfile40:
  894. goto prmenu40:
  895.  
  896. prsira40:
  897. file$="siren.asi"
  898. gosub prfile40:
  899. goto prmenu40:
  900.  
  901. prsird40:
  902. file$="siren.doc"
  903. gosub prfile40:
  904. goto prmenu40:
  905.  
  906. prsmia40:
  907. file$="smiledly.asi"
  908. gosub prfile40:
  909. goto prmenu40:
  910.  
  911. prsmid40:
  912. file$="smiledly.doc"
  913. gosub prfile40:
  914. goto prmenu40:
  915.  
  916. prspla40:
  917. file$="splat.asi"
  918. gosub prfile40:
  919. goto prmenu40:
  920.  
  921. prspld40:
  922. file$="splat.doc"
  923. gosub prfile40:
  924. goto prmenu40:
  925.  
  926. prstar40:
  927. file$="start.asi"
  928. gosub prfile40:
  929. goto prmenu40:
  930.  
  931.  
  932. rem Here is the routine for printing a file in 40-column mode.
  933.  
  934. prfile40:
  935. cls
  936. f$=chr$(12)
  937. open "i",1,file$
  938.  
  939. if error=2 then
  940. print ""
  941. print ""
  942. print "File not found."
  943. print
  944. print
  945. print "Press any key to continue. ";
  946. gosub continue:
  947. close 1
  948. return
  949. endif
  950.  
  951. headng40:
  952. cls
  953. print "Printing...";
  954. realfile$=ucase$(file$)
  955. color 0,7
  956. print realfile$
  957. color 7,0
  958. print
  959. print
  960. print "Press space bar to pause printing, or"
  961. print "Esc to quit."
  962. print
  963. print
  964.  
  965. prntmr40:
  966. input# 1, line$ crlf
  967.  
  968. if error=96 then
  969. lprint line$
  970. goto blnkln40:
  971. endif
  972.  
  973. contpr40:
  974. lprint line$
  975.  
  976. a$=inkey$
  977.  
  978. if a$=b$ then
  979. print "Printing has been terminated.  The"
  980. print "printer may still have data in its"
  981. print "buffer.  If so, it will continue"
  982. print "printing until the buffer is empty."
  983. print
  984. lprint f$
  985. close 1
  986. file$=""
  987. print "Press any key to continue. ";
  988. gosub continue:
  989. return
  990. endif
  991.  
  992. if a$=e$ then pause40: else nopaus40:
  993.  
  994. pause40:
  995.  
  996. print "Press any key to resume printing. ";
  997.  
  998. pausmr40:
  999. a$=inkey$
  1000. if a$="" then pausmr40:
  1001. a$=""
  1002. goto headng40:
  1003.  
  1004. nopaus40:
  1005. if error=99 then eofp40:
  1006. goto prntmr40:
  1007.  
  1008. blnkln40:
  1009. input# 1, line$ crlf
  1010. if line$="" then prntmr40: else contpr40:
  1011.  
  1012. eofp40:
  1013. lprint line$
  1014. print "Finished."
  1015. print
  1016. close 1
  1017. lprint f$
  1018. print "Press any key to continue. ";
  1019. gosub continue:
  1020. return
  1021.  
  1022. rem This is the end of the routine for printing a file in 40-column mode.
  1023.  
  1024.  
  1025. rem Here is the routine for shelling to DOS in 40-column mode.
  1026.  
  1027. shell40:
  1028. width 40
  1029. print "On which drive is your COMMAND.COM?"
  1030. print "Don't type the colon. ";
  1031. gosub continue:
  1032. path$=a$+":\command.com"
  1033. cls
  1034. print "Use the DOS command EXIT to return to"
  1035. print "START.COM."
  1036. print
  1037. call path$,""
  1038. goto option40:
  1039.  
  1040. rem This is the end of the routine for shelling to DOS in 40-column mode.
  1041.  
  1042.  
  1043. rem Here is the routine for returning to 80-column width.
  1044.  
  1045. width80:
  1046. width 80
  1047. goto options:
  1048.  
  1049. rem This is the end of the routine for returning to 80-column mode.
  1050.  
  1051.  
  1052. rem Here is the routine for continuing when the user presses a key.
  1053.  
  1054. continue:
  1055. wait:
  1056. a$=inkey$
  1057. if a$="" then wait:
  1058. return
  1059.  
  1060. rem Here is the routine for ending the program and returning to DOS.
  1061.  
  1062. finish:
  1063. cls
  1064. end
  1065.