summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--asm/secret_base.s36
-rw-r--r--src/secret_base.c20
2 files changed, 20 insertions, 36 deletions
diff --git a/asm/secret_base.s b/asm/secret_base.s
index 855545884..d3d88915c 100644
--- a/asm/secret_base.s
+++ b/asm/secret_base.s
@@ -6,42 +6,6 @@
.section .text_80BC1D0
- thumb_func_start sub_80BCC54
-sub_80BCC54: @ 80BCC54
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _080BCC84 @ =0x00004054
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- bl BuyMenuFreeMemory
- movs r0, 0
- bl DestroyVerticalScrollIndicator
- movs r0, 0x1
- bl DestroyVerticalScrollIndicator
- cmp r4, 0
- bne _080BCC8C
- ldr r0, _080BCC88 @ =gUnknown_0815F399
- bl ScriptContext1_SetupScript
- b _080BCC92
- .align 2, 0
-_080BCC84: .4byte 0x00004054
-_080BCC88: .4byte gUnknown_0815F399
-_080BCC8C:
- ldr r0, _080BCCA0 @ =gUnknown_0815F49A
- bl ScriptContext1_SetupScript
-_080BCC92:
- adds r0, r5, 0
- bl DestroyTask
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080BCCA0: .4byte gUnknown_0815F49A
- thumb_func_end sub_80BCC54
-
thumb_func_start sub_80BCCA4
sub_80BCCA4: @ 80BCCA4
push {r4,lr}
diff --git a/src/secret_base.c b/src/secret_base.c
index 291ddc41d..b9c316d95 100644
--- a/src/secret_base.c
+++ b/src/secret_base.c
@@ -28,6 +28,9 @@
#include "text.h"
#include "vars.h"
+extern u8 gUnknown_0815F399[];
+extern u8 gUnknown_0815F49A[];
+
void sub_80BCA84(u8);
void sub_80BCBF8(u8);
void sub_80BCB90(u8);
@@ -1416,3 +1419,20 @@ void sub_80BCBF8(u8 taskId)
StartVerticalScrollIndicators(1);
gTasks[taskId].func = sub_80BC824;
}
+
+void sub_80BCC54(u8 taskId)
+{
+ u16 var54 = VarGet(VAR_0x4054);
+ BuyMenuFreeMemory();
+ DestroyVerticalScrollIndicator(0);
+ DestroyVerticalScrollIndicator(1);
+ if (var54 == 0)
+ {
+ ScriptContext1_SetupScript(gUnknown_0815F399);
+ }
+ else
+ {
+ ScriptContext1_SetupScript(gUnknown_0815F49A);
+ }
+ DestroyTask(taskId);
+}