home *** CD-ROM | disk | FTP | other *** search
/ Magic Disk 64 / Magic_Disk_64_87-12_1987_-_de_Side_A.d64 / m6 (.txt) < prev    next >
Commodore BASIC  |  2023-02-26  |  5KB  |  153 lines

  1. 0 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  2. 1 goto10
  3. 2 zpoke53265,27
  4. 3 @p:print"[147]";:poke53272,21:list1800-1997
  5. 4 @m:print"[147]";:poke53272,21:list1700-1790
  6. 10 :poke56,47:clr
  7. 100 v=53248:s=54272:jo=v-1:poke659,1:poke56325,40
  8. 110 dima$(20),a(20),b(20),c(20):fori=0to20:reada$(i),a(i):ifa$(i)<>"***"thennext
  9. 115 rn=i-1:sys14336
  10. 120 poke53272,29:gosub999:pokev,50:pokev+1,50:lp=1:lo=0:e=0
  11. 130 open1,8,15,"m-w"+chr$(7)+chr$(28)+chr$(1)+chr$(15):close1
  12. 200 gosub1500:poke659,0:la=0
  13. 205 if(peek(jo)and16)=16then200
  14. 210 y=abs(int((peek(v)-24)/8+.5)+(33and(peek(v+16)and1)=1))
  15. 215 x=int(abs(peek(v+1)-62)/8+.5)
  16. 217 rem print""x,y"[157] "
  17. 220 onlpgoto300,230
  18. 230 ifx<19orx>21then200
  19. 240 ify>1andy<9thena=1906:b=1910:gosub1200:goto1800
  20. 245 ify>9andy<16then120
  21. 250 ify>18andy<22thenpokes+1923,1:e2=-1:gosub1400:goto1370
  22. 255 ify>21andy<26thenpokes+1927,1:e2=1:gosub1400:goto1370
  23. 260 ify>28andy<34thenpokes+1933,1:pokes+1934,1:goto1600
  24. 270 goto200
  25. 300 ifx>14andx<18thenify>33andy<39thensys64738
  26. 305 fori=0torn
  27. 310 ifb(i)<>xthennext:goto360
  28. 320 ifc(i)<20andy>20orc(i)>20andy<20thennext:goto360
  29. 330 poke214,b(i):print:print""tab(c(i))a$(i)
  30. 340 e=1:e3=1
  31. 350 goto1300
  32. 360 goto200
  33. 998 :end
  34. 999 poke53265,0
  35. 1000 poke53280,12:poke53281,15
  36. 1001 print"[147][142][152]                                        ";
  37. 1002 print"      [144]                              [152]    ";
  38. 1003 print"     [146]                              [144] [152]    ";
  39. 1004 print"     [146]                              [144] [152]    ";
  40. 1005 print"     [146]                              [144] [152]    ";
  41. 1006 fori=6to14:print"     [146]                              [144] [152]    ";:next
  42. 1015 print"     [146]                              [144]     [152]";
  43. 1016 print"[152]     [146]                           [152][164][144]       [152]";
  44. 1017 print"     [144][146]                           [152][165][151][162][162][162][162][144]   [152]";
  45. 1018 print"                                [146][151] [197][216][201][212][146] [144][152]  ";
  46. 1019 print"                                [146] [151][162][162][162][162][144][146] [152]  ";:gosub1020:goto1030
  47. 1020 print"[152]                                        ";
  48. 1021 print" [144]                                      [152] ";
  49. 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] ";
  50. 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] ";
  51. 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]  ";
  52. 1025 print"[152]                                       ";
  53. 1026 poke2023,160:pokes+2023,12
  54. 1027 fork=217to240:pokek,peek(k)or128:next:return
  55. 1030 ifr%=1thenprint"";:poke2023,160:return
  56. 1035 x=7:poke214,4:print:fork=0torn:poke211,x:print"[144]"a$(k):print
  57. 1040 b(k)=peek(214)-3:c(k)=x:ifk=int(rn/2)thenx=20:poke214,4:print
  58. 1050 next:print"":poke53265,27:return
  59. 1200 rem  ---- col a,b--
  60. 1210 forc=s+atos+b:pokec,1:next:return
  61. 1300 rem  ---- load i,e---
  62. 1307 e$=right$(str$(i+1),len(str$(i+1))-1)+".":lp=2
  63. 1308 e$=e$+right$(str$(e),len(str$(e))-1)
  64. 1310 close2:close1:open1,8,15:open2,8,2,e$+",p,r":input#1,a:ifa=62thengosub2000:goto1380
  65. 1312 ifa>19thenclose2:close1:e=e-e2:onlpgoto1340,1330
  66. 1314 get#2,a$:get#2,a$:close2:close1
  67. 1315 a=0:iflen(a$)<>0thena=asc(a$)
  68. 1320 ifa=96thengosub1700:e2=sgn(e2):gosub1400:goto1370
  69. 1325 lp=2:print"[144][147]";:a$=e$:gosub1750
  70. 1330 print"";:poke53280,12:poke53281,15:e=e3
  71. 1335 gosub1020:poke53265,27:goto1360
  72. 1340 :
  73. 1350 poke214,b(i):print:print"[144]"tab(c(i))a$(i)
  74. 1360 goto200
  75. 1370 ifla=1thenlp=1:gosub999:e=0:goto200
  76. 1375 goto1300
  77. 1380 ife2=0thene2=1
  78. 1385 lp=1:goto1340
  79. 1400 rem --- inc/dec page ---
  80. 1405 ife2=0thene2=1
  81. 1410 ife=1ande2=-1thenla=1:return
  82. 1420 ife=a(i)ande2=1thenla=1:return
  83. 1430 e=e+e2:return
  84. 1500 rem --- print e/set counter ---
  85. 1510 poke214,21:print:c$="":ife<10thenc$="0"
  86. 1520 c$=c$+right$(str$(e),len(str$(e))-1)
  87. 1530 print"[151]"tab(34)c$:return
  88. 1600 rem --- fforward i/e ---
  89. 1610 poke659,1:if(peek(v+16)and1)=1then1630
  90. 1620 forj=peek(v)to255:pokev,j:aw=((NULL)):next:pokev,0:pokev+16,peek(v+16)or1
  91. 1630 forj=peek(v)to56:pokev,j:aw=((NULL)):next
  92. 1640 forj=peek(v+1)to230:pokev+1,j:aw=sqr(((NULL))):next
  93. 1650 if(peek(jo)and16)=0then1680
  94. 1660 if(peek(jo)and4)=0thene=e+(e>1):gosub1500
  95. 1670 if(peek(jo)and8)=0thene=e-(e<a(i)):gosub1500
  96. 1675 e2=sgn(e-e3):goto1650
  97. 1680 lo=0:goto1300
  98. 1700 rem --- hires on/off ---
  99. 1702 ife2=0thene2=1
  100. 1705 a$=e$:gosub1750
  101. 1710 sys14342:poke53269,0:poke53270,216
  102. 1720 sys34872:a=peek(34576):poke53280,a:poke53281,a:poke53265,59:sys34955
  103. 1730 if(peek(56320)and16)=16thenif(peek(56321)and16)=16then1730
  104. 1740 sys35554:sys35999:poke53270,200
  105. 1749 a$="m4"
  106. 1750 rem --- load a$ ---
  107. 1751 poke53265,0
  108. 1755 forj=1tolen(a$):poke1023+j,asc(mid$(a$,j,1)):next
  109. 1760 poke781,8:poke782,1:sys65466:poke780,len(a$):poke781,0:poke782,4
  110. 1770 sys65469:poke780,0:ifa=4thenpoke185,0
  111. 1780 sys65493:ifpeek(789)>160thensys14336
  112. 1790 poke53272,29:e3=e:return
  113. 1800 rem --- printer ---
  114. 1810 open1,4:cmd1:sys14339
  115. 1820 a$="(magic disk 64: ":b$=" seite"+str$(e)+")"
  116. 1830 z=(39-len(a$)-len(a$(i))-len(b$))/2
  117. 1835 c$="":forj=1tolen(a$(i)):c$=c$+chr$(asc(mid$(a$(i),j,1))and127):next
  118. 1840 forj=1toz:a$=a$+" ":next:a$=a$+c$:forj=1toz:a$=a$+" ":next
  119. 1850 a$=a$+b$:printa$
  120. 1860 sys43957:close1:goto1330
  121. 2000 rem --- disk wenden ---
  122. 2001 ax=peek(v+1):ay=peek(v):poke659,1
  123. 2003 z=20:a2=a:a=(99-peek(v))/z:b=(227-peek(v+1))/z:c=peek(v):d=peek(v+1)
  124. 2005 forj=1toz:d=d+b:c=c+a:pokev,c:pokev+1,d:next
  125. 2010 print"";:r%=1
  126. 2020 print"[144]             [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
  127. 2025 print"[144]             [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
  128. 2030 print"               [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
  129. 2040 print" [185][175] [196]iskette[144]   [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
  130. 2050 print" [161][182] wenden ![144]  [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";
  131. 2060 print"             [157][157][157][157][157][157][157][157][157][157][157][157][157][157][145][145]";
  132. 2070 forqs=0to6
  133. 2080 print"[185][175][157][157][161][182][157][157][145]";:forsq=1to200:next
  134. 2090 print"  [157][157]  [157][157][145]";:forsq=1to200:next
  135. 2100 nextqs:print"[152]                     [146]"
  136. 2102 print"                     [146]"
  137. 2105 print"";:gosub1020:r%=0:print"";
  138. 2110 z=20:a=(ay-peek(v))/z:b=(ax-peek(v+1))/z:c=peek(v):d=peek(v+1)
  139. 2120 forj=1toz:d=d+b:c=c+a:pokev,c:pokev+1,d:next:poke659,0
  140. 2125 pokev,int(peek(v)/2)*2:pokev+1,int(peek(v+1)/2)*2
  141. 2150 a=a2:return
  142. 10000 data"[200]allo",3
  143. 10001 data"[200]ardware",12
  144. 10002 data"[211]oftware",23
  145. 10003 data"[194]astelware",7
  146. 10004 data"[213]tilities",19
  147. 10005 data"[199]ames",7
  148. 10006 data"[206]ews",10
  149. 10007 data"[201]ntern",9
  150. 10008 data"[212]ips & [212]ricks",8
  151. 10009 data"[212]he [197]nd",4
  152. 10100 data***,0
  153.