home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C64Games / TRIVIAMASTER.ARC / TRIV.MOD3 (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  5.9 KB  |  196 lines

  1. 1 DIMZ$(225,3):PRINTCHR$(142):PRINTCHR$(8):GOSUB1000:DIMZY(225)
  2. 2 TX=PEEK(186):IFTX<8ANDTX<>1THENTX=8
  3. 10 PRINT"[147]"SPC(9)"[156]TRIVIA MASTER EDITOR[146]"
  4. 11 PRINT"FILE IN MEMORY: "M$"[146]"
  5. 15 PRINT"[158] F1 [146]   ADD TO FILE":PRINT"[158] F2 [146]   EDIT FILE"
  6. 16 PRINT"[158] F3 [146]   DISK MENU":PRINT"[158] F4 [146]   KEYWORD SEARCH"
  7. 17 PRINT"[158] F5 [146]   PRINT TO SCREEN":PRINT"[158] F6 [146]   PRINT TO PRINTER"
  8. 18 PRINT"[158] F8 [146]   READ DOCUMENTATION"
  9. 20 GETA$:IFA$=""THEN20
  10. 21 IFA$="[133]"THEN60
  11. 22 IFA$="[137]"THEN200
  12. 23 IFA$="[134]"THEN350
  13. 24 IFA$="[138]"THEN250
  14. 25 IFA$="[135]"THEN300
  15. 26 IFA$="[139]"THEN70
  16. 28 IFA$="[140]"THEN400
  17. 29 GOTO20
  18. 40 PRINT"[147]"SPC(13)"[156]LOAD FILE[146]":PRINT"ENTER FILE NAME TO LOAD:[146]"
  19. 41 GOSUB105:IFH$="*"THEN350
  20. 42 IFLEN(H$)<1ORLEN(H$)>16THEN40
  21. 43 IFRIGHT$(H$,3)<>".TM"ANDLEN(H$)<=13THENH$=H$+".TM"
  22. 44 IFLEN(H$)>13ANDRIGHT$(H$,3)<>".TM"THENH$=LEFT$(H$,13)+".TM"
  23. 45 GOSUB120:FORX=1TO225:Z$(X,0)="":Z$(X,1)="":Z$(X,2)="":Z$(X,3)="":ZY=0:NEXTX
  24. 46 GOTO600
  25. 47 PRINT"[147]"SPC(13)"[156]SAVE FILE[146]":PRINT"ENTER FILE NAME TO SAVE:[146]"
  26. 48 IFZ$(1,0)=""THEN10
  27. 49 GOSUB105:IFH$="*"THEN350
  28. 50 IFLEN(H$)<1ORLEN(H$)>16THEN47
  29. 51 GOSUB130:OPEN15,TX,15,"S:"+H$:CLOSE15:OPEN8,TX,8,"0:"+H$+",S,W"
  30. 52 FORX=1TO225:GOSUB650:PRINT#8,ZY(X)
  31. 55 PRINT#8,Z$(X,2):PRINT#8,Z$(X,0):PRINT#8,Z$(X,3):PRINT#8,Z$(X,1):GOSUB655
  32. 58 POKE53280,INT(15*RND(1)):NEXTX:CLOSE8:M$=H$:POKE53280,11:GOTO350
  33. 60 FORX=1TO225:IFZ$(X,0)=""THEN62
  34. 61 NEXTX:PRINT"NO ROOM FOR MORE QUESTIONS[146]":FORX=1TO1500:NEXTX:GOTO10
  35. 62 FORY=XTO225:PRINT"[154][147]QUESTION #[157]"Y
  36. 63 PRINT"[156]QUESTION:[146]":PRINT" ";:GOSUB105:IFH$="*"THEN10
  37. 64 Z$(Y,0)=H$
  38. 65 PRINT"ANSWER:[146]":PRINT" ";:GOSUB105:IFH$="*"THEN10
  39. 66 Z$(Y,1)=H$:GOSUB500:GOTO170
  40. 70 PRINT"[147]"SPC(9)"[156]PRINT TO PRINTER[146]":PRINT""SPC(11)"F1 ABORTS[146]"
  41. 71 IFZ$(1,0)=""THEN10
  42. 72 OPEN4,4:PRINT#4,"FILE : "M$"[146]"
  43. 73 FORX=1TO225:A$="":IFZ$(X,0)=""THENCLOSE4:GOTO10
  44. 74 PRINT#4,"QUESTION #"X:PRINT#4,"Q: "Z$(X,0):PRINT#4,"A: "Z$(X,1)
  45. 75 PRINT#4,"POINT VALUE: "ZY(X):PRINT#4,"":GETA$:IFA$="[133]"THENCLOSE4:GOTO10
  46. 76 NEXTX:CLOSE4:GOTO10
  47. 80 PRINT"[147]"SPC(13)"[159]F1 ABORTS[146]":OPEN1,TX,0,"$":GET#1,A$,A$
  48. 81 GET#1,A$,A$:IFA$=""THEN87
  49. 82 GET#1,B$,C$
  50. 83 BL=ASC(B$+CHR$(0)):BH=ASC(C$+CHR$(0))
  51. 84 D$=MID$(STR$(BL+256*BH),2)+CHR$(32)
  52. 85 PRINTD$;:GET#1,D$:IFD$<>""THEN85
  53. 86 PRINT:GETE$:IFE$<>"[133]"THEN81
  54. 87 CLOSE1:PRINT"PRESS F7 TO CONTINUE[146]"
  55. 88 GETA$:IFA$="[136]"THEN350
  56. 89 GOTO88
  57. 100 FORX=1TO60:NEXTX:RETURN
  58. 101 GETA$:IFA$=CHR$(32)THENRETURN
  59. 102 GOTO101
  60. 105 PRINT"[164][157][158]";:H$=""
  61. 106 I$="":IFLEN(H$)=79THENRETURN
  62. 107 GETI$:IFI$=""THEN107
  63. 108 IFI$="[147]"ORI$=""ORI$=""ORI$="[145]"ORI$="[157]"ORI$=""ORI$=CHR$(34)THEN106
  64. 109 IFI$="/"ORI$="*"ORI$="_"THEN106
  65. 110 IFI$=CHR$(20)ANDLEN(H$)=0THEN106
  66. 111 PRINT"[158]"I$"[164][157][158]";
  67. 112 IFI$=CHR$(13)THEN115
  68. 113 IFI$=CHR$(20)THENH$=LEFT$(H$,LEN(H$)-1):GOTO106
  69. 114 H$=H$+I$:GOTO106
  70. 115 IFH$=""THENH$="*"
  71. 116 RETURN
  72. 120 OPEN2,TX,2,H$+",S":CLOSE2
  73. 121 OPEN15,8,15:INPUT#15,A,B$:CLOSE15
  74. 122 IFA<>0THEN10
  75. 123 RETURN
  76. 130 IFRIGHT$(H$,3)<>".TM"ANDLEN(H$)<=13THENH$=H$+".TM"
  77. 131 IFLEN(H$)>13ANDRIGHT$(H$,3)<>".TM"THENH$=LEFT$(H$,13)+".TM"
  78. 132 RETURN
  79. 150 A$="":Z$=""
  80. 151 GET#8,Z$:A$=A$+Z$:IFZ$<>CHR$(13)THEN151
  81. 152 A$=LEFT$(A$,(LEN(A$)-1)):IFA$="*"THENA$="":RETURN
  82. 153 RETURN
  83. 170 IFLEFT$(Z$(Y,1),4)="TRUE"THENZY(Y)=2:GOTO178
  84. 171 IFLEFT$(Z$(Y,1),5)="FALSE"THENZY(Y)=2:GOTO178
  85. 172 IFLEFT$(Z$(Y,1),3)="YES"THENZY(Y)=2:GOTO178
  86. 173 IFLEFT$(Z$(Y,1),3)="NO "THENZY(Y)=2:GOTO178
  87. 175 PRINT"[149]POINT VALUE:[146]";:GOSUB105:IFVAL(H$)<3ORVAL(H$)>5THEN175
  88. 177 ZY(Y)=VAL(H$):NEXTY:GOTO10
  89. 178 NEXTY:GOTO10
  90. 200 PRINT"[147]"SPC(7)"[156]EDIT QUESTION & ANSWER[146]":IFZ$(1,0)=""THEN10
  91. 201 PRINT"ENTER QUESTION # TO EDIT:[146] ";:GOSUB105
  92. 202 IFH$="*"ORVAL(H$)<1ORVAL(H$)>225THEN10
  93. 203 Y=VAL(H$):IFZ$(Y,0)=""THEN10
  94. 204 PRINT"[159]Q:":PRINT" "Z$(Y,0):PRINT"A:":PRINT" "Z$(Y,1)
  95. 205 PRINT"[149]POINT VALUE:"ZY(Y)
  96. 209 PRINT"ENTER NEW QUESTION[146]":PRINT"[154]A:":PRINT" ";:GOSUB105
  97. 210 IFH$="*"THENPRINTZ$(Y,0):GOTO212
  98. 211 Z$(Y,0)=H$
  99. 212 PRINT"ENTER NEW ANSWER[146]":PRINT"[153]A:":PRINT" ";:GOSUB105
  100. 213 IFH$="*"THENPRINTZ$(Y,1):GOTO215
  101. 214 Z$(Y,1)=H$
  102. 215 IFLEFT$(Z$(Y,1),4)="TRUE"THENZY(Y)=2:GOTO225
  103. 216 IFLEFT$(Z$(Y,1),3)="YES"THENZY(Y)=2:GOTO225
  104. 217 IFLEFT$(Z$(Y,1),3)="NO "THENZY(Y)=2:GOTO225
  105. 218 IFLEFT$(Z$(Y,1),5)="FALSE"THENZY(Y)=2:GOTO225
  106. 220 PRINT"[149]ENTER NEW POINT VALUE:[146]";:GOSUB105
  107. 221 IFVAL(H$)<2ORVAL(H$)>5THENPRINTZY(Y)
  108. 222 ZY=VAL(H$)
  109. 225 GOSUB500:GOTO10
  110. 250 PRINT"[147]"SPC(9)"[156]KEYWORD SEARCH[146]":PRINT"[154]ENTER KEYWORD:[146]":GOSUB105
  111. 251 IFH$="*"THEN10
  112. 252 IFLEN(H$)<3ORLEN(H$)>79THEN250
  113. 253 T=LEN(H$):L$=""
  114. 255 FORX=1TO225:IFZ$(X,0)=""THEN280
  115. 257 PRINT"[147]SEARCHING QUESTION #[146]"X
  116. 258 PRINT"[154]FOUND MATCHES IN QUESTION #S BELOW:[146]"
  117. 259 PRINT""L$
  118. 260 FORR=1TO(LEN(Z$(X,0))-T):IFLEN(Z$(X,0))<TTHENNEXTR
  119. 267 IFMID$(Z$(X,0),R,T)=H$THEN283
  120. 268 NEXTR
  121. 269 FORR1=1TO(LEN(Z$(X,1))-T):IFLEN(Z$(X,0))<TTHENNEXTR1
  122. 278 IFMID$(Z$(X,1),R1,T)=H$THEN283
  123. 279 NEXTR1:NEXTX
  124. 280 PRINTSPC(11)"PRESS A KEY[146]"
  125. 281 GETA$:IFA$=""THEN281
  126. 282 GOTO10
  127. 283 L$=L$+"-"+STR$(X):NEXTX
  128. 300 PRINT"[147]"SPC(11)"[156]PRINT TO SCREEN[146]":PRINTSPC(8)"PRESS A KEY TO START[146]"
  129. 301 GETA$:IFA$=""THEN301
  130. 302 PRINTSPC(6)"[150]F1 ABORTS      SPACE PAUSES[146]":IFZ$(1,0)=""THEN10
  131. 303 FORX=1TO225:PRINT"[156]QUESTION #"X"[146]":PRINT"[159]Q:":PRINT" "Z$(X,0)
  132. 304 PRINT"A:":PRINT" "Z$(X,1):PRINT"[158]POINT VALUE:"ZY(X)
  133. 305 GETA$:IFA$="[133]"THEN10
  134. 306 IFA$=CHR$(32)THENA$="":GOSUB101
  135. 307 FORR=1TO150:NEXTR:IFX=225THEN310
  136. 308 IFZ$(X+1,0)=""THEN310
  137. 309 NEXTX
  138. 310 FORX=1TO4000:NEXTX:GOTO10
  139. 350 PRINT"[147]"SPC(12)"[156]DISK ACCESS MENU[146]"
  140. 351 PRINT"FILE IN MEMORY: "M$"[146]"
  141. 352 PRINT"[158] F1 [146]   LOAD FILE":PRINT"[158] F2 [146]   SAVE FILE"
  142. 353 PRINT"[158] F3 [146]   SEND DISK COMMAND":PRINT"[158] F4 [146]   DIRECTORY"
  143. 356 PRINT"[158] F7 [146]   MAIN MENU"
  144. 360 GETA$:IFA$=""THEN360
  145. 361 IFA$="[133]"THEN40
  146. 362 IFA$="[137]"THEN47
  147. 363 IFA$="[134]"THEN450
  148. 364 IFA$="[138]"THEN80
  149. 365 IFA$="[136]"THEN10
  150. 400 PRINT"[147][159]OUTPUT TO PRINTER?[146]":X=0
  151. 401 GETA$:IFA$=""THEN401
  152. 402 PRINT" F1 ABORTS                   F7 PAUSES [146]":IFA$="Y"THENX=1:OPEN4,4
  153. 403 OPEN8,TX,8,"0:EDITOR DOCS V1.9,S,R":PRINT""A1$" DOCUMENTATION"
  154. 404 GET#8,B$:IFST<>0THENCLOSE8:CLOSE4:GOTO415
  155. 405 PRINTB$;:IFX=1THENPRINT#4,B$;
  156. 406 GETB$:IFB$="[136]"THEN410
  157. 407 IFB$="[133]"THEN415
  158. 408 GOTO404
  159. 410 GETB$:IFB$="[136]"THEN404
  160. 411 GOTO410
  161. 415 PRINT""SPC(8)"HIT ANY KEY TO CONTINUE[146]":CLOSE8
  162. 416 GETA$:IFA$=""THEN416
  163. 417 GOTO10
  164. 450 PRINT"[147][156]"SPC(9)"SEND DISK COMMAND[146]"
  165. 451 PRINT"[154]ENTER DISK COMMAND:[146]":GOSUB105:IFH$="*"THEN350
  166. 452 OPEN15,TX,15:PRINT#15,H$:CLOSE15:GOTO350
  167. 500 FORA=1TOLEN(Z$(Y,0)):IFMID$(Z$(Y,0),A,1)=CHR$(44)THENZ$(Y,2)="*":GOTO502
  168. 501 NEXTA:Z$(Y,2)="/"
  169. 502 FORA=1TOLEN(Z$(Y,1)):IFMID$(Z$(Y,1),A,1)=CHR$(44)THENZ$(Y,3)="*":RETURN
  170. 503 NEXTA:Z$(Y,3)="/":RETURN
  171. 600 OPEN8,TX,8,"0:"+H$+",S,R"
  172. 601 FORX=1TO225:INPUT#8,ZY(X)
  173. 602 INPUT#8,A$:Z$(X,2)=A$:IFA$="*"THENGOSUB150:Z$(X,0)=A$:GOTO604
  174. 603 INPUT#8,Z$(X,0):IFZ$(X,0)="*"THENZ$(X,0)=""
  175. 604 INPUT#8,A$:Z$(X,3)=A$:IFA$="*"THENGOSUB150:Z$(X,1)=A$:GOTO620
  176. 605 INPUT#8,Z$(X,1):IFZ$(X,1)="*"THENZ$(X,1)=""
  177. 620 POKE53280,INT(15*RND(1)):NEXTX:M$=H$:POKE53280,11:CLOSE8:GOTO350
  178. 650 IFZ$(X,0)=""THENZ$(X,0)="*"
  179. 651 IFZ$(X,1)=""THENZ$(X,1)="*"
  180. 652 IFZ$(X,2)=""THENZ$(X,2)="/"
  181. 653 IFZ$(X,3)=""THENZ$(X,3)="/"
  182. 654 RETURN
  183. 655 IFZ$(X,0)="*"THENZ$(X,0)=""
  184. 656 IFZ$(X,1)="*"THENZ$(X,1)=""
  185. 657 RETURN
  186. 1000 POKE53281,0:POKE53280,11:PRINT"[147]"
  187. 1001 A1$="TRIVIA MASTER EDITOR V1.9":A2$="BY KENNETH FREY"
  188. 1002 A3$="BROUGHT TO YOU BY CHEETAH MEDIAWARE"
  189. 1003 B1$="        ":B2$="            "
  190. 1004 B3$="  "
  191. 1010 PRINTB1$""A1$:GOSUB100:PRINTB1$"[155]"A1$:GOSUB100:PRINTB1$"[152]"A1$:GOSUB100
  192. 1011 PRINTB2$"[149]"A2$:GOSUB100:PRINTB2$""A2$:GOSUB100:PRINTB2$"[129]"A2$:GOSUB100
  193. 1012 PRINTB3$"[158]"A3$:GOSUB100:PRINTB3$"[159]"A3$:GOSUB100:PRINTB3$"[153]"A3$:GOSUB100
  194. 1013 PRINTB3$"[154]"A3$:GOSUB100:PRINTB3$""A3$
  195. 1014 FORX=1TO1000:NEXTX:A2$="":A3$="":B1$="":B2$="":B3$="":RETURN
  196.