mirror of
https://github.com/pret/pokediamond.git
synced 2026-08-27 19:24:24 -05:00
Splitting 6 and the Half-Thumb Split
This commit is contained in:
@@ -191,6 +191,13 @@ SECTIONS {
|
||||
unk_02020C44.o (.text)
|
||||
unk_0202134C.o (.text)
|
||||
unk_02021590.o (.text)
|
||||
unk_02021934.o (.text)
|
||||
unk_02021FF8.o (.text)
|
||||
unk_02022244.o (.text)
|
||||
unk_02022294.o (.text)
|
||||
unk_020222E8.o (.text)
|
||||
unk_02022318.o (.text)
|
||||
unk_02022450.o (.text)
|
||||
script.o (.text)
|
||||
unk_02038C78.o (.text)
|
||||
scrcmd.o (.text)
|
||||
|
||||
50492
arm9/asm/unk_02021590.s
50492
arm9/asm/unk_02021590.s
File diff suppressed because it is too large
Load Diff
966
arm9/asm/unk_02021934.s
Normal file
966
arm9/asm/unk_02021934.s
Normal file
@@ -0,0 +1,966 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "global.inc"
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start FUN_02021934
|
||||
FUN_02021934: ; 0x02021934
|
||||
push {r3-r7, lr}
|
||||
add r5, r1, #0x0
|
||||
ldrh r1, [r5, #0x0]
|
||||
add r7, r0, #0x0
|
||||
mov r4, #0x0
|
||||
ldr r0, _02021994 ; =0x0000FFFF
|
||||
add r6, r2, #0x0
|
||||
str r4, [sp, #0x0]
|
||||
cmp r1, r0
|
||||
beq _02021986
|
||||
_02021948:
|
||||
ldr r0, _02021998 ; =0x0000FFFE
|
||||
cmp r1, r0
|
||||
bne _02021958
|
||||
add r0, r5, #0x0
|
||||
bl FUN_0201B8B8
|
||||
add r5, r0, #0x0
|
||||
b _0202197E
|
||||
_02021958:
|
||||
mov r0, #0xe
|
||||
lsl r0, r0, #0xc
|
||||
cmp r1, r0
|
||||
bne _02021970
|
||||
ldr r0, [sp, #0x0]
|
||||
sub r1, r4, r6
|
||||
cmp r0, r1
|
||||
bhs _0202196A
|
||||
str r1, [sp, #0x0]
|
||||
_0202196A:
|
||||
mov r4, #0x0
|
||||
add r5, r5, #0x2
|
||||
b _0202197E
|
||||
_02021970:
|
||||
ldr r2, [r7, #0x70]
|
||||
add r0, r7, #0x0
|
||||
sub r1, r1, #0x1
|
||||
blx r2
|
||||
add r0, r6, r0
|
||||
add r4, r4, r0
|
||||
add r5, r5, #0x2
|
||||
_0202197E:
|
||||
ldrh r1, [r5, #0x0]
|
||||
ldr r0, _02021994 ; =0x0000FFFF
|
||||
cmp r1, r0
|
||||
bne _02021948
|
||||
_02021986:
|
||||
ldr r0, [sp, #0x0]
|
||||
sub r1, r4, r6
|
||||
cmp r0, r1
|
||||
bhs _02021990
|
||||
str r1, [sp, #0x0]
|
||||
_02021990:
|
||||
ldr r0, [sp, #0x0]
|
||||
pop {r3-r7, pc}
|
||||
.balign 4
|
||||
_02021994: .word 0x0000FFFF
|
||||
_02021998: .word 0x0000FFFE
|
||||
|
||||
thumb_func_start FUN_0202199C
|
||||
FUN_0202199C: ; 0x0202199C
|
||||
push {r3-r7, lr}
|
||||
add r5, r1, #0x0
|
||||
ldrh r1, [r5, #0x0]
|
||||
add r6, r0, #0x0
|
||||
ldr r0, _020219EC ; =0x0000FFFF
|
||||
mov r4, #0x0
|
||||
cmp r1, r0
|
||||
beq _020219E8
|
||||
sub r7, r0, #0x1
|
||||
_020219AE:
|
||||
cmp r1, r7
|
||||
bne _020219D4
|
||||
add r0, r5, #0x0
|
||||
bl FUN_0201B8E0
|
||||
ldr r1, _020219F0 ; =0x00000203
|
||||
cmp r0, r1
|
||||
bne _020219CA
|
||||
add r0, r5, #0x0
|
||||
mov r1, #0x0
|
||||
bl FUN_0201B914
|
||||
add r4, r0, #0x0
|
||||
sub r4, #0xc
|
||||
_020219CA:
|
||||
add r0, r5, #0x0
|
||||
bl FUN_0201B8B8
|
||||
add r5, r0, #0x0
|
||||
b _020219E0
|
||||
_020219D4:
|
||||
ldr r2, [r6, #0x70]
|
||||
add r0, r6, #0x0
|
||||
sub r1, r1, #0x1
|
||||
blx r2
|
||||
add r4, r4, r0
|
||||
add r5, r5, #0x2
|
||||
_020219E0:
|
||||
ldrh r1, [r5, #0x0]
|
||||
ldr r0, _020219EC ; =0x0000FFFF
|
||||
cmp r1, r0
|
||||
bne _020219AE
|
||||
_020219E8:
|
||||
add r0, r4, #0x0
|
||||
pop {r3-r7, pc}
|
||||
.balign 4
|
||||
_020219EC: .word 0x0000FFFF
|
||||
_020219F0: .word 0x00000203
|
||||
|
||||
thumb_func_start FUN_020219F4
|
||||
FUN_020219F4: ; 0x020219F4
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
add r0, r1, #0x0
|
||||
lsl r1, r4, #0x1
|
||||
add r1, #0xa
|
||||
bl FUN_02016998
|
||||
cmp r0, #0x0
|
||||
beq _02021A14
|
||||
ldr r1, _02021A18 ; =0xB6F8D2EC
|
||||
str r1, [r0, #0x4]
|
||||
strh r4, [r0, #0x0]
|
||||
mov r1, #0x0
|
||||
strh r1, [r0, #0x2]
|
||||
ldr r1, _02021A1C ; =0x0000FFFF
|
||||
strh r1, [r0, #0x8]
|
||||
_02021A14:
|
||||
pop {r4, pc}
|
||||
nop
|
||||
_02021A18: .word 0xB6F8D2EC
|
||||
_02021A1C: .word 0x0000FFFF
|
||||
|
||||
thumb_func_start FUN_02021A20
|
||||
FUN_02021A20: ; 0x02021A20
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
bne _02021A2A
|
||||
bl ErrorHandling
|
||||
_02021A2A:
|
||||
ldr r1, [r4, #0x4]
|
||||
ldr r0, _02021A44 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021A36
|
||||
bl ErrorHandling
|
||||
_02021A36:
|
||||
ldr r0, _02021A48 ; =0xB6F8D2ED
|
||||
str r0, [r4, #0x4]
|
||||
add r0, r4, #0x0
|
||||
bl FUN_02016A18
|
||||
pop {r4, pc}
|
||||
nop
|
||||
_02021A44: .word 0xB6F8D2EC
|
||||
_02021A48: .word 0xB6F8D2ED
|
||||
|
||||
thumb_func_start FUN_02021A4C
|
||||
FUN_02021A4C: ; 0x02021A4C
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
bne _02021A56
|
||||
bl ErrorHandling
|
||||
_02021A56:
|
||||
ldr r1, [r4, #0x4]
|
||||
ldr r0, _02021A6C ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021A62
|
||||
bl ErrorHandling
|
||||
_02021A62:
|
||||
mov r0, #0x0
|
||||
strh r0, [r4, #0x2]
|
||||
ldr r0, _02021A70 ; =0x0000FFFF
|
||||
strh r0, [r4, #0x8]
|
||||
pop {r4, pc}
|
||||
.balign 4
|
||||
_02021A6C: .word 0xB6F8D2EC
|
||||
_02021A70: .word 0x0000FFFF
|
||||
|
||||
thumb_func_start FUN_02021A74
|
||||
FUN_02021A74: ; 0x02021A74
|
||||
push {r3-r5, lr}
|
||||
add r5, r0, #0x0
|
||||
add r4, r1, #0x0
|
||||
cmp r5, #0x0
|
||||
bne _02021A82
|
||||
bl ErrorHandling
|
||||
_02021A82:
|
||||
ldr r1, [r5, #0x4]
|
||||
ldr r0, _02021AC8 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021A8E
|
||||
bl ErrorHandling
|
||||
_02021A8E:
|
||||
cmp r4, #0x0
|
||||
bne _02021A96
|
||||
bl ErrorHandling
|
||||
_02021A96:
|
||||
ldr r1, [r4, #0x4]
|
||||
ldr r0, _02021AC8 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021AA2
|
||||
bl ErrorHandling
|
||||
_02021AA2:
|
||||
ldrh r2, [r4, #0x2]
|
||||
ldrh r0, [r5, #0x0]
|
||||
cmp r0, r2
|
||||
bls _02021AC0
|
||||
add r0, r5, #0x0
|
||||
add r1, r4, #0x0
|
||||
add r2, r2, #0x1
|
||||
add r0, #0x8
|
||||
add r1, #0x8
|
||||
lsl r2, r2, #0x1
|
||||
bl memcpy
|
||||
ldrh r0, [r4, #0x2]
|
||||
strh r0, [r5, #0x2]
|
||||
pop {r3-r5, pc}
|
||||
_02021AC0:
|
||||
bl ErrorHandling
|
||||
pop {r3-r5, pc}
|
||||
nop
|
||||
_02021AC8: .word 0xB6F8D2EC
|
||||
|
||||
thumb_func_start FUN_02021ACC
|
||||
FUN_02021ACC: ; 0x02021ACC
|
||||
push {r3-r5, lr}
|
||||
add r5, r0, #0x0
|
||||
add r4, r1, #0x0
|
||||
cmp r5, #0x0
|
||||
bne _02021ADA
|
||||
bl ErrorHandling
|
||||
_02021ADA:
|
||||
ldr r1, [r5, #0x4]
|
||||
ldr r0, _02021B00 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021AE6
|
||||
bl ErrorHandling
|
||||
_02021AE6:
|
||||
ldrh r0, [r5, #0x2]
|
||||
add r1, r4, #0x0
|
||||
add r0, r0, #0x1
|
||||
bl FUN_020219F4
|
||||
add r4, r0, #0x0
|
||||
beq _02021AFA
|
||||
add r1, r5, #0x0
|
||||
bl FUN_02021A74
|
||||
_02021AFA:
|
||||
add r0, r4, #0x0
|
||||
pop {r3-r5, pc}
|
||||
nop
|
||||
_02021B00: .word 0xB6F8D2EC
|
||||
|
||||
thumb_func_start FUN_02021B04
|
||||
FUN_02021B04: ; 0x02021B04
|
||||
push {r3-r7, lr}
|
||||
sub sp, #0x8
|
||||
add r5, r0, #0x0
|
||||
ldr r0, [sp, #0x20]
|
||||
add r6, r1, #0x0
|
||||
add r7, r3, #0x0
|
||||
str r2, [sp, #0x0]
|
||||
str r0, [sp, #0x20]
|
||||
cmp r5, #0x0
|
||||
bne _02021B1C
|
||||
bl ErrorHandling
|
||||
_02021B1C:
|
||||
ldr r1, [r5, #0x4]
|
||||
ldr r0, _02021C1C ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021B28
|
||||
bl ErrorHandling
|
||||
_02021B28:
|
||||
cmp r6, #0x0
|
||||
bge _02021B30
|
||||
mov r4, #0x1
|
||||
b _02021B32
|
||||
_02021B30:
|
||||
mov r4, #0x0
|
||||
_02021B32:
|
||||
ldr r0, [sp, #0x0]
|
||||
ldrh r1, [r5, #0x0]
|
||||
add r0, r0, r4
|
||||
cmp r1, r0
|
||||
bls _02021C14
|
||||
ldr r0, [sp, #0x20]
|
||||
cmp r0, #0x0
|
||||
bne _02021B48
|
||||
ldr r0, _02021C20 ; =0x020EE67C
|
||||
str r0, [sp, #0x4]
|
||||
b _02021B4C
|
||||
_02021B48:
|
||||
ldr r0, _02021C24 ; =0x020EE690
|
||||
str r0, [sp, #0x4]
|
||||
_02021B4C:
|
||||
add r0, r5, #0x0
|
||||
bl FUN_02021A4C
|
||||
cmp r4, #0x0
|
||||
beq _02021B74
|
||||
mov r0, #0x0
|
||||
mvn r0, r0
|
||||
mul r6, r0
|
||||
ldr r0, [sp, #0x20]
|
||||
cmp r0, #0x0
|
||||
bne _02021B66
|
||||
mov r0, #0xf1
|
||||
b _02021B68
|
||||
_02021B66:
|
||||
ldr r0, _02021C28 ; =0x000001BE
|
||||
_02021B68:
|
||||
ldrh r2, [r5, #0x2]
|
||||
add r1, r2, #0x1
|
||||
strh r1, [r5, #0x2]
|
||||
lsl r1, r2, #0x1
|
||||
add r1, r5, r1
|
||||
strh r0, [r1, #0x8]
|
||||
_02021B74:
|
||||
ldr r0, [sp, #0x0]
|
||||
lsl r1, r0, #0x2
|
||||
ldr r0, _02021C2C ; =0x020EE6A0
|
||||
ldr r4, [r0, r1]
|
||||
cmp r4, #0x0
|
||||
beq _02021C06
|
||||
_02021B80:
|
||||
add r0, r6, #0x0
|
||||
add r1, r4, #0x0
|
||||
bl _u32_div_f
|
||||
lsl r0, r0, #0x10
|
||||
lsr r1, r0, #0x10
|
||||
add r0, r4, #0x0
|
||||
mul r0, r1
|
||||
sub r6, r6, r0
|
||||
cmp r7, #0x2
|
||||
bne _02021BB4
|
||||
cmp r1, #0xa
|
||||
bhs _02021BA2
|
||||
ldr r0, [sp, #0x4]
|
||||
lsl r1, r1, #0x1
|
||||
ldrh r1, [r0, r1]
|
||||
b _02021BA4
|
||||
_02021BA2:
|
||||
mov r1, #0xe2
|
||||
_02021BA4:
|
||||
ldrh r0, [r5, #0x2]
|
||||
add r2, r0, #0x0
|
||||
add r2, r2, #0x1
|
||||
lsl r0, r0, #0x1
|
||||
strh r2, [r5, #0x2]
|
||||
add r0, r5, r0
|
||||
strh r1, [r0, #0x8]
|
||||
b _02021BFA
|
||||
_02021BB4:
|
||||
cmp r1, #0x0
|
||||
bne _02021BBC
|
||||
cmp r4, #0x1
|
||||
bne _02021BDC
|
||||
_02021BBC:
|
||||
mov r7, #0x2
|
||||
cmp r1, #0xa
|
||||
bhs _02021BCA
|
||||
ldr r0, [sp, #0x4]
|
||||
lsl r1, r1, #0x1
|
||||
ldrh r1, [r0, r1]
|
||||
b _02021BCC
|
||||
_02021BCA:
|
||||
mov r1, #0xe2
|
||||
_02021BCC:
|
||||
ldrh r0, [r5, #0x2]
|
||||
add r2, r0, #0x0
|
||||
add r2, r2, #0x1
|
||||
lsl r0, r0, #0x1
|
||||
strh r2, [r5, #0x2]
|
||||
add r0, r5, r0
|
||||
strh r1, [r0, #0x8]
|
||||
b _02021BFA
|
||||
_02021BDC:
|
||||
cmp r7, #0x1
|
||||
bne _02021BFA
|
||||
ldr r0, [sp, #0x20]
|
||||
cmp r0, #0x0
|
||||
bne _02021BEA
|
||||
mov r1, #0x1
|
||||
b _02021BEC
|
||||
_02021BEA:
|
||||
ldr r1, _02021C30 ; =0x000001E2
|
||||
_02021BEC:
|
||||
ldrh r0, [r5, #0x2]
|
||||
add r2, r0, #0x0
|
||||
add r2, r2, #0x1
|
||||
lsl r0, r0, #0x1
|
||||
strh r2, [r5, #0x2]
|
||||
add r0, r5, r0
|
||||
strh r1, [r0, #0x8]
|
||||
_02021BFA:
|
||||
add r0, r4, #0x0
|
||||
mov r1, #0xa
|
||||
bl _u32_div_f
|
||||
add r4, r0, #0x0
|
||||
bne _02021B80
|
||||
_02021C06:
|
||||
ldrh r0, [r5, #0x2]
|
||||
ldr r1, _02021C34 ; =0x0000FFFF
|
||||
add sp, #0x8
|
||||
lsl r0, r0, #0x1
|
||||
add r0, r5, r0
|
||||
strh r1, [r0, #0x8]
|
||||
pop {r3-r7, pc}
|
||||
_02021C14:
|
||||
bl ErrorHandling
|
||||
add sp, #0x8
|
||||
pop {r3-r7, pc}
|
||||
.balign 4
|
||||
_02021C1C: .word 0xB6F8D2EC
|
||||
_02021C20: .word 0x020EE67C
|
||||
_02021C24: .word 0x020EE690
|
||||
_02021C28: .word 0x000001BE
|
||||
_02021C2C: .word 0x020EE6A0
|
||||
_02021C30: .word 0x000001E2
|
||||
_02021C34: .word 0x0000FFFF
|
||||
|
||||
thumb_func_start FUN_02021C38
|
||||
FUN_02021C38: ; 0x02021C38
|
||||
push {r3-r7, lr}
|
||||
sub sp, #0x10
|
||||
str r1, [sp, #0x0]
|
||||
mov r1, #0x0
|
||||
str r1, [sp, #0x8]
|
||||
str r1, [sp, #0xc]
|
||||
add r5, r1, #0x0
|
||||
ldrh r1, [r0, #0x2]
|
||||
mov r7, #0x1
|
||||
cmp r1, #0x12
|
||||
bls _02021C56
|
||||
ldr r0, [sp, #0x8]
|
||||
add sp, #0x10
|
||||
add r1, r0, #0x0
|
||||
pop {r3-r7, pc}
|
||||
_02021C56:
|
||||
sub r1, r1, #0x1
|
||||
str r1, [sp, #0x4]
|
||||
bmi _02021CCC
|
||||
lsl r1, r1, #0x1
|
||||
add r4, r0, r1
|
||||
_02021C60:
|
||||
ldrh r6, [r4, #0x8]
|
||||
mov r3, #0xa
|
||||
mov r0, #0x0
|
||||
add r1, r6, #0x0
|
||||
sub r1, #0xa2
|
||||
asr r2, r1, #0x1f
|
||||
sub r3, r1, r3
|
||||
mov r12, r2
|
||||
mov r3, r12
|
||||
sbc r3, r0
|
||||
blo _02021C98
|
||||
ldr r0, _02021CDC ; =0x00000121
|
||||
mov r3, #0xa
|
||||
sub r1, r6, r0
|
||||
asr r2, r1, #0x1f
|
||||
mov r0, #0x0
|
||||
sub r3, r1, r3
|
||||
mov r12, r2
|
||||
mov r3, r12
|
||||
sbc r3, r0
|
||||
blo _02021C98
|
||||
ldr r0, [sp, #0x0]
|
||||
mov r1, #0x0
|
||||
str r1, [r0, #0x0]
|
||||
ldr r0, [sp, #0x8]
|
||||
ldr r1, [sp, #0xc]
|
||||
add sp, #0x10
|
||||
pop {r3-r7, pc}
|
||||
_02021C98:
|
||||
add r0, r1, #0x0
|
||||
add r1, r2, #0x0
|
||||
add r2, r7, #0x0
|
||||
add r3, r5, #0x0
|
||||
bl _ll_mul
|
||||
add r2, r1, #0x0
|
||||
ldr r1, [sp, #0x8]
|
||||
add r0, r1, r0
|
||||
str r0, [sp, #0x8]
|
||||
ldr r0, [sp, #0xc]
|
||||
adc r0, r2
|
||||
str r0, [sp, #0xc]
|
||||
add r0, r7, #0x0
|
||||
add r1, r5, #0x0
|
||||
mov r2, #0xa
|
||||
mov r3, #0x0
|
||||
bl _ll_mul
|
||||
add r7, r0, #0x0
|
||||
ldr r0, [sp, #0x4]
|
||||
add r5, r1, #0x0
|
||||
sub r4, r4, #0x2
|
||||
sub r0, r0, #0x1
|
||||
str r0, [sp, #0x4]
|
||||
bpl _02021C60
|
||||
_02021CCC:
|
||||
ldr r0, [sp, #0x0]
|
||||
mov r1, #0x1
|
||||
str r1, [r0, #0x0]
|
||||
ldr r0, [sp, #0x8]
|
||||
ldr r1, [sp, #0xc]
|
||||
add sp, #0x10
|
||||
pop {r3-r7, pc}
|
||||
nop
|
||||
_02021CDC: .word 0x00000121
|
||||
|
||||
thumb_func_start FUN_02021CE0
|
||||
FUN_02021CE0: ; 0x02021CE0
|
||||
push {r3-r5, lr}
|
||||
add r5, r0, #0x0
|
||||
add r4, r1, #0x0
|
||||
cmp r5, #0x0
|
||||
bne _02021CEE
|
||||
bl ErrorHandling
|
||||
_02021CEE:
|
||||
ldr r1, [r5, #0x4]
|
||||
ldr r0, _02021D34 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021CFA
|
||||
bl ErrorHandling
|
||||
_02021CFA:
|
||||
cmp r4, #0x0
|
||||
bne _02021D02
|
||||
bl ErrorHandling
|
||||
_02021D02:
|
||||
ldr r1, [r4, #0x4]
|
||||
ldr r0, _02021D34 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021D0E
|
||||
bl ErrorHandling
|
||||
_02021D0E:
|
||||
ldrh r1, [r5, #0x8]
|
||||
ldrh r0, [r4, #0x8]
|
||||
cmp r1, r0
|
||||
bne _02021D2E
|
||||
ldr r0, _02021D38 ; =0x0000FFFF
|
||||
_02021D18:
|
||||
ldrh r1, [r5, #0x8]
|
||||
cmp r1, r0
|
||||
bne _02021D22
|
||||
mov r0, #0x0
|
||||
pop {r3-r5, pc}
|
||||
_02021D22:
|
||||
add r5, r5, #0x2
|
||||
add r4, r4, #0x2
|
||||
ldrh r2, [r5, #0x8]
|
||||
ldrh r1, [r4, #0x8]
|
||||
cmp r2, r1
|
||||
beq _02021D18
|
||||
_02021D2E:
|
||||
mov r0, #0x1
|
||||
pop {r3-r5, pc}
|
||||
nop
|
||||
_02021D34: .word 0xB6F8D2EC
|
||||
_02021D38: .word 0x0000FFFF
|
||||
|
||||
thumb_func_start FUN_02021D3C
|
||||
FUN_02021D3C: ; 0x02021D3C
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
bne _02021D46
|
||||
bl ErrorHandling
|
||||
_02021D46:
|
||||
ldr r1, [r4, #0x4]
|
||||
ldr r0, _02021D58 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021D52
|
||||
bl ErrorHandling
|
||||
_02021D52:
|
||||
ldrh r0, [r4, #0x2]
|
||||
pop {r4, pc}
|
||||
nop
|
||||
_02021D58: .word 0xB6F8D2EC
|
||||
|
||||
thumb_func_start FUN_02021D5C
|
||||
FUN_02021D5C: ; 0x02021D5C
|
||||
push {r3-r5, lr}
|
||||
add r4, r0, #0x0
|
||||
bne _02021D66
|
||||
bl ErrorHandling
|
||||
_02021D66:
|
||||
ldr r1, [r4, #0x4]
|
||||
ldr r0, _02021D98 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021D72
|
||||
bl ErrorHandling
|
||||
_02021D72:
|
||||
ldrh r1, [r4, #0x2]
|
||||
mov r3, #0x0
|
||||
mov r0, #0x1
|
||||
cmp r1, #0x0
|
||||
ble _02021D94
|
||||
mov r1, #0xe
|
||||
add r5, r4, #0x0
|
||||
lsl r1, r1, #0xc
|
||||
_02021D82:
|
||||
ldrh r2, [r5, #0x8]
|
||||
cmp r2, r1
|
||||
bne _02021D8A
|
||||
add r0, r0, #0x1
|
||||
_02021D8A:
|
||||
ldrh r2, [r4, #0x2]
|
||||
add r3, r3, #0x1
|
||||
add r5, r5, #0x2
|
||||
cmp r3, r2
|
||||
blt _02021D82
|
||||
_02021D94:
|
||||
pop {r3-r5, pc}
|
||||
nop
|
||||
_02021D98: .word 0xB6F8D2EC
|
||||
|
||||
thumb_func_start FUN_02021D9C
|
||||
FUN_02021D9C: ; 0x02021D9C
|
||||
push {r3-r7, lr}
|
||||
add r5, r1, #0x0
|
||||
add r7, r0, #0x0
|
||||
add r6, r2, #0x0
|
||||
cmp r5, #0x0
|
||||
bne _02021DAC
|
||||
bl ErrorHandling
|
||||
_02021DAC:
|
||||
ldr r1, [r5, #0x4]
|
||||
ldr r0, _02021E24 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021DB8
|
||||
bl ErrorHandling
|
||||
_02021DB8:
|
||||
cmp r7, #0x0
|
||||
bne _02021DC0
|
||||
bl ErrorHandling
|
||||
_02021DC0:
|
||||
ldr r1, [r7, #0x4]
|
||||
ldr r0, _02021E24 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021DCC
|
||||
bl ErrorHandling
|
||||
_02021DCC:
|
||||
mov r4, #0x0
|
||||
cmp r6, #0x0
|
||||
beq _02021DF6
|
||||
ldrh r0, [r5, #0x2]
|
||||
cmp r0, #0x0
|
||||
ble _02021DF6
|
||||
mov r1, #0xe
|
||||
add r0, r5, #0x0
|
||||
lsl r1, r1, #0xc
|
||||
_02021DDE:
|
||||
ldrh r2, [r0, #0x8]
|
||||
cmp r2, r1
|
||||
bne _02021DEC
|
||||
sub r6, r6, #0x1
|
||||
bne _02021DEC
|
||||
add r4, r4, #0x1
|
||||
b _02021DF6
|
||||
_02021DEC:
|
||||
ldrh r2, [r5, #0x2]
|
||||
add r4, r4, #0x1
|
||||
add r0, r0, #0x2
|
||||
cmp r4, r2
|
||||
blt _02021DDE
|
||||
_02021DF6:
|
||||
add r0, r7, #0x0
|
||||
bl FUN_02021A4C
|
||||
ldrh r0, [r5, #0x2]
|
||||
cmp r4, r0
|
||||
bge _02021E20
|
||||
lsl r0, r4, #0x1
|
||||
add r6, r5, r0
|
||||
_02021E06:
|
||||
ldrh r1, [r6, #0x8]
|
||||
mov r0, #0xe
|
||||
lsl r0, r0, #0xc
|
||||
cmp r1, r0
|
||||
beq _02021E20
|
||||
add r0, r7, #0x0
|
||||
bl FUN_02021FB0
|
||||
ldrh r0, [r5, #0x2]
|
||||
add r4, r4, #0x1
|
||||
add r6, r6, #0x2
|
||||
cmp r4, r0
|
||||
blt _02021E06
|
||||
_02021E20:
|
||||
pop {r3-r7, pc}
|
||||
nop
|
||||
_02021E24: .word 0xB6F8D2EC
|
||||
|
||||
thumb_func_start FUN_02021E28
|
||||
FUN_02021E28: ; 0x02021E28
|
||||
push {r3-r5, lr}
|
||||
add r5, r0, #0x0
|
||||
add r4, r1, #0x0
|
||||
cmp r5, #0x0
|
||||
bne _02021E36
|
||||
bl ErrorHandling
|
||||
_02021E36:
|
||||
ldr r1, [r5, #0x4]
|
||||
ldr r0, _02021E84 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021E42
|
||||
bl ErrorHandling
|
||||
_02021E42:
|
||||
mov r0, #0x0
|
||||
strh r0, [r5, #0x2]
|
||||
ldrh r1, [r4, #0x0]
|
||||
ldr r0, _02021E88 ; =0x0000FFFF
|
||||
cmp r1, r0
|
||||
beq _02021E76
|
||||
add r1, r0, #0x0
|
||||
_02021E50:
|
||||
ldrh r2, [r5, #0x0]
|
||||
ldrh r0, [r5, #0x2]
|
||||
sub r2, r2, #0x1
|
||||
cmp r0, r2
|
||||
blt _02021E60
|
||||
bl ErrorHandling
|
||||
b _02021E76
|
||||
_02021E60:
|
||||
add r2, r0, #0x0
|
||||
add r2, r2, #0x1
|
||||
strh r2, [r5, #0x2]
|
||||
ldrh r2, [r4, #0x0]
|
||||
lsl r0, r0, #0x1
|
||||
add r0, r5, r0
|
||||
add r4, r4, #0x2
|
||||
strh r2, [r0, #0x8]
|
||||
ldrh r0, [r4, #0x0]
|
||||
cmp r0, r1
|
||||
bne _02021E50
|
||||
_02021E76:
|
||||
ldrh r0, [r5, #0x2]
|
||||
ldr r1, _02021E88 ; =0x0000FFFF
|
||||
lsl r0, r0, #0x1
|
||||
add r0, r5, r0
|
||||
strh r1, [r0, #0x8]
|
||||
pop {r3-r5, pc}
|
||||
nop
|
||||
_02021E84: .word 0xB6F8D2EC
|
||||
_02021E88: .word 0x0000FFFF
|
||||
|
||||
thumb_func_start FUN_02021E8C
|
||||
FUN_02021E8C: ; 0x02021E8C
|
||||
push {r3-r7, lr}
|
||||
add r5, r0, #0x0
|
||||
add r7, r1, #0x0
|
||||
add r4, r2, #0x0
|
||||
cmp r5, #0x0
|
||||
bne _02021E9C
|
||||
bl ErrorHandling
|
||||
_02021E9C:
|
||||
ldr r1, [r5, #0x4]
|
||||
ldr r0, _02021EE8 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021EA8
|
||||
bl ErrorHandling
|
||||
_02021EA8:
|
||||
ldrh r0, [r5, #0x0]
|
||||
cmp r4, r0
|
||||
bhi _02021EE2
|
||||
lsl r6, r4, #0x1
|
||||
add r0, r5, #0x0
|
||||
add r0, #0x8
|
||||
add r1, r7, #0x0
|
||||
add r2, r6, #0x0
|
||||
bl memcpy
|
||||
mov r2, #0x0
|
||||
cmp r4, #0x0
|
||||
bls _02021ED4
|
||||
ldr r0, _02021EEC ; =0x0000FFFF
|
||||
add r3, r5, #0x0
|
||||
_02021EC6:
|
||||
ldrh r1, [r3, #0x8]
|
||||
cmp r1, r0
|
||||
beq _02021ED4
|
||||
add r2, r2, #0x1
|
||||
add r3, r3, #0x2
|
||||
cmp r2, r4
|
||||
blo _02021EC6
|
||||
_02021ED4:
|
||||
strh r2, [r5, #0x2]
|
||||
cmp r2, r4
|
||||
bne _02021EE6
|
||||
ldr r1, _02021EEC ; =0x0000FFFF
|
||||
add r0, r5, r6
|
||||
strh r1, [r0, #0x6]
|
||||
pop {r3-r7, pc}
|
||||
_02021EE2:
|
||||
bl ErrorHandling
|
||||
_02021EE6:
|
||||
pop {r3-r7, pc}
|
||||
.balign 4
|
||||
_02021EE8: .word 0xB6F8D2EC
|
||||
_02021EEC: .word 0x0000FFFF
|
||||
|
||||
thumb_func_start FUN_02021EF0
|
||||
FUN_02021EF0: ; 0x02021EF0
|
||||
push {r4-r6, lr}
|
||||
add r5, r0, #0x0
|
||||
add r6, r1, #0x0
|
||||
add r4, r2, #0x0
|
||||
cmp r5, #0x0
|
||||
bne _02021F00
|
||||
bl ErrorHandling
|
||||
_02021F00:
|
||||
ldr r1, [r5, #0x4]
|
||||
ldr r0, _02021F28 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021F0C
|
||||
bl ErrorHandling
|
||||
_02021F0C:
|
||||
ldrh r0, [r5, #0x2]
|
||||
add r2, r0, #0x1
|
||||
cmp r2, r4
|
||||
bhi _02021F22
|
||||
add r5, #0x8
|
||||
add r0, r6, #0x0
|
||||
add r1, r5, #0x0
|
||||
lsl r2, r2, #0x1
|
||||
bl memcpy
|
||||
pop {r4-r6, pc}
|
||||
_02021F22:
|
||||
bl ErrorHandling
|
||||
pop {r4-r6, pc}
|
||||
.balign 4
|
||||
_02021F28: .word 0xB6F8D2EC
|
||||
|
||||
thumb_func_start FUN_02021F2C
|
||||
FUN_02021F2C: ; 0x02021F2C
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
bne _02021F36
|
||||
bl ErrorHandling
|
||||
_02021F36:
|
||||
ldr r1, [r4, #0x4]
|
||||
ldr r0, _02021F48 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021F42
|
||||
bl ErrorHandling
|
||||
_02021F42:
|
||||
add r4, #0x8
|
||||
add r0, r4, #0x0
|
||||
pop {r4, pc}
|
||||
.balign 4
|
||||
_02021F48: .word 0xB6F8D2EC
|
||||
|
||||
thumb_func_start FUN_02021F4C
|
||||
FUN_02021F4C: ; 0x02021F4C
|
||||
push {r3-r5, lr}
|
||||
add r5, r0, #0x0
|
||||
add r4, r1, #0x0
|
||||
cmp r5, #0x0
|
||||
bne _02021F5A
|
||||
bl ErrorHandling
|
||||
_02021F5A:
|
||||
ldr r1, [r5, #0x4]
|
||||
ldr r0, _02021FAC ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021F66
|
||||
bl ErrorHandling
|
||||
_02021F66:
|
||||
cmp r4, #0x0
|
||||
bne _02021F6E
|
||||
bl ErrorHandling
|
||||
_02021F6E:
|
||||
ldr r1, [r4, #0x4]
|
||||
ldr r0, _02021FAC ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021F7A
|
||||
bl ErrorHandling
|
||||
_02021F7A:
|
||||
ldrh r2, [r4, #0x2]
|
||||
ldrh r0, [r5, #0x2]
|
||||
add r1, r0, r2
|
||||
add r3, r1, #0x1
|
||||
ldrh r1, [r5, #0x0]
|
||||
cmp r3, r1
|
||||
bgt _02021FA6
|
||||
add r1, r5, #0x0
|
||||
add r1, #0x8
|
||||
lsl r0, r0, #0x1
|
||||
add r0, r1, r0
|
||||
add r1, r4, #0x0
|
||||
add r2, r2, #0x1
|
||||
add r1, #0x8
|
||||
lsl r2, r2, #0x1
|
||||
bl memcpy
|
||||
ldrh r1, [r5, #0x2]
|
||||
ldrh r0, [r4, #0x2]
|
||||
add r0, r1, r0
|
||||
strh r0, [r5, #0x2]
|
||||
pop {r3-r5, pc}
|
||||
_02021FA6:
|
||||
bl ErrorHandling
|
||||
pop {r3-r5, pc}
|
||||
.balign 4
|
||||
_02021FAC: .word 0xB6F8D2EC
|
||||
|
||||
thumb_func_start FUN_02021FB0
|
||||
FUN_02021FB0: ; 0x02021FB0
|
||||
push {r3-r5, lr}
|
||||
add r5, r0, #0x0
|
||||
add r4, r1, #0x0
|
||||
cmp r5, #0x0
|
||||
bne _02021FBE
|
||||
bl ErrorHandling
|
||||
_02021FBE:
|
||||
ldr r1, [r5, #0x4]
|
||||
ldr r0, _02021FF0 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _02021FCA
|
||||
bl ErrorHandling
|
||||
_02021FCA:
|
||||
ldrh r2, [r5, #0x2]
|
||||
ldrh r0, [r5, #0x0]
|
||||
add r1, r2, #0x1
|
||||
cmp r1, r0
|
||||
bge _02021FE8
|
||||
lsl r0, r2, #0x1
|
||||
strh r1, [r5, #0x2]
|
||||
add r0, r5, r0
|
||||
strh r4, [r0, #0x8]
|
||||
ldrh r0, [r5, #0x2]
|
||||
ldr r1, _02021FF4 ; =0x0000FFFF
|
||||
lsl r0, r0, #0x1
|
||||
add r0, r5, r0
|
||||
strh r1, [r0, #0x8]
|
||||
pop {r3-r5, pc}
|
||||
_02021FE8:
|
||||
bl ErrorHandling
|
||||
pop {r3-r5, pc}
|
||||
nop
|
||||
_02021FF0: .word 0xB6F8D2EC
|
||||
_02021FF4: .word 0x0000FFFF
|
||||
|
||||
thumb_func_start FUN_02021FF8
|
||||
FUN_02021FF8: ; 0x02021FF8
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
bne _02022002
|
||||
bl ErrorHandling
|
||||
_02022002:
|
||||
ldr r1, [r4, #0x4]
|
||||
ldr r0, _02022028 ; =0xB6F8D2EC
|
||||
cmp r1, r0
|
||||
beq _0202200E
|
||||
bl ErrorHandling
|
||||
_0202200E:
|
||||
ldrh r0, [r4, #0x2]
|
||||
cmp r0, #0x0
|
||||
beq _02022026
|
||||
ldrh r1, [r4, #0x8]
|
||||
ldr r0, _0202202C ; =0x00000145
|
||||
cmp r1, r0
|
||||
blo _02022026
|
||||
add r0, #0x19
|
||||
cmp r1, r0
|
||||
bhi _02022026
|
||||
sub r1, #0x1a
|
||||
strh r1, [r4, #0x8]
|
||||
_02022026:
|
||||
pop {r4, pc}
|
||||
.balign 4
|
||||
_02022028: .word 0xB6F8D2EC
|
||||
_0202202C: .word 0x00000145
|
||||
302
arm9/asm/unk_02021FF8.s
Normal file
302
arm9/asm/unk_02021FF8.s
Normal file
@@ -0,0 +1,302 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "global.inc"
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start FUN_02022030
|
||||
FUN_02022030: ; 0x02022030
|
||||
ldrh r1, [r0, #0x2]
|
||||
cmp r1, #0x0
|
||||
beq _02022044
|
||||
ldrh r1, [r0, #0x8]
|
||||
mov r0, #0xf1
|
||||
lsl r0, r0, #0x8
|
||||
cmp r1, r0
|
||||
bne _02022044
|
||||
mov r0, #0x1
|
||||
bx lr
|
||||
_02022044:
|
||||
mov r0, #0x0
|
||||
bx lr
|
||||
|
||||
thumb_func_start FUN_02022048
|
||||
FUN_02022048: ; 0x02022048
|
||||
push {r3-r7, lr}
|
||||
add r4, r1, #0x0
|
||||
str r0, [sp, #0x0]
|
||||
add r0, r4, #0x0
|
||||
bl FUN_02022030
|
||||
cmp r0, #0x0
|
||||
beq _020220B2
|
||||
ldr r0, [sp, #0x0]
|
||||
ldr r1, [sp, #0x0]
|
||||
ldrh r0, [r0, #0x2]
|
||||
add r1, #0x8
|
||||
ldr r7, _020220BC ; =0x000001FF
|
||||
lsl r0, r0, #0x1
|
||||
add r3, r1, r0
|
||||
mov r0, #0x0
|
||||
add r4, #0xa
|
||||
add r1, r0, #0x0
|
||||
_0202206C:
|
||||
ldrh r2, [r4, #0x0]
|
||||
asr r2, r0
|
||||
and r2, r7
|
||||
lsl r2, r2, #0x10
|
||||
add r0, #0x9
|
||||
lsr r2, r2, #0x10
|
||||
cmp r0, #0xf
|
||||
blt _02022094
|
||||
add r4, r4, #0x2
|
||||
sub r0, #0xf
|
||||
beq _02022094
|
||||
ldrh r6, [r4, #0x0]
|
||||
mov r5, #0x9
|
||||
sub r5, r5, r0
|
||||
lsl r6, r5
|
||||
ldr r5, _020220BC ; =0x000001FF
|
||||
and r5, r6
|
||||
orr r2, r5
|
||||
lsl r2, r2, #0x10
|
||||
lsr r2, r2, #0x10
|
||||
_02022094:
|
||||
ldr r5, _020220BC ; =0x000001FF
|
||||
cmp r2, r5
|
||||
beq _020220A2
|
||||
strh r2, [r3, #0x0]
|
||||
add r3, r3, #0x2
|
||||
add r1, r1, #0x1
|
||||
b _0202206C
|
||||
_020220A2:
|
||||
ldr r0, _020220C0 ; =0x0000FFFF
|
||||
strh r0, [r3, #0x0]
|
||||
ldr r0, [sp, #0x0]
|
||||
ldrh r0, [r0, #0x2]
|
||||
add r1, r0, r1
|
||||
ldr r0, [sp, #0x0]
|
||||
strh r1, [r0, #0x2]
|
||||
pop {r3-r7, pc}
|
||||
_020220B2:
|
||||
ldr r0, [sp, #0x0]
|
||||
add r1, r4, #0x0
|
||||
bl FUN_02021F4C
|
||||
pop {r3-r7, pc}
|
||||
.balign 4
|
||||
_020220BC: .word 0x000001FF
|
||||
_020220C0: .word 0x0000FFFF
|
||||
|
||||
thumb_func_start FUN_020220C4
|
||||
FUN_020220C4: ; 0x020220C4
|
||||
push {r3-r7, lr}
|
||||
add r7, r1, #0x0
|
||||
add r5, r0, #0x0
|
||||
add r6, r2, #0x0
|
||||
str r3, [sp, #0x0]
|
||||
cmp r7, #0x0
|
||||
bne _020220D6
|
||||
bl ErrorHandling
|
||||
_020220D6:
|
||||
ldr r0, [sp, #0x18]
|
||||
mov r1, #0x14
|
||||
bl FUN_02016998
|
||||
add r4, r0, #0x0
|
||||
beq _0202211C
|
||||
str r5, [r4, #0x0]
|
||||
str r7, [r4, #0x4]
|
||||
ldr r0, [sp, #0x0]
|
||||
str r6, [r4, #0x8]
|
||||
str r0, [r4, #0xc]
|
||||
ldr r0, [sp, #0x18]
|
||||
lsl r1, r7, #0x2
|
||||
bl FUN_02016998
|
||||
str r0, [r4, #0x10]
|
||||
cmp r0, #0x0
|
||||
beq _02022114
|
||||
mov r6, #0x0
|
||||
cmp r7, #0x0
|
||||
bls _0202211C
|
||||
add r5, r6, #0x0
|
||||
_02022102:
|
||||
ldr r0, [r4, #0x10]
|
||||
add r0, r0, r5
|
||||
bl FUN_02022120
|
||||
add r6, r6, #0x1
|
||||
add r5, r5, #0x4
|
||||
cmp r6, r7
|
||||
blo _02022102
|
||||
b _0202211C
|
||||
_02022114:
|
||||
add r0, r4, #0x0
|
||||
bl FUN_02016A18
|
||||
mov r4, #0x0
|
||||
_0202211C:
|
||||
add r0, r4, #0x0
|
||||
pop {r3-r7, pc}
|
||||
|
||||
thumb_func_start FUN_02022120
|
||||
FUN_02022120: ; 0x02022120
|
||||
mov r1, #0x0
|
||||
strb r1, [r0, #0x0]
|
||||
strb r1, [r0, #0x1]
|
||||
strh r1, [r0, #0x2]
|
||||
bx lr
|
||||
.balign 4
|
||||
|
||||
thumb_func_start FUN_0202212C
|
||||
FUN_0202212C: ; 0x0202212C
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
bne _02022136
|
||||
bl ErrorHandling
|
||||
_02022136:
|
||||
ldr r0, [r4, #0x10]
|
||||
bl FUN_02016A18
|
||||
add r0, r4, #0x0
|
||||
bl FUN_02016A18
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start FUN_02022144
|
||||
FUN_02022144: ; 0x02022144
|
||||
push {r3-r7, lr}
|
||||
sub sp, #0x8
|
||||
add r5, r0, #0x0
|
||||
bl FUN_02020A98
|
||||
str r0, [sp, #0x0]
|
||||
cmp r0, #0x0
|
||||
beq _02022190
|
||||
bl FUN_02020AA4
|
||||
str r0, [sp, #0x4]
|
||||
ldr r0, [r5, #0x4]
|
||||
mov r6, #0x0
|
||||
cmp r0, #0x0
|
||||
bls _020221AE
|
||||
add r4, r6, #0x0
|
||||
_02022164:
|
||||
ldr r0, [r5, #0x10]
|
||||
add r0, r0, r4
|
||||
ldrb r0, [r0, #0x1]
|
||||
cmp r0, #0x0
|
||||
ldr r0, [r5, #0x0]
|
||||
beq _02022178
|
||||
add r0, r0, r4
|
||||
bl FUN_02020A40
|
||||
b _0202217E
|
||||
_02022178:
|
||||
add r0, r0, r4
|
||||
bl FUN_02020A6C
|
||||
_0202217E:
|
||||
ldr r1, [r5, #0x10]
|
||||
add r6, r6, #0x1
|
||||
add r1, r1, r4
|
||||
strb r0, [r1, #0x1]
|
||||
ldr r0, [r5, #0x4]
|
||||
add r4, r4, #0x4
|
||||
cmp r6, r0
|
||||
blo _02022164
|
||||
b _020221AE
|
||||
_02022190:
|
||||
ldr r0, [r5, #0x4]
|
||||
mov r3, #0x0
|
||||
str r3, [sp, #0x4]
|
||||
cmp r0, #0x0
|
||||
bls _020221AE
|
||||
add r2, r3, #0x0
|
||||
add r1, r3, #0x0
|
||||
_0202219E:
|
||||
ldr r0, [r5, #0x10]
|
||||
add r3, r3, #0x1
|
||||
add r0, r0, r2
|
||||
strb r1, [r0, #0x1]
|
||||
ldr r0, [r5, #0x4]
|
||||
add r2, r2, #0x4
|
||||
cmp r3, r0
|
||||
blo _0202219E
|
||||
_020221AE:
|
||||
mov r4, #0x0
|
||||
cmp r0, #0x0
|
||||
bls _020221E4
|
||||
add r7, r4, #0x0
|
||||
_020221B6:
|
||||
ldr r3, [r5, #0x10]
|
||||
ldr r1, [sp, #0x0]
|
||||
add r0, r3, r7
|
||||
ldrb r3, [r3, r7]
|
||||
ldr r2, [sp, #0x4]
|
||||
lsl r6, r3, #0x2
|
||||
ldr r3, _020221E8 ; =0x020EE6CC
|
||||
ldr r3, [r3, r6]
|
||||
blx r3
|
||||
add r1, r0, #0x0
|
||||
mov r0, #0x0
|
||||
mvn r0, r0
|
||||
cmp r1, r0
|
||||
beq _020221DA
|
||||
ldr r2, [r5, #0xc]
|
||||
ldr r3, [r5, #0x8]
|
||||
add r0, r4, #0x0
|
||||
blx r3
|
||||
_020221DA:
|
||||
ldr r0, [r5, #0x4]
|
||||
add r4, r4, #0x1
|
||||
add r7, r7, #0x4
|
||||
cmp r4, r0
|
||||
blo _020221B6
|
||||
_020221E4:
|
||||
add sp, #0x8
|
||||
pop {r3-r7, pc}
|
||||
.balign 4
|
||||
_020221E8: .word 0x020EE6CC
|
||||
|
||||
thumb_func_start FUN_020221EC
|
||||
FUN_020221EC: ; 0x020221EC
|
||||
push {r3, lr}
|
||||
ldrb r1, [r0, #0x1]
|
||||
cmp r1, #0x0
|
||||
beq _02022202
|
||||
cmp r2, #0x0
|
||||
beq _02022202
|
||||
mov r1, #0x1
|
||||
bl FUN_0202223C
|
||||
mov r0, #0x0
|
||||
pop {r3, pc}
|
||||
_02022202:
|
||||
mov r0, #0x0
|
||||
mvn r0, r0
|
||||
pop {r3, pc}
|
||||
|
||||
thumb_func_start FUN_02022208
|
||||
FUN_02022208: ; 0x02022208
|
||||
push {r3, lr}
|
||||
ldrb r2, [r0, #0x1]
|
||||
cmp r2, #0x0
|
||||
beq _02022220
|
||||
ldrh r2, [r0, #0x2]
|
||||
ldr r1, _02022238 ; =0x0000FFFF
|
||||
cmp r2, r1
|
||||
bhs _0202221C
|
||||
add r1, r2, #0x1
|
||||
strh r1, [r0, #0x2]
|
||||
_0202221C:
|
||||
mov r0, #0x2
|
||||
pop {r3, pc}
|
||||
_02022220:
|
||||
cmp r1, #0x0
|
||||
beq _0202222E
|
||||
mov r1, #0x0
|
||||
bl FUN_0202223C
|
||||
mov r0, #0x3
|
||||
pop {r3, pc}
|
||||
_0202222E:
|
||||
mov r1, #0x0
|
||||
bl FUN_0202223C
|
||||
mov r0, #0x1
|
||||
pop {r3, pc}
|
||||
.balign 4
|
||||
_02022238: .word 0x0000FFFF
|
||||
|
||||
thumb_func_start FUN_0202223C
|
||||
FUN_0202223C: ; 0x0202223C
|
||||
strb r1, [r0, #0x0]
|
||||
mov r1, #0x0
|
||||
strh r1, [r0, #0x2]
|
||||
bx lr
|
||||
52
arm9/asm/unk_02022244.s
Normal file
52
arm9/asm/unk_02022244.s
Normal file
@@ -0,0 +1,52 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "global.inc"
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start FUN_02022244
|
||||
FUN_02022244: ; 0x02022244
|
||||
push {r3-r4}
|
||||
ldr r3, [r0, #0xc]
|
||||
mov r2, #0x0
|
||||
sub r3, r3, #0x1
|
||||
beq _02022262
|
||||
ldr r4, [r0, #0x0]
|
||||
_02022250:
|
||||
ldrh r3, [r4, #0x2]
|
||||
cmp r3, r1
|
||||
bhi _02022262
|
||||
ldr r3, [r0, #0xc]
|
||||
add r2, r2, #0x1
|
||||
sub r3, r3, #0x1
|
||||
add r4, r4, #0x2
|
||||
cmp r2, r3
|
||||
blo _02022250
|
||||
_02022262:
|
||||
ldr r1, [r0, #0x4]
|
||||
ldrb r3, [r1, r2]
|
||||
add r1, sp, #0x0
|
||||
strb r3, [r1, #0x0]
|
||||
ldr r0, [r0, #0x8]
|
||||
ldrb r2, [r0, r2]
|
||||
strb r2, [r1, #0x1]
|
||||
ldrb r0, [r1, #0x0]
|
||||
lsl r1, r2, #0x8
|
||||
orr r0, r1
|
||||
pop {r3-r4}
|
||||
bx lr
|
||||
.balign 4
|
||||
|
||||
thumb_func_start FUN_0202227C
|
||||
FUN_0202227C: ; 0x0202227C
|
||||
ldr r2, [r0, #0x0]
|
||||
str r2, [r1, #0xc]
|
||||
add r2, r0, #0x4
|
||||
str r2, [r1, #0x0]
|
||||
ldr r0, [r1, #0xc]
|
||||
lsl r0, r0, #0x1
|
||||
add r2, r2, r0
|
||||
str r2, [r1, #0x4]
|
||||
ldr r0, [r1, #0xc]
|
||||
add r0, r2, r0
|
||||
str r0, [r1, #0x8]
|
||||
bx lr
|
||||
56
arm9/asm/unk_02022294.s
Normal file
56
arm9/asm/unk_02022294.s
Normal file
@@ -0,0 +1,56 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "global.inc"
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start FUN_02022294
|
||||
FUN_02022294: ; 0x02022294
|
||||
ldr r0, _020222A4 ; =0x021C59BC
|
||||
mov r1, #0x0
|
||||
str r1, [r0, #0x0]
|
||||
str r1, [r0, #0x4]
|
||||
str r1, [r0, #0x8]
|
||||
ldr r0, _020222A8 ; =0x021C59BC
|
||||
str r1, [r0, #0x0]
|
||||
bx lr
|
||||
.balign 4
|
||||
_020222A4: .word 0x021C59BC
|
||||
_020222A8: .word 0x021C59BC
|
||||
|
||||
thumb_func_start FUN_020222AC
|
||||
FUN_020222AC: ; 0x020222AC
|
||||
ldr r3, _020222B0 ; =G3X_ResetMtxStack
|
||||
bx r3
|
||||
.balign 4
|
||||
_020222B0: .word G3X_ResetMtxStack
|
||||
|
||||
thumb_func_start FUN_020222B4
|
||||
FUN_020222B4: ; 0x020222B4
|
||||
ldr r2, _020222C0 ; =0x021C59BC
|
||||
str r0, [r2, #0x4]
|
||||
str r1, [r2, #0x8]
|
||||
mov r0, #0x1
|
||||
str r0, [r2, #0x0]
|
||||
bx lr
|
||||
.balign 4
|
||||
_020222C0: .word 0x021C59BC
|
||||
|
||||
thumb_func_start FUN_020222C4
|
||||
FUN_020222C4: ; 0x020222C4
|
||||
ldr r0, _020222E0 ; =0x021C59BC
|
||||
ldr r1, [r0, #0x0]
|
||||
cmp r1, #0x0
|
||||
beq _020222DC
|
||||
ldr r1, [r0, #0x8]
|
||||
ldr r2, [r0, #0x4]
|
||||
lsl r1, r1, #0x1
|
||||
orr r2, r1
|
||||
ldr r1, _020222E4 ; =0x04000540
|
||||
str r2, [r1, #0x0]
|
||||
mov r1, #0x0
|
||||
str r1, [r0, #0x0]
|
||||
_020222DC:
|
||||
bx lr
|
||||
nop
|
||||
_020222E0: .word 0x021C59BC
|
||||
_020222E4: .word 0x04000540
|
||||
46
arm9/asm/unk_020222E8.s
Normal file
46
arm9/asm/unk_020222E8.s
Normal file
@@ -0,0 +1,46 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "global.inc"
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start FUN_020222E8
|
||||
FUN_020222E8: ; 0x020222E8
|
||||
mov r0, #0x5
|
||||
lsl r0, r0, #0x18
|
||||
bx lr
|
||||
.balign 4
|
||||
|
||||
thumb_func_start FUN_020222F0
|
||||
FUN_020222F0: ; 0x020222F0
|
||||
mov r0, #0x2
|
||||
lsl r0, r0, #0x8
|
||||
bx lr
|
||||
.balign 4
|
||||
|
||||
thumb_func_start FUN_020222F8
|
||||
FUN_020222F8: ; 0x020222F8
|
||||
ldr r0, _020222FC ; =0x05000400
|
||||
bx lr
|
||||
.balign 4
|
||||
_020222FC: .word 0x05000400
|
||||
|
||||
thumb_func_start FUN_02022300
|
||||
FUN_02022300: ; 0x02022300
|
||||
mov r0, #0x2
|
||||
lsl r0, r0, #0x8
|
||||
bx lr
|
||||
.balign 4
|
||||
|
||||
thumb_func_start FUN_02022308
|
||||
FUN_02022308: ; 0x02022308
|
||||
ldr r0, _0202230C ; =0x05000200
|
||||
bx lr
|
||||
.balign 4
|
||||
_0202230C: .word 0x05000200
|
||||
|
||||
thumb_func_start FUN_02022310
|
||||
FUN_02022310: ; 0x02022310
|
||||
ldr r0, _02022314 ; =0x05000600
|
||||
bx lr
|
||||
.balign 4
|
||||
_02022314: .word 0x05000600
|
||||
152
arm9/asm/unk_02022318.s
Normal file
152
arm9/asm/unk_02022318.s
Normal file
@@ -0,0 +1,152 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "global.inc"
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start FUN_02022318
|
||||
FUN_02022318: ; 0x02022318
|
||||
push {r3-r7, lr}
|
||||
sub sp, #0x8
|
||||
add r7, r1, #0x0
|
||||
mov r1, #0xc
|
||||
add r6, r0, #0x0
|
||||
add r5, r2, #0x0
|
||||
str r3, [sp, #0x4]
|
||||
bl FUN_02016998
|
||||
add r4, r0, #0x0
|
||||
str r6, [r4, #0x0]
|
||||
bl FUN_020BB7F4
|
||||
bl G3X_InitMtxStack
|
||||
mov r1, #0x2
|
||||
ldr r0, _020223B8 ; =0x04000540
|
||||
cmp r7, #0x0
|
||||
str r1, [r0, #0x0]
|
||||
bne _02022364
|
||||
lsl r0, r5, #0x7
|
||||
bl FUN_020AFA28
|
||||
add r6, r0, #0x0
|
||||
ldr r0, [r4, #0x0]
|
||||
add r1, r6, #0x0
|
||||
bl FUN_02016998
|
||||
str r0, [r4, #0x8]
|
||||
mov r0, #0x1
|
||||
str r0, [sp, #0x0]
|
||||
ldr r2, [r4, #0x8]
|
||||
lsl r0, r5, #0x11
|
||||
mov r1, #0x0
|
||||
add r3, r6, #0x0
|
||||
bl FUN_020AF9C4
|
||||
b _0202236E
|
||||
_02022364:
|
||||
lsl r0, r5, #0x10
|
||||
lsr r0, r0, #0x10
|
||||
mov r1, #0x1
|
||||
bl FUN_020AEB70
|
||||
_0202236E:
|
||||
ldr r0, [sp, #0x4]
|
||||
cmp r0, #0x0
|
||||
bne _02022398
|
||||
ldr r0, [sp, #0x20]
|
||||
lsl r0, r0, #0x8
|
||||
bl FUN_020AFBFC
|
||||
add r5, r0, #0x0
|
||||
ldr r0, [r4, #0x0]
|
||||
add r1, r5, #0x0
|
||||
bl FUN_02016998
|
||||
str r0, [r4, #0x4]
|
||||
ldr r0, [sp, #0x20]
|
||||
ldr r1, [r4, #0x4]
|
||||
lsl r0, r0, #0xd
|
||||
add r2, r5, #0x0
|
||||
mov r3, #0x1
|
||||
bl FUN_020AFBA8
|
||||
b _020223A4
|
||||
_02022398:
|
||||
ldr r0, [sp, #0x20]
|
||||
mov r1, #0x1
|
||||
lsl r0, r0, #0x1d
|
||||
lsr r0, r0, #0x10
|
||||
bl FUN_020AEB70
|
||||
_020223A4:
|
||||
ldr r0, [sp, #0x24]
|
||||
cmp r0, #0x0
|
||||
beq _020223AE
|
||||
blx r0
|
||||
b _020223B2
|
||||
_020223AE:
|
||||
bl FUN_020223D4
|
||||
_020223B2:
|
||||
add r0, r4, #0x0
|
||||
add sp, #0x8
|
||||
pop {r3-r7, pc}
|
||||
.balign 4
|
||||
_020223B8: .word 0x04000540
|
||||
|
||||
thumb_func_start FUN_020223BC
|
||||
FUN_020223BC: ; 0x020223BC
|
||||
push {r4, lr}
|
||||
add r4, r0, #0x0
|
||||
ldr r0, [r4, #0x4]
|
||||
bl FUN_02016A18
|
||||
ldr r0, [r4, #0x8]
|
||||
bl FUN_02016A18
|
||||
add r0, r4, #0x0
|
||||
bl FUN_02016A18
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start FUN_020223D4
|
||||
FUN_020223D4: ; 0x020223D4
|
||||
push {r3, lr}
|
||||
mov r0, #0x1
|
||||
add r1, r0, #0x0
|
||||
bl FUN_0201E6E4
|
||||
ldr r0, _02022438 ; =0x04000008
|
||||
mov r1, #0x3
|
||||
ldrh r2, [r0, #0x0]
|
||||
bic r2, r1
|
||||
strh r2, [r0, #0x0]
|
||||
add r0, #0x58
|
||||
ldrh r2, [r0, #0x0]
|
||||
ldr r1, _0202243C ; =0xFFFFCFFD
|
||||
and r1, r2
|
||||
strh r1, [r0, #0x0]
|
||||
ldrh r1, [r0, #0x0]
|
||||
ldr r2, _02022440 ; =0x0000CFEF
|
||||
and r1, r2
|
||||
strh r1, [r0, #0x0]
|
||||
add r1, r2, #0x0
|
||||
ldrh r3, [r0, #0x0]
|
||||
add r1, #0xc
|
||||
and r1, r3
|
||||
strh r1, [r0, #0x0]
|
||||
add r1, r2, #0x0
|
||||
ldrh r3, [r0, #0x0]
|
||||
add r1, #0x8
|
||||
sub r2, #0x10
|
||||
and r1, r3
|
||||
strh r1, [r0, #0x0]
|
||||
ldrh r1, [r0, #0x0]
|
||||
and r1, r2
|
||||
strh r1, [r0, #0x0]
|
||||
mov r0, #0x0
|
||||
add r1, r0, #0x0
|
||||
add r2, r0, #0x0
|
||||
add r3, r0, #0x0
|
||||
bl G3X_SetFog
|
||||
mov r0, #0x0
|
||||
ldr r2, _02022444 ; =0x00007FFF
|
||||
add r1, r0, #0x0
|
||||
mov r3, #0x3f
|
||||
str r0, [sp, #0x0]
|
||||
bl G3X_SetClearColor
|
||||
ldr r1, _02022448 ; =0xBFFF0000
|
||||
ldr r0, _0202244C ; =0x04000580
|
||||
str r1, [r0, #0x0]
|
||||
pop {r3, pc}
|
||||
.balign 4
|
||||
_02022438: .word 0x04000008
|
||||
_0202243C: .word 0xFFFFCFFD
|
||||
_02022440: .word 0x0000CFEF
|
||||
_02022444: .word 0x00007FFF
|
||||
_02022448: .word 0xBFFF0000
|
||||
_0202244C: .word 0x04000580
|
||||
48946
arm9/asm/unk_02022450.s
Normal file
48946
arm9/asm/unk_02022450.s
Normal file
File diff suppressed because it is too large
Load Diff
@@ -6200,17 +6200,18 @@
|
||||
.extern FUN_0201DED0
|
||||
.extern FUN_02012710
|
||||
.extern FUN_02013764
|
||||
.extern FUN_020144FC
|
||||
.extern FUN_02029E54
|
||||
.extern FUN_02022450
|
||||
.extern FUN_020161F8
|
||||
.extern FUN_0201BB74
|
||||
.extern FUN_0201C100
|
||||
.extern FUN_0201C750
|
||||
.extern FUN_02022244
|
||||
.extern FUN_0201C360
|
||||
.extern FUN_0201C39C
|
||||
.extern FUN_0201C3B4
|
||||
.extern FUN_0201C40C
|
||||
.extern FUN_0201C438
|
||||
.extern FUN_0201C7B0
|
||||
.extern FUN_020144FC
|
||||
.extern FUN_02029E54
|
||||
.extern FUN_02022450
|
||||
.extern FUN_020161F8
|
||||
.extern FUN_0201BB74
|
||||
.extern FUN_0201C100
|
||||
.extern FUN_0201C750
|
||||
.extern FUN_02022244
|
||||
.extern FUN_0201C360
|
||||
.extern FUN_0201C39C
|
||||
.extern FUN_0201C3B4
|
||||
.extern FUN_0201C40C
|
||||
.extern FUN_0201C438
|
||||
.extern FUN_0201C7B0
|
||||
.extern FUN_02021F4C
|
||||
|
||||
Reference in New Issue
Block a user