From efbd375eb48572090bb543d54f56ba83ca2b6792 Mon Sep 17 00:00:00 2001 From: Tal Hayon Date: Wed, 6 Apr 2022 12:06:20 +0300 Subject: [PATCH] Match sub_080A65AC --- asm/non_matching/subtask2/sub_080A65AC.inc | 47 ---------------------- src/subtask2.c | 24 ++++++++++- 2 files changed, 23 insertions(+), 48 deletions(-) delete mode 100644 asm/non_matching/subtask2/sub_080A65AC.inc diff --git a/asm/non_matching/subtask2/sub_080A65AC.inc b/asm/non_matching/subtask2/sub_080A65AC.inc deleted file mode 100644 index af942a59..00000000 --- a/asm/non_matching/subtask2/sub_080A65AC.inc +++ /dev/null @@ -1,47 +0,0 @@ - .syntax unified - push {r4, lr} - ldr r0, _080A65E4 @ =gFadeControl - ldrb r0, [r0] - cmp r0, #0 - bne _080A6600 - ldr r4, _080A65E8 @ =gMenu - adds r1, r4, #0 - adds r1, #0x2c - ldrb r0, [r1] - adds r0, #1 - strb r0, [r1] - ldrh r0, [r4, #8] - cmp r0, #0 - beq _080A65EC - cmp r0, #0x1e - bne _080A65DA - ldrh r0, [r4, #0x12] - strh r0, [r4, #0x10] - movs r0, #0x20 - strb r0, [r1] - adds r0, #0xe3 - bl SoundReq -_080A65DA: - ldrh r0, [r4, #8] - subs r0, #1 - strh r0, [r4, #8] - b _080A6600 - .align 2, 0 -_080A65E4: .4byte gFadeControl -_080A65E8: .4byte gMenu -_080A65EC: - ldr r0, _080A6604 @ =gInput - ldrh r0, [r0, #2] - cmp r0, #1 - blt _080A6600 - cmp r0, #2 - ble _080A65FC - cmp r0, #8 - bne _080A6600 -_080A65FC: - bl Subtask_Exit -_080A6600: - pop {r4, pc} - .align 2, 0 -_080A6604: .4byte gInput - .syntax divided diff --git a/src/subtask2.c b/src/subtask2.c index e21f5720..11ac02be 100644 --- a/src/subtask2.c +++ b/src/subtask2.c @@ -504,7 +504,29 @@ void sub_080A6534(void) { SetFade(4, 8); } -ASM_FUNC("asm/non_matching/subtask2/sub_080A65AC.inc", void sub_080A65AC()) +void sub_080A65AC(void) { + if (!gFadeControl.active) { + gGenericMenu.unk2c++; + switch (gMenu.transitionTimer) { + case 0x1e: + gGenericMenu.unk10.h[0] = gGenericMenu.unk10.h[1]; + gGenericMenu.unk2c = 0x20; + SoundReq(SFX_103); + default: + gMenu.transitionTimer--; + break; + case 0: + switch (gInput.newKeys) { + case A_BUTTON: + case B_BUTTON: + case START_BUTTON: + Subtask_Exit(); + break; + } + break; + } + } +} void sub_080A6608(void) { extern void (*const gUnk_08128E78[])(void);