home *** CD-ROM | disk | FTP | other *** search
/ 64'er 1990 October / 64er_Magazin_90-10_1990_Markt__Technik_de_Side_B.d64 / turbo-apfel.bas (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  8KB  |  387 lines

  1. 100 rem" ******************************
  2. 101 [143]" *                            *
  3. 102 rem" * [212]urbo-[193]pfelmaennchen  [214]1.6 *
  4. 103 [143]" *                            *
  5. 104 rem" ******************************
  6. 105 :
  7. 106 [151] 52,80:[151] 56,80
  8. 107 [151] 53280,15:[151] 53281,0
  9. 108 [153]"load":[151] 650,128
  10. 109 :
  11. 110 [139] a[178]0 [167] a[178]1:[147]"turbo-apfel.obj",8,1
  12. 111 :
  13. 112 k1$[178]"totototototototototototototototototototototototototototototototototototototototo"
  14. 113 k2$[178]"newnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnewnew"
  15. 114 k3$[178]"                                        "
  16. 115 :
  17. 116 [143]" ------------------------------
  18. 117 rem" [211]tartwerte
  19. 118 [143]" ------------------------------
  20. 119 :
  21. 120 li=-2.4:re=1:un=-1.25:ob=1.25
  22. 121 dx=(re-li)/159:dy=(un-ob)/199
  23. 122 it=40:poke 254,it
  24. 123 bk=0:c1=14:c2=6:c3=3
  25. 124 :
  26. 125 for i=23424 to 23550
  27. 126 : read j
  28. 127 : poke i,j
  29. 128 next i
  30. 129 :
  31. 130 poke 176,70:poke 51028,0
  32. 131 :
  33. 132 if peek(2)=1 then gosub 446
  34. 133 :
  35. 134 rem" ------------------------------
  36. 135 [143]" left$auptmenu
  37. 136 rem" ------------------------------
  38. 137 :
  39. 138 ko$[178]"(NULL)urbo-atnpfelmaennchen":ko[178]1
  40. 139 [141] 438
  41. 140 [153]:[153]
  42. 141 [153]"   [ 1 ]   str$aten anzeigen / eingeben"
  43. 142 [153]
  44. 143 [153]"   [ 2 ]   peekild laden"
  45. 144 [153]"   [ 3 ]close  peekild speichern"
  46. 145 [153]
  47. 146 [153]"   [ 4 ]close  peekild berechnen"
  48. 147 [153]"   [ 5 ]   atnusschnitt berechnen"
  49. 148 [153]
  50. 149 [153]"   [ 6 ]   peekild anzeigen"
  51. 150 [153]"   [ 7 ]   ascarben anzeigen / eingeben"
  52. 151 [153]"   [ 8 ]   ascarbrotation 1"
  53. 152 [153]"   [ 9 ]   ascarbrotation 2"
  54. 153 [153]
  55. 154 [153]"   [ 0 ]   str$irectory"
  56. 155 :
  57. 156 [151] 198,0:[146] 198,1:[161] a$:[139] a$[179]"0" [176] a$[177]"9" [167] 156
  58. 157 [145] [197](a$)[170]1 [141] 164,199,226,252,279,291,375,390,416,417
  59. 158 [137] 138
  60. 159 :
  61. 160 [143]" ------------------------------
  62. 161 rem" [196]irectory
  63. 162 [143]" ------------------------------
  64. 163 :
  65. 164 ko$="[196]irectory":ko=0
  66. 165 gosub 438
  67. 166 print:ze=0
  68. 167 :
  69. 168 open 15,8,15:open 2,8,0,"$"         
  70. 169 :
  71. 170 input#15,f$,fe$,ft$,fs$
  72. 171 if f$="00" then 175
  73. 172 print""f$", "fe$", "ft$", "fs$
  74. 173 goto 191
  75. 174 :
  76. 175 poke 781,2:sys 65478
  77. 176 get a$,a$:nt$=chr$(0):by=13
  78. 177 :
  79. 178 get a$,a$,l$,h$
  80. 179 if st then sys 65484:goto 190
  81. 180 print"  "asc(l$+nt$)+256*asc(h$+nt$);
  82. 181 :
  83. 182 for i=1 to by:get a$,b$:print a$b$;:next i
  84. 183 :
  85. 184 print
  86. 185 by=14:ze=ze+1:if ze<19 then 178
  87. 186 :
  88. 187 poke 198,0:wait 198,1:poke 198,0
  89. 188 gosub 438:print:ze=0:goto 178
  90. 189 :
  91. 190 if ze=0 then 192
  92. 191 close 2:close 15
  93. 192 poke 198,0:wait 198,1:poke 198,0
  94. 193 return
  95. 194 :
  96. 195 rem" ------------------------------
  97. 196 [143]" str$aten anzeigen/eingeben
  98. 197 rem" ------------------------------
  99. 198 :
  100. 199 ko$[178]"str$aten anzeigen/eingeben":ko[178]1
  101. 200 [141] 438:[153]:[153]
  102. 201 :
  103. 202 [153]" (NULL)eue valingaben fuer neue (NULL)erte. (NULL)ur"
  104. 203 [153]" (NULL)val(NULL)(NULL)(NULL)(NULL) veraendert nichts."
  105. 204 :
  106. 205 [153]:[153]
  107. 206 [153]" (NULL)inker  (NULL)and   ? ";li
  108. 207 [153]"on"[163]16);:[133] li
  109. 208 [153]" (NULL)echter (NULL)and   ? ";re
  110. 209 [153]"on"[163]16);:[133] re
  111. 210 [153]
  112. 211 [153]" (NULL)nterer (NULL)and   ? ";un
  113. 212 [153]"on"[163]16);:[133] un
  114. 213 [153]" (NULL)berer  (NULL)and   ? ";ob
  115. 214 [153]"on"[163]16);:[133] ob
  116. 215 [153]:[153]
  117. 216 [153]" right$terationsgrenze <256?";it
  118. 217 [153]"on"[163]22);:[133] it
  119. 218 [139] it[179]1 [176] it[177]255 [167] [153]"on"[163]24)[200](k3$,[195]([196](it)))"on":it[178]0:[137] 216
  120. 219 :
  121. 220 [142]
  122. 221 :
  123. 222 [143]" ------------------------------
  124. 223 rem" [194]ild laden
  125. 224 [143]" ------------------------------
  126. 225 :
  127. 226 ko$="[194]ild laden":ko=1
  128. 227 gosub 438:print:print
  129. 228 :
  130. 229 print" [194]itte [206]ame ohne 'ap.' angeben."
  131. 230 print:print:na$=""
  132. 231 input" [206]ame";na$
  133. 232 :
  134. 233 if na$="" then return
  135. 234 sys 49182,"ap."+na$,8,1
  136. 235 :
  137. 236 open 15,8,15
  138. 237 input#15,f$,fe$,ft$,fs$
  139. 238 close 15
  140. 239 :
  141. 240 print" "f$", "fe$", "ft$", "fs$
  142. 241 if f$<>"00" then 245
  143. 242 :
  144. 243 gosub 446
  145. 244 :
  146. 245 poke 198,0:wait 198,1:poke 198,0
  147. 246 return
  148. 247 :
  149. 248 rem" ------------------------------
  150. 249 [143]" peekild speichern
  151. 250 rem" ------------------------------
  152. 251 :
  153. 252 ko$[178]"peekild speichern":ko[178]1
  154. 253 [141] 438:[153]:[153]
  155. 254 :
  156. 255 [139] [194](2)[178]1 [167] 259
  157. 256 [153]" vals befindet sich kein peekild im (NULL)peicher"
  158. 257 [137] 272
  159. 258 :
  160. 259 [153]" peekitte (NULL)ame ohne 'ap.' angeben."
  161. 260 [153]:[153]:na$[178]""
  162. 261 [133]" (NULL)ame";na$
  163. 262 :
  164. 263 [139] na$[178]"" [167] [142]
  165. 264 :
  166. 265 [158] 49179,"ap."[170]na$,8
  167. 266 :
  168. 267 [159] 15,8,15
  169. 268 [132]15,f$,fe$,ft$,fs$
  170. 269 [153]" "f$", "fe$", "ft$", "fs$
  171. 270 [160] 15
  172. 271 :
  173. 272 [151] 198,0:[146] 198,1:[151] 198,0
  174. 273 [142]
  175. 274 :
  176. 275 [143]" ------------------------------
  177. 276 rem" [194]ild berechnen
  178. 277 [143]" ------------------------------
  179. 278 :
  180. 279 poke 2,0:poke 254,it
  181. 280 gosub 452:sys 49161
  182. 281 sys 49170:sys 49176
  183. 282 poke 2,1
  184. 283 poke 198,0:wait 198,1:poke 198,0
  185. 284 gosub 456
  186. 285 return
  187. 286 :
  188. 287 rem" ------------------------------
  189. 288 [143]" atnusschnitt berechnen
  190. 289 rem" ------------------------------
  191. 290 :
  192. 291 ko$[178]"atnusschnitt berechnen":ko[178]1
  193. 292 [141] 438:[153]:[153]
  194. 293 :
  195. 294 [139] [194](2)[178]1 [167] 299
  196. 295 [153]" vals befindet sich kein peekild im (NULL)peicher"
  197. 296 [151] 198,0:[146] 198,1:[151] 198,0
  198. 297 [142]
  199. 298 :
  200. 299 [153]" atnuswahl des peekildausschnittes mit den"
  201. 300 [153]" len(NULL)(NULL)(NULL)(NULL)(NULL)-(NULL)asten."
  202. 301 [153]
  203. 302 [153]" +/- vergroessert/verkleinert den atnus-"
  204. 303 [153]" schnitt."
  205. 304 [153]
  206. 305 [153]" ^ beschleunigt alle peekewegungen."
  207. 306 [153]" (NULL)ochmaliges str$ruecken hebt die peeke-"
  208. 307 [153]" schleunigungen wieder auf."
  209. 308 [153]
  210. 309 [153]" valnde der atnuswahl mit (NULL)val(NULL)(NULL)(NULL)(NULL)."
  211. 310 [153]
  212. 311 [153]" atnbbruch mit (NULL)."
  213. 312 :
  214. 313 [151] 198,0:[146] 198,1:[161] a$
  215. 314 [139] a$[178]"q" [167] [142]
  216. 315 :
  217. 316 [141] 452
  218. 317 [151] 24568,110:[151] 24569,111
  219. 318 x1[178]0:y1[178]0:y2[178]24:x2[178]y2[172]1.6:sp[178]1:xs[178]2
  220. 319 [151] 53287,1:[151] 53288,1
  221. 320 [151] 53269,3
  222. 321 :
  223. 322 h1[178]x1[170]24
  224. 323 [151] 53249,y1[170]50:[151] 53251,y2[170]30
  225. 324 hi[178][194](53264) [175] 252
  226. 325 hi[178]hi[170]([171]1[172]([181](h1)[177]255))
  227. 326 hi[178]hi[170]([171]2[172]([181](x2)[177]255))
  228. 327 [151] 53264,hi
  229. 328 [151] 53248,h1 [175] 255
  230. 329 [151] 53250,x2 [175] 255
  231. 330 :
  232. 331 [151] 198,0:[146] 198,1:[161] a$
  233. 332 [139] a$[178]"^" [167] sp[178]9[171]sp:xs[178]10[171]xs
  234. 333 [139] a$[178]"" [167] 353
  235. 334 [139] a$[178]"cmd" [167] 356
  236. 335 [139] a$[178]"" [167] 359
  237. 336 [139] a$[178]"on" [167] 362
  238. 337 [139] a$[178]"+" [167] 365
  239. 338 [139] a$[178]"-" [167] 368
  240. 339 [139] a$[179][177][199](13) [175] a$[179][177]"q" [167] 331
  241. 340 [139] a$[178]"q" [167] [151] 53269,0:[141] 456:[142]
  242. 341 :
  243. 342 re[178]li[170](x2[173]2)[172]dx:li[178]li[170](x1[173]2)[172]dx
  244. 343 un[178]ob[170]y2[172]dy:ob[178]ob[170]y1[172]dy
  245. 344 dx[178](re[171]li)[173]159:dy[178](un[171]ob)[173]199
  246. 345 :
  247. 346 [151] 53269,0:[141] 456:[141] 438
  248. 347 [153]:[153]
  249. 348 [153]" right$terationsgrenze <256?";it
  250. 349 [153]"on"[163]22);:[133] it
  251. 350 [139] it[179]1 [176] it[177]255 [167] [153]"on"[163]24)[200](k3$,[195]([196](it)))"on":it[178]0:[137] 348
  252. 351 [137] 279
  253. 352 :
  254. 353 [139] x2[170]xs[177]319 [167] 331
  255. 354 x1[178]x1[170]sp:x2[178]x2[170]sp:[137] 322
  256. 355 :
  257. 356 [139] x1[171]xs[179]0 [167] 331
  258. 357 x1[178]x1[171]sp:x2[178]x2[171]sp:[137] 322
  259. 358 :
  260. 359 [139] y2[170]sp[177]199 [167] 331
  261. 360 y1[178]y1[170]sp:y2[178]y2[170]sp:[137] 322
  262. 361 :
  263. 362 [139] y1[171]sp[179]0 [167] 331
  264. 363 y1[178]y1[171]sp:y2[178]y2[171]sp:[137] 322
  265. 364 :
  266. 365 [139] y2[170]sp[177]199 [176] x2[170]sp[172]1.6[177]319 [167] 331
  267. 366 y2[178]y2[170]sp:x2[178]x2[170]sp[172]1.6:[137] 322
  268. 367 :
  269. 368 [139] y2[171]y1[171]sp[179]2 [167] 331
  270. 369 y2[178]y2[171]sp:x2[178]x2[171]sp[172]1.6:[137] 322
  271. 370 :
  272. 371 [143]" ------------------------------
  273. 372 rem" [194]ild anzeigen
  274. 373 [143]" ------------------------------
  275. 374 :
  276. 375 if peek(2)=1 then 381
  277. 376 ko$="[194]ild anzeigen":ko=1
  278. 377 gosub 438:print:print
  279. 378 print" [197]s befindet sich kein [194]ild im [211]peicher"
  280. 379 goto 382
  281. 380 :
  282. 381 gosub 452
  283. 382 poke 198,0:wait 198,1:poke 198,0
  284. 383 gosub 456
  285. 384 return
  286. 385 :
  287. 386 rem" ------------------------------
  288. 387 [143]" ascarben anzeigen/eingeben
  289. 388 rem" ------------------------------
  290. 389 :
  291. 390 ko$[178]"ascarben anzeigen/eingeben":ko[178]1
  292. 391 [141] 438:[153]:[153]
  293. 392 :
  294. 393 [153]" (NULL)eue valingaben fuer neue (NULL)erte. (NULL)ur"
  295. 394 [153]" (NULL)val(NULL)(NULL)(NULL)(NULL) veraendert nichts."
  296. 395 [153]:[153]
  297. 396 [153]" ascarbe #1?";c1
  298. 397 [153]"on"[163]9);:[133] c1
  299. 398 [139] c1[179]0 [176] c1[177]15 [167] [153]"on"[163]11)[200](k3$,[195]([196](c1)))"on":c1[178]0:[137] 396
  300. 399 [153]" ascarbe #2?";c2
  301. 400 [153]"on"[163]9);:[133] c2
  302. 401 [139] c2[179]0 [176] c2[177]15 [167] [153]"on"[163]11)[200](k3$,[195]([196](c2)))"on":c2[178]0:[137] 399
  303. 402 [153]" ascarbe #3?";c3
  304. 403 [153]"on"[163]9);:[133] c3
  305. 404 [139] c3[179]0 [176] c3[177]15 [167] [153]"on"[163]11)[200](k3$,[195]([196](c3)))"on":c3[178]0:[137] 402
  306. 405 [153]
  307. 406 [153]" left$intergrund?";bk
  308. 407 [153]"on"[163]12);:[133] bk
  309. 408 [139] bk[179]0 [176] bk[177]15 [167] [153]"on"[163]14)[200](k3$,[195]([196](bk)))"on":bk[178]0:[137] 406
  310. 409 :
  311. 410 [142]
  312. 411 :
  313. 412 [143]" ------------------------------
  314. 413 rem" [197]ffekte 1 & 2
  315. 414 [143]" ------------------------------
  316. 415 :
  317. 416 ad=49164:goto 419
  318. 417 ad=49167
  319. 418 :
  320. 419 if peek(2)=1 then 426
  321. 420 ko$="[198]arbrotation"+str$(val(a$)-7):ko=1
  322. 421 gosub 438:print:print
  323. 422 print" [197]s befindet sich kein [194]ild im [211]peicher"
  324. 423 poke 198,0:wait 198,1:poke 198,0
  325. 424 return
  326. 425 :
  327. 426 gosub 452
  328. 427 poke 198,0:wait 198,1:poke 198,0
  329. 428 sys ad
  330. 429 poke 198,0:wait 198,1:get a$
  331. 430 if a$<>chr$(13) then 428
  332. 431 gosub 456
  333. 432 return
  334. 433 :
  335. 434 rem" ------------------------------
  336. 435 [143]" (NULL)nterprogramme
  337. 436 rem" ------------------------------
  338. 437 :
  339. 438 [153]"load";
  340. 439 [139] ko[179][177]0 [167] [129] i[178]1 [164] ko:[153]:[130] i
  341. 440 le[178][195](ko$):sp[178]20[171]le[173]2
  342. 441 [153] [163]sp);[200](k1$,le)
  343. 442 [153] [163]sp);"";ko$;"waitlistrnd"
  344. 443 [153] [163]sp);"log";[200](k2$,le[171]1);"waitcos"
  345. 444 [142]
  346. 445 :
  347. 446 c[178][194](158):c3[178][194](159)
  348. 447 c1[178][181](c[173]16):c2[178]c [175] 15
  349. 448 bk[178][194](167):[158] 49173:[151] 2,1
  350. 449 it[178][194](254)
  351. 450 [142]
  352. 451 :
  353. 452 [151] 53280,0:[151] 53281,bk
  354. 453 [158] 49152:[158] 49158,c1,c2,c3
  355. 454 [142]
  356. 455 :
  357. 456 [151] 53280,15:[151] 53281,0:[158] 49155
  358. 457 [142]
  359. 458 :
  360. 459 [143]" ------------------------------
  361. 460 rem" [211]prite-[196]aten
  362. 461 [143]" ------------------------------
  363. 462 :
  364. 463 data 255,255,255,192,  0,  0
  365. 464 data 192,  0,  0,192,  0,  0
  366. 465 data 192,  0,  0,192,  0,  0
  367. 466 data 192,  0,  0,192,  0,  0
  368. 467 data 192,  0,  0,192,  0,  0
  369. 468 data 192,  0,  0,192,  0,  0
  370. 469 data 192,  0,  0,192,  0,  0
  371. 470 data 192,  0,  0,192,  0,  0
  372. 471 data 192,  0,  0,192,  0,  0
  373. 472 data 192,  0,  0,192,  0,  0
  374. 473 data 192,  0,  0
  375. 474 data 0
  376. 475 data   0,  0,  3,  0,  0,  3
  377. 476 data   0,  0,  3,  0,  0,  3
  378. 477 data   0,  0,  3,  0,  0,  3
  379. 478 data   0,  0,  3,  0,  0,  3
  380. 479 data   0,  0,  3,  0,  0,  3
  381. 480 data   0,  0,  3,  0,  0,  3
  382. 481 data   0,  0,  3,  0,  0,  3
  383. 482 data   0,  0,  3,  0,  0,  3
  384. 483 data   0,  0,  3,  0,  0,  3
  385. 484 data   0,  0,  3,  0,  0,  3
  386. 485 data 255,255,255
  387.