Advertisement
Guest User

Untitled

a guest
Nov 20th, 2019
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.16 KB | None | 0 0
  1. ;;Sys vars
  2. define __rnd $fe
  3. define __lastkey $ff
  4.  
  5. ;;Framework vars
  6. define param0 $fb
  7. define param1 $fc
  8. define param2 $fd
  9.  
  10. define f_minH 2
  11. define f_maxH 5
  12. define f_overflowedH 6
  13.  
  14. ;;Player vars
  15. define playerL 0
  16. define playerH 1
  17. define playerColor 2
  18.  
  19. define playerLOld 3
  20. define playerHOld 4
  21.  
  22. ;;Configs
  23. define f_playerColor 3
  24. define f_backgroundColor 0
  25. define f_particleFreq $ff
  26.  
  27. JSR init
  28. loop:
  29. JSR tick
  30. JSR draw
  31. LDA #1
  32. STA param0
  33. JSR sleep
  34. JMP loop
  35.  
  36.  
  37. init:
  38. JSR initPlayer
  39. RTS
  40.  
  41. tick:
  42. JSR tickPlayer
  43. RTS
  44.  
  45.  
  46. draw:
  47. JSR drawPlayer
  48. RTS
  49.  
  50.  
  51.  
  52. initPlayer:
  53. LDA #0
  54. STA playerL
  55. LDA #2
  56. STA playerH
  57. LDA #f_playerColor
  58. STA playerColor
  59. RTS
  60.  
  61. tickPlayer:
  62. LDA playerL
  63. STA playerLOld
  64. LDA playerH
  65. STA playerHOld
  66.  
  67. INC playerL
  68. BNE _done
  69.  
  70. INC playerH
  71. LDA playerH
  72.  
  73. CMP #f_overflowedH
  74. BNE _done
  75. LDA #f_minH
  76. STA playerH
  77.  
  78. _done:
  79. RTS
  80.  
  81. drawPlayer:
  82. LDA #f_particleFreq
  83. CMP __rnd
  84. BEQ _drawNewPos
  85. LDY #0
  86. LDA #f_backgroundColor
  87. STA (playerLOld),Y
  88.  
  89. _drawNewPos:
  90. LDA playerColor
  91. ;LDA #5
  92. STA (playerL),Y
  93. RTS
  94.  
  95. sleep:
  96. LDX param0
  97. _loop:
  98. NOP
  99. DEX
  100. CPX #0
  101. BNE _loop
  102. RTS
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement