summaryrefslogtreecommitdiff
path: root/arm9
diff options
context:
space:
mode:
Diffstat (limited to 'arm9')
-rw-r--r--arm9/asm/unk_0201CBEC.s20
-rw-r--r--arm9/asm/unk_0202A8F4.s36
-rw-r--r--arm9/asm/unk_0202ABBC.s81
-rw-r--r--arm9/asm/unk_0202C0E0.s67
-rw-r--r--arm9/src/unk_0201CBEC.c12
-rw-r--r--arm9/src/unk_0202A8F4.c52
-rw-r--r--arm9/src/unk_0202ABBC.c64
-rw-r--r--arm9/src/unk_0202C0E0.c50
8 files changed, 178 insertions, 204 deletions
diff --git a/arm9/asm/unk_0201CBEC.s b/arm9/asm/unk_0201CBEC.s
deleted file mode 100644
index cd295439..00000000
--- a/arm9/asm/unk_0201CBEC.s
+++ /dev/null
@@ -1,20 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .text
-
- thumb_func_start FUN_0201CBEC
-FUN_0201CBEC: ; 0x0201CBEC
- push {r3, lr}
- sub r0, r0, r2
- sub r2, r1, r3
- add r1, r0, #0x0
- mul r1, r0
- add r0, r2, #0x0
- mul r0, r2
- add r0, r1, r0
- lsl r0, r0, #0xc
- bl FX_Sqrt
- asr r0, r0, #0xc
- pop {r3, pc}
- .balign 4
diff --git a/arm9/asm/unk_0202A8F4.s b/arm9/asm/unk_0202A8F4.s
deleted file mode 100644
index ea063dd7..00000000
--- a/arm9/asm/unk_0202A8F4.s
+++ /dev/null
@@ -1,36 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .text
-
- thumb_func_start FUN_0202A8F4
-FUN_0202A8F4: ; 0x0202A8F4
- mov r0, #0xe
- bx lr
-
- thumb_func_start FUN_0202A8F8
-FUN_0202A8F8: ; 0x0202A8F8
- mov r1, #0x0
- strb r1, [r0, #0x0]
- strb r1, [r0, #0x1]
- strb r1, [r0, #0x2]
- strb r1, [r0, #0x3]
- strb r1, [r0, #0x4]
- strb r1, [r0, #0x5]
- strb r1, [r0, #0x6]
- strb r1, [r0, #0x7]
- strb r1, [r0, #0x8]
- strb r1, [r0, #0x9]
- strb r1, [r0, #0xa]
- strb r1, [r0, #0xb]
- strb r1, [r0, #0xc]
- strb r1, [r0, #0xd]
- bx lr
-
- thumb_func_start FUN_0202A918
-FUN_0202A918: ; 0x0202A918
- ldr r3, _0202A920 ; =SavArray_get
- mov r1, #0x18
- bx r3
- nop
-_0202A920: .word SavArray_get
diff --git a/arm9/asm/unk_0202ABBC.s b/arm9/asm/unk_0202ABBC.s
deleted file mode 100644
index e8225116..00000000
--- a/arm9/asm/unk_0202ABBC.s
+++ /dev/null
@@ -1,81 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .text
-
- thumb_func_start FUN_0202ABBC
-FUN_0202ABBC: ; 0x0202ABBC
- ldr r3, _0202ABC4 ; =SavArray_get
- mov r1, #0x1a
- bx r3
- nop
-_0202ABC4: .word SavArray_get
-
- thumb_func_start FUN_0202ABC8
-FUN_0202ABC8: ; 0x0202ABC8
- mov r0, #0xf4
- bx lr
-
- thumb_func_start FUN_0202ABCC
-FUN_0202ABCC: ; 0x0202ABCC
- ldr r3, _0202ABD8 ; =MIi_CpuClearFast
- add r1, r0, #0x0
- mov r0, #0x0
- mov r2, #0xf4
- bx r3
- nop
-_0202ABD8: .word MIi_CpuClearFast
-
- thumb_func_start FUN_0202ABDC
-FUN_0202ABDC: ; 0x0202ABDC
- add r0, #0xec
- ldrh r0, [r0, #0x0]
- bx lr
- .balign 4
-
- thumb_func_start FUN_0202ABE4
-FUN_0202ABE4: ; 0x0202ABE4
- add r0, #0xec
- strh r1, [r0, #0x0]
- bx lr
- .balign 4
-
- thumb_func_start FUN_0202ABEC
-FUN_0202ABEC: ; 0x0202ABEC
- ldr r3, _0202ABF4 ; =MIi_CpuCopyFast
- mov r2, #0xec
- bx r3
- nop
-_0202ABF4: .word MIi_CpuCopyFast
-
- thumb_func_start FUN_0202ABF8
-FUN_0202ABF8: ; 0x0202ABF8
- ldr r3, _0202AC04 ; =MIi_CpuCopyFast
- add r2, r0, #0x0
- add r0, r1, #0x0
- add r1, r2, #0x0
- mov r2, #0xec
- bx r3
- .balign 4
-_0202AC04: .word MIi_CpuCopyFast
-
- thumb_func_start FUN_0202AC08
-FUN_0202AC08: ; 0x0202AC08
- add r0, #0xf0
- ldr r0, [r0, #0x0]
- bx lr
- .balign 4
-
- thumb_func_start FUN_0202AC10
-FUN_0202AC10: ; 0x0202AC10
- add r0, #0xf0
- str r1, [r0, #0x0]
- bx lr
- .balign 4
-
- thumb_func_start FUN_0202AC18
-FUN_0202AC18: ; 0x0202AC18
- add r0, #0xee
- ldrh r0, [r0, #0x0]
- bx lr
- .balign 4
diff --git a/arm9/asm/unk_0202C0E0.s b/arm9/asm/unk_0202C0E0.s
deleted file mode 100644
index 5f489515..00000000
--- a/arm9/asm/unk_0202C0E0.s
+++ /dev/null
@@ -1,67 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .text
-
- thumb_func_start FUN_0202C0E0
-FUN_0202C0E0: ; 0x0202C0E0
- mov r0, #0x28
- bx lr
-
- thumb_func_start FUN_0202C0E4
-FUN_0202C0E4: ; 0x0202C0E4
- push {r4-r5}
- mov r4, #0x0
- add r1, r4, #0x0
- add r2, r4, #0x0
-_0202C0EC:
- add r3, r2, #0x0
- add r5, r0, #0x0
-_0202C0F0:
- add r3, r3, #0x1
- strh r1, [r5, #0x0]
- add r5, r5, #0x2
- cmp r3, #0x4
- blt _0202C0F0
- add r4, r4, #0x1
- add r0, #0x8
- cmp r4, #0x5
- blt _0202C0EC
- pop {r4-r5}
- bx lr
- .balign 4
-
- thumb_func_start FUN_0202C108
-FUN_0202C108: ; 0x0202C108
- push {r3-r5, lr}
- add r5, r1, #0x0
- mov r1, #0x21
- add r4, r2, #0x0
- bl SavArray_get
- lsl r1, r5, #0x3
- add r3, r0, r1
- lsl r2, r4, #0x1
- ldrh r1, [r3, r2]
- ldr r0, _0202C128 ; =0x0000270F
- cmp r1, r0
- bhs _0202C126
- add r0, r1, #0x1
- strh r0, [r3, r2]
-_0202C126:
- pop {r3-r5, pc}
- .balign 4
-_0202C128: .word 0x0000270F
-
- thumb_func_start FUN_0202C12C
-FUN_0202C12C: ; 0x0202C12C
- push {r3-r5, lr}
- add r5, r1, #0x0
- mov r1, #0x21
- add r4, r2, #0x0
- bl SavArray_get
- lsl r2, r5, #0x3
- lsl r1, r4, #0x1
- add r0, r0, r2
- ldrh r0, [r1, r0]
- pop {r3-r5, pc}
- .balign 4
diff --git a/arm9/src/unk_0201CBEC.c b/arm9/src/unk_0201CBEC.c
new file mode 100644
index 00000000..0e75c3ff
--- /dev/null
+++ b/arm9/src/unk_0201CBEC.c
@@ -0,0 +1,12 @@
+#include "global.h"
+#include "fx.h"
+
+int FUN_0201CBEC(int a0, int a1, int a2, int a3);
+
+THUMB_FUNC int FUN_0201CBEC(int a0, int a1, int a2, int a3) {
+
+ int r0 = a0 - a2;
+ int r2 = a1 - a3;
+
+ return FX_Sqrt((r0 * r0 + r2 * r2) << 0xc) >> 0xc;
+} \ No newline at end of file
diff --git a/arm9/src/unk_0202A8F4.c b/arm9/src/unk_0202A8F4.c
new file mode 100644
index 00000000..66a0244b
--- /dev/null
+++ b/arm9/src/unk_0202A8F4.c
@@ -0,0 +1,52 @@
+#include "global.h"
+#include "save_block_2.h"
+
+struct Unk0202A8F4
+{
+ u8 u_0;
+ u8 u_1;
+ u8 u_2;
+ u8 u_3;
+ u8 u_4;
+ u8 u_5;
+ u8 u_6;
+ u8 u_7;
+ u8 u_8;
+ u8 u_9;
+ u8 u_A;
+ u8 u_B;
+ u8 u_C;
+ u8 u_D;
+};
+
+u32 FUN_0202A8F4();
+void FUN_0202A8F8(struct Unk0202A8F4 *unk);
+void *FUN_0202A918(void *arg0);
+
+THUMB_FUNC u32 FUN_0202A8F4()
+{
+ return sizeof(struct Unk0202A8F4);
+}
+
+THUMB_FUNC void FUN_0202A8F8(struct Unk0202A8F4 *unk)
+{
+ unk->u_0 = 0;
+ unk->u_1 = 0;
+ unk->u_2 = 0;
+ unk->u_3 = 0;
+ unk->u_4 = 0;
+ unk->u_5 = 0;
+ unk->u_6 = 0;
+ unk->u_7 = 0;
+ unk->u_8 = 0;
+ unk->u_9 = 0;
+ unk->u_A = 0;
+ unk->u_B = 0;
+ unk->u_C = 0;
+ unk->u_D = 0;
+}
+
+THUMB_FUNC void *FUN_0202A918(void *arg0)
+{
+ return SavArray_get(arg0, 24);
+}
diff --git a/arm9/src/unk_0202ABBC.c b/arm9/src/unk_0202ABBC.c
new file mode 100644
index 00000000..2a15b9fd
--- /dev/null
+++ b/arm9/src/unk_0202ABBC.c
@@ -0,0 +1,64 @@
+#include "global.h"
+#include "save_block_2.h"
+#include "MI_memory.h"
+
+void *FUN_0202ABBC(struct SaveBlock2* sav);
+u32 FUN_0202ABC8();
+void FUN_0202ABCC(void *destp);
+u16 FUN_0202ABDC(void *unkSavStruct);
+void FUN_0202ABE4(void *unkSavStruct, u16 data);
+void FUN_0202ABEC(void *srcp, void *destp);
+void FUN_0202ABF8(void *destp, void *srcp);
+u32 FUN_0202AC08(void *unkStruct);
+void FUN_0202AC10(void *unkStruct, u32 data);
+u16 FUN_0202AC18(void *unkStruct);
+
+THUMB_FUNC void *FUN_0202ABBC(struct SaveBlock2* sav)
+{
+ return SavArray_get(sav, 26);
+}
+
+THUMB_FUNC u32 FUN_0202ABC8()
+{
+ return 0xf4; // 244
+}
+
+THUMB_FUNC void FUN_0202ABCC(void *destp)
+{
+ MIi_CpuClearFast(0, destp, 0xf4);
+}
+
+THUMB_FUNC u16 FUN_0202ABDC(void *unkSavStruct)
+{
+ return *(u16 *)(unkSavStruct + 0xec);
+}
+
+THUMB_FUNC void FUN_0202ABE4(void *unkSavStruct, u16 data)
+{
+ *(u16 *)(unkSavStruct + 0xec) = data;
+}
+
+THUMB_FUNC void FUN_0202ABEC(void *srcp, void *destp)
+{
+ MIi_CpuCopyFast(srcp, destp, 0xec);
+}
+
+THUMB_FUNC void FUN_0202ABF8(void *destp, void *srcp)
+{
+ MIi_CpuCopyFast(srcp, destp, 0xec);
+}
+
+THUMB_FUNC u32 FUN_0202AC08(void *unkStruct)
+{
+ return *(u32 *)(unkStruct + 0xf0);
+}
+
+THUMB_FUNC void FUN_0202AC10(void *unkStruct, u32 data)
+{
+ *(u32 *)(unkStruct + 0xf0) = data;
+}
+
+THUMB_FUNC u16 FUN_0202AC18(void *unkStruct)
+{
+ return *(u16 *)(unkStruct + 0xee);
+} \ No newline at end of file
diff --git a/arm9/src/unk_0202C0E0.c b/arm9/src/unk_0202C0E0.c
new file mode 100644
index 00000000..b39570fe
--- /dev/null
+++ b/arm9/src/unk_0202C0E0.c
@@ -0,0 +1,50 @@
+#include "global.h"
+#include "save_block_2.h"
+
+
+struct UnkSaveStruct0202C0E4
+{
+ u16 data[5][4];
+};
+
+u32 FUN_0202C0E0();
+void FUN_0202C0E4(struct UnkSaveStruct0202C0E4 *unkStruct);
+void FUN_0202C108(struct SaveBlock2 *save, u32 a1, u32 a2);
+u16 FUN_0202C12C(struct SaveBlock2 *save, u32 a1, u32 a2);
+
+
+THUMB_FUNC u32 FUN_0202C0E0()
+{
+ return sizeof(struct UnkSaveStruct0202C0E4); // 40
+}
+
+
+THUMB_FUNC void FUN_0202C0E4(struct UnkSaveStruct0202C0E4 *unkStruct)
+{
+
+ int j, i = 0;
+
+ do {
+ j = 0;
+ do {
+ unkStruct->data[i][j] = 0;
+ j++;
+ } while (j < 4);
+ i++;
+ } while (i < 5);
+}
+
+THUMB_FUNC void FUN_0202C108(struct SaveBlock2 *save, u32 a1, u32 a2)
+{
+ struct UnkSaveStruct0202C0E4 *unkSavStruct = SavArray_get(save, 0x21);
+ if (unkSavStruct->data[a1][a2] < 9999)
+ {
+ unkSavStruct->data[a1][a2]++;
+ }
+}
+
+THUMB_FUNC u16 FUN_0202C12C(struct SaveBlock2 *save, u32 a1, u32 a2)
+{
+ struct UnkSaveStruct0202C0E4 *unkSavStruct = SavArray_get(save, 0x21);
+ return unkSavStruct->data[a1][a2];
+} \ No newline at end of file