home *** CD-ROM | disk | FTP | other *** search
/ 64'er Special 20 / 64er_Magazin_Sonderheft_20_19xx_Markt__Technik_de_Side_A.d64 / hi-scroller.src (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  3KB  |  115 lines

  1. 990 sys4096*9:.opt p,oo:*=49152
  2. 1000 jmp right
  3. 1010 jmp left
  4. 1020 jmp up
  5. 1030 jmp down
  6. 1040 graf = $2000
  7. 1050 ;################################
  8. 1060 ;### zyl. right scrolling     ###
  9. 1070 ;################################
  10. 1080 right lda #<graf:sta $fc
  11. 1090 ldx #>graf:stx $fd:inx:stx $fb
  12. 1100 lda #<graf+312:sta $fa
  13. 1110 lda #8:sta $14:lda #25:sta $15
  14. 1120 a2 ldy #0:ldx #40
  15. 1130 lda ($fa),y:sta $fe
  16. 1140 a1 ror $fe
  17. 1150 lda ($fc),y:sta $fe:ror a
  18. 1160 sta ($fc),y:lda $fc:clc:adc #8
  19. 1170 sta $fc:lda $fd:adc #0:sta $fd
  20. 1180 dex:bne a1
  21. 1190 dec $fd:lda $fc:sec:sbc #63:sta $fc
  22. 1200 lda $fd:sbc #0:sta $fd
  23. 1210 inc $fa:bne a4:inc $fb
  24. 1220 a4 dec $14:bne a2
  25. 1230 inc $fb:lda $fa:clc:adc #56:sta $fa
  26. 1240 lda $fb:adc #0:sta $fb
  27. 1250 inc $fd:lda $fc:clc:adc #56:sta $fc
  28. 1260 lda $fd:adc #0:sta $fd
  29. 1270 lda #8:sta $14:dec $15:bne a2:rts
  30. 1280 ;################################
  31. 1290 ;### zyl. left scrolling      ###
  32. 1300 ;################################
  33. 1310 left lda #<graf:sta $fa
  34. 1320 ldx #>graf:stx $fb:inx:stx $fd
  35. 1330 lda #<graf+312:sta $fc
  36. 1340 lda #8:sta $14:lda #25:sta $15
  37. 1350 aa2 ldy #0:ldx #40
  38. 1360 lda ($fa),y:sta $2
  39. 1370 aa1 rol $2
  40. 1380 lda ($fc),y:sta $2:rol a:sta ($fc),y
  41. 1390 lda $fc:sec:sbc #8:sta $fc
  42. 1400 lda $fd:sbc #0:sta $fd
  43. 1410 dex:bne aa1
  44. 1420 lda $fc:clc:adc #65:sta $fc
  45. 1430 lda $fd:adc #1:sta $fd
  46. 1440 inc $fa:bne aa4:inc $fb
  47. 1450 aa4 dec $14:bne aa2
  48. 1460 lda $fc:clc:adc #56:sta $fc
  49. 1470 lda $fd:adc #1:sta $fd
  50. 1480 lda $fa:clc:adc #56:sta $fa
  51. 1490 lda $fb:adc #1:sta $fb
  52. 1500 lda #8:sta $14:dec $15:bne aa2
  53. 1510 rts
  54. 1520 ;################################
  55. 1530 ;### zyl. up scrolling        ###
  56. 1540 ;################################
  57. 1550 up ldx #<graf:stx $fa:inx:stx $fc
  58. 1560 lda #>graf:sta $fb:sta $fd
  59. 1570 lda #<graf-313:sta $14
  60. 1580 lda #>graf-313:sta $15
  61. 1590 lda #40:sta $fe
  62. 1600 u4 ldx #24:ldy #0
  63. 1610 lda ($fa),y:pha
  64. 1620 u1 lda ($fc),y:sta ($fa),y
  65. 1630 iny:cpy #7:bne u1
  66. 1640 u3 lda $fa:clc:adc #64
  67. 1650 sta $fa:lda $fb:adc #1:sta $fb
  68. 1660 lda $fc:clc:adc #64
  69. 1670 sta $fc:lda $fd:adc #1:sta $fd
  70. 1680 lda $14:clc:adc #64
  71. 1690 sta $14:lda $15:adc #1:sta $15
  72. 1700 ldy #0:lda ($fa),y:sta ($14),y
  73. 1710 u2 lda ($fc),y:sta ($fa),y:iny
  74. 1720 cpy #7:bne u2:dex:bne u3
  75. 1730 dey:pla:sta ($fc),y
  76. 1740 lda $fa:sec:sbc #248:sta $fa
  77. 1750 lda $fb:sbc #29:sta $fb
  78. 1760 lda $fc:sec:sbc #248:sta $fc
  79. 1770 lda $fd:sbc #29:sta $fd
  80. 1780 lda $14:sec:sbc #248:sta $14
  81. 1790 lda $15:sbc #29:sta $15
  82. 1800 dec $fe:bne u5
  83. 1810 rts
  84. 1820 u5 jmp u4
  85. 1830 ;################################
  86. 1840 ;### zyl. down scrolling      ###
  87. 1850 ;################################
  88. 1860 down ldx #<graf+7680:stx $fa:inx:stx $fc
  89. 1870 lda #>graf+7680:sta $fb:sta $fd
  90. 1880 lda #<graf+7994:sta $14
  91. 1890 lda #>graf+7994:sta $15
  92. 1900 lda #40:sta $fe
  93. 1910 d4 ldy #6:ldx #24
  94. 1920 lda ($fc),y:pha
  95. 1930 d1 lda ($fa),y:sta ($fc),y:dey
  96. 1940 bpl d1
  97. 1950 d3 lda $fa:sec:sbc #64
  98. 1960 sta $fa:lda $fb:sbc #1:sta $fb
  99. 1970 lda $fc:sec:sbc #64
  100. 1980 sta $fc:lda $fd:sbc #1:sta $fd
  101. 1990 lda $14:sec:sbc #64
  102. 2000 sta $14:lda $15:sbc #1:sta $15
  103. 2010 ldy #6:lda ($fc),y:sta ($14),y
  104. 2020 d2 lda ($fa),y:sta ($fc),y:dey
  105. 2030 bpl d2:dex:bne d3
  106. 2040 pla:ldy #0:sta ($fa),y
  107. 2050 lda $fa:clc:adc #8:sta $fa
  108. 2060 lda $fb:adc #30:sta $fb
  109. 2070 lda $fc:clc:adc #8:sta $fc
  110. 2080 lda $fd:adc #30:sta $fd
  111. 2090 lda $14:clc:adc #8:sta $14
  112. 2100 lda $15:adc #30:sta $15
  113. 2110 dec $fe:bne d5:rts
  114. 2120 d5 jmp d4
  115.