home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 160
/
160.d81
/
b.stamp
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-08-26
|
7KB
|
259 lines
10 poke55,0:poke56,55:clr
20 poke53371,0:x=rnd(-ti)
30 dv=peek(186):ifdv<8thendv=8
40 poke53281,0:poke53280,0:print""
50 gosub60000
60 sys57812"stamp font",dv,0:poke780,0:poke781,0:poke782,56:sys65493
70 sys57812"st.mouse c000",dv,0:poke780,0:poke781,0:poke782,192:sys65493
80 sys57812"stamp sprites",dv,0:poke780,0:poke781,0:poke782,55:sys65493
90 sys57812"stamp random",dv,0:poke780,0:poke781,0:poke782,157:sys65493
100 sys57812"stamp moves",dv,0:poke780,0:poke781,0:poke782,156:sys65493
110 ml=192*256:mv=ml+111:pokemv,158:v=53248:sd=54272:bu=160*256:sp=sd+1024
120 rn=157*256:sm=156*256
122 rem pokesm,200
130 sysml:sysml+18,0,38,0,24
140 sysml+6:pokev+21,0
150 dimx%(13),y%(13),s%(13),d%(13,4),g%(13),en%(13),h%(13),bg(4)
160 goto720
170 :
180 :rem box
190 :
200 poke214,y:print
210 printtab(x)"[155][176]"left$(tp$,xx)"[174]"
220 fori=1toyy:printtab(x)"[171]";:poke646,c:printleft$(bl$,xx)"[155][179]":next
230 printtab(x)"[173]"left$(bt$,xx)"[189]"
240 poke646,c:return
250 :
260 :rem score update
270 :
280 sysml+12,32,21," [157][157][157][157]":printmq
290 sysml+12,32,22," [157][157][157][157]":printbg(md)
300 fori=2to12:if(i=5)or(i=9)then330
310 h=sd+1024+x%(i)+y%(i)*40
320 if(peek(h)and15)<>en%(i)theni=12:next:return
330 next
340 sysml+30,x%(2),x%(2)+14,y%(2),y%(2)+14,255,9
350 sysml+39,64
360 sysml+12,7,10,"[149][217][207][213] [196][201][196] [201][212]!
370 [139]mq[177][178]bg(md)[167]400
380 bg(md)[178]mq:[151]sm,mq
390 [158]ml[170]12,7,11,"verifyatn (NULL)val(NULL) peekval(NULL)(NULL)!
400 ifmd=0thenreturn
410 open15,dv,15,"s0:stamp moves":close15
420 sys57812"stamp moves",dv:poke193,0:poke194,156:poke174,201:poke175,156
430 sys62954
440 sysml+12,7,18,"[208][210][201][206][212] [197][206][212][210][217]
450 [158]ml[170]36,18,160,7:[158]ml[170]36,19,160,7
460 [158]ml[170]12,8,20,"sys(NULL)val(NULL)(NULL)(NULL)"
470 [151]mv[170]1,19
480 [158]ml[170]9
490 [139]l2%[178]0[167]480
500 [139]cr%[178]18[167][141]1970:[137]520
510 [139]cr%[179][177]19[167]480
520 [151]mv[170]1,17:[158]ml[170]42,64
530 [142]
540 :
550 :[143] randomize
560 :
570 [151]176,0:[151]177,157:[151]178,12
580 [158]rn
590 [129]i[178]1[164]12:h%(i)[178][194](rn[170]94[170]i):[130]
600 [142]
610 :
620 :[143] sprite move
630 :
640 [151]v[170]2,x%(kc)[172]8[170]30:[151]v[170]3,y%(kc)[172]8[170]54
650 [151]v[170]4,x%(kc)[172]8[170]54:[151]v[170]5,y%(kc)[172]8[170]54
660 [151]v[170]6,x%(kc)[172]8[170]30:[151]v[170]7,y%(kc)[172]8[170]75
670 [151]v[170]8,x%(kc)[172]8[170]54:[151]v[170]9,y%(kc)[172]8[170]76
680 [142]
690 :
700 :[143] initialize
710 :
720 tp$[178]"======================================="
730 bt$[178]">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
740 bl$[178]"@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@"
750 sp$[178]" "
760 ln$[178]"----------------------------------------------------------------------"
770 kc$[178]"getnewtab(tofncmdcmdcmdcmdcmdspc(thennotstep+cmdcmdcmdcmdcmd-*/^andcmdcmdcmdcmdcmdor>=<sgncmdcmdcmdcmdcmdintabsusrfrepos"
780 bq$[178]"or===^cmdcmdcmdcmdcmd-@@@<cmdcmdcmdcmdcmd-@@@<cmdcmdcmdcmdcmd-@@@<cmdcmdcmdcmdcmd/>>>exp"
790 cr$[178][199](13)
800 k[178]1:[129]j[178]0[164]2:[129]i[178]0[164]3
810 x%(k)[178]i[172]5:y%(k)[178]8[170]j[172]5
820 [158]ml[170]15,1[170]i[170]4[172]j,i[172]5,i[172]5[170]4,8[170]j[172]5,8[170]j[172]5[170]4
830 s%(k)[178]k:k[178]k[170]1
840 [130]:[130]:s%(6)[178]8:s%(8)[178]6:mt%[178]6
850 [158]ml[170]15,13,22,29,7,11
860 [158]ml[170]15,14,31,38,7,11
870 [158]ml[170]15,15,22,29,13,17
880 [158]ml[170]15,16,31,38,13,17
890 [158]ml[170]15,17,33,38,0,0
900 [158]ml[170]15,18,7,11,19,21
910 [158]ml[170]15,19,13,17,19,21
920 [129]i[178]1[164]12:[129]j[178]0[164]3:[135]d%(i,j):[130]:[130]
930 [131]0,0,2,5, 1,0,3,6, 2,0,4,7, 3,0,0,8, 0,1,6,9, 5,2,7,10, 6,3,8,11
940 [131]7,4,0,12, 0,5,10,0, 9,6,11,0, 10,7,12,0, 11,8,0,0
950 [129]i[178]1[164]12:[135]g%(i):[130]
960 [131]2,3,4,5,6,9,7,9,10,11,12,13
970 [129]i[178]1[164]12:[135]en%(i):[130]
980 [131]0,2,3,4,13,6,9,7,5,10,11,12
990 :
1000 :[143] setup sprites
1010 :
1020 [129]i[178]0[164]3:[151]2041[170]i,220[170]i:[151]v[170]40[170]i,8:[130]
1030 [151]v[170]29,224:[151]v[170]23,224:[151]v[170]16,0
1040 [151]v[170]28,0:[151]v[170]27,224
1050 [129]i[178]0[164]2:[151]2045[170]i,13:[151]v[170]44[170]i,6:[130]
1060 [129]i[178]0[164]35:[151]13[172]64[170]i,255:[130]:[129]i[178]0[164]27:[151]13[172]64[170]36[170]i,0:[130]
1070 [129]i[178]0[164]2:[151]v[170]10[170]i[172]2,116[170]38[172]i:[151]v[170]11[170]i[172]2,66:[130]
1080 :
1090 :[143] screen draw
1100 :
1110 [153]"load":md[178]0:[151]53272,31
1120 c[178]6:x[178]0:y[178]0:xx[178]37:yy[178]3:[141]200
1130 [153]""[163]33)"-(NULL)(NULL)right$(NULL)wait<"
1140 [153]""[163]12)"sysor=^or=^or=^or=^or=^
1150 print" [195][193][204][200][207][207][206]'[211] [146][158][173][192][174] [221] [171][192][179][221][221][221][171][177][189] [195][200][193][204][204][197][206][199][197]
1160 [153][163]12)"sys/>exp > / exp/ exp/"
1170 [151]v[170]21,224
1180 c[178]12:x[178]22:y[178]6:xx[178]6:yy[178]3:[141]200
1190 [158]ml[170]12,24,9,"(NULL)atn(NULL)val"
1200 x[178]31:[141]200
1210 [158]ml[170]12,33,9,"[\]^":[143] new
1220 x[178]22:y[178]12:[141]200
1230 [158]ml[170]12,24,15,"lenleft$atn(NULL)
1240 x=31:gosub200
1250 sysml+12,33,15,"[200][197][204][208]
1260 c[178]5:x[178]22:y[178]18:xx[178]15:yy[178]4:[141]200
1270 [158]ml[170]12,25,21,"(NULL)(NULL)(NULL)val(NULL) :"
1280 [158]ml[170]12,25,22,"peekval(NULL)(NULL) :"
1290 c[178]0:x[178]0:y[178]7:xx[178]13:yy[178]13:[141]200
1300 bg(0)[178]200
1310 bg(1)[178][194](sm)
1320 [158]ml[170]12,5,24,"for-lenatn(NULL)'(NULL) lenatn(NULL)left$(NULL)(NULL)(NULL)wait<"
1330 [158]ml[170]12,15,8,bq$
1340 [158]ml[170]12,15,18,bq$
1350 [158]ml[170]12,15,13,kc$
1360 [129]i[178]1[164]12:[158]ml[170]36,i,255,g%(i):[130]
1370 [158]ml[170]36,6,255,0:[143] empty square
1380 [139]md[167]1420
1390 [141]570
1400 [129]i[178]1[164]12:[158]ml[170]45,x%(i),x%(i)[170]4,y%(i),y%(i)[170]4,bu[170]50[172]i:[130]
1410 [129]i[178]1[164]12:[158]ml[170]48,x%(h%(i)),x%(h%(i))[170]4,y%(h%(i)),y%(h%(i))[170]4,bu[170]50[172]i:[130]
1420 [129]i[178]1[164]12:[139]([194](sp[170]x%(i)[170]y%(i)[172]40)[175]15)[178]9[167]kc[178]i
1430 [139]([194](sp[170]x%(i)[170]y%(i)[172]40)[175]15)[178]0[167]mt%[178]i
1440 [130]
1450 [151]mv[170]1,17:mq[178]0:[141]640
1460 [151]v[170]21,255
1470 :
1480 :[143] loop
1490 :
1500 [141]280
1510 [158]ml[170]9
1520 [139]l2%[178]0[167]1510
1530 [139]cr%[178]0[167]1510
1540 [139]cr%[177]12[167]1640
1550 [129]i[178]0[164]3:[139]d%(cr%,i)[178]mt%[167]i[178]3:[130]:[137]1570
1560 [130]:[137]1510
1570 [158]ml[170]45,x%(cr%),x%(cr%)[170]4,y%(cr%),y%(cr%)[170]4,bu
1580 [158]ml[170]48,x%(mt%),x%(mt%)[170]4,y%(mt%),y%(mt%)[170]4,bu
1590 [139]([194](sp[170]x%(cr%)[170]y%(cr%)[172]40)[175]15)[178]9[167]kc[178]mt%:[141]640
1600 mt%[178]cr%
1610 [158]ml[170]30,x%(cr%),x%(cr%)[170]4,y%(cr%),y%(cr%)[170]4,32,0
1620 mq[178]mq[170]1:[151]sm[170]mq,mt%
1630 [137]1500
1640 [151]v[170]21,225
1650 [139]cr%[178]15[167]md[178]1
1652 [139]cr%[178]13[176]cr%[178]14[167]md[178]0
1660 [145]cr%[171]12[137]1410,1290,1290,1670,40000
1670 [158]ml[170]39,64
1680 [151]v[170]21,225:k2[178]kc
1690 [139]h2[167][158]ml[170]42,72:[137]1890
1700 h2[178]1
1710 c[178]5:x[178]22:y[178]6:xx[178]15:yy[178]16:[141]200
1720 [158]ml[170]12,x%(5),y%(5),bq$
1730 [158]ml[170]12,x%(9),y%(9),bq$
1740 c[178]9:x[178]5:y[178]7:xx[178]13:yy[178]13:[141]200
1750 [129]i[178]1[164]12:[158]ml[170]36,i,255,en%(i):[130]
1760 [158]ml[170]12,x%(7),y%(7),kc$
1770 [158]ml[170]12,23,9,"lenlick on a tile
1780 sysml+12,23,10,"to move it into
1790 [158]ml[170]12,23,11,"the empty spot.
1800 sysml+12,23,12,"[217]our goal is
1810 [158]ml[170]12,23,13,"shown at left.
1820 sysml+12,23,15,"[206][197][215] - [210]andom
1830 [158]ml[170]12,23,16," scramble
1840 sysml+12,23,18,"[211][193][205][197] - [210]edo
1850 [158]ml[170]12,23,19," same layout
1860 sysml+12,23,21,"[195][200][193][204] - [211]pecial
1870 [158]ml[170]12,23,22," contest layout
1880 sysml+39,72
1890 kc=7:gosub640:pokev+21,255
1900 sysml+9
1910 ifl2%=0then1900
1920 pokev+21,224:sysml+42,64:pokev+21,255:kc=k2:gosub640
1930 goto1510
1940 :
1950 :rem print entry
1960 :
1970 open4,4,7:close4:ifst<