home *** CD-ROM | disk | FTP | other *** search
- 5 dv=peek(186):ifdv<8thendv=8
- 10 print"[144][147]":poke53280,0:poke53281,0
- 20 sys57812"14-15.font",dv,0:poke780,0:poke781,0:poke782,200:sys65493
- 30 sys57812"tod.o",dv,0:poke780,0:poke781,0:poke782,192:sys65493
- 40 print"[144][147]":poke56576,4:poke53272,18:poke648,196:poke53265,27
- 50 poke53280,0:poke53281,0:print"[154][147][155]"
- 60 open1,dv,2:close1:q=st:ifq=0then70
- 61 forx=1to5:hi$(1,x)="-------":hi$(2,x)="-------"
- 62 hi(1,x)=99:hi(2,x)=3835:next:goto90
- 70 open1,dv,2,"14-15.hi,s,r":forx=1to2:fory=1to5:input#1,hi$(x,y),hi(x,y)
- 80 next:next:close1
- 90 dimn$(15),gd(16)
- 100 forx=0to15:readn$(x):next
- 110 data"[179][180][181][157][157][157][182][183][184]","[146][193][194][195][157][157][157][196][197][198]","[146][199][200][201][157][157][157][202][203][204]","[146][205][206][207][157][157][157][208][209][210]"
- 120 data"[146][211][212][213][157][157][157][214][215][216]","[146][161][162][163][157][157][157][164][165][166]","[146][167][168][169][157][157][157][170][171][172]","[146][173][174][175][157][157][157][176][177][178]"
- 130 data"[146][179][180][181][157][157][157][182][183][184]","[193][194][195][157][157][157][196][197][198]","[199][200][201][157][157][157][202][203][204]","[205][206][207][157][157][157][208][209][210]"
- 140 data"[211][212][213][157][157][157][214][215][216]","[161][162][163][157][157][157][164][165][166]","[167][168][169][157][157][157][170][171][172]","[173][174][175][157][157][157][176][177][178]"
- 150 s$="[157][145][157][157][157][145][145][157][157]"
- 160 forx=1to6:readq$(x):next
- 170 data"1.[160]14-15[160]puzzle","2.[160]reverse[160]puzzle","3.[160]random[160]puzzle"
- 180 data"4.[160]14-15[160]solution","5.[160]instructions","6.[160]quit"
- 190 print"[154][147]"tab(6)"@aaaaaaaaaaaaaaaaaaaaaaaaaab"
- 200 printtab(6)"c[146][158]reverse[160]puzzle[160]best[160]scoresd[146] "
- 210 printtab(6)"effffffffffffffffffffffffffg[146] "
- 220 printtab(7)" "
- 230 print"[156]"tab(5)"@aaaaaaaaaaaaaaaaaaaaaaaaaaaab":forx=1to15
- 240 printtab(5)"[156]c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] ":next
- 250 printtab(5)"[156]effffffffffffffffffffffffffffg[146] "
- 260 printtab(6)" "
- 270 print"[159]"
- 280 forx=1to5:b$=mid$(str$(hi(1,x)),2):printtab(7)hi$(1,x)tab(33-len(b$))b$
- 290 next:print"";:forx=1to5:m=int(hi(2,x)/64):s=(hi(2,x)and63)
- 300 a$=mid$(str$(m),2):ifm<10thena$="0"+a$
- 310 b$=mid$(str$(s),2):ifs<10thenb$="0"+b$
- 320 printtab(7)hi$(2,x)tab(28)a$":"b$:next
- 330 printtab(7)"[158]press[160]any[160]key[160]to[160]continue"
- 340 gosub2180
- 350 print"[154][147]"tab(10)"@aaaaaaaaaaaaaaaab"
- 360 printtab(10)"c[146][158]the[160]14-15[160]puzzled[146] "
- 370 printtab(10)"effffffffffffffffg[146] "
- 380 printtab(11)" "
- 390 print""tab(8)"@aaaaaaaaaaaaaaaaaaaab"
- 400 printtab(8)"c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 410 printtab(8)"c[146][153][160]"q$(1)"[160][160][160][160]d[146] "
- 420 printtab(8)"c[146][153][160]"q$(2)"[160][160]d[146] "
- 430 printtab(8)"c[146][153][160]"q$(3)"[160][160][160]d[146] "
- 440 printtab(8)"c[146][153][160]"q$(4)"[160][160]d[146] "
- 450 printtab(8)"c[146][153][160]"q$(5)"[160][160][160][160]d[146] "
- 460 printtab(8)"c[146][153][160]"q$(6)"[160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 470 printtab(8)"c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 480 printtab(8)"effffffffffffffffffffg[146] "
- 490 printtab(9)" "
- 500 print""tab(8)"@aaaaaaaaaaaaaaaaaaaab"
- 510 printtab(8)"c[146][158][160][160][160]by[160]brian[160]boese[160][160][160]d[146] "
- 520 printtab(8)"c[146][158][160][160](c)1991[160]softdisk[160][160]d[146] "
- 530 printtab(8)"effffffffffffffffffffg[146] "
- 540 printtab(9)" ":a=1
- 550 b$=chr$(a+48)
- 560 print""tab(10);:forx=1toa:print"";:next:printq$(a)
- 570 gosub2180
- 580 if(z$<>""andz$<>"[145]"andz$<>chr$(13))and(z$<"1"orz$>"6")then560
- 590 ifz$=chr$(13)then650
- 600 ifz$>"0"andz$<"7"thenb$=z$:goto650
- 610 print"[153]"tab(10);:forx=1toa:print"";:next:printq$(a)
- 620 ifz$=""thena=a+1:ifa=7thena=1
- 630 ifz$="[145]"thena=a-1:ifa=0thena=6
- 640 goto550
- 650 ifb$="6"then3000
- 660 ifb$="5"thengosub1690:goto190
- 670 forx=1to13:gd(x)=x:next:gd(14)=15:gd(15)=14:gd(16)=0:ps=16:mv=0
- 680 ifb$<>"2"then700
- 690 forx=2to16:gd(x)=17-x:next:gd(1)=0:ps=1:mv=0
- 700 ifb$<>"3"then740
- 710 ps=1:forx=16to2step-1:q=int(rnd(0)*x+1):z=gd(x):gd(x)=gd(q):gd(q)=z
- 720 ifgd(x)=0thenps=x
- 730 next
- 740 print"[154][147]"tab(10)"@aaaaaaaaaaaaaaaab"
- 750 printtab(10)"c[146][158]the[160]14-15[160]puzzled[146] "
- 760 printtab(10)"effffffffffffffffg[146] "
- 770 printtab(11)" "
- 780 printtab(12)"@aaaaaaaaaaaab"
- 790 forx=1to8:printtab(12)"c[146][160][160][160][160][160][160][160][160][160][160][160][160]d[146] ":next
- 800 printtab(12)"effffffffffffg[146] ":printtab(13)" "
- 810 print""tab(8)"@aaaaaaaaaaaaaaaaaaaab"
- 820 printtab(8)"c[146][158][160]return[160]-[160]timer[160]off[160]d[146] "
- 830 printtab(8)"c[146][158][160][160]q[160]-[160]quit[160]to[160]menu[160][160]d[146] "
- 840 printtab(8)"effffffffffffffffffffg[146] "
- 850 printtab(9)" [155]"
- 860 forx=1to16:gosub1670:next
- 870 ifb$="4"thengosub1590:goto190
- 880 print"[156]"tab(29)"@aaaaaaab"
- 890 printtab(29)"c[146][159][160]00:00[160][156]d[146] [156]":printtab(29)"c[146][159][160][160][160][160]0[160][160][156]d[146] [156]"
- 900 printtab(29)"efffffffg[146] ":printtab(30)" [155]"
- 910 sys49152,31,11,3,"##:##"
- 920 gosub1260:ifb$<>"2"ort<15then190
- 930 m=peek(49160):m=int(m/16)*10+(mand15):s=peek(49159):s=int(s/16)*10+(sand15)
- 940 tm=64*m+s:if(tm>hi(2,5)andmv>hi(1,5))or(peek(49161)>0)then190
- 950 print"[154][147]"tab(7)"@aaaaaaaaaaaaaaaaaaaaaab"
- 960 printtab(7)"c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 970 printtab(7)"c[146][159][160][160]you[160]made[160]the[160]high[160][160][160]d[146] "
- 980 printtab(7)"c[146][159][160][160]score[160]list![160]enter[160][160][160]d[146] "
- 990 printtab(7)"c[146][159][160][160]your[160]name:[160][160][160][160][160][160][160][160][160][160]d[146] "
- 1000 printtab(7)"c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 1010 printtab(7)"c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 1020 printtab(7)"c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 1030 printtab(7)"effffffffffffffffffffffg[146] "
- 1040 printtab(8)" "
- 1050 print"[145][145][145][145][156]"tab(9)"[160][146][157]";:a$="":ln=0
- 1060 gosub2180:if(z$>="a"andz$<="z")or(z$>="0"andz$<="9")then1080
- 1070 ifz$<>" "andz$<>chr$(13)andz$<>chr$(20)then1060
- 1080 ifz$=" "thenz$="[160]"
- 1090 ifz$=chr$(13)then1140
- 1100 if(z$=chr$(20))and(ln>0)thena$=left$(a$,ln-1):print"[157][160][146][160][157][157]";
- 1110 if(z$=chr$(20))and(ln>0)thenln=ln-1:goto1060
- 1120 if(ln<20)and(z$<>chr$(20))thena$=a$+z$:printz$"[160][146][157]";:ln=ln+1
- 1130 goto1060
- 1140 ps=6
- 1150 ps=ps-1:iftm>hi(2,ps)then1180
- 1160 hi(2,ps+1)=hi(2,ps):hi$(2,ps+1)=hi$(2,ps):hi(2,ps)=tm:hi$(2,ps)=a$
- 1170 ifps>1then1150
- 1180 ps=6
- 1190 ps=ps-1:ifmv>hi(1,ps)then1220
- 1200 hi(1,ps+1)=hi(1,ps):hi$(1,ps+1)=hi$(1,ps):hi(1,ps)=mv:hi$(1,ps)=a$
- 1210 ifps>1then1190
- 1220 open1,dv,2:close1:q=st:ifq<>0then1250
- 1230 open15,dv,15,"s0:14-15.hi":close15:open1,dv,2,"14-15.hi,s,w"
- 1240 forx=1to2:fory=1to5:print#1,hi$(x,y):print#1,hi(x,y):next:next:close1
- 1250 goto190
- 1260 t=1:lw=gd(1):forx=1to16:ifgd(x)>lwthent=t+1:lw=lw+1
- 1270 next:ift<15then1360
- 1280 sys49155
- 1290 print""tab(11)"[156]@aaaaaaaaaaaaaaab"
- 1300 printtab(11)"[156]c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d"
- 1310 printtab(11)"[156]c[146][159][160][160]you[160]got[160]it![160][160][156]d"
- 1320 printtab(11)"[156]c[146][159][160]press[160]any[160]key[160][156]d"
- 1330 printtab(11)"[156]c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d"
- 1340 printtab(11)"[156]efffffffffffffffg"
- 1350 gosub2180:return
- 1360 gosub2180:a$=z$
- 1370 ifa$<>chr$(13)then1400
- 1380 sys49155:poke49161,1:print""tab(30)"[160]timer[160][157][157][157][157][157][157][157][160][160]off[160][160]"
- 1390 b$="4"
- 1400 ifa$="q"thensys49155:return
- 1410 gosub1430
- 1420 goto1260
- 1430 q=0:if(a$<>"")or(ps<5)then1460
- 1440 gd(ps)=gd(ps-4):gd(ps-4)=0:ps=ps-4:q=-1
- 1450 x=ps:gosub1670:x=ps+4:gosub1670:goto1550
- 1460 if(a$<>"[145]")or(ps>12)then1490
- 1470 gd(ps)=gd(ps+4):gd(ps+4)=0:ps=ps+4:q=-1
- 1480 x=ps:gosub1670:x=ps-4:gosub1670:goto1550
- 1490 if(a$<>"")or((psand3)=1)then1520
- 1500 gd(ps)=gd(ps-1):gd(ps-1)=0:ps=ps-1:q=-1
- 1510 x=ps:gosub1670:x=ps+1:gosub1670:goto1550
- 1520 if(a$<>"[157]")or((psand3)=0)then1550
- 1530 gd(ps)=gd(ps+1):gd(ps+1)=0:ps=ps+1:q=-1
- 1540 x=ps:gosub1670:x=ps-1:gosub1670
- 1550 ifqthenmv=mv+1
- 1560 ifb$="4"then1580
- 1570 mv$=mid$(str$(mv),2):print"[159]"tab(35-len(mv$))mv$"[155]"
- 1580 return
- 1590 forz=1to20:a$=mid$(s$,z,1):gosub1430
- 1600 forx=1to400:next:next:forx=1to2000:next
- 1610 print""tab(11)"[156]@aaaaaaaaaaaaaaab"
- 1620 printtab(11)"[156]c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d"
- 1630 printtab(11)"[156]c[146][159][160]press[160]any[160]key[160][156]d"
- 1640 printtab(11)"[156]c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d"
- 1650 printtab(11)"[156]efffffffffffffffg"
- 1660 gosub2180:return
- 1670 print"":fora=0toint((x-1)/4):print"";:next:print"";
- 1680 fora=0tox-4*int((x-1)/4):print"";:next:printn$(gd(x)):return
- 1690 print"[154][147]@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab"
- 1700 print"c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 1710 print"c[146][156][160][160][160][160][160][160][160][160]the[160]14-15[160]puzzle[160][160][160][160][160][160][160][160][160]d[146] "
- 1720 print"c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 1730 print"c[146][159][160]this[160]game[160]is[160]based[160]on[160]the[160][160][160][160][160][160][160]d[146] "
- 1740 print"c[146][159][160]original[160]14-15[160]puzzle[160]invented[160][160]d[146] "
- 1750 print"c[146][159][160]by[160]sam[160]loyd[160]over[160]100[160]years[160]ago.[160]d[146] "
- 1760 print"c[146][159][160]the[160]object[160]is[160]to[160]place[160]all[160]of[160][160][160]d[146] "
- 1770 print"c[146][159][160]the[160]tiles[160]into[160]numerical[160]order[160][160]d[146] "
- 1780 print"c[146][159][160]from[160]1[160]to[160]15.[160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 1790 print"c[146][159][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 1800 print"c[146][159][160]the[160]only[160]difference[160]between[160][160][160][160][160]d[146] "
- 1810 print"c[146][159][160]this[160]puzzle[160]and[160]the[160]original[160][160][160][160]d[146] "
- 1820 print"c[146][159][160]is[160]that[160]the[160]space[160]does[160]not[160][160][160][160][160][160]d[146] "
- 1830 print"c[146][159][160]count[160]and[160]may[160]be[160]placed[160][160][160][160][160][160][160][160][160]d[146] "
- 1840 print"c[146][159][160]anywhere[160]as[160]long[160]as[160]all[160]of[160]the[160][160]d[146] "
- 1850 print"c[146][159][160]other[160]tiles[160]are[160]in[160]numerical[160][160][160][160]d[146] "
- 1860 print"c[146][159][160]order.[160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 1870 print"c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 1880 print"c[146][158][160][160][160][160]press[160]any[160]key[160]to[160]continue[160][160][160][160]d[146] "
- 1890 print"c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 1900 print"efffffffffffffffffffffffffffffffffg[146] "
- 1910 print"[146] "
- 1920 gosub2180
- 1930 print"[154][147]@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaab"
- 1940 print"c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 1950 print"c[146][156][160][160][160][160][160][160][160][160]the[160]14-15[160]puzzle[160][160][160][160][160][160][160][160][160]d[146] "
- 1960 print"c[146][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 1970 print"c[146][159][160]this[160]program[160]also[160]has[160]a[160]reverse[160]d[146] "
- 1980 print"c[146][159][160]puzzle,[160]where[160]all[160]of[160]the[160]tiles[160][160]d[146] "
- 1990 print"c[146][159][160]start[160]in[160]reverse[160]order.[160]the[160][160][160][160][160]d[146] "
- 2000 print"c[146][159][160]best[160]5[160]times[160]and[160]scores[160]are[160][160][160][160][160]d[146] "
- 2010 print"c[146][159][160]saved[160]for[160]this[160]puzzle.[160]there[160]is[160]d[146] "
- 2020 print"c[146][159][160]also[160]a[160]random[160]start[160]available[160][160][160]d[146] "
- 2030 print"c[146][159][160]so[160]that[160]you[160]can[160]still[160]have[160]a[160][160][160][160]d[146] "
- 2040 print"c[146][159][160]challenge[160]when[160]you[160]have[160]solved[160][160]d[146] "
- 2050 print"c[146][159][160]both[160]puzzles.[160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 2060 print"c[146][159][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 2070 print"c[146][159][160]to[160]play,[160]a[160]joystick[160]in[160]port[160]two[160]d[146] "
- 2080 print"c[146][159][160]or[160]the[160]cursor[160]keys[160]are[160]used[160]to[160][160]d[146] "
- 2090 print"c[146][159][160]push[160]tiles[160]into[160]the[160]empty[160][160][160][160][160][160][160]d[146] "
- 2100 print"c[146][159][160]space.[160]fire[160]button[160]or[160]return[160][160][160][160]d[146] "
- 2110 print"c[146][159][160]turns[160]off[160]the[160]timer.[160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 2120 print"c[146][159][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 2130 print"c[146][158][160][160][160][160]press[160]any[160]key[160]to[160]continue[160][160][160][160]d[146] "
- 2140 print"c[146][159][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]d[146] "
- 2150 print"efffffffffffffffffffffffffffffffffg[146] "
- 2160 print"[146] "
- 2170 gosub2180:return
- 2180 js=peek(56320)and31:getz$:ifjs=31andz$=""then2180
- 2190 ifjs=15thenz$=chr$(13)
- 2200 ifjs=29thenz$=""
- 2210 ifjs=30thenz$="[145]"
- 2220 ifjs=23thenz$=""
- 2230 ifjs=27thenz$="[157]"
- 2240 return
- 3000 print"[147]":poke648,4:print"[147]":poke56576,(peek(56576)and252)or3:poke53272,21
- 3010 open15,8,15,"r0:hello connect=hello connect":input#15,er:close15
- 3020 ifer<>63thenend
- 3030 print"[147][144]load"chr$(34)"hello connect"chr$(34)",8"
- 3040 print"run"
- 3050 poke631,13:poke632,13:poke198,2:end
- 10000 open15,8,15,"s0:14-15":close15:save"14-15",8:end
-