aboutsummaryrefslogtreecommitdiff
path: root/modes/vblank_handler_list.gbasm
diff options
context:
space:
mode:
authorAstatin <[email protected]>2025-03-25 19:01:47 +0900
committerAstatin <[email protected]>2025-03-25 19:01:47 +0900
commitfb8e853fd0c6660696e762f67877b4d24a9f4c22 (patch)
tree4c2c69bd5e13bebfe02534541e4adcf2b67f335f /modes/vblank_handler_list.gbasm
parent2df3daa5128a27381fe5208fa4eac59ab10bdd9c (diff)
Separate modes VBlank functions
Diffstat (limited to 'modes/vblank_handler_list.gbasm')
-rw-r--r--modes/vblank_handler_list.gbasm32
1 files changed, 32 insertions, 0 deletions
diff --git a/modes/vblank_handler_list.gbasm b/modes/vblank_handler_list.gbasm
new file mode 100644
index 0000000..61f0836
--- /dev/null
+++ b/modes/vblank_handler_list.gbasm
@@ -0,0 +1,32 @@
+Update_VBlank_Handler:
+ PUSH HL
+ LD A, $mem_current_mode
+ AND $0f
+ SLA A
+ LD HL, =VBlank_Handler_List
+ ADD L
+ LD L, A
+ LD A, $00
+ ADC H
+ LD H, A
+ LD A, (HL+)
+ LD ($mem_vblank_jump_destination+1), A
+ LD A, (HL)
+ LD ($mem_vblank_jump_destination), A
+ POP HL
+ RET
+
+VBlank_Handler_List:
+ ; 0 (dungeon, dead)
+ .DB =Dungeon_VBLANK_Entrypoint
+
+ ; 1 (dungeon dialogue, menu)
+ .DB =Dialogue_VBLANK_Entrypoint
+
+ ; 2 (loading, animation)
+ .DB =Loading_VBLANK_Entrypoint
+
+.INCLUDE "modes/dialoguemenu.gbasm"
+.INCLUDE "modes/dungeon.gbasm"
+.INCLUDE "modes/loading.gbasm"
+.INCLUDE "modes/dungeongeneration.gbasm"