home *** CD-ROM | disk | FTP | other *** search
- 1 rem--- shapesquare by david ben-zur---
- 3 ifa=0thena=1:load"shapesquare.font",8,1
- 4 ifa=1thena=2:load"ss",8,1
- 10 poke53272,19 :v=53248
- 20 dim p$(16),a(16),b(16),c(16),d(16)
- 30 dn$=""
- 40 sq$="[221] [221]"
- 100 print"[147]** shapesquare **":poke53281,0 :poke53280,14
- 102 m=54272
- 103 for r=m to m+24:poke r,0:next
- 105 a(1)=1187:a(2)=1192:a(3)=1197:a(4)=1202
- 106 a(5)=1387:a(6)=1392:a(7)=1397:a(8)=1402
- 107 a(9)=1587:a(10)=1592:a(11)=1597:a(12)=1602
- 108 a(13)=1787:a(14)=1792:a(15)=1797:a(16)=1802
- 110 m1$= "[159] [176][192][192][192][192][178][192][192][192][192][178][192][192][192][192][178][192][192][192][192][174]"
- 120 m2$=" [221] [221] [221] [221] [221]"
- 130 m3$=" [171][192][192][192][192][219][192][192][192][192][219][192][192][192][192][219][192][192][192][192][179]"
- 140 m4$=" [173][192][192][192][192][177][192][192][192][192][177][192][192][192][192][177][192][192][192][192][189]"
- 150 printm1$
- 160 for ii =1 to 3:gosub 200:print m3$:next:gosub 200:printm4$
- 180 goto 300
- 200 for i=1 to 4:printm2$:next :return
- 300 print"
- 500 [143] --- figures ----
- 501 [143] -------
- 510 f$(1)[178]"cdescmdcmdcmdcmd#$%&cmdcmdcmdcmdlenstr$valasccmdcmdcmdcmdtab(tofnspc("
- 520 f$(2)[178]"ghijcmdcmdcmdcmd'()*cmdcmdcmdcmdchr$left$right$mid$cmdcmdcmdcmdthennotstep+"
- 530 f$(3)[178]"klmncmdcmdcmdcmd+,-.cmdcmdcmdcmd(NULL)(NULL)(NULL)(NULL)cmdcmdcmdcmd-*/^"
- 540 f$(4)[178]"opqrcmdcmdcmdcmd/(NULL)(NULL)(NULL)cmdcmdcmdcmd(NULL)(NULL)(NULL)(NULL)cmdcmdcmdcmdandor>="
- 542 f$(5)[178]" cmdcmdcmdcmd cmdcmdcmdcmd cmdcmdcmdcmd "
- 543 no$[178]"ortan^cmdcmdcmd(NULL)(NULL)cmdcmdcmd/tanexp"
- 545 [143] --------- places ----
- 546 [143] ------
- 550 p$(1)[178]""
- 560 p$(2)[178]""
- 570 p$(3)[178]""
- 580 p$(4)[178]""
- 590 p$(5)[178]""
- 600 p$(6)[178]""
- 610 p$(7)[178]""
- 620 p$(8)[178]""
- 630 p$(9)[178]""
- 640 p$(10)[178]""
- 650 p$(11)[178]""
- 660 p$(12)[178]""
- 670 p$(13)[178]""
- 680 p$(14)[178]""
- 690 p$(15)[178]""
- 700 p$(16)[178]""
- 800 [143] --- print on screen ----
- 801 [143] ---------------
- 805 [153],,,""f$(2)"ononwait"no$"cmdcmdon2"
- 810 [153],,"ononon"f$(1)"ononwait"no$"cmdcmdon1"
- 820 [153],,,""f$(4)"ononwait"no$"cmdcmdon4"
- 830 [153],,"ononon"f$(3)"ononwait"no$"cmdcmdon3"
- 900 [153],,"deff1wait-red f3wait-green"
- 910 [153],,"contf5wait-blue sysf7wait-yellow"
- 920 [153],,"move with"
- 930 [153],,"crsr keys"
- 950 [153],,"printpress list abtuav "
- 960 [153],,"printto check screen."
- 2000 [143] --- sprite location ---
- 2001 [143] ---------------
- 2010 [151]646,10
- 2020 xp[178]32:yp[178]68
- 2030 [151] v,xp:[151] v[170]1,yp
- 2040 [151] 2040,11
- 2050 [129] i[178]0 [164] 62:[135] a
- 2060 [151] 704[170]i,a : [130] i
- 2070 [151] v[170]21,1:[151]v[170]39,10:[143] color
- 2080 [151]v[170]1,yp:[143] y pos
- 2090 [151]v[170]16,0:[151] v,xp :[143] x pos
- 2095 [151]v[170]29,1:[151] v[170]23,1:[143] expand
- 2100 [151]v[170]21,1:[151] v,xp:[151] v[170]1,yp
- 2110 [143] --- main loop -----
- 2111 [143] ---------
- 2112 [161] k$
- 2114 ch[178][181](xp[172]yp[173]100):[141]5000
- 2115 jv[178][194](56320):fr[178]jv[175]16:jv[178]15[171](jv[175]15)
- 2120 [139]jv[178]8 [176] k$[178]""[176] k$[178]"l"[167] xp[178]xp[170]40:[141] 7000
- 2125 [139] xp[177]152 [167] xp[178]152
- 2140 [139]jv[178]4[176]k$[178]"cmd"[176] k$[178]"j"[167] xp[178]xp[171]40:[141] 7000
- 2150 [139] xp[179]32 [167] xp[178]32
- 2155 [139] k$[178]"q"[167] [141] 22000
- 2157 [139] k$[178]" "[167][158]886:[141]40000:[141]30000:[158]907
- 2160 [139]jv[178]2 [176] k$[178]""[176] k$[178]"m"[167] yp[178]yp[170]40:[141] 7000
- 2170 [139] yp[177]188 [167] yp[178]188
- 2180 [139]jv[178]1 [176] k$[178]"on"[176] k$[178]"i"[167] yp[178]yp[171]40:
- 2190 [139] yp[179]68 [167] yp[178]68
- 2200 [139] k$[178]"e" [167] c6[178][194](646): [141]5000:[153] p$(b)"open"f$(5):[151]646,c6
- 2205 [139] k$[178]"x" [167] [138]
- 2210 [151]v[170]21,1:[151] v,xp:[151] v[170]1,yp
- 2220 :
- 2300 [139]k$[178]"1" [167] z[178]1:[141] 6000
- 2310 [139]k$[178]"2" [167] z[178]2:[141] 6000
- 2320 [139]k$[178]"3" [167] z[178]3:[141] 6000
- 2340 [139]k$[178]"4" [167] z[178]4:[141] 6000
- 2410 [139] k$[178]"input" [167] [151]v[170]39,10 :[151]646,10:[141] 6000
- 2420 [139] k$[178]"dim" [167] [151] v[170]39,5: [151]646,5:[141] 6000
- 2430 [139] k$[178]"read" [167] [151] v[170]39,14: [151]646,14:[141] 6000
- 2440 [139] k$[178]"let" [167] [151] v[170]39,7:[151]646,7:[141] 6000
- 2500 [139] fr[179][177]16 [167] [141] 5000:[141]6000 :[143] fire
- 2509 [139] k$[178][199](13) [167] [141] 10000:[139]lo[178]16[167] [141]20000:[137] 3000 :[143]--
- 2510 [139] k$[178][199](13) [167] [141] 10035:[141]20000:[137] 3000:[143]--
- 2520 [139] k$[178][199](13) [167] [141] 10035:[139]lo[179][177]0[167] [141] 14000:[143]--cr
- 3000 lo[178]0: [137]2110
- 5000 [143] ---- check sprite location ---
- 5001 [143] ---------------------
- 5010 [139] ch[178]21 [167] b[178]1
- 5020 [139] ch[178]48 [167] b[178]2
- 5030 [139] ch[178]76 [167] b[178]3
- 5040 [139] ch[178]103 [167] b[178]4
- 5050 [139] ch[178]34 [167] b[178]5
- 5060 [139] ch[178]77 [167] b[178]6
- 5070 [139] ch[178]120 [167] b[178]7
- 5080 [139] ch[178]164 [167] b[178]8
- 5090 [139] ch[178]47 [167] b[178]9
- 5100 [139] ch[178]106 [167] b[178]10
- 5110 [139] ch[178]165 [167] b[178]11
- 5120 [139] ch[178]224 [167] b[178]12
- 5130 [139] ch[178]60 [167] b[178]13
- 5140 [139] ch[178]135 [167] b[178]14
- 5150 [139] ch[178]210 [167] b[178]15
- 5160 [139] ch[178]285 [167] b[178]16
- 5170 mh[178][194](646):[153]dn$;"print press spaceprint for more commands ":[151]646,mh
- 5200 [141] 7000
- 5300 [142]
- 6000 [143] --- print figure ----
- 6001 [143] ------------
- 6005 [153] p$(b) f$(z)
- 6010 [142]
- 7000 [143]-- check figure ---
- 7001 [143] ------------
- 7005 [139][194](a(b))[178]32 [167] z[178]5: [142]
- 7010 [139] [194](a(b))[178]164 [167] z[178]1
- 7020 [139] [194](a(b))[178]168 [167] z[178]2
- 7030 [139] [194](a(b))[178]172 [167] z[178]3
- 7040 [139] [194](a(b))[178]214 [167] z[178]4
- 7050 [142]
- 9000 [143] --- sprite data ----
- 9001 [143] ---------------
- 9010 [131] 0,0,0,0,0,0,31,255
- 9020 [131] 248,16,0,8,16,0,8,16
- 9030 [131] 0,8,16,0,8,16,0,8
- 9040 [131] 16,0,8,16,0,8,16,0
- 9050 [131] 8,16,0,8,16,0,8,16
- 9060 [131] 0,8,16,0,8,16,0,8
- 9070 [131] 16,0,8,16,0,8,16,0
- 9080 [131] 8,31,255,248,0,0,0,255
- 10000 [143] --- check win ---
- 10001 [143] ---------
- 10010 [129] i[178]1 [164] 16
- 10020 [139] [194](a(i))[178]32 [167] i[178]16:lo[178]16:[142]
- 10030 [130]
- 10032 [142]
- 10035 [143] ---- _____ ----
- 10036 [153]dn$;" c h e c k i n g . . . "
- 10040 [129] i[178] 1 [164] 13 [169] 4
- 10050 [129] j[178] 1 [164] 3
- 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]
- 10070 [130]
- 10080 [129] j[178]2 [164] 3
- 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]
- 10100 [130]
- 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]
- 10120 :
- 11000 [143] ----- ^^^^^ -----
- 11010 [129] ii[178]0 [164] 3
- 11020 [129] jj[178]5 [164] 13 [169] 4
- 11030 [139] [194](a(ii[170]1))[178][194](a(jj[170]ii))[167] lo[178]2:[142]
- 11040 [130]
- 11050 [129] jj[178]9 [164] 13 [169] 4
- 11060 [139] [194](a(ii[170]5))[178][194](a(jj[170]ii)) [167] lo[178]2:[142]
- 11070 [130]
- 11080 [139] [194](a(ii[170]9))[178][194](a(ii[170]13))[167] lo[178]2:[142]
- 12035 [143] ---- ___ c ___ ---
- 12040 [129] i[178] 1 [164] 13 [169] 4
- 12050 [129] j[178] 1 [164] 3
- 12060 fk[178][194](a(i)[170]m)[175]15:sk[178][194](a(j[170]i)[170]m)[175]15
- 12065 [139] fk[178]sk [167] i[178]13:j[178]3:lo[178]3:[142]
- 12070 [130] j
- 12080 [129] j[178]2 [164] 3
- 12090 f2[178][194](a(i[170]1)[170]m)[175]15:s2[178][194](a(j[170]1)[170]m)[175]15
- 12095 [139] f2[178]s2 [167] i[178]13:j[178]3:lo[178]3:[142]
- 12100 [130] j
- 12110 f3[178][194](a(i[170]2)[170]m)[175]15:s3[178][194](a(i[170]3)[170]m)[175]15
- 12115 [139] f3[178]s3 [167] i[178]13:lo[178]3:[142]
- 13000 [143] ---- ^^^ c ^^^ ----
- 13010 [129] ii[178]0 [164] 3
- 13020 [129] jj[178]5 [164] 13 [169] 4
- 13030 cf[178][194](a(ii[170]1)[170]m)[175]15:cs[178][194](a(jj[170]ii)[170]m)[175]15
- 13035 [139] cf[178]cs [167] lo[178]4:[142]
- 13040 [130]
- 13050 [129] jj[178]9 [164] 13 [169] 4
- 13060 cf[178][194](a(ii[170]5)[170]m)[175]15:cs[178][194](a(jj[170]ii)[170]m)[175]15
- 13065 [139] cf[178]cs [167] lo[178]4:[142]
- 13070 [130]
- 13080 cf[178][194](a(ii[170]9)[170]m)[175]15:cs[178][194](a(ii[170]13)[170]m)[175]15
- 13085 [139] cf[178]cs [167] lo[178]4:[142]
- 13090 [130]
- 14000 :
- 14005 x[178]0:y[178]0
- 14010 [129] u[178]1 [164] 16
- 14020 b(u)[178][194](a(u))
- 14022 c(u)[178][194](a(u)[170]m)[175]15
- 14024 d(u)[178]b(u)[172]c(u)
- 14030 [130]
- 14050 [129] x[178]1 [164] 15
- 14060 [129] y[178]x[170]1 [164] 16
- 14070 [139] d(x)[178]d(y) [167] [141] 15000:[151]v[170]39,[194](646) :[142]
- 14080 [130]
- 14090 [130]
- 14095 [137] 19000
- 15000 [143] ---- sprite ? ---
- 15005 x1[178]0:y1[178]0:x2[178]0:y2[178]0
- 15010 [139] x[178]1 [167] x1[178]32:y1[178]68
- 15020 [139] x[178]2 [167] x1[178]72:y1[178]68
- 15030 [139] x[178]3 [167] x1[178]112:y1[178]68
- 15040 [139] x[178]4 [167] x1[178]152:y1[178]68
- 15050 [139] x[178]5 [167] x1[178]32:y1[178]108
- 15060 [139] x[178]6 [167] x1[178]72:y1[178]108
- 15070 [139] x[178]7 [167] x1[178]112:y1[178]108
- 15080 [139] x[178]8 [167] x1[178]152:y1[178]108
- 15090 [139] x[178]9 [167] x1[178]32:y1[178]148
- 15100 [139] x[178]10 [167] x1[178]72:y1[178]148
- 15110 [139] x[178]11 [167] x1[178]112:y1[178]148
- 15120 [139] x[178]12 [167] x1[178]152:y1[178]148
- 15130 [139] x[178]13 [167] x1[178]32:y1[178]188
- 15140 [139] x[178]14 [167] x1[178]72:y1[178]188
- 15150 [139] x[178]15 [167] x1[178]112:y1[178]188
- 15160 [139] x[178]16 [167] x1[178]152:y1[178]188
- 15210 [139] y[178]1 [167] y2[178]68:x2[178]32
- 15220 [139] y[178]2 [167] y2[178]68:x2[178]72
- 15230 [139] y[178]3 [167] y2[178]68:x2[178]112
- 15240 [139] y[178]4 [167] y2[178]68:x2[178]152
- 15250 [139] y[178]5 [167] y2[178]108:x2[178]32
- 15260 [139] y[178]6 [167] y2[178]108:x2[178]72
- 15270 [139] y[178]7 [167] y2[178]108:x2[178]112
- 15280 [139] y[178]8 [167] y2[178]108:x2[178]152
- 15290 [139] y[178]9 [167] y2[178]148:x2[178]32
- 15300 [139] y[178]10 [167] y2[178]148:x2[178]72
- 15310 [139] y[178]11 [167] y2[178]148:x2[178]112
- 15320 [139] y[178]12 [167] y2[178]148:x2[178]152
- 15330 [139] y[178]13 [167] y2[178]188:x2[178]32
- 15340 [139] y[178]14 [167] y2[178]188:x2[178]72
- 15350 [139] y[178]15 [167] y2[178]188:x2[178]112
- 15360 [139] y[178]16 [167] y2[178]188:x2[178]152
- 15500 [143]-----------
- 15501 [151]v[170]21,0
- 15502 [151]v[170]39,1
- 15505 [129] w[178]1 [164] 5
- 15509 [151] v,x1:[151] v[170]1,y1
- 15510 [151] v[170]21,1
- 15515 [129]t[178]1 [164] 100 :[130]
- 15516 [151] v[170]21,0
- 15520 [151] v,x2:[151] v[170]1,y2
- 15524 [151] v[170]21,1
- 15525 [129]t[178]1 [164] 100 :[130]
- 15526 [151] v[170]21,0
- 15530 [130]
- 15540 [142]
- 19000 [143] --- right answer ---
- 19010 [153]dn$;" well done! that's one solution !"
- 19020 [151] 54278,240:[151]54296,15
- 19030 [131]0,134,33,134,33,161,37,60,42,134,33,60,42,161,37,134,25
- 19040 [131]134,33,134,33,161,37,60,42,134,33,0,0,134,25
- 19070 [131]999,999
- 19080 [135] a,b
- 19090 [139] a[178]999 [167] 19160
- 19100 [151] 54272,a:[151] 54273,b
- 19110 [151] 54276,17
- 19120 [129] r[178]0 [164] 50:[130]
- 19121 [151]53280,b
- 19130 [151] 54276,16
- 19140 [129] r[178]0[164] 100:[130]
- 19150 [137] 19080
- 19160 [129] r[178]54272 [164] 54296:[151] r,0:[130]
- 19200 [153]dn$;" another game? (y/n) "
- 19210 [161] an$:[139] an$[178]"" [167] 19210
- 19220 [139] an$[178]"y" [167] [138]
- 19230 [139] an$[178]"n" [167] [153]"load":[151]v[170]21,0
- 19232 [159]15,8,15,"r0:hello connect=hello connect":[132]15,er:[160]15
- 19240 [137] 19210
- 19324 [139]er[179][177]63[167][128]
- 19326 [147]"hello connect",8
- 20000 [143]---
- 20005 [129] tt[178]1 [164] 6
- 20010 [139] lo[178]16 [167][153]dn$;" --- empty areas ---"
- 20020 [139] lo[178]1 [167][153]dn$;"same shape in two areas on same line"
- 20030 [139] lo[178]2 [167][153]dn$;"same shape in two areas on same column"
- 20040 [139] lo[178]3 [167][153]dn$;"same color in two areas on same line"
- 20050 [139] lo[178]4 [167][153]dn$;"same color in two areas on same column"
- 20130 [129] t[178] 1 [164] 500:[130]
- 20140 [153]dn$;" "
- 20142 [129] t[178] 1 [164] 250:[130]
- 20145 [130]
- 20150 lo[178]0
- 20200 [142]
- 22000 [143] --- quit ? ----
- 22001 [143] ------
- 22005 q[178][194](646)
- 22010 [153]dn$;" are you sure? (y/n) "
- 22020 [161] q$:[139] q$[178]""[167] 22020
- 22030 [139] q$[178]"n"[167][153]dn$;" ":[151]646,q: [142]
- 22040 [139] q$[178]"y"[167] [151]v[170]21,0:[153]"load"
- 22042 [159]15,8,15,"r0:hello connect=hello connect":[132]15,er:[160]15
- 22044 [151]53272,21:[151]53248[170]21,.:[139]er[179][177]63[167][128]
- 22046 [151]43,1:[151]44,8:[151]2048,.:[156]:[147]"hello connect",8
- 22050 [137]22020
- 30000 [151]198,0
- 30005 [153]dn$;" press any key to continue "
- 30010 [161]a$:[139]a$[178]""[167]30010
- 30020 [151]53269,1:[142]
- 40000 [151]53269,0
- 40005 [153]"ortantantantantantantantantantantantantantantantantantantantantantantantan^"
- 40010 [153]sq$
- 40020 [153]"(NULL) defs h a p e s q u a r e (NULL)"
- 40030 [153]sq$
- 40070 [153]"(NULL) opene - erase shape (NULL)"
- 40080 [153]sq$
- 40090 [153]"(NULL) openx - start over (NULL)"
- 40100 [153]sq$
- 40110 [153]"(NULL) openq - quit the game (NULL)"
- 40120 [153]sq$
- 40130 [153]"/tantantantantantantantantantantantantantantantantantantantantantantantanexp"
- 40140 [142]
-