summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arm9/arm9.lsf1
-rw-r--r--arm9/global.inc4
-rw-r--r--arm9/modules/05/asm/mod05_021DBA00.s124
-rw-r--r--arm9/modules/05/asm/module_05.s120
4 files changed, 129 insertions, 120 deletions
diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf
index 057ba00c..470f9ba8 100644
--- a/arm9/arm9.lsf
+++ b/arm9/arm9.lsf
@@ -524,6 +524,7 @@ Overlay MODULE_05
Object mod05_021DA5B8.o
Object mod05_021DB44C.o
Object mod05_021DB900.o
+ Object mod05_021DBA00.o
Object module_05.o
}
diff --git a/arm9/global.inc b/arm9/global.inc
index 3e45c867..605fe6ab 100644
--- a/arm9/global.inc
+++ b/arm9/global.inc
@@ -6295,6 +6295,10 @@
.extern MOD05_021DB9F8
.extern MOD05_021DBA00
.extern MOD05_021DBA1C
+.extern MOD05_021DBA30
+.extern MOD05_021DBA34
+.extern MOD05_021DBA38
+.extern MOD05_021DBA3C
.extern MOD05_021DBA40
.extern MOD05_021DBA78
.extern MOD05_021DBAA0
diff --git a/arm9/modules/05/asm/mod05_021DBA00.s b/arm9/modules/05/asm/mod05_021DBA00.s
new file mode 100644
index 00000000..22e64df5
--- /dev/null
+++ b/arm9/modules/05/asm/mod05_021DBA00.s
@@ -0,0 +1,124 @@
+ .include "asm/macros.inc"
+ .include "global.inc"
+ .section .text
+ .balign 4, 0
+
+ thumb_func_start MOD05_021DBA00
+MOD05_021DBA00: ; 0x021DBA00
+ push {r4, lr}
+ mov r0, #4
+ mov r1, #0x38
+ bl AllocFromHeap
+ add r4, r0, #0
+ mov r0, #0
+ add r1, r4, #0
+ mov r2, #0x38
+ bl MIi_CpuClear32
+ add r0, r4, #0
+ pop {r4, pc}
+ .balign 4, 0
+
+ thumb_func_start MOD05_021DBA1C
+MOD05_021DBA1C: ; 0x021DBA1C
+ push {r4, lr}
+ add r4, r0, #0
+ ldr r1, [r4]
+ mov r0, #4
+ bl FUN_02016A8C
+ mov r0, #0
+ str r0, [r4]
+ pop {r4, pc}
+ .balign 4, 0
+
+ thumb_func_start MOD05_021DBA30
+MOD05_021DBA30: ; 0x021DBA30
+ ldr r0, [r0]
+ bx lr
+
+ thumb_func_start MOD05_021DBA34
+MOD05_021DBA34: ; 0x021DBA34
+ ldr r0, [r0, #8]
+ bx lr
+
+ thumb_func_start MOD05_021DBA38
+MOD05_021DBA38: ; 0x021DBA38
+ ldr r0, [r0, #0xc]
+ bx lr
+
+ thumb_func_start MOD05_021DBA3C
+MOD05_021DBA3C: ; 0x021DBA3C
+ ldrh r0, [r0, #0x10]
+ bx lr
+
+ thumb_func_start MOD05_021DBA40
+MOD05_021DBA40: ; 0x021DBA40
+ push {r4, lr}
+ add r4, r0, #0
+ mov r0, #1
+ tst r0, r1
+ beq _021DBA4C
+ str r2, [r4]
+_021DBA4C:
+ mov r0, #2
+ tst r0, r1
+ beq _021DBA54
+ str r3, [r4, #4]
+_021DBA54:
+ mov r0, #4
+ tst r0, r1
+ beq _021DBA5E
+ ldr r0, [sp, #8]
+ str r0, [r4, #8]
+_021DBA5E:
+ mov r0, #8
+ tst r0, r1
+ beq _021DBA68
+ ldr r0, [sp, #0xc]
+ str r0, [r4, #0xc]
+_021DBA68:
+ ldr r0, [r4]
+ ldr r1, [r4, #4]
+ ldr r2, [r4, #8]
+ ldr r3, [r4, #0xc]
+ bl G3X_SetFog
+ pop {r4, pc}
+ .balign 4, 0
+
+ thumb_func_start MOD05_021DBA78
+MOD05_021DBA78: ; 0x021DBA78
+ push {r3, r4}
+ mov r4, #0x10
+ tst r4, r1
+ beq _021DBA82
+ strh r2, [r0, #0x10]
+_021DBA82:
+ mov r2, #0x20
+ tst r1, r2
+ beq _021DBA8A
+ str r3, [r0, #0x14]
+_021DBA8A:
+ ldrh r1, [r0, #0x10]
+ ldr r0, [r0, #0x14]
+ lsl r0, r0, #0x10
+ orr r1, r0
+ ldr r0, _021DBA9C ; =0x04000358
+ str r1, [r0]
+ pop {r3, r4}
+ bx lr
+ nop
+_021DBA9C: .word 0x04000358
+
+ thumb_func_start MOD05_021DBAA0
+MOD05_021DBAA0: ; 0x021DBAA0
+ push {r4, lr}
+ add r4, r0, #0
+ add r0, r1, #0
+ add r1, r4, #0
+ add r1, #0x18
+ mov r2, #0x20
+ bl MIi_CpuCopy32
+ add r4, #0x18
+ add r0, r4, #0
+ bl G3X_SetFogTable
+ pop {r4, pc}
+ .balign 4, 0
diff --git a/arm9/modules/05/asm/module_05.s b/arm9/modules/05/asm/module_05.s
index 9b8cf86a..20460072 100644
--- a/arm9/modules/05/asm/module_05.s
+++ b/arm9/modules/05/asm/module_05.s
@@ -3,126 +3,6 @@
.section .text
.balign 4, 0
- thumb_func_start MOD05_021DBA00
-MOD05_021DBA00: ; 0x021DBA00
- push {r4, lr}
- mov r0, #4
- mov r1, #0x38
- bl AllocFromHeap
- add r4, r0, #0
- mov r0, #0
- add r1, r4, #0
- mov r2, #0x38
- bl MIi_CpuClear32
- add r0, r4, #0
- pop {r4, pc}
- .balign 4, 0
-
- thumb_func_start MOD05_021DBA1C
-MOD05_021DBA1C: ; 0x021DBA1C
- push {r4, lr}
- add r4, r0, #0
- ldr r1, [r4]
- mov r0, #4
- bl FUN_02016A8C
- mov r0, #0
- str r0, [r4]
- pop {r4, pc}
- .balign 4, 0
-
- thumb_func_start MOD05_021DBA30
-MOD05_021DBA30: ; 0x021DBA30
- ldr r0, [r0]
- bx lr
-
- thumb_func_start MOD05_021DBA34
-MOD05_021DBA34: ; 0x021DBA34
- ldr r0, [r0, #8]
- bx lr
-
- thumb_func_start MOD05_021DBA38
-MOD05_021DBA38: ; 0x021DBA38
- ldr r0, [r0, #0xc]
- bx lr
-
- thumb_func_start MOD05_021DBA3C
-MOD05_021DBA3C: ; 0x021DBA3C
- ldrh r0, [r0, #0x10]
- bx lr
-
- thumb_func_start MOD05_021DBA40
-MOD05_021DBA40: ; 0x021DBA40
- push {r4, lr}
- add r4, r0, #0
- mov r0, #1
- tst r0, r1
- beq _021DBA4C
- str r2, [r4]
-_021DBA4C:
- mov r0, #2
- tst r0, r1
- beq _021DBA54
- str r3, [r4, #4]
-_021DBA54:
- mov r0, #4
- tst r0, r1
- beq _021DBA5E
- ldr r0, [sp, #8]
- str r0, [r4, #8]
-_021DBA5E:
- mov r0, #8
- tst r0, r1
- beq _021DBA68
- ldr r0, [sp, #0xc]
- str r0, [r4, #0xc]
-_021DBA68:
- ldr r0, [r4]
- ldr r1, [r4, #4]
- ldr r2, [r4, #8]
- ldr r3, [r4, #0xc]
- bl G3X_SetFog
- pop {r4, pc}
- .balign 4, 0
-
- thumb_func_start MOD05_021DBA78
-MOD05_021DBA78: ; 0x021DBA78
- push {r3, r4}
- mov r4, #0x10
- tst r4, r1
- beq _021DBA82
- strh r2, [r0, #0x10]
-_021DBA82:
- mov r2, #0x20
- tst r1, r2
- beq _021DBA8A
- str r3, [r0, #0x14]
-_021DBA8A:
- ldrh r1, [r0, #0x10]
- ldr r0, [r0, #0x14]
- lsl r0, r0, #0x10
- orr r1, r0
- ldr r0, _021DBA9C ; =0x04000358
- str r1, [r0]
- pop {r3, r4}
- bx lr
- nop
-_021DBA9C: .word 0x04000358
-
- thumb_func_start MOD05_021DBAA0
-MOD05_021DBAA0: ; 0x021DBAA0
- push {r4, lr}
- add r4, r0, #0
- add r0, r1, #0
- add r1, r4, #0
- add r1, #0x18
- mov r2, #0x20
- bl MIi_CpuCopy32
- add r4, #0x18
- add r0, r4, #0
- bl G3X_SetFogTable
- pop {r4, pc}
- .balign 4, 0
-
thumb_func_start MOD05_021DBABC
MOD05_021DBABC: ; 0x021DBABC
push {r4, lr}