home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magic Disk 64
/
Magic_Disk_64_88-07_1988_-_de_Side_A.d64
/
m6
(
.txt
)
< prev
Wrap
Commodore BASIC
|
2023-02-26
|
9KB
|
290 lines
0 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
1 goto10
3 @p:print"[147]";:poke53272,21:list1800-1997
5 @l:print"[147]";:poke53272,21:list10000-
10 :poke56,96:clr:goto100:rem poke50953,6*16:poke51254,6*16
20 sys49152:inputa$:poke150,128:poke146,1:close1:open1,4:print#1,chr$(8);
25 sys49152+36,0:end
100 v=53248:s=54272:jo=v-1:poke659,1:poke56325,64:ma=49152
105 dq$=chr$(27)+chr$(42)+chr$(0)+chr$(64)+chr$(1):se=1:rem printdata for p6
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
113 forj=1to20:reado$(j):ifo$(j)<>"***"thennext
115 rn=i-1:sysma
120 gosub999:pokev,50:pokev+1,50:lp=1:lo=0:e=0:ls=1
130 rem close1:open1,8,15,"m-w"+chr$(7)+chr$(28)+chr$(1)+chr$(15):close1
200 poke659,0:la=0:e4=e2:poke53240,46
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)<220thensysma+24
1001 print"[147][142][152] ";:pokev,60:pokev+1,70
1002 print" ";
1003 print" ";
1004 print" [144] [152] ";:pokev+16,0
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,4: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,4:print
1050 next:print"":poke53265,27
1060 ifpeek(789)>220thensysma+21:poke53240,46
1070 return
1200 rem ---- col a,b--
1210 forc=s+atos+b:pokec,1:next:return
1300 rem ---- load i,e---
1304 ifi=10then2500
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,46: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"thenba=1:gosub1900
1785 ifpeek(56320)=127andpeek(56321)=255andq$<>" "then1770
1790 sysma+21:goto1727
1800 rem --- printer ---
1805 e3=e:ba=0
1810 sysma+24:gosub1900:goto1860: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:poke53240,46
1870 goto1330
1900 j2=18:ifba=1thenj2=24
1910 forj=0toj2
1920 close1:open1,4,se:fork=1to6:print#1,chr$(x(k));:next
1925 poke150,gb:poke146,gc
1930 sysma+36,j:fork=1to3:print#1,chr$(y(k));:next
1940 next:close1:return
1950 rem --- iectest ---
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,3:[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]
2500 [143] --- options ---
2505 [151]214,16:[153]:[153][163]33)"poke (NULL)(NULL) "
2510 [151]214,4:[153]
2520 [129]j[178]0[164]10:[153]" ":[130]
2530 [153]" (NULL)(NULL)(NULL)right$(NULL)(NULL)(NULL)
2540 forj=1to10:ifo$(j)="***"then2570
2543 ifj=1thenprint"[144]";:goto2547
2545 print"";
2547 print""o$(j):next
2570 :
2600 y=abs(int((peek(v)-24)/8+.5)+(33and(peek(v+16)and1)=1))
2610 x=int(abs(peek(v+1)-62)/8+.5)
2620 if(peek(jo)and16)=16then2570
2630 poke214,4:print
2640 ify>9andy<16thenifx>19then120
2645 ifx>14andx<18thenify>33andy<39then2695
2650 print"
2660 [129]j[178]1[164]10:[139]o$(j)[178]"***"[167]2690
2670 [139][181](x[171]6)[173]2[179][177]j[167][153]"";:[137]2680
2675 [153]"stop";:ls[178]j
2680 [153]""o$(j):[130]
2690 [137]2570
2695 [145]ls[141]2700,2900,3000
2699 [137]120
2700 [143] --- printopt ---
2710 [151]53281,12:[153]"loadstop str$(NULL)(NULL)len(NULL)val(NULL)atn(NULL)(NULL)atn(NULL)(NULL)(NULL)(NULL)chr$":[151]198,0
2720 [153]"str$efinieren (NULL)ie hier bitte die peekefehle f@r right$hren str$rucker>
2730 print"[144][199]rafikmodus ein> ";:close1:open1,0:forj=1to6:gosub2891:x(j)=e9:next
2740 close1:print
2750 print"[144][218]eilenabstand> ";:close1:open1,0:forj=1to3:gosub2891:y(j)=e9:next
2760 close1:print
2770 print"[144][211]ekund;radresse> ";:close1:open1,0:gosub2891:se=e9
2800 print:print"[144][205]u[219] [194]it 7 bei [199]rafikdaten immer gesetzt sein? (j/n)";
2805 pokev,110:pokev+1,154:poke198,0
2810 geta$:ifa$=""then2810
2820 ifa$<>"j"thenifa$<>"n"then2810
2830 b$="[206]ein":gb=0:ifa$="j"thengb=128:b$="[202]a"
2840 poke150,gb:print"[157][157][157][157][157]"b$" "
2850 print"[144][194]itreihenfolge (1=0-7/2=7-0)? (1/2)
2855 [151]v,45:[151]v[170]1,174:[151]198,0:[151]v[170]16,1
2860 [161]a$:[139]a$[178]""[167]2860
2870 [139]a$[179][177]"1"[167][139]a$[179][177]"2"[167]2860
2880 gc[178]1:[139]a$[178]"2"[167]gc[178]0
2890 [151]146,gc:[142]
2891 [151]198,0:[151]659,1:x[178][194](214)[172]8[170]60:y[178][194](211)[172]8[170]36:[151]v[170]16,0
2892 [139]y[177]255[167]y[178]y[171]255:[151]v[170]16,1
2893 [151]v,y:[151]v[170]1,x
2895 [153]"00 cmdcmdcmdcmd";:[132]1,e$:[139][195](e$)[178]0[167]2890
2896 [139][198]([200](e$,1))[179]48[176][198]([200](e$,1))[177]57[167]2890
2897 [139][197](e$)[177]255[176][197](e$)[179]0[167]2890
2899 e9[178][197](e$):[142]
2900 [143] --- _speed ---
2910 [151]53281,12:[153]"loadstop (NULL)(NULL)valvalstr$(NULL)val(NULL)sqr
2920 poke659,1:poke198,0
2930 print"[144][195]ursorpfeilgeschwindigkeit (1-100)> ";:close1:open1,0
2940 gosub2891:ife9>100ore9=0thengosub2890
2950 poke56325,((100-e9)/1.5)+10:return
3000 rem --- dir ---
3010 close1:sysma+39
3020 if(peek(56320)and16)=16thenifpeek(203)=64then3020
3099 return
4000 rem --- errors on iec ---
4005 forj=240to230:pokej,peek(j)or128:next
4010 print"":forj=1to3:print
4020 print" ";:next:print"[145][145]"
4050 oniegoto4100
4060 print" [196]er [196]rucker will nicht drucken ![145][145][145]";
4070 goto4150
4100 print" [215]o ist denn das [204]aufwerk ? [145][145][145]";
4150 forj=0to1000:next:return
10000 data"[200]allo",4
10001 data"[200]ardware",12
10002 data"[211]oftware",20
10003 data"[194]astelware",9
10004 data"[200]ack-[205]eck",8
10005 data"[213]tilities",19
10006 data"[205]essebericht",4
10007 data"[199]ames",7
10008 data"[201]ntern",21
10009 data"[214]orschau",2
10010 data"[207]ptions",1
10011 data"[199]ame [205]en@",1
10100 data***,0
10110 data"[198]ast [196]isk",fast disk,"[211]olid [201]",solid i
10120 data"[200]ot [198]oot",hot foot
10130 data"[211]tarfighter",starfighter,"[207]mega [215]riter",omega writer
10150 data"[196]isk [211]tar 64",disk dtar 64,"[199]raph-[195]hanger",graph-changer
10155 data"[203]oala [197]ntpacker",koala entpacker
10160 data"[196]emo",alf's demo*
10200 data***,***
10300 data"[196]ruckeranpassung","[208]feilgeschwindigkeit"
10310 data"[196]irectory
10350 [131]***