home *** CD-ROM | disk | FTP | other *** search
/ Magic Disk 64 / Magic_Disk_64_88-07_1988_-_de_Side_A.d64 / m6 (.txt) < prev   
Commodore BASIC  |  2023-02-26  |  9KB  |  290 lines

  1. 0 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  2. 1 goto10
  3. 3 @p:print"[147]";:poke53272,21:list1800-1997
  4. 5 @l:print"[147]";:poke53272,21:list10000-
  5. 10 :poke56,96:clr:goto100:rem poke50953,6*16:poke51254,6*16
  6. 20 sys49152:inputa$:poke150,128:poke146,1:close1:open1,4:print#1,chr$(8);
  7. 25 sys49152+36,0:end
  8. 100 v=53248:s=54272:jo=v-1:poke659,1:poke56325,64:ma=49152
  9. 105 dq$=chr$(27)+chr$(42)+chr$(0)+chr$(64)+chr$(1):se=1:rem  printdata for p6
  10. 110 dima$(20),a(20),b(20),c(20):fori=0to20:reada$(i),a(i):ifa$(i)<>"***"thennext
  11. 112 forj=1to20:readb$(j),b2$(j):ifb$(j)<>"***"thennext
  12. 113 forj=1to20:reado$(j):ifo$(j)<>"***"thennext
  13. 115 rn=i-1:sysma
  14. 120 gosub999:pokev,50:pokev+1,50:lp=1:lo=0:e=0:ls=1
  15. 130 rem close1:open1,8,15,"m-w"+chr$(7)+chr$(28)+chr$(1)+chr$(15):close1
  16. 200 poke659,0:la=0:e4=e2:poke53240,46
  17. 205 if(peek(jo)and16)=16then205
  18. 210 y=abs(int((peek(v)-24)/8+.5)+(33and(peek(v+16)and1)=1))
  19. 215 x=int(abs(peek(v+1)-62)/8+.5)
  20. 217 rem print""x,y"[157] "
  21. 220 onlpgoto300,230
  22. 230 ifx<19orx>21then200
  23. 240 ify>1andy<9thena=1906:b=1910:gosub1200:goto1800
  24. 245 ify>9andy<16then120
  25. 250 ify>18andy<22thenpokes+1923,1:e2=-1:goto1725
  26. 255 ify>21andy<26thenpokes+1927,1:e2=1:goto1725
  27. 260 ify>28andy<34thenpokes+1933,1:pokes+1934,1:goto1600
  28. 270 goto200
  29. 300 ifx>14andx<18thenify>33andy<39thensys64738
  30. 305 fori=0torn
  31. 310 ifb(i)<>xthennext:goto360
  32. 320 ifc(i)<20andy>20orc(i)>20andy<20thennext:goto360
  33. 330 poke214,b(i):print:print"[144]"tab(c(i))a$(i)
  34. 340 e=1:e3=1:e2=1
  35. 350 goto1300
  36. 360 goto200
  37. 998 :end
  38. 999 poke53265,peek(53265)and239
  39. 1000 poke53280,12:poke53281,15:sysma+18:ifpeek(789)<220thensysma+24
  40. 1001 print"[147][142][152]                                        ";:pokev,60:pokev+1,70
  41. 1002 print"                                        ";
  42. 1003 print"                                        ";
  43. 1004 print"      [144]                              [152]    ";:pokev+16,0
  44. 1005 print"     [146]                              [144] [152]    ";
  45. 1006 fori=6to14:print"     [146]                              [144] [152]    ";:next
  46. 1015 print"     [146]                              [144]     [152]";
  47. 1016 print"[152]     [146]                           [152][164][144]       [152]";
  48. 1017 print"     [144][146]                           [152][165][151][162][162][162][162][144]   [152]";
  49. 1018 print"                                [146][151] [197][216][201][212][146] [144][152]  ";
  50. 1019 print"                                [146] [151][162][162][162][162][144][146] [152]  ";:gosub1020:goto1030
  51. 1020 print"[152]                                        ";
  52. 1021 print" [144]                                      [152] ";
  53. 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] ";
  54. 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] ";
  55. 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]  ";
  56. 1025 print"[152]                                       ";
  57. 1026 poke53223,160:pokes+2023,12
  58. 1027 fork=217to240:pokek,peek(k)or128:next:return
  59. 1030 ifr%=1thenprint"";:poke2023,160:return
  60. 1035 x=7:poke214,4:print:fork=0torn:poke211,x:print""a$(k):print
  61. 1040 b(k)=peek(214)-3:c(k)=x:ifk=int(rn/2)thenx=20:poke214,4:print
  62. 1050 next:print"":poke53265,27
  63. 1060 ifpeek(789)>220thensysma+21:poke53240,46
  64. 1070 return
  65. 1200 rem  ---- col a,b--
  66. 1210 forc=s+atos+b:pokec,1:next:return
  67. 1300 rem  ---- load i,e---
  68. 1304 ifi=10then2500
  69. 1305 ifi=11then2200
  70. 1307 e$=right$(str$(i+1),len(str$(i+1))-1)+".":lp=2
  71. 1308 e$=e$+right$(str$(e),len(str$(e))-1)
  72. 1309 ife<>1ore2<1then1325
  73. 1310 ife=1thenife2>0thenclose2:close1:open1,8,15:open2,8,2,e$+",p,r"
  74. 1311 input#1,a:close2:close1:ifa=62thengosub2000:goto1380
  75. 1320 ifa>19then120
  76. 1325 lp=2:print"[144][147]";:goto1700
  77. 1330 print"";:poke53280,12:poke53281,15:e=e3
  78. 1335 gosub1020:poke53265,27:goto1360
  79. 1340 :
  80. 1350 poke214,b(i):print:print""tab(c(i))a$(i)
  81. 1360 goto200
  82. 1370 ifla=1thenlp=1:gosub999:e=0:goto200
  83. 1375 goto1300
  84. 1380 ife2=0thene2=1
  85. 1385 lp=1:goto1340
  86. 1400 rem --- inc/dec page ---
  87. 1405 ife2=0thene2=1
  88. 1410 ife=1ande2=-1thenla=1:return
  89. 1420 ife=a(i)ande2=1thenla=1:return
  90. 1430 e=e+e2:return
  91. 1500 rem --- print e/set counter e ---
  92. 1510 poke214,21:print:c$="":ife<10thenc$="0"
  93. 1515 ife=10thenc$="10":goto1530
  94. 1520 c$=c$+right$(str$(e),len(str$(e-1))-1)
  95. 1530 print"[151]"tab(34)c$:return
  96. 1600 rem --- fforward i/e ---
  97. 1610 poke659,1:if(peek(v+16)and1)=1then1630
  98. 1620 forj=peek(v)to255:pokev,j:aw=((NULL)):next:pokev,0:pokev+16,peek(v+16)or1
  99. 1630 forj=peek(v)to56:pokev,j:aw=((NULL)):next
  100. 1640 forj=peek(v+1)to230:pokev+1,j:aw=sqr(((NULL))):next
  101. 1650 if(peek(jo)and16)=0then1680
  102. 1660 if(peek(jo)and4)=0thene=e+(e>1):gosub1500
  103. 1670 if(peek(jo)and8)=0thene=e-(e<a(i)):gosub1500
  104. 1675 e2=sgn(e-e3):goto1650
  105. 1680 lo=0:goto1700
  106. 1700 rem --- load + show i,e ---
  107. 1703 la=0
  108. 1705 ifla=1then1740
  109. 1708 sysma:sysma+9:sysma+33,i+1,e,6*4096:goto1727
  110. 1710 poke53265,peek(53265)or16:sysma+9:sysma+33,i+1,e,6*4096
  111. 1720 sysma+24:sysma+21:poke53240,46:pokev,220:pokev+1,228
  112. 1724 goto200
  113. 1725 ife4<>e2thene4=e2:gosub1400:gosub1400:goto1705
  114. 1727 poke53265,peek(53265)and239:sysma+18:poke53281,0:print"[144][147]";:poke53281,15
  115. 1728 ifla=0thensysma+15:sysma+12:qq=peek(781):ifqq>1thensysma+24:pokev,0:goto1750
  116. 1729 pokev,222:pokev+1,230:pokev+16,0
  117. 1730 print"":gosub1020:gosub1500:poke53265,peek(53265)or16
  118. 1735 gosub1400:ifla<>1then1710
  119. 1740 pokev+16,0:pokev,138:pokev+1,230:goto200
  120. 1750 poke53265,peek(53265)or16:gosub1400:ifla=1thensysma+6:goto120
  121. 1760 sysma+9:sysma+33,i+1,e,6*4096
  122. 1765 ifqq<>2thensysma+6:goto1790
  123. 1770 getq$:ifq$=""thenifpeek(56320)=127orpeek(56321)=255then1770
  124. 1780 ifq$="d"thenba=1:gosub1900
  125. 1785 ifpeek(56320)=127andpeek(56321)=255andq$<>" "then1770
  126. 1790 sysma+21:goto1727
  127. 1800 rem --- printer ---
  128. 1805 e3=e:ba=0
  129. 1810 sysma+24:gosub1900:goto1860:close1:open1,4:cmd1
  130. 1820 a$="(magic disk 64: ":b$=" seite"+str$(e)+")"
  131. 1830 z=(39-len(a$)-len(a$(i))-len(b$))/2
  132. 1835 c$="":forj=1tolen(a$(i)):c$=c$+chr$(asc(mid$(a$(i),j,1))and127):next
  133. 1840 forj=1toz:a$=a$+" ":next:a$=a$+c$:forj=1toz:a$=a$+" ":next
  134. 1850 a$=a$+b$:printa$
  135. 1860 sys43957:close1:sysma+21:poke53240,46
  136. 1870 goto1330
  137. 1900 j2=18:ifba=1thenj2=24
  138. 1910 forj=0toj2
  139. 1920 close1:open1,4,se:fork=1to6:print#1,chr$(x(k));:next
  140. 1925 poke150,gb:poke146,gc
  141. 1930 sysma+36,j:fork=1to3:print#1,chr$(y(k));:next
  142. 1940 next:close1:return
  143. 1950 rem   --- iectest ---
  144. 2000 rem --- disk wenden ---
  145. 2001 ax=peek(v+1):ay=peek(v):poke659,1
  146. 2003 z=20:a2=a:a=(99-peek(v))/z:b=(227-peek(v+1))/z:c=peek(v):d=peek(v+1)
  147. 2005 forj=1toz:d=d+b:c=c+a:pokev,c:pokev+1,d:next
  148. 2010 print"";:r%=1
  149. 2020 print"[144]             [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
  150. 2025 print"[144]             [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
  151. 2030 print"               [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
  152. 2040 print" [185][175] [196]iskette[144]   [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
  153. 2050 print" [161][182] wenden ![144]  [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
  154. 2060 print"             [157][157][157][157][157][157][157][157][157][157][157][157][157][157][145][145]";
  155. 2070 forqs=0to6
  156. 2080 print"[185][175][157][157][161][182][157][157][145]";:forsq=1to200:next
  157. 2090 print"  [157][157]  [157][157][145]";:forsq=1to200:next
  158. 2100 nextqs:print"[152]                     [146]"
  159. 2102 print"                     [146]"
  160. 2105 print"";:gosub1020:r%=0:print"";
  161. 2110 z=20:a=(ay-peek(v))/z:b=(ax-peek(v+1))/z:c=peek(v):d=peek(v+1)
  162. 2120 forj=1toz:d=d+b:c=c+a:pokev,c:pokev+1,d:next:poke659,0
  163. 2125 pokev,int(peek(v)/2)*2:pokev+1,int(peek(v+1)/2)*2
  164. 2150 a=a2:return
  165. 2200 rem  --- game menu ---
  166. 2205 poke214,16:print:printtab(33)"[151][208][204][193][217]
  167. 2210 [151]214,3:[153]
  168. 2220 [129]j[178]0[164]11:[153]"                           ":[130]
  169. 2230 [153]"chr$atn(NULL)val (NULL)val(NULL)sqr
  170. 2240 forj=1to10:ifb$(j)="***"then2270
  171. 2243 if(peek(214)-2)/4=lsthenprint"[144]";:goto2247
  172. 2245 print"";
  173. 2247 print""b$(j):next
  174. 2270 :
  175. 2300 y=abs(int((peek(v)-24)/8+.5)+(33and(peek(v+16)and1)=1))
  176. 2310 x=int(abs(peek(v+1)-62)/8+.5)
  177. 2320 if(peek(jo)and16)=16then2270
  178. 2330 poke214,2:print
  179. 2340 ify>9andy<16thenifx>19then120
  180. 2345 ifx>14andx<18thenify>33andy<39then2395
  181. 2350 print"
  182. 2360 [129]j[178]1[164]10:[139]b$(j)[178]"***"[167]2390
  183. 2370 [139][181](x[171]4)[173]1[179][177]j[167][153]"";:[137]2380
  184. 2375 [153]"stop";:ls[178]j
  185. 2380 [153]""b$(j):[130]
  186. 2390 [137]2270
  187. 2395 [158]ma[170]24:[158]ma[170]3:[151]53272,23
  188. 2397 [153]"loadstop(NULL)oading "b$(ls):[151]v,0
  189. 2400 [151]v[170]21,0:[160]1:[160]2:[159]1,8,15,"i":[159]2,8,2,b2$(ls)[170]",p,r"
  190. 2410 [132]1,a:[139]a[179]19[167]2460
  191. 2420 [153]"peekitte wenden (NULL)ie die str$iskette."
  192. 2450 [151]198,0:[146]198,1:[137]2395
  193. 2460 [153]"listload":[153]"load"[199](34)b2$(ls)[199](34)",8,8":[151]56,160:[156]
  194. 2470 [153]"runonononononononon"
  195. 2480 [151]631,13:[151]632,13:[151]198,2:[128]
  196. 2499 [128]
  197. 2500 [143]   --- options ---
  198. 2505 [151]214,16:[153]:[153][163]33)"poke (NULL)(NULL) "
  199. 2510 [151]214,4:[153]
  200. 2520 [129]j[178]0[164]10:[153]"                           ":[130]
  201. 2530 [153]" (NULL)(NULL)(NULL)right$(NULL)(NULL)(NULL) 
  202. 2540 forj=1to10:ifo$(j)="***"then2570
  203. 2543 ifj=1thenprint"[144]";:goto2547
  204. 2545 print"";
  205. 2547 print""o$(j):next
  206. 2570 :
  207. 2600 y=abs(int((peek(v)-24)/8+.5)+(33and(peek(v+16)and1)=1))
  208. 2610 x=int(abs(peek(v+1)-62)/8+.5)
  209. 2620 if(peek(jo)and16)=16then2570
  210. 2630 poke214,4:print
  211. 2640 ify>9andy<16thenifx>19then120
  212. 2645 ifx>14andx<18thenify>33andy<39then2695
  213. 2650 print"
  214. 2660 [129]j[178]1[164]10:[139]o$(j)[178]"***"[167]2690
  215. 2670 [139][181](x[171]6)[173]2[179][177]j[167][153]"";:[137]2680
  216. 2675 [153]"stop";:ls[178]j
  217. 2680 [153]""o$(j):[130]
  218. 2690 [137]2570
  219. 2695 [145]ls[141]2700,2900,3000
  220. 2699 [137]120
  221. 2700 [143]  --- printopt ---
  222. 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
  223. 2720 [153]"str$efinieren (NULL)ie hier bitte die peekefehle   f@r right$hren str$rucker> 
  224. 2730 print"[144][199]rafikmodus ein> ";:close1:open1,0:forj=1to6:gosub2891:x(j)=e9:next
  225. 2740 close1:print
  226. 2750 print"[144][218]eilenabstand> ";:close1:open1,0:forj=1to3:gosub2891:y(j)=e9:next
  227. 2760 close1:print
  228. 2770 print"[144][211]ekund;radresse> ";:close1:open1,0:gosub2891:se=e9
  229. 2800 print:print"[144][205]u[219] [194]it 7 bei [199]rafikdaten immer gesetzt sein? (j/n)";
  230. 2805 pokev,110:pokev+1,154:poke198,0
  231. 2810 geta$:ifa$=""then2810
  232. 2820 ifa$<>"j"thenifa$<>"n"then2810
  233. 2830 b$="[206]ein":gb=0:ifa$="j"thengb=128:b$="[202]a"
  234. 2840 poke150,gb:print"[157][157][157][157][157]"b$"     "
  235. 2850 print"[144][194]itreihenfolge (1=0-7/2=7-0)? (1/2)
  236. 2855 [151]v,45:[151]v[170]1,174:[151]198,0:[151]v[170]16,1
  237. 2860 [161]a$:[139]a$[178]""[167]2860
  238. 2870 [139]a$[179][177]"1"[167][139]a$[179][177]"2"[167]2860
  239. 2880 gc[178]1:[139]a$[178]"2"[167]gc[178]0
  240. 2890 [151]146,gc:[142]
  241. 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
  242. 2892 [139]y[177]255[167]y[178]y[171]255:[151]v[170]16,1
  243. 2893 [151]v,y:[151]v[170]1,x
  244. 2895 [153]"00  cmdcmdcmdcmd";:[132]1,e$:[139][195](e$)[178]0[167]2890
  245. 2896 [139][198]([200](e$,1))[179]48[176][198]([200](e$,1))[177]57[167]2890
  246. 2897 [139][197](e$)[177]255[176][197](e$)[179]0[167]2890
  247. 2899 e9[178][197](e$):[142]
  248. 2900 [143]  --- _speed ---
  249. 2910 [151]53281,12:[153]"loadstop             (NULL)(NULL)valvalstr$(NULL)val(NULL)sqr
  250. 2920 poke659,1:poke198,0
  251. 2930 print"[144][195]ursorpfeilgeschwindigkeit (1-100)> ";:close1:open1,0
  252. 2940 gosub2891:ife9>100ore9=0thengosub2890
  253. 2950 poke56325,((100-e9)/1.5)+10:return
  254. 3000 rem  --- dir ---
  255. 3010 close1:sysma+39
  256. 3020 if(peek(56320)and16)=16thenifpeek(203)=64then3020
  257. 3099 return
  258. 4000 rem   --- errors on iec ---
  259. 4005 forj=240to230:pokej,peek(j)or128:next
  260. 4010 print"":forj=1to3:print
  261. 4020 print"                                     ";:next:print"[145][145]"
  262. 4050 oniegoto4100
  263. 4060 print"  [196]er [196]rucker will nicht drucken ![145][145][145]";
  264. 4070 goto4150
  265. 4100 print"    [215]o ist denn das [204]aufwerk ?    [145][145][145]";
  266. 4150 forj=0to1000:next:return
  267. 10000 data"[200]allo",4
  268. 10001 data"[200]ardware",12
  269. 10002 data"[211]oftware",20
  270. 10003 data"[194]astelware",9
  271. 10004 data"[200]ack-[205]eck",8
  272. 10005 data"[213]tilities",19
  273. 10006 data"[205]essebericht",4
  274. 10007 data"[199]ames",7
  275. 10008 data"[201]ntern",21
  276. 10009 data"[214]orschau",2
  277. 10010 data"[207]ptions",1
  278. 10011 data"[199]ame [205]en@",1
  279. 10100 data***,0
  280. 10110 data"[198]ast [196]isk",fast disk,"[211]olid [201]",solid i
  281. 10120 data"[200]ot [198]oot",hot foot
  282. 10130 data"[211]tarfighter",starfighter,"[207]mega [215]riter",omega writer
  283. 10150 data"[196]isk [211]tar 64",disk dtar 64,"[199]raph-[195]hanger",graph-changer
  284. 10155 data"[203]oala [197]ntpacker",koala entpacker
  285. 10160 data"[196]emo",alf's demo*
  286. 10200 data***,***
  287. 10300 data"[196]ruckeranpassung","[208]feilgeschwindigkeit"
  288. 10310 data"[196]irectory
  289. 10350 [131]***
  290.