home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C64Games / GAMES.ARC / GP.PRG (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  7.7 KB  |  243 lines

  1. 20 POKE56578,PEEK(56578)OR3:POKE56576,(PEEK(56576)AND252)OR2:POKE53272,254
  2. 30 POKE648,124:POKE53281,0:POKE53280,11:PRINT"[150][147]":GOSUB20000:POKE820,4
  3. 32 POKE822,0:POKE825,4:POKE828,2
  4. 35 GOSUB8990:SYS49832
  5. 40 SYS49800:POKE198,0
  6. 42 INPUT"[150][147]SPEED: 1=FAST 10=SLOW";A:IFA<>INT(A)ORA>10ORA<1THEN42
  7. 45 POKE787,A:PRINT"[147]"
  8. 48 S=31744:SC=23552
  9. 50 POKE53265,11:GOTO70
  10. 60 POKE53206+N*2,(S+X+Y*40)AND255:POKE53207+N*2,(S+X+Y*40)/256:RETURN
  11. 70 POKE823,0:POKE826,1:POKE829,3:POKE53281,1:PRINT"[147]":POKE53281,0
  12. 71 Y=1:FORA=0TO7:X=15+A:N=5+A:POKES+X+Y*40,30:GOSUB60:NEXT
  13. 72 Y=5:FORA=0TO7:X=15+A:N=13+A:POKES+X+Y*40,30:GOSUB60:NEXT
  14. 74 FORA=0TO1:FORB=0TO1:X=14+A*9:Y=1+B*4:N=1+B+A*2:GOSUB60:POKES+X+Y*40,31
  15. 75 N=0:Y=0:X=18:POKES+X+Y*40,60:GOSUB60
  16. 76 NEXT:NEXT:PRINT""TAB(15)"[155]GAP  [155]MAN"
  17. 78 PRINT"         [156]1988  [156]BY [156]MARK [156]D [156]REJHON"
  18. 80 PRINT"         [154]PREVIOUS [154]SCORE:[159]"OO
  19. 82 PRINT"                [129]SCORING"
  20. 84 PRINT"  ^ [150]= [158]100[150] PTS. [158]10[150] PTS ADDED EVERYTIME   ";
  21. 86 PRINT"       YOU ADVANCE TO NEXT STAGE.       "
  22. 88 PRINT" _ [150]= [158]2000[150] PTS. [158]500[150] PTS ADDED EVERYTIME  ";
  23. 90 PRINT"       YOU ADVANCE TO NEXT STAGE.       "
  24. 92 PRINT"   <[150] = MYSTERY BONUS, AND EXTRA LIFE.   ";
  25. 94 PRINT"  AT LEAST [158]15[150] OF _[150] IS NEEDED IN ORDER   ";
  26. 95 PRINT"  TO MAKE <[150] APPEAR IN THE NEXT STAGE.":SYS49832
  27. 100 S0=S+45:S1=S0:S2=S0:S3=S0:S4=S0:S5=S0:S6=S0:S7=S0:S8=S0:S9=S0
  28. 110 POKES0,32:S0=S1:S1=S2:S2=S3:S3=S4:S4=S5:S5=S6:S6=S7:S7=S8:S8=S9
  29. 120 S9=S+INT(RND(1)*280):IFPEEK(S9)<>32THEN120
  30. 130 POKES9,27
  31. 140 IF(PEEK(56320)AND16)THEN110
  32. 150 SYS49800:FORA=1TO40:WAIT56320,16:NEXT:PRINT"[147]"
  33. 200 S=31744:SC=23552
  34. 300 PC=10:PZ=PEEK(787):VL=1:OO=0:VS=3:LX=0:DM=0
  35. 350 S=31744:SC=23552
  36. 380 POKE53280,0:GOSUB20050:SYS49280,SN:GOSUB8600:GOSUB7000:GOSUB7600:GOSUB7500
  37. 390 RN=2+INT(RND(1)*2):GOSUB8000:POKE53280,11
  38. 400 X=2:Y=17:POKESC+S+X+Y*40,PC:POKES+X+Y*40,34:H=0
  39. 500 GOSUB6000
  40. 505 IFPEEK(L+40)<65THENGOTO5900
  41. 510 J=NOTPEEK(56320)AND15:JB=PEEK(56320)AND16
  42. 515 L=S+X+Y*40
  43. 520 IFJ=.THENFORA=1TO20+PZ*60:NEXT:GOTO500
  44. 525 IFJB=0THEN2000
  45. 530 IF(JAND4)=.THEN800
  46. 540 IFX=.THEN570
  47. 545 IFPEEK(L-1)=.THEN580
  48. 550 IFPEEK(L-1)<64THENQQ=-1:GT=1:GOTO6400
  49. 555 IFPEEK(L-40)<>.THEN570
  50. 560 IFPEEK(L-41)=.ANDY<>.THENY=Y-1:GOTO600
  51. 570 FORA=10TOPZ*50:NEXT:GOTO500
  52. 580 IFPEEK(L+39)=.ANDPEEK(L+79)<>.THEN750
  53. 600 H=1:X=X-1:M=S+X+Y*40:POKEL,.:POKEM+SC,PC:POKEM+SC+1,PC:POKEM+1,40:POKEM,39
  54. 605 FORA=1TO20+Z2*20:NEXT
  55. 610 POKEM+1,.:POKEM,38:GOTO770
  56. 750 H=1:X=X-1:M=L-1:POKEM+SC,PC:POKEL,40:POKEM,39:FORA=1TO20+Z2*20:NEXT
  57. 760 POKEM+1,.:POKEM,.:Y=Y+1:M=M+40:L=L+40:POKESC+M,PC:POKEM,38:GOTO770
  58. 770 FORA=10TOPZ*10:NEXT:GOTO500
  59. 800 IF(JAND8)=.THEN900
  60. 805 IFX=39THEN840
  61. 810 L=S+X+Y*40
  62. 815 IFPEEK(L+1)=.THEN850
  63. 820 IFPEEK(L+1)<64THENQQ=1:GT=2:GOTO6400
  64. 825 IFPEEK(L-40)<>.THEN840
  65. 830 IFPEEK(L-39)=.ANDY<>.THENY=Y-1:GOTO860
  66. 840 FORA=10TOPZ*50:NEXT:GOTO500
  67. 850 IFPEEK(L+41)=.ANDPEEK(L+81)<>.THEN880
  68. 860 H=0:X=X+1:M=S+X+Y*40:POKEL,.:POKEM+SC,PC:POKEM+SC-1,PC:POKEM-1,35:POKEM,36
  69. 865 FORA=1TO20+Z2*20:NEXT
  70. 870 POKEM-1,.:POKEM,34:GOTO895
  71. 880 H=0:X=X+1:M=L+1:POKEM+SC,PC:POKEL,35:POKEM,36:FORA=1TO20+Z2*20:NEXT
  72. 890 POKEM-1,.:POKEM,.:Y=Y+1:M=M+40:L=L+40:POKESC+M,PC:POKEM,34:GOTO895
  73. 895 FORA=10TOPZ*10:NEXT:GOTO500
  74. 900 GOTO500
  75. 2000 IF(JAND4)THENH=1:I=-1:GOTO2030
  76. 2010 IF(JAND8)THENH=0:I=1:GOTO2030
  77. 2020 FORA=1TOPZ*50:NEXT:GOTO500
  78. 2030 FL=0
  79. 2040 L=S+X+Y*40
  80. 2050 IFY=0ORPEEK(L-40)<>.THENFORA=1TOPZ*60:NEXT:GOSUB6000:GOTO2080
  81. 2060 FL=FL+1:POKEL,.:Y=Y-1:L=L-40:POKEL+SC,PC:POKEL,60+H*2
  82. 2070 FORA=1TOPZ*50:NEXT:GOSUB6000:IFFL<>2THEN2040
  83. 2080 FL=0
  84. 2090 L=S+X+Y*40
  85. 2100 IFPEEK(L+40)<>.THENPOKEL,34+H*4:FORA=1TOPZ*40:NEXT:GOTO500
  86. 2110 IFPEEK(L+I)<>.THENFORA=1TOPZ*40:NEXT:GOSUB6000:GOTO510
  87. 2115 IF(X=39ANDI=1)OR(X=0ANDI=-1)THENFORA=1TOPZ*40:NEXT:GOSUB6000:GOTO510
  88. 2120 FL=FL+1:POKEL,.:X=X+I:L=L+I:POKEL+SC,PC:POKEL,60+H*2
  89. 2130 FORA=1TOPZ*40:NEXT:GOSUB6000:IFFL<>5THEN2090
  90. 2140 GOTO5900
  91. 5000 SYS49800:POKE53265,11:POKE53281,1
  92. 5005 PRINT"[147][150] ]\]\]\]\]\]\]\]\]\]\]\]\]\]\]\]\]\]\]\ ";:POKE53281,0
  93. 5010 PRINT" \]\                                \]\ ";
  94. 5020 PRINT" ]\]        [155]CONGRATULATIONS![150]        ]\] ";
  95. 5030 PRINT" \]\          [155]YOUR MISSION[150]          \]\ ";
  96. 5040 PRINT" ]\]        [155]IS NOW COMPLETE.[150]        ]\] ";
  97. 5050 PRINT" \]\                                \]\ ";
  98. 5060 PRINT" ]\]         [155]SCORE:"OO;TAB(36)"[150]]\] ";
  99. 5070 PRINT" \]\                                \]\ ";
  100. 5080 PRINT" ]\]\]\]\]\]\]\]\]\]\]\]\]\]\]\]\]\]\]\ "
  101. 5090 FORA=0TO19:PRINT"[[158];";:NEXT:FORA=0TO19:PRINT"[158];[";:NEXT
  102. 5100 FORA=0TO19:PRINT"[[158];";:NEXT:GOTO5120
  103. 5110 POKE53206+N*2,(S+X+Y*40)AND255:POKE53207+N*2,(S+X+Y*40)/256:RETURN
  104. 5120 S=31744:POKE823,5:POKE826,5:POKE829,3
  105. 5130 N=0:X=19:Y=15:POKES+X+Y*40,60:GOSUB5110
  106. 5140 Y=19:FORA=0TO2:N=5+A:X=18+A:POKES+X+Y*40,30:GOSUB5110:NEXT
  107. 5150 Y=20:FORA=0TO6:N=8+A:X=16+A:POKES+X+Y*40,30:GOSUB5110:NEXT
  108. 5160 Y=21:N=15:X=15:POKES+X+Y*40,30:GOSUB5110
  109. 5170 Y=21:FORA=0TO3:N=16+A:X=16+A*2:POKES+X+Y*40,30:GOSUB5110:NEXT
  110. 5180 Y=21:N=20:X=23:POKES+X+Y*40,30:GOSUB5110
  111. 5190 Y=20:X=19:N=1:POKES+X+Y*40,31:GOSUB5110
  112. 5200 Y=21:FORA=0TO2:X=17+A*2:N=2+A:POKES+X+Y*40,31:GOSUB5110:NEXT
  113. 5210 PRINT""TAB(18)"[155][205][205][205]":FORA=0TO1:PRINTTAB(19)"[151][199]":NEXT
  114. 5220 PRINT"":FORA=1TO5:PRINT"[149][193][193][129][193][150][193][193][129][193][193][149][193]";:NEXT
  115. 5230 FORA=1TO5:PRINT"[150][193][129][193][193][149][193][193][193][129][193][150][193]";:NEXT
  116. 5240 FORA=1TO4:PRINT"[149][193][193][129][193][150][193][193][129][193][193][149][193]";:NEXT
  117. 5250 PRINT"[149][193][193][129][193][150][193][193][129][193][193]":POKE56295,9:POKE32743,65
  118. 5255 SYS49832
  119. 5260 S1=S+560+130:S2=S1:S3=S1:S4=S1:S5=S1:S6=S1:S7=S1:S8=S1
  120. 5270 POKES1,32:S1=S2:S2=S3:S3=S4:S4=S5:S5=S6:S6=S7:S7=S8
  121. 5280 S8=S+560+INT(RND(1)*360):IFPEEK(S8)<>32THEN5280
  122. 5290 POKES8,27
  123. 5300 IF(PEEK(56320)AND16)THEN5270
  124. 5310 SYS49800:FORA=1TO40:WAIT56320,16:NEXT:PRINT"[147]":GOTO40
  125. 5400 RETURN
  126. 5500 FORA=1TO12:POKEL,34:FORB=1TO50:NEXT:POKEL,38:FORB=1TO50:NEXT
  127. 5502 POKEL,60:FORB=1TO50:NEXT:POKEL,62:FORB=1TO50:NEXT:NEXT
  128. 5505 IFVS<>0THEN5600
  129. 5510 PRINT""TAB(11)"[152]\]\]\]\]\]\]\]\]\]"
  130. 5520 PRINTTAB(11)"]\] GAME  OVER[152] \]\"
  131. 5530 PRINTTAB(11)"\]\]\]\]\]\]\]\]\]"
  132. 5540 PRINT"":WAIT56320,16,16:FORA=1TO40:WAIT56320,16:NEXT
  133. 5550 GOTO40
  134. 5600 VS=VS-1:GOSUB7500:POKEL,0:GOTO400
  135. 5900 FL=0
  136. 5910 L=S+X+Y*40
  137. 5915 IFPEEK(L+40)=.THEN5930
  138. 5920 IFPEEK(L+40)>64THENPOKEL,34+H*4:GOTO510
  139. 5925 GT=3:QQ=40:GOTO6400
  140. 5930 FL=FL+1:POKEL,.:Y=Y+1:L=L+40:POKEL+SC,PC:POKEL,60+H*2
  141. 5935 FORA=1TOPZ*50:NEXT:GOSUB6000:IFFL<>5THEN5910
  142. 5940 L=S+X+Y*40
  143. 5950 IFPEEK(L+40)<>.THEN5500
  144. 5960 POKEL,.:Y=Y+1:L=L+40:POKEL+SC,PC:POKEL,60+H*2:FORA=1TOPZ*10:NEXT:GOTO5940
  145. 6000 IFEL=.THENRETURN
  146. 6005 RO=0:W=S+X+Y*40:IFPEEK(W+40)=80THENY=Y+ED:POKEW,.:W=W+ED*40:RO=1
  147. 6010 POKE832,EL-1:POKE833,0:POKE834,EC:SYS49744,S+EX+EY*40
  148. 6020 EY=EY+ED:IFEY=E1OREY=E2THENED=-ED
  149. 6030 POKE833,80:SYS49744,S+EX+EY*40:IFROTHENPOKESC+W,PC:POKEW,34+H*4
  150. 6035 IFY<>.ANDPEEK(W)=80THENY=Y-1:POKESC+W,EC:POKESC+W-40,PC:POKEW-40,34+H*4
  151. 6040 RETURN
  152. 6300 OO=OO+3000+VL*1000:GOSUB7000:FORA=1TO4000:NEXT:VL=VL+1:IFVL=17THEN5000
  153. 6310 GOTO380
  154. 6400 IFPEEK(L+QQ)<>30THEN6450
  155. 6410 POKEL+QQ,.:BW=BW+1:OO=OO+90+VL*10:GOSUB7000:IFBW=16THEN6300
  156. 6420 ONGTGOTO600,860,5900
  157. 6450 IFPEEK(L+QQ)<>31THEN6500
  158. 6460 DM=DM+1:POKEL+QQ,.:OO=OO+1500+VL*500:GOSUB7000:IFDM=15THENLX=1:DM=0
  159. 6470 ONGTGOTO600,860,5900
  160. 6500 IFPEEK(L+QQ)<>60THENPOKEL+QQ,.:ONGTGOTO600,860,5900:GOTO500
  161. 6510 POKEL+QQ,.:OO=OO+7500+VL*2500:VS=VS+1:GOSUB7000:GOSUB7500
  162. 6515 FORA=1TO1000:NEXT
  163. 6520 ONGTGOTO600,860,5900:GOTO500
  164. 7000 POKE781,24:POKE782,2:POKE783,0:SYS58634:PRINT"SCORE:"OO"":RETURN
  165. 7500 IFVS=0THENFORA=32731TO32740:POKEA,0:NEXT:RETURN
  166. 7505 LP=VS:IFVS>9THENLP=9
  167. 7510 FORA=1TOLP:POKE32741-A,38:NEXT
  168. 7520 FORA=1TO10-LP:POKE32730+A,0:NEXT:RETURN
  169. 7600 POKE781,24:POKE782,19:POKE783,0:SYS58634:PRINT"STAGE ";
  170. 7610 SN$=STR$(VL):PRINTRIGHT$("00"+RIGHT$(SN$,LEN(SN$)-1),2)"":RETURN
  171. 8000 GOSUB8990:SYS49832:FORA=0TO15
  172. 8010 YY=1+INT(RND(1)*18):XX=1+INT(RND(1)*38):TM=0
  173. 8015 IFYY=17ANDXX<6THEN8120
  174. 8020 LL=S+XX+YY*40
  175. 8030 IFPEEK(LL)<>.THEN8120
  176. 8040 IFPEEK(LL-1)<>.THEN8120
  177. 8050 IFPEEK(LL+1)<>.THEN8120
  178. 8060 IFPEEK(LL+40)=.THEN8120
  179. 8070 IFPEEK(LL+39)=.THEN8120
  180. 8080 IFPEEK(LL+41)=.THEN8120
  181. 8090 SYS49800:POKE53216+A*2,LLAND255:POKE53217+A*2,LL/256:POKESC+LL,0:POKELL,30
  182. 8100 SYS49832:GOTO8150
  183. 8120 TM=TM+1:YY=YY+1:IFYY=22ORTM=8THEN8010
  184. 8130 GOTO8015
  185. 8150 NEXT
  186. 8200 FORA=0TORN
  187. 8210 YY=1+INT(RND(1)*18):XX=1+INT(RND(1)*38):TM=0
  188. 8215 IFYY=17ANDXX<6THEN8210
  189. 8220 LL=S+XX+YY*40
  190. 8230 IFPEEK(LL)<>.THEN8320
  191. 8240 IFPEEK(LL-1)<>.THEN8320
  192. 8250 IFPEEK(LL+1)<>.THEN8320
  193. 8260 IFPEEK(LL+40)=.THEN8320
  194. 8270 IFPEEK(LL+39)=.THEN8320
  195. 8280 IFPEEK(LL+41)=.THEN8320
  196. 8290 SYS49800:POKE53208+A*2,LLAND255:POKE53209+A*2,LL/256:POKESC+LL,0:POKELL,31
  197. 8300 SYS49832:GOTO8350
  198. 8320 TM=TM+1:YY=YY+1:IFYY=22ORTM=8THEN8210
  199. 8330 GOTO8215
  200. 8350 NEXT:IFLX=0THENRETURN
  201. 8400 LX=0
  202. 8410 YY=1+INT(RND(1)*18):XX=1+INT(RND(1)*38):TM=0
  203. 8415 IFYY=17ANDXX<6THEN8410
  204. 8420 LL=S+XX+YY*40
  205. 8430 IFPEEK(LL)<>.THEN8520
  206. 8440 IFPEEK(LL-1)<>.THEN8520
  207. 8450 IFPEEK(LL+1)<>.THEN8520
  208. 8460 IFPEEK(LL+40)=.THEN8520
  209. 8470 IFPEEK(LL+39)=.THEN8520
  210. 8480 IFPEEK(LL+41)=.THEN8520
  211. 8490 SYS49800:POKE53206,LLAND255:POKE53207,LL/256:POKESC+LL,0:POKELL,60
  212. 8500 SYS49832:GOTO8550
  213. 8520 TM=TM+1:YY=YY+1:IFYY=22ORTM=8THEN8410
  214. 8530 GOTO8415
  215. 8550 RETURN
  216. 8600 FORA=0TOEL-2STEP2:POKES+A+EX+E2*40+1,32:NEXT:RETURN
  217. 8990 POKE31743,0:FORA=53206TO53246STEP2:POKEA,255:POKEA+1,123:NEXT:RETURN
  218. 9000 END
  219. 20000 FORA=0TO15:FORB=0TO7:READBB:POKE52480+B+A*16,BB:NEXT:NEXT
  220. 20010 RETURN
  221. 20050 ZY=52480+(VL-1)*16:SN=PEEK(ZY):EL=PEEK(ZY+1):EX=PEEK(ZY+2):EC=PEEK(ZY+3)
  222. 20060 E1=PEEK(ZY+4):E2=PEEK(ZY+5):F1=PEEK(ZY+6):F2=PEEK(ZY+7)
  223. 20070 POKE823,F1:POKE826,F2:POKE829,3:ED=1:EY=E1:Z2=PZ:IFELTHENZ2=PZ*2
  224. 20075 BW=0
  225. 20090 RETURN
  226. 40000 REM  SN EL EX EC E1 E2 F1 F2
  227. 50000 DATA 00,00,00,00,00,00,00,02
  228. 50010 DATA 01,00,00,00,00,00,02,01
  229. 50020 DATA 02,00,00,00,00,00,04,00
  230. 50030 DATA 03,00,00,00,00,00,01,04
  231. 50040 DATA 04,04,15,13,03,21,02,00
  232. 50050 DATA 05,03,30,04,02,13,04,01
  233. 50060 DATA 06,02,21,14,02,21,00,02
  234. 50070 DATA 07,02,23,01,01,20,01,04
  235. 50080 DATA 08,02,18,14,02,21,00,01
  236. 50090 DATA 09,02,13,07,01,21,02,00
  237. 50100 DATA 10,02,30,03,02,21,01,02
  238. 50110 DATA 11,02,24,05,01,21,05,00
  239. 50120 DATA 12,02,10,08,04,21,02,05
  240. 50130 DATA 13,02,24,04,01,21,04,02
  241. 50140 DATA 14,02,18,07,01,21,01,00
  242. 50150 DATA 15,02,16,14,04,19,05,02
  243.