home *** CD-ROM | disk | FTP | other *** search
/ 64'er / 64ER_CD.iso / sh4x / sh42.d64 / rechner.quell (.txt) < prev    next >
Commodore BASIC  |  1995-03-30  |  19KB  |  1,216 lines

  1. 10 OPEN1,8,2,"ROBJ,P,W":SYS32768:.OPT O1:*= $0E00
  2. 11 ;
  3. 20 JMP START
  4. 100 PRINT  PLA
  5. 101 STA $9B
  6. 102 PLA
  7. 103 STA $9C
  8. 104 LDY #00
  9. 105 LDA #$1F
  10. 106 BNE P1
  11. 107 P3  LDA ($9B),Y
  12. 108 P1  INC $9B
  13. 109 BNE P2
  14. 110 INC $9C
  15. 111 P2  CMP #00
  16. 112 BEQ P33
  17. 113 JSR $FFD2
  18. 114 JMP P3
  19. 115 P33 JMP ($009B)
  20. 116 ;
  21. 120 DEZIMAL  SED
  22. 121 LDX #08
  23. 122 STA $9B
  24. 123 LDA #00
  25. 124 STA $9C
  26. 125 D1  ASL $9B
  27. 126 ADC $9C
  28. 127 STA $9C
  29. 128 DEX
  30. 129 BNE D1
  31. 130 CLD
  32. 131 PHA
  33. 132 LSR A
  34. 133 LSR A
  35. 134 LSR A
  36. 135 LSR A
  37. 136 JSR D2
  38. 137 PLA
  39. 138 D2  AND #$0F
  40. 139 CLC
  41. 140 ADC #$30
  42. 141 JMP $FFD2
  43. 142 ;
  44. 150 DISKAUS  LDA DI1
  45. 151 STA DI2
  46. 152 CMP #$12
  47. 153 BNE DI3
  48. 154 LDA #$92
  49. 156 BNE DI4
  50. 157 DI3  LDA #$12
  51. 158 DI4  STA DI22
  52. 159 JSR PRINT
  53. 160 ;
  54. 161 DI1 .BYTE $12,$B0,$C0,$C0,$C0,$C0,$C0,$C0
  55. 162 .BYTE $AE,$9D,$9D,$9D,$9D,$9D,$9D,$9D
  56. 163 .BYTE $9D,$11,$DD
  57. 164 DI22  .BYTE $92,$20,$20
  58. 165 DI2 .BYTE $12,$20
  59. 166 .BYTE $20,$D7,$20,$DD,$9D,$9D,$9D,$9D
  60. 167 .BYTE $9D,$9D,$9D,$9D,$11,$DD,$20,$20
  61. 168 .BYTE $D5,$C9,$20,$20,$DD,$9D,$9D,$9D
  62. 169 .BYTE $9D,$9D,$9D,$9D,$9D,$11,$DD,$20
  63. 170 .BYTE $20,$CA,$CB,$20,$20,$DD,$9D,$9D
  64. 171 .BYTE $9D,$9D,$9D,$9D,$9D,$9D,$11,$DD
  65. 172 .BYTE $20,$20,$D5,$C9,$20,$20,$DD,$9D
  66. 173 .BYTE $9D,$9D,$9D,$9D,$9D,$9D,$9D,$11
  67. 174 .BYTE $DD,$20,$20,$DD,$DD,$20,$20,$DD
  68. 175 .BYTE $9D,$9D,$9D,$9D,$9D,$9D,$9D,$9D
  69. 176 .BYTE $11,$DD,$20,$20,$CA,$CB,$20,$20
  70. 177 .BYTE $DD,$9D,$9D,$9D,$9D,$9D,$9D,$9D
  71. 178 .BYTE $9D,$11,$AD,$C0,$C0,$C0,$C0,$C0
  72. 179 .BYTE $C0,$BD,$00
  73. 180 RTS
  74. 181 ;
  75. 200 OBEN  PHA
  76. 201 LDA #$20
  77. 202 LDY #00
  78. 203 O1  STA $0400,Y
  79. 204 DEY
  80. 205 BNE O1
  81. 206 LDY #$90
  82. 207 O2  STA $04FF,Y
  83. 208 DEY
  84. 209 BNE O2
  85. 210 PLA
  86. 211 STA DI1
  87. 212 LDA $D3
  88. 213 PHA
  89. 214 LDA $D6
  90. 215 PHA
  91. 216 TXA
  92. 217 PHA
  93. 218 LDX #01
  94. 219 LDY #04
  95. 220 JSR $E50C
  96. 221 JSR DISKAUS
  97. 222 PLA
  98. 223 STA DI1
  99. 224 LDX #01
  100. 225 LDY #$1C
  101. 226 JSR $E50C
  102. 227 JSR DISKAUS
  103. 228 JSR ZWISCHEN
  104. 229 PLA
  105. 230 TAX
  106. 231 PLA
  107. 232 TAY
  108. 233 JSR $E50C
  109. 234 LDA #$63
  110. 235 LDY #$27
  111. 236 O3  STA $058F,Y
  112. 237 DEY
  113. 238 BNE O3
  114. 239 JMP FARBE
  115. 240 ;
  116. 250 ZWISCHEN  LDX #01
  117. 251 LDY #$0E
  118. 252 JSR $E50C
  119. 253 JSR PRINT
  120. 254 .ASC "[146]PASS: ":.BYTE 0
  121. 255 LDA $61
  122. 256 JSR DEZIMAL
  123. 257 LDX #03
  124. 258 LDY #$0E
  125. 259 JSR $E50C
  126. 260 JSR PRINT
  127. 261 .ASC "[146]ERRORS: ":.BYTE 0
  128. 262 LDA $62
  129. 263 JSR DEZIMAL
  130. 264 LDX #05
  131. 265 LDY #$0E
  132. 266 JSR $E50C
  133. 267 JSR PRINT
  134. 268 .ASC "[146]ZIELDISK: ":.BYTE 0
  135. 269 LDX $8C
  136. 270 INX
  137. 271 TXA
  138. 272 JSR DEZIMAL
  139. 273 LDX #07
  140. 274 LDY #$0E
  141. 275 JSR $E50C
  142. 276 JSR PRINT
  143. 277 .ASC "[146]ZEIT : ":.BYTE 0
  144. 278 LDA $DC0B
  145. 279 LDA $DC0A
  146. 280 JSR Z1:JSR $FFD2
  147. 281 LDA #$2E
  148. 282 JSR $FFD2
  149. 283 LDA $DC09
  150. 284 PHA
  151. 285 JSR Z2
  152. 286 JSR $FFD2
  153. 287 PLA
  154. 288 JSR Z1
  155. 289 JSR $FFD2
  156. 290 LDA $DC08
  157. 291 RTS
  158. 292 ;
  159. 295 Z1  AND #$0F
  160. 296 ORA #$30
  161. 297 RTS
  162. 298 Z2  LSR A
  163. 299 LSR A
  164. 300 LSR A
  165. 301 LSR A
  166. 302 ORA #$30
  167. 303 RTS
  168. 304 ;
  169. 320 FARBE  LDA #06
  170. 321 LDY #00
  171. 322 F1  STA $D800,Y
  172. 323 STA $D900,Y
  173. 324 STA $DA00,Y
  174. 325 STA $DB00,Y
  175. 326 INY
  176. 327 BNE F1
  177. 328 RTS
  178. 329 ;
  179. 340 BILDAUS  LDA $D011
  180. 341 AND #$EF
  181. 342 STA $D011
  182. 343 LDX #00
  183. 344 LDY #$96
  184. 345 BI1  INX
  185. 346 BNE BI1
  186. 347 DEY
  187. 348 BNE BI1
  188. 349 RTS
  189. 350 ;
  190. 360 BILDAN  LDA $D011
  191. 361 ORA #$10
  192. 362 STA $D011
  193. 363 RTS
  194. 364 ;
  195. 365 TASTE  LDA #00
  196. 366 STA $C6
  197. 367 TA1  JSR $FFE4
  198. 368 BEQ TA1
  199. 369 RTS
  200. 370 ;
  201. 371 UHRAUS  LDA #00
  202. 372 STA $DC0B
  203. 373 RTS
  204. 374 ;
  205. 375 UHRAN  LDA $DC08
  206. 376 STA $DC08
  207. 377 RTS
  208. 378 ;
  209. 380 LINKSSYM  LDA #$12
  210. 381 LDX #$92
  211. 382 BNE LK1
  212. 383 ;
  213. 384 RECHTSSYM  LDX #$12
  214. 385 LDA #$92
  215. 386 LK1  JMP OBEN
  216. 387 ;
  217. 390 QUELL CLI
  218. 391 JSR UHRAUS
  219. 392 INC $61
  220. 393 JSR LINKSSYM
  221. 394 QU1  JSR BILDAN
  222. 395 JSR TASTE
  223. 396 JSR BILDAUS:JSR UHRAN
  224. 397 SEI
  225. 398 RTS
  226. 399 ;
  227. 400 ZIEL  CLI
  228. 401 JSR UHRAUS
  229. 402 JSR RECHTSSYM
  230. 403 JMP QU1
  231. 404 ;
  232. 410 SYNCERR  JSR TRACKERR
  233. 411 JSR PRINT
  234. 412 .ASC ":SYNC NOT FOUND":.BYTE 0
  235. 413 SEI
  236. 414 RTS
  237. 415 ;
  238. 420 HEADERR  JSR TRACKERR
  239. 421 JSR PRINT
  240. 422 .ASC ":HEADER NOT FOUND":.BYTE 0
  241. 423 SEI
  242. 424 RTS
  243. 425 ;
  244. 430 TRACKERR  JSR PRINT
  245. 431 .BYTE 13
  246. 432 .ASC "TRACKERROR IN ":.BYTE 0
  247. 433 LDA $FB
  248. 434 JSR DEZIMAL
  249. 435 LDX $FB
  250. 436 INC TRACKTAB,X
  251. 437 RTS
  252. 438 ;
  253. 440 READERR  INC $62
  254. 441 PHA
  255. 442 JSR PRINT
  256. 443 .BYTE 13
  257. 444 .ASC "READ ERROR,":.BYTE 0
  258. 445 LDA $FB
  259. 446 JSR DEZIMAL
  260. 447 LDA #$2C
  261. 448 JSR $FFD2
  262. 449 PLA
  263. 450 JSR DEZIMAL
  264. 451 SEI
  265. 452 RTS
  266. 453 ;
  267. 460 UNLESBAR  LDX #$17
  268. 461 LDY #01
  269. 462 JSR $E50C
  270. 463 JSR PRINT
  271. 464 .ASC "DISKETTE IST NICHT LESBAR !"
  272. 465 .BYTE 0
  273. 466 JSR TASTE
  274. 467 RTS
  275. 468 ;
  276. 470 ENDE  DEC $FE
  277. 471 JSR PRINT
  278. 472 .BYTE 13,13
  279. 473 .ASC "WEITER MIT TASTENDRUCK":.BYTE 0
  280. 474 CLI
  281. 475 JSR UHRAUS
  282. 476 JSR LINKSSYM
  283. 477 JSR BILDAN
  284. 478 JSR TASTE
  285. 479 LDA #03
  286. 480 STA $DD00
  287. 481 RTS
  288. 482 ;
  289. 490 TRACKTAB  .BYTE 0,0,0,0,0,0,0,0,0,0
  290. 491 .BYTE 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  291. 492 .BYTE 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  292. 493 ;
  293. 500 SEKTOREN  LDX #05
  294. 501 LDA $FB
  295. 502 SE1  DEX
  296. 503 CMP STAB,X
  297. 504 BCS SE1
  298. 505 LDA STAB1,X
  299. 506 STA $6B
  300. 507 RTS
  301. 508 ;
  302. 509 STAB  .BYTE $FF,$24,$1F,$19,$12
  303. 510 STAB1 .BYTE $11,$11,$12,$13,$15
  304. 511 ;
  305. 520 TRACKSTART  LDX $FB
  306. 521 LDA $AB
  307. 522 CLC
  308. 523 ADC LOWTAB,X
  309. 524 STA $AB
  310. 525 LDA $AC
  311. 526 ADC HIGHTAB,X
  312. 527 STA $AC
  313. 528 RTS
  314. 529 ;
  315. 530 ZAEHLSETZ  LDX $FB
  316. 531 LDA ZTAB,X
  317. 532 STA ZAE+1
  318. 533 RTS
  319. 534 ;
  320. 545 ;
  321. 550 HOLMASCH  JSR BILDAUS
  322. 551 SEI
  323. 552 LDA #$35
  324. 553 STA $01
  325. 554 LDA #00
  326. 555 STA $A7:LDA #$15
  327. 556 STA $A9
  328. 557 LDA #$09
  329. 558 STA $AA
  330. 559 LDA #$70
  331. 560 STA $A8
  332. 561 LDX #05
  333. 562 HO2  LDY #00
  334. 563 HO1  LDA ($A9),Y
  335. 564 STA ($A7),Y
  336. 565 INY
  337. 566 BNE HO1
  338. 567 INC $A8
  339. 568 INC $AA
  340. 569 DEX
  341. 570 BNE HO2
  342. 571 LDA #$37
  343. 572 STA $01
  344. 573 CLI
  345. 574 JMP FARBE
  346. 575 ;
  347. 580 STARTMASCH  LDA #00
  348. 581 STA $A7
  349. 582 STA $A9
  350. 583 LDA #$70
  351. 584 STA $A8
  352. 585 LDA #03
  353. 586 STA $AA
  354. 587 SM5  LDA $F9
  355. 588 JSR $ED0C
  356. 589 LDA #$6F
  357. 590 JSR $EDB9
  358. 591 LDA #$4D
  359. 592 JSR $EDDD
  360. 593 LDA #$2D
  361. 594 JSR $EDDD
  362. 595 LDA #$57
  363. 596 JSR $EDDD
  364. 597 LDA $A9
  365. 598 JSR $EDDD
  366. 599 LDA $AA
  367. 600 JSR $EDDD
  368. 601 LDA #$20
  369. 602 JSR $EDDD
  370. 603 LDY #00
  371. 604 SM1  LDA ($A7),Y
  372. 605 JSR $EDDD
  373. 606 INY
  374. 607 CPY #$20
  375. 608 BCC SM1
  376. 609 JSR $EDFE
  377. 610 CLC
  378. 611 LDA $A7
  379. 612 ADC #$20
  380. 613 STA $A7
  381. 614 BCC SM2
  382. 615 INC $A8
  383. 616 CLC
  384. 617 SM2  LDA $A9
  385. 618 LDX $AA
  386. 619 ADC #$20
  387. 620 STA $A9
  388. 621 BCC SM3
  389. 622 INC $AA
  390. 623 INX
  391. 624 SM3  CPX #08
  392. 625 BCC SM5
  393. 626 LDA $F9
  394. 627 JSR $ED0C
  395. 628 LDA #$6F
  396. 629 JSR $EDB9
  397. 630 LDX #04
  398. 631 SM6  LDA MEM,X
  399. 632 JSR $EDDD
  400. 633 DEX
  401. 634 BPL SM6
  402. 635 JSR $EDFE
  403. 636 L12  LDA #$93
  404. 637 JSR $FFD2
  405. 638 LDX #$0A
  406. 639 LDY #$00
  407. 640 JMP $E50C
  408. 641 ;
  409. 642 MEM  .BYTE 3,12
  410. 643 .ASC "E-M"
  411. 644 ;
  412. 650 OPEN  LDA #15
  413. 651 LDX $F9
  414. 652 TAY
  415. 653 JSR $FFBA
  416. 654 LDA #00
  417. 655 JSR $FFBD
  418. 656 JMP $FFC0
  419. 657 ;
  420. 660 EINEIN  LDY #$FF
  421. 661 LDA #03
  422. 662 STA EE+2
  423. 663 JSR IN
  424. 664 LDA $03FF
  425. 665 RTS
  426. 666 ;
  427. 670 EIN  LDY #00
  428. 671 LDA #04
  429. 672 STA EE+2
  430. 673 JSR IN
  431. 674 LDA #03:STA EE+2
  432. 675 LDY #$BC
  433. 676 ;
  434. 680 IN  STX $03BB
  435. 681 LDX #11
  436. 682 STX $DD00
  437. 683 LDX #03
  438. 684 IN1  LDA $DD00
  439. 685 BPL IN1
  440. 686 STX $DD00
  441. 687 IN2  NOP
  442. 688 NOP
  443. 689 LDA #11
  444. 690 STA $DD00
  445. 691 NOP
  446. 692 NOP
  447. 693 LDX #03
  448. 694 STX $DD00
  449. 695 LDX $DD00
  450. 696 LDA TAB57,X
  451. 697 LDX $DD00
  452. 698 ORA TAB46,X
  453. 699 NOP
  454. 700 LDX $DD00
  455. 701 ORA TAB13,X
  456. 702 LDX $DD00
  457. 703 ORA TAB02,X
  458. 704 EE  STA $0400,Y
  459. 705 INY
  460. 706 BNE IN2
  461. 707 LDX $03BB
  462. 708 RTS
  463. 709 ;
  464. 730 ;
  465. 750 EINAUS  LDY #$FF
  466. 751 STA $03FF
  467. 752 LDA #03
  468. 753 STA AA+2
  469. 754 JMP OUT
  470. 755 ;
  471. 756 AUS  LDY #00
  472. 757 LDA #04
  473. 758 STA AA+2
  474. 759 JSR OUT
  475. 760 LDA #03:STA AA+2
  476. 761 LDY #$BC
  477. 762 ;
  478. 763 OUT  STX $03BB
  479. 764 LDA #11
  480. 765 STA $DD00
  481. 766 LDX #03
  482. 767 OU1  LDA $DD00
  483. 768 BPL OU1
  484. 769 STX $DD00
  485. 770 AA  LDA $0400,Y
  486. 771 LDX #11
  487. 772 STX $DD00
  488. 773 TAX
  489. 774 AND #240
  490. 775 STA $DD00
  491. 776 LSR A
  492. 777 LSR A
  493. 778 AND #240
  494. 779 STA $DD00
  495. 780 TXA
  496. 781 AND #15
  497. 782 TAX
  498. 783 LDA TAB,X
  499. 784 STA $DD00
  500. 785 LSR A
  501. 786 LSR A
  502. 787 AND #240
  503. 788 STA $DD00
  504. 789 NOP
  505. 790 NOP
  506. 791 NOP
  507. 792 INY
  508. 793 BNE AA
  509. 794 LDA #03
  510. 795 STA $DD00
  511. 796 LDX $03BB
  512. 797 RTS
  513. 798 .BYTE 0,0,0,0,0,0,0,0
  514. 799 TAB02  .BYTE 0,0,0,$05,0,0,0,0
  515. 800 TAB13  .BYTE 0,0,0,$0A,0,0,0,0
  516. 801 TAB46  .BYTE 0,0,0,$50,0,0,0,0
  517. 802 TAB57  .BYTE 0,0,0,$A0,0,0,0,0
  518. 803 .BYTE 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  519. 804 .BYTE 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  520. 805 .BYTE 0,0,0,$01,0,0,0,0,0,0,0,$02,0,0,0,0
  521. 806 .BYTE 0,0,0,$10,0,0,0,0,0,0,0,$20,0,0,0,0
  522. 807 .BYTE 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  523. 808 .BYTE 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  524. 809 .BYTE 0,0,0,$04,0,0,0,0,0,0,0,$08,0,0,0,0
  525. 810 .BYTE 0,0,0,$40,0,0,0,0,0,0,0,$80,0,0,0,0
  526. 811 .BYTE 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  527. 812 .BYTE 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  528. 813 .BYTE 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  529. 814 .BYTE 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  530. 815 ;
  531. 816 TAB .BYTE $00,$10,$20,$30
  532. 817 .BYTE $40,$50,$60,$70,$80,$90,$A0
  533. 818 .BYTE $B0,$C0,$D0,$E0,$F0
  534. 819 ;
  535. 820 WERTTAST  STA $A7
  536. 821 TAX
  537. 822 LDA WERT1,X
  538. 823 STA $A9
  539. 824 LDA WERT2,X
  540. 825 STA $AA
  541. 826 LDY #00
  542. 827 LDA ($A9),Y
  543. 828 ORA #$80
  544. 829 STA ($A9),Y
  545. 830 W1  JSR TASTE
  546. 831 CMP #$30
  547. 832 BCC W1
  548. 833 LDX $A7
  549. 834 CMP WERT3,X
  550. 835 BCS W1
  551. 836 LDY #00
  552. 837 STA ($A9),Y
  553. 838 SEC
  554. 839 SBC #$30
  555. 840 STA $A8
  556. 841 INY
  557. 842 LDA ($A9),Y
  558. 843 ORA #$80
  559. 844 STA ($A9),Y
  560. 845 W2  JSR TASTE
  561. 846 PHA
  562. 847 LDA $A7
  563. 848 ASL A
  564. 849 ASL A
  565. 850 CLC
  566. 851 ADC $A7
  567. 852 ADC $A8
  568. 853 TAX
  569. 854 PLA
  570. 855 CMP WERT4,X
  571. 856 BCC W2
  572. 857 CMP WERT5,X
  573. 858 BCS W2
  574. 859 LDY #01
  575. 860 STA ($A9),Y
  576. 861 SEC
  577. 862 SBC #$30
  578. 863 TAX
  579. 864 LDA $A8
  580. 865 ASL A
  581. 866 ASL A
  582. 867 ASL A
  583. 868 STA $A7
  584. 869 LDA $A8
  585. 870 ASL A
  586. 871 CLC
  587. 872 ADC $A7
  588. 873 STX $A8
  589. 874 CLC
  590. 875 ADC $A8
  591. 876 RTS
  592. 877 ;
  593. 880 WERT1  .BYTE $D8,$65,$B3,$08
  594. 881 WERT2  .BYTE 4,6,6,7
  595. 882 WERT3  .BYTE $32,$35,$35,$32
  596. 883 WERT4  .BYTE $31,$30,0,0,0
  597. 884 .BYTE $31,$30,$30,$30,$30
  598. 885 .BYTE $31,$30,$30,$30,$30
  599. 886 .BYTE $38,$30,0,0,0
  600. 887 WERT5  .BYTE $3A,$31,0,0,0
  601. 888 .BYTE $3A,$3A,$3A,$3A,$31
  602. 889 .BYTE $3A,$3A,$3A,$3A,$31
  603. 890 .BYTE $3A,$32,0,0,0
  604. 891 ;
  605. 900 VON  LDA #52
  606. 901 STA $01
  607. 902 LDY #$43
  608. 903 V1  LDA $03BC,Y
  609. 904 STA ($A9),Y
  610. 905 DEY
  611. 906 BPL V1
  612. 907 LDY #00
  613. 908 V2  LDA $0400,Y
  614. 909 STA ($A7),Y
  615. 910 INY
  616. 911 BNE V2
  617. 912 LDA #$37
  618. 913 STA $01
  619. 914 RTS
  620. 915 ;
  621. 920 NACH  LDA #52
  622. 921 STA $01
  623. 922 LDY #$43
  624. 923 N1  LDA ($A9),Y
  625. 924 STA $03BC,Y
  626. 925 DEY
  627. 926 BPL N1
  628. 927 LDY #00
  629. 928 N2  LDA ($A7),Y
  630. 929 STA $0400,Y
  631. 930 INY
  632. 931 BNE N2
  633. 932 LDA #$37
  634. 933 STA $01
  635. 934 RTS
  636. 935 ;
  637. 1000 KOPIEREN  JSR OPEN
  638. 1001 LDX #15
  639. 1002 JSR $FFC9
  640. 1003 LDA #$49
  641. 1004 JSR $FFD2
  642. 1005 JSR $FFCC
  643. 1006 LDX #$0F
  644. 1007 JSR $FFC6
  645. 1008 JSR $FFCF
  646. 1009 PHA
  647. 1010 K1  JSR $FFCF
  648. 1011 CMP #13
  649. 1012 BNE K1
  650. 1013 JSR $FFCC:LDA #15:JSR $FFC3
  651. 1014 PLA
  652. 1015 CMP #$30
  653. 1016 BEQ K2
  654. 1017 JMP UNLESBAR
  655. 1018 K2  JSR HOLMASCH
  656. 1019 JSR STARTMASCH
  657. 1020 LDA #$93
  658. 1021 JSR $FFD2
  659. 1022 LDX $FE
  660. 1023 CPX $FD
  661. 1024 BCS K3
  662. 1025 LDY $FD
  663. 1026 STY $FE
  664. 1027 STX $FD
  665. 1028 K3  INC $FE
  666. 1029 LDX #$0A
  667. 1030 LDY #00
  668. 1031 JSR $E50C
  669. 1032 SEI
  670. 1033 LDA #00
  671. 1034 STA $61
  672. 1035 STA $62
  673. 1036 LDA $FD
  674. 1037 STA $FA
  675. 1038 LDA $FE
  676. 1039 STA $FC
  677. 1040 LDA $DC0F
  678. 1041 AND #$7F
  679. 1042 STA $DC0F
  680. 1043 LDA $DC0E
  681. 1044 ORA #$80
  682. 1045 STA $DC0E
  683. 1046 LDA #00
  684. 1047 STA $DC0B
  685. 1048 STA $DC0A
  686. 1049 STA $DC09
  687. 1050 STA $DC08
  688. 1051 LDX #40
  689. 1052 K4  STA TRACKTAB,X
  690. 1053 DEX
  691. 1054 BPL K4
  692. 1055 K10  LDA #00
  693. 1056 STA $8B
  694. 1057 STA $8C
  695. 1058 JSR QUELL:LDA #$FA:STA $AB:LDA #$1F:STA $AC:LDA #01:JSR EINAUS
  696. 1059 LDA $FA
  697. 1060 STA $FB:JSR ZAEHLSETZ
  698. 1061 K6  LDA #02
  699. 1062 JSR EINAUS
  700. 1063 LDA $FB
  701. 1064 JSR EINAUS
  702. 1065 JSR READ
  703. 1066 JSR TRACKSTART
  704. 1067 INC $FB
  705. 1068 INC $8B
  706. 1069 LDA $FB
  707. 1070 CMP $FE
  708. 1071 BEQ K5
  709. 1072 LDX $8B
  710. 1073 ZAE CPX #08
  711. 1074 BNE K6
  712. 1075 K5  LDX $FA
  713. 1076 STX $8D
  714. 1077 STA $FA
  715. 1078 LDA #00
  716. 1079 STA $8C
  717. 1080 K9  LDX $8D
  718. 1081 STX $FB
  719. 1082 JSR ZIEL:LDA #$FA:STA $AB:LDA #$1F:STA $AC
  720. 1083 LDA #01
  721. 1084 JSR EINAUS
  722. 1085 LDA #00
  723. 1086 STA $8B
  724. 1087 K8  LDA #03
  725. 1088 JSR EINAUS
  726. 1089 LDA $FB
  727. 1090 JSR EINAUS
  728. 1091 LDX $FB
  729. 1092 LDA TRACKTAB,X
  730. 1093 BNE K7
  731. 1094 JSR WRITE
  732. 1095 K7  JSR TRACKSTART
  733. 1096 INC $FB
  734. 1097 INC $8B
  735. 1098 LDA $FB
  736. 1099 CMP $FA
  737. 1100 BNE K8
  738. 1101 STA $8E
  739. 1102 INC $8C
  740. 1103 LDA $8C
  741. 1104 CMP $8F
  742. 1105 BNE K9
  743. 1106 LDA $8E
  744. 1107 CMP $FE
  745. 1108 BEQ KFERTIG
  746. 1109 JMP K10
  747. 1110 ;
  748. 1111 KFERTIG  JSR PRINT
  749. 1112 .BYTE 13,13,13
  750. 1113 .ASC "KOPIERVORGANG IST BEENDET."
  751. 1114 .BYTE 0
  752. 1115 SEI:LDA #00
  753. 1116 JSR EINAUS
  754. 1117 JMP ENDE
  755. 1118 ;
  756. 1200 START  LDA #21
  757. 1201 STA $D018
  758. 1202 LDA #01
  759. 1203 STA $FD
  760. 1204 STA $8F
  761. 1205 LDA #15
  762. 1206 STA $D020
  763. 1207 STA $D021
  764. 1208 LDA #08
  765. 1209 STA $F9
  766. 1210 LDA #$28
  767. 1211 STA $FE
  768. 1212 ST1  JSR PRINT
  769. 1213 .BYTE $93,$1F
  770. 1214 .ASC "  **** MASTER - COPY PLUS  V 1.2 ****  ":.BYTE 13,13
  771. 1215 .ASC "   (C) 1988 BY FRANK RIEMENSCHNEIDER  ":.BYTE 13,13,13
  772. 1216 .ASC " A[146]NZAHL KOPIEN:":.BYTE 13,13
  773. 1217 .ASC " B[146]EFEHL SENDEN":.BYTE 13,13
  774. 1218 .ASC " D[146]IREKTORY ZEIGEN":.BYTE 13,13
  775. 1219 .ASC " K[146]OPIEREN":.BYTE 13,13
  776. 1220 .ASC " V[146]ERIFY DISK":.BYTE 13,13
  777. 1221 .ASC " S[146]TARTTRACK:":.BYTE 13,13
  778. 1222 .ASC " E[146]NDTRACK:":.BYTE 13,13
  779. 1223 .ASC " G[146]ERAETENUMMER:":.BYTE 13,13
  780. 1224 .ASC " P[146]ROGRAMMENDE":.BYTE 13,13
  781. 1225 .ASC " I[146]NFO":.BYTE 0
  782. 1226 ;
  783. 1230 LDX #15
  784. 1231 LDY #13
  785. 1232 JSR $E50C
  786. 1233 LDA $FD
  787. 1234 JSR DEZIMAL
  788. 1235 LDX #$11
  789. 1236 LDY #$0B
  790. 1237 JSR $E50C
  791. 1238 LDA $FE
  792. 1239 JSR DEZIMAL
  793. 1240 LDX #$13
  794. 1241 LDY #$10
  795. 1242 JSR $E50C
  796. 1243 LDA $F9
  797. 1244 JSR DEZIMAL
  798. 1245 LDX #05
  799. 1246 LDY #$10
  800. 1247 JSR $E50C
  801. 1248 LDA $8F
  802. 1249 JSR DEZIMAL
  803. 1250 ST2  JSR TASTE
  804. 1251 CMP #"B"
  805. 1252 BNE M1
  806. 1253 JSR BEFEHL
  807. 1254 JMP ST1
  808. 1255 M1  CMP #"D"
  809. 1256 BNE M2
  810. 1257 JSR DIREKTORY
  811. 1258 JMP ST1
  812. 1259 M2  CMP #"K"
  813. 1260 BNE M3
  814. 1261 JSR KOPIEREN
  815. 1262 JMP ST1
  816. 1263 M3  CMP #"S"
  817. 1264 BNE M4
  818. 1265 LDA #01
  819. 1266 JSR WERTTAST
  820. 1267 STA $FD
  821. 1268 JMP ST2
  822. 1269 M4  CMP #"E"
  823. 1270 BNE M5
  824. 1271 LDA #02
  825. 1272 JSR WERTTAST
  826. 1273 STA $FE
  827. 1274 JMP ST2
  828. 1275 M5  CMP #"P"
  829. 1276 BNE M6
  830. 1277 JMP $FCE2
  831. 1278 M6  CMP #"G"
  832. 1279 BNE M7
  833. 1280 LDA #03
  834. 1281 JSR WERTTAST
  835. 1282 STA $F9
  836. 1283 JMP ST2
  837. 1284 M7  CMP #"A"
  838. 1285 BNE M8
  839. 1286 LDA #00
  840. 1287 JSR WERTTAST
  841. 1288 STA $8F
  842. 1289 JMP ST2
  843. 1290 M8  CMP #"V"
  844. 1291 BNE M9
  845. 1292 JSR VERIFY
  846. 1293 JMP ST1
  847. 1294 M9  CMP #"I"
  848. 1295 BNE ST2
  849. 1296 JSR INFO
  850. 1297 JMP ST1
  851. 1298 ;
  852. 1305 ZTAB .BYTE 0,8,8,8,8,8,8,8,8,8,8,8,8,8,8
  853. 1306 .BYTE 9,9,9,9,9,9,9,9,9,9
  854. 1307 .BYTE 10,10,10,10,10,10,10,10
  855. 1308 .BYTE 10,10,10,10,10,10,10,10
  856. 1309 ;
  857. 1430 LOWTAB  .BYTE 0,$94,$94,$94
  858. 1431 .BYTE $94,$94,$94,$94,$94,$94,$94
  859. 1432 .BYTE $94,$94,$94,$94,$94,$94,$94
  860. 1433 .BYTE $0C,$0C,$0C,$0C,$0C,$0C,$0C
  861. 1434 .BYTE $C8,$C8,$C8,$C8,$C8,$C8
  862. 1435 .BYTE $84,$84,$84,$84,$84
  863. 1436 .BYTE $84,$84,$84,$84,$84
  864. 1437 ;
  865. 1438 HIGHTAB  .BYTE 0,$1A,$1A,$1A
  866. 1439 .BYTE $1A,$1A,$1A,$1A,$1A,$1A,$1A
  867. 1440 .BYTE $1A,$1A,$1A,$1A,$1A,$1A,$1A
  868. 1441 .BYTE $18,$18,$18,$18,$18,$18,$18
  869. 1442 .BYTE $16,$16,$16,$16,$16,$16
  870. 1443 .BYTE $15,$15,$15,$15,$15
  871. 1444 .BYTE $15,$15,$15,$15,$15
  872. 1445 ;
  873. 2000 READ  JSR SEKTOREN
  874. 2001 LDA #04
  875. 2002 JSR EINAUS
  876. 2003 RE1  JSR EINEIN
  877. 2004 TAX
  878. 2005 BMI ERROR
  879. 2006 PHA
  880. 2007 JSR EIN
  881. 2008 PLA
  882. 2009 ASL A
  883. 2010 TAX
  884. 2011 LDA SEKTAB,X
  885. 2012 CLC
  886. 2013 ADC $AB
  887. 2014 STA $A7
  888. 2015 STA $A9
  889. 2016 LDA SEKTAB+1,X
  890. 2017 ADC $AC
  891. 2018 STA $A8
  892. 2019 ADC #01
  893. 2020 STA $AA
  894. 2021 JSR VON
  895. 2022 JMP RE1
  896. 2023 ;
  897. 2025 ERROR  CMP #$F2
  898. 2026 BNE RE2
  899. 2027 JMP HEADERR
  900. 2028 RE2  CMP #$F1
  901. 2029 BNE RE3
  902. 2030 JMP SYNCERR
  903. 2031 RE3  CMP #$FC
  904. 2032 BNE RE4
  905. 2033 LDX $FB
  906. 2034 INC TRACKTAB,X
  907. 2035 RE4  LDY #00
  908. 2036 RE6  JSR EINEIN
  909. 2037 CMP #$F3
  910. 2038 BEQ RE8
  911. 2039 JSR READERR
  912. 2040 JMP RE6
  913. 2041 RE8  RTS
  914. 2042 ;
  915. 2045 SEKTAB  .BYTE $00,$00,$44,$01
  916. 2046 .BYTE $88,$02,$CC,$03,$10,$05
  917. 2047 .BYTE $54,$06,$98,$07,$DC,$08
  918. 2048 .BYTE $20,$0A,$64,$0B,$A8,$0C
  919. 2049 .BYTE $EC,$0D,$30,$0F,$74,$10
  920. 2050 .BYTE $B8,$11,$FC,$12,$40,$14
  921. 2051 .BYTE $84,$15,$C8,$16,$0C,$18
  922. 2052 .BYTE $50,$19
  923. 2053 ;
  924. 3000 WRITE  JSR SEKTOREN
  925. 3001 LDA #05
  926. 3002 JSR EINAUS
  927. 3003 WR2  JSR EINEIN
  928. 3004 CMP #$F1
  929. 3005 BEQ WR1
  930. 3006 ASL A
  931. 3007 TAX
  932. 3008 LDA SEKTAB,X
  933. 3009 CLC
  934. 3010 ADC $AB
  935. 3011 STA $A7
  936. 3012 STA $A9
  937. 3013 LDA SEKTAB+1,X
  938. 3014 ADC $AC
  939. 3015 STA $A8
  940. 3016 ADC #01
  941. 3017 STA $AA
  942. 3018 JSR NACH
  943. 3019 JSR AUS
  944. 3020 JMP WR2
  945. 3021 WR1  RTS
  946. 3022 ;
  947. 4000 VERIFY JSR OPEN
  948. 4001 LDX #15
  949. 4002 JSR $FFC9
  950. 4003 LDA #$49
  951. 4004 JSR $FFD2
  952. 4005 JSR $FFCC
  953. 4006 LDX #$0F
  954. 4007 JSR $FFC6
  955. 4008 JSR $FFCF
  956. 4009 PHA
  957. 4010 V11  JSR $FFCF
  958. 4011 CMP #13
  959. 4012 BNE V11
  960. 4013 JSR $FFCC:LDA #15:JSR $FFC3
  961. 4014 PLA
  962. 4015 CMP #$30
  963. 4016 BEQ V22
  964. 4017 JMP UNLESBAR
  965. 4018 V22  JSR HOLMASCH
  966. 4019 LDA #$EA
  967. 4020 STA $732B
  968. 4021 STA $732C
  969. 4022 STA $732D
  970. 4029 JSR STARTMASCH
  971. 4030 LDA #$93
  972. 4031 JSR $FFD2:JSR FARBE
  973. 4032 LDX $FE
  974. 4033 CPX $FD
  975. 4034 BCS V3
  976. 4035 LDY $FD
  977. 4036 STY $FE
  978. 4037 STX $FD
  979. 4038 V3  INC $FE
  980. 4042 LDA #00
  981. 4043 STA $61
  982. 4044 STA $62
  983. 4045 LDA $FD
  984. 4046 STA $FA
  985. 4047 JSR BILDAUS:JSR AUFBAU:SEI
  986. 4048 LDA #01
  987. 4049 JSR EINAUS
  988. 4050 V6 LDA #02
  989. 4051 JSR EINAUS:LDA $FA:JSR EINAUS
  990. 4052 JSR VERIFY1
  991. 4053 INC $FA
  992. 4054 LDA $FA
  993. 4055 CMP $FE
  994. 4056 BNE V6:LDA #00:JSR EINAUS
  995. 4057 LDX #$18
  996. 4058 LDY #01
  997. 4059 JSR $E50C
  998. 4060 JSR PRINT
  999. 4061 .ASC "VERIFY IST BEENDET. WEITER MIT TASTE !":.BYTE 0
  1000. 4062 JSR BILDAN:CLI
  1001. 4063 JSR TASTE
  1002. 4064 LDA #03
  1003. 4065 STA $DD00
  1004. 4066 DEC $FE
  1005. 4067 RTS
  1006. 4068 ;
  1007. 4200 AUFBAU  JSR PRINT
  1008. 4201 .BYTE $93,$11
  1009. 4202 .ASC "0000000001111111111"
  1010. 4203 .ASC "222222222233333333334"
  1011. 4204 .ASC "12345678901234567890"
  1012. 4205 .ASC "12345678901234567890":.BYTE 0
  1013. 4206 LDA #$28
  1014. 4207 STA $A7
  1015. 4208 V8  LDX $A7:DEX
  1016. 4209 LDA VTAB1,X
  1017. 4210 TAX
  1018. 4211 V7  LDA VTAB2,X
  1019. 4212 STA $A9
  1020. 4213 LDA VTAB3,X
  1021. 4214 STA $AA
  1022. 4215 LDY $A7
  1023. 4216 DEY
  1024. 4217 LDA #$2E
  1025. 4218 STA ($A9),Y
  1026. 4219 DEX
  1027. 4220 BPL V7
  1028. 4221 DEC $A7
  1029. 4222 LDA $A7
  1030. 4223 BNE V8
  1031. 4224 JSR STERN
  1032. 4225 V9 STA $03FF,X
  1033. 4226 DEX
  1034. 4227 CPX $FA
  1035. 4228 BCS V9
  1036. 4229 RTS
  1037. 4230 ;
  1038. 4300 VTAB1  .BYTE $14,$14,$14,$14,$14
  1039. 4301 .BYTE $14,$14,$14,$14,$14
  1040. 4302 .BYTE $14,$14,$14,$14,$14
  1041. 4303 .BYTE $14,$14,$12,$12,$12,$12
  1042. 4304 .BYTE $12,$12,$12,$11,$11,$11
  1043. 4305 .BYTE $11,$11,$11
  1044. 4306 .BYTE $10,$10,$10,$10,$10,$10
  1045. 4307 .BYTE $10,$10,$10,$10
  1046. 4308 VTAB2  .BYTE $78,$A0,$C8,$F0,$18
  1047. 4309 .BYTE $40,$68,$90,$B8,$E0,$08,$30
  1048. 4310 .BYTE $58,$80,$A8,$D0,$F8,$20,$48
  1049. 4311 .BYTE $70,$98
  1050. 4312 VTAB3  .BYTE 4,4,4,4,5,5,5,5,5,5,6,6,6,6,6,6,6,7,7,7,7
  1051. 4313 ;
  1052. 4400 STERN  LDX $FE
  1053. 4401 DEX
  1054. 4402 LDA #"*"
  1055. 4403 RTS
  1056. 4404 ;
  1057. 4500 VERIFY1  LDA #04
  1058. 4501 JSR EINAUS
  1059. 4502 VE1  JSR EINEIN
  1060. 4503 TAX
  1061. 4504 BMI VERROR
  1062. 4505 JMP VE1
  1063. 4506 ;
  1064. 4510 VERROR  CMP #$F2
  1065. 4511 BNE VE2
  1066. 4512 JMP VHEADERR
  1067. 4513 VE2  CMP #$F1
  1068. 4514 BNE VE3
  1069. 4515 JMP VSYNCERR
  1070. 4516 VE3  LDY #00
  1071. 4517 VE6  JSR EINEIN
  1072. 4518 CMP #$F3
  1073. 4519 BEQ VE8
  1074. 4520 JSR VREADERR
  1075. 4521 JMP VE6
  1076. 4522 VE8  RTS
  1077. 4523 ;
  1078. 4524 VREADERR  TAY
  1079. 4526 LDA VTAB2,Y
  1080. 4527 STA $A9
  1081. 4528 LDA VTAB3,Y
  1082. 4529 STA $AA
  1083. 4530 LDY $FA
  1084. 4531 DEY
  1085. 4532 LDA #$12
  1086. 4533 STA ($A9),Y
  1087. 4534 RTS
  1088. 4535 ;
  1089. 4600 VSYNCERR  LDA #$13
  1090. 4601 .BYTE $2C
  1091. 4602 VHEADERR  LDA #08
  1092. 4603 PHA
  1093. 4604 LDX $FA
  1094. 4605 DEX
  1095. 4606 LDA VTAB1,X
  1096. 4607 TAX
  1097. 4608 VEA  LDA VTAB2,X
  1098. 4609 STA $A9
  1099. 4610 LDA VTAB3,X
  1100. 4611 STA $AA
  1101. 4612 LDY $FA
  1102. 4613 DEY
  1103. 4614 PLA
  1104. 4615 PHA
  1105. 4616 STA ($A9),Y
  1106. 4617 DEX
  1107. 4618 BPL VEA
  1108. 4619 PLA
  1109. 4620 RTS
  1110. 4621 ;
  1111. 5000 BEFEHL  LDX #$17
  1112. 5001 LDY #01
  1113. 5002 JSR $E50C
  1114. 5003 JSR PRINT
  1115. 5004 .ASC "BEFEHL: ":.BYTE 0
  1116. 5005 JSR OPEN
  1117. 5006 LDX #15
  1118. 5007 JSR $FFC9
  1119. 5008 BF  JSR $FFCF
  1120. 5009 JSR $FFD2
  1121. 5010 CMP #13
  1122. 5011 BNE BF
  1123. 5012 JSR $FFCC
  1124. 5013 LDA #15
  1125. 5014 JMP $FFC3
  1126. 5015 ;
  1127. 6000 DIREKTORY  LDX #$10
  1128. 6001 DIR1  LDA $60,X
  1129. 6002 STA $03EF,X
  1130. 6003 DEX
  1131. 6004 BPL DIR1
  1132. 6005 LDA #$9A
  1133. 6006 JSR $FFD2
  1134. 6007 JSR $BDCD
  1135. 6008 LDA #$1F
  1136. 6009 JSR $FFD2
  1137. 6010 LDA #$93
  1138. 6011 JSR $FFD2
  1139. 6012 LDA #02
  1140. 6013 LDX $F9
  1141. 6014 LDY #00
  1142. 6015 JSR $FFBA
  1143. 6016 LDX #<DOLLAR
  1144. 6017 LDY #>DOLLAR
  1145. 6018 LDA #01
  1146. 6019 JSR $FFBD
  1147. 6020 JSR $FFC0
  1148. 6021 LDX #02
  1149. 6022 JSR $FFC6
  1150. 6023 JSR $FFCF
  1151. 6024 LDA $90
  1152. 6025 BNE DIROUT
  1153. 6026 JSR $FFCF
  1154. 6027 DIR2  LDA #$16
  1155. 6028 STA $8B
  1156. 6029 DIR5  DEC $8B
  1157. 6030 BNE DIR3
  1158. 6031 JSR DRUCK
  1159. 6036 LDX #02
  1160. 6037 JSR $FFC6
  1161. 6038 LDA #$93
  1162. 6039 JSR $FFD2
  1163. 6040 JMP DIR2
  1164. 6041 DIR3  JSR $FFCF
  1165. 6042 JSR $FFCF
  1166. 6043 BEQ DIROUT
  1167. 6044 JSR PRINT
  1168. 6045 .BYTE 13,32,32,32,0
  1169. 6046 JSR $FFCF
  1170. 6047 TAX:JSR $FFCF
  1171. 6048 JSR $BDCD
  1172. 6049 LDA #32
  1173. 6050 JSR $FFD2
  1174. 6051 DIR4  JSR $FFCF
  1175. 6052 BEQ DIR5
  1176. 6053 LDY $90
  1177. 6054 BNE DIROUT
  1178. 6055 JSR $FFD2
  1179. 6056 JMP DIR4
  1180. 6057 ;
  1181. 6058 DIROUT  JSR DRUCK
  1182. 6059 LDA #02
  1183. 6060 JSR $FFC3
  1184. 6061 LDX #$10
  1185. 6062 DIR7  LDA $03EF,X
  1186. 6063 STA $60,X
  1187. 6064 DEX
  1188. 6065 BPL DIR7
  1189. 6066 RTS
  1190. 6067 ;
  1191. 6068 DOLLAR .ASC "$"
  1192. 6069 ;
  1193. 6160 DRUCK  JSR PRINT
  1194. 6161 .BYTE 13,13
  1195. 6162 .ASC "     WEITER MIT TASTENDRUCK":.BYTE 0
  1196. 6163 JSR $FFCC
  1197. 6164 JSR TASTE
  1198. 6165 RTS
  1199. 6166 ;
  1200. 7000 INFO  LDX #00
  1201. 7001 INF1 LDA $1CA0,X
  1202. 7002 STA $04A3,X
  1203. 7003 LDA $1DA0,X
  1204. 7004 STA $05A3,X
  1205. 7005 LDA $1EA0,X
  1206. 7006 STA $06A3,X
  1207. 7007 INX
  1208. 7008 BNE INF1
  1209. 7009 LDX #43
  1210. 7010 INF2  LDA $1FA0,X
  1211. 7011 STA $07A3,X
  1212. 7012 DEX
  1213. 7013 BPL INF2
  1214. 7014 JSR TASTE
  1215. 7015 RTS
  1216.