home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magic Disk 64
/
Magic_Disk_64_88-06_1988_-_de_Side_A.d64
/
m6
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2023-02-26
|
7KB
|
199 lines
10 poke56,96:clr:poke50953,6*16:poke51254,6*16
100 v=53248:s=54272:jo=v-1:poke659,1:poke56325,64:ma=49152
110 dima$(20),a(20),b(20),c(20):fori=0to20:reada$(i),a(i):ifa$(i)<>"***"thennext
112 forj=1to20:readb$(j),b2$(j):ifb$(j)<>"***"thennext
115 rn=i-1:sysma
120 gosub999:pokev,50:pokev+1,50:lp=1:lo=0:e=0:ls=1
130 open1,8,15,"m-w"+chr$(7)+chr$(28)+chr$(1)+chr$(15):close1
200 poke659,0:la=0:e4=e2:ifpeek(789)<200thensysma+24:sysma+21
205 if(peek(jo)and16)=16then205
210 y=abs(int((peek(v)-24)/8+.5)+(33and(peek(v+16)and1)=1))
215 x=int(abs(peek(v+1)-62)/8+.5)
217 rem print""x,y"[157] "
220 onlpgoto300,230
230 ifx<19orx>21then200
240 ify>1andy<9thena=1906:b=1910:gosub1200:goto1800
245 ify>9andy<16then120
250 ify>18andy<22thenpokes+1923,1:e2=-1:goto1725
255 ify>21andy<26thenpokes+1927,1:e2=1:goto1725
260 ify>28andy<34thenpokes+1933,1:pokes+1934,1:goto1600
270 goto200
300 ifx>14andx<18thenify>33andy<39thensys64738
305 fori=0torn
310 ifb(i)<>xthennext:goto360
320 ifc(i)<20andy>20orc(i)>20andy<20thennext:goto360
330 poke214,b(i):print:print"[144]"tab(c(i))a$(i)
340 e=1:e3=1:e2=1
350 goto1300
360 goto200
998 :end
999 poke53265,peek(53265)and239
1000 poke53280,12:poke53281,15:sysma+18:ifpeek(789)>200thensysma+21:poke53240,46
1001 print"[147][142][152] ";:pokev,60:pokev+1,70
1002 print" [144] [152] ";:pokev+16,0
1003 print" [146] [144] [152] ";
1004 print" [146] [144] [152] ";
1005 print" [146] [144] [152] ";
1006 fori=6to14:print" [146] [144] [152] ";:next
1015 print" [146] [144] [152]";
1016 print"[152] [146] [152][164][144] [152]";
1017 print" [144][146] [152][165][151][162][162][162][162][144] [152]";
1018 print" [146][151] [197][216][201][212][146] [144][152] ";
1019 print" [146] [151][162][162][162][162][144][146] [152] ";:gosub1020:goto1030
1020 print"[152] ";
1021 print" [144] [152] ";
1022 print"[146] [156][162][162][162][162][162][162][162][151] [162][162][162][162][162][162] [144] [151] [162][162][162] [162][162][162] [144] [151] [162][162][162][162] [144][176][178][178][174][151] [144] [152] ";
1023 print"[146] [156] [196]ruck [146] [205]en@ [144][146] [151] _ [144][146] [151] [255] [146] [144] [151] _[255] [146] [144][171][151][144][179][151] [144] [152] ";
1024 print"[146] [156][162][162][162][162][162][162][162][146] [162][162][162][162][162][162][144][146] [151][162][162][162][144][146] [151][162][162][162][144][146] [151] [162][162][162][162][146] [144][173][177][177][189][151] [152] ";
1025 print"[152] ";
1026 poke53223,160:pokes+2023,12
1027 fork=217to240:pokek,peek(k)or128:next:return
1030 ifr%=1thenprint"";:poke2023,160:return
1035 x=7:poke214,3:print:fork=0torn:poke211,x:print""a$(k):print
1040 b(k)=peek(214)-3:c(k)=x:ifk=int(rn/2)thenx=20:poke214,3:print
1050 next:print"":poke53265,27:return
1200 rem ---- col a,b--
1210 forc=s+atos+b:pokec,1:next:return
1300 rem ---- load i,e---
1304 ifi=10thenla=0:goto205
1305 ifi=11then2200
1307 e$=right$(str$(i+1),len(str$(i+1))-1)+".":lp=2
1308 e$=e$+right$(str$(e),len(str$(e))-1)
1309 ife<>1ore2<1then1325
1310 ife=1thenife2>0thenclose2:close1:open1,8,15:open2,8,2,e$+",p,r"
1311 input#1,a:close2:close1:ifa=62thengosub2000:goto1380
1320 ifa>19then120
1325 lp=2:print"[144][147]";:goto1700
1330 print"";:poke53280,12:poke53281,15:e=e3
1335 gosub1020:poke53265,27:goto1360
1340 :
1350 poke214,b(i):print:print""tab(c(i))a$(i)
1360 goto200
1370 ifla=1thenlp=1:gosub999:e=0:goto200
1375 goto1300
1380 ife2=0thene2=1
1385 lp=1:goto1340
1400 rem --- inc/dec page ---
1405 ife2=0thene2=1
1410 ife=1ande2=-1thenla=1:return
1420 ife=a(i)ande2=1thenla=1:return
1430 e=e+e2:return
1500 rem --- print e/set counter e ---
1510 poke214,21:print:c$="":ife<10thenc$="0"
1515 ife=10thenc$="10":goto1530
1520 c$=c$+right$(str$(e),len(str$(e-1))-1)
1530 print"[151]"tab(34)c$:return
1600 rem --- fforward i/e ---
1610 poke659,1:if(peek(v+16)and1)=1then1630
1620 forj=peek(v)to255:pokev,j:aw=((NULL)):next:pokev,0:pokev+16,peek(v+16)or1
1630 forj=peek(v)to56:pokev,j:aw=((NULL)):next
1640 forj=peek(v+1)to230:pokev+1,j:aw=sqr(((NULL))):next
1650 if(peek(jo)and16)=0then1680
1660 if(peek(jo)and4)=0thene=e+(e>1):gosub1500
1670 if(peek(jo)and8)=0thene=e-(e<a(i)):gosub1500
1675 e2=sgn(e-e3):goto1650
1680 lo=0:goto1700
1700 rem --- load + show i,e ---
1703 la=0
1705 ifla=1then1740
1708 sysma:sysma+9:sysma+33,i+1,e,6*4096:goto1727
1710 poke53265,peek(53265)or16:sysma+9:sysma+33,i+1,e,6*4096
1720 sysma+24:sysma+21:poke53240,19:pokev,220:pokev+1,228
1724 goto200
1725 ife4<>e2thene4=e2:gosub1400:gosub1400:goto1705
1727 poke53265,peek(53265)and239:sysma+18:poke53281,0:print"[144][147]";:poke53281,15
1728 ifla=0thensysma+15:sysma+12:qq=peek(781):ifqq>1thensysma+24:pokev,0:goto1750
1729 pokev,222:pokev+1,230:pokev+16,0
1730 print"":gosub1020:gosub1500:poke53265,peek(53265)or16
1735 gosub1400:ifla<>1then1710
1740 pokev+16,0:pokev,138:pokev+1,230:goto200
1750 poke53265,peek(53265)or16:gosub1400:ifla=1thensysma+6:goto120
1760 sysma+9:sysma+33,i+1,e,6*4096
1765 ifqq<>2thensysma+6:goto1790
1770 getq$:ifq$=""thenifpeek(56320)=127orpeek(56321)=255then1770
1780 ifq$="d"thensysma+36,24
1785 ifpeek(56320)=127andpeek(56321)=255andq$<>" "then1770
1790 sysma+21:goto1727
1800 rem --- printer ---
1805 e3=e:sysma+24
1810 sysma+36,18:close1:open1,4:cmd1
1820 a$="(magic disk 64: ":b$=" seite"+str$(e)+")"
1830 z=(39-len(a$)-len(a$(i))-len(b$))/2
1835 c$="":forj=1tolen(a$(i)):c$=c$+chr$(asc(mid$(a$(i),j,1))and127):next
1840 forj=1toz:a$=a$+" ":next:a$=a$+c$:forj=1toz:a$=a$+" ":next
1850 a$=a$+b$:printa$
1860 sys43957:close1:sysma+21
1870 goto1330
2000 rem --- disk wenden ---
2001 ax=peek(v+1):ay=peek(v):poke659,1
2003 z=20:a2=a:a=(99-peek(v))/z:b=(227-peek(v+1))/z:c=peek(v):d=peek(v+1)
2005 forj=1toz:d=d+b:c=c+a:pokev,c:pokev+1,d:next
2010 print"";:r%=1
2020 print"[144] [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
2025 print"[144] [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
2030 print" [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
2040 print" [185][175] [196]iskette[144] [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
2050 print" [161][182] wenden ![144] [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
2060 print" [157][157][157][157][157][157][157][157][157][157][157][157][157][157][145][145]";
2070 forqs=0to6
2080 print"[185][175][157][157][161][182][157][157][145]";:forsq=1to200:next
2090 print" [157][157] [157][157][145]";:forsq=1to200:next
2100 nextqs:print"[152] [146]"
2102 print" [146]"
2105 print"";:gosub1020:r%=0:print"";
2110 z=20:a=(ay-peek(v))/z:b=(ax-peek(v+1))/z:c=peek(v):d=peek(v+1)
2120 forj=1toz:d=d+b:c=c+a:pokev,c:pokev+1,d:next:poke659,0
2125 pokev,int(peek(v)/2)*2:pokev+1,int(peek(v+1)/2)*2
2150 a=a2:return
2200 rem --- game menu ---
2205 poke214,16:print:printtab(33)"[151][208][204][193][217]
2210 [151]214,2:[153]
2220 [129]j[178]0[164]11:[153]" ":[130]
2230 [153]"chr$atn(NULL)val (NULL)val(NULL)sqr
2240 forj=1to10:ifb$(j)="***"then2270
2243 if(peek(214)-2)/4=lsthenprint"[144]";:goto2247
2245 print"";
2247 print""b$(j):next
2270 :
2300 y=abs(int((peek(v)-24)/8+.5)+(33and(peek(v+16)and1)=1))
2310 x=int(abs(peek(v+1)-62)/8+.5)
2320 if(peek(jo)and16)=16then2270
2330 poke214,2:print
2340 ify>9andy<16thenifx>19then120
2345 ifx>14andx<18thenify>33andy<39then2395
2350 print"
2360 [129]j[178]1[164]10:[139]b$(j)[178]"***"[167]2390
2370 [139][181](x[171]4)[173]1[179][177]j[167][153]"";:[137]2380
2375 [153]"stop";:ls[178]j
2380 [153]""b$(j):[130]
2390 [137]2270
2395 [158]ma[170]24:[158]ma[170]3:[151]53272,23
2397 [153]"loadstop(NULL)oading "b$(ls):[151]v,0
2400 [151]v[170]21,0:[160]1:[160]2:[159]1,8,15,"i":[159]2,8,2,b2$(ls)[170]",p,r"
2410 [132]1,a:[139]a[179]19[167]2460
2420 [153]"peekitte wenden (NULL)ie die str$iskette."
2450 [151]198,0:[146]198,1:[137]2395
2460 [153]"listload":[153]"load"[199](34)b2$(ls)[199](34)",8,8":[151]56,160:[156]
2470 [153]"runonononononononon"
2480 [151]631,13:[151]632,13:[151]198,2:[128]
2499 [128]
10000 [131]"left$allo",3
10001 [131]"left$ardware",21
10002 [131]"(NULL)oftware",12
10003 [131]"peekastelware",6
10004 [131]"left$ack-(NULL)eck",4
10005 [131]"(NULL)tilities",9
10006 [131]"(NULL)ews'88",5
10007 [131]"chr$ames",9
10008 [131]"right$ntern",15
10009 [131]"(NULL)orschau",3
10010 [131]" ",1
10011 [131]"chr$ame (NULL)en@",1
10100 [131]***,0
10110 [131]"(NULL)feilcursor",pfeilcursor,"(NULL)tar-(NULL)riter",star-writer v2.0
10120 [131]"(NULL)op (NULL)ecret",top secret
10130 [131]"str$onald (NULL)he left$ero",donald the hero,"(NULL)ission valgg",loader
10140 [131]"asclash asclood",flash flood
10150 [131]"str$emo1",demo1,"str$emo2",demo2
10200 [131]***,***