home *** CD-ROM | disk | FTP | other *** search
/ Softdisk G-S 83 / SGDS 83.2mg / SDGS.83 / SDC83 / C / WINDOWBOX.PRG (.txt) < prev    next >
Encoding:
Applesoft BASIC Source Code  |  1988-06-29  |  9.7 KB  |  331 lines  |  [FC] Applesoft BASIC Program (0x0801)

  1. 1  PRINT  CHR$(21)
  2. 2  INVERSE : SPEED= 255
  3. 5  REM <CTRL-0x0a>WINDOWRTNS TAKES FROM $800 TO $0DFF
  4. 10  PRINT  CHR$(4)"-windowbox.ml"
  5. 20  POKE 48688, PEEK(0): POKE 48689, PEEK(1)
  6. 21  REM  LOAD FONT AT $0E00
  7. 25  REM <CTRL-0x0a>ROUTINE LOCATIONS
  8. 30 BOX = 2051
  9. 40 OBOX = 2054
  10. 50 CBOX = 2057
  11. 53  REM <CTRL-0x0a><CTRL-0x0a>** DATA STORAGE IS $1100 **<CTRL-0x0a><CTRL-0x0a>
  12. 54  REM <CTRL-0x0a>TO CHANGE DATA STORAGE,<CTRL-0x0a>
  13. 55  REM <CTRL-0x0a><CTRL-0x0a>POKE2060,LOBYTE
  14. 56  REM <CTRL-0x0a>POKE2061,HIBYTE<CTRL-0x0a><CTRL-0x0a>
  15. 57  DIM DD$(10)
  16. 58  ONERR  GOTO 50000
  17. 59  REM <CTRL-0x0a>START OF MAIN MENU<CTRL-0x0a>
  18. 60  PRINT  CHR$(4)"BLOADshadow.image,a$C6C"
  19. 61  SPEED= 255
  20. 62 OVER = 0
  21. 63  CALL BOX,1,1,40,24
  22. 65  INVERSE 
  23. 70  CALL BOX,2,2,38,3: HOME 
  24. 80  HTAB 6: PRINT "Softdisk's WindowBox Demo";
  25. 90  CALL BOX,20,5,20,15
  26. 95  HOME : PRINT "The items in this": PRINT "menu are different";: PRINT "examples of how": PRINT "the Windowbox": PRINT "routines can be": PRINT "used in your": PRINT "programs."
  27. 100  CALL BOX,2,20,38,4
  28. 105  VTAB 21: HTAB 6: PRINT " Arrows move highlight,": VTAB 22: HTAB 10: PRINT "RETURN selects."
  29. 110  PRINT  CHR$(4)"bload dialog.image,a$c6c"
  30. 120  CALL BOX,2,5,18,15
  31. 130  RESTORE : FOR I = 0 TO 10: READ DD$(I): NEXT 
  32. 140  GOSUB 2000
  33. 150  ON D GOSUB 11000,12000,13000,14000,15000,16000,17000,18000,19000,20000
  34. 160  IF (OVER)  THEN 170
  35. 165  IF (QUIT)  THEN  PRINT  CHR$(4)"bload dialog.image,a$c6c": GOTO 140
  36. 167  GOTO 60
  37. 170  CALL BOX,9,10,23,5: HOME : VTAB 12: HTAB 1: PRINT "Returning to Softdisk"
  38. 180  PRINT  CHR$(4)"bye"
  39. 999  END 
  40. 1990  REM <CTRL-0x0a>MENU<CTRL-0x0a>
  41. 2000  HOME 
  42. 2010 QUIT = 0
  43. 2020  POKE  -16368,0
  44. 2025  HTAB 4
  45. 2030  PRINT DD$(0)
  46. 2040  FOR D = 1 TO 10: GOSUB 2280: NEXT 
  47. 2080 D = 1
  48. 2090  GOSUB 2310
  49. 2100  IF DD$ =  CHR$(8)  OR DD$ =  CHR$(11)  THEN D = D -1: IF D <1  THEN D = 10
  50. 2110  IF DD$ =  CHR$(21)  OR DD$ =  CHR$(10)  THEN D = D +1: IF D >10  THEN D = 1
  51. 2120  IF DD$ =  CHR$(27)  THEN D = 10: GOTO 2140
  52. 2130  IF DD$ < > CHR$(13)  THEN 2090
  53. 2140  RETURN 
  54. 2150  GOTO 2090
  55. 2190  VTAB 17: HTAB 1: PRINT  SPC( 55): GOTO 2090
  56. 2200  REM error
  57. 2210  POKE 216,0
  58. 2220  PRINT  CHR$(4)"CLOSE"
  59. 2230  CALL BOX,25,16,15,5: HOME 
  60. 2240  PRINT "   Cannot": PRINT "   perform": PRINT "  function." CHR$(7)
  61. 2250  FOR PA = 0 TO 100: IF  PEEK(49152) <128  THEN  NEXT 
  62. 2260  GOTO 60
  63. 2270  REM 
  64. 2280  VTAB 7 +D: HTAB (16 - LEN(DD$(D)))/2
  65. 2290  PRINT " "DD$(D)" ";
  66. 2300  RETURN 
  67. 2310  REM  getbaby
  68. 2320  POKE  -16368,0
  69. 2330  NORMAL : GOSUB 2270
  70. 2340  FOR PA = 0 TO 20: IF  PEEK(49152) <128  THEN  NEXT 
  71. 2350  INVERSE : GOSUB 2270
  72. 2360  FOR PA = 0 TO 20: IF  PEEK(49152) <128  THEN  NEXT : GOTO 2330
  73. 2370  GET DD$
  74. 2380  RETURN 
  75. 10000  DATA "MAIN  MENU",Menu bar,Filecard menu,Warning Box,Question box,Input window,Framing,Quick clear,Quick title,Game Over,Quit
  76. 10999  REM <CTRL-0x0a>MENU BAR<CTRL-0x0a>
  77. 11000  GOSUB 30000
  78. 11005  HCOLOR= 0: HPLOT 0,9 TO 279,9
  79. 11007  PRINT  CHR$(4)"bload shadow.image,a$c6c"
  80. 11010  PRINT  CHR$(20);
  81. 11020  VTAB 1: HTAB 1: PRINT "  @  File  Edit  Tools  Goodies"
  82. 11030  CALL BOX,1,19,40,5
  83. 11040  HOME : HTAB 5: PRINT "Use arrows to move flasher,": HTAB 5: PRINT "RETURN to select menu item."
  84. 11045  PRINT  CHR$(20);
  85. 11047  PRINT  CHR$(4)"bload pulldown.image,a$c6c"
  86. 11050 MB = 1
  87. 11055  POKE  -16368,0
  88. 11100  NORMAL : ON MB GOSUB 11910,11912,11914,11916,11918
  89. 11110  FOR I = 1 TO 20: IF  PEEK( -16384) >127  THEN I = 20
  90. 11111  NEXT 
  91. 11120  INVERSE : ON MB GOSUB 11910,11912,11914,11916,11918
  92. 11121  FOR I = 1 TO 20: IF  PEEK( -16384) >127  THEN I = 20
  93. 11122  NEXT 
  94. 11125  IF  PEEK( -16384) >127  THEN 11140
  95. 11130  GOTO 11100
  96. 11140 K$ =  CHR$( PEEK( -16384) -128): POKE  -16368,0
  97. 11150  IF K$ =  CHR$(21)  OR K$ =  CHR$(10)  THEN MB = MB +1: IF MB >5  THEN MB = 1
  98. 11160  IF K$ =  CHR$(11)  OR K$ =  CHR$(8)  THEN MB = MB -1: IF MB <1  THEN MB = 5
  99. 11170  IF K$ =  CHR$(27)  THEN 11800
  100. 11180  IF K$ < > CHR$(13)  THEN 11100
  101. 11185  NORMAL : ON MB GOSUB 11910,11912,11914,11916,11918
  102. 11187  INVERSE 
  103. 11190  VTAB 20: HTAB 6: PRINT "Use arrows to move flasher,": HTAB 6: PRINT "RETURN to select submenu item."
  104. 11200  CALL OBOX,H,2,13,6
  105. 11210  HOME : FOR I = 2 TO 5: VTAB I: HTAB 1: PRINT " Subitem "I -1;: NEXT : VTAB 6: HTAB 1: PRINT " Quit";
  106. 11220 SM = 1: SPEED= 252: PRINT  CHR$(20);: POKE  -16368,0
  107. 11230  INVERSE : VTAB SM +1: HTAB H +1: PRINT "           ";
  108. 11240  FOR I = 1 TO 20: IF  PEEK( -16384) >127  THEN I = 20
  109. 11250  NEXT 
  110. 11260  VTAB SM +1: HTAB H +1: PRINT "           ";
  111. 11270  FOR I = 1 TO 20: IF  PEEK( -16384) >127  THEN I = 20
  112. 11280  NEXT 
  113. 11290  IF  PEEK( -16384) >127  THEN 11310
  114. 11300  GOTO 11230
  115. 11310 K$ =  CHR$( PEEK( -16384) -128): POKE  -16368,0
  116. 11311  IF K$ =  CHR$(21)  OR K$ =  CHR$(10)  THEN SM = SM +1: IF SM >5  THEN SM = 1
  117. 11320  IF K$ =  CHR$(11)  OR K$ =  CHR$(8)  THEN SM = SM -1: IF SM <1  THEN SM = 5
  118. 11330  IF K$ =  CHR$(27)  THEN 11800
  119. 11340  IF K$ < > CHR$(13)  THEN 11230
  120. 11400  VTAB SM +1: HTAB H +1: PRINT "           ";
  121. 11405  SPEED= 255
  122. 11410  VTAB 20: HTAB 6: PRINT "Very good! You have selected"
  123. 11420 A$ = "Subitem " + STR$(SM): IF SM = 5  THEN A$ = "Quit"
  124. 11425  HTAB 2: PRINT  SPC( 37);
  125. 11430  HTAB 6: PRINT A$" from the submenu.": HTAB 14: PRINT "Press a key."
  126. 11440  WAIT  -16384,128: POKE  -16368,0
  127. 11800  CALL CBOX
  128. 11900  RETURN 
  129. 11910  VTAB 1: HTAB 2: PRINT " @ ";:H = 1: RETURN 
  130. 11912  VTAB 1: HTAB 5: PRINT " File ";:H = 4: RETURN 
  131. 11914  VTAB 1: HTAB 11: PRINT " Edit ":H = 10: RETURN 
  132. 11916  VTAB 1: HTAB 17: PRINT " Tools ";:H = 16: RETURN 
  133. 11918  VTAB 1: HTAB 24: PRINT " Goodies ";:H = 23: RETURN 
  134. 11999  REM <CTRL-0x0a>FILECARD MENUS<CTRL-0x0a>
  135. 12000  GOSUB 30000
  136. 12005  HCOLOR= 0: HPLOT 0,9 TO 279,9
  137. 12010  PRINT  CHR$(20);: VTAB 1: HTAB 1
  138. 12020  PRINT " Path:/goo/     MAIN MENU              "
  139. 12030  HPLOT 0,182 TO 279,182: VTAB 24: HTAB 1: PRINT "Use arrows or # and RETURN.";: VTAB 4: HTAB 1
  140. 12040  PRINT  CHR$(4)"bload folder.image,a$c6c"
  141. 12050  CALL BOX,5,5,30,12
  142. 12060  CALL BOX,5,4,11,3
  143. 12070  HOME : PRINT "Main menu";
  144. 12080  PRINT  CHR$(20);: VTAB 8: HTAB 7: PRINT "1.  Eat a bug"
  145. 12090  PRINT : HTAB 7: PRINT "2.  Go to the store": PRINT : HTAB 7: PRINT "3.  Quit"
  146. 12100 MM = 1: POKE  -16368,0
  147. 12101  PRINT  CHR$(20);
  148. 12105  VTAB 1: HTAB 16: PRINT " MAIN MENU "
  149. 12110  NORMAL : ON MM GOSUB 12910,12912,12914
  150. 12120  FOR I = 1 TO 20: IF  PEEK( -16384) >127  THEN I = 20
  151. 12130  NEXT I
  152. 12140  INVERSE : ON MM GOSUB 12910,12912,12914
  153. 12150  FOR I = 1 TO 20: IF  PEEK( -16384) >127  THEN I = 20
  154. 12160  NEXT I
  155. 12170  IF  PEEK( -16384) >127  THEN 12190
  156. 12180  GOTO 12110
  157. 12190 K$ =  CHR$( PEEK( -16384) -128): POKE  -16368,0
  158. 12200  IF K$ =  CHR$(21)  OR K$ =  CHR$(10)  THEN MM = MM +1: IF MM >3  THEN MM = 1
  159. 12210  IF K$ =  CHR$(11)  OR K$ =  CHR$(8)  THEN MM = MM -1: IF MM <1  THEN MM = 3
  160. 12215  IF  VAL(K$) >0  AND  VAL(K$) <4  THEN MM =  VAL(K$)
  161. 12220  IF K$ =  CHR$(27)  THEN 12900
  162. 12230  IF K$ < > CHR$(13)  THEN 12110
  163. 12240  ON MM GOTO 12300,12600,12900
  164. 12250  GOTO 12110
  165. 12300  CALL OBOX,7,7,30,12
  166. 12310  CALL OBOX,7,6,11,3
  167. 12320  HOME : PRINT "Eat a bug";
  168. 12325  PRINT  CHR$(20);
  169. 12330  VTAB 1: HTAB 16: PRINT " EAT A BUG "
  170. 12340  VTAB 10: HTAB 9: PRINT "1.  Eat a crunchy bug": VTAB 12: HTAB 9: PRINT "2.  Eat a squishy bug": VTAB 14: HTAB 9: PRINT "3.  Back to Main Menu"
  171. 12345 MM = 1
  172. 12350  NORMAL : ON MM GOSUB 12916,12918,12920
  173. 12360  FOR I = 1 TO 20: IF  PEEK( -16384) >127  THEN I = 20
  174. 12370  NEXT I
  175. 12380  INVERSE : ON MM GOSUB 12916,12918,12920
  176. 12390  FOR I = 1 TO 20: IF  PEEK( -16384) >127  THEN I = 20
  177. 12400  NEXT I
  178. 12410  IF  PEEK( -16384) >127  THEN 12430
  179. 12420  GOTO 12350
  180. 12430 K$ =  CHR$( PEEK( -16384) -128): POKE  -16368,0
  181. 12440  IF K$ =  CHR$(21)  OR K$ =  CHR$(10)  THEN MM = MM +1: IF MM >3  THEN MM = 1
  182. 12450  IF K$ =  CHR$(11)  OR K$ =  CHR$(8)  THEN MM = MM -1: IF MM <1  THEN MM = 3
  183. 12455  IF  VAL(K$) >0  AND  VAL(K$) <4  THEN MM =  VAL(K$)
  184. 12460  IF K$ =  CHR$(27)  THEN  CALL CBOX: CALL CBOX: GOTO 12100
  185. 12470  IF K$ < > CHR$(13)  THEN 12350
  186. 12475  IF MM = 3  THEN  CALL CBOX: CALL CBOX: GOTO 12100
  187. 12480  CALL OBOX,9,9,30,12
  188. 12490  CALL OBOX,9,8,21,3
  189. 12500  HOME : IF MM = 1  THEN  PRINT "Eat a crunchy bug": GOTO 12520
  190. 12510  IF MM = 2  THEN  PRINT "Eat a squishy bug"
  191. 12520  PRINT  CHR$(20);: VTAB 12: HTAB 11: PRINT "The rest of this menu has": HTAB 11: PRINT "been graciously censored.": HTAB 11: PRINT "Press a key to go back": HTAB 11: PRINT "to the Eat a Bug Menu."
  192. 12530  WAIT  -16384,128: POKE  -16368,0: CALL CBOX: CALL CBOX: GOTO 12325
  193. 12600  CALL OBOX,7,7,30,12: CALL OBOX,7,6,15,3
  194. 12610  HOME : PRINT "Go to store" CHR$(20);
  195. 12620  VTAB 12: HTAB 11: PRINT "The store is closed.": PRINT : HTAB 11: PRINT "Press a key to go back": HTAB 11: PRINT "to Main Menu."
  196. 12630  WAIT  -16384,128: POKE  -16368,0: CALL CBOX: CALL CBOX: GOTO 12100
  197. 12900  CALL CBOX: CALL CBOX
  198. 12910  VTAB 8: HTAB 10: PRINT " Eat a bug ": RETURN 
  199. 12912  VTAB 10: HTAB 10: PRINT " Go to the store ": RETURN 
  200. 12914  VTAB 12: HTAB 10: PRINT " Quit ": RETURN 
  201. 12916  VTAB 10: HTAB 12: PRINT " Eat a crunchy bug ": RETURN 
  202. 12918  VTAB 12: HTAB 12: PRINT " Eat a squishy bug ": RETURN 
  203. 12920  VTAB 14: HTAB 12: PRINT " Back to Main Menu ": RETURN 
  204. 12999  REM <CTRL-0x0a>WARNING BOX<CTRL-0x0a>
  205. 13000  PRINT  CHR$(20);: GOSUB 30000
  206. 13010  VTAB 1: HTAB 2: PRINT "Neat-o Disk Program"
  207. 13020  HCOLOR= 0: HPLOT 0,9 TO 279,9
  208. 13030  PRINT  CHR$(4)"bload wbx.plotter,a$3a00"
  209. 13040  PRINT  CHR$(4)"bload wbx.dialog.lnk,a$3e00"
  210. 13050  PRINT  CHR$(4)"bload dialog.image,a$c6c"
  211. 13060  CALL BOX,6,6,28,10: HOME 
  212. 13070  POKE 0,0: POKE 1,62: POKE 2,48: POKE 3,7: POKE 4,0: POKE 5,2: CALL 14848
  213. 13080  HTAB 9: PRINT "WARNING: You are": HTAB 9: PRINT "about to delete": HTAB 9: PRINT "your disk!"
  214. 13090  POKE 0,0: POKE 1,62: POKE 2,89: POKE 3,21: POKE 4,0: POKE 5,3: CALL 14848
  215. 13100  POKE 0,0: POKE 1,62: POKE 2,92: POKE 3,7: POKE 4,0: POKE 5,4: CALL 14848
  216. 13110  VTAB 13: HTAB 3: PRINT "Cancel";: HTAB 20: PRINT "OK";
  217. 13120  PRINT  CHR$(4)"bload shadow.image,a$c6c"
  218. 13130  CALL BOX,4,19,32,5: HOME 
  219. 13140  PRINT "This is JUST an example!": PRINT "Press a key to go back to the": PRINT "Main Menu."
  220. 13150  WAIT  -16384,128: POKE  -16368,0
  221. 13900  RETURN 
  222. 13999  REM <CTRL-0x0a>QUESTION BOX<CTRL-0x0a>
  223. 14000  PRINT  CHR$(20);: GOSUB 30000
  224. 14010  VTAB 1: HTAB 2: PRINT "Another Neat-o Disk Program"
  225. 14020  HCOLOR= 0: HPLOT 0,9 TO 279,9
  226. 14030  PRINT  CHR$(4)"bload wbx.plotter,a$3a00"
  227. 14040  PRINT  CHR$(4)"bload wbx.dialog.lnk,a$3e00"
  228. 14050  PRINT  CHR$(4)"bload dialog.image,a$c6c"
  229. 14060  CALL BOX,6,6,28,10: HOME 
  230. 14070  POKE 0,0: POKE 1,62: POKE 2,48: POKE 3,7: POKE 4,0: POKE 5,1: CALL 14848
  231. 14080  HTAB 9: PRINT "Do you really": HTAB 9: PRINT "want to unlock": HTAB 9: PRINT "all files?"
  232. 14090  POKE 0,0: POKE 1,62: POKE 2,89: POKE 3,21: POKE 4,0: POKE 5,3: CALL 14848
  233. 14100  POKE 0,0: POKE 1,62: POKE 2,92: POKE 3,7: POKE 4,0: POKE 5,4: CALL 14848
  234. 14110  VTAB 13: HTAB 3: PRINT "Cancel";: HTAB 20: PRINT "OK";
  235. 14120  PRINT  CHR$(4)"bload shadow.image,a$c6c"
  236. 14130  CALL BOX,4,18,32,7: HOME 
  237. 14140  PRINT "Another example of good human": PRINT "interface. Always make sure": PRINT "the user wants to do somethingthat may take a while.": PRINT "Please press a key."
  238. 14150  WAIT  -16384,128: POKE  -16368,0
  239. 14900  RETURN 
  240. 14999  REM <CTRL-0x0a>INPUT WINDOW<CTRL-0x0a>
  241. 15000  GOSUB 30000
  242. 15010  PRINT  CHR$(4)"bload shadow.image,a$c6c"
  243. 15020  CALL BOX,1,1,40,5: HOME 
  244. 15030  PRINT : HTAB 6: PRINT "Super-Whiz Game-O-Matic!  
  245. 15040  CALL BOX,6,6,28,8: HOME 
  246. 15050  PRINT "Welcome to Super-Whiz": PRINT "Game-O-Matic!": PRINT : PRINT "Please enter your name:"
  247. 15070 IW = 23: PRINT ">";:V =  PEEK(37) +1:H =  PEEK(36) +1
  248. 15080  GOSUB 40020
  249. 15090  CALL BOX,6,6,28,8: HOME 
  250. 15095  IF IN$ = ""  THEN  PRINT "Fine, I didn't really": PRINT "need to know your name": PRINT "anyways. Press a key.": GOTO 15110
  251. 15100  PRINT "I really like your name,":: PRINT IN$".": PRINT : PRINT : PRINT "   Press a key, please."
  252. 15110  WAIT  -16384,128: POKE  -16368,0
  253. 15120  RETURN 
  254. 15999  REM <CTRL-0x0a>FRAMING<CTRL-0x0a>
  255. 16000  GOSUB 30000
  256. 16005  CALL BOX,19,4,20,6: HOME : VTAB 6: PRINT "The Story of Billy   and His Dog"
  257. 16010  PRINT  CHR$(4)"BLOAD FRAME.IMAGE,A$C6C"
  258. 16020  CALL BOX,2,1,17,12
  259. 16030  PRINT  CHR$(4)"BLOAD WBX.PLOTTER"
  260. 16040  PRINT  CHR$(4)"BLOAD WBX.DOG.LNK,A$2000"
  261. 16050  POKE 0,0: POKE 1,32: POKE 2,8: POKE 3,2: POKE 4,0: POKE 5,1: CALL 14848
  262. 16060  PRINT  CHR$(4)"BLOAD SHADOW.IMAGE,A$C6C"
  263. 16070  CALL BOX,2,13,38,11: HOME 
  264. 16080  PRINT "Billy liked his dog. He took the": PRINT "dog everywhere he went."
  265. 16090  PRINT : PRINT "One day, Billy and his dog were": PRINT "playing in the field across the": PRINT "street. They liked to play tug of": PRINT "war with an old sock."
  266. 16200  CALL BOX,13,22,14,3: HOME 
  267. 16210  PRINT "Press a key.";
  268. 16220  WAIT  -16384,128: POKE  -16368,0
  269. 16230  RETURN 
  270. 16999  REM <CTRL-0x0a>QUICK CLEAR<CTRL-0x0a>
  271. 17000  CALL BOX,1,1,40,24
  272. 17010  VTAB 12: HTAB 6: PRINT "It is very easy to clear": HTAB 6: PRINT "the screen quickly -- you": HTAB 6: PRINT "just call up a box!"
  273. 17020  VTAB 20: HTAB 13: PRINT "Press a key."
  274. 17030  WAIT  -16384,128: POKE  -16368,0
  275. 17040  RETURN 
  276. 17999  REM <CTRL-0x0a>QUICK TITLE<CTRL-0x0a>
  277. 18000  PRINT  CHR$(4)"bload shadow.image,a$c6c"
  278. 18005  GOSUB 30000
  279. 18010  CALL BOX,1,1,40,5: HOME : PRINT : PRINT " The Super New Program For EveryBody!";
  280. 18020  CALL BOX,1,6,40,11: HOME 
  281. 18030  VTAB 10: HTAB 4: PRINT "A New Kind of Program That May": HTAB 4: PRINT "Change The Way You Think and Eat"
  282. 18040  CALL BOX,1,17,40,7: HOME 
  283. 18050  PRINT "Program: Jordan Phillips   Food: Mom": PRINT "Falconer: Hubert Whiteworth": PRINT "Key Grip: Joe  Best Boy: Ferd Burford"
  284. 18060  CALL BOX,13,22,14,3: HOME 
  285. 18070  PRINT "Press a key";
  286. 18080  WAIT  -16384,128: POKE  -16368,0
  287. 18090  RETURN 
  288. 18999  REM <CTRL-0x0a>GAME OVER<CTRL-0x0a>
  289. 19000  GOSUB 31000
  290. 19010  PRINT  CHR$(4)"BLOAD WBX.PLOTTER"
  291. 19020  PRINT  CHR$(4)"BLOAD WBX.GAMOVER.LNK,a$2000"
  292. 19030  POKE 0,0: POKE 1,32: POKE 2,1: POKE 3,0: POKE 4,0: POKE 5,1: CALL 14848
  293. 19040  PRINT  CHR$(4)"bload scroll.image,a$c6c"
  294. 19050  CALL OBOX,20,9,20,8: HOME 
  295. 19060  PRINT "Thy game is over.": PRINT "The amount of thy": PRINT "treasure:": PRINT "    9360176 gp!": PRINT : PRINT "Press upon a key.";
  296. 19070  WAIT  -16384,128: POKE  -16368,0
  297. 19080  CALL CBOX: RETURN 
  298. 19999  REM <CTRL-0x0a>QUIT<CTRL-0x0a>
  299. 20000  PRINT  CHR$(4)"bload wbx.plotter,a$3a00"
  300. 20010 QUIT = 1
  301. 20020  PRINT  CHR$(4)"bload wbx.dialog.lnk,a$3e00"
  302. 20030  CALL OBOX,6,6,28,10: HOME 
  303. 20040  POKE 0,0: POKE 1,62: POKE 2,48: POKE 3,7: POKE 4,0: POKE 5,1: CALL 14848
  304. 20050  HTAB 9: PRINT "Do you really": HTAB 9: PRINT "want to Quit?"
  305. 20060  POKE 0,0: POKE 1,62: POKE 2,89: POKE 3,21: POKE 4,0: POKE 5,3: CALL 14848
  306. 20070  POKE 0,0: POKE 1,62: POKE 2,92: POKE 3,7: POKE 4,0: POKE 5,4: CALL 14848
  307. 20080  VTAB 13: HTAB 3: PRINT "Cancel";: HTAB 20: PRINT "OK";
  308. 20090  PRINT  CHR$(4)"bload shadow.image,a$c6c"
  309. 20100  CALL OBOX,9,18,23,4: HOME 
  310. 20110  PRINT "Press RETURN to Quit,";: PRINT "ESC for cancel.";
  311. 20120  WAIT  -16384,128:K$ =  CHR$( PEEK( -16384) -128): POKE  -16368,0
  312. 20130  IF K$ =  CHR$(27)  THEN OVER = 0: GOTO 20160
  313. 20140  IF K$ =  CHR$(13)  THEN OVER = 1: GOTO 20160
  314. 20150  GOTO 20120
  315. 20160  CALL CBOX: CALL CBOX: RETURN 
  316. 29999  REM <CTRL-0x0a>CLEAR SCREEN TO WHITE
  317. 30000  HCOLOR= 3: HPLOT 0,0: CALL 62454: RETURN 
  318. 31000  HCOLOR= 0: HPLOT 0,0: CALL 62454: RETURN 
  319. 40015  REM <CTRL-0x0a>INPUT IN$<CTRL-0x0a>
  320. 40020 IN$ = "":BS$ =  CHR$(8):ES$ =  CHR$(27):CR$ =  CHR$(13):DL$ =  CHR$(127): VTAB V: HTAB H
  321. 40025  PRINT "_ "BS$BS$;
  322. 40030  GET K$
  323. 40035  IF K$ = ES$  THEN  VTAB V: HTAB H: PRINT  SPC(  LEN(IN$))" ";:IN$ = "": GOTO 40070
  324. 40040  IF (K$ = BS$  OR K$ = DL$)  THEN  IF  LEN(IN$) = 1  THEN IN$ = "": PRINT BS$;: GOTO 40025
  325. 40045  IF (K$ = BS$  OR K$ = DL$)  THEN  IF  LEN(IN$)  THEN IN$ =  LEFT$(IN$, LEN(IN$) -1): PRINT  CHR$(8);: GOTO 40025
  326. 40050  IF K$ = CR$  THEN  PRINT : GOTO 40070
  327. 40055  IF (K$ > = " "  AND K$ < >DL$)  THEN  IF  LEN(IN$) <IW  THEN IN$ = IN$ +K$: PRINT K$;: GOTO 40065
  328. 40060  PRINT  CHR$(7);
  329. 40065  GOTO 40025
  330. 40070  RETURN 
  331. 50000  FOR I = 1 TO 10: CALL CBOX: NEXT I: POKE 216,0: GOTO 60