diff options
author | red031000 <rubenru09@aol.com> | 2021-08-16 18:07:07 +0100 |
---|---|---|
committer | red031000 <rubenru09@aol.com> | 2021-08-16 18:07:07 +0100 |
commit | ffb7a81a6ed6cfc4239285157938dbc2e4446ebc (patch) | |
tree | 6cc36f39f20019bc139d7a783596e2adbdb18ff5 | |
parent | bdd8885a810c5027e729c6bba3b8a1e61ef9c6ca (diff) |
o
-rw-r--r-- | arm9/arm9.lsf | 1 | ||||
-rw-r--r-- | arm9/global.inc | 1 | ||||
-rw-r--r-- | arm9/modules/04/asm/arm_04.s | 139 | ||||
-rw-r--r-- | arm9/modules/04/asm/mod04_021DD6B0.s | 145 |
4 files changed, 147 insertions, 139 deletions
diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf index fe408d4a..2eaaeb89 100644 --- a/arm9/arm9.lsf +++ b/arm9/arm9.lsf @@ -665,6 +665,7 @@ Overlay MODULE_04 Object mod04_021DC8A4.o Object mod04_021DCCC8.o Object mod04_021DD36C.o + Object mod04_021DD6B0.o Object arm_04.o } diff --git a/arm9/global.inc b/arm9/global.inc index 9a3575cb..f3916409 100644 --- a/arm9/global.inc +++ b/arm9/global.inc @@ -6144,6 +6144,7 @@ .extern MOD04_021DD36C .extern MOD04_021DD4FC .extern MOD04_021DD6B0 +.extern MOD04_021DD6D4 .extern MOD04_021DD6F0 .extern MOD04_021DD718 .extern MOD04_021DD808 diff --git a/arm9/modules/04/asm/arm_04.s b/arm9/modules/04/asm/arm_04.s index 9aa15f74..23fd3766 100644 --- a/arm9/modules/04/asm/arm_04.s +++ b/arm9/modules/04/asm/arm_04.s @@ -3,137 +3,6 @@ .section .text .balign 4, 0 - arm_func_start MOD04_021DD6B0 -MOD04_021DD6B0: ; 0x021DD6B0 - ldr r3, _021DD6CC ; =UNK04_02210508 - ldr r2, [r3] - cmp r2, #9 - ldrne r2, _021DD6D0 ; =UNK04_0221050C - strne r0, [r3] - strne r1, [r2] - bx lr - .align 2, 0 -_021DD6CC: .word UNK04_02210508 -_021DD6D0: .word UNK04_0221050C - arm_func_end MOD04_021DD6B0 - - arm_func_start MOD04_021DD6D4 -MOD04_021DD6D4: ; 0x021DD6D4 - ldr r0, _021DD6EC ; =UNK04_02210508 - ldr r0, [r0] - cmp r0, #0 - movne r0, #1 - moveq r0, #0 - bx lr - .align 2, 0 -_021DD6EC: .word UNK04_02210508 - arm_func_end MOD04_021DD6D4 - - arm_func_start MOD04_021DD6F0 -MOD04_021DD6F0: ; 0x021DD6F0 - ldr r1, _021DD710 ; =UNK04_02210508 - ldr r0, [r1] - cmp r0, #9 - movne r2, #0 - ldrne r0, _021DD714 ; =UNK04_0221050C - strne r2, [r1] - strne r2, [r0] - bx lr - .align 2, 0 -_021DD710: .word UNK04_02210508 -_021DD714: .word UNK04_0221050C - arm_func_end MOD04_021DD6F0 - - arm_func_start MOD04_021DD718 -MOD04_021DD718: ; 0x021DD718 - cmp r0, #0 - ldrne r2, _021DD800 ; =UNK04_0221050C - ldrne r2, [r2] - strne r2, [r0] - cmp r1, #0 - beq _021DD7F4 - ldr r0, _021DD804 ; =UNK04_02210508 - ldr r0, [r0] - cmp r0, #0x11 - addls pc, pc, r0, lsl #2 - b _021DD7EC -_021DD744: ; jump table - b _021DD7EC ; case 0 - b _021DD7BC ; case 1 - b _021DD78C ; case 2 - b _021DD78C ; case 3 - b _021DD78C ; case 4 - b _021DD78C ; case 5 - b _021DD798 ; case 6 - b _021DD7A4 ; case 7 - b _021DD78C ; case 8 - b _021DD7BC ; case 9 - b _021DD7B0 ; case 10 - b _021DD7B0 ; case 11 - b _021DD7B0 ; case 12 - b _021DD7B0 ; case 13 - b _021DD7C8 ; case 14 - b _021DD7D4 ; case 15 - b _021DD7E0 ; case 16 - b _021DD7D4 ; case 17 -_021DD78C: - mov r0, #6 - str r0, [r1] - b _021DD7F4 -_021DD798: - mov r0, #3 - str r0, [r1] - b _021DD7F4 -_021DD7A4: - mov r0, #4 - str r0, [r1] - b _021DD7F4 -_021DD7B0: - mov r0, #1 - str r0, [r1] - b _021DD7F4 -_021DD7BC: - mov r0, #7 - str r0, [r1] - b _021DD7F4 -_021DD7C8: - mov r0, #5 - str r0, [r1] - b _021DD7F4 -_021DD7D4: - mov r0, #6 - str r0, [r1] - b _021DD7F4 -_021DD7E0: - mov r0, #2 - str r0, [r1] - b _021DD7F4 -_021DD7EC: - mov r0, #0 - str r0, [r1] -_021DD7F4: - ldr r0, _021DD804 ; =UNK04_02210508 - ldr r0, [r0] - bx lr - .align 2, 0 -_021DD800: .word UNK04_0221050C -_021DD804: .word UNK04_02210508 - arm_func_end MOD04_021DD718 - - arm_func_start MOD04_021DD808 -MOD04_021DD808: ; 0x021DD808 - cmp r0, #0 - ldrne r1, _021DD824 ; =UNK04_0221050C - ldrne r1, [r1] - strne r1, [r0] - ldr r0, _021DD828 ; =UNK04_02210508 - ldr r0, [r0] - bx lr - .align 2, 0 -_021DD824: .word UNK04_0221050C -_021DD828: .word UNK04_02210508 - arm_func_end MOD04_021DD808 - arm_func_start MOD04_021DD82C MOD04_021DD82C: ; 0x021DD82C ldr ip, _021DD840 ; =MOD04_021DD904 @@ -58013,14 +57882,6 @@ UNK04_0220FBA4: ; 0x0220FBA4 .section .bss - .global UNK04_02210508 -UNK04_02210508: ; 0x02210508 - .space 0x4 - - .global UNK04_0221050C -UNK04_0221050C: ; 0x0221050C - .space 0x4 - .global UNK04_02210510 UNK04_02210510: ; 0x02210510 .space 0x4 diff --git a/arm9/modules/04/asm/mod04_021DD6B0.s b/arm9/modules/04/asm/mod04_021DD6B0.s new file mode 100644 index 00000000..4b9455e6 --- /dev/null +++ b/arm9/modules/04/asm/mod04_021DD6B0.s @@ -0,0 +1,145 @@ + .include "asm/macros.inc" + .include "global.inc" + .section .text + .balign 4, 0 + + arm_func_start MOD04_021DD6B0 +MOD04_021DD6B0: ; 0x021DD6B0 + ldr r3, _021DD6CC ; =UNK04_02210508 + ldr r2, [r3] + cmp r2, #9 + ldrne r2, _021DD6D0 ; =UNK04_0221050C + strne r0, [r3] + strne r1, [r2] + bx lr + .align 2, 0 +_021DD6CC: .word UNK04_02210508 +_021DD6D0: .word UNK04_0221050C + arm_func_end MOD04_021DD6B0 + + arm_func_start MOD04_021DD6D4 +MOD04_021DD6D4: ; 0x021DD6D4 + ldr r0, _021DD6EC ; =UNK04_02210508 + ldr r0, [r0] + cmp r0, #0 + movne r0, #1 + moveq r0, #0 + bx lr + .align 2, 0 +_021DD6EC: .word UNK04_02210508 + arm_func_end MOD04_021DD6D4 + + arm_func_start MOD04_021DD6F0 +MOD04_021DD6F0: ; 0x021DD6F0 + ldr r1, _021DD710 ; =UNK04_02210508 + ldr r0, [r1] + cmp r0, #9 + movne r2, #0 + ldrne r0, _021DD714 ; =UNK04_0221050C + strne r2, [r1] + strne r2, [r0] + bx lr + .align 2, 0 +_021DD710: .word UNK04_02210508 +_021DD714: .word UNK04_0221050C + arm_func_end MOD04_021DD6F0 + + arm_func_start MOD04_021DD718 +MOD04_021DD718: ; 0x021DD718 + cmp r0, #0 + ldrne r2, _021DD800 ; =UNK04_0221050C + ldrne r2, [r2] + strne r2, [r0] + cmp r1, #0 + beq _021DD7F4 + ldr r0, _021DD804 ; =UNK04_02210508 + ldr r0, [r0] + cmp r0, #0x11 + addls pc, pc, r0, lsl #2 + b _021DD7EC +_021DD744: ; jump table + b _021DD7EC ; case 0 + b _021DD7BC ; case 1 + b _021DD78C ; case 2 + b _021DD78C ; case 3 + b _021DD78C ; case 4 + b _021DD78C ; case 5 + b _021DD798 ; case 6 + b _021DD7A4 ; case 7 + b _021DD78C ; case 8 + b _021DD7BC ; case 9 + b _021DD7B0 ; case 10 + b _021DD7B0 ; case 11 + b _021DD7B0 ; case 12 + b _021DD7B0 ; case 13 + b _021DD7C8 ; case 14 + b _021DD7D4 ; case 15 + b _021DD7E0 ; case 16 + b _021DD7D4 ; case 17 +_021DD78C: + mov r0, #6 + str r0, [r1] + b _021DD7F4 +_021DD798: + mov r0, #3 + str r0, [r1] + b _021DD7F4 +_021DD7A4: + mov r0, #4 + str r0, [r1] + b _021DD7F4 +_021DD7B0: + mov r0, #1 + str r0, [r1] + b _021DD7F4 +_021DD7BC: + mov r0, #7 + str r0, [r1] + b _021DD7F4 +_021DD7C8: + mov r0, #5 + str r0, [r1] + b _021DD7F4 +_021DD7D4: + mov r0, #6 + str r0, [r1] + b _021DD7F4 +_021DD7E0: + mov r0, #2 + str r0, [r1] + b _021DD7F4 +_021DD7EC: + mov r0, #0 + str r0, [r1] +_021DD7F4: + ldr r0, _021DD804 ; =UNK04_02210508 + ldr r0, [r0] + bx lr + .align 2, 0 +_021DD800: .word UNK04_0221050C +_021DD804: .word UNK04_02210508 + arm_func_end MOD04_021DD718 + + arm_func_start MOD04_021DD808 +MOD04_021DD808: ; 0x021DD808 + cmp r0, #0 + ldrne r1, _021DD824 ; =UNK04_0221050C + ldrne r1, [r1] + strne r1, [r0] + ldr r0, _021DD828 ; =UNK04_02210508 + ldr r0, [r0] + bx lr + .align 2, 0 +_021DD824: .word UNK04_0221050C +_021DD828: .word UNK04_02210508 + arm_func_end MOD04_021DD808 + + .section .bss + + .global UNK04_02210508 +UNK04_02210508: ; 0x02210508 + .space 0x4 + + .global UNK04_0221050C +UNK04_0221050C: ; 0x0221050C + .space 0x4
\ No newline at end of file |