eventroutines.asm 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. EventPtTable:
  2. .dw EventRoutine0
  3. .dw EventRoutine1
  4. .dw EventRoutine2
  5. .dw EventRoutine3
  6. ;boot init, also debug menu check
  7. EventRoutine0:
  8. rep #$31
  9. lda.w #200
  10. sta.w GravityCutOffYPos
  11. sep #$20
  12. lda.b #0
  13. sta.b ScreenBrightness
  14. lda.b #$80
  15. sta.l $2100
  16. jsr ROMToWRAM ;upload
  17. jsr InitOam
  18. jsr ResetScrollOffsets
  19. jsr InitDmaFifo
  20. jsr ClearColObjList
  21. jsr ClearZBuffer
  22. stz.b FocusScreenFlags
  23. lda.b #0
  24. sta.b CheckJoypadMode ;set joypad check to 8 players
  25. lda.b #$80
  26. sta.w IrqBrightnessIncDec
  27. lda.b #20
  28. sta.w MaxGravObjCount
  29. lda.b #0 ;load bgmode config #1
  30. jsr SetBGMode
  31. jsr DMATilesToVramBG3
  32. jsr ClearBg3TilemapBuffer ;cls
  33. ldx.w #0
  34. jsr LoadTextString ;print "startup ok"
  35. stz.b LoadMenuDoInit
  36. lda.b #$0f
  37. sta.b ScreenBrightness
  38. inc.b CurrentEvent
  39. rts
  40. ;debug menu play
  41. EventRoutine1:
  42. jsr ObjectProcessor
  43. ldx.w #0
  44. jsr LoadMenuFile
  45. ldx.w #1
  46. jsr LoadTextString ;print virqs
  47. ldx.w #4
  48. jsr LoadTextString ;print extirqs
  49. ldx.w #5
  50. jsr LoadTextString ;print $00:3000
  51. rts
  52. ;debug audio menu init
  53. EventRoutine2:
  54. sep #$20
  55. jsr ClearBg3TilemapBuffer ;cls
  56. ldx.w #3
  57. jsr LoadTextString ;print audio menu
  58. stz.b LoadMenuDoInit
  59. inc CurrentEvent
  60. ;debug audio menu play
  61. EventRoutine3:
  62. jsr ObjectProcessor
  63. ldx.w #1
  64. jsr LoadMenuFile
  65. ldx.w #13
  66. jsr LoadTextString ;print timecode
  67. ldx.w #14
  68. jsr LoadTextString
  69. ldx.w #30
  70. jsr LoadTextString ;print channel volume output
  71. ldx.w #31
  72. jsr LoadTextString
  73. rts