home *** CD-ROM | disk | FTP | other *** search
/ 64'er 1993 August / 64er_Magazin_93-08_1993_Markt__Technik_de_Side_A.d64 / techtech.ascii < prev    next >
Text File  |  2022-10-26  |  5KB  |  3 lines

  1.  
  2.  
  3. 100 ;      ; techtech 80
  4. 110 ;      ; (c)1992 paul guldenaar
  5. 120 ;      ;
  6. 130        org $1300
  7. 140        jmp tech  ;techtech 80.
  8. 150        jmp putpic;vicpic nach vdc.
  9. 160 tech   sei
  10. 170        lda #$0b  ;vic aus.
  11. 180        sta $d011
  12. 190        lda #$01  ;fast mode ein.
  13. 200        sta $d030
  14. 210        lda #$f0  ;geringstes vdc-
  15. 220        ldx #$24  ;ram auffrish-
  16. 230        jsr $cdcc ;tempo.
  17. 240        lda #$3f
  18. 250        ldx #$1c  ;64k vdc-ram.
  19. 260        jsr $cdcc
  20. 270        lda #$87  ;hires ein.
  21. 280        ldx #$19
  22. 290        jsr $cdcc
  23. 300        lda #$40  ;video display
  24. 310        ldx #$0c  ;bei $4000.
  25. 320        jsr $cdcc
  26. 330        lda #$7f  ;63 zyklen pro
  27. 340        ldx #$00  ;rasterzeile.
  28. 350        jsr $cdcc
  29. 360        lda #$ff  ;wichtig!:letztes
  30. 370        ldx #$12  ;byte von vdc-ram
  31. 380        jsr $cdcc ;verantwortlich
  32. 390        inx       ;fur randflackern
  33. 400        jsr $cdcc ;bei soft-scroll,
  34. 410        lda #$00  ;gleich geister-
  35. 420        jsr $cdca ;byte bei c64.
  36. 430        lda #$a0  ;setz copy-bit.
  37. 440        ldx #$18
  38. 450        jsr $cdcc
  39. 460        ldy #$00
  40. 470        sty count  ;bewegungsstart.
  41. 480        sty $fb    ;mach tabelle
  42. 490        sty $fc    ;mit start-
  43. 500 t1     lda $fc    ;addressen von
  44. 510        sta $1900,y;jedem
  45. 520        lda $fb    ;pixelzeile.
  46. 530        sta $1800,y
  47. 540        clc
  48. 550        adc #$50
  49. 560        sta $fb
  50. 570        bcc t2
  51. 580        inc $fc
  52. 590 t2     iny
  53. 600        cpy #$c8
  54. 610        bne t1
  55. 620 screen ldx count
  56. 630        lda #$19   ;vdc-reg fur
  57. 640        sta $d600  ;x-softscroll
  58. 650        lda $1600,x;softscroll-
  59. 660        eor #$07   ;werte fur erste
  60. 670        ora #$80   ;pixelzeile.
  61. 680        sta $d601
  62. 690        inx
  63. 700        stx count
  64. 710        lda #$20   ;warte auf oben-
  65. 720 sc1    bit $d600  ;rand des
  66. 730        beq sc1    ;sichtbares
  67. 740 sc2    bit $d600  ;schirms.
  68. 750        bne sc2
  69. 760        jsr wait90 ;warte 2'er zeile
  70. 770        ldy #$00
  71. 780 soft   lda $1600,x;setze softscroll
  72. 790        eor #$07   ;werte einer
  73. 800        ora #$80   ;pixelzeile.
  74. 810        sta $d601
  75. 820        jsr wait73 ;zeile timing.
  76. 830        lda $1800,y;berechne
  77. 840        clc        ;nachste
  78. 850        adc $1700,x;hardscroll
  79. 860        sta $1a00,y;position.
  80. 870        lda $1900,y
  81. 880        adc #$00
  82. 890        sta $1b00,y
  83. 900        inx
  84. 910        iny
  85. 920        cpy #$5d
  86. 930        bne soft
  87. 940        lda #$87   ;kein softscroll
  88. 950        sta $d601  ;ubriges schirm.
  89. 960        lda $1800,y ;berechne letzte
  90. 970        clc         ;werte fur
  91. 980        adc $1700,x ;hardscroll.
  92. 990        sta $1a00,y
  93. 1000        lda $1900,y
  94. 1010        adc #$00
  95. 1020        sta $1b00,y
  96. 1030        ldx #$12   ;setze update.
  97. 1040        stx $d600  ;nach dieses
  98. 1050        lda #$40   ;address wird
  99. 1060        sta $d601  ;kopiert.
  100. 1070        inx
  101. 1080        stx $d600
  102. 1090        lda #$00
  103. 1100        sta $d601
  104. 1110 sc3    bit $d600  ;address
  105. 1120        bpl sc3    ;ubergetragen?
  106. 1130 copy   ldy #$00   ;hier werden 94
  107. 1140 c1     lda #$20   ;pixelzeilen
  108. 1150        sta $d600  ;von blockadres
  109. 1160        lda $1b00,y;nach das update
  110. 1170        sta $d601  ;adres kopiert.
  111. 1180        lda #$21   ;das update wird
  112. 1190        sta $d600  ;automatisch
  113. 1200        lda $1a00,y;hinauf gezahlt.
  114. 1210        sta $d601  ;das blockadres
  115. 1220        lda #$1e   ;kommt aus die
  116. 1230        sta $d600  ;hardscroll-
  117. 1240        lda #$50   ;tabelle: das
  118. 1250        sta $d601  ;pixelzeileadres
  119. 1260 c2     bit $d600  ;plus den offset
  120. 1270        bpl c2
  121. 1280        iny
  122. 1290        cpy #$5e
  123. 1300        bne c1
  124. 1310        lda #$ff   ;leertaste
  125. 1320        cmp $dc01  ;gedruckt?
  126. 1330        bne done   ;ja ende.
  127. 1340        jmp screen
  128. 1350 done   cmp $dc01  ;warte bis keine
  129. 1360        bne done   ;taste mehr
  130. 1370        cli        ;gedruckt wird.
  131. 1380        rts
  132. 1390 wait90 jsr wait17
  133. 1400 wait73 jsr wait17
  134. 1410        jsr wait17
  135. 1420        jsr wait17
  136. 1430        lda ($aa),y
  137. 1440 wait17 lda ($aa),y
  138. 1450 wait12 rts
  139. 1460 putpic sei        ;pisture von vic
  140. 1470        sta $fd    ;nach vdc-format
  141. 1480        stx $fe
  142. 1490        lda #$00   ;picture bei
  143. 1500        sta $fb    ;$8000 im
  144. 1510        lda #$80   ;bank 0.
  145. 1520        sta $fc
  146. 1530        lda #$19   ;25 zeilen.
  147. 1540        sta tel1
  148. 1550 p1     ldy #$00
  149. 1560 p2     sty tel2
  150. 1570        lda #$28   ;40 spalten.
  151. 1580        sta tel3
  152. 1590        lda $fe    ;setze update-
  153. 1600        ldx #$12   ;address.
  154. 1610        jsr $cdcc
  155. 1620        lda $fd
  156. 1630        inx
  157. 1640        jsr $cdcc
  158. 1650 get    stx $ff01  ;hole byte aus
  159. 1660        lda ($fb),y;bank 0.
  160. 1670        ldx #$00
  161. 1680        stx $ff00
  162. 1690        jsr $cdca  ;byte nach vdc.
  163. 1700        tya        ;nachstes byte.
  164. 1710        clc
  165. 1720        adc #$08
  166. 1730        tay
  167. 1740        bcc p3
  168. 1750        inc $fc
  169. 1760 p3     dec tel3
  170. 1770        bne get
  171. 1780        lda #$50   ;address nachste
  172. 1790        clc        ;vdc-pixelzeile.
  173. 1800        adc $fd
  174. 1810        sta $fd
  175. 1820        bcc p4
  176. 1830        inc $fe
  177. 1840 p4     dec $fc
  178. 1850        ldy tel2   ;8 pixelzeilen
  179. 1860        iny        ;gehat?
  180. 1870        cpy #$08
  181. 1880        bcc p2
  182. 1890        lda $fb    ;ja nachste
  183. 1900        clc        ;vic zeile.
  184. 1910        adc #$40
  185. 1920        sta $fb
  186. 1930        lda $fc
  187. 1940        adc #$01
  188. 1950        sta $fc
  189. 1960        dec tel1
  190. 1970        bne p1
  191. 1980        cli        ;fertig.
  192. 1990        rts
  193. 2000 tel1   dat $00
  194. 2010 tel2   dat $00
  195. 2020 tel3   dat $00
  196. 2030 count  dat $00
  197.  
  198. ready.
  199.  
  200.  
  201.