home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 59 / 059.d81 / cliffhanger (.txt) < prev    next >
Commodore BASIC  |  2022-08-26  |  8KB  |  236 lines

  1. 100 print"[147]"
  2. 110 gosub 2280:print"[147]";
  3. 120 poke 53281,.:poke 52,48:poke 56,48:dim m(38,2):dim w$(17)
  4. 130 for z=54272 to 54296:poke z,.:next:for z=12544 to 12551:poke z,.:next
  5. 140 poke 53272,(peek(53272)and240)+12
  6. 150 for z=12288to12423:read d:poke z,d:next
  7. 160 for z=49152 to 49364:read d:poke z,d:next:poke 54296,15
  8. 170 data 28,28,16,30,16,28,36,102,56,56,8,120
  9. 180 data 8,56,36,102,28,28,73,62,8,20,20
  10. 190 data 54,8,0,8,0,8,0,8,0,0,126
  11. 200 data 66,66,66,66,66,126,28,42,73,8,8,8,8,8,8,8,8
  12. 210 data 8,8,73,42,28,0,32,64,128,255,128,64,32,0
  13. 220 data 52,126,47,182,247,90,62,15,3
  14. 230 data 51,19,219,219,255,79,0,0,0,0,0
  15. 240 data 32,8,0,96,92,95,88,64,64,224,224,255
  16. 250 data 255,255,255,255,255,255,255
  17. 260 data 102,102,102,102,102,126,60,0,60,110,112
  18. 270 data 60,14,118,60,0,60,60,102,126,126
  19. 280 data 102,102,0,124,126,102,124,124,110
  20. 290 for z=0 to 37:read m(z,0):next:for z=0 to 27:read m(z,1):next:u=53281
  21. 300 for z=0 to 17:read d:w$(z)=chr$(d):next
  22. 310 j$="[153]":ag=1:b=256:a6=833:a7=834
  23. 320 sl=1938:s1=1064:cr=54272:s2=1943:jx=56320
  24. 330 v1=15:v2=16:v3=40:v4=32:v5=11
  25. 340 v6=12:v7=1:v8=2:v9=3:va=5:vb=6:vc=7:vd=10
  26. 350 cf=21:a1=828:a2=829:a3=830:e=38
  27. 360 a4=831:a5=832:aa=49329:xx=54283
  28. 370 lk=1504:a(0)=2:a(1)=2:a(2)=2:a(4)=1:a(5)=1
  29. 380 a(8)=0:a(9)=0:d(0)=0:d(1)=-40:d(2)=40
  30. 390 d(4)=-1:d(5)=-41:d(8)=1:d(9)=-39
  31. 400 ad=54291:sr=54292:hs=54287:ls=54286
  32. 410 wf=54290:nz=129:pg=33:ve=135:we=1262
  33. 420 rem*******modify these variables:
  34. 430 mt=200:hh=6:w1=4:w2=1:me=4
  35. 440 rem******************************
  36. 450 mx=9:n1=pg:n2=ve:gosub1980:yu=hh
  37. 460 poke a7,int(mt/b):poke a6,mt-int(mt/b)*b
  38. 470 print"[147][151]";:poke xx,.:poke u-v7,v8:poke u,v8
  39. 480 for z=1984 to 2023:poke z+cr,v8:poke z,v6:next
  40. 490 poke u,14:for z=0 to hh:poke we+v7+z*v3,4:poke we+v7+z*v3+cr,v7:next
  41. 500 if df then gosub2070:goto520
  42. 510 for z=hh to hh-lv step-1:poke we+v7+z*v3+cr,vb:next
  43. 520 for z=0 to hh:poke we+z*v3,4:poke we+z*v3+cr,v7:next
  44. 530 for z=hh to yu step-1:poke we+z*v3+cr,v8:next
  45. 540 poke a1,.:poke a2,.:poke a3,w1:poke a5,w2:z1=int(rnd(v7)*va)+vd
  46. 550 if lv=hh then for z=1 to 10:print:next:ag=11:gosub1790:goto570
  47. 560 print w$(lv);:r$=j$:j$=w$(lv)
  48. 570 uu=int(rnd(1)*5)+v7+z1:poke a4,uu
  49. 580 for z2=v7 to uu:print"l";:next
  50. 590 print:for z2=1 to z1:print"l";:next:print
  51. 600 for z1=ag to cf:if lv<>hh then630
  52. 610 r$="":print"[151]";:if z1<21 then print"[152]";
  53. 620 if z1<v2 then print"[155]";
  54. 630 if z1=int(cf/v9) then print r$;
  55. 640 for z2=v7 to int(rnd(v7)*(z1-8))+20:print"l";:next z2:print:next z1
  56. 650 for z=v7 to 35:print"l";:next
  57. 660 if lv=.then print"lllll[145][157][157][157][157][154]l[145][157]l[157]kkk";
  58. 670 if df=. then poke sl,v7:poke sl+cr,.
  59. 680 for z=1024 to 1944 step v3:poke z+cr,v8:poke z+v7+cr,v8:pokez+v7,v6
  60. 690 poke z,v6:next:print"l[157][159]@[157] [157] [157] "
  61. 700 if me>.then gosub2080
  62. 710 print"[159][157][157][145]mm[157][157]nn[157][157]no[157][157]p ";:on df goto1520,1930
  63. 720 jv=peek(jx):fr=jv and v2:jv=v1-(jv and v1)
  64. 730 sys aa:ifpeek(a2)=.then 760
  65. 740 if peek(a2)<>v8 then2060
  66. 750 gosub1860
  67. 760 if peek(sl+v3)=v4 then1520
  68. 770 if peek(sl+d(jv))<>v4 then840
  69. 780 if sl>s2 then1500
  70. 790 if jv then poke sl,v4:sl=sl+d(jv):poke sl,a(jv):poke sl+cr,.
  71. 800 if fr then720
  72. 810 if ts then1800
  73. 820 if peek(sl-v3)=v4 and peek(sl+v3)<>v4 then880
  74. 830 goto720
  75. 840 tp=sl+d(jv):if peek(tp)=v6 then jv=.:goto780
  76. 850 if peek(tp)=v9 or peek(tp)=vd then1630
  77. 860 if peek(tp-v7)=vc then n1=pg:n2=ve:gosub1980:poke tp-v7,v4:goto780
  78. 870 jv=.:goto780
  79. 880 if sl<s1+v3 then poke sl-v3,v9:poke sl-v3+cr,v7:goto1630
  80. 890 if peek(sl-v8*v3)<>v4 then720
  81. 900 hl=sl-v3*v8
  82. 910 poke sl+cr-v3,v7:poke sl,v8:poke hl+cr,v7:ry=.
  83. 920 gosub1600:ry=ry+v7:if peek(a2)=.then950
  84. 930 if peek(a2)<>v8 then2060
  85. 940 gosub1860
  86. 950 if ry>mx then1010
  87. 960 if peek(hl)<>v4 then1010
  88. 970 poke hl,va:poke hl+v3,v9:poke hl+cr,v7
  89. 980 if hl<s1 then poke hl,v9:goto1630
  90. 990 if fr=.and peek(hl-v7)=v4 then1070
  91. 1000 hl=hl-v3:goto920
  92. 1010 hl=hl+v3
  93. 1020 hl=hl+v3:gosub1600:if peek(a2)=.then1050
  94. 1030 if peek(a2)<>v8 then2060
  95. 1040 gosub1860
  96. 1050 ry=ry-v7:if ry=. then n1=pg:n2=ve:gosub1980:poke hl-v3,v4:goto720
  97. 1060 poke hl,vb:poke hl-v3,v4:goto1020
  98. 1070 hl=hl-v7
  99. 1080 gosub1600:if peek(a2)=.then1110
  100. 1090 if peek(a2)<>v8 then2060
  101. 1100 gosub1860
  102. 1110 if peek(hl)=v6 then poke sl,v7:n1=nz:n2=v8:gosub1980:goto1630
  103. 1120 poke hl,vc:poke hl+cr,v7:poke hl+v7,vd
  104. 1130 if peek(hl-v3)<>v6 then poke hl-v3,v4:poke hl-v3+v7,v4
  105. 1140 hl=hl+v3:goto1080
  106. 1150 for z=1 to 120:next:poke wf,.:poke ls-v9,.:poke ad,v1:poke ls-v8,v1
  107. 1160 poke ad+v7,240:poke ls-v7,240:poke ad-v7,17:poke ls-v9,17:z1=.
  108. 1170 poke hs,m(z1,lf):poke ls,m(z1,lf):poke wf-vd,m(z1,lf)/v8
  109. 1180 poke wf-v5,m(z1,lf)/v8:z1=z1+v7
  110. 1190 if m(z1,lf)<. then poke wf,.:poke ls-v9,.:return
  111. 1200 goto1170
  112. 1210 data 102,0,160,0,140,11,212,173,60
  113. 1220 data 3,48,52,208,3,76,155,192,177,251,201,3
  114. 1230 data 176,5,200,140,61,3,96,169,32,145,251
  115. 1240 data 160,40,177,251,201,3,144,20,201
  116. 1250 data 12,240,46,24,165,251,105,40,133
  117. 1260 data 251,165,252,105,0,133,252,76,63,192
  118. 1270 data 200,140,61,3,96,160,0,169,8,145,251
  119. 1280 data 165,252,24,105,212,133,252,169,9
  120. 1290 data 145,251,56,165,252,233,212,133,252
  121. 1300 data 96,160,0,169,129,141,11,212,169,0
  122. 1310 data 141,12,212,169,241,141,13,212,169
  123. 1320 data 1,141,8,212,141,7,212,169,32,145
  124. 1330 data 251,160,1,177,251,201,3,144,190
  125. 1340 data 24,165,251,105,1,133,251,165,252,105
  126. 1350 data 0,133,252,165,252,201,7,144,175,165
  127. 1360 data 251,201,148,144,169,136,140,60,3
  128. 1370 data 96,173,4,220,205,62,3,176,155,200
  129. 1380 data 140,60,3,169,4,133,252,173,63,3,133
  130. 1390 data 251,96,206,65,3,173,65,3,201,0,208
  131. 1400 data 16,206,66,3,173,66,3,201,255,208,6
  132. 1410 data 169,2,141,61,3,96,174,64,3,32,0,192
  133. 1420 data 202,208,250,96,100,50,200,100,50
  134. 1430 data 200,150,100,250,150,100,100,50,200
  135. 1440 data 100,50,200,100,100,100,100,105,105
  136. 1450 data 120,140,160,0,0,0,0,100,50,200,0,100
  137. 1460 data 50,200,-1,190,180,170,160,190
  138. 1470 data 180,170,160,190,180,170,160,150
  139. 1480 data 140,130,120,60,60,60,40,40,40,0,0,20
  140. 1490 data 20,20,-1
  141. 1500 sl=sl-v3*23:lv=.:ag=v7:j$="[153]"
  142. 1510 df=v7:goto470
  143. 1520 f=.
  144. 1530 if peek(sl+v3)=v6 or peek(sl+v3)=v5 then1570
  145. 1540 f=f+v7:sl=sl+v3:poke sl,v8:poke sl+cr,.
  146. 1550 if peek(sl-v3)<>v6thenpokesl-v3,v4
  147. 1560 goto1530
  148. 1570 if f<va then720
  149. 1580 if sl>s2 then1500
  150. 1590 poke sl,vd-v7:n1=nz:n2=v8:goto2000
  151. 1600 jv=peek(jx):fr=jv and v2:jv=v1-(jv and v1):if jv then poke sl,a(jv)
  152. 1610 sys aa:return
  153. 1620 sl=1938:lv=lv+v7:goto470
  154. 1630 jv=peek(jx):jv=v1-(jv and v1):poke sl,a(jv):poke sl+cr,.
  155. 1640 sys aa:if peek(a2)=.then 1670
  156. 1650 if peek(a2)<>v8 then2060
  157. 1660 gosub1860
  158. 1670 if jv=v7 and peek(sl+d(jv))=v9 or peek(sl+d(jv))=vd then sl=sl-v3
  159. 1680 if sl<s1 then1620
  160. 1690 if peek(sl-v7)=vc then1730
  161. 1700 if jv and peek(sl+v3)<v6 then poke sl+v3,v4
  162. 1710 if lv=hh and sl<lk then ts=v7
  163. 1720 goto1630
  164. 1730 poke sl,v4:if peek(sl+v3)<>v6 then poke sl+v3,v4
  165. 1740 sl=sl-v3-v7:n1=pg:n2=ve:gosub1980:goto1520
  166. 1750 gosub1150
  167. 1760 poke sl+cr,m:m=m+v7:if m>vc then m=.
  168. 1770 if peek(jx) and v2 then1760
  169. 1780 goto 2090
  170. 1790 poke a1,b-v7:print"";:return
  171. 1800 if peek(sl+v7+v3)=v4 then720
  172. 1810 if sl>1424 then ts=.:goto720
  173. 1820 poke sl+v7,v5:poke sl+v7+cr,vb:poke sl,v8:print"m n o";
  174. 1830 sl=sl+v7:goto1750
  175. 1840 data 159,155,152,158,158,159,150,156,159
  176. 1850 data 155,155,153,30,159,159,31,150,129
  177. 1860 if lv=hh then return
  178. 1870 poke a7,int(mt/b):poke a6,mt-int(mt/b)*b:yu=yu-v7:poke we+yu*v3+cr,v8
  179. 1880 n1=pg:n2=v6:gosub1980:if yu<v7 then 1900
  180. 1890 poke a2,.:return
  181. 1900 poke xx,.:for z1=1 to 20
  182. 1910 for z=hh to yu step-1:poke we+z*v3+cr,z1:next z,z1
  183. 1920 df=v8:tl=lv:lv=hh:goto470
  184. 1930 print"bk"
  185. 1940 forz=1to25:poke1390,int(rnd(v7)*v8)
  186. 1950 n1=pg:n2=ve:gosub1980:next:poke1390,v8
  187. 1960 rem possible problem area -----mdr
  188. 1970 print"m n n p";:lf=v7:sl=1391:goto1750
  189. 1980 poke wf,.:poke wf,n1:poke ad,ve:poke sr,.
  190. 1990 poke hs,n2:poke ls,n2:return
  191. 2000 me=me-v7:poke we-e+cr,7
  192. 2010 poke xx,.:gosub1980:j$=r$:for z=1 to 250:next
  193. 2020 n1=nz:for z=200 to 20 step-20:n2=z:gosub1980:poke we-e+cr,z/4:next
  194. 2030 poke we-e+cr,14
  195. 2040 if me=.then lf=v7:goto1750
  196. 2050 for z=1 to 2800:next:sl=1938:df=.:goto470
  197. 2060 poke sl,8:poke sl+cr,9:n1=nz:n2=v8:goto2000
  198. 2070 for z=hh to hh-tl step-1:poke we+v7+z*v3+c