home *** CD-ROM | disk | FTP | other *** search
/ Input 64 / Input_64_85-03_1985_Verlag_Heinz_Weise_de.d64 / biathlon (.txt) < prev    next >
Commodore BASIC  |  2023-02-26  |  20KB  |  685 lines

  1. 100 poke50257,16:rem systempoke
  2. 105 v=53248:forx=0to16:pokev+x,0:next:pokev+17,155:pokev+18,55
  3. 110 forx=19to21:pokev+x,0:next:pokev+22,8:pokev+23,0:pokev+24,20
  4. 120 pokev+25,15:forx=26to31:pokev+x,0:next:pokev+32,14:pokev+33,6
  5. 130 pokev+34,1:pokev+35,2:pokev+36,3:pokev+37,4:pokev+38,0:pokev+39,1
  6. 140 pokev+40,2:pokev+41,3:pokev+42,4:pokev+43,5:pokev+44,6:pokev+45,7
  7. 150 dim e(20),z1(20),z2(20)
  8. 160 en=40500:poke55,(en-(int(en/256)*256))
  9. 170 poke56,en/256
  10. 180 gosub6890
  11. 190 print chr$(8)
  12. 200 goto 720
  13. 210 si=54272:l2=54279:l3=54286 :fh=si+1:h2=l2+1:h3=l3+1
  14. 220 ww=si+4:v2=l2+4:v3=l3+4
  15. 230 poke 54296,15
  16. 240 poke ww+1,9:poke v2+2,0
  17. 250 poke v2+1,36:poke v2+2,36
  18. 260 poke v3+1,18:poke v3+2,170
  19. 270 i=ti
  20. 280 poke ww,16:poke v2,32:poke v3,16
  21. 290 read s:if s=0 goto 370
  22. 300 read x1,y1,x2,y2,x3,y3
  23. 310 if x1 then poke fh,x1:poke si,y1:poke ww,17
  24. 320 if x2 then poke h2,x2:poke l2,y2:poke v2,33
  25. 330 if x3 then poke h3,x3:poke l3,y3:poke v3,17
  26. 340 i=i+s
  27. 350 if i>ti goto 350
  28. 360 goto 280
  29. 370 forj=si to 54296:poke j,0:next j
  30. 380 data 20,34,75,21,154,8,147
  31. 390 data 20,34,75,25,177,0,0
  32. 400 data 20,38,126,28,214,6,108
  33. 410 data 20,43,52,25,177,0,0
  34. 420 data 20,34,75,21,154,8,147
  35. 430 data 20,43,180,25,177,0,0
  36. 440 data 20,38,126,22,227,8,23
  37. 450 data 20,0,0,25,177,0,0
  38. 460 data 20,34,75,21,154,8,147
  39. 470 data 20,34,75,25,177,0,0
  40. 480 data 20,38,126,28,214,6,108
  41. 490 data 20,43,52,25,177,0,0
  42. 500 data 20,34,75,21,154,8,147
  43. 510 data 20,0,0,25,177,0,0
  44. 520 data 20,32,94,22,227,8,23
  45. 530 data 20,0,0,19,63,6,108
  46. 540 data 20,34,75,21,154,8,147
  47. 550 data 20,34,75,25,177,0,0
  48. 560 data 20,38,126,21,154,7,163
  49. 570 data 20,43,52,17,37,0,0
  50. 580 data 20,45,198,28,214,7,53
  51. 590 data 20,43,52,34,75,0,0
  52. 600 data 20,38,116,28,214,0,206
  53. 610 data 20,34,75,22,227,0,0
  54. 620 data 20,32,94,25,177,6,108
  55. 630 data 20,25,177,22,227,0,0
  56. 640 data 20,28,214,21,154,7,53
  57. 650 data 20,32,94,19,63,8,23
  58. 660 data 20,34,75,21,154,8,147
  59. 670 data 20,0,0,25,177,6,108
  60. 680 data 20,34,75,21,154,4,73
  61. 690 data 20,0,0,0,0,0,0
  62. 700 data 0
  63. 710 goto930
  64. 720 printchr$(142)"[147][153]":poke53280,0:poke53281,0
  65. 730 print" [213][192][192][192][201][213][201][213][192][192][192][201][213][192][192][192][192][201][213][201][213][201][213][201]  [213][192][192][192][201][213][192][192][192][201]"
  66. 740 print" [221][213][192][201][221][221][221][221][213][192][201][221][202][192][201][213][192][203][221][221][221][221][221][221]  [221][213][192][201][221][221][213][192][201][221]"
  67. 750 print" [221][221] [221][221][221][221][221][221][160][221][221][160][160][221][221][160][160][221][221][221][221][221][221]  [221][221][160][221][221][221][221][160][221][221]"
  68. 760 print" [221][202][192][203][221][221][221][221][202][192][203][221]  [221][221]  [221][202][203][221][221][221]  [221][221] [221][221][221][221][160][221][221]"
  69. 770 print" [221][213][192][201][221][221][221][221][213][192][201][221]  [221][221]  [221][213][201][221][221][221]  [221][221] [221][221][221][221][160][221][221]"
  70. 780 print" [221][221] [221][221][221][221][221][221][160][221][221][160][160][221][221][160][160][221][221][221][221][221][221][160][160][221][221][160][221][221][221][221][160][221][221]"
  71. 790 print" [221][202][192][203][221][221][221][221][221] [221][221]  [221][221]  [221][221][221][221][221][202][192][201][221][202][192][203][221][221][221][160][221][221]"
  72. 800 print" [202][192][192][192][203][202][203][202][203][160][202][203][160][160][202][203][160][160][202][203][202][203][202][192][192][203][202][192][192][192][203][202][203][160][202][203]"
  73. 810 print" [213][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][201]"
  74. 820 print" [202][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][203]"
  75. 830 print"       [213][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][201]"
  76. 840 print"       [221]                        [221]"
  77. 850 print"       [221]   erstellt jan. 1985   [221]"
  78. 860 print"       [221]                        [221]"
  79. 870 print"       [221]           von          [221]"
  80. 880 print"       [221]                        [221]"
  81. 890 print"       [221]guenter  und  bernd lutz[221]"
  82. 900 print"       [221]                        [221]"
  83. 910 print"       [202][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][203]"
  84. 920 goto 210
  85. 930 print"            [213][192][192][192][192][192][192][192][192][192][192][192][192][192][192][201]"
  86. 940 print "            [221]taste druecken[221]"
  87. 950 print "            [202][192][192][192][192][192][192][192][192][192][192][192][192][192][192][203]"
  88. 960 get a$ : if a$="" then 960
  89. 970 print"[147][153]"
  90. 980 poke 53280,0 : poke53281,0
  91. 990 gosub 1130
  92. 1000 printchr$(14)"  [200]erzlich willkommen , zum [194][201][193][212][200][204][207][206] !"
  93. 1010 print"  [194]ringen [211]ie ihren [204]aeufer moeglichst"
  94. 1020 print "    schnell ins [218]iel , indem [211]ie die"
  95. 1030 print "   eingeblendeten [210]echenaufgaben  ,so"
  96. 1040 print"      schnell wie moeglich loesen !"
  97. 1050 gosub 1070
  98. 1060 goto 1140
  99. 1070 print"";tab(11);" [212]aste druecken ! "
  100. 1080 for i=1 to 100 : get a$ : if a$<>"" then return
  101. 1090 next : print"";tab(11);"[146]                  "
  102. 1100 for i=1 to 100 : get a$ : if a$<>"" then return
  103. 1110 next
  104. 1120 goto 1070
  105. 1130 print"[147] [194][201][193][212][200][204][207][206]    -    [211]pielanleitung !   [157]  " : return
  106. 1140 poke40505,0
  107. 1150 si=54272 : fl=si    : fh=si+1
  108. 1160 ll=si+24 : ww=si+4  : aa=si+5
  109. 1170 hh=si+6  : v=53248  : sr=00
  110. 1180 p$="":
  111. 1190 if dd=2 then for i=1 to 225 : read y : next:goto1470
  112. 1200 gosub 1130
  113. 1210 printchr$(14)" [194]enoetigen [211]ie eine [193]nleitung fuer den"
  114. 1220 print"               [204]anglauf ?"
  115. 1230 print"    [194]itte geben [211]ie '[202]' fuer [202][193] oder"
  116. 1240 print "          '[206]'  fuer [206][197][201][206] ein !"
  117. 1250 get a$
  118. 1260 if a$="j" then 1290
  119. 1270 if a$="n" then 1470
  120. 1280 if a$<>"j" then 1250
  121. 1290 gosub 1130
  122. 1300 print""
  123. 1310 print"   [215]enn am unteren [194]ildschirmrand die"
  124. 1320 print "  [210]echenaufgabe erscheint ,muessen [211]ie"
  125. 1330 print " diese so schnell  wie moeglich loesen."
  126. 1340 print"    [211]chliessen [211]ie ihre [197]ingabe der"
  127. 1350 print "  [204]oesung mit der '[210][197][212][213][210][206]' [212]aste ab !"
  128. 1360 gosub  1070
  129. 1370 gosub 1130
  130. 1380 print"  [211]ollten [211]ie sich  einmal vertippen ,"
  131. 1390 print "  so koennen [211]ie ihre  [197]ingabe mit der"
  132. 1400 print "          '_' [212]aste loeschen ."
  133. 1410 print"      [196]ie erste [196]isziplin ist zehn"
  134. 1420 print "          [210]echenaufgaben lang."
  135. 1430 print"         [201]ch melde mich vor dem"
  136. 1440 print "        [211]chiesswettbewerb wieder."
  137. 1450 :
  138. 1460 gosub 1070:
  139. 1470 if dd=2 then print"[147] bitte warten !!" : goto 1680
  140. 1480 gosub1130:print"[215]elchen [211]chwierigkeitsgrad waehlen [211]ie ?"
  141. 1490 print" -1-  =  [193]ufgaben , deren [197]rgebnisse"
  142. 1500 print  "         zwischen 0 und 10 liegen."
  143. 1510 print  "         [194]eispiel : 4+3=7"
  144. 1520 print " -2-  =  [193]ufgaben , deren [197]rgebnisse"
  145. 1530 print  "         zwischen 0 und 100 liegen."
  146. 1540 print  "         [194]eispiel : 35+61=96"
  147. 1550 print " -3-  =  [193]ufgaben , deren [197]rgebnisse"
  148. 1560 print  "         zwischen -100 und 100 liegen ,"
  149. 1570 print  "         in denen die [215]erte jedoch"
  150. 1580 print  "         negativ sein koennen."
  151. 1590 print  "         [194]eispiel : -13+6=-7"
  152. 1600 print" [194]itte geben [211]ie die entsprechende [218]ahl"
  153. 1610 print  "                 ein !!"
  154. 1620 get a$:if a$="1" then qw=10:qq=0:goto1670
  155. 1630 if a$="2"then qw=100:qq=0:goto1670
  156. 1640 if a$="3"then qw=100:qq=1:goto1670
  157. 1650 if a$<>"1"then 1620
  158. 1660 :
  159. 1670 print"[147]   [194]itte warten !!!"
  160. 1680 ii=0:for i=40601to40856
  161. 1690 ready:pokei,y:ii=ii+y:next
  162. 1700 :
  163. 1710 data 32,241,183,138,74,8,32,241,183,224
  164. 1720 data 25,144,2,162,24,142,246,7,32,241
  165. 1730 data 183,224,25,144,2,162,24,142,247,7
  166. 1740 data 138,174,246,7,172,247,7,56,237,246
  167. 1750 data 7,176,8,73,255,174,247,7,172,246
  168. 1760 data 7,133,254,40,8,144,3,200,152,170
  169. 1770 data 189,100,159,133,98,189,126,159,133,97
  170. 1780 data 40,8,144,8,233,1,133,97,176,2
  171. 1790 data 198,98,165,98,41,3,9,4,40,8
  172. 1800 data 32,31,159,40,8,165,97,144,10,105
  173. 1810 data 39,133,97,144,12,230,98,176,8,233
  174. 1820 data 39,133,97,176,2,198,98,165,98,41
  175. 1830 data 3,9,216,40,8,32,31,159,198,254
  176. 1840 data 16,206,40,96,133,98,144,3,76,68
  177. 1850 data 159,160,0,177,97,170,160,39,177,97
  178. 1860 data 72,138,145,97,104,170,136,16,245,24
  179. 1870 data 165,97,105,40,133,97,144,2,230,98
  180. 1880 data 96,56,165,97,233,40,133,97,176,2
  181. 1890 data 198,98,160,40,177,97,170,160,1,177
  182. 1900 data 97,72,138,145,97,104,170,200,192,41
  183. 1910 data 208,243,96,4,4,4,4,4,4,4
  184. 1920 data 5,5,5,5,5,5,6,6,6,6
  185. 1930 data 6,6,6,7,7,7,7,7,7,0
  186. 1940 data 40,80,120,160,200,240,24,64,104,144
  187. 1950 data 184,224,8,48,88,128,168,208,248,32
  188. 1960 data 72,112,152,192,232,34
  189. 1970 ifii<>26392thenprint"fehler in datas":end
  190. 1980 ts=11
  191. 1990 for i=1 to sr+10
  192. 2000 e(i)=int(rnd(1)*qw+1)
  193. 2010 z1(i)=int(rnd(1)*qw+1) : if z1(i)>=e(i) then 2000
  194. 2020 z2(i)=e(i)-z1(i)
  195. 2030 if qq=1 then w=int(rnd(1)*2+1):ifw=1thenz1(i)=-z1(i):e(i)=e(i)+2*z1(i)
  196. 2040 if qq=1 then w=int(rnd(1)*2+1):ifw=1thenz2(i)=-z2(i):e(i)=e(i)+2*z2(i)
  197. 2050 next
  198. 2060 for i=0to62:ready:poke832+i,y:next
  199. 2070 for i=0to62:ready:poke832+i+64,y:next
  200. 2080 for i=0to62:ready:poke832+i+128,y:next
  201. 2090 print chr$(142)
  202. 2100 poke53280,0 : poke 53281,6
  203. 2110 print"[147]"
  204. 2120 print"[169][223][169][223][169][163][163][223]"
  205. 2130 print"[169]  [223][169][223][169]  [223][169]    [223]"
  206. 2140 print"[169]    [223][169]  [223][169]    [223][169]      [223]"
  207. 2150 print"[169]     [206]    [223][169]      [223][169]         [223]"
  208. 2160 print"[169]     [206]      [205]        [223][169]           [223]"
  209. 2170 print"[169]         [206][205]   [205]       [206]             [223]"
  210. 2180 print"[169]            [205]         [206]               [223]";
  211. 2190 print"              [205]                         ";
  212. 2200 print"                                        ";
  213. 2210 print"                                        ";
  214. 2220 print"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]";
  215. 2230 print"                                        ";
  216. 2240 print"                                        ";
  217. 2250 print"                                        ";
  218. 2260 print"                                        ";
  219. 2270 print"[168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168][168]";
  220. 2280 print"                                        ";
  221. 2290 print"                                        ";
  222. 2300 poke2042,13:poke2043,14:poke2044,15
  223. 2310 poke v+41,0 : poke v+42,0 : poke v+43,0
  224. 2320 poke v+4,140: poke v+5,188
  225. 2330 poke v+6,140: poke v+7,188
  226. 2340 poke v+8,140: poke v+9,188
  227. 2350 poke v+21,8
  228. 2360 data0,0,0,0,0,124,0,0,124,0,0,116,40,0,124,28,0,124,35,7,224,0,207
  229. 2370 data224,0,63,224,0,63,96,0,124,96,0,122,96,0,97,96,0,48,224,0,24
  230. 2380 data64,0,24,0,0,48,0,0,48,0,0,60,0,0,0,2,255,255,252
  231. 2390 data0,0,0,0,30,0,0,26,0,0,30,0,0,24,0,0,28,62,0,63,196,0,62,4,0,62
  232. 2400 data4,0,62,8,0,126,8,0,124,8,0,56,16,0,48,16,0,48,16,0,48,32,0,48
  233. 2410 data32,0,48,112,0,56,32,0,0,2,255,255,252
  234. 2420 data0,0,0,0,0,120,0,0,104,0,0,120,0,0,0,0,1,192,0,3,224,0,7,192,0
  235. 2430 data15,192,0,31,64,0,30,64,0,60,64,0,48,64,0,49,192,0,30,64,0,24
  236. 2440 data0,0,112,0,1,176,0,6,56,0,24,0,2,255,255,252
  237. 2450 y=9
  238. 2460 ii=100
  239. 2470 print p$
  240. 2480 print"[146]        start in ";y;"[157] sekunden !!!   "
  241. 2490 for i=1 to 800 : next
  242. 2500 if y=1 then ii=400
  243. 2510 y=y-1
  244. 2520 poke ll,15     : poke aa,16+9
  245. 2530 poke hh,4*16+4 : poke fh,104
  246. 2540 poke fl,78     : poke ww,17
  247. 2550 for i=1 to ii  : next
  248. 2560 poke ww,0      : poke aa,0
  249. 2570 poke hh,0
  250. 2580 if y=0 then 2600
  251. 2590 goto 2470
  252. 2600 if dd=2 then ti$=t$ : goto 2620
  253. 2610 ti$="000000"
  254. 2620 print p$
  255. 2630 print"                                     "
  256. 2640 az=0:c=fre(0)
  257. 2650 print p$
  258. 2660 az=az+1
  259. 2670 if z2(az)<0 then printz1(az)"- "abs(z2(az))"=":goto 2700
  260. 2680 printz1(az)"+"z2(az)"="
  261. 2690 rem *** ergebniseingabe ***
  262. 2700 i=0:e$=""
  263. 2710 get a$
  264. 2720 if qq=1 and a$="-" then 2800
  265. 2730 if i>4 then a$="_" : e$=""
  266. 2740 if a$=chr$(13) then 2820
  267. 2750 if a$="_" then print p$ : printtab(11);"     ":az=az-1:ts=11: goto 2650
  268. 2760 print p$
  269. 2770 printtab(30);ti$
  270. 2780 if a$="" then 2710
  271. 2790 if a$<>"" then if asc(a$)<48 or asc(a$)>57 then 2710
  272. 2800 ifa$<>""thene$=e$+a$:print p$ : printtab(ts);a$:ts=ts+1 : i=i+1
  273. 2810 goto 2710
  274. 2820 if val(e$)=e(az) then 2930
  275. 2830 print p$
  276. 2840 print"[154] falsch !!![146]        "
  277. 2850 poke ll,15       : poke aa,16+9
  278. 2860 poke hh,4*16+4   : poke fh,10
  279. 2870 poke fl,147      : poke ww,17
  280. 2880 for i=1 to 400   : next
  281. 2890 poke ww,0        : poke aa,0
  282. 2900 poke hh,0
  283. 2910 print"[145]           "
  284. 2920 az=az-1 : ts=11 : e$="" : goto 2650
  285. 2930 if dd=2 and az=10+sr then 5900
  286. 2940 if dd=2 and az<10+sr then 2960
  287. 2950 if az=10 then 3300
  288. 2960 poke v+21,8 : s=1 : g=100 : j=1 : goto 3000
  289. 2970 poke v+21,16: s=1 : g=100 : j=2 : goto 3000
  290. 2980 poke v+21,4 : s=100: g=10 : j=3 : goto 3000
  291. 2990 end
  292. 3000 for i=1 to s:sys40601,0,0,20
  293. 3010 if i=5 then 3080
  294. 3020 print p$
  295. 3030 printtab(30);ti$
  296. 3040 for y=1 to g :next
  297. 3050 g=g+5 : if g>250 then g=250
  298. 3060 next
  299. 3070 on j goto 2970,2980
  300. 3080 print p$
  301. 3090 print"                   "
  302. 3100 print p$
  303. 3110 az=az+1
  304. 3120 if z2(az)<0 then printz1(az)"-"abs(z2(az))"=":goto 3140
  305. 3130 printz1(az)"+"z2(az)"="
  306. 3140 ts=11
  307. 3150 e$=""
  308. 3160 i=0
  309. 3170 get a$
  310. 3180 if qq=1 and a$="-" then 3280
  311. 3190 if i>4 then a$="_"
  312. 3200 if a$=chr$(13) then 2820
  313. 3210 if a$="_" then printp$ : printtab(11);"     ":az=az-1:ts=11:goto 3100
  314. 3220 print p$
  315. 3230 printtab(30);ti$
  316. 3240 sys 40601,0,0,20:for y=1 to g : next
  317. 3250 g=g+5 : if g>250 then g=250
  318. 3260 if a$="" then 3170
  319. 3270 if a$<>"" then if asc(a$)<48 or asc(a$)>57 then 3170
  320. 3280 ifa$<>""thene$=e$+a$:print p$ : printtab(ts);a$:ts=ts+1:i=i+1
  321. 3290 goto 3170
  322. 3300 t$=left$(ti$,2)+":"+mid$(ti$,3,2)+":"+right$(ti$,2)
  323. 3310 poke v+21,0
  324. 3320 a=fre(0):print"[147]":poke53280,0:poke53281,0
  325. 3330 print"                        "
  326. 3340 print"           "
  327. 3350 print"                      "
  328. 3360 print"           "
  329. 3370 print"                       "
  330. 3380 :
  331. 3390 print"   fuer die erste disziplin haben sie"
  332. 3400 print"";tab(16);t$
  333. 3410 print"";tab(15);"benoetigt ."
  334. 3420 print"  goennen sie sich eine kurze pause und"
  335. 3430 print"  versuchen sie den puls zu beruhigen !"
  336. 3440 print"   wenn sie zum schiessen bereit sind,"
  337. 3450 print"         druecken sie eine taste !"
  338. 3460 get a$:if a$<>"" then 3490
  339. 3470 sys 40601,0,0,6
  340. 3480 goto 3460
  341. 3490 printchr$(14) : gosub 1130
  342. 3500 print" [194]enoetigen [211]ie fuer das [211]chiessen eine"
  343. 3510 print "              [193]nleitung  ?"
  344. 3520 print"    [194]itte geben [211]ie '[202]' fuer [202][193] oder"
  345. 3530 print "           '[206]' fuer [206][197][201][206] ein."
  346. 3540 get a$ : if a$="j" then 3570
  347. 3550 if a$="n" then 4050
  348. 3560 if a$<>"j" then 3540
  349. 3570 gosub 1130
  350. 3580 print" [215]enn der [211]chiessstand erscheint ,sehen"
  351. 3590 print "[211]ie die [218]ielvorrichtung  ihres [199]ewehres,";
  352. 3600 print "  die durch ein '^' dargestellt wird ."
  353. 3610 print"  [211]obald [211]ie die [210]echenaufgabe geloest"
  354. 3620 print "  haben , muessen [211]ie einen [211]chuss auf"
  355. 3630 print "  die [218]ehner und einen  [211]chuss auf die"
  356. 3640 print "             [197]iner abgeben."
  357. 3650 gosub1070
  358. 3660 gosub1130
  359. 3670 print" [196]azu fahren [211]ie mit dem  '^' unter die"
  360. 3680 print  "          entsprechende  [218]ahl."
  361. 3690 print"  [211]ie koennen die  [218]ielvorrichtung mit"
  362. 3700 print  "   den beiden [195]ursortasten  steuern :"
  363. 3710 print "    ^ = [218]ielvorrichtung nach links"
  364. 3720 print  "   -> = [218]ielvorrichtung nach rechts."
  365. 3730 print  "[211][208][193][195][197] = [211]chuss"
  366. 3740 print" [205][197][210][203][197] : [196]er [218]ehner einer [218]ahl ist die"
  367. 3750 print  "         erste [218]iffer (bei 53 ist der"
  368. 3760 print  "         [218]ehner = 5).
  369. 3770 [153]  "         str$er valiner einer (NULL)ahl ist die"
  370. 3780 [153]  "         (NULL)weite (NULL)iffer (bei 53 ist der"
  371. 3790 [153]  "         valiner = 3).
  372. 3800 gosub1070
  373. 3810 gosub1130
  374. 3820 print"    [206]achdem das  [197]rgebnis hinter der"
  375. 3830 print  "  [193]ufgabe erscheint , muessen  [211]ie mit"
  376. 3840 print  "    der '[210][197][212][213][210][206]' [212]aste abschliessen."
  377. 3850 print " [211]ollten [211]ie sich einmal verschiessen ,"
  378. 3860 print  "  koennen [211]ie mit  der [218]ielvorrichtung"
  379. 3870 print  "  unter das [198]eld '[204][207][197][211][195][200][197][206]' fahren und"
  380. 3880 print  "      einen [211]chuss darauf abgeben."
  381. 3890 print " [193][195][200][212][213][206][199] : [215]ird ein falsches [197]rgebnis"
  382. 3900 print  "           mit '[210][197][212][213][210][206]' abgeschlossen,"
  383. 3910 print  "           muessen [211]ie beim [204]anglauf"
  384. 3920 print  "           eine zusaetzliche [193]ufgabe"
  385. 3930 print  "           rechnen."
  386. 3940 gosub1070
  387. 3950 gosub 1130
  388. 3960 print" [193]chtung : [201]st das [197]rgebnis einer"
  389. 3970 print "           [210]echenaufgabe eine"
  390. 3980 print "           einstellige [218]ahl (0-9) ,"
  391. 3990 print "           so muessen sie im [218]ehnerfeld"
  392. 4000 print "           die '0' abschiessen."
  393. 4010 print"  [196]er [211]chiesswettbewerb ist 5 [193]ufgaben"
  394. 4020 print"                 lang ."
  395. 4030 gosub 1070
  396. 4040 print"[147]   bitte warten !"
  397. 4050 print"[147] [194]itte warten !":a$=""
  398. 4060 a$=mid$(t$,1,1)
  399. 4070 for i=2 to 8
  400. 4080 if mid$(t$,i,1)=":" then next
  401. 4090 a$=a$+mid$(t$,i,1)
  402. 4100 next
  403. 4110 poke 40506,dk: poke40507,qw:poke40508,qq
  404. 4120 sa=40510
  405. 4130 fori=1to3
  406. 4140 t=val(left$(t$(i),2)) : poke sa,t
  407. 4150 sa=sa+1
  408. 4160 t=val(mid$(t$(i),3,2)): poke sa,t
  409. 4170 sa=sa+1
  410. 4180 t=val(right$(t$(i),2)): poke sa,t
  411. 4190 sa=sa+1
  412. 4200 for y=1 to 10
  413. 4210 poke sa,asc(mid$(n$(i),y,1))
  414. 4220 sa=sa+1
  415. 4230 next
  416. 4240 next
  417. 4250 ti$=right$(a$,6) : clr : t$=ti$
  418. 4260 dim n$(12),t$(12)
  419. 4270 si=54272    : fl=si
  420. 4280 fh=si+1     : ll=si+24
  421. 4290 ww=si+4     : aa=si+5
  422. 4300 hh=si+6     : v=53248
  423. 4310 az=1        : k=1764
  424. 4320 tl=si+2     : th=si+3
  425. 4330 kf=56036
  426. 4340 p$=""
  427. 4350 dk=peek(40506):qw=peek(40507):qq=peek(40508)
  428. 4360 sa=40510
  429. 4370 for i=1 to 3
  430. 4380 t1$=str$(peek(sa)) :if val(t1$)<10 then t1$="0"+right$(t1$,1)
  431. 4390 sa=sa+1
  432. 4400 t2$=str$(peek(sa)) :if val(t2$)<10 then t2$="0"+right$(t2$,1)
  433. 4410 sa=sa+1
  434. 4420 t3$=str$(peek(sa)) :if val(t3$)<10 then t3$="0"+right$(t3$,1)
  435. 4430 t$(i)=right$(t1$,2)+right$(t2$,2)+right$(t3$,2)
  436. 4440 sa=sa+1:for y=1to10
  437. 4450 n$(i)=n$(i)+chr$(peek(sa))
  438. 4460 sa=sa+1
  439. 4470 next
  440. 4480 next
  441. 4485 a=fre(0)
  442. 4490 for i=1 to 5
  443. 4500 e(i)=int(rnd(1)*qw+1)
  444. 4510 z1(i)=int(rnd(1)*qw+1) : if z1(i)<=e(i) then 4500
  445. 4520 z2(i)=z1(i)-e(i)
  446. 4530 next
  447. 4540 ti$=t$
  448. 4550 printchr$(142)
  449. 4560 print"[147]" : poke 53280,5 : poke53281,15
  450. 4570 print"[169]    [223][169]          [223][169]    [223]"
  451. 4580 print"[169]zehner[223][169]  loeschen  [223][169] einer[223]"
  452. 4590 print"                                      "
  453. 4600 print"[146][144]  [176][178][178][178][178][178][178][178][178][174]               [146][144] [176][178][178][178][178][178][178][178][178][174]"
  454. 4610 print  "  13579   [166][166][166][166][166][166][166][166][166][166][166][166] [146][144] 13579"
  455. 4620 print"[145]2468024680"
  456. 4630 for i=1 to 10 : print : next
  457. 4640 for i=1 to 40 : print"[183]"; : next
  458. 4650 poke k,30 : poke kf,0
  459. 4660 poke 650,128
  460. 4670 print p$
  461. 4680 print z1(az)"-"z2(az)"="
  462. 4690 get a$
  463. 4700 print p$ : printtab(30);ti$
  464. 4710 if a$=chr$(13) and ag>1 then 5160
  465. 4720 if a$=""  then 4760
  466. 4730 if a$=""  then 4800
  467. 4740 if a$=" "  then 4840
  468. 4750 if a$<>"" then 4690
  469. 4760 poke k,32
  470. 4770 k=k+1 : kf=kf+1
  471. 4780 if k=1783 then k=k-1 : kf=kf-1
  472. 4790 goto 4650
  473. 4800 poke k,32
  474. 4810 k=k-1 : kf=kf-1
  475. 4820 if k=1744 then k=k+1 : kf=kf+1
  476. 4830 goto 4650
  477. 4840 for i=15 to 0 step-1
  478. 4850 poke ll,i       : poke aa,15
  479. 4860 poke hh,0       : poke fh,40
  480. 4870 poke fl,200     : poke ww,129
  481. 4880 next
  482. 4890 poke ww,0       : poke aa,0
  483. 4900 g=k-120 : gf=kf-120
  484. 4910 poke g,87 : poke gf,0
  485. 4920 g=g-40  : gf=gf-40
  486. 4930 for i=1 to 30 : next
  487. 4940 poke g+40,32
  488. 4950 if peek(g)<>32 then 4970
  489. 4960 goto 4910
  490. 4970 if ag>2 and peek(g) <>230 then 4690
  491. 4980 if peek(g)>47 and peek(g)<58 then 5010
  492. 4990 if peek(g)=230               then 5310
  493. 5000 goto 4690
  494. 5010 w=peek(g)-48 : poke g,32 : ag=ag+1
  495. 5020 if k<1764 then w=w*10 : wg=wg+w : z=z+1
  496. 5030 if k>1764 then          wg=wg+w : e=e+1
  497. 5040 if e>1 and k>1764 then ag=ag-1 : wg=wg-w : : poke g,w+48
  498. 5050 if z>1 and k<1764 then ag=ag-1 : wg=wg-w   : poke g,w/10+48
  499. 5060 if ag>1 then 5080
  500. 5070 goto 4690
  501. 5080 get a$
  502. 5090 print p$ : printtab(30);ti$
  503. 5100 print p$ : printtab(12);wg
  504. 5110 if a$=chr$(13) and ag>1 then 5160
  505. 5120 if a$="" then 4800
  506. 5130 if a$="" then 4760
  507. 5140 if a$=" " then 4840
  508. 5150 if a$<>"" then 5080
  509. 5160 if wg<>e(az)then5200
  510. 5170 if wg=e(az) then ag=0:e=0:z=0:k=1764:kf=56036
  511. 5180 if az=5 then 5340
  512. 5190 if wg=e(az) then wg=0 : az=az+1 : goto 4560
  513. 5200 print p$
  514. 5210 print"[154] falsch !!![146]        "
  515. 5220 sr=sr+1
  516. 5230 poke ll,15       : poke aa,16+9
  517. 5240 poke hh,4*16+4   : poke fh,10
  518. 5250 poke fl,147      : poke ww,17
  519. 5260 for i=1 to 400 : next
  520. 5270 poke ww,0        : poke aa,0
  521. 5280 poke hh,0
  522. 5290 print"[145]            "
  523. 5300 e=0 : z=0 : ag=0 : wg=0 : k=1764 : kf=56036 : goto4560
  524. 5310 printp$ : printtab(11);"       "
  525. 5320 wg=0 : ag=0 : e=0 : z=0
  526. 5330 goto 4560
  527. 5340 print"[147]" : poke 53280,0 : poke 53281,0
  528. 5350 t$=ti$
  529. 5360 poke 650,64
  530. 5370 print"                   "
  531. 5380 print"            "
  532. 5390 print"                  "
  533. 5400 print"             "
  534. 5410 print"                   "
  535. 5420 print""
  536. 5430 print"   fur die ersten beiden disziplinen"
  537. 5440 print tab(15);"haben  sie"
  538. 5450 print"";tab(16);left$(t$,2);":";mid$(t$,3,2);":";right$(t$,2)
  539. 5460 printtab(15);"benoetigt."
  540. 5470 print" da sie "sr" aufgaben falsch gerechnet"
  541. 5480 print"    haben, muessen sie beim langlauf"
  542. 5490 print"      "sr" aufgaben mehr rechnen."
  543. 5500 print"    wenn sie zum langlauf bereit sind,"
  544. 5510 print"         druecken sie eine taste."
  545. 5520 poke 40505,sr:poke40506,dk:poke40507,qw:poke40508,qq
  546. 5530 sa=40510
  547. 5540 for i=1to3
  548. 5550 t=val(left$(t$(i),2)) : poke sa,t
  549. 5560 sa=sa+1
  550. 5570 t=val(mid$(t$(i),3,2)) : poke sa,t
  551. 5580 sa=sa+1
  552. 5590 t=val(right$(t$(i),2)) : poke sa,t
  553. 5600 sa=sa+1
  554. 5610 for y=1 to 10
  555. 5620 poke sa,asc(mid$(n$(i),y,1))
  556. 5630 sa=sa+1
  557. 5640 next
  558. 5650 next
  559. 5660 get a$ : if a$<>"" then 5690
  560. 5670 a=fre(0):sys 40601,0,0,7
  561. 5680 goto 5660
  562. 5690 ti$=t$:clr:t$=ti$
  563. 5700 si=54272   : fl=si   : fh=si+1
  564. 5710 ll=si+24   : ww=si+4 : aa=si+5
  565. 5720 hh=si+6    : v=53248 : dd=2
  566. 5730 p$=""
  567. 5740 sr=peek(40505):dk=peek(40506):qw=peek(40507):qq=peek(40508)
  568. 5750 sa=40510
  569. 5760 for i=1 to 3
  570. 5770 t1$=str$(peek(sa)):if val(t1$)<10then t1$="0"+right$(t1$,1)
  571. 5780 sa=sa+1
  572. 5790 t2$=str$(peek(sa)):if val(t2$)<10then t2$="0"+right$(t2$,1)
  573. 5800 sa=sa+1
  574. 5810 t3$ =str$(peek(sa)):if val(t3$)<10 then t3$="0"+right$(t3$,1)
  575. 5820 t$(i)=right$(t1$,2)+right$(t2$,2)+right$(t3$,2)
  576. 5830 sa=sa+1:for y=1 to 10
  577. 5840 n$(i)=n$(i)+chr$(peek(sa))
  578. 5850 sa=sa+1
  579. 5860 next
  580. 5870 next
  581. 5880 dim e(20),z1(20),z2(20)
  582. 5890 goto 1190
  583. 5900 print"[147]" : poke 53280,0 : poke53281,0
  584. 5910 poke v+21,0
  585. 5920 tt$=ti$
  586. 5930 t$=left$(tt$,2)+":"+mid$(tt$,3,2)+":"+right$(tt$,2)
  587. 5940 print"        "
  588. 5950 print"    "
  589. 5960 print"      "
  590. 5970 print"    "
  591. 5980 print"          "
  592. 5990 print
  593. 6000 print"             "
  594. 6010 print"       herzlichen glueckwunsch !!"
  595. 6020 print  "       [163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  596. 6030 print"      sie haben das ziel  erreicht."
  597. 6040 print"        insgesamt  haben sie"
  598. 6050 print"";tab(16);t$
  599. 6060 print"";tab(15);"benoetigt."
  600. 6070 print"    bitte druecken sie eine taste !!!"
  601. 6080 print  "    [163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  602. 6090 get a$ : if a$<>"" then 6120
  603. 6100 sys 40601,0,0,8
  604. 6110 goto 6090
  605. 6120 print"[147]"
  606. 6130 print"                   "
  607. 6140 print"           "
  608. 6150 print"                 "
  609. 6160 print"             "
  610. 6170 print"                   "
  611. 6180 print
  612. 6190 for i=1 to 3
  613. 6200 if t$(i)="555555"then print" "i;"[157].","--:--:--",n$(i):next
  614. 6210 if i>3 then 6240
  615. 6220 print" "i;"[157].",left$(t$(i),2)":"mid$(t$(i),3,2)":"right$(t$(i),2),n$(i)
  616. 6230 next i
  617. 6240 if val(tt$)<val(t$(3)) then 6310
  618. 6250 print"  sie duerfen sich leider nicht in die"
  619. 6260 print"           bestenliste eintragen."
  620. 6270 print"      bitte eine taste druecken !!!"
  621. 6280 get a$ : if a$<>"" then print"[147]":goto6680
  622. 6290 sys 40601,0,0,5
  623. 6300 goto 6280
  624. 6310 print"     bravo, sie duerfen sich in die"
  625. 6320 print"           bestenliste eintragen."
  626. 6330 print"      bitte eine taste druecken !!!"
  627. 6340 get a$ : if a$<>"" then 6370
  628. 6350 sys 40601,0,0,5
  629. 6360 goto 6340
  630. 6370 print"[147]":i=0
  631. 6380 print"   bitte geben sie ihren namen ein !"
  632. 6390 print"   [163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  633. 6400 print"   (hoechstens 10 zeichen)"
  634. 6410 print"  name   ...........  ";
  635. 6420 get a$:if a$=""ora$=""ora$="[145]"ora$=""ora$="[157]"then 6420
  636. 6430 if a$=chr$(13) then 6500
  637. 6440 if a$="_" or a$=chr$(20) then 6470
  638. 6450 printa$;:n$=n$+a$:i=i+1:if i>10 then n$="":i=0:goto 6480
  639. 6460 goto 6420
  640. 6470 n$=left$(n$,i-2):i=i-1
  641. 6480 print"";tab(22);"           "
  642. 6490 print"[145]";tab(22);n$;:goto 6420
  643. 6500 if len(n$)>10then6420
  644. 6510 if len(n$)<10 then for i=len(n$) to 9:n$=n$+" ":next
  645. 6520 for i=1 to 3
  646. 6530 if val(tt$)<val(t$(i)) then 6550
  647. 6540 next
  648. 6550 print""
  649. 6560 a$="herzlichen glueckwunsch , "+n$
  650. 6570 printtab((40-len(a$))/2);a$
  651. 6580 print"   sie haben den  "i". platz belegt."
  652. 6590 print"   bitte druecken sie eine taste !!!"
  653. 6600 print"   [163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
  654. 6610 j=i
  655. 6620 get a$ : if a$="" then 6620
  656. 6630 for i=2 to j step-1
  657. 6640 t$(i+1)=t$(i) : n$(i+1)=n$(i)
  658. 6650 next
  659. 6660 t$(j)=tt$:n$(j)=n$
  660. 6670 print"[147]"
  661. 6680 print"           "
  662. 6690 print"      "
  663. 6700 print"          "
  664. 6710 print"      "
  665. 6720 print"          "
  666. 6730 print
  667. 6740 for i=1 to 3
  668. 6750 if t$(i)="555555" then print" "i;"[157].","--:--:--",n$(i):next
  669. 6760 if i>3 then 6790
  670. 6770 print" "i;"[157].",left$(t$(i),2)":"mid$(t$(i),3,2)":"right$(t$(i),2),n$(i)
  671. 6780 next i
  672. 6790 print"   wollen sie noch einmal spielen ???"
  673. 6800 print    "   [197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197]"
  674. 6810 print"  dann druecken sie bitte eine taste"
  675. 6830 get a$:ifa$=""then6830
  676. 6840 restore:i=0:az=0:dd=1:dk=0:sr=0:goto200
  677. 6850 :
  678. 6860 sys 40601,0,0,5
  679. 6870 if a$<>"j" then 6830
  680. 6880 end
  681. 6890 for i=1 to 3
  682. 6900 t$(i)="555555" : n$(i)=".........."
  683. 6910 next i
  684. 6920 return
  685.