home *** CD-ROM | disk | FTP | other *** search
/ 64'er 1985 December / 64er_Magazin_85-12_1985_Markt__Technik_de.d64 / seeschlacht (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  12KB  |  384 lines

  1. 10 rem ********************************
  2. 20 rem
  3. 30 rem       schiffeversenken mit
  4. 40 rem         akkustikkoppler
  5. 60 rem      von lars v. olleschik
  6. 70 rem          muehlenkamp 31
  7. 80 rem          4715 ascheberg
  8. 90 rem          tel. 02593/877
  9. 95 rem
  10. 96 rem ********************************
  11. 97 poke53281,0:poke53280,0
  12. 100 open2,2,0,chr$(38)+chr$(33)
  13. 110 print"[147]schiffeversenken"
  14. 140 print"geschrieben von lars v. olleschik
  15. 160 [134]t%(127),p%(255),b$(15),z$(15),z(15),b(15)
  16. 170 [143] code umwandlung
  17. 180 [129]x[178]0[164]64:p%(x)[178]x:[130]:[129]x[178]65[164]90:p%(x)[178]x[170]32:[130]:p%(88)[178]88
  18. 190 [129]x[178]91[164]96:p%(x)[178]x:[130]:[129]x[178]97[164]122:p%(x)[178]x[171]32:[130]
  19. 200 [129]x[178]193[164]218:p%(x)[178]x[171]128:[130]:[129]x[178]0[164]126:t%(x)[178]p%(x):[130]
  20. 210 p%(148)[178]127:p%(127)[178]148
  21. 230 [141]6290
  22. 240 [137]2280
  23. 250 [143] verbindungsaufbau
  24. 270 [153]"load";
  25. 280 [153]"(NULL)str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$right$";
  26. 290 [153]"chr$ schiffeversenken  *  kontaktaufnahme left$";
  27. 300 [153]"mid$ascascascascascascascascascascascascascascascascascascascascascascascascascascascascascascascascascascascascascasc(NULL)";
  28. 310 [153]"        (NULL)str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$str$right$"
  29. 320 [139]sp[178]3[167][153]" ---->  chr$ test-sender         left$  <----":[137]330
  30. 325 [153]" ---->  chr$ test-empfaenger     left$  <----"
  31. 330 [153]"        mid$lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlen(NULL)"
  32. 400 [139]sp[178]1[167]450
  33. 405 [129]i[178]1[164]3000:[130]
  34. 410 te$[178]"the quick brown fox jumps over the lazy dog":a$[178]"":[153]"
  35. 420 fori=1tolen(te$)
  36. 430 print#2,chr$(p%(asc(mid$(te$,i,1))));
  37. 440 printmid$(te$,i,1);:next
  38. 450 a$="":rem"direkter kontakt
  39. 460 [161]#2,a$:[139]a$[178]""[167]500
  40. 470 [139]t%([198](a$))[178]34[167][151]212,0
  41. 480 [153][199](t%([198](a$)));
  42. 490 [139]t%([198](a$))[178]95[167]550
  43. 500 [161]b$:[139]b$[178]""[167]460
  44. 510 [153]b$;:
  45. 520 [152]2,[199](p%([198](b$)));
  46. 530 [139]b$[178]"_"[167]550
  47. 540 [137]460
  48. 550 [143] abbruch des direkten kontaktes          ****** spielbeginn ******
  49. 560 [151]53281,6:[151]53280,6
  50. 570 [153]"load(NULL)lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenright$";
  51. 580 [153]"chr$  schiffeversenken * spielfeldaufbau  left$";
  52. 590 [153]"mid$lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlen(NULL)";
  53. 600 [153]"(NULL)lenlenlenlenlenlenlenlenlenlenright$         (NULL)lenlenlenlenlenlenlenlenlenlenlenright$
  54. 610 print"[199] *gegner* [200]         [199] *spieler* [200]
  55. 620 [153]"mid$lenlenlenlenlenlenlenlenlenlen(NULL)         mid$lenlenlenlenlenlenlenlenlenlenlen(NULL)
  56. 630 print"[213][195][195][195][195][195][195][195][195][195][195][201]         [213][195][195][195][195][195][195][195][195][195][195][201]
  57. 640 [153]"chr$ 123456789left$ flotte  chr$ 123456789left$"
  58. 650 [153]"chr$a(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$(NULL)lenlenlenlenlenright$  chr$a(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$"
  59. 660 [153]"chr$b(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$chr$(NULL)(NULL)(NULL)(NULL)fleft$  chr$b(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$"
  60. 670 [153]"chr$c(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$chr$(NULL)(NULL)(NULL) zleft$  chr$c(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$"
  61. 680 [153]"chr$d(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$chr$(NULL)(NULL)  sleft$  chr$d(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$"
  62. 690 [153]"chr$e(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$chr$(NULL)(NULL)  sleft$  chr$e(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$"
  63. 700 [153]"chr$f(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$chr$(NULL)(NULL)  sleft$  chr$f(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$"
  64. 710 [153]"chr$g(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$chr$(NULL)   uleft$  chr$g(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$"
  65. 720 [153]"chr$h(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$chr$(NULL)   uleft$  chr$h(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$"
  66. 730 [153]"chr$i(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$mid$lenlenlenlenlen(NULL)  chr$i(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)(NULL)left$"
  67. 740 [153]"mid$lenlenlenlenlenlenlenlenlenlen(NULL)         mid$lenlenlenlenlenlenlenlenlenlen(NULL)"
  68. 750 [153]"open  stepbitte geben sie nun die positionen(NULL)wait"
  69. 760 [153]"   der schiffe ihrer flotte nachein-  wait"
  70. 770 [153]"   ander ein. buchstabe - zahl        wait"
  71. 780 [153]"  (NULL)nach 15 eingaben wird verifiziert.waitstepsys"
  72. 790 [153]" (NULL)lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenright$  (NULL)lenlenlenlenlenlenright$
  73. 800 print" [199]ihre einbabe bitte : *-*[200]  [199]nr.   [200]
  74. 810 [153]" mid$lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlen(NULL)  mid$lenlenlenlenlenlen(NULL)";
  75. 820 [143]"flotteneingabe
  76. 830 fori=1to15:print"";tab(33)i;:
  77. 840 poke1967,42:poke56239,1
  78. 850 poke1969,42:poke56241,1
  79. 860 getb$(i):ifb$(i)=""then860
  80. 870 ifasc(b$(i))<65orasc(b$(i))>73then860
  81. 880 poke1967,asc(b$(i))-64:poke56239,1
  82. 890 getz$(i):ifz$(i)=""then890
  83. 900 ifasc(z$(i))<49orasc(z$(i))>57then890
  84. 910 poke1969,asc(z$(i)):poke56241,1
  85. 920 poke(1024+40*(asc(b$(i))-64+7)+asc(z$(i))-26),209
  86. 930 poke(55296+40*(asc(b$(i))-64+7)+asc(z$(i))-26),13
  87. 940 next
  88. 950 rem"kontrolle der positionen
  89. 960 [153]"";
  90. 970 [129]i[178]1[164]6:[153]"                                        ";:[130]
  91. 980 [153]"                                       ";
  92. 990 [153]""
  93. 1000 [153]" (NULL)lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenright$               ";
  94. 1010 [153]" chr$kontrolle der eingabenleft$               ";
  95. 1020 [153]" mid$lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlen(NULL)               ";
  96. 1030 [153]" (NULL)lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenright$ ";
  97. 1040 [153]" chr$identifizierung:                    left$ ";
  98. 1050 [153]" mid$lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlen(NULL) sys";
  99. 1060 f[178]8:[143]"abfrage ob 15 felder belegt
  100. 1070 print"felder             "
  101. 1080 p=0:fori=1to15:b(i)=asc(b$(i))-64:z(i)=asc(z$(i))-26:next
  102. 1090 fori=1to9:forj=1to9:ifpeek(1024+40*(i+7)+j+22)=209thenp=p+1:f=0
  103. 1100 poke(55296+40*(i+7)+j+22),f:f=8
  104. 1110 next:next
  105. 1120 ifp=15then1140
  106. 1130 goto2150
  107. 1140 rem"weitere pruefung
  108. 1150 u[178]0:[143]"u-boote (2 stueck)
  109. 1160 print"u-boote            "
  110. 1170 fori=1to9:forj=1to9:b=i:z=j:gosub2110:ifsv=209then1200
  111. 1180 goto1260
  112. 1190 rem
  113. 1200 b=i-1:z=j:gosub2110:ifsv=209then1260
  114. 1210 b=i+1:z=j:gosub2110:ifsv=209then1260
  115. 1220 z=j+1:b=i:gosub2110:ifsv=209then1260
  116. 1230 z=j-1:b=i:gosub2110:ifsv=209then1260
  117. 1240 u=u+1:ifu>2then2150:rem"fehler
  118. 1250 [151](55296[170]40[172](i[170]7)[170]j[170]22),1
  119. 1260 [130]:[130]:[139]u[179]2[167]2150
  120. 1270 sb[178]0:[143]"schnellboote
  121. 1280 print"schnellboote       "
  122. 1290 fori=1to9:forj=1to9:b=i:z=j:gosub2110:gosub2120:ifsf=1then1560
  123. 1300 ifsv=209then1320
  124. 1310 goto1560
  125. 1320 b=i:z=j-1:gosub2110:ifsv=209then1560
  126. 1330 b=i-1:z=j:gosub2110:ifsv=209then1560
  127. 1340 b=i+1:gosub2110:ifsv=209then1560
  128. 1350 b=i+1:z=j+1:gosub2110:ifsv=209then2150
  129. 1360 b=i-1:z=j+1:gosub2110:ifsv=209then2150
  130. 1370 b=i:z=j+1:gosub2110:ifsv<>209then1560
  131. 1380 b=i:z=j+2:gosub2110:ifsv=209then1560
  132. 1390 fort=0to1:poke(55296+40*(i+7)+j+t+22),1:next
  133. 1400 sb=sb+1:ifsb>3then2150
  134. 1410 goto1560
  135. 1420 forj=1to9:fori=1to9:b=i:z=j:gosub2110:gosub2120:ifsf=1then1570
  136. 1430 ifsv<>209then1570
  137. 1440 b=i-1:z=j:gosub2110:ifsv=209then1570
  138. 1450 z=j-1:b=i:gosub2110:ifsv=209then1570
  139. 1460 z=j+1:gosub2110:ifsv=209then1570
  140. 1470 z=j-1:gosub2110:ifsv=209then1570
  141. 1480 z=j+1:b=i+1:gosub2110:ifsv=209then2150
  142. 1490 z=j-1:gosub2110:ifsv=209then2150
  143. 1500 z=j:b=i+1:gosub2110:ifsv<>209then1570
  144. 1510 z=j:b=i+2:gosub2110:ifsv=209then1570
  145. 1520 fort=0to1:poke(55296+40*(i+7+t)+j+22),1:next
  146. 1530 sb=sb+1:ifsb>3then2150
  147. 1540 goto1570
  148. 1550 rem
  149. 1560 next:next:goto1420
  150. 1570 next:next:ifsb<3then2150
  151. 1580 zr=0:rem"zerstoerer
  152. 1590 [153]"zerstoerer         "
  153. 1600 [129]i[178]1[164]9:[129]j[178]1[164]9:b[178]i:z[178]j:[141]2110:[141]2120:[139]sf[178]1[167]1820
  154. 1610 [139]sv[179][177]209[167]1820
  155. 1620 b[178]i:z[178]j[171]1:[141]2110:[139]sv[178]209[167]1820
  156. 1630 b[178]i[170]1:z[178]j:[141]2110:[139]sv[178]209[167]1820
  157. 1640 b[178]i[171]1:z[178]j:[141]2110:[139]sv[178]209[167]1820
  158. 1650 b[178]i:z[178]j[170]1:[141]2110:[139]sv[179][177]209[167]1820
  159. 1660 b[178]i:z[178]j[170]2:[141]2110:[139]sv[179][177]209[167]1820
  160. 1670 b[178]i:z[178]j[170]3:[141]2110:[139]sv[178]209[167]1820
  161. 1680 [129]t[178]0[164]2:[151](55296[170]40[172](i[170]7)[170]j[170]22[170]t),1:[130]
  162. 1690 zr[178]zr[170]1:[139]zr[177]1[167]2150
  163. 1700 [137]1820
  164. 1710 [129]j[178]1[164]9:[129]i[178]1[164]9:b[178]i:z[178]j:[141]2110:[141]2120:[139]sf[178]1[167]1830
  165. 1720 [139]sv[179][177]209[167]1830
  166. 1730 z[178]j:b[178]i[171]1:[141]2110:[139]sv[178]209[167]1830
  167. 1740 z[178]j[170]1:b[178]i:[141]2110:[139]sv[178]209[167]1830
  168. 1750 z[178]j[171]1:b[178]i:[141]2110:[139]sv[178]209[167]1830
  169. 1760 z[178]j:b[178]i[170]1:[141]2110:[139]sv[179][177]209[167]1830
  170. 1770 z[178]j:b[178]i[170]2:[141]2110:[139]sv[179][177]209[167]1830
  171. 1780 z[178]j:b[178]i[170]3:[141]2110:[139]sv[178]209[167]1830
  172. 1790 [129]t[178]0[164]2:[151](55296[170]40[172](t[170]i[170]7)[170]j[170]22),1:[130]
  173. 1800 zr[178]zr[170]1:[139]zr[177]1[167]2150
  174. 1810 [137]1830
  175. 1820 [130]:[130]:[137]1710
  176. 1830 [130]:[130]:[139]zr[179]1[167]2150
  177. 1840 flu[178]0:[143]"flugzeugtraeger
  178. 1850 print"flugzeugtraeger    "
  179. 1860 fori=1to9:forj=1to9:b=i:z=j:gosub2110:gosub2120:ifsf=1then2080
  180. 1870 ifsv<>209then2080
  181. 1880 b=i:z=j-1:gosub2110:ifsv=209then2080
  182. 1890 b=i+1:z=j:gosub2110:ifsv=209then2080
  183. 1900 b=i-1:z=j:gosub2110:ifsv=209then2080
  184. 1910 b=i:z=j+2:gosub2110:ifsv<>209then2080
  185. 1920 b=i:z=j+3:gosub2110:ifsv<>209then2080
  186. 1930 b=i:z=j+4:gosub2110:ifsv=209then2080
  187. 1940 fort=0to3:poke(55296+40*(i+7)+j+22+t),1:next
  188. 1950 flu=flu+1:ifflu>1then2150
  189. 1960 goto2080
  190. 1970 forj=1to9:fori=1to9:b=i:z=j:gosub2110:gosub2120:ifsf=1then2090
  191. 1980 ifsv<>209then2090
  192. 1990 z=j:b=i-1:gosub2110:ifsv=209then2090
  193. 2000 z=j+1:b=i:gosub2110:ifsv=209then2090
  194. 2010 z=j-1:b=i:gosub2110:ifsv=209then2090
  195. 2020 z=j:b=i+2:gosub2110:ifsv<>209then2090
  196. 2030 z=j:b=i+3:gosub2110:ifsv<>209then2090
  197. 2040 z=j:b=i+4:gosub2110:ifsv=209then2090
  198. 2050 fort=0to3:poke(55296+40*(t+i+7)+j+22),1:next
  199. 2060 flu=flu+1:ifflu>1then2150
  200. 2070 goto2090
  201. 2080 next:next:goto1970
  202. 2090 next:next:ifflu<1then2150
  203. 2100 goto2130:rem"schiffsvariable
  204. 2110 sv[178][194](1024[170]40[172](b[170]7)[170]z[170]22):[142]
  205. 2120 sf[178][194](55296[170]40[172](b[170]7)[170]z[170]22):[142]
  206. 2130 [143]
  207. 2140 [137]2170
  208. 2150 [153]"clrfehler in der eingabe...............sys"
  209. 2160 [129]i[178]1[164]1000:[130]:[137]550
  210. 2170 [143]"korrekte eingabe
  211. 2180 print"alle eingaben regelgerecht..........[158]"
  212. 2190 rem"ab hier wieder direkter kontakt
  213. 2200 [129]i[178]1[164]1000:[130]
  214. 2210 [153]"spielbeginn    "
  215. 2220 [129]i[178]1744[164]2024:[151]i,32:[130]
  216. 2230 [153]"":
  217. 2240 [153]"(NULL)lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenright$         ";
  218. 2250 [153]"chr$partner ist noch nicht fertigleft$         ";
  219. 2260 [153]"mid$lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlen(NULL)sys"
  220. 2270 [137]2530
  221. 2280 [143]"menue
  222. 2290 print"[147] [213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201]
  223. 2300 [153]" chr$   schiffeversenken * hauptmenue    left$
  224. 2310 print" [202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203]
  225. 2320 [153]" (NULL)lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenright$
  226. 2330 print" [199] [213][195][201]                                [200]
  227. 2340 [153]" chr$ chr$aleft$  koppler im originate-modus    left$
  228. 2350 print" [199] [202][195][203]                                [200]
  229. 2360 [153]" chr$                                    left$
  230. 2370 print" [199] [213][195][201]                                [200]
  231. 2380 [153]" chr$ chr$bleft$  koppler im answer-modus       left$
  232. 2390 print" [199] [202][195][203]                                [200]
  233. 2400 [153]" chr$                                    left$
  234. 2410 print" [199]                                    [200]
  235. 2420 [153]" chr$                                    left$
  236. 2430 print" [199]                                    [200]
  237. 2440 [153]" chr$  (NULL)lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenright$ left$
  238. 2450 print" [199]  [199] ---> bitte waehlen sie <---   [200] [200]
  239. 2460 [153]" chr$  mid$lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlen(NULL) left$
  240. 2470 print" [202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203]
  241. 2480 [161]b$:[139]b$[179][177]"a"[175]b$[179][177]"b"[167]2480
  242. 2490 [139]b$[178]"b"[167]sp[178]3:[137]250
  243. 2500 [139]b$[178]"a"[167]sp[178]1:[137]250
  244. 2520 [143]
  245. 2530 [143]"spielbeginn
  246. 2540 ifsp=3thenb$="\"
  247. 2550 ifsp=1thenb$="*":goto2620
  248. 2570 print#2,chr$(p%(asc(b$)))
  249. 2580 get#2,a$:ifa$=""then2580
  250. 2590 ifchr$(t%(asc(a$)))<>"*"then2580
  251. 2600 goto2650
  252. 2610 rem
  253. 2620 get#2,a$:ifa$=""then2620
  254. 2630 ifchr$(t%(asc(a$)))<>"\"then2620
  255. 2640 print#2,chr$(p%(asc(b$)))
  256. 2650 rem"beginn der schlacht
  257. 2660 [153]"partner ist fertig..........."
  258. 2680 [139]sp[178]1[167]3110
  259. 2690 [129]i[178]1744[164]2023:[151]i,32:[130]
  260. 2700 [143]"eigener schuss
  261. 2720 print"[213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201]"
  262. 2730 print"[199]ihr schuss  *-*[200]"
  263. 2740 print"[202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203]";
  264. 2750 rem"buchstabe
  265. 2760 [161]b$:[139]b$[178]""[167]2760
  266. 2770 [139][198](b$)[177]74[176][198](b$)[179]65[167]2760
  267. 2780 [152]2,[199](p%([198](b$)))
  268. 2790 [151]1824[170]13,[198](b$)[171]64
  269. 2800 [151]56096[170]13,8
  270. 2810 [143]"ziffer
  271. 2820 getz$:ifz$=""then2820
  272. 2830 ifasc(z$)>57orasc(z$)<49then2820
  273. 2840 print#2,chr$(p%(asc(z$)))
  274. 2850 rem"eintragen
  275. 2860 [151]1824[170]15,[198](z$)
  276. 2870 [151]56096[170]15,8
  277. 2880 [143]"eintragen auf spielplan
  278. 2890 poke(1024+40*(asc(b$)-64+7)+asc(z$)-48+1),32
  279. 2910 rem"abfrage treffer
  280. 2920 [143]
  281. 2930 [161]#2,a$:[139]a$[178]""[167]2930
  282. 2940 t[178]t%([198](a$))[171]64
  283. 2950 [139]t[179][177]14[175]t[179][177]10[175]t[179][177]5[175]t[179][177]22[167]2930
  284. 2980 [139][194](1024[170]40[172]([198](b$)[171]64[170]7)[170][198](z$)[171]48[170]1)[178]86[167]tr[178]tr[171]1
  285. 2990 [139]t[178]10[176]t[178]22[167][151](55296[170]40[172]([198](b$)[171]64[170]7)[170][198](z$)[171]48[170]1),10:tr[178]tr[170]1
  286. 3000 [139]t[178]14[167]3020
  287. 3010 [141]6290
  288. 3020 [139]t[178]10[167][151](1024[170]40[172]([198](b$)[171]64[170]7)[170][198](z$)[171]48[170]1),86
  289. 3025 [139]t[178]22[176]t[178]5[167][151](1024[170]40[172]([198](b$)[171]64[170]7)[170][198](z$)[171]48[170]1),22
  290. 3030 [129]i[178]1[164]1000:[130]
  291. 3040 [139]t[178]5[167]3630:[143]"sieg
  292. 3050 iftr=15then3630
  293. 3060 ift=10ort=22then2720
  294. 3070 rem
  295. 3080 rem
  296. 3090 rem"auswertung und trefferaufnahme
  297. 3110 [129]i[178]1744[164]2023:[151]i,32:[130]
  298. 3120 [153]"(NULL)lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenright$ (NULL)lenlenlenlenlenlenlenlenlenlenright$(NULL)lenlenlenlenlenlenlenlenright$";
  299. 3130 [153]"chr$gegner-zug  *-*left$ chr$treffer * left$chr$runde   left$";
  300. 3140 [153]"mid$lenlenlenlenlenlenlenlenlenlenlenlenlenlenlen(NULL)closemid$lenlenlenlenlenlenlenlenlenlen(NULL)mid$lenlenlenlenlenlenlenlen(NULL)";
  301. 3150 [143]"buchstabe
  302. 3160 get#2,b$:ifb$=""then3160
  303. 3170 b$=chr$(t%(asc(b$)))
  304. 3180 ifasc(b$)<65orasc(b$)>73then3160
  305. 3190 poke1824+13,asc(b$)-64
  306. 3200 poke56096+13,8
  307. 3210 rem"ziffer
  308. 3220 [161]#2,z$:[139]z$[178]""[167]3220
  309. 3230 z$[178][199](t%([198](z$)))
  310. 3240 [139][198](z$)[177]57[176][198](z$)[179]49[167]3220
  311. 3250 [143]"eintragen
  312. 3260 poke1824+15,asc(z$)
  313. 3270 poke56096+15,8
  314. 3280 g$="n":ze=81:rem"eintragen auf spielplan
  315. 3290 [139][194](1024[170]40[172]([198](b$)[171]64[170]7)[170][198](z$)[171]48[170]22)[178]209[167]gt[178]gt[170]1:ze[178]86:g$[178]"j"
  316. 3300 [139][194](1024[170]40[172]([198](b$)[171]64[170]7)[170][198](z$)[171]48[170]22)[178]86[167]:ze[178]86:g$[178]"n":[137]3510
  317. 3310 [139][194](1024[170]40[172]([198](b$)[171]64[170]7)[170][198](z$)[171]48[170]22)[178]87[167]:ze[178]32:g$[178]"n":[137]3510
  318. 3320 [139][194](1024[170]40[172]([198](b$)[171]64[170]7)[170][198](z$)[171]48[170]22)[178]32[167]:ze[178]32:g$[178]"n":[137]3510
  319. 3330 bb[178]1:[143]"abfrage versenkt
  320. 3340 ifpeek(1024+40*(asc(b$)-64+7)+asc(z$)-48+22+bb)=209then3510
  321. 3350 ifpeek(1024+40*(asc(b$)-64+7)+asc(z$)-48+22-bb)=209then3510
  322. 3360 ifpeek(1024+40*(asc(b$)-64+7+bb)+asc(z$)-48+22)=209then3510
  323. 3370 ifpeek(1024+40*(asc(b$)-64+7-bb)+asc(z$)-48+22)=209then3510
  324. 3380 rem
  325. 3390 zb=(1024+40*(asc(b$)-64+7)+asc(z$)-48+22)
  326. 3400 rem"zerstoerer versenkt ?
  327. 3410 [139][194](zb[170]1)[178]86[175][194](zb[170]2)[178]209[167]3510
  328. 3420 [139][194](zb[171]1)[178]86[175][194](zb[171]2)[178]209[167]3510
  329. 3430 [139][194](zb[171]40)[178]86[175][194](zb[171]80)[178]209[167]3510
  330. 3440 [139][194](zb[170]40)[178]86[175][194](zb[170]80)[178]209[167]3510
  331. 3450 [143]"flugzeugtraeger versenkt ?
  332. 3460 ifpeek(zb+1)=86andpeek(zb+2)=86andpeek(zb+3)=209then3510
  333. 3470 ifpeek(zb-1)=86andpeek(zb-2)=86andpeek(zb-3)=209then3510
  334. 3480 ifpeek(zb+40)=86andpeek(zb+80)=86andpeek(zb+120)=209then3510
  335. 3490 ifpeek(zb-40)=86andpeek(zb-80)=86andpeek(zb-120)=209then3510
  336. 3500 ze=22:g$="v":ifgt=15theng$="e"
  337. 3510 poke(1024+40*(asc(b$)-64+7)+asc(z$)-48+22),ze
  338. 3530 rem"ansage der treffer
  339. 3540 [152]2,[199](p%(([198](g$))))
  340. 3550 g[178]([198](g$))[171]64
  341. 3580 [139]g$[179][177]"n"[167][141]6290
  342. 3590 [129]i[178]1[164]1000:[130]
  343. 3600 [139]gt[178]15[167]3690
  344. 3610 [139]g$[178]"j"[176]g$[178]"v"[167]3110
  345. 3620 [137]2690
  346. 3630 [143]"sieg
  347. 3640 fori=1744to2023:pokei,32:next
  348. 3650 print" [213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201]";
  349. 3660 print" [199] sie haben die schlacht gewonnen ... [200]";
  350. 3670 print" [202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203]"
  351. 3680 goto3740
  352. 3690 rem"niederlage
  353. 3700 [129]i[178]1744[164]2023:[151]i,32:[130]
  354. 3710 [153]" (NULL)lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenright$";
  355. 3720 [153]" chr$ sie haben die schlacht verloren ... left$";
  356. 3730 [153]" mid$lenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlenlen(NULL)"
  357. 3740 [137]4490
  358. 4490 [143]"spielende erneut terminal modus
  359. 4500 print"[147] [213][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][201]";
  360. 4510 print" [199] s p i e l e n d e * t e r m i n a l [200]";
  361. 4520 print" [202][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][203]"
  362. 4530 print"           abbruch mit '^' "
  363. 4540 print">";
  364. 4550 get#2,a$
  365. 4560 ifa$=""then4620
  366. 4570 ift%(asc(a$))=34thenpoke212,0
  367. 4580 printchr$(t%(asc(a$)));
  368. 4590 ifchr$(t%(asc(a$)))="^"then4680:rem"abbbruch
  369. 4600 [139]t%([198](a$))[178]13[167][153]">";
  370. 4610 [137]4550
  371. 4620 [161]b$
  372. 4630 [139]b$[178]""[167]4550
  373. 4640 [152]2,[199](p%([198](b$)));
  374. 4650 [139]b$[178]"^"[167]4680:[143]"abbruch selbst
  375. 4660 printb$;
  376. 4670 goto4550
  377. 4680 print:print" kommunikation abgebrochen [146]"
  378. 4690 print" programm ist beendet."
  379. 4700 close2:end
  380. 6290 rem"vertikales scrolling
  381. 6300 x[178]0:[129]i[178]1[164]140:x[178]x[170]1:[139]x[178]7[167]x[178][171]x
  382. 6310 [151]53270,[194](53270)[175]248[176][182](x)
  383. 6320 [130]:[142]
  384.