home *** CD-ROM | disk | FTP | other *** search
/ Loadstar 48 / 048side1.d81 / shapesquare (.txt) < prev    next >
Encoding:
Commodore BASIC  |  1988-01-01  |  8.4 KB  |  327 lines

  1. 1 rem--- shapesquare by david ben-zur---
  2. 3 ifa=0thena=1:load"shapesquare.font",8,1
  3. 4 ifa=1thena=2:load"ss",8,1
  4. 10 poke53272,19 :v=53248
  5. 20 dim p$(16),a(16),b(16),c(16),d(16)
  6. 30 dn$=""
  7. 40 sq$="[221]                        [221]"
  8. 100 print"[147]** shapesquare **":poke53281,0 :poke53280,14
  9. 102 m=54272
  10. 103 for r=m to m+24:poke r,0:next
  11. 105 a(1)=1187:a(2)=1192:a(3)=1197:a(4)=1202
  12. 106 a(5)=1387:a(6)=1392:a(7)=1397:a(8)=1402
  13. 107 a(9)=1587:a(10)=1592:a(11)=1597:a(12)=1602
  14. 108 a(13)=1787:a(14)=1792:a(15)=1797:a(16)=1802
  15. 110 m1$= "[159] [176][192][192][192][192][178][192][192][192][192][178][192][192][192][192][178][192][192][192][192][174]"
  16. 120 m2$=" [221]    [221]    [221]    [221]    [221]"
  17. 130 m3$=" [171][192][192][192][192][219][192][192][192][192][219][192][192][192][192][219][192][192][192][192][179]"
  18. 140 m4$=" [173][192][192][192][192][177][192][192][192][192][177][192][192][192][192][177][192][192][192][192][189]"
  19. 150 printm1$
  20. 160 for ii =1 to 3:gosub 200:print m3$:next:gosub 200:printm4$
  21. 180 goto 300
  22. 200 for i=1 to 4:printm2$:next :return
  23. 300 print"
  24. 500 [143] --- figures ----
  25. 501 [143]     -------
  26. 510 f$(1)[178]"cdescmdcmdcmdcmd#$%&cmdcmdcmdcmdlenstr$valasccmdcmdcmdcmdtab(tofnspc("
  27. 520 f$(2)[178]"ghijcmdcmdcmdcmd'()*cmdcmdcmdcmdchr$left$right$mid$cmdcmdcmdcmdthennotstep+"
  28. 530 f$(3)[178]"klmncmdcmdcmdcmd+,-.cmdcmdcmdcmd(NULL)(NULL)(NULL)(NULL)cmdcmdcmdcmd-*/^"
  29. 540 f$(4)[178]"opqrcmdcmdcmdcmd/(NULL)(NULL)(NULL)cmdcmdcmdcmd(NULL)(NULL)(NULL)(NULL)cmdcmdcmdcmdandor>="
  30. 542 f$(5)[178]"    cmdcmdcmdcmd    cmdcmdcmdcmd    cmdcmdcmdcmd    "
  31. 543 no$[178]"ortan^cmdcmdcmd(NULL)(NULL)cmdcmdcmd/tanexp"
  32. 545 [143] --------- places ----
  33. 546 [143]           ------
  34. 550 p$(1)[178]""
  35. 560 p$(2)[178]""
  36. 570 p$(3)[178]""
  37. 580 p$(4)[178]""
  38. 590 p$(5)[178]""
  39. 600 p$(6)[178]""
  40. 610 p$(7)[178]""
  41. 620 p$(8)[178]""
  42. 630 p$(9)[178]""
  43. 640 p$(10)[178]""
  44. 650 p$(11)[178]""
  45. 660 p$(12)[178]""
  46. 670 p$(13)[178]""
  47. 680 p$(14)[178]""
  48. 690 p$(15)[178]""
  49. 700 p$(16)[178]""
  50. 800 [143] --- print on screen ----
  51. 801 [143]     ---------------
  52. 805 [153],,,""f$(2)"ononwait"no$"cmdcmdon2"
  53. 810 [153],,"ononon"f$(1)"ononwait"no$"cmdcmdon1"
  54. 820 [153],,,""f$(4)"ononwait"no$"cmdcmdon4"
  55. 830 [153],,"ononon"f$(3)"ononwait"no$"cmdcmdon3"
  56. 900 [153],,"deff1wait-red  f3wait-green"
  57. 910 [153],,"contf5wait-blue sysf7wait-yellow"
  58. 920 [153],,"move with"
  59. 930 [153],,"crsr keys"
  60. 950 [153],,"printpress list abtuav "
  61. 960 [153],,"printto check screen."
  62. 2000 [143] --- sprite location ---
  63. 2001 [143]     ---------------
  64. 2010 [151]646,10
  65. 2020 xp[178]32:yp[178]68
  66. 2030 [151] v,xp:[151] v[170]1,yp
  67. 2040 [151] 2040,11
  68. 2050 [129] i[178]0 [164] 62:[135] a
  69. 2060 [151] 704[170]i,a : [130] i
  70. 2070 [151] v[170]21,1:[151]v[170]39,10:[143] color
  71. 2080 [151]v[170]1,yp:[143] y pos
  72. 2090 [151]v[170]16,0:[151] v,xp  :[143] x pos
  73. 2095 [151]v[170]29,1:[151] v[170]23,1:[143] expand
  74. 2100 [151]v[170]21,1:[151] v,xp:[151] v[170]1,yp
  75. 2110 [143] --- main loop -----
  76. 2111 [143]     ---------
  77. 2112 [161] k$
  78. 2114 ch[178][181](xp[172]yp[173]100):[141]5000
  79. 2115 jv[178][194](56320):fr[178]jv[175]16:jv[178]15[171](jv[175]15)
  80. 2120 [139]jv[178]8 [176] k$[178]""[176] k$[178]"l"[167] xp[178]xp[170]40:[141] 7000
  81. 2125 [139] xp[177]152 [167] xp[178]152
  82. 2140 [139]jv[178]4[176]k$[178]"cmd"[176] k$[178]"j"[167] xp[178]xp[171]40:[141] 7000
  83. 2150 [139] xp[179]32 [167] xp[178]32
  84. 2155 [139] k$[178]"q"[167] [141] 22000
  85. 2157 [139] k$[178]" "[167][158]886:[141]40000:[141]30000:[158]907
  86. 2160 [139]jv[178]2 [176]  k$[178]""[176] k$[178]"m"[167] yp[178]yp[170]40:[141] 7000
  87. 2170 [139] yp[177]188 [167] yp[178]188
  88. 2180 [139]jv[178]1 [176] k$[178]"on"[176] k$[178]"i"[167] yp[178]yp[171]40:
  89. 2190 [139] yp[179]68 [167] yp[178]68
  90. 2200 [139] k$[178]"e" [167] c6[178][194](646): [141]5000:[153] p$(b)"open"f$(5):[151]646,c6
  91. 2205 [139] k$[178]"x" [167] [138]
  92. 2210 [151]v[170]21,1:[151] v,xp:[151] v[170]1,yp
  93. 2220 :
  94. 2300 [139]k$[178]"1" [167] z[178]1:[141] 6000
  95. 2310 [139]k$[178]"2" [167] z[178]2:[141] 6000
  96. 2320 [139]k$[178]"3" [167] z[178]3:[141] 6000
  97. 2340 [139]k$[178]"4" [167] z[178]4:[141] 6000
  98. 2410 [139] k$[178]"input" [167] [151]v[170]39,10 :[151]646,10:[141] 6000
  99. 2420 [139] k$[178]"dim" [167] [151] v[170]39,5: [151]646,5:[141] 6000
  100. 2430 [139] k$[178]"read" [167] [151] v[170]39,14: [151]646,14:[141] 6000
  101. 2440 [139] k$[178]"let" [167] [151] v[170]39,7:[151]646,7:[141] 6000
  102. 2500 [139] fr[179][177]16 [167] [141] 5000:[141]6000 :[143] fire
  103. 2509 [139] k$[178][199](13) [167] [141] 10000:[139]lo[178]16[167]  [141]20000:[137] 3000    :[143]--
  104. 2510 [139] k$[178][199](13) [167] [141] 10035:[141]20000:[137] 3000:[143]--
  105. 2520 [139] k$[178][199](13) [167] [141] 10035:[139]lo[179][177]0[167] [141] 14000:[143]--cr
  106. 3000 lo[178]0:  [137]2110
  107. 5000 [143] ---- check sprite location ---
  108. 5001 [143]      ---------------------
  109. 5010 [139] ch[178]21 [167] b[178]1
  110. 5020 [139] ch[178]48 [167] b[178]2
  111. 5030 [139] ch[178]76 [167] b[178]3
  112. 5040 [139] ch[178]103 [167] b[178]4
  113. 5050 [139] ch[178]34 [167] b[178]5
  114. 5060 [139] ch[178]77 [167] b[178]6
  115. 5070 [139] ch[178]120 [167] b[178]7
  116. 5080 [139] ch[178]164 [167] b[178]8
  117. 5090 [139] ch[178]47 [167] b[178]9
  118. 5100 [139] ch[178]106 [167] b[178]10
  119. 5110 [139] ch[178]165 [167] b[178]11
  120. 5120 [139] ch[178]224 [167] b[178]12
  121. 5130 [139] ch[178]60 [167] b[178]13
  122. 5140 [139] ch[178]135 [167] b[178]14
  123. 5150 [139] ch[178]210 [167] b[178]15
  124. 5160 [139] ch[178]285 [167] b[178]16
  125. 5170 mh[178][194](646):[153]dn$;"print      press spaceprint for more commands  ":[151]646,mh
  126. 5200 [141] 7000
  127. 5300 [142]
  128. 6000 [143] --- print figure ----
  129. 6001 [143]     ------------
  130. 6005 [153] p$(b) f$(z)
  131. 6010 [142]
  132. 7000 [143]-- check figure ---
  133. 7001 [143]   ------------
  134. 7005 [139][194](a(b))[178]32 [167] z[178]5: [142]
  135. 7010 [139] [194](a(b))[178]164 [167] z[178]1
  136. 7020 [139] [194](a(b))[178]168 [167] z[178]2
  137. 7030 [139] [194](a(b))[178]172 [167] z[178]3
  138. 7040 [139] [194](a(b))[178]214 [167] z[178]4
  139. 7050 [142]
  140. 9000 [143] --- sprite data ----
  141. 9001 [143]     ---------------
  142. 9010 [131] 0,0,0,0,0,0,31,255
  143. 9020 [131] 248,16,0,8,16,0,8,16
  144. 9030 [131] 0,8,16,0,8,16,0,8
  145. 9040 [131] 16,0,8,16,0,8,16,0
  146. 9050 [131] 8,16,0,8,16,0,8,16
  147. 9060 [131] 0,8,16,0,8,16,0,8
  148. 9070 [131] 16,0,8,16,0,8,16,0
  149. 9080 [131] 8,31,255,248,0,0,0,255
  150. 10000 [143] --- check win ---
  151. 10001 [143]     ---------
  152. 10010 [129] i[178]1  [164] 16
  153. 10020 [139] [194](a(i))[178]32 [167] i[178]16:lo[178]16:[142]
  154. 10030 [130]
  155. 10032 [142]
  156. 10035 [143]       ---- _____ ----
  157. 10036 [153]dn$;"  c h e c k i n g . . .  "
  158. 10040 [129] i[178] 1 [164] 13 [169] 4
  159. 10050 [129] j[178] 1 [164] 3
  160. 10060 fk[178][194](a(i)):sk[178][194](a(j[170]i)):[139] fk[178]sk [167] i[178]13:j[178]3:lo[178]1: [142]
  161. 10070 [130]
  162. 10080 [129] j[178]2 [164] 3
  163. 10090 fk[178][194](a(i[170]1)):sk[178][194](a(j[170]1)):[139] fk[178]sk [167] i[178]13:j[178]3:lo[178]1:[142]
  164. 10100 [130]
  165. 10110 fk[178][194](a(i[170]2)):sk[178][194](a(i[170]3)):[139] fk[178]sk[167] i[178]13:lo[178]1:[142]
  166. 10120 :
  167. 11000 [143]        ----- ^^^^^ -----
  168. 11010 [129] ii[178]0 [164] 3
  169. 11020 [129] jj[178]5 [164] 13 [169] 4
  170. 11030 [139] [194](a(ii[170]1))[178][194](a(jj[170]ii))[167] lo[178]2:[142]
  171. 11040 [130]
  172. 11050 [129] jj[178]9 [164] 13 [169] 4
  173. 11060 [139] [194](a(ii[170]5))[178][194](a(jj[170]ii)) [167] lo[178]2:[142]
  174. 11070 [130]
  175. 11080 [139] [194](a(ii[170]9))[178][194](a(ii[170]13))[167] lo[178]2:[142]
  176. 12035 [143]       ---- ___ c ___ ---
  177. 12040 [129] i[178] 1 [164] 13 [169] 4
  178. 12050 [129] j[178] 1 [164] 3
  179. 12060 fk[178][194](a(i)[170]m)[175]15:sk[178][194](a(j[170]i)[170]m)[175]15
  180. 12065 [139] fk[178]sk [167] i[178]13:j[178]3:lo[178]3:[142]
  181. 12070 [130] j
  182. 12080 [129] j[178]2 [164] 3
  183. 12090 f2[178][194](a(i[170]1)[170]m)[175]15:s2[178][194](a(j[170]1)[170]m)[175]15
  184. 12095 [139] f2[178]s2 [167] i[178]13:j[178]3:lo[178]3:[142]
  185. 12100 [130] j
  186. 12110 f3[178][194](a(i[170]2)[170]m)[175]15:s3[178][194](a(i[170]3)[170]m)[175]15
  187. 12115 [139] f3[178]s3 [167] i[178]13:lo[178]3:[142]
  188. 13000 [143]       ---- ^^^ c ^^^ ----
  189. 13010 [129] ii[178]0 [164] 3
  190. 13020 [129] jj[178]5 [164] 13 [169] 4
  191. 13030 cf[178][194](a(ii[170]1)[170]m)[175]15:cs[178][194](a(jj[170]ii)[170]m)[175]15
  192. 13035 [139] cf[178]cs [167] lo[178]4:[142]
  193. 13040 [130]
  194. 13050 [129] jj[178]9 [164] 13 [169] 4
  195. 13060 cf[178][194](a(ii[170]5)[170]m)[175]15:cs[178][194](a(jj[170]ii)[170]m)[175]15
  196. 13065 [139] cf[178]cs [167] lo[178]4:[142]
  197. 13070 [130]
  198. 13080 cf[178][194](a(ii[170]9)[170]m)[175]15:cs[178][194](a(ii[170]13)[170]m)[175]15
  199. 13085 [139] cf[178]cs [167] lo[178]4:[142]
  200. 13090 [130]
  201. 14000 :
  202. 14005 x[178]0:y[178]0
  203. 14010 [129] u[178]1 [164] 16
  204. 14020 b(u)[178][194](a(u))
  205. 14022 c(u)[178][194](a(u)[170]m)[175]15
  206. 14024 d(u)[178]b(u)[172]c(u)
  207. 14030 [130]
  208. 14050 [129] x[178]1 [164] 15
  209. 14060 [129] y[178]x[170]1 [164] 16
  210. 14070 [139] d(x)[178]d(y) [167] [141] 15000:[151]v[170]39,[194](646) :[142]
  211. 14080 [130]
  212. 14090 [130]
  213. 14095 [137] 19000
  214. 15000 [143] ---- sprite ? ---
  215. 15005 x1[178]0:y1[178]0:x2[178]0:y2[178]0
  216. 15010 [139] x[178]1 [167] x1[178]32:y1[178]68
  217. 15020 [139] x[178]2 [167] x1[178]72:y1[178]68
  218. 15030 [139] x[178]3 [167] x1[178]112:y1[178]68
  219. 15040 [139] x[178]4 [167] x1[178]152:y1[178]68
  220. 15050 [139] x[178]5 [167] x1[178]32:y1[178]108
  221. 15060 [139] x[178]6 [167] x1[178]72:y1[178]108
  222. 15070 [139] x[178]7 [167] x1[178]112:y1[178]108
  223. 15080 [139] x[178]8 [167] x1[178]152:y1[178]108
  224. 15090 [139] x[178]9 [167] x1[178]32:y1[178]148
  225. 15100 [139] x[178]10 [167] x1[178]72:y1[178]148
  226. 15110 [139] x[178]11 [167] x1[178]112:y1[178]148
  227. 15120 [139] x[178]12 [167] x1[178]152:y1[178]148
  228. 15130 [139] x[178]13 [167] x1[178]32:y1[178]188
  229. 15140 [139] x[178]14 [167] x1[178]72:y1[178]188
  230. 15150 [139] x[178]15 [167] x1[178]112:y1[178]188
  231. 15160 [139] x[178]16 [167] x1[178]152:y1[178]188
  232. 15210 [139] y[178]1 [167] y2[178]68:x2[178]32
  233. 15220 [139] y[178]2 [167] y2[178]68:x2[178]72
  234. 15230 [139] y[178]3 [167] y2[178]68:x2[178]112
  235. 15240 [139] y[178]4 [167] y2[178]68:x2[178]152
  236. 15250 [139] y[178]5 [167] y2[178]108:x2[178]32
  237. 15260 [139] y[178]6 [167] y2[178]108:x2[178]72
  238. 15270 [139] y[178]7 [167] y2[178]108:x2[178]112
  239. 15280 [139] y[178]8 [167] y2[178]108:x2[178]152
  240. 15290 [139] y[178]9 [167] y2[178]148:x2[178]32
  241. 15300 [139] y[178]10 [167] y2[178]148:x2[178]72
  242. 15310 [139] y[178]11 [167] y2[178]148:x2[178]112
  243. 15320 [139] y[178]12 [167] y2[178]148:x2[178]152
  244. 15330 [139] y[178]13 [167] y2[178]188:x2[178]32
  245. 15340 [139] y[178]14 [167] y2[178]188:x2[178]72
  246. 15350 [139] y[178]15 [167] y2[178]188:x2[178]112
  247. 15360 [139] y[178]16 [167] y2[178]188:x2[178]152
  248. 15500 [143]-----------
  249. 15501 [151]v[170]21,0
  250. 15502 [151]v[170]39,1
  251. 15505 [129] w[178]1 [164] 5
  252. 15509 [151] v,x1:[151] v[170]1,y1
  253. 15510 [151] v[170]21,1
  254. 15515 [129]t[178]1 [164] 100 :[130]
  255. 15516 [151] v[170]21,0
  256. 15520 [151] v,x2:[151] v[170]1,y2
  257. 15524 [151] v[170]21,1
  258. 15525 [129]t[178]1 [164] 100 :[130]
  259. 15526 [151] v[170]21,0
  260. 15530 [130]
  261. 15540 [142]
  262. 19000 [143]      --- right answer ---
  263. 19010 [153]dn$;"  well done!  that's one solution !"
  264. 19020 [151] 54278,240:[151]54296,15
  265. 19030 [131]0,134,33,134,33,161,37,60,42,134,33,60,42,161,37,134,25
  266. 19040 [131]134,33,134,33,161,37,60,42,134,33,0,0,134,25
  267. 19070 [131]999,999
  268. 19080 [135] a,b
  269. 19090 [139] a[178]999 [167] 19160
  270. 19100 [151] 54272,a:[151] 54273,b
  271. 19110 [151] 54276,17
  272. 19120 [129] r[178]0 [164] 50:[130]
  273. 19121 [151]53280,b
  274. 19130 [151] 54276,16
  275. 19140 [129] r[178]0[164] 100:[130]
  276. 19150 [137] 19080
  277. 19160 [129] r[178]54272 [164] 54296:[151] r,0:[130]
  278. 19200 [153]dn$;"        another game? (y/n)           "
  279. 19210 [161] an$:[139] an$[178]"" [167] 19210
  280. 19220 [139] an$[178]"y" [167] [138]
  281. 19230 [139] an$[178]"n" [167] [153]"load":[151]v[170]21,0
  282. 19232 [159]15,8,15,"r0:hello connect=hello connect":[132]15,er:[160]15
  283. 19240 [137] 19210
  284. 19324 [139]er[179][177]63[167][128]
  285. 19326 [147]"hello connect",8
  286. 20000 [143]---
  287. 20005 [129] tt[178]1 [164] 6
  288. 20010 [139] lo[178]16 [167][153]dn$;"  --- empty areas ---"
  289. 20020 [139] lo[178]1 [167][153]dn$;"same shape in two areas on same line"
  290. 20030 [139] lo[178]2 [167][153]dn$;"same shape in two areas on same column"
  291. 20040 [139] lo[178]3 [167][153]dn$;"same color in two areas on same line"
  292. 20050 [139] lo[178]4 [167][153]dn$;"same color in two areas on same column"
  293. 20130 [129] t[178] 1 [164] 500:[130]
  294. 20140 [153]dn$;"                                       "
  295. 20142 [129] t[178] 1 [164] 250:[130]
  296. 20145 [130]
  297. 20150 lo[178]0
  298. 20200 [142]
  299. 22000 [143] --- quit ? ----
  300. 22001 [143]     ------
  301. 22005 q[178][194](646)
  302. 22010 [153]dn$;"          are you sure? (y/n)       "
  303. 22020 [161] q$:[139] q$[178]""[167] 22020
  304. 22030 [139] q$[178]"n"[167][153]dn$;"                             ":[151]646,q: [142]
  305. 22040 [139] q$[178]"y"[167] [151]v[170]21,0:[153]"load"
  306. 22042 [159]15,8,15,"r0:hello connect=hello connect":[132]15,er:[160]15
  307. 22044 [151]53272,21:[151]53248[170]21,.:[139]er[179][177]63[167][128]
  308. 22046 [151]43,1:[151]44,8:[151]2048,.:[156]:[147]"hello connect",8
  309. 22050 [137]22020
  310. 30000 [151]198,0
  311. 30005 [153]dn$;"       press any key to continue    "
  312. 30010 [161]a$:[139]a$[178]""[167]30010
  313. 30020 [151]53269,1:[142]
  314. 40000 [151]53269,0
  315. 40005 [153]"ortantantantantantantantantantantantantantantantantantantantantantantantan^"
  316. 40010 [153]sq$
  317. 40020 [153]"(NULL)  defs h a p e s q u a r e (NULL)"
  318. 40030 [153]sq$
  319. 40070 [153]"(NULL)    opene - erase shape     (NULL)"
  320. 40080 [153]sq$
  321. 40090 [153]"(NULL)    openx - start over      (NULL)"
  322. 40100 [153]sq$
  323. 40110 [153]"(NULL)    openq - quit the game   (NULL)"
  324. 40120 [153]sq$
  325. 40130 [153]"/tantantantantantantantantantantantantantantantantantantantantantantantanexp"
  326. 40140 [142]
  327.