home *** CD-ROM | disk | FTP | other *** search
/ UpTime Volume 1 #8 / utv1n8s1.d64 / thirteen (.txt) < prev    next >
Commodore BASIC  |  2022-08-28  |  5KB  |  126 lines

  1. 10 dimd$(24),ap(8),le(26),bc(126):z=rnd(-ti):printchr$(8):gosub500
  2. 20 fb=(peek(56320)and16):iffb=0andpeek(op-80)=191then110
  3. 30 iffb=0andpeek(op+80)>128andpeek(op+80)<155then140
  4. 40 js=peek(56320)and15:ifjs=14thendi=-80:goto90
  5. 50 ifjs=7thendi=2:goto90
  6. 60 ifjs=13thendi=80:goto90
  7. 70 ifjs=11thendi=-2:goto90
  8. 75 get a$:if a$="[140]" then 1200
  9. 80 goto180
  10. 90 np=op+di:sp=peek(np):ifsp<>160then180
  11. 100 pokenp+c,sc:pokeop,160:pokenp,170:op=np:goto180
  12. 110 ifsc<>1then180
  13. 120 pokeop-80,v1:gosub160:nl=nl+1:ifnl=13then340
  14. 130 sc=7:pokeop+c,sc:goto40
  15. 140 ifsc<>7then180
  16. 150 v1=peek(op+80):v2=op+80:sc=1:pokeop+c,sc:pokeop+80,32:gosub160:goto40
  17. 160 poke54277,9:poke54278,5:poke54272,214:poke54273,94:poke54276,33:forde=1to50
  18. 170 next:poke54276,32:forde=1to30:next:return
  19. 180 r3=int(rnd(1)*8)+1:pokeap(r3),160:ap(r3)=ap(r3)-2
  20. 190 ifpeek(ap(r3))=32thenap(r3)=ap(r3)+26
  21. 200 na=peek(ap(r3)):pokeap(r3)+c,7:pokeap(r3),159:ifna=160then260
  22. 210 poke54277,3:poke54278,23:poke54272,5:poke54273,250:poke54276,129
  23. 220 poke54276,128:ifsc=7then240
  24. 230 pokev2,v1
  25. 240 op=int(rnd(1)*585)+1231:ifpeek(op)<>160then240
  26. 250 sc=7:pokeop+c,sc:pokeop,170
  27. 260 tl=tl+1:iftl<tmthen20
  28. 270 bp=bp+1:pokebc(bp)+c,3:pokebc(bp),171:ifbp=126then290
  29. 280 tl=0:goto20
  30. 290 forde=1to500:next:poke54272,0:poke54277,10:poke54278,250
  31. 300 forx=250to120step-5:poke54273,x:poke54276,17:forde=1to50:next:poke54276,16
  32. 310 forde=1to20:next:next:poke54273,80:poke54272,40:poke54276,129:forde=1to150
  33. 320 next:poke54276,128:poke53281,0:forde=1to150:next:poke53281,2:forde=1to150
  34. 330 next:poke53281,14:forde=1to150:next:poke53281,15
  35. 340 forde=1to1000:next:forx=1tobp:pokebc(x),32:next:printd$(4):poke54272,9
  36. 350 poke54277,8:poke54278,5:forx=220to60step-20:poke54273,x:poke54276,33
  37. 360 forde=1to100:next:poke54276,32:printtab(7);:fory=1to26:print" ";:next
  38. 370 print:print:next:poke54272,10:poke54277,10:poke54278,10:s=0:poke646,2
  39. 380 printd$(12)tab(15)"score:"s:op=1231:pokeop+c,6:pokeop,30:forx=1to26
  40. 390 ifle(x)=0then450
  41. 400 ifx+128<>peek(op-80)thenpoke54273,10:gosub420:goto430
  42. 410 poke54273,50:gosub420:s=s+1:printd$(12)tab(21)s:goto430
  43. 420 poke54276,33:forde=1to15:next:poke54276,32:forde=1to250:next:return
  44. 430 forde=1to200:next:pokeop,32:op=op+2:ifop=1257then460
  45. 440 pokeop+c,6:pokeop,30
  46. 450 next
  47. 460 ifs=13thenprint:printtab(12)"perfect score!!"
  48. 470 poke646,6:printd$(20)tab(4)"press fire button to play again"
  49. 475 printtab(10)"press f8 for uptime"
  50. 480 if(peek(56320)and16)=0thenrun
  51. 485 get a$:if a$="[140]" then 1200
  52. 490 goto480
  53. 500 d$(0)="":forx=1to24:d$(x)=d$(x-1)+"":next:c=54272:ap(1)=1255
  54. 510 forx=2to8:ap(x)=ap(x-1)+80:next:bc(1)=1024:forx=2to40:bc(x)=bc(x-1)+1:next
  55. 520 forx=41to64:bc(x)=bc(x-1)+40:next:forx=65to103:bc(x)=bc(x-1)-1:next
  56. 530 forx=104to126:bc(x)=bc(x-1)-40:next:forx=54272to54295:pokex,0:next
  57. 540 poke54296,15:poke54277,20:poke54278,10:poke53265,peek(53265)or64
  58. 550 printchr$(142):poke53280,0:poke53281,0:poke53282,2:poke53283,15:poke646,7
  59. 560 print"[147]"d$(3)spc(19)"  ":printspc(18)"[160][160][160][160]":printspc(17)"      "
  60. 570 printspc(16)"[160][160][160][160][160][160][160][160]":printspc(15)" "spc(8)" "
  61. 580 printspc(14)"[160] thirteen [160]":printspc(15)" "spc(8)" "
  62. 590 printspc(16)"[160][160][160][160][160][160][160][160]":printspc(17)"      ":printspc(18)"[160][160][160][160]"
  63. 600 printspc(19)"  "
  64. 601 printtab(9)"[159](c) 1987 penny degroff"
  65. 602 print" published by softdisk publishing, inc."
  66. 603 printtab(8)"[158]press return to continue"
  67. 605 forx=1to30
  68. 610 readh,l:ifh=0thenrestore:goto610
  69. 620 poke54272,h:poke54273,l:poke54276,17:poke53282,15:poke53283,2:forde=1to50
  70. 630 next:poke54276,16:poke53282,2:poke53283,15:forde=1to50:next
  71. 632 get a$:if a$=chr$(13) then 645
  72. 635 next
  73. 640 goto 605
  74. 645 gosub 800
  75. 650 print"[147]"chr$(142):poke53280,15:poke53281,15:poke53283,0
  76. 660 printd$(4):forx=1to8:printtab(7)"";:fory=1to12:print" ";:next:print
  77. 670 print:next:forx=1to8:pokeap(x)+c,7:pokeap(x),159:next
  78. 680 printd$(3)tab(7)"";:forx=1to13:print"?";:next:forx=1to26:le(x)=0:next
  79. 690 printd$(21)tab(7)"";:forx=1to13
  80. 700 r2=int(rnd(1)*26)+1:ifle(r2)=1then700
  81. 710 le(r2)=1:printchr$(r2+64)"";:next:nl=0:op=1231:sc=7:pokeop+c,sc
  82. 720 pokeop,170:return
  83. 730 data10,240,10,140,10,240,12,200,10,140,8,140,12,250,10,100
  84. 740 data10,120,15,90,10,2,10,200,10,2,10,200,10,2,0,0
  85. 800 poke 53265,peek(53265) and 191:print"[147]"tab(16)"[158][212][200][201][210][212][197][197][206]"
  86. 810 print"[159]   [212]he game begins with several squares"
  87. 820 print"in the center of the screen.  [194]eneath"
  88. 830 print"them is a row of thirteen letters in a"
  89. 840 print"random order.  [193]bove is a row of thir-"
  90. 850 print"teen question marks.  [217]our job is to"
  91. 860 print"move the star to select a letter and put";
  92. 870 print"it in the top row in alphabetical order.";
  93. 880 print"[212]o make things harder, there are arrows
  94. 890 [153]"(sys_open) moving left across the screen. if"
  95. 900 [153]"they hit you, you will drop the letter"
  96. 910 [153]"you are carrying and you will reappear"
  97. 920 [153]"in a different part of the screen."
  98. 930 [153]"(NULL)he game is timed by plus marks.  (NULL)hen
  99. 940 print"they circle the screen, time is out."
  100. 950 print"[217]ou can set the speed from 0 to 99
  101. 960 [153]"(0 being the fastest) but a value of"
  102. 970 [153]"3 to 9 seems to be the most competitive."
  103. 975 [153][163]6)"oncont(NULL)ress asc8 to exit to (NULL)p(NULL)ime."
  104. 980 [153]"openvalnter speed: ";:[141] 1000
  105. 990 tm[178][197](t$):[139] t$[178]"" [167] tm[178]5
  106. 995 [151]53265,[194](53265)[176]64:[142]
  107. 1000 t$[178]"":[151] 204,0
  108. 1010 [161] a$
  109. 1015 [139] a$[178]"restore" [167] 1200
  110. 1020 [139] a$[178][199](13) [167] 1100
  111. 1021 [139] a$[178][199](20) [175] t$[178]"" [167] 1010
  112. 1022 [139] a$[178][199](20) [167] t$[178][200](t$,[195](t$)[171]1):[153]a$;:[137] 1010
  113. 1025 [139] [195](t$)[177]1 [167] 1010
  114. 1030 [139] a$[179]"0" [176] a$[177]"9" [167] 1010
  115. 1040 [153]a$;:t$[178]t$[170]a$
  116. 1050 [137] 1010
  117. 1100 [151] 204,1:[153]" "
  118. 1110 [142]
  119. 1200 [151]204,1:[153]"load"[199](142)[163]11)"return to uptime!"
  120. 1210 [153][163]10)"are you sure? (y/n)"
  121. 1220 [151] 198,0
  122. 1230 [161] a$:[139] a$[178]"" [167] 1230
  123. 1240 [139] a$[178]"n" [167] [138]
  124. 1250 [139] a$[179][177]"y" [175] a$[179][177]"restore" [167] 1230
  125. 1260 [158] 8[172]4096[170]4
  126.