From 9e07bb0778d7f236518a21cd77b78ed36085c903 Mon Sep 17 00:00:00 2001 From: Zumi Daxuya Date: Thu, 21 Jan 2021 16:12:37 +0700 Subject: Disassemble start menu frame type dialog --- constants/start_menu_constants.asm | 2 +- engine/menu/frame_type_dialog.asm | 43 ++++++++++++++++++++++++++++++++++++++ engine/menu/start_menu.asm | 6 +++--- layout.link | 2 ++ shim.sym | 1 - 5 files changed, 49 insertions(+), 5 deletions(-) create mode 100644 engine/menu/frame_type_dialog.asm diff --git a/constants/start_menu_constants.asm b/constants/start_menu_constants.asm index 3b8d12a..79a2a57 100644 --- a/constants/start_menu_constants.asm +++ b/constants/start_menu_constants.asm @@ -6,5 +6,5 @@ const START_SAVE ; 4 const START_OPTIONS ; 5 const START_EXIT ; 6 - const START_TRAINER_GEAR ; 7 + const START_SET_FRAME ; 7 const START_RESET ; 8 diff --git a/engine/menu/frame_type_dialog.asm b/engine/menu/frame_type_dialog.asm new file mode 100644 index 0000000..57bfeed --- /dev/null +++ b/engine/menu/frame_type_dialog.asm @@ -0,0 +1,43 @@ +INCLUDE "constants.asm" + +SECTION "engine/menu/frame_type_dialog.asm", ROMX + +FrameTypeDialog: + ld hl, .MenuHeader + call LoadMenuHeader + ld a, [wActiveFrame] + inc a + ld [wMenuCursorBuffer], a + call VerticalMenu + jr c, .close + ld a, [wMenuCursorY] + dec a + ld [wActiveFrame], a + push de + ld de, 3 ; SFX_MENU + call PlaySFX + pop de + call LoadFontExtra + call WaitBGMap + +.close + call CloseWindow + ret + +.MenuHeader: + db MENU_BACKUP_TILES ; flags + menu_coords 0, 0, SCREEN_WIDTH / 2, SCREEN_HEIGHT - 1 + dw .MenuData + db 1 ; default option + +.MenuData: + db STATICMENU_CURSOR ; flags + db 8 ; items + db "1ばんめ@" + db "2ばんめ@" + db "3ばんめ@" + db "4ばんめ@" + db "5ばんめ@" + db "6ばんめ@" + db "7ばんめ@" + db "8ばんめ@" diff --git a/engine/menu/start_menu.asm b/engine/menu/start_menu.asm index 2e9981d..e20f53f 100644 --- a/engine/menu/start_menu.asm +++ b/engine/menu/start_menu.asm @@ -94,7 +94,7 @@ StartMenuJumpTable: dw StartMenu_Save dw StartMenu_Settings dw StartMenu_Exit - dw StartMenu_TrainerGear + dw StartMenu_SetFrame dw StartMenu_Reset StartMenuItems: @@ -173,8 +173,8 @@ StartMenu_Exit: ld a, 1 ret -StartMenu_TrainerGear: - callab TrainerGear +StartMenu_SetFrame: + callab FrameTypeDialog ld a, 0 ret diff --git a/layout.link b/layout.link index ab1e182..6bca730 100644 --- a/layout.link +++ b/layout.link @@ -937,6 +937,8 @@ ROMX $3e ROMX $3f org $4000 + org $4305 + "engine/menu/frame_type_dialog.asm" org $4362 "engine/menu/reset_dialog.asm" org $4a57 diff --git a/shim.sym b/shim.sym index 5b3b000..e281c84 100755 --- a/shim.sym +++ b/shim.sym @@ -155,7 +155,6 @@ 3A:52FB CryHeaderPointers 3F:40E9 InGameDebugMenu -3F:4305 TrainerGear 3F:4C24 Functionfcc24 3F:4E3E Functionfce3e 3F:5B66 Functionfdb66 -- cgit v1.2.3