summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--asm/secret_base.s46
-rwxr-xr-xsrc/secret_base_80bb4ac.c15
2 files changed, 15 insertions, 46 deletions
diff --git a/asm/secret_base.s b/asm/secret_base.s
index eb578f85e..6685bc826 100644
--- a/asm/secret_base.s
+++ b/asm/secret_base.s
@@ -6,52 +6,6 @@
.text
- thumb_func_start sub_80BB5E4
-sub_80BB5E4: @ 80BB5E4
- push {r4,lr}
- ldr r0, _080BB5F4 @ =gScriptResult
- movs r1, 0
- strh r1, [r0]
- movs r3, 0
- adds r4, r0, 0
- b _080BB5FE
- .align 2, 0
-_080BB5F4: .4byte gScriptResult
-_080BB5F8:
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
-_080BB5FE:
- cmp r3, 0x13
- bhi _080BB626
- ldr r2, _080BB62C @ =gUnknown_020387DC
- ldr r1, _080BB630 @ =gSaveBlock1
- lsls r0, r3, 2
- adds r0, r3
- lsls r0, 5
- adds r0, r1
- ldr r1, _080BB634 @ =0x00001a08
- adds r0, r1
- ldrb r1, [r2]
- ldrb r0, [r0]
- cmp r1, r0
- bne _080BB5F8
- movs r0, 0x1
- strh r0, [r4]
- ldr r0, _080BB638 @ =0x00004054
- adds r1, r3, 0
- bl VarSet
-_080BB626:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080BB62C: .4byte gUnknown_020387DC
-_080BB630: .4byte gSaveBlock1
-_080BB634: .4byte 0x00001a08
-_080BB638: .4byte 0x00004054
- thumb_func_end sub_80BB5E4
-
thumb_func_start sub_80BB63C
sub_80BB63C: @ 80BB63C
push {lr}
diff --git a/src/secret_base_80bb4ac.c b/src/secret_base_80bb4ac.c
index 406bef40a..9bf6d216a 100755
--- a/src/secret_base_80bb4ac.c
+++ b/src/secret_base_80bb4ac.c
@@ -1,7 +1,10 @@
#include "global.h"
+#include "event_data.h"
+#include "vars.h"
extern u8 gUnknown_020387DC;
extern u16 gSpecialVar_0x8004;
+extern u16 gScriptResult;
void sub_80BB4AC(struct SecretBaseRecord *record) { // 080bb4ac
u16 i;
@@ -47,3 +50,15 @@ void ResetSecretBases(void) { // 080bb5b4
void sub_80BB5D0(void) { // 080bb5d0
gUnknown_020387DC = gSpecialVar_0x8004;
}
+
+void sub_80BB5E4(void) { // 80bb5e4
+ u16 idx;
+ gScriptResult = 0;
+ for (idx=0; idx<20; idx++) {
+ if (gUnknown_020387DC == gSaveBlock1.secretBases[idx].sbr_field_0) {
+ gScriptResult = 1;
+ VarSet(0x4054, idx);
+ return;
+ }
+ }
+}