Advertisement
MolSno

ChangeGraphicsFiles

Mar 21st, 2016
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. ChangeGraphicFiles:
  2. REP #$20
  3. LDA #!GFXBuffer : STA $00
  4. LDX.b #!GFXBuffer>>16 : STX $02
  5. LDA !ScratchRAM2 : BMI .ChangePalette
  6.  
  7. REP #$10
  8. TAY
  9. LDA !ScratchRAM3 : ASL : TAX
  10. LDA GFXOffset,x : LSR : CLC : ADC [!Message],y : TAX : DEY #2
  11. LDA [!Message],y
  12. JSL $0FF900
  13. ; Set up DMA to trigger during NMI.
  14. TXA : STA !Dest1
  15. LDA #$1801 : STA $4300
  16. LDA !ScratchRAM3 : ASL : TAX
  17. LDA $00 : CLC : ADC GFXOffset,x : STA !Tilemap1
  18. SEP #$10
  19. LDX $02 : STX !Tilemap1+2
  20. LDA #$0800 : STA !Size1
  21. LDX #$01 : STX !DMAFlag
  22.  
  23. LDA !ScratchRAM3 : BNE +
  24. LDA !ScratchRAM2 : SEC : SBC #$0004 : STA !ScratchRAM2
  25. LDA #$0002 : STA !ScratchRAM3
  26. + DEC !ScratchRAM3
  27. SEP #$20
  28. RTS
  29.  
  30. .ChangePalette
  31. REP #$10
  32. LDX #$0000
  33. LDY #$0020
  34. LDA [!Message],y
  35. JSL $0FF900
  36. ; Set up DMA.
  37. TXA : STA !Dest2
  38. SEP #$10
  39. LDA #$2200 : STA $4300
  40. LDA $00 : STA !Tilemap2
  41. LDX $02 : STX !Tilemap2+2
  42. LDA #$0200 : STA !Size2
  43. LDX #$01 : STX !PaletteFlag
  44. .GraphicsChanged
  45. REP #$20
  46. LDA !Message : CLC : ADC #$0022 : STA !Message
  47. SEP #$20
  48. INC !MessageState
  49. RTS
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement