summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorred031000 <rubenru09@aol.com>2020-07-16 18:56:02 +0100
committerred031000 <rubenru09@aol.com>2020-07-16 18:56:02 +0100
commit4816779f0ec8241e6d0aa98e560641d472dccdac (patch)
tree8c247c6ba605aeff779208b10f7ef1c703eb074c
parentd6884689d63fdd25325f6ffdb970ce1283c844da (diff)
mod05_021DBE04
-rw-r--r--arm9/arm9.lsf1
-rw-r--r--arm9/global.inc6
-rw-r--r--arm9/modules/05/asm/mod05_021DBE04.s176
-rw-r--r--arm9/modules/05/asm/module_05.s170
4 files changed, 183 insertions, 170 deletions
diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf
index 852aabfb..df0273c0 100644
--- a/arm9/arm9.lsf
+++ b/arm9/arm9.lsf
@@ -527,6 +527,7 @@ Overlay MODULE_05
Object mod05_021DBA00.o
Object mod05_021DBABC.o
Object mod05_021DBD84.o
+ Object mod05_021DBE04.o
Object module_05.o
}
diff --git a/arm9/global.inc b/arm9/global.inc
index 177ee466..a93057d1 100644
--- a/arm9/global.inc
+++ b/arm9/global.inc
@@ -6499,6 +6499,12 @@
.extern MOD05_021EF8DC
.extern MOD05_021EF8E8
.extern MOD05_021EFA9C
+.extern MOD05_021EFAAC
+.extern MOD05_021EFB14
+.extern MOD05_021EFB50
+.extern MOD05_021EFBB4
+.extern MOD05_021EFBCC
+.extern MOD05_021EFBD8
.extern MOD05_021F02C4
.extern MOD05_021F0318
.extern MOD05_021F043C
diff --git a/arm9/modules/05/asm/mod05_021DBE04.s b/arm9/modules/05/asm/mod05_021DBE04.s
new file mode 100644
index 00000000..4b4b5177
--- /dev/null
+++ b/arm9/modules/05/asm/mod05_021DBE04.s
@@ -0,0 +1,176 @@
+ .include "asm/macros.inc"
+ .include "global.inc"
+ .section .text
+ .balign 4, 0
+
+ thumb_func_start MOD05_021DBE04
+MOD05_021DBE04: ; 0x021DBE04
+ push {r4, lr}
+ ldr r4, [r0, #0x18]
+ cmp r4, #0
+ bne _021DBE10
+ bl ErrorHandling
+_021DBE10:
+ cmp r4, #5
+ blt _021DBE18
+ bl ErrorHandling
+_021DBE18:
+ sub r0, r4, #1
+ pop {r4, pc}
+
+ thumb_func_start MOD05_021DBE1C
+MOD05_021DBE1C: ; 0x021DBE1C
+ push {r4, lr}
+ add r4, r0, #0
+ bl MOD05_021DBE04
+ add r1, r0, #0
+ lsl r2, r1, #4
+ ldr r1, _021DBE34 ; =UNK05_021F6788
+ add r0, r4, #0
+ ldr r1, [r1, r2]
+ blx r1
+ pop {r4, pc}
+ nop
+_021DBE34: .word UNK05_021F6788
+
+ thumb_func_start MOD05_021DBE38
+MOD05_021DBE38: ; 0x021DBE38
+ push {r4, lr}
+ add r4, r0, #0
+ bl MOD05_021DBE04
+ lsl r1, r0, #4
+ ldr r0, _021DBE54 ; =UNK05_021F678C
+ ldr r1, [r0, r1]
+ cmp r1, #0
+ bne _021DBE4E
+ mov r0, #1
+ pop {r4, pc}
+_021DBE4E:
+ add r0, r4, #0
+ blx r1
+ pop {r4, pc}
+ .balign 4, 0
+_021DBE54: .word UNK05_021F678C
+
+ thumb_func_start MOD05_021DBE58
+MOD05_021DBE58: ; 0x021DBE58
+ push {r4, lr}
+ add r4, r0, #0
+ bl MOD05_021DBE04
+ add r1, r0, #0
+ lsl r2, r1, #4
+ ldr r1, _021DBE70 ; =UNK05_021F6790
+ add r0, r4, #0
+ ldr r1, [r1, r2]
+ blx r1
+ pop {r4, pc}
+ nop
+_021DBE70: .word UNK05_021F6790
+
+ thumb_func_start MOD05_021DBE74
+MOD05_021DBE74: ; 0x021DBE74
+ push {r4, lr}
+ add r4, r0, #0
+ bl MOD05_021DBE04
+ add r1, r0, #0
+ lsl r2, r1, #4
+ ldr r1, _021DBE8C ; =UNK05_021F6794
+ add r0, r4, #0
+ ldr r1, [r1, r2]
+ blx r1
+ pop {r4, pc}
+ nop
+_021DBE8C: .word UNK05_021F6794
+
+ thumb_func_start MOD05_021DBE90
+MOD05_021DBE90: ; 0x021DBE90
+ ldr r3, _021DBE94 ; =MOD05_021EFAAC
+ bx r3
+ .balign 4, 0
+_021DBE94: .word MOD05_021EFAAC
+
+ thumb_func_start MOD05_021DBE98
+MOD05_021DBE98: ; 0x021DBE98
+ ldr r3, _021DBE9C ; =FUN_02050E2C
+ bx r3
+ .balign 4, 0
+_021DBE9C: .word FUN_02050E2C
+
+ thumb_func_start MOD05_021DBEA0
+MOD05_021DBEA0: ; 0x021DBEA0
+ push {r4, lr}
+ add r4, r0, #0
+ ldr r0, _021DBEB8 ; =SDK_OVERLAY_MODULE_51_ID
+ mov r1, #2
+ bl HandleLoadOverlay
+ add r0, r4, #0
+ bl MOD51_02254A68
+ add r4, #0x80
+ str r0, [r4]
+ pop {r4, pc}
+ .balign 4, 0
+_021DBEB8: .word SDK_OVERLAY_MODULE_51_ID
+
+ thumb_func_start MOD05_021DBEBC
+MOD05_021DBEBC: ; 0x021DBEBC
+ ldr r3, _021DBEC0 ; =MOD05_021EFB14
+ bx r3
+ .balign 4, 0
+_021DBEC0: .word MOD05_021EFB14
+
+ thumb_func_start MOD05_021DBEC4
+MOD05_021DBEC4: ; 0x021DBEC4
+ ldr r3, _021DBEC8 ; =FUN_02050E10
+ bx r3
+ .balign 4, 0
+_021DBEC8: .word FUN_02050E10
+
+ thumb_func_start MOD05_021DBECC
+MOD05_021DBECC: ; 0x021DBECC
+ push {r3, lr}
+ add r0, #0x80
+ ldr r0, [r0]
+ bl MOD51_02254AB8
+ ldr r0, _021DBEE0 ; =SDK_OVERLAY_MODULE_51_ID
+ bl UnloadOverlayByID
+ pop {r3, pc}
+ nop
+_021DBEE0: .word SDK_OVERLAY_MODULE_51_ID
+
+ thumb_func_start MOD05_021DBEE4
+MOD05_021DBEE4: ; 0x021DBEE4
+ ldr r3, _021DBEE8 ; =MOD05_021EFB50
+ bx r3
+ .balign 4, 0
+_021DBEE8: .word MOD05_021EFB50
+
+ thumb_func_start MOD05_021DBEEC
+MOD05_021DBEEC: ; 0x021DBEEC
+ mov r0, #1
+ bx lr
+
+ thumb_func_start MOD05_021DBEF0
+MOD05_021DBEF0: ; 0x021DBEF0
+ mov r0, #1
+ bx lr
+
+ .section .rodata
+
+ .global UNK05_021F6788
+UNK05_021F6788: ; 0x021F6788
+ .word MOD05_021DBE90
+
+ .global UNK05_021F678C
+UNK05_021F678C: ; 0x021F678C
+ .word 0x00000000
+
+ .global UNK05_021F6790
+UNK05_021F6790: ; 0x021F6790
+ .word MOD05_021DBEBC
+
+ .global UNK05_021F6794
+UNK05_021F6794: ; 0x021F6794
+ .word MOD05_021DBEE4, MOD05_021DBE98, 0x00000000, MOD05_021DBEC4
+ .word MOD05_021DBEF0, MOD05_021DBEA0, 0x00000000, MOD05_021DBECC
+ .word MOD05_021DBEEC, MOD05_021EFBB4, 0x00000000, MOD05_021EFBCC
+ .word MOD05_021EFBD8
diff --git a/arm9/modules/05/asm/module_05.s b/arm9/modules/05/asm/module_05.s
index 304ec1f7..3da5a6c5 100644
--- a/arm9/modules/05/asm/module_05.s
+++ b/arm9/modules/05/asm/module_05.s
@@ -3,157 +3,6 @@
.section .text
.balign 4, 0
- thumb_func_start MOD05_021DBE04
-MOD05_021DBE04: ; 0x021DBE04
- push {r4, lr}
- ldr r4, [r0, #0x18]
- cmp r4, #0
- bne _021DBE10
- bl ErrorHandling
-_021DBE10:
- cmp r4, #5
- blt _021DBE18
- bl ErrorHandling
-_021DBE18:
- sub r0, r4, #1
- pop {r4, pc}
-
- thumb_func_start MOD05_021DBE1C
-MOD05_021DBE1C: ; 0x021DBE1C
- push {r4, lr}
- add r4, r0, #0
- bl MOD05_021DBE04
- add r1, r0, #0
- lsl r2, r1, #4
- ldr r1, _021DBE34 ; =UNK05_021F6788
- add r0, r4, #0
- ldr r1, [r1, r2]
- blx r1
- pop {r4, pc}
- nop
-_021DBE34: .word UNK05_021F6788
-
- thumb_func_start MOD05_021DBE38
-MOD05_021DBE38: ; 0x021DBE38
- push {r4, lr}
- add r4, r0, #0
- bl MOD05_021DBE04
- lsl r1, r0, #4
- ldr r0, _021DBE54 ; =UNK05_021F678C
- ldr r1, [r0, r1]
- cmp r1, #0
- bne _021DBE4E
- mov r0, #1
- pop {r4, pc}
-_021DBE4E:
- add r0, r4, #0
- blx r1
- pop {r4, pc}
- .balign 4, 0
-_021DBE54: .word UNK05_021F678C
-
- thumb_func_start MOD05_021DBE58
-MOD05_021DBE58: ; 0x021DBE58
- push {r4, lr}
- add r4, r0, #0
- bl MOD05_021DBE04
- add r1, r0, #0
- lsl r2, r1, #4
- ldr r1, _021DBE70 ; =UNK05_021F6790
- add r0, r4, #0
- ldr r1, [r1, r2]
- blx r1
- pop {r4, pc}
- nop
-_021DBE70: .word UNK05_021F6790
-
- thumb_func_start MOD05_021DBE74
-MOD05_021DBE74: ; 0x021DBE74
- push {r4, lr}
- add r4, r0, #0
- bl MOD05_021DBE04
- add r1, r0, #0
- lsl r2, r1, #4
- ldr r1, _021DBE8C ; =UNK05_021F6794
- add r0, r4, #0
- ldr r1, [r1, r2]
- blx r1
- pop {r4, pc}
- nop
-_021DBE8C: .word UNK05_021F6794
-
- thumb_func_start MOD05_021DBE90
-MOD05_021DBE90: ; 0x021DBE90
- ldr r3, _021DBE94 ; =MOD05_021EFAAC
- bx r3
- .balign 4, 0
-_021DBE94: .word MOD05_021EFAAC
-
- thumb_func_start MOD05_021DBE98
-MOD05_021DBE98: ; 0x021DBE98
- ldr r3, _021DBE9C ; =FUN_02050E2C
- bx r3
- .balign 4, 0
-_021DBE9C: .word FUN_02050E2C
-
- thumb_func_start MOD05_021DBEA0
-MOD05_021DBEA0: ; 0x021DBEA0
- push {r4, lr}
- add r4, r0, #0
- ldr r0, _021DBEB8 ; =SDK_OVERLAY_MODULE_51_ID
- mov r1, #2
- bl HandleLoadOverlay
- add r0, r4, #0
- bl MOD51_02254A68
- add r4, #0x80
- str r0, [r4]
- pop {r4, pc}
- .balign 4, 0
-_021DBEB8: .word SDK_OVERLAY_MODULE_51_ID
-
- thumb_func_start MOD05_021DBEBC
-MOD05_021DBEBC: ; 0x021DBEBC
- ldr r3, _021DBEC0 ; =MOD05_021EFB14
- bx r3
- .balign 4, 0
-_021DBEC0: .word MOD05_021EFB14
-
- thumb_func_start MOD05_021DBEC4
-MOD05_021DBEC4: ; 0x021DBEC4
- ldr r3, _021DBEC8 ; =FUN_02050E10
- bx r3
- .balign 4, 0
-_021DBEC8: .word FUN_02050E10
-
- thumb_func_start MOD05_021DBECC
-MOD05_021DBECC: ; 0x021DBECC
- push {r3, lr}
- add r0, #0x80
- ldr r0, [r0]
- bl MOD51_02254AB8
- ldr r0, _021DBEE0 ; =SDK_OVERLAY_MODULE_51_ID
- bl UnloadOverlayByID
- pop {r3, pc}
- nop
-_021DBEE0: .word SDK_OVERLAY_MODULE_51_ID
-
- thumb_func_start MOD05_021DBEE4
-MOD05_021DBEE4: ; 0x021DBEE4
- ldr r3, _021DBEE8 ; =MOD05_021EFB50
- bx r3
- .balign 4, 0
-_021DBEE8: .word MOD05_021EFB50
-
- thumb_func_start MOD05_021DBEEC
-MOD05_021DBEEC: ; 0x021DBEEC
- mov r0, #1
- bx lr
-
- thumb_func_start MOD05_021DBEF0
-MOD05_021DBEF0: ; 0x021DBEF0
- mov r0, #1
- bx lr
-
thumb_func_start MOD05_021DBEF4
MOD05_021DBEF4: ; 0x021DBEF4
push {r3, lr}
@@ -54565,25 +54414,6 @@ _021F6428: .word MOD05_021F57F0
.section .rodata
- .global UNK05_021F6788
-UNK05_021F6788: ; 0x021F6788
- .word MOD05_021DBE90
-
- .global UNK05_021F678C
-UNK05_021F678C: ; 0x021F678C
- .word 0x00000000
-
- .global UNK05_021F6790
-UNK05_021F6790: ; 0x021F6790
- .word MOD05_021DBEBC
-
- .global UNK05_021F6794
-UNK05_021F6794: ; 0x021F6794
- .word MOD05_021DBEE4, MOD05_021DBE98, 0x00000000, MOD05_021DBEC4
- .word MOD05_021DBEF0, MOD05_021DBEA0, 0x00000000, MOD05_021DBECC
- .word MOD05_021DBEEC, MOD05_021EFBB4, 0x00000000, MOD05_021EFBCC
- .word MOD05_021EFBD8
-
.global UNK05_021F67C8
UNK05_021F67C8: ; 0x021F67C8
.word 0x00000002, 0x00000002, 0x00000002, 0x00000002