diff options
author | red031000 <rubenru09@aol.com> | 2020-07-16 18:56:02 +0100 |
---|---|---|
committer | red031000 <rubenru09@aol.com> | 2020-07-16 18:56:02 +0100 |
commit | 4816779f0ec8241e6d0aa98e560641d472dccdac (patch) | |
tree | 8c247c6ba605aeff779208b10f7ef1c703eb074c | |
parent | d6884689d63fdd25325f6ffdb970ce1283c844da (diff) |
mod05_021DBE04
-rw-r--r-- | arm9/arm9.lsf | 1 | ||||
-rw-r--r-- | arm9/global.inc | 6 | ||||
-rw-r--r-- | arm9/modules/05/asm/mod05_021DBE04.s | 176 | ||||
-rw-r--r-- | arm9/modules/05/asm/module_05.s | 170 |
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 |