home *** CD-ROM | disk | FTP | other *** search
/ 64'er / 64ER_CD.iso / 87xx / 8703a.d64 / uncover.src (.txt) < prev    next >
Commodore BASIC  |  1995-03-30  |  3KB  |  153 lines

  1. 10 .OS
  2. 20 .BA$C200
  3. 30 BIND    .DE$A533
  4. 40 NUMOUT  .DE$BDCD
  5. 50 BSOUT   .DE$E10C
  6. 60 TEXTANF .DE$002B
  7. 70 VARANF  .DE$002D
  8. 80 FELDANF .DE$002F
  9. 90 FELDEND .DE$0031
  10. 100 L1      .DE$0050
  11. 110 H1      .DE$0051
  12. 120 L2      .DE$0052
  13. 130 H2      .DE$0053
  14. 140 L3      .DE$0054
  15. 150 H3      .DE$0055
  16. 160 VORSCH  .DE$0056
  17. 170 MEM     .DE$0334
  18. 180 ENDLDY # 0
  19. 190 S0 LDA L1,Y ;SPEICHERN DER
  20. 200 STA MEM,Y ;ZEROPAGE-ZEIGER
  21. 210 INY
  22. 220 CPY # 7
  23. 230 BNE S0
  24. 240 CLC
  25. 250 ;AUSLOTEN DES BASICPROGRAMMENDES
  26. 260 JSR BIND
  27. 270 LDY #0
  28. 280 LDA TEXTANF, Y ;UEBERTRAGEN
  29. 290 STA L1         ;DES BASICZEIGERS
  30. 300 INY            ;ZUR FREIEN
  31. 310 LDA TEXTANF, Y ;BENUTZUNG
  32. 320 STA H1
  33. 330 DEY
  34. 340 LDA(L1),Y ;ZEIGT AUF DEN
  35. 350 ;1.LINKPOINTER,LOWBYTE
  36. 360 STA L3 ;MERKEN
  37. 370 INY
  38. 380 LDA(L1),Y ;1.LP,HIBYTE
  39. 390 STA H3 ;MERKEN
  40. 400 S1 LDA(L3),Y ;ZEIGT AUF NAECHSTEN
  41. 410 ;LINKPOINTER(HI-BYTE!)
  42. 420 ;IST DIESES NULL, SO IST TEXTEN-
  43. 430 ;DE AUSREICHEND NACHGEWIESEN
  44. 440 BEQ S6 ;DANN WEITER
  45. 450 PHA
  46. 460 DEY       ;ZEIGER
  47. 470 LDA (L3),Y;AUF NEUE L.P.
  48. 480 STA L3    ;-ADRESSE
  49. 490 INY
  50. 500 PLA       ;AKTUALISIEREN
  51. 510 STA H3
  52. 520 BNE S1    ;VON VORNE
  53. 530 ;**
  54. 540 ;**
  55. 550 ;PRUEFEN DER EINZELNEN
  56. 560 ;BASICZEILEN
  57. 570 S6 LDY #$01
  58. 580 LDA(L1),Y   ;IST LETZTE ZEILE
  59. 590 BEQ SCHLUSS ;FERTIGPRINT
  60. 600 LDY # $04 ;BYTE DIREKT NACH
  61. 610 LDA(L1),Y ;ZEILENNUMMER
  62. 620 BEQ KORREKTUR
  63. 630 ;(FALLS NEXTULL)
  64. 640 LDY #$01
  65. 650 LDA(L1),Y ;ZEIGER ANHAND DES
  66. 660 PHA       ;LINKPOINTERS
  67. 670 DEY       ;AUF NAECHSTE
  68. 680 LDA(L1),Y ;ZEILE RICHTEN
  69. 690 STA L1
  70. 700 PLA
  71. 710 STA H1
  72. 720 BNE S6
  73. 730 ;**
  74. 740 ;**
  75. 750 KORREKTUR INY
  76. 760 TEST: INY
  77. 770 LDA(L1),Y
  78. 780 CMP #":" ;TEST AUF DOPPELPUNKT
  79. 790 CLC
  80. 800 BEQ TEST:
  81. 810 CMP # $0 ;NUR ":"PRINTPRINT
  82. 820 BNE =+1
  83. 830 DEY
  84. 840 STY VORSCH ;VORSCHUB BEIM
  85. 850 ;VERSCHIEBEN
  86. 860 CLC
  87. 870 LDA L1
  88. 880 STA L2
  89. 890 LDA H1
  90. 900 STA H2
  91. 910 S8 LDY VORSCH ;VERSCHIEBEROUTINE
  92. 920 LDA(L2),Y
  93. 930 LDY #$04
  94. 940 STA(L2),Y
  95. 950 INC L2
  96. 960 BNE S8
  97. 970 LDA H2
  98. 980 CMP H3 ;SCHON AM TEXTENDEPRINT
  99. 990 BEQ S9
  100. 1000 INC H2
  101. 1010 BNE S8
  102. 1020 S9 SEC
  103. 1030 TYA
  104. 1040 SBC VORSCH
  105. 1050 ADC L3    ;ZEIGER AUF TEXT-
  106. 1060 BCS = + 2 ;ENDE DEKREMENTIEREN
  107. 1070 DEC H3
  108. 1080 CLC
  109. 1090 STA L3
  110. 1100 ;**
  111. 1110 ;**
  112. 1120 ;ZEILENNUMMERNAUSGABE
  113. 1130 LDA #$20
  114. 1140 JSR BSOUT
  115. 1150 LDY #$02
  116. 1160 LDA (L1),Y ;LOW-
  117. 1170 TAX
  118. 1180 INY
  119. 1190 LDA (L1),Y ;&HI-BYTE DER Z.N.
  120. 1200 JSR NUMOUT ;IN A/X AUSGEBEN
  121. 1210 LDA $D3 ;CURSORSPALTE
  122. 1220 CMP #$21 ;CRSR ZU WEIT RECHTSPRINT
  123. 1230 CLC
  124. 1240 BMI = + 5
  125. 1250 LDA #$0D ;IN DIESEM FALL
  126. 1260 JSR BSOUT ;CARRIAGE RETURN
  127. 1270 JSR BIND
  128. 1280 CLV ;(RUECKSPRUNG SICHERN)
  129. 1290 BVC RET
  130. 1300 SCHLUSS ;VORBEREITUNG DES BASIC-
  131. 1310 LDA #$2
  132. 1320 ADC L1   ;ERHOEHUNG UM 2
  133. 1330 BCC = +2 ;ZEIGT DANN AUF BEGINN
  134. 1340 INC H1   ;DER VARIABLEN ETC.
  135. 1350 CLC
  136. 1360 STA VARANF ;KORREKTUR DER ZEIGER
  137. 1370 STA FELDANF
  138. 1380 STA FELDEND
  139. 1390 LDA H2
  140. 1400 STA VARANF+1
  141. 1410 STA FELDANF+1
  142. 1420 STA FELDEND+1
  143. 1430 LDY #$0
  144. 1440 T0 LDA MEM,Y ;URSPR.WERTE ZURUECK
  145. 1450 STA L1,Y    ;IN ZERO-PAGE
  146. 1460 INY
  147. 1470 CPY # 7
  148. 1480 BNE T0
  149. 1490 CLC
  150. 1500 ;BACK TO BASIC
  151. 1510 RTS
  152. 1520 .EN
  153.