home *** CD-ROM | disk | FTP | other *** search
- 10 poke52,56:poke51,0:clr
- 20 dv=peek(186):ifdv<8thendv=8
- 30 poke53281,15:poke53280,15:print"[147]"
- 40 sc=1024:z=40:co=54272
- 50 sys57812"logic font",dv,0:poke780,0:poke781,0:poke782,56:sys65493
- 60 poke53272,31
- 70 goto280
- 80 poke214,y:print:poke646,c
- 90 forii=0to4:printtab(x)"[[[[[":next
- 100 return
- 110 poke214,yb:print:poke646,c
- 120 printtab(xb)"[176]"left$(h$,xx)"[174]"
- 130 forii=1toyy:printtab(xb)"[221]"left$(sp$,xx)"[221]":next
- 140 printtab(xb)"[173]"left$(h$,xx)"[189]"
- 150 return
- 160 pd=sc+co+x+y*z:pq=peek(pd)and15
- 162 forj=0to10:pokepd,1
- 164 pokesc+x+y*z,29
- 166 pokepd,pq:fort=0to20:next
- 168 next:gosub230:return
- 170 pd=peek(sc+co+x+w*z)and15:forj=0to3
- 180 fori=0to4:pq=sc+x+z*i+w*z:pokepq+co,1
- 184 pokepq,29:pokepq+co,pd:fort=0to20:next:next
- 190 fori=0to4:pq=sc+v+i+y*z:pokepq+co,1
- 194 pokepq,29:pokepq+co,pd:fort=0to20:next
- 200 pokesc+x+y*z,28
- 210 next:next
- 220 gosub230:return
- 222 forj=0to8
- 224 print"";:poke214,y:print:printtab(x)b$
- 226 print"[144]";:poke214,y:print:printtab(x)b$:fort=0to20:next
- 228 next:gosub230:return
- 230 s=54272:pokes+1,130:pokes+5,9:pokes+15,30:pokes+24,15:pokes+4,21
- 240 fort=0to400:next:pokes+4,20
- 250 poke198,0:zz=0
- 252 pd=peek(214)-1:pq=peek(646):poke214,21:print:print" [208]ress a key"
- 260 zz=zz+1:geta$:ifa$=""andzz<800then260
- 262 poke214,21:print:print" "
- 264 poke214,pd:print:poke646,pq
- 266 ifa$="q"then40000
- 270 return
- 280 forj=0to2:x=3+j*5:fori=0to2-j:y=2+5*i
- 290 c=11*((i+j)and1):gosub80:next:next
- 300 print"[144][208][209][210][211][212][203][204][205][206][207][198][199][200][201][202]"
- 310 print"":fori=1to15:printtab(1)chr$(192+i):next
- 320 goto380
- 330 fori=0to5:readx,y:pokesc+x+z*y,29:next
- 340 data3,5,14,6,7,7,12,7,11,12,4,15
- 350 fori=3to7:pokesc+10+z*i,29:next
- 360 fori=0to4:pokesc+8+i+6*z,29:next
- 370 pokesc+10+240,28
- 380 h$="[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]"
- 390 sp$=" "
- 400 print""tab(22)"[193]-[197] [198]-[202] [203]-[207] [208]-[212]"
- 410 printtab(21)"[176][192][192][192][178][192][192][192][178][192][192][192][178][192][192][192][174]"
- 420 fori=0to3
- 430 printtab(21)"[221] [221] [221] [221] [221]"
- 440 printtab(21)"[171][192][192][192][219][192][192][192][219][192][192][192][219][192][192][192][179]"
- 450 next
- 460 printtab(21)"[221] [221] [221] [221] [221]"
- 470 printtab(21)"[173][192][192][192][177][192][192][192][177][192][192][192][177][192][192][192][189]"
- 480 print"":fori=0to4:printtab(23)chr$(193+i):print:next
- 490 xb=14:yb=11:xx=23:yy=10:c=6:gosub110
- 500 poke214,12:print:printtab(16)"[212]he first clue says
- 510 [153][163]16)"len is not (NULL). (NULL)o put an
- 520 printtab(16)"[216] where [195] crosses [208].
- 530 x[178]3:y[178]5:[141]160
- 540 [153][163]16)"(NULL)ikewise, chr$ is not (NULL).
- 550 x=8:y=9:gosub160
- 560 printtab(16)"[203] is not [210] or [212].
- 570 x[178]5:y[178]13:[141]160:x[178]7:y[178]13:[141]160
- 580 [153][163]16)"peek is not chr$.
- 590 x=14:y=4:gosub160
- 600 printtab(16)"[193]nd [201] is not [196].
- 610 x[178]16:y[178]6:[141]160
- 620 [141]110:[151]214,12:[153]
- 630 [153][163]16)"(NULL)he next clue says (NULL)
- 640 printtab(16)"is [195]. [208]ut a dot where
- 650 [153][163]16)"(NULL) crosses len and fill
- 660 printtab(16)"the rest of that row
- 670 [153][163]16)"and column with (NULL)s.
- 680 x=8:y=5:w=3:v=8:gosub170
- 690 printtab(16)"[215]henever you place a
- 700 [153][163]16)"dot, update the atn(NULL)(NULL)(NULL)val(NULL)
- 710 printtab(16)"[199][210][201][196].
- 720 x[178]31:y[178]5:b$[178]"(NULL)":[141]222
- 740 [141]110:[151]214,12:[153]
- 750 [153][163]16)"atnlso, when you place
- 760 printtab(16)"a dot, you can assume
- 770 [153][163]16)"that the rest of the
- 780 printtab(16)"information for both
- 790 [153][163]16)"letters matches.
- 810 printtab(16)"[211]o, [195]'s boxes should
- 820 [153][163]16)"look like (NULL)'s; an (NULL)
- 830 printtab(16)"for one is matched by
- 840 [153][163]16)"an (NULL) in the other.
- 850 gosub230
- 860 gosub110:poke214,12:print
- 870 printtab(16)"[195]'s boxes get two [216]s.
- 880 x[178]5:y[178]5:[141]160
- 890 x[178]7:y[178]5:[141]160
- 900 [153][163]16)"atnnd (NULL)'s boxes get
- 910 printtab(16)"one.
- 920 x[178]3:y[178]13:[141]160
- 930 [153][163]16)"atnnd finally, len-chr$
- 940 printtab(16)"gets an [216] to match
- 950 [153][163]16)"the (NULL) at chr$-(NULL).
- 960 x=14:y=5:gosub160
- 970 gosub110:poke214,12:print
- 980 printtab(16)"[207]kay, the next clue
- 990 [153][163]16)"says that right$ is (NULL). (NULL)o
- 1000 printtab(16)"place the dot and its
- 1010 [153][163]16)"(NULL)s.
- 1020 x=8:y=11:w=8:v=8:gosub170
- 1030 printtab(16)"[196]on't forget to add
- 1040 [153][163]16)"to the atn(NULL)(NULL)(NULL)val(NULL) chr$(NULL)right$str$.
- 1050 x=27:y=5:b$="[201]":gosub222
- 1070 gosub110:poke214,12:print
- 1080 printtab(16)"[215]henever you have two
- 1090 [153][163]16)"dots in the same row
- 1100 printtab(16)"or column, there is
- 1110 [153][163]16)"another dot to place.
- 1120 printtab(16)"[201]n this case, [195]-[201]
- 1130 [153][163]16)"gets a dot.
- 1140 x=16:y=5:w=3:v=13:gosub170
- 1150 printtab(16)"[205]ake [201]'s boxes the
- 1160 [153][163]16)"same as len's.
- 1170 x=3:y=11:gosub160
- 1180 x=5:y=11:gosub160
- 1190 x=7:y=11:gosub160
- 1200 gosub110:poke214,12:print
- 1210 printtab(16)"[206]ow let's say that [194]
- 1220 [153][163]16)"is (NULL), according to
- 1230 printtab(16)"the next clue. [208]ut a
- 1240 [153][163]16)"dot at peek-(NULL).
- 1250 x=6:y=4:w=3:v=3:gosub170
- 1260 printtab(16)"[205]ake [194]'s boxes and
- 1270 [153][163]16)"(NULL)'s the same and
- 1280 printtab(16)"update the [193][206][211][215][197][210]
- 1290 [153][163]16)"chr$(NULL)right$str$.
- 1300 x=6:y=9:gosub160
- 1310 x=6:y=11:gosub160
- 1312 x=6:y=13:gosub160
- 1320 x=35:y=3:b$="[211]":gosub222
- 1330 gosub110:poke214,12:print
- 1340 printtab(16)"[206]otice that there are
- 1350 [153][163]16)"three rows that have
- 1360 printtab(16)"four [216]s in them. [212]he
- 1370 [153][163]16)"empty boxes (NULL)(NULL)(NULL)(NULL) have
- 1380 printtab(16)"dots in them. [208]lace
- 1390 [153][163]16)"dots at len-(NULL), right$-(NULL) and
- 1392 printtab(16)"[203]-[209].
- 1400 x[178]4:y[178]5:w[178]3:v[178]3:[141]170
- 1410 x[178]4:y[178]11:w[178]8:v[178]3:[141]170
- 1412 x[178]4:y[178]13:w[178]13:v[178]3:[141]170
- 1414 [141]110:[151]214,13:[153]
- 1420 [153][163]16)"(NULL)pdate the atn(NULL)(NULL)(NULL)val(NULL)
- 1430 printtab(16)"[199][210][201][196] and continue
- 1432 [153][163]16)"with the rest of
- 1434 printtab(16)"the clues.
- 1440 x[178]35:y[178]5:b$[178]"(NULL)":[141]222
- 1510 [141]110:[151]214,13:[153]
- 1520 [153][163]16)"(NULL)hings to remember:
- 1521 printtab(16)"(1) [215]henever you
- 1522 [153][163]16)"(NULL)(NULL)(NULL)(NULL) a fact, place a
- 1523 printtab(16)"dot and fill the row
- 1524 [153][163]16)"and column (in that
- 1525 printtab(16)"section) with [216]s.
- 1526 [141]230
- 1528 [141]110:[151]214,13:[153]
- 1530 [153][163]16)"(2) (NULL)hen there's
- 1540 printtab(16)"only one box that's
- 1550 [153][163]16)"not an (NULL), then that
- 1560 printtab(16)"box gets a dot.
- 1570 [141]230
- 1580 [141]110:[151]214,13:[153]
- 1590 [153][163]16)"(3) (NULL)henever a dot
- 1600 printtab(16)"is placed, the two
- 1610 [153][163]16)"letters' rows and
- 1620 printtab(16)"columns should be
- 1630 [153][163]16)"made to match, (NULL) for
- 1640 printtab(16)"[216], dot for dot.
- 1650 [141]230
- 1660 [141]110:[151]214,13:[153]
- 1670 [153][163]16)"(4) (NULL)eep the atn(NULL)(NULL)(NULL)val(NULL)
- 1680 printtab(16)"[199][210][201][196] updated every
- 1690 [153][163]16)"time you place a dot.
- 1700 printtab(16)"[207]ften the [199][210][201][196] will
- 1710 [153][163]16)"help more than the
- 1720 printtab(16)"chart will.
- 1730 [141]230
- 1740 [141]110:[151]214,13:[153]
- 1750 [153][163]16)"(5) right$f one of the
- 1760 printtab(16)"fields is sequential,
- 1770 [153][163]16)"or ordered, use that
- 1780 printtab(16)"field as the first
- 1790 [153][163]16)"column; as column
- 1800 printtab(16)"[193]-[197] was in the demo.
- 1810 [141]230
- 1820 [141]110:[151]214,13:[153]
- 1830 [153][163]16)"(NULL)ress str$ to see the
- 1840 printtab(16)"demo again.
- 1850 [153][163]16)"(NULL)ress any other key
- 1860 printtab(16)"for [204][207][193][196][211][212][193][210].
- 1870 [151]198,0
- 1880 [161]a$:[139]a$[178]""[167]1880
- 1890 [139]a$[178]"d"[176]a$[178]"str$"[167]280
- 1900 [137]40000
- 9999 [137]9999
- 10000 [159]15,8,15,"s0:logic":[160]15:[148]"logic",8:[128]
- 40000 [153]"load":[151]53281,0:[151]53280,0
- 40002 a$[178]"hello connect":[129]i[178]8[164]9:[160]2:[159]2,i,2:[160]2:[139]st[167]40020
- 40010 [160]15:[159]15,i,15,"r0:"[170]a$[170]"="[170]a$:[132]15,er:[160]15:[139]er[178]63[167]40030
- 40020 [130]:[153]"load":[151]2048,0:[151]44,8:[151]53272,23:[151]186,8:[128]
- 40030 [151]646,[194](53281):[153]"loadload"[199](34)a$[199](34)","i
- 40040 [153]"run":[151]44,8:[151]2048,0:[151]631,13:[151]632,13:[151]198,2:[128]
-