summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arm9/global.inc1
-rw-r--r--arm9/modules/05/asm/mod05_021E72FC_asm1.s23
-rw-r--r--arm9/modules/05/include/mod05_021E72FC.h10
-rw-r--r--arm9/modules/05/src/mod05_021E72FC_src.c15
4 files changed, 26 insertions, 23 deletions
diff --git a/arm9/global.inc b/arm9/global.inc
index 60f00ea2..83745bec 100644
--- a/arm9/global.inc
+++ b/arm9/global.inc
@@ -6509,6 +6509,7 @@
.extern MOD05_021E7184
.extern MOD05_021E71E8
.extern MOD05_021E72FC
+.extern MOD05_021E7358
.extern MOD05_021E7750
.extern MOD05_021E799C
.extern MOD05_021E7AC0
diff --git a/arm9/modules/05/asm/mod05_021E72FC_asm1.s b/arm9/modules/05/asm/mod05_021E72FC_asm1.s
index 2bc62fca..84999c30 100644
--- a/arm9/modules/05/asm/mod05_021E72FC_asm1.s
+++ b/arm9/modules/05/asm/mod05_021E72FC_asm1.s
@@ -53,26 +53,3 @@ _021E734C:
bl MOD05_021E7358
mov r0, #1
pop {r4, r5, r6, pc}
-
- thumb_func_start MOD05_021E7358
-MOD05_021E7358: ; 0x021E7358
- push {r3, r4, r5, r6, r7, lr}
- add r5, r0, #0
- mov r0, #0x18
- add r6, r1, #0
- add r7, r2, #0
- bl MOD05_021E74D4
- add r4, r0, #0
- str r5, [r4, #0xc]
- str r6, [r4, #0x10]
- ldr r0, _021E7380 ; =0x00000658
- str r7, [r4]
- bl FUN_020054C8
- ldr r1, _021E7384 ; =MOD05_021E73B4
- add r0, r5, #0
- add r2, r4, #0
- bl FUN_020463CC
- pop {r3, r4, r5, r6, r7, pc}
- .balign 4, 0
-_021E7380: .word 0x00000658
-_021E7384: .word MOD05_021E73B4
diff --git a/arm9/modules/05/include/mod05_021E72FC.h b/arm9/modules/05/include/mod05_021E72FC.h
index 82f56cb2..406d6f6e 100644
--- a/arm9/modules/05/include/mod05_021E72FC.h
+++ b/arm9/modules/05/include/mod05_021E72FC.h
@@ -3,6 +3,16 @@
#include "nitro/types.h"
+typedef struct UnkStruct021E7358
+{
+ u32 Unk00;
+ u8 dummy[8];
+ u32 Unk0C;
+ u32 Unk10;
+
+} UnkStruct021E7358;
+
+void MOD05_021E7358(u32 param0, u32 param1, u32 param2);
u32 MOD05_021E7388(u32 param0);
#endif //POKEDIAMOND_MOD05_021E72FC_H
diff --git a/arm9/modules/05/src/mod05_021E72FC_src.c b/arm9/modules/05/src/mod05_021E72FC_src.c
index 9ab08746..90b05ce2 100644
--- a/arm9/modules/05/src/mod05_021E72FC_src.c
+++ b/arm9/modules/05/src/mod05_021E72FC_src.c
@@ -1,6 +1,21 @@
#include "global.h"
#include "mod05_021E72FC.h"
+extern UnkStruct021E7358 *MOD05_021E74D4(u32 param0);
+extern void FUN_020054C8(u32 param0);
+extern MOD05_021E73B4();
+extern void FUN_020463CC(u32 param0, void *func, UnkStruct021E7358 *param2);
+
+THUMB_FUNC void MOD05_021E7358(u32 param0, u32 param1, u32 param2)
+{
+ UnkStruct021E7358 *res = MOD05_021E74D4(24);
+ res->Unk0C = param0;
+ res->Unk10 = param1;
+ res->Unk00 = param2;
+ FUN_020054C8(1624);
+ FUN_020463CC(param0, MOD05_021E73B4, res);
+}
+
THUMB_FUNC u32 MOD05_021E7388(u32 param0)
{
switch (param0)