summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arm9/modules/21/asm/mod21_02254A6C_asm.s17
-rw-r--r--arm9/modules/21/include/mod21_02254A6C.h1
-rw-r--r--arm9/modules/21/src/mod21_02254A6C_src.c13
3 files changed, 13 insertions, 18 deletions
diff --git a/arm9/modules/21/asm/mod21_02254A6C_asm.s b/arm9/modules/21/asm/mod21_02254A6C_asm.s
index f364df84..b70b3d9a 100644
--- a/arm9/modules/21/asm/mod21_02254A6C_asm.s
+++ b/arm9/modules/21/asm/mod21_02254A6C_asm.s
@@ -5,22 +5,7 @@
.extern MOD21_02254B4C
.extern MOD21_02254B60
-
- thumb_func_start MOD21_02254BF4
-MOD21_02254BF4: ; 0x02254BF4
- push {r3, r4, r5, lr}
- add r5, r1, #0
- add r0, r5, #0
- bl MOD20_022538A0
- add r4, r0, #0
- bl MOD21_02254C5C
- ldr r0, [r4, #4]
- mov r1, #6
- bl FUN_02017CD0
- add r0, r5, #0
- bl MOD21_02254B4C
- pop {r3, r4, r5, pc}
- thumb_func_end MOD21_02254BF4
+ .extern MOD21_02254BF4
thumb_func_start MOD21_02254C14
MOD21_02254C14: ; 0x02254C14
diff --git a/arm9/modules/21/include/mod21_02254A6C.h b/arm9/modules/21/include/mod21_02254A6C.h
index d0fc3284..5376e325 100644
--- a/arm9/modules/21/include/mod21_02254A6C.h
+++ b/arm9/modules/21/include/mod21_02254A6C.h
@@ -26,5 +26,6 @@ BOOL MOD21_02254B34(void *param0, u32 param1);
BOOL MOD21_02254B40(void *param0);
BOOL MOD21_02254B4C(void *param0);
BOOL MOD21_02254B60(u32 param0, void *param1);
+BOOL MOD21_02254BF4(u32 param0, void *param1);
#endif //POKEDIAMOND_MOD21_02254A6C_H
diff --git a/arm9/modules/21/src/mod21_02254A6C_src.c b/arm9/modules/21/src/mod21_02254A6C_src.c
index 44c2515a..25a8548b 100644
--- a/arm9/modules/21/src/mod21_02254A6C_src.c
+++ b/arm9/modules/21/src/mod21_02254A6C_src.c
@@ -100,11 +100,20 @@ THUMB_FUNC BOOL MOD21_02254B60(u32 param0, void *param1)
u32 r2 = reg_GXS_DB_DISPCNT;
vu32 tmp = r3; //unused? wtf
u32 r0 = ~0x1F00 & r2;
- r2 = r3 << 0x13;
- r3 = r2 >> 0x1b;
+ r2 = r3 << 19; //cast with shift? can't replicate both though
+ r3 = r2 >> 27;
r2 = 4 | r3;
r2 <<= 8;
r0 |= r2;
reg_GXS_DB_DISPCNT = r0;
return MOD21_02254B4C(param1);
}
+
+THUMB_FUNC BOOL MOD21_02254BF4(u32 param0, void *param1)
+{
+#pragma unused (param0)
+ UnkStruct02254B60 *strct = MOD20_022538A0(param1);
+ MOD21_02254C5C(strct);
+ FUN_02017CD0(strct->Unk04, 6);
+ return MOD21_02254B4C(param1);
+}