mirror of
https://github.com/pret/pokeheartgold.git
synced 2024-11-24 13:49:45 +00:00
7732 lines
143 KiB
ArmAsm
7732 lines
143 KiB
ArmAsm
.include "asm/macros.inc"
|
|
.include "overlay_72.inc"
|
|
.include "global.inc"
|
|
|
|
.text
|
|
|
|
thumb_func_start ov72_022378C0
|
|
ov72_022378C0: ; 0x022378C0
|
|
push {r3, r4}
|
|
ldr r3, _022378D8 ; =_0223B820
|
|
mov r4, #1
|
|
str r4, [r3]
|
|
mov r4, #0
|
|
str r4, [r3, #4]
|
|
str r0, [r3, #8]
|
|
str r1, [r3, #0xc]
|
|
str r2, [r3, #0x10]
|
|
pop {r3, r4}
|
|
bx lr
|
|
nop
|
|
_022378D8: .word _0223B820
|
|
thumb_func_end ov72_022378C0
|
|
|
|
thumb_func_start ov72_022378DC
|
|
ov72_022378DC: ; 0x022378DC
|
|
push {r3, lr}
|
|
ldr r1, _02237B48 ; =_0223B820
|
|
ldr r0, [r1]
|
|
cmp r0, #0xc
|
|
bls _022378E8
|
|
b _02237B44
|
|
_022378E8:
|
|
add r0, r0, r0
|
|
add r0, pc
|
|
ldrh r0, [r0, #6]
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
add pc, r0
|
|
_022378F4: ; jump table
|
|
.short _02237B44 - _022378F4 - 2 ; case 0
|
|
.short _02237B44 - _022378F4 - 2 ; case 1
|
|
.short _0223790E - _022378F4 - 2 ; case 2
|
|
.short _02237B38 - _022378F4 - 2 ; case 3
|
|
.short _02237958 - _022378F4 - 2 ; case 4
|
|
.short _02237B38 - _022378F4 - 2 ; case 5
|
|
.short _022379C8 - _022378F4 - 2 ; case 6
|
|
.short _02237B38 - _022378F4 - 2 ; case 7
|
|
.short _02237A3A - _022378F4 - 2 ; case 8
|
|
.short _02237B38 - _022378F4 - 2 ; case 9
|
|
.short _02237AAC - _022378F4 - 2 ; case 10
|
|
.short _02237B38 - _022378F4 - 2 ; case 11
|
|
.short _02237B44 - _022378F4 - 2 ; case 12
|
|
_0223790E:
|
|
bl ov38_0221BF48
|
|
cmp r0, #1
|
|
beq _0223791C
|
|
cmp r0, #7
|
|
beq _02237934
|
|
pop {r3, pc}
|
|
_0223791C:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
bl ov38_0221C014
|
|
bl ov72_02237D88
|
|
ldr r1, _02237B48 ; =_0223B820
|
|
str r0, [r1, #4]
|
|
bl ov38_0221BFEC
|
|
pop {r3, pc}
|
|
_02237934:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
bl ov38_0221C020
|
|
cmp r0, #0
|
|
ble _0223794A
|
|
ldr r0, _02237B4C ; =ov72_0223B920
|
|
ldrb r1, [r0, #3]
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
b _02237950
|
|
_0223794A:
|
|
mov r1, #1
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mvn r1, r1
|
|
_02237950:
|
|
str r1, [r0, #4]
|
|
bl ov38_0221BFEC
|
|
pop {r3, pc}
|
|
_02237958:
|
|
bl ov38_0221BF48
|
|
cmp r0, #1
|
|
beq _02237966
|
|
cmp r0, #7
|
|
beq _0223797E
|
|
pop {r3, pc}
|
|
_02237966:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
bl ov38_0221C014
|
|
bl ov72_02237D88
|
|
ldr r1, _02237B48 ; =_0223B820
|
|
str r0, [r1, #4]
|
|
bl ov38_0221BFEC
|
|
pop {r3, pc}
|
|
_0223797E:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
bl ov38_0221C020
|
|
ldr r1, _02237B50 ; =0x00000A38
|
|
cmp r0, r1
|
|
bne _02237996
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0
|
|
str r1, [r0, #4]
|
|
b _022379C2
|
|
_02237996:
|
|
ldr r0, _02237B4C ; =ov72_0223B920
|
|
ldr r0, [r0, #8]
|
|
ldrb r0, [r0]
|
|
cmp r0, #2
|
|
beq _022379A6
|
|
cmp r0, #5
|
|
beq _022379B0
|
|
b _022379BA
|
|
_022379A6:
|
|
mov r1, #2
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mvn r1, r1
|
|
str r1, [r0, #4]
|
|
b _022379C2
|
|
_022379B0:
|
|
mov r1, #1
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mvn r1, r1
|
|
str r1, [r0, #4]
|
|
b _022379C2
|
|
_022379BA:
|
|
mov r1, #4
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mvn r1, r1
|
|
str r1, [r0, #4]
|
|
_022379C2:
|
|
bl ov38_0221BFEC
|
|
pop {r3, pc}
|
|
_022379C8:
|
|
bl ov38_0221BF48
|
|
cmp r0, #1
|
|
beq _022379D6
|
|
cmp r0, #7
|
|
beq _022379EE
|
|
pop {r3, pc}
|
|
_022379D6:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
bl ov38_0221C014
|
|
bl ov72_02237D88
|
|
ldr r1, _02237B48 ; =_0223B820
|
|
str r0, [r1, #4]
|
|
bl ov38_0221BFEC
|
|
pop {r3, pc}
|
|
_022379EE:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0xc
|
|
ldr r2, _02237B4C ; =ov72_0223B920
|
|
str r1, [r0]
|
|
ldrb r2, [r2, #3]
|
|
cmp r2, #5
|
|
bhi _02237A2C
|
|
add r2, r2, r2
|
|
add r2, pc
|
|
ldrh r2, [r2, #6]
|
|
lsl r2, r2, #0x10
|
|
asr r2, r2, #0x10
|
|
add pc, r2
|
|
_02237A08: ; jump table
|
|
.short _02237A2C - _02237A08 - 2 ; case 0
|
|
.short _02237A14 - _02237A08 - 2 ; case 1
|
|
.short _02237A1A - _02237A08 - 2 ; case 2
|
|
.short _02237A2C - _02237A08 - 2 ; case 3
|
|
.short _02237A20 - _02237A08 - 2 ; case 4
|
|
.short _02237A26 - _02237A08 - 2 ; case 5
|
|
_02237A14:
|
|
mov r1, #0
|
|
str r1, [r0, #4]
|
|
b _02237A34
|
|
_02237A1A:
|
|
sub r1, #0xf
|
|
str r1, [r0, #4]
|
|
b _02237A34
|
|
_02237A20:
|
|
sub r1, #0xd
|
|
str r1, [r0, #4]
|
|
b _02237A34
|
|
_02237A26:
|
|
sub r1, #0xe
|
|
str r1, [r0, #4]
|
|
b _02237A34
|
|
_02237A2C:
|
|
mov r1, #4
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mvn r1, r1
|
|
str r1, [r0, #4]
|
|
_02237A34:
|
|
bl ov38_0221BFEC
|
|
pop {r3, pc}
|
|
_02237A3A:
|
|
bl ov38_0221BF48
|
|
cmp r0, #1
|
|
beq _02237A48
|
|
cmp r0, #7
|
|
beq _02237A60
|
|
pop {r3, pc}
|
|
_02237A48:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
bl ov38_0221C014
|
|
bl ov72_02237D88
|
|
ldr r1, _02237B48 ; =_0223B820
|
|
str r0, [r1, #4]
|
|
bl ov38_0221BFEC
|
|
pop {r3, pc}
|
|
_02237A60:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0xc
|
|
ldr r2, _02237B4C ; =ov72_0223B920
|
|
str r1, [r0]
|
|
ldrb r2, [r2, #3]
|
|
cmp r2, #5
|
|
bhi _02237A9E
|
|
add r2, r2, r2
|
|
add r2, pc
|
|
ldrh r2, [r2, #6]
|
|
lsl r2, r2, #0x10
|
|
asr r2, r2, #0x10
|
|
add pc, r2
|
|
_02237A7A: ; jump table
|
|
.short _02237A9E - _02237A7A - 2 ; case 0
|
|
.short _02237A86 - _02237A7A - 2 ; case 1
|
|
.short _02237A9E - _02237A7A - 2 ; case 2
|
|
.short _02237A8C - _02237A7A - 2 ; case 3
|
|
.short _02237A92 - _02237A7A - 2 ; case 4
|
|
.short _02237A98 - _02237A7A - 2 ; case 5
|
|
_02237A86:
|
|
mov r1, #0
|
|
str r1, [r0, #4]
|
|
b _02237AA6
|
|
_02237A8C:
|
|
mov r1, #1
|
|
str r1, [r0, #4]
|
|
b _02237AA6
|
|
_02237A92:
|
|
mov r1, #2
|
|
str r1, [r0, #4]
|
|
b _02237AA6
|
|
_02237A98:
|
|
sub r1, #0xe
|
|
str r1, [r0, #4]
|
|
b _02237AA6
|
|
_02237A9E:
|
|
mov r1, #4
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mvn r1, r1
|
|
str r1, [r0, #4]
|
|
_02237AA6:
|
|
bl ov38_0221BFEC
|
|
pop {r3, pc}
|
|
_02237AAC:
|
|
bl ov38_0221BF48
|
|
cmp r0, #1
|
|
beq _02237ABA
|
|
cmp r0, #7
|
|
beq _02237AD2
|
|
pop {r3, pc}
|
|
_02237ABA:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
bl ov38_0221C014
|
|
bl ov72_02237D88
|
|
ldr r1, _02237B48 ; =_0223B820
|
|
str r0, [r1, #4]
|
|
bl ov38_0221BFEC
|
|
pop {r3, pc}
|
|
_02237AD2:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
bl ov38_0221C020
|
|
cmp r0, #8
|
|
bne _02237AE8
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0
|
|
str r1, [r0, #4]
|
|
b _02237B32
|
|
_02237AE8:
|
|
ldr r0, _02237B4C ; =ov72_0223B920
|
|
ldrb r0, [r0, #3]
|
|
cmp r0, #5
|
|
bhi _02237B2A
|
|
add r0, r0, r0
|
|
add r0, pc
|
|
ldrh r0, [r0, #6]
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
add pc, r0
|
|
_02237AFC: ; jump table
|
|
.short _02237B2A - _02237AFC - 2 ; case 0
|
|
.short _02237B08 - _02237AFC - 2 ; case 1
|
|
.short _02237B2A - _02237AFC - 2 ; case 2
|
|
.short _02237B10 - _02237AFC - 2 ; case 3
|
|
.short _02237B18 - _02237AFC - 2 ; case 4
|
|
.short _02237B20 - _02237AFC - 2 ; case 5
|
|
_02237B08:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #0
|
|
str r1, [r0, #4]
|
|
b _02237B32
|
|
_02237B10:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #1
|
|
str r1, [r0, #4]
|
|
b _02237B32
|
|
_02237B18:
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mov r1, #2
|
|
str r1, [r0, #4]
|
|
b _02237B32
|
|
_02237B20:
|
|
mov r1, #1
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mvn r1, r1
|
|
str r1, [r0, #4]
|
|
b _02237B32
|
|
_02237B2A:
|
|
mov r1, #4
|
|
ldr r0, _02237B48 ; =_0223B820
|
|
mvn r1, r1
|
|
str r1, [r0, #4]
|
|
_02237B32:
|
|
bl ov38_0221BFEC
|
|
pop {r3, pc}
|
|
_02237B38:
|
|
mov r0, #0xc
|
|
str r0, [r1]
|
|
sub r0, #0x10
|
|
str r0, [r1, #4]
|
|
bl ov38_0221BFEC
|
|
_02237B44:
|
|
pop {r3, pc}
|
|
nop
|
|
_02237B48: .word _0223B820
|
|
_02237B4C: .word ov72_0223B920
|
|
_02237B50: .word 0x00000A38
|
|
thumb_func_end ov72_022378DC
|
|
|
|
thumb_func_start ov72_02237B54
|
|
ov72_02237B54: ; 0x02237B54
|
|
ldr r1, _02237B70 ; =_0223B820
|
|
ldr r0, [r1]
|
|
cmp r0, #1
|
|
beq _02237B62
|
|
cmp r0, #0xc
|
|
beq _02237B66
|
|
b _02237B6C
|
|
_02237B62:
|
|
mov r0, #1
|
|
bx lr
|
|
_02237B66:
|
|
mov r0, #1
|
|
str r0, [r1]
|
|
bx lr
|
|
_02237B6C:
|
|
mov r0, #0
|
|
bx lr
|
|
.balign 4, 0
|
|
_02237B70: .word _0223B820
|
|
thumb_func_end ov72_02237B54
|
|
|
|
thumb_func_start ov72_02237B74
|
|
ov72_02237B74: ; 0x02237B74
|
|
ldr r0, _02237B7C ; =_0223B820
|
|
ldr r0, [r0, #4]
|
|
bx lr
|
|
nop
|
|
_02237B7C: .word _0223B820
|
|
thumb_func_end ov72_02237B74
|
|
|
|
thumb_func_start ov72_02237B80
|
|
ov72_02237B80: ; 0x02237B80
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
add r4, r0, #0
|
|
bl ov38_0221BE84
|
|
ldr r0, _02237BC0 ; =_0223B820
|
|
sub r1, r4, #1
|
|
strb r1, [r0, #0x14]
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
ldr r0, _02237BC4 ; =_0223B4E0
|
|
ldr r1, _02237BC8 ; =ov72_0223B834
|
|
ldr r3, _02237BCC ; =ov72_0223B923
|
|
mov r2, #1
|
|
bl ov72_02237D50
|
|
cmp r0, #0
|
|
beq _02237BAE
|
|
ldr r0, _02237BC0 ; =_0223B820
|
|
mov r1, #2
|
|
str r1, [r0]
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
_02237BAE:
|
|
ldr r0, _02237BC0 ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
sub r1, #0x11
|
|
str r1, [r0, #4]
|
|
bl ov38_0221BFEC
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
.balign 4, 0
|
|
_02237BC0: .word _0223B820
|
|
_02237BC4: .word _0223B4E0
|
|
_02237BC8: .word ov72_0223B834
|
|
_02237BCC: .word ov72_0223B923
|
|
thumb_func_end ov72_02237B80
|
|
|
|
thumb_func_start ov72_02237BD0
|
|
ov72_02237BD0: ; 0x02237BD0
|
|
push {r3, r4, r5, r6, lr}
|
|
sub sp, #4
|
|
add r5, r0, #0
|
|
ldr r0, _02237C1C ; =ov72_0223B920
|
|
add r6, r2, #0
|
|
add r4, r1, #0
|
|
str r6, [r0, #8]
|
|
bl ov38_0221BE84
|
|
ldr r0, _02237C20 ; =_0223B820
|
|
sub r1, r5, #1
|
|
strb r1, [r0, #0x14]
|
|
sub r1, r4, #1
|
|
strb r1, [r0, #0x15]
|
|
ldr r0, _02237C24 ; =0x00000A38
|
|
ldr r1, _02237C28 ; =ov72_0223B834
|
|
str r0, [sp]
|
|
ldr r0, _02237C2C ; =ov72_0223B52C
|
|
mov r2, #2
|
|
add r3, r6, #0
|
|
bl ov72_02237D50
|
|
cmp r0, #0
|
|
beq _02237C0A
|
|
ldr r0, _02237C20 ; =_0223B820
|
|
mov r1, #4
|
|
str r1, [r0]
|
|
add sp, #4
|
|
pop {r3, r4, r5, r6, pc}
|
|
_02237C0A:
|
|
ldr r0, _02237C20 ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
sub r1, #0x11
|
|
str r1, [r0, #4]
|
|
bl ov38_0221BFEC
|
|
add sp, #4
|
|
pop {r3, r4, r5, r6, pc}
|
|
.balign 4, 0
|
|
_02237C1C: .word ov72_0223B920
|
|
_02237C20: .word _0223B820
|
|
_02237C24: .word 0x00000A38
|
|
_02237C28: .word ov72_0223B834
|
|
_02237C2C: .word ov72_0223B52C
|
|
thumb_func_end ov72_02237BD0
|
|
|
|
thumb_func_start ov72_02237C30
|
|
ov72_02237C30: ; 0x02237C30
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
add r5, r0, #0
|
|
add r6, r1, #0
|
|
add r7, r2, #0
|
|
add r4, r3, #0
|
|
bl ov38_0221BE84
|
|
ldr r0, _02237C94 ; =ov72_0223B834
|
|
add r1, r4, #0
|
|
mov r2, #0xe4
|
|
bl memcpy
|
|
ldr r0, _02237C98 ; =ov72_0223B900
|
|
sub r1, r5, #1
|
|
strb r1, [r0, #0x18]
|
|
sub r1, r6, #1
|
|
strb r1, [r0, #0x19]
|
|
ldr r3, _02237C9C ; =ov72_0223B91B
|
|
ldr r2, _02237CA0 ; =ov72_0223B82C
|
|
strb r7, [r0, #0x1a]
|
|
mov r1, #8
|
|
_02237C5A:
|
|
ldrb r0, [r2]
|
|
add r2, r2, #1
|
|
strb r0, [r3]
|
|
add r3, r3, #1
|
|
sub r1, r1, #1
|
|
bne _02237C5A
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
ldr r0, _02237CA4 ; =ov72_0223B578
|
|
ldr r1, _02237C94 ; =ov72_0223B834
|
|
ldr r3, _02237CA8 ; =ov72_0223B923
|
|
mov r2, #0xef
|
|
bl ov72_02237D50
|
|
cmp r0, #0
|
|
beq _02237C82
|
|
ldr r0, _02237CAC ; =_0223B820
|
|
mov r1, #6
|
|
str r1, [r0]
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_02237C82:
|
|
ldr r0, _02237CAC ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
sub r1, #0x11
|
|
str r1, [r0, #4]
|
|
bl ov38_0221BFEC
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
nop
|
|
_02237C94: .word ov72_0223B834
|
|
_02237C98: .word ov72_0223B900
|
|
_02237C9C: .word ov72_0223B91B
|
|
_02237CA0: .word ov72_0223B82C
|
|
_02237CA4: .word ov72_0223B578
|
|
_02237CA8: .word ov72_0223B923
|
|
_02237CAC: .word _0223B820
|
|
thumb_func_end ov72_02237C30
|
|
|
|
thumb_func_start ov72_02237CB0
|
|
ov72_02237CB0: ; 0x02237CB0
|
|
push {r3, lr}
|
|
bl ov38_0221BE84
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
ldr r0, _02237CE4 ; =ov72_0223B5C4
|
|
ldr r1, _02237CE8 ; =ov72_0223B834
|
|
ldr r3, _02237CEC ; =ov72_0223B923
|
|
mov r2, #0
|
|
bl ov72_02237D50
|
|
cmp r0, #0
|
|
beq _02237CD2
|
|
ldr r0, _02237CF0 ; =_0223B820
|
|
mov r1, #8
|
|
str r1, [r0]
|
|
pop {r3, pc}
|
|
_02237CD2:
|
|
ldr r0, _02237CF0 ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
sub r1, #0x11
|
|
str r1, [r0, #4]
|
|
bl ov38_0221BFEC
|
|
pop {r3, pc}
|
|
nop
|
|
_02237CE4: .word ov72_0223B5C4
|
|
_02237CE8: .word ov72_0223B834
|
|
_02237CEC: .word ov72_0223B923
|
|
_02237CF0: .word _0223B820
|
|
thumb_func_end ov72_02237CB0
|
|
|
|
thumb_func_start ov72_02237CF4
|
|
ov72_02237CF4: ; 0x02237CF4
|
|
push {r3, r4, r5, lr}
|
|
add r5, r0, #0
|
|
add r0, #0x1c
|
|
add r4, r1, #0
|
|
bl OS_GetMacAddress
|
|
ldr r0, _02237D40 ; =ov72_0223B834
|
|
add r1, r5, #0
|
|
mov r2, #0x64
|
|
bl memcpy
|
|
ldr r0, _02237D44 ; =ov72_0223B920
|
|
str r4, [r0, #8]
|
|
bl ov38_0221BE84
|
|
mov r0, #8
|
|
str r0, [sp]
|
|
ldr r3, _02237D44 ; =ov72_0223B920
|
|
ldr r0, _02237D48 ; =ov72_0223B60C
|
|
ldr r1, _02237D40 ; =ov72_0223B834
|
|
ldr r3, [r3, #8]
|
|
mov r2, #0x64
|
|
bl ov72_02237D50
|
|
cmp r0, #0
|
|
beq _02237D30
|
|
ldr r0, _02237D4C ; =_0223B820
|
|
mov r1, #0xa
|
|
str r1, [r0]
|
|
pop {r3, r4, r5, pc}
|
|
_02237D30:
|
|
ldr r0, _02237D4C ; =_0223B820
|
|
mov r1, #0xc
|
|
str r1, [r0]
|
|
sub r1, #0x11
|
|
str r1, [r0, #4]
|
|
bl ov38_0221BFEC
|
|
pop {r3, r4, r5, pc}
|
|
.balign 4, 0
|
|
_02237D40: .word ov72_0223B834
|
|
_02237D44: .word ov72_0223B920
|
|
_02237D48: .word ov72_0223B60C
|
|
_02237D4C: .word _0223B820
|
|
thumb_func_end ov72_02237CF4
|
|
|
|
thumb_func_start ov72_02237D50
|
|
ov72_02237D50: ; 0x02237D50
|
|
push {r3, r4, r5, lr}
|
|
sub sp, #8
|
|
add r5, r1, #0
|
|
ldr r1, [sp, #0x18]
|
|
str r3, [sp]
|
|
str r1, [sp, #4]
|
|
add r4, r2, #0
|
|
ldr r1, _02237D84 ; =_0223B820
|
|
add r2, r5, #0
|
|
ldr r1, [r1, #8]
|
|
add r3, r4, #0
|
|
bl ov38_0221BEA8
|
|
cmp r0, #0
|
|
beq _02237D76
|
|
cmp r0, #1
|
|
beq _02237D7C
|
|
cmp r0, #2
|
|
b _02237D7C
|
|
_02237D76:
|
|
add sp, #8
|
|
mov r0, #1
|
|
pop {r3, r4, r5, pc}
|
|
_02237D7C:
|
|
mov r0, #0
|
|
add sp, #8
|
|
pop {r3, r4, r5, pc}
|
|
nop
|
|
_02237D84: .word _0223B820
|
|
thumb_func_end ov72_02237D50
|
|
|
|
thumb_func_start ov72_02237D88
|
|
ov72_02237D88: ; 0x02237D88
|
|
push {r4, lr}
|
|
cmp r0, #0x20
|
|
bhi _02237E00
|
|
add r0, r0, r0
|
|
add r0, pc
|
|
ldrh r0, [r0, #6]
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
add pc, r0
|
|
_02237D9A: ; jump table
|
|
.short _02237DDC - _02237D9A - 2 ; case 0
|
|
.short _02237DDC - _02237D9A - 2 ; case 1
|
|
.short _02237DE2 - _02237D9A - 2 ; case 2
|
|
.short _02237DDC - _02237D9A - 2 ; case 3
|
|
.short _02237DDC - _02237D9A - 2 ; case 4
|
|
.short _02237DDC - _02237D9A - 2 ; case 5
|
|
.short _02237DDC - _02237D9A - 2 ; case 6
|
|
.short _02237E00 - _02237D9A - 2 ; case 7
|
|
.short _02237DE2 - _02237D9A - 2 ; case 8
|
|
.short _02237DDC - _02237D9A - 2 ; case 9
|
|
.short _02237DDC - _02237D9A - 2 ; case 10
|
|
.short _02237DE8 - _02237D9A - 2 ; case 11
|
|
.short _02237DEE - _02237D9A - 2 ; case 12
|
|
.short _02237DEE - _02237D9A - 2 ; case 13
|
|
.short _02237DDC - _02237D9A - 2 ; case 14
|
|
.short _02237DFA - _02237D9A - 2 ; case 15
|
|
.short _02237DF4 - _02237D9A - 2 ; case 16
|
|
.short _02237DF4 - _02237D9A - 2 ; case 17
|
|
.short _02237DF4 - _02237D9A - 2 ; case 18
|
|
.short _02237DF4 - _02237D9A - 2 ; case 19
|
|
.short _02237DDC - _02237D9A - 2 ; case 20
|
|
.short _02237DDC - _02237D9A - 2 ; case 21
|
|
.short _02237DDC - _02237D9A - 2 ; case 22
|
|
.short _02237DDC - _02237D9A - 2 ; case 23
|
|
.short _02237E00 - _02237D9A - 2 ; case 24
|
|
.short _02237DE2 - _02237D9A - 2 ; case 25
|
|
.short _02237DF4 - _02237D9A - 2 ; case 26
|
|
.short _02237DF4 - _02237D9A - 2 ; case 27
|
|
.short _02237DF4 - _02237D9A - 2 ; case 28
|
|
.short _02237DF4 - _02237D9A - 2 ; case 29
|
|
.short _02237DFA - _02237D9A - 2 ; case 30
|
|
.short _02237DF4 - _02237D9A - 2 ; case 31
|
|
.short _02237DDC - _02237D9A - 2 ; case 32
|
|
_02237DDC:
|
|
mov r4, #4
|
|
mvn r4, r4
|
|
b _02237E04
|
|
_02237DE2:
|
|
mov r4, #4
|
|
mvn r4, r4
|
|
b _02237E04
|
|
_02237DE8:
|
|
mov r4, #6
|
|
mvn r4, r4
|
|
b _02237E04
|
|
_02237DEE:
|
|
mov r4, #6
|
|
mvn r4, r4
|
|
b _02237E04
|
|
_02237DF4:
|
|
mov r4, #1
|
|
mvn r4, r4
|
|
b _02237E04
|
|
_02237DFA:
|
|
mov r4, #1
|
|
mvn r4, r4
|
|
b _02237E04
|
|
_02237E00:
|
|
mov r4, #4
|
|
mvn r4, r4
|
|
_02237E04:
|
|
mov r0, #4
|
|
mvn r0, r0
|
|
cmp r4, r0
|
|
beq _02237E1C
|
|
bl WCM_GetPhase
|
|
cmp r0, #9
|
|
beq _02237E18
|
|
mov r4, #5
|
|
mvn r4, r4
|
|
_02237E18:
|
|
bl ov00_021EC210
|
|
_02237E1C:
|
|
add r0, r4, #0
|
|
pop {r4, pc}
|
|
thumb_func_end ov72_02237D88
|
|
|
|
thumb_func_start ov72_02237E20
|
|
ov72_02237E20: ; 0x02237E20
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #0x10
|
|
add r5, r1, #0
|
|
add r6, r0, #0
|
|
ldr r0, [r5]
|
|
cmp r0, #0
|
|
beq _02237E36
|
|
cmp r0, #1
|
|
bne _02237E34
|
|
b _02237F4A
|
|
_02237E34:
|
|
b _02237F60
|
|
_02237E36:
|
|
mov r0, #0
|
|
add r1, r0, #0
|
|
bl Main_SetVBlankIntrCB
|
|
bl HBlankInterruptDisable
|
|
bl GX_DisableEngineALayers
|
|
bl GX_DisableEngineBLayers
|
|
mov r2, #1
|
|
lsl r2, r2, #0x1a
|
|
ldr r1, [r2]
|
|
ldr r0, _02237F68 ; =0xFFFFE0FF
|
|
and r1, r0
|
|
str r1, [r2]
|
|
ldr r2, _02237F6C ; =0x04001000
|
|
ldr r1, [r2]
|
|
and r0, r1
|
|
str r0, [r2]
|
|
mov r2, #5
|
|
mov r0, #3
|
|
mov r1, #0x43
|
|
lsl r2, r2, #0x10
|
|
bl CreateHeap
|
|
bl LoadDwcOverlay
|
|
bl LoadOVY38
|
|
mov r0, #0x43
|
|
bl sub_02039FD8
|
|
ldr r1, _02237F70 ; =0x000013A4
|
|
add r0, r6, #0
|
|
mov r2, #0x43
|
|
bl OverlayManager_CreateAndGetData
|
|
ldr r2, _02237F70 ; =0x000013A4
|
|
mov r1, #0
|
|
add r4, r0, #0
|
|
bl memset
|
|
mov r0, #0x43
|
|
bl BgConfig_Alloc
|
|
str r0, [r4, #4]
|
|
ldr r0, _02237F74 ; =ov72_0223B92C
|
|
add r2, sp, #0
|
|
ldr r3, _02237F78 ; =ov72_0223B354
|
|
str r4, [r0, #4]
|
|
add r7, r2, #0
|
|
ldmia r3!, {r0, r1}
|
|
stmia r2!, {r0, r1}
|
|
ldmia r3!, {r0, r1}
|
|
stmia r2!, {r0, r1}
|
|
add r0, r7, #0
|
|
bl SetBothScreensModesAndDisable
|
|
mov r0, #0xb
|
|
mov r1, #0x20
|
|
mov r2, #0x43
|
|
bl MessageFormat_New_Custom
|
|
mov r1, #0xbd
|
|
lsl r1, r1, #4
|
|
str r0, [r4, r1]
|
|
ldr r2, _02237F7C ; =0x00000306
|
|
mov r0, #0
|
|
mov r1, #0x1b
|
|
mov r3, #0x43
|
|
bl NewMsgDataFromNarc
|
|
ldr r1, _02237F80 ; =0x00000BD4
|
|
ldr r2, _02237F84 ; =0x0000030A
|
|
str r0, [r4, r1]
|
|
mov r0, #0
|
|
mov r1, #0x1b
|
|
mov r3, #0x43
|
|
bl NewMsgDataFromNarc
|
|
ldr r1, _02237F88 ; =0x00000BD8
|
|
str r0, [r4, r1]
|
|
mov r2, #0x32
|
|
mov r0, #0
|
|
mov r1, #0x1b
|
|
lsl r2, r2, #4
|
|
mov r3, #0x43
|
|
bl NewMsgDataFromNarc
|
|
ldr r1, _02237F8C ; =0x00000BDC
|
|
str r0, [r4, r1]
|
|
mov r0, #4
|
|
mov r1, #8
|
|
bl SetKeyRepeatTimers
|
|
add r0, r4, #0
|
|
add r1, r6, #0
|
|
bl ov72_02238144
|
|
add r0, r4, #0
|
|
bl ov72_022387D8
|
|
mov r1, #0
|
|
mov r0, #0x34
|
|
add r2, r1, #0
|
|
bl sub_02004EC4
|
|
ldr r1, _02237F90 ; =0x00020020
|
|
mov r0, #0x43
|
|
bl AllocFromHeap
|
|
str r0, [r4, #0x24]
|
|
add r0, #0x1f
|
|
mov r1, #0x1f
|
|
bic r0, r1
|
|
mov r1, #2
|
|
lsl r1, r1, #0x10
|
|
mov r2, #0
|
|
bl NNS_FndCreateExpHeapEx
|
|
str r0, [r4, #0x28]
|
|
ldr r1, _02237F94 ; =0x0000047D
|
|
mov r0, #0xb
|
|
mov r2, #1
|
|
bl sub_02004EC4
|
|
mov r0, #1
|
|
bl sub_02002B8C
|
|
ldr r2, _02237F98 ; =0x04000304
|
|
ldrh r1, [r2]
|
|
lsr r0, r2, #0xb
|
|
orr r0, r1
|
|
strh r0, [r2]
|
|
mov r0, #1
|
|
str r0, [r5]
|
|
b _02237F60
|
|
_02237F4A:
|
|
bl sub_02034D8C
|
|
mov r0, #4
|
|
mov r1, #0x43
|
|
bl FontID_Alloc
|
|
mov r0, #0
|
|
str r0, [r5]
|
|
add sp, #0x10
|
|
mov r0, #1
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
_02237F60:
|
|
mov r0, #0
|
|
add sp, #0x10
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
nop
|
|
_02237F68: .word 0xFFFFE0FF
|
|
_02237F6C: .word 0x04001000
|
|
_02237F70: .word 0x000013A4
|
|
_02237F74: .word ov72_0223B92C
|
|
_02237F78: .word ov72_0223B354
|
|
_02237F7C: .word 0x00000306
|
|
_02237F80: .word 0x00000BD4
|
|
_02237F84: .word 0x0000030A
|
|
_02237F88: .word 0x00000BD8
|
|
_02237F8C: .word 0x00000BDC
|
|
_02237F90: .word 0x00020020
|
|
_02237F94: .word 0x0000047D
|
|
_02237F98: .word 0x04000304
|
|
thumb_func_end ov72_02237E20
|
|
|
|
thumb_func_start ov72_02237F9C
|
|
ov72_02237F9C: ; 0x02237F9C
|
|
push {r4, r5, r6, lr}
|
|
add r4, r1, #0
|
|
bl OverlayManager_GetData
|
|
add r5, r0, #0
|
|
bl ov00_021ECB40
|
|
bl ov72_022378DC
|
|
bl ov00_021ECB40
|
|
ldr r1, [r4]
|
|
cmp r1, #5
|
|
bhi _02238044
|
|
add r0, r1, r1
|
|
add r0, pc
|
|
ldrh r0, [r0, #6]
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
add pc, r0
|
|
_02237FC4: ; jump table
|
|
.short _02237FD0 - _02237FC4 - 2 ; case 0
|
|
.short _02237FEC - _02237FC4 - 2 ; case 1
|
|
.short _02238000 - _02237FC4 - 2 ; case 2
|
|
.short _0223800E - _02237FC4 - 2 ; case 3
|
|
.short _02238022 - _02237FC4 - 2 ; case 4
|
|
.short _02238040 - _02237FC4 - 2 ; case 5
|
|
_02237FD0:
|
|
bl sub_02034DB8
|
|
cmp r0, #0
|
|
beq _02238044
|
|
ldr r1, [r5, #0x28]
|
|
ldr r0, _02238054 ; =ov72_0223B92C
|
|
str r1, [r0]
|
|
ldr r0, _02238058 ; =ov72_02238778
|
|
ldr r1, _0223805C ; =ov72_022387A0
|
|
bl ov00_021EC294
|
|
mov r0, #1
|
|
str r0, [r4]
|
|
b _02238044
|
|
_02237FEC:
|
|
ldr r3, [r5, #0x10]
|
|
mov r2, #0xc
|
|
add r6, r3, #0
|
|
mul r6, r2
|
|
ldr r2, _02238060 ; =ov72_0223B654
|
|
add r0, r5, #0
|
|
ldr r2, [r2, r6]
|
|
blx r2
|
|
str r0, [r4]
|
|
b _02238044
|
|
_02238000:
|
|
bl IsPaletteFadeFinished
|
|
cmp r0, #0
|
|
beq _02238044
|
|
mov r0, #3
|
|
str r0, [r4]
|
|
b _02238044
|
|
_0223800E:
|
|
ldr r3, [r5, #0x10]
|
|
mov r2, #0xc
|
|
add r6, r3, #0
|
|
mul r6, r2
|
|
ldr r2, _02238064 ; =ov72_0223B658
|
|
add r0, r5, #0
|
|
ldr r2, [r2, r6]
|
|
blx r2
|
|
str r0, [r4]
|
|
b _02238044
|
|
_02238022:
|
|
bl IsPaletteFadeFinished
|
|
cmp r0, #0
|
|
beq _02238044
|
|
ldr r3, [r5, #0x10]
|
|
mov r2, #0xc
|
|
add r6, r3, #0
|
|
mul r6, r2
|
|
ldr r2, _02238068 ; =ov72_0223B65C
|
|
ldr r1, [r4]
|
|
ldr r2, [r2, r6]
|
|
add r0, r5, #0
|
|
blx r2
|
|
str r0, [r4]
|
|
b _02238044
|
|
_02238040:
|
|
mov r0, #1
|
|
pop {r4, r5, r6, pc}
|
|
_02238044:
|
|
ldr r0, _0223806C ; =0x00000BF8
|
|
ldr r0, [r5, r0]
|
|
cmp r0, #0
|
|
beq _02238050
|
|
bl sub_0202457C
|
|
_02238050:
|
|
mov r0, #0
|
|
pop {r4, r5, r6, pc}
|
|
.balign 4, 0
|
|
_02238054: .word ov72_0223B92C
|
|
_02238058: .word ov72_02238778
|
|
_0223805C: .word ov72_022387A0
|
|
_02238060: .word ov72_0223B654
|
|
_02238064: .word ov72_0223B658
|
|
_02238068: .word ov72_0223B65C
|
|
_0223806C: .word 0x00000BF8
|
|
thumb_func_end ov72_02237F9C
|
|
|
|
thumb_func_start ov72_02238070
|
|
ov72_02238070: ; 0x02238070
|
|
push {r3, r4, r5, lr}
|
|
add r5, r0, #0
|
|
bl OverlayManager_GetData
|
|
add r4, r0, #0
|
|
bl IsPaletteFadeFinished
|
|
cmp r0, #0
|
|
bne _02238086
|
|
mov r0, #0
|
|
pop {r3, r4, r5, pc}
|
|
_02238086:
|
|
mov r0, #0
|
|
bl sub_02002B8C
|
|
mov r0, #4
|
|
bl FontID_Release
|
|
ldr r0, [r4, #0x24]
|
|
bl FreeToHeap
|
|
bl UnloadOVY38
|
|
bl UnloadDwcOverlay
|
|
add r0, r4, #0
|
|
bl ov72_02238800
|
|
ldr r0, _022380F0 ; =0x00000BDC
|
|
ldr r0, [r4, r0]
|
|
bl DestroyMsgData
|
|
ldr r0, _022380F4 ; =0x00000BD8
|
|
ldr r0, [r4, r0]
|
|
bl DestroyMsgData
|
|
ldr r0, _022380F8 ; =0x00000BD4
|
|
ldr r0, [r4, r0]
|
|
bl DestroyMsgData
|
|
mov r0, #0xbd
|
|
lsl r0, r0, #4
|
|
ldr r0, [r4, r0]
|
|
bl MessageFormat_Delete
|
|
add r0, r4, #0
|
|
bl ov72_02238160
|
|
bl sub_02034DE0
|
|
ldr r0, [r4, #4]
|
|
bl FreeToHeap
|
|
add r0, r5, #0
|
|
bl OverlayManager_FreeData
|
|
mov r0, #0
|
|
add r1, r0, #0
|
|
bl Main_SetVBlankIntrCB
|
|
mov r0, #0x43
|
|
bl DestroyHeap
|
|
mov r0, #1
|
|
pop {r3, r4, r5, pc}
|
|
.balign 4, 0
|
|
_022380F0: .word 0x00000BDC
|
|
_022380F4: .word 0x00000BD8
|
|
_022380F8: .word 0x00000BD4
|
|
thumb_func_end ov72_02238070
|
|
|
|
thumb_func_start ov72_022380FC
|
|
ov72_022380FC: ; 0x022380FC
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl GF_RunVramTransferTasks
|
|
ldr r0, [r4, #4]
|
|
bl DoScheduledBgGpuUpdates
|
|
bl OamManager_ApplyAndResetBuffers
|
|
ldr r3, _0223811C ; =0x027E0000
|
|
ldr r1, _02238120 ; =0x00003FF8
|
|
mov r0, #1
|
|
ldr r2, [r3, r1]
|
|
orr r0, r2
|
|
str r0, [r3, r1]
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_0223811C: .word 0x027E0000
|
|
_02238120: .word 0x00003FF8
|
|
thumb_func_end ov72_022380FC
|
|
|
|
thumb_func_start ov72_02238124
|
|
ov72_02238124: ; 0x02238124
|
|
push {r4, lr}
|
|
sub sp, #0x28
|
|
ldr r4, _02238140 ; =ov72_0223B37C
|
|
add r3, sp, #0
|
|
mov r2, #5
|
|
_0223812E:
|
|
ldmia r4!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
sub r2, r2, #1
|
|
bne _0223812E
|
|
add r0, sp, #0
|
|
bl GX_SetBanks
|
|
add sp, #0x28
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_02238140: .word ov72_0223B37C
|
|
thumb_func_end ov72_02238124
|
|
|
|
thumb_func_start ov72_02238144
|
|
ov72_02238144: ; 0x02238144
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
add r0, r1, #0
|
|
bl OverlayManager_GetArgs
|
|
mov r1, #0
|
|
str r0, [r4]
|
|
add r0, r4, #0
|
|
add r2, r1, #0
|
|
str r1, [r4, #0x10]
|
|
bl ov72_022387D0
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_02238144
|
|
|
|
thumb_func_start ov72_02238160
|
|
ov72_02238160: ; 0x02238160
|
|
bx lr
|
|
.balign 4, 0
|
|
thumb_func_end ov72_02238160
|
|
|
|
thumb_func_start ov72_02238164
|
|
ov72_02238164: ; 0x02238164
|
|
push {r4, lr}
|
|
sub sp, #0x10
|
|
ldr r4, _02238190 ; =ov72_0223B344
|
|
add r3, sp, #0
|
|
add r2, r3, #0
|
|
ldmia r4!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
ldmia r4!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
add r0, r2, #0
|
|
bl sub_020215A0
|
|
mov r0, #0x14
|
|
mov r1, #0x43
|
|
bl sub_02022588
|
|
bl sub_020216C8
|
|
bl sub_02022638
|
|
add sp, #0x10
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_02238190: .word ov72_0223B344
|
|
thumb_func_end ov72_02238164
|
|
|
|
thumb_func_start ov72_02238194
|
|
ov72_02238194: ; 0x02238194
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #0x18
|
|
add r5, r0, #0
|
|
mov r0, #0xef
|
|
mov r1, #0x43
|
|
bl NARC_New
|
|
str r0, [sp, #0x14]
|
|
mov r0, #0xee
|
|
mov r1, #0x43
|
|
bl NARC_New
|
|
add r7, r0, #0
|
|
bl NNS_G2dInitOamManagerModule
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
mov r1, #0x7e
|
|
str r1, [sp, #4]
|
|
str r0, [sp, #8]
|
|
mov r3, #0x20
|
|
str r3, [sp, #0xc]
|
|
mov r2, #0x43
|
|
str r2, [sp, #0x10]
|
|
add r2, r0, #0
|
|
bl OamManager_Create
|
|
ldr r1, _022383AC ; =0x00000BFC
|
|
mov r0, #0x14
|
|
add r1, r5, r1
|
|
mov r2, #0x43
|
|
bl G2dRenderer_Init
|
|
ldr r1, _022383B0 ; =0x00000BF8
|
|
mov r2, #1
|
|
str r0, [r5, r1]
|
|
add r0, r1, #4
|
|
add r0, r5, r0
|
|
mov r1, #0
|
|
lsl r2, r2, #0x14
|
|
bl G2dRenderer_SetSubSurfaceCoords
|
|
mov r6, #0
|
|
add r4, r5, #0
|
|
_022381EC:
|
|
mov r0, #3
|
|
add r1, r6, #0
|
|
mov r2, #0x43
|
|
bl Create2DGfxResObjMan
|
|
ldr r1, _022383B4 ; =0x00000D24
|
|
add r6, r6, #1
|
|
str r0, [r4, r1]
|
|
add r4, r4, #4
|
|
cmp r6, #4
|
|
blt _022381EC
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
mov r0, #2
|
|
str r0, [sp, #4]
|
|
mov r0, #0x43
|
|
str r0, [sp, #8]
|
|
add r0, r1, #0
|
|
ldr r0, [r5, r0]
|
|
add r1, r7, #0
|
|
mov r2, #1
|
|
bl AddCharResObjFromOpenNarc
|
|
ldr r1, _022383B8 ; =0x00000D34
|
|
mov r2, #0
|
|
str r0, [r5, r1]
|
|
str r2, [sp]
|
|
mov r0, #2
|
|
str r0, [sp, #4]
|
|
mov r0, #3
|
|
str r0, [sp, #8]
|
|
mov r0, #0x43
|
|
sub r1, #0xc
|
|
str r0, [sp, #0xc]
|
|
ldr r0, [r5, r1]
|
|
add r1, r7, #0
|
|
add r3, r2, #0
|
|
bl AddPlttResObjFromOpenNarc
|
|
ldr r1, _022383BC ; =0x00000D38
|
|
mov r3, #0
|
|
str r0, [r5, r1]
|
|
str r3, [sp]
|
|
mov r2, #2
|
|
str r2, [sp, #4]
|
|
mov r0, #0x43
|
|
sub r1, #0xc
|
|
str r0, [sp, #8]
|
|
ldr r0, [r5, r1]
|
|
add r1, r7, #0
|
|
bl AddCellOrAnimResObjFromOpenNarc
|
|
ldr r1, _022383C0 ; =0x00000D3C
|
|
mov r3, #0
|
|
str r0, [r5, r1]
|
|
str r3, [sp]
|
|
mov r2, #3
|
|
str r2, [sp, #4]
|
|
mov r0, #0x43
|
|
sub r1, #0xc
|
|
str r0, [sp, #8]
|
|
ldr r0, [r5, r1]
|
|
add r1, r7, #0
|
|
bl AddCellOrAnimResObjFromOpenNarc
|
|
mov r1, #0x35
|
|
lsl r1, r1, #6
|
|
str r0, [r5, r1]
|
|
mov r0, #1
|
|
str r0, [sp]
|
|
mov r0, #2
|
|
str r0, [sp, #4]
|
|
mov r0, #0x43
|
|
sub r1, #0x1c
|
|
str r0, [sp, #8]
|
|
ldr r0, [r5, r1]
|
|
add r1, r7, #0
|
|
mov r2, #5
|
|
mov r3, #0
|
|
bl AddCharResObjFromOpenNarc
|
|
ldr r1, _022383C4 ; =0x00000D44
|
|
mov r2, #4
|
|
str r0, [r5, r1]
|
|
mov r0, #1
|
|
str r0, [sp]
|
|
mov r0, #2
|
|
str r0, [sp, #4]
|
|
mov r0, #3
|
|
str r0, [sp, #8]
|
|
mov r0, #0x43
|
|
sub r1, #0x1c
|
|
str r0, [sp, #0xc]
|
|
ldr r0, [r5, r1]
|
|
add r1, r7, #0
|
|
mov r3, #0
|
|
bl AddPlttResObjFromOpenNarc
|
|
ldr r1, _022383C8 ; =0x00000D48
|
|
mov r2, #6
|
|
str r0, [r5, r1]
|
|
mov r0, #1
|
|
str r0, [sp]
|
|
mov r0, #2
|
|
str r0, [sp, #4]
|
|
mov r0, #0x43
|
|
sub r1, #0x1c
|
|
str r0, [sp, #8]
|
|
ldr r0, [r5, r1]
|
|
add r1, r7, #0
|
|
mov r3, #0
|
|
bl AddCellOrAnimResObjFromOpenNarc
|
|
ldr r1, _022383CC ; =0x00000D4C
|
|
mov r2, #7
|
|
str r0, [r5, r1]
|
|
mov r0, #1
|
|
str r0, [sp]
|
|
mov r0, #3
|
|
str r0, [sp, #4]
|
|
mov r0, #0x43
|
|
sub r1, #0x1c
|
|
str r0, [sp, #8]
|
|
ldr r0, [r5, r1]
|
|
add r1, r7, #0
|
|
mov r3, #0
|
|
bl AddCellOrAnimResObjFromOpenNarc
|
|
mov r1, #0xd5
|
|
lsl r1, r1, #4
|
|
str r0, [r5, r1]
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
mov r0, #0x43
|
|
sub r1, #0x2c
|
|
str r0, [sp, #8]
|
|
ldr r0, [r5, r1]
|
|
ldr r1, [sp, #0x14]
|
|
mov r2, #0xc
|
|
mov r3, #0
|
|
bl AddCharResObjFromOpenNarc
|
|
ldr r1, _022383D0 ; =0x00000D54
|
|
mov r2, #0xb
|
|
str r0, [r5, r1]
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
mov r0, #1
|
|
str r0, [sp, #8]
|
|
mov r0, #0x43
|
|
sub r1, #0x2c
|
|
str r0, [sp, #0xc]
|
|
ldr r0, [r5, r1]
|
|
ldr r1, [sp, #0x14]
|
|
mov r3, #0
|
|
bl AddPlttResObjFromOpenNarc
|
|
ldr r1, _022383D4 ; =0x00000D58
|
|
mov r2, #0xd
|
|
str r0, [r5, r1]
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
mov r0, #0x43
|
|
sub r1, #0x2c
|
|
str r0, [sp, #8]
|
|
ldr r0, [r5, r1]
|
|
ldr r1, [sp, #0x14]
|
|
mov r3, #0
|
|
bl AddCellOrAnimResObjFromOpenNarc
|
|
ldr r1, _022383D8 ; =0x00000D5C
|
|
mov r2, #0xe
|
|
str r0, [r5, r1]
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
mov r0, #3
|
|
str r0, [sp, #4]
|
|
mov r0, #0x43
|
|
sub r1, #0x2c
|
|
str r0, [sp, #8]
|
|
ldr r0, [r5, r1]
|
|
ldr r1, [sp, #0x14]
|
|
mov r3, #0
|
|
bl AddCellOrAnimResObjFromOpenNarc
|
|
mov r1, #0xd6
|
|
lsl r1, r1, #4
|
|
str r0, [r5, r1]
|
|
sub r1, #0x2c
|
|
ldr r0, [r5, r1]
|
|
bl sub_0200ACF0
|
|
ldr r0, _022383C4 ; =0x00000D44
|
|
ldr r0, [r5, r0]
|
|
bl sub_0200ACF0
|
|
ldr r0, _022383D0 ; =0x00000D54
|
|
ldr r0, [r5, r0]
|
|
bl sub_0200ACF0
|
|
ldr r0, _022383BC ; =0x00000D38
|
|
ldr r0, [r5, r0]
|
|
bl sub_0200AF94
|
|
ldr r0, _022383C8 ; =0x00000D48
|
|
ldr r0, [r5, r0]
|
|
bl sub_0200AF94
|
|
ldr r0, _022383D4 ; =0x00000D58
|
|
ldr r0, [r5, r0]
|
|
bl sub_0200AF94
|
|
add r0, r7, #0
|
|
bl NARC_Delete
|
|
ldr r0, [sp, #0x14]
|
|
bl NARC_Delete
|
|
add sp, #0x18
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
nop
|
|
_022383AC: .word 0x00000BFC
|
|
_022383B0: .word 0x00000BF8
|
|
_022383B4: .word 0x00000D24
|
|
_022383B8: .word 0x00000D34
|
|
_022383BC: .word 0x00000D38
|
|
_022383C0: .word 0x00000D3C
|
|
_022383C4: .word 0x00000D44
|
|
_022383C8: .word 0x00000D48
|
|
_022383CC: .word 0x00000D4C
|
|
_022383D0: .word 0x00000D54
|
|
_022383D4: .word 0x00000D58
|
|
_022383D8: .word 0x00000D5C
|
|
thumb_func_end ov72_02238194
|
|
|
|
thumb_func_start ov72_022383DC
|
|
ov72_022383DC: ; 0x022383DC
|
|
push {r3, r4}
|
|
ldr r4, _02238404 ; =0x00000BF8
|
|
ldr r1, [r1, r4]
|
|
str r1, [r0]
|
|
str r2, [r0, #4]
|
|
mov r2, #0
|
|
mov r1, #1
|
|
str r2, [r0, #0x10]
|
|
lsl r1, r1, #0xc
|
|
str r1, [r0, #0x14]
|
|
str r1, [r0, #0x18]
|
|
str r1, [r0, #0x1c]
|
|
strh r2, [r0, #0x20]
|
|
mov r1, #1
|
|
str r1, [r0, #0x24]
|
|
str r3, [r0, #0x28]
|
|
mov r1, #0x43
|
|
str r1, [r0, #0x2c]
|
|
pop {r3, r4}
|
|
bx lr
|
|
.balign 4, 0
|
|
_02238404: .word 0x00000BF8
|
|
thumb_func_end ov72_022383DC
|
|
|
|
thumb_func_start ov72_02238408
|
|
ov72_02238408: ; 0x02238408
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0x5c
|
|
mov r1, #0
|
|
add r6, r0, #0
|
|
str r1, [sp]
|
|
sub r0, r1, #1
|
|
str r0, [sp, #4]
|
|
str r0, [sp, #8]
|
|
str r1, [sp, #0xc]
|
|
ldr r2, _02238638 ; =0x00000D24
|
|
str r1, [sp, #0x10]
|
|
ldr r0, [r6, r2]
|
|
add r3, r1, #0
|
|
str r0, [sp, #0x14]
|
|
add r0, r2, #4
|
|
ldr r0, [r6, r0]
|
|
str r0, [sp, #0x18]
|
|
add r0, r2, #0
|
|
add r0, #8
|
|
ldr r0, [r6, r0]
|
|
str r0, [sp, #0x1c]
|
|
add r0, r2, #0
|
|
add r0, #0xc
|
|
ldr r0, [r6, r0]
|
|
add r2, #0x40
|
|
str r0, [sp, #0x20]
|
|
str r1, [sp, #0x24]
|
|
add r0, r6, r2
|
|
add r2, r1, #0
|
|
str r1, [sp, #0x28]
|
|
bl CreateSpriteResourcesHeader
|
|
mov r1, #1
|
|
str r1, [sp]
|
|
sub r0, r1, #2
|
|
str r0, [sp, #4]
|
|
str r0, [sp, #8]
|
|
mov r0, #0
|
|
str r0, [sp, #0xc]
|
|
ldr r3, _02238638 ; =0x00000D24
|
|
str r0, [sp, #0x10]
|
|
ldr r2, [r6, r3]
|
|
str r2, [sp, #0x14]
|
|
add r2, r3, #4
|
|
ldr r2, [r6, r2]
|
|
str r2, [sp, #0x18]
|
|
add r2, r3, #0
|
|
add r2, #8
|
|
ldr r2, [r6, r2]
|
|
str r2, [sp, #0x1c]
|
|
add r2, r3, #0
|
|
add r2, #0xc
|
|
ldr r2, [r6, r2]
|
|
add r3, #0x64
|
|
str r2, [sp, #0x20]
|
|
str r0, [sp, #0x24]
|
|
str r0, [sp, #0x28]
|
|
add r0, r6, r3
|
|
add r2, r1, #0
|
|
add r3, r1, #0
|
|
bl CreateSpriteResourcesHeader
|
|
mov r1, #2
|
|
str r1, [sp]
|
|
sub r0, r1, #3
|
|
str r0, [sp, #4]
|
|
str r0, [sp, #8]
|
|
mov r0, #0
|
|
str r0, [sp, #0xc]
|
|
ldr r3, _02238638 ; =0x00000D24
|
|
str r0, [sp, #0x10]
|
|
ldr r2, [r6, r3]
|
|
str r2, [sp, #0x14]
|
|
add r2, r3, #4
|
|
ldr r2, [r6, r2]
|
|
str r2, [sp, #0x18]
|
|
add r2, r3, #0
|
|
add r2, #8
|
|
ldr r2, [r6, r2]
|
|
str r2, [sp, #0x1c]
|
|
add r2, r3, #0
|
|
add r2, #0xc
|
|
ldr r2, [r6, r2]
|
|
add r3, #0x88
|
|
str r2, [sp, #0x20]
|
|
str r0, [sp, #0x24]
|
|
str r0, [sp, #0x28]
|
|
add r0, r6, r3
|
|
add r2, r1, #0
|
|
add r3, r1, #0
|
|
bl CreateSpriteResourcesHeader
|
|
ldr r2, _0223863C ; =0x00000D64
|
|
add r0, sp, #0x2c
|
|
add r1, r6, #0
|
|
add r2, r6, r2
|
|
mov r3, #2
|
|
bl ov72_022383DC
|
|
ldr r4, _02238640 ; =ov72_0223B364
|
|
mov r7, #0
|
|
add r5, r6, #0
|
|
_022384D4:
|
|
ldrh r0, [r4]
|
|
lsl r0, r0, #0xc
|
|
str r0, [sp, #0x34]
|
|
ldrh r0, [r4, #2]
|
|
lsl r1, r0, #0xc
|
|
mov r0, #1
|
|
lsl r0, r0, #0x14
|
|
add r0, r1, r0
|
|
str r0, [sp, #0x38]
|
|
add r0, sp, #0x2c
|
|
bl CreateSprite
|
|
ldr r1, _02238644 ; =0x00000DF4
|
|
str r0, [r5, r1]
|
|
add r0, r1, #0
|
|
ldr r0, [r5, r0]
|
|
mov r1, #1
|
|
bl Set2dSpriteAnimActiveFlag
|
|
ldr r0, _02238644 ; =0x00000DF4
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteAnimSeqNo
|
|
ldr r0, _02238644 ; =0x00000DF4
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
add r7, r7, #1
|
|
add r4, r4, #4
|
|
add r5, r5, #4
|
|
cmp r7, #3
|
|
blt _022384D4
|
|
ldr r2, _02238648 ; =0x00000D88
|
|
add r0, sp, #0x2c
|
|
add r1, r6, #0
|
|
add r2, r6, r2
|
|
mov r3, #2
|
|
bl ov72_022383DC
|
|
mov r0, #2
|
|
lsl r0, r0, #0x10
|
|
str r0, [sp, #0x34]
|
|
ldr r0, _0223864C ; =0x00151000
|
|
str r0, [sp, #0x38]
|
|
add r0, sp, #0x2c
|
|
bl CreateSprite
|
|
mov r1, #0xe
|
|
lsl r1, r1, #8
|
|
str r0, [r6, r1]
|
|
ldr r0, [r6, r1]
|
|
mov r1, #1
|
|
bl Set2dSpriteAnimActiveFlag
|
|
mov r0, #0xe
|
|
lsl r0, r0, #8
|
|
ldr r0, [r6, r0]
|
|
mov r1, #1
|
|
bl Set2dSpriteAnimSeqNo
|
|
mov r0, #0xe
|
|
lsl r0, r0, #8
|
|
ldr r0, [r6, r0]
|
|
mov r1, #0
|
|
bl Set2dSpriteVisibleFlag
|
|
mov r0, #6
|
|
lsl r0, r0, #0x10
|
|
str r0, [sp, #0x34]
|
|
ldr r0, _02238650 ; =0x00129000
|
|
str r0, [sp, #0x38]
|
|
add r0, sp, #0x2c
|
|
bl CreateSprite
|
|
ldr r1, _02238654 ; =0x00000E04
|
|
str r0, [r6, r1]
|
|
ldr r0, [r6, r1]
|
|
mov r1, #1
|
|
bl Set2dSpriteAnimActiveFlag
|
|
ldr r0, _02238654 ; =0x00000E04
|
|
mov r1, #0
|
|
ldr r0, [r6, r0]
|
|
bl Set2dSpriteAnimSeqNo
|
|
ldr r0, _02238654 ; =0x00000E04
|
|
mov r1, #0
|
|
ldr r0, [r6, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
ldr r4, _02238658 ; =ov72_0223B338
|
|
mov r7, #0
|
|
add r5, r6, #0
|
|
_02238592:
|
|
ldrh r0, [r4]
|
|
lsl r0, r0, #0xc
|
|
str r0, [sp, #0x34]
|
|
ldrh r0, [r4, #2]
|
|
lsl r1, r0, #0xc
|
|
mov r0, #1
|
|
lsl r0, r0, #0x14
|
|
add r0, r1, r0
|
|
str r0, [sp, #0x38]
|
|
add r0, sp, #0x2c
|
|
bl CreateSprite
|
|
ldr r1, _0223865C ; =0x00000E08
|
|
str r0, [r5, r1]
|
|
add r0, r1, #0
|
|
ldr r0, [r5, r0]
|
|
mov r1, #1
|
|
bl Set2dSpriteAnimActiveFlag
|
|
ldr r0, _0223865C ; =0x00000E08
|
|
mov r1, #3
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteAnimSeqNo
|
|
ldr r0, _0223865C ; =0x00000E08
|
|
mov r1, #1
|
|
ldr r0, [r5, r0]
|
|
bl sub_02024A04
|
|
ldr r0, _0223865C ; =0x00000E08
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
add r7, r7, #1
|
|
add r4, r4, #4
|
|
add r5, r5, #4
|
|
cmp r7, #3
|
|
blt _02238592
|
|
ldr r2, _02238660 ; =0x00000DAC
|
|
add r0, sp, #0x2c
|
|
add r1, r6, #0
|
|
add r2, r6, r2
|
|
mov r3, #2
|
|
bl ov72_022383DC
|
|
mov r0, #2
|
|
lsl r0, r0, #0x12
|
|
str r0, [sp, #0x34]
|
|
ldr r0, _0223864C ; =0x00151000
|
|
str r0, [sp, #0x38]
|
|
add r0, sp, #0x2c
|
|
bl CreateSprite
|
|
ldr r1, _02238664 ; =0x00000E14
|
|
str r0, [r6, r1]
|
|
ldr r0, [r6, r1]
|
|
mov r1, #1
|
|
bl Set2dSpriteAnimActiveFlag
|
|
ldr r0, _02238664 ; =0x00000E14
|
|
mov r1, #1
|
|
ldr r0, [r6, r0]
|
|
bl Set2dSpriteAnimSeqNo
|
|
ldr r0, _02238664 ; =0x00000E14
|
|
mov r1, #0
|
|
ldr r0, [r6, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
mov r0, #0x10
|
|
mov r1, #1
|
|
bl GX_EngineAToggleLayers
|
|
mov r0, #0x10
|
|
mov r1, #1
|
|
bl GX_EngineBToggleLayers
|
|
bl sub_0203A880
|
|
add sp, #0x5c
|
|
pop {r4, r5, r6, r7, pc}
|
|
nop
|
|
_02238638: .word 0x00000D24
|
|
_0223863C: .word 0x00000D64
|
|
_02238640: .word ov72_0223B364
|
|
_02238644: .word 0x00000DF4
|
|
_02238648: .word 0x00000D88
|
|
_0223864C: .word 0x00151000
|
|
_02238650: .word 0x00129000
|
|
_02238654: .word 0x00000E04
|
|
_02238658: .word ov72_0223B338
|
|
_0223865C: .word 0x00000E08
|
|
_02238660: .word 0x00000DAC
|
|
_02238664: .word 0x00000E14
|
|
thumb_func_end ov72_02238408
|
|
|
|
thumb_func_start ov72_02238668
|
|
ov72_02238668: ; 0x02238668
|
|
push {r3, r4, r5, lr}
|
|
add r5, r0, #0
|
|
bl sub_020168F4
|
|
add r4, r0, #0
|
|
beq _0223867A
|
|
add r0, r5, #0
|
|
bl sub_02016624
|
|
_0223867A:
|
|
add r0, r4, #0
|
|
pop {r3, r4, r5, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_02238668
|
|
|
|
thumb_func_start ov72_02238680
|
|
ov72_02238680: ; 0x02238680
|
|
str r1, [r0, #0x1c]
|
|
str r2, [r0, #0x20]
|
|
bx lr
|
|
.balign 4, 0
|
|
thumb_func_end ov72_02238680
|
|
|
|
thumb_func_start ov72_02238688
|
|
ov72_02238688: ; 0x02238688
|
|
push {r4, r5, lr}
|
|
sub sp, #0xc
|
|
add r4, r0, #0
|
|
add r5, r2, #0
|
|
cmp r1, #0
|
|
ble _022386A6
|
|
lsl r0, r1, #0xc
|
|
bl _fflt
|
|
add r1, r0, #0
|
|
mov r0, #0x3f
|
|
lsl r0, r0, #0x18
|
|
bl _fadd
|
|
b _022386B4
|
|
_022386A6:
|
|
lsl r0, r1, #0xc
|
|
bl _fflt
|
|
mov r1, #0x3f
|
|
lsl r1, r1, #0x18
|
|
bl _fsub
|
|
_022386B4:
|
|
bl _ffix
|
|
str r0, [sp]
|
|
cmp r5, #0
|
|
ble _022386D0
|
|
lsl r0, r5, #0xc
|
|
bl _fflt
|
|
add r1, r0, #0
|
|
mov r0, #0x3f
|
|
lsl r0, r0, #0x18
|
|
bl _fadd
|
|
b _022386DE
|
|
_022386D0:
|
|
lsl r0, r5, #0xc
|
|
bl _fflt
|
|
mov r1, #0x3f
|
|
lsl r1, r1, #0x18
|
|
bl _fsub
|
|
_022386DE:
|
|
bl _ffix
|
|
str r0, [sp, #4]
|
|
mov r0, #0
|
|
str r0, [sp, #8]
|
|
add r0, r4, #0
|
|
add r1, sp, #0
|
|
bl sub_020247D4
|
|
add sp, #0xc
|
|
pop {r4, r5, pc}
|
|
thumb_func_end ov72_02238688
|
|
|
|
thumb_func_start ov72_022386F4
|
|
ov72_022386F4: ; 0x022386F4
|
|
push {r3, r4, r5, lr}
|
|
add r4, r1, #0
|
|
ldr r1, _02238728 ; =ov72_0223B3A4
|
|
lsl r3, r4, #2
|
|
ldr r2, _0223872C ; =ov72_0223B3A6
|
|
ldrh r1, [r1, r3]
|
|
ldrh r3, [r2, r3]
|
|
mov r2, #1
|
|
lsl r2, r2, #8
|
|
add r2, r3, r2
|
|
add r5, r0, #0
|
|
bl ov72_02238688
|
|
cmp r4, #0xa
|
|
bge _0223871C
|
|
add r0, r5, #0
|
|
mov r1, #1
|
|
bl Set2dSpriteAnimSeqNo
|
|
pop {r3, r4, r5, pc}
|
|
_0223871C:
|
|
add r0, r5, #0
|
|
mov r1, #2
|
|
bl Set2dSpriteAnimSeqNo
|
|
pop {r3, r4, r5, pc}
|
|
nop
|
|
_02238728: .word ov72_0223B3A4
|
|
_0223872C: .word ov72_0223B3A6
|
|
thumb_func_end ov72_022386F4
|
|
|
|
thumb_func_start ov72_02238730
|
|
ov72_02238730: ; 0x02238730
|
|
push {r4, lr}
|
|
add r4, r2, #0
|
|
mov r3, #0xc
|
|
mul r4, r3
|
|
ldr r3, _02238748 ; =ov72_0223B364
|
|
lsl r2, r1, #2
|
|
add r1, r3, r4
|
|
ldrh r1, [r2, r1]
|
|
ldr r2, _0223874C ; =0x00000129
|
|
bl ov72_02238688
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_02238748: .word ov72_0223B364
|
|
_0223874C: .word 0x00000129
|
|
thumb_func_end ov72_02238730
|
|
|
|
thumb_func_start ov72_02238750
|
|
ov72_02238750: ; 0x02238750
|
|
push {r3, r4, r5, lr}
|
|
add r3, r2, #0
|
|
mov r5, #0xc
|
|
lsl r4, r1, #2
|
|
mul r3, r5
|
|
ldr r2, _02238770 ; =ov72_0223B366
|
|
ldr r1, _02238774 ; =ov72_0223B364
|
|
add r2, r2, r3
|
|
add r1, r1, r3
|
|
ldrh r2, [r4, r2]
|
|
add r5, #0xf4
|
|
ldrh r1, [r4, r1]
|
|
add r2, r2, r5
|
|
bl ov72_02238688
|
|
pop {r3, r4, r5, pc}
|
|
.balign 4, 0
|
|
_02238770: .word ov72_0223B366
|
|
_02238774: .word ov72_0223B364
|
|
thumb_func_end ov72_02238750
|
|
|
|
thumb_func_start ov72_02238778
|
|
ov72_02238778: ; 0x02238778
|
|
push {r4, r5, r6, lr}
|
|
add r5, r1, #0
|
|
add r4, r2, #0
|
|
bl OS_DisableInterrupts
|
|
add r6, r0, #0
|
|
ldr r0, _0223879C ; =ov72_0223B92C
|
|
add r1, r5, #0
|
|
ldr r0, [r0]
|
|
add r2, r4, #0
|
|
bl NNS_FndAllocFromExpHeapEx
|
|
add r4, r0, #0
|
|
add r0, r6, #0
|
|
bl OS_RestoreInterrupts
|
|
add r0, r4, #0
|
|
pop {r4, r5, r6, pc}
|
|
.balign 4, 0
|
|
_0223879C: .word ov72_0223B92C
|
|
thumb_func_end ov72_02238778
|
|
|
|
thumb_func_start ov72_022387A0
|
|
ov72_022387A0: ; 0x022387A0
|
|
push {r3, r4, r5, lr}
|
|
add r5, r1, #0
|
|
beq _022387BC
|
|
bl OS_DisableInterrupts
|
|
add r4, r0, #0
|
|
ldr r0, _022387C0 ; =ov72_0223B92C
|
|
add r1, r5, #0
|
|
ldr r0, [r0]
|
|
bl NNS_FndFreeToExpHeap
|
|
add r0, r4, #0
|
|
bl OS_RestoreInterrupts
|
|
_022387BC:
|
|
pop {r3, r4, r5, pc}
|
|
nop
|
|
_022387C0: .word ov72_0223B92C
|
|
thumb_func_end ov72_022387A0
|
|
|
|
thumb_func_start ov72_022387C4
|
|
ov72_022387C4: ; 0x022387C4
|
|
push {r3, lr}
|
|
bl ov00_021EC9D4
|
|
mov r1, #3
|
|
sub r0, r1, r0
|
|
pop {r3, pc}
|
|
thumb_func_end ov72_022387C4
|
|
|
|
thumb_func_start ov72_022387D0
|
|
ov72_022387D0: ; 0x022387D0
|
|
str r1, [r0, #0x14]
|
|
str r2, [r0, #0x18]
|
|
bx lr
|
|
.balign 4, 0
|
|
thumb_func_end ov72_022387D0
|
|
|
|
thumb_func_start ov72_022387D8
|
|
ov72_022387D8: ; 0x022387D8
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov72_02238124
|
|
bl ov72_02238164
|
|
add r0, r4, #0
|
|
bl ov72_02238194
|
|
add r0, r4, #0
|
|
bl ov72_02238408
|
|
ldr r0, _022387FC ; =ov72_022380FC
|
|
add r1, r4, #0
|
|
bl Main_SetVBlankIntrCB
|
|
pop {r4, pc}
|
|
nop
|
|
_022387FC: .word ov72_022380FC
|
|
thumb_func_end ov72_022387D8
|
|
|
|
thumb_func_start ov72_02238800
|
|
ov72_02238800: ; 0x02238800
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
add r6, r0, #0
|
|
ldr r0, _02238854 ; =0x00000D34
|
|
ldr r0, [r6, r0]
|
|
bl sub_0200AEB0
|
|
ldr r0, _02238858 ; =0x00000D44
|
|
ldr r0, [r6, r0]
|
|
bl sub_0200AEB0
|
|
ldr r0, _0223885C ; =0x00000D38
|
|
ldr r0, [r6, r0]
|
|
bl sub_0200B0A8
|
|
ldr r0, _02238860 ; =0x00000D48
|
|
ldr r0, [r6, r0]
|
|
bl sub_0200B0A8
|
|
ldr r7, _02238864 ; =0x00000D24
|
|
mov r4, #0
|
|
add r5, r6, #0
|
|
_0223882A:
|
|
ldr r0, [r5, r7]
|
|
bl Destroy2DGfxResObjMan
|
|
add r4, r4, #1
|
|
add r5, r5, #4
|
|
cmp r4, #4
|
|
blt _0223882A
|
|
ldr r0, _02238868 ; =0x00000BF8
|
|
ldr r0, [r6, r0]
|
|
bl sub_02024504
|
|
ldr r0, _02238868 ; =0x00000BF8
|
|
mov r1, #0
|
|
str r1, [r6, r0]
|
|
bl OamManager_Free
|
|
bl sub_0202168C
|
|
bl sub_02022608
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_02238854: .word 0x00000D34
|
|
_02238858: .word 0x00000D44
|
|
_0223885C: .word 0x00000D38
|
|
_02238860: .word 0x00000D48
|
|
_02238864: .word 0x00000D24
|
|
_02238868: .word 0x00000BF8
|
|
thumb_func_end ov72_02238800
|
|
|
|
thumb_func_start ov72_0223886C
|
|
ov72_0223886C: ; 0x0223886C
|
|
push {r3, r4, lr}
|
|
sub sp, #0xc
|
|
add r4, r0, #0
|
|
bl ov72_02239040
|
|
mov r0, #8
|
|
str r0, [sp]
|
|
mov r1, #1
|
|
str r1, [sp, #4]
|
|
mov r0, #0x43
|
|
str r0, [sp, #8]
|
|
mov r0, #0
|
|
add r2, r1, #0
|
|
add r3, r0, #0
|
|
bl BeginNormalPaletteFade
|
|
ldr r0, [r4, #4]
|
|
bl ov72_022389C8
|
|
add r0, r4, #0
|
|
bl ov72_02238BEC
|
|
add r0, r4, #0
|
|
bl ov72_02238EE4
|
|
mov r0, #1
|
|
add r1, r0, #0
|
|
bl GX_EngineAToggleLayers
|
|
mov r0, #2
|
|
mov r1, #1
|
|
bl GX_EngineAToggleLayers
|
|
mov r0, #1
|
|
add r1, r0, #0
|
|
bl GX_EngineBToggleLayers
|
|
mov r0, #2
|
|
mov r1, #1
|
|
bl GX_EngineBToggleLayers
|
|
ldr r0, [r4]
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
bl sub_0202D488
|
|
add r1, r4, #0
|
|
add r1, #0x90
|
|
str r0, [r1]
|
|
add r0, r4, #0
|
|
add r0, #0x90
|
|
ldr r1, [r0]
|
|
add r0, r4, #0
|
|
add r0, #0x94
|
|
str r1, [r0]
|
|
add r0, r4, #0
|
|
mov r1, #1
|
|
add r0, #0x9c
|
|
str r1, [r0]
|
|
ldr r0, _02238940 ; =0x00000F4C
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
bl ov00_021EC5B4
|
|
cmp r0, #0
|
|
bne _0223892E
|
|
ldr r1, [r4]
|
|
ldr r0, [r1, #0x24]
|
|
cmp r0, #0
|
|
beq _02238922
|
|
ldr r0, [r1, #0xc]
|
|
bl sub_02039418
|
|
ldr r0, _02238944 ; =0x00000F0F
|
|
mov r2, #1
|
|
str r0, [sp]
|
|
ldr r1, _02238948 ; =0x00000BD8
|
|
add r0, r4, #0
|
|
ldr r1, [r4, r1]
|
|
add r3, r2, #0
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #2
|
|
bl ov72_02238680
|
|
add r0, r4, #0
|
|
bl ov72_0223A420
|
|
b _0223893A
|
|
_02238922:
|
|
mov r0, #4
|
|
bl Sys_ClearSleepDisableFlag
|
|
mov r0, #0
|
|
str r0, [r4, #0x1c]
|
|
b _0223893A
|
|
_0223892E:
|
|
ldr r0, [r4]
|
|
ldr r0, [r0, #0xc]
|
|
bl sub_02039418
|
|
mov r0, #0x33
|
|
str r0, [r4, #0x1c]
|
|
_0223893A:
|
|
mov r0, #2
|
|
add sp, #0xc
|
|
pop {r3, r4, pc}
|
|
.balign 4, 0
|
|
_02238940: .word 0x00000F4C
|
|
_02238944: .word 0x00000F0F
|
|
_02238948: .word 0x00000BD8
|
|
thumb_func_end ov72_0223886C
|
|
|
|
thumb_func_start ov72_0223894C
|
|
ov72_0223894C: ; 0x0223894C
|
|
push {r3, r4, r5, lr}
|
|
add r5, r0, #0
|
|
bl ov72_022387C4
|
|
bl sub_0203A930
|
|
ldr r4, [r5, #0x1c]
|
|
ldr r1, _02238978 ; =ov72_0223B660
|
|
lsl r2, r4, #2
|
|
ldr r1, [r1, r2]
|
|
add r0, r5, #0
|
|
blx r1
|
|
ldr r1, [r5, #0x1c]
|
|
cmp r4, r1
|
|
beq _02238976
|
|
mov r1, #0xfd
|
|
mov r2, #0
|
|
lsl r1, r1, #4
|
|
strh r2, [r5, r1]
|
|
add r1, r1, #2
|
|
strh r2, [r5, r1]
|
|
_02238976:
|
|
pop {r3, r4, r5, pc}
|
|
.balign 4, 0
|
|
_02238978: .word ov72_0223B660
|
|
thumb_func_end ov72_0223894C
|
|
|
|
thumb_func_start ov72_0223897C
|
|
ov72_0223897C: ; 0x0223897C
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _022389C0 ; =0x00000FD8
|
|
ldr r0, [r4, r0]
|
|
cmp r0, #0
|
|
beq _02238996
|
|
bl DestroySysTask
|
|
ldr r0, _022389C0 ; =0x00000FD8
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
add r0, r0, #4
|
|
str r1, [r4, r0]
|
|
_02238996:
|
|
add r0, r4, #0
|
|
bl ov72_02239098
|
|
add r0, r4, #0
|
|
bl ov72_02238FFC
|
|
ldr r0, [r4, #4]
|
|
bl ov72_02238AEC
|
|
ldr r0, _022389C4 ; =0x00000FDC
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
ldr r0, [r4, #0x14]
|
|
str r0, [r4, #0x10]
|
|
cmp r0, #0
|
|
bne _022389BA
|
|
mov r0, #5
|
|
pop {r4, pc}
|
|
_022389BA:
|
|
mov r0, #1
|
|
pop {r4, pc}
|
|
nop
|
|
_022389C0: .word 0x00000FD8
|
|
_022389C4: .word 0x00000FDC
|
|
thumb_func_end ov72_0223897C
|
|
|
|
thumb_func_start ov72_022389C8
|
|
ov72_022389C8: ; 0x022389C8
|
|
push {r4, r5, lr}
|
|
sub sp, #0x8c
|
|
ldr r5, _02238AD8 ; =ov72_0223B42C
|
|
add r4, r0, #0
|
|
ldmia r5!, {r0, r1}
|
|
add r3, sp, #0x70
|
|
add r2, r3, #0
|
|
stmia r3!, {r0, r1}
|
|
ldmia r5!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
ldmia r5!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
ldr r0, [r5]
|
|
mov r1, #0
|
|
str r0, [r3]
|
|
add r0, r4, #0
|
|
add r3, r1, #0
|
|
bl InitBgFromTemplate
|
|
mov r0, #1
|
|
mov r1, #0
|
|
bl GX_EngineAToggleLayers
|
|
add r0, r4, #0
|
|
mov r1, #0
|
|
bl BgClearTilemapBufferAndCommit
|
|
ldr r5, _02238ADC ; =ov72_0223B410
|
|
add r3, sp, #0x54
|
|
ldmia r5!, {r0, r1}
|
|
add r2, r3, #0
|
|
stmia r3!, {r0, r1}
|
|
ldmia r5!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
ldmia r5!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
ldr r0, [r5]
|
|
mov r1, #1
|
|
str r0, [r3]
|
|
add r0, r4, #0
|
|
mov r3, #0
|
|
bl InitBgFromTemplate
|
|
mov r0, #2
|
|
mov r1, #0
|
|
bl GX_EngineAToggleLayers
|
|
ldr r5, _02238AE0 ; =ov72_0223B448
|
|
add r3, sp, #0x38
|
|
ldmia r5!, {r0, r1}
|
|
add r2, r3, #0
|
|
stmia r3!, {r0, r1}
|
|
ldmia r5!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
ldmia r5!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
ldr r0, [r5]
|
|
mov r1, #4
|
|
str r0, [r3]
|
|
add r0, r4, #0
|
|
mov r3, #0
|
|
bl InitBgFromTemplate
|
|
mov r0, #1
|
|
mov r1, #0
|
|
bl GX_EngineBToggleLayers
|
|
add r0, r4, #0
|
|
mov r1, #4
|
|
bl BgClearTilemapBufferAndCommit
|
|
ldr r5, _02238AE4 ; =ov72_0223B3D8
|
|
add r3, sp, #0x1c
|
|
ldmia r5!, {r0, r1}
|
|
add r2, r3, #0
|
|
stmia r3!, {r0, r1}
|
|
ldmia r5!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
ldmia r5!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
ldr r0, [r5]
|
|
mov r1, #5
|
|
str r0, [r3]
|
|
add r0, r4, #0
|
|
mov r3, #0
|
|
bl InitBgFromTemplate
|
|
mov r0, #2
|
|
mov r1, #0
|
|
bl GX_EngineBToggleLayers
|
|
ldr r5, _02238AE8 ; =ov72_0223B3F4
|
|
add r3, sp, #0
|
|
ldmia r5!, {r0, r1}
|
|
add r2, r3, #0
|
|
stmia r3!, {r0, r1}
|
|
ldmia r5!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
ldmia r5!, {r0, r1}
|
|
stmia r3!, {r0, r1}
|
|
ldr r0, [r5]
|
|
mov r1, #6
|
|
str r0, [r3]
|
|
add r0, r4, #0
|
|
mov r3, #0
|
|
bl InitBgFromTemplate
|
|
mov r0, #4
|
|
mov r1, #1
|
|
bl GX_EngineBToggleLayers
|
|
add r0, r4, #0
|
|
mov r1, #6
|
|
bl BgClearTilemapBufferAndCommit
|
|
mov r0, #0
|
|
mov r1, #0x20
|
|
add r2, r0, #0
|
|
mov r3, #0x43
|
|
bl BG_ClearCharDataRange
|
|
mov r0, #4
|
|
mov r1, #0x20
|
|
mov r2, #0
|
|
mov r3, #0x43
|
|
bl BG_ClearCharDataRange
|
|
mov r0, #6
|
|
mov r1, #0x20
|
|
mov r2, #0
|
|
mov r3, #0x43
|
|
bl BG_ClearCharDataRange
|
|
add sp, #0x8c
|
|
pop {r4, r5, pc}
|
|
nop
|
|
_02238AD8: .word ov72_0223B42C
|
|
_02238ADC: .word ov72_0223B410
|
|
_02238AE0: .word ov72_0223B448
|
|
_02238AE4: .word ov72_0223B3D8
|
|
_02238AE8: .word ov72_0223B3F4
|
|
thumb_func_end ov72_022389C8
|
|
|
|
thumb_func_start ov72_02238AEC
|
|
ov72_02238AEC: ; 0x02238AEC
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
mov r1, #6
|
|
bl FreeBgTilemapBuffer
|
|
add r0, r4, #0
|
|
mov r1, #5
|
|
bl FreeBgTilemapBuffer
|
|
add r0, r4, #0
|
|
mov r1, #4
|
|
bl FreeBgTilemapBuffer
|
|
add r0, r4, #0
|
|
mov r1, #1
|
|
bl FreeBgTilemapBuffer
|
|
add r0, r4, #0
|
|
mov r1, #0
|
|
bl FreeBgTilemapBuffer
|
|
pop {r4, pc}
|
|
thumb_func_end ov72_02238AEC
|
|
|
|
thumb_func_start ov72_02238B18
|
|
ov72_02238B18: ; 0x02238B18
|
|
push {r4, r5, r6, lr}
|
|
sub sp, #0x10
|
|
add r5, r0, #0
|
|
ldr r4, [r5, #4]
|
|
cmp r1, #0
|
|
bne _02238B86
|
|
mov r0, #0x58
|
|
mov r1, #0x43
|
|
bl NARC_New
|
|
mov r1, #1
|
|
lsl r1, r1, #8
|
|
str r1, [sp]
|
|
mov r1, #0x43
|
|
str r1, [sp, #4]
|
|
mov r1, #3
|
|
mov r2, #4
|
|
mov r3, #0
|
|
add r6, r0, #0
|
|
bl GfGfxLoader_GXLoadPalFromOpenNarc
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
str r0, [sp, #8]
|
|
mov r0, #0x43
|
|
str r0, [sp, #0xc]
|
|
add r0, r6, #0
|
|
mov r1, #0xb
|
|
add r2, r4, #0
|
|
mov r3, #5
|
|
bl GfGfxLoader_LoadCharDataFromOpenNarc
|
|
mov r1, #0
|
|
mov r0, #6
|
|
str r1, [sp]
|
|
lsl r0, r0, #8
|
|
str r0, [sp, #4]
|
|
str r1, [sp, #8]
|
|
mov r0, #0x43
|
|
str r0, [sp, #0xc]
|
|
add r0, r6, #0
|
|
mov r1, #0xc
|
|
add r2, r4, #0
|
|
mov r3, #5
|
|
bl GfGfxLoader_LoadScrnDataFromOpenNarc
|
|
ldr r0, _02238BE8 ; =0x00001304
|
|
mov r1, #0
|
|
str r1, [r5, r0]
|
|
add r0, r6, #0
|
|
bl NARC_Delete
|
|
add sp, #0x10
|
|
pop {r4, r5, r6, pc}
|
|
_02238B86:
|
|
mov r0, #0xee
|
|
mov r1, #0x43
|
|
bl NARC_New
|
|
ldr r1, _02238BE8 ; =0x00001304
|
|
mov r2, #1
|
|
str r2, [r5, r1]
|
|
mov r1, #0x40
|
|
str r1, [sp]
|
|
mov r1, #0x43
|
|
str r1, [sp, #4]
|
|
mov r1, #8
|
|
mov r2, #4
|
|
mov r3, #0
|
|
add r6, r0, #0
|
|
bl GfGfxLoader_GXLoadPalFromOpenNarc
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
str r0, [sp, #8]
|
|
mov r0, #0x43
|
|
str r0, [sp, #0xc]
|
|
add r0, r6, #0
|
|
mov r1, #9
|
|
add r2, r4, #0
|
|
mov r3, #5
|
|
bl GfGfxLoader_LoadCharDataFromOpenNarc
|
|
mov r1, #0
|
|
mov r0, #6
|
|
str r1, [sp]
|
|
lsl r0, r0, #8
|
|
str r0, [sp, #4]
|
|
str r1, [sp, #8]
|
|
mov r0, #0x43
|
|
str r0, [sp, #0xc]
|
|
add r0, r6, #0
|
|
mov r1, #0xa
|
|
add r2, r4, #0
|
|
mov r3, #5
|
|
bl GfGfxLoader_LoadScrnDataFromOpenNarc
|
|
add r0, r6, #0
|
|
bl NARC_Delete
|
|
add sp, #0x10
|
|
pop {r4, r5, r6, pc}
|
|
nop
|
|
_02238BE8: .word 0x00001304
|
|
thumb_func_end ov72_02238B18
|
|
|
|
thumb_func_start ov72_02238BEC
|
|
ov72_02238BEC: ; 0x02238BEC
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0x3c
|
|
str r0, [sp, #0x10]
|
|
ldr r4, [r0, #4]
|
|
mov r0, #0x58
|
|
mov r1, #0x43
|
|
bl NARC_New
|
|
mov r2, #0
|
|
str r2, [sp]
|
|
mov r1, #0x43
|
|
str r1, [sp, #4]
|
|
mov r1, #3
|
|
add r3, r2, #0
|
|
str r0, [sp, #0x2c]
|
|
bl GfGfxLoader_GXLoadPalFromOpenNarc
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
mov r0, #0x43
|
|
str r0, [sp, #4]
|
|
ldr r0, [sp, #0x2c]
|
|
mov r1, #3
|
|
mov r2, #4
|
|
bl GfGfxLoader_GXLoadPalFromOpenNarc
|
|
mov r1, #0x1a
|
|
mov r0, #0
|
|
lsl r1, r1, #4
|
|
mov r2, #0x43
|
|
bl LoadFontPal1
|
|
mov r1, #0x1a
|
|
mov r0, #4
|
|
lsl r1, r1, #4
|
|
mov r2, #0x43
|
|
bl LoadFontPal1
|
|
ldr r0, [sp, #0x10]
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #0x10]
|
|
bl Options_GetFrame
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
str r0, [sp]
|
|
mov r0, #0x43
|
|
str r0, [sp, #4]
|
|
add r0, r4, #0
|
|
mov r1, #0
|
|
mov r2, #1
|
|
mov r3, #0xe
|
|
bl LoadUserFrameGfx2
|
|
ldr r0, [sp, #0x10]
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #0x10]
|
|
bl Options_GetFrame
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
str r0, [sp]
|
|
mov r0, #0x43
|
|
str r0, [sp, #4]
|
|
add r0, r4, #0
|
|
mov r1, #4
|
|
mov r2, #1
|
|
mov r3, #0xe
|
|
bl LoadUserFrameGfx2
|
|
mov r1, #0
|
|
str r1, [sp]
|
|
mov r0, #0x43
|
|
str r0, [sp, #4]
|
|
add r0, r4, #0
|
|
mov r2, #0x1f
|
|
mov r3, #0xb
|
|
bl LoadUserFrameGfx1
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
str r0, [sp, #8]
|
|
mov r0, #0x43
|
|
str r0, [sp, #0xc]
|
|
ldr r0, [sp, #0x2c]
|
|
mov r1, #2
|
|
add r2, r4, #0
|
|
mov r3, #1
|
|
bl GfGfxLoader_LoadCharDataFromOpenNarc
|
|
mov r1, #0
|
|
mov r0, #6
|
|
str r1, [sp]
|
|
lsl r0, r0, #8
|
|
str r0, [sp, #4]
|
|
str r1, [sp, #8]
|
|
mov r0, #0x43
|
|
str r0, [sp, #0xc]
|
|
ldr r0, [sp, #0x2c]
|
|
mov r1, #6
|
|
add r2, r4, #0
|
|
mov r3, #1
|
|
bl GfGfxLoader_LoadScrnDataFromOpenNarc
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
str r0, [sp, #8]
|
|
mov r0, #0x43
|
|
str r0, [sp, #0xc]
|
|
ldr r0, [sp, #0x2c]
|
|
mov r1, #0xb
|
|
add r2, r4, #0
|
|
mov r3, #5
|
|
bl GfGfxLoader_LoadCharDataFromOpenNarc
|
|
mov r1, #0
|
|
mov r0, #6
|
|
str r1, [sp]
|
|
lsl r0, r0, #8
|
|
str r0, [sp, #4]
|
|
str r1, [sp, #8]
|
|
mov r0, #0x43
|
|
str r0, [sp, #0xc]
|
|
ldr r0, [sp, #0x2c]
|
|
mov r1, #0xc
|
|
add r2, r4, #0
|
|
mov r3, #5
|
|
bl GfGfxLoader_LoadScrnDataFromOpenNarc
|
|
mov r0, #0
|
|
add r1, r0, #0
|
|
bl BG_SetMaskColor
|
|
mov r0, #4
|
|
mov r1, #0
|
|
bl BG_SetMaskColor
|
|
mov r2, #0x33
|
|
ldr r1, _02238E28 ; =0x00000FD8
|
|
ldr r0, [sp, #0x10]
|
|
lsl r2, r2, #4
|
|
add r0, r0, r1
|
|
mov r1, #0
|
|
bl MI_CpuFill8
|
|
ldr r0, [sp, #0x2c]
|
|
mov r1, #5
|
|
add r2, sp, #0x38
|
|
mov r3, #0x43
|
|
bl GfGfxLoader_GetPlttDataFromOpenNarc
|
|
add r4, r0, #0
|
|
ldr r0, [sp, #0x38]
|
|
mov r2, #0xfe
|
|
ldr r1, [sp, #0x10]
|
|
lsl r2, r2, #4
|
|
add r1, r1, r2
|
|
ldr r0, [r0, #0xc]
|
|
mov r2, #0x80
|
|
bl MIi_CpuCopy16
|
|
ldr r0, [sp, #0x38]
|
|
ldr r2, _02238E2C ; =0x00001060
|
|
ldr r1, [sp, #0x10]
|
|
ldr r0, [r0, #0xc]
|
|
add r1, r1, r2
|
|
mov r2, #0x80
|
|
bl MIi_CpuCopy16
|
|
add r0, r4, #0
|
|
bl FreeToHeap
|
|
mov r0, #0
|
|
str r0, [sp, #0x24]
|
|
str r0, [sp, #0x28]
|
|
ldr r1, _02238E2C ; =0x00001060
|
|
ldr r0, [sp, #0x10]
|
|
add r0, r0, r1
|
|
str r0, [sp, #0x18]
|
|
ldr r0, [sp, #0x10]
|
|
sub r1, #0x80
|
|
add r0, r0, r1
|
|
str r0, [sp, #0x14]
|
|
_02238D5E:
|
|
mov r0, #0
|
|
str r0, [sp, #0x20]
|
|
str r0, [sp, #0x1c]
|
|
ldr r0, [sp, #0x28]
|
|
add r0, r0, #1
|
|
lsl r1, r0, #5
|
|
ldr r0, [sp, #0x10]
|
|
add r0, r0, r1
|
|
str r0, [sp, #0x30]
|
|
_02238D70:
|
|
ldr r0, [sp, #0x24]
|
|
cmp r0, #0x15
|
|
blt _02238D7A
|
|
bl GF_AssertFail
|
|
_02238D7A:
|
|
ldr r0, [sp, #0x30]
|
|
mov r7, #1
|
|
add r4, r0, #2
|
|
ldr r0, [sp, #0x18]
|
|
add r6, r0, #2
|
|
ldr r0, [sp, #0x14]
|
|
add r5, r0, #2
|
|
ldr r0, [sp, #0x20]
|
|
asr r0, r0, #8
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
str r0, [sp, #0x34]
|
|
_02238D92:
|
|
mov r0, #0xfe
|
|
lsl r0, r0, #4
|
|
ldrh r0, [r4, r0]
|
|
ldr r3, [sp, #0x34]
|
|
add r1, r6, #0
|
|
str r0, [sp]
|
|
add r0, r5, #0
|
|
mov r2, #1
|
|
bl sub_02003DE8
|
|
add r7, r7, #1
|
|
add r4, r4, #2
|
|
add r6, r6, #2
|
|
add r5, r5, #2
|
|
cmp r7, #0x10
|
|
blt _02238D92
|
|
ldr r0, [sp, #0x18]
|
|
add r0, #0x20
|
|
str r0, [sp, #0x18]
|
|
ldr r0, [sp, #0x24]
|
|
add r0, r0, #1
|
|
str r0, [sp, #0x24]
|
|
ldr r0, [sp, #0x1c]
|
|
cmp r0, #1
|
|
beq _02238DDE
|
|
mov r0, #3
|
|
ldr r1, [sp, #0x20]
|
|
lsl r0, r0, #8
|
|
add r1, r1, r0
|
|
mov r0, #1
|
|
lsl r0, r0, #0xc
|
|
str r1, [sp, #0x20]
|
|
cmp r1, r0
|
|
blt _02238D70
|
|
str r0, [sp, #0x20]
|
|
mov r0, #1
|
|
str r0, [sp, #0x1c]
|
|
b _02238D70
|
|
_02238DDE:
|
|
ldr r0, [sp, #0x14]
|
|
add r0, #0x20
|
|
str r0, [sp, #0x14]
|
|
ldr r0, [sp, #0x28]
|
|
add r0, r0, #1
|
|
str r0, [sp, #0x28]
|
|
cmp r0, #3
|
|
blt _02238D5E
|
|
ldr r1, _02238E2C ; =0x00001060
|
|
ldr r0, [sp, #0x10]
|
|
add r0, r0, r1
|
|
mov r1, #0x2a
|
|
lsl r1, r1, #4
|
|
bl DC_FlushRange
|
|
ldr r1, _02238E30 ; =0x00000FDC
|
|
ldr r0, [sp, #0x10]
|
|
mov r2, #1
|
|
str r2, [r0, r1]
|
|
ldr r2, _02238E34 ; =0x00001304
|
|
mov r3, #0
|
|
str r3, [r0, r2]
|
|
sub r2, r1, #4
|
|
ldr r1, [sp, #0x10]
|
|
ldr r0, _02238E38 ; =ov72_02238E3C
|
|
add r1, r1, r2
|
|
mov r2, #0x14
|
|
bl sub_0200E33C
|
|
ldr r2, _02238E28 ; =0x00000FD8
|
|
ldr r1, [sp, #0x10]
|
|
str r0, [r1, r2]
|
|
ldr r0, [sp, #0x2c]
|
|
bl NARC_Delete
|
|
add sp, #0x3c
|
|
pop {r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_02238E28: .word 0x00000FD8
|
|
_02238E2C: .word 0x00001060
|
|
_02238E30: .word 0x00000FDC
|
|
_02238E34: .word 0x00001304
|
|
_02238E38: .word ov72_02238E3C
|
|
thumb_func_end ov72_02238BEC
|
|
|
|
thumb_func_start ov72_02238E3C
|
|
ov72_02238E3C: ; 0x02238E3C
|
|
push {r4, lr}
|
|
add r4, r1, #0
|
|
ldr r0, [r4, #4]
|
|
cmp r0, #0
|
|
beq _02238EDA
|
|
ldr r1, _02238EDC ; =0x0000032B
|
|
mov r0, #1
|
|
ldrb r2, [r4, r1]
|
|
eor r2, r0
|
|
strb r2, [r4, r1]
|
|
ldrb r2, [r4, r1]
|
|
tst r0, r2
|
|
bne _02238EDA
|
|
add r0, r1, #1
|
|
ldr r0, [r4, r0]
|
|
cmp r0, #1
|
|
bhi _02238E72
|
|
sub r0, r1, #3
|
|
ldrsh r0, [r4, r0]
|
|
add r2, r4, #0
|
|
add r2, #0x88
|
|
lsl r0, r0, #5
|
|
add r0, r2, r0
|
|
mov r1, #0
|
|
mov r2, #0x20
|
|
bl GX_LoadBGPltt
|
|
_02238E72:
|
|
mov r0, #0xcb
|
|
lsl r0, r0, #2
|
|
ldr r0, [r4, r0]
|
|
cmp r0, #0
|
|
beq _02238E80
|
|
cmp r0, #2
|
|
bne _02238E96
|
|
_02238E80:
|
|
mov r0, #0xca
|
|
lsl r0, r0, #2
|
|
ldrsh r0, [r4, r0]
|
|
add r1, r4, #0
|
|
add r1, #0x88
|
|
lsl r0, r0, #5
|
|
add r0, r1, r0
|
|
mov r1, #0
|
|
mov r2, #0x20
|
|
bl GXS_LoadBGPltt
|
|
_02238E96:
|
|
ldr r0, _02238EE0 ; =0x0000032A
|
|
ldrsb r1, [r4, r0]
|
|
cmp r1, #0
|
|
bne _02238EBE
|
|
sub r1, r0, #2
|
|
ldrsh r1, [r4, r1]
|
|
add r2, r1, #1
|
|
sub r1, r0, #2
|
|
strh r2, [r4, r1]
|
|
ldrsh r1, [r4, r1]
|
|
cmp r1, #0x15
|
|
blt _02238EDA
|
|
mov r2, #0x13
|
|
sub r1, r0, #2
|
|
strh r2, [r4, r1]
|
|
ldrsb r2, [r4, r0]
|
|
mov r1, #1
|
|
eor r1, r2
|
|
strb r1, [r4, r0]
|
|
pop {r4, pc}
|
|
_02238EBE:
|
|
sub r1, r0, #2
|
|
ldrsh r1, [r4, r1]
|
|
sub r2, r1, #1
|
|
sub r1, r0, #2
|
|
strh r2, [r4, r1]
|
|
ldrsh r1, [r4, r1]
|
|
cmp r1, #0
|
|
bge _02238EDA
|
|
mov r2, #1
|
|
sub r1, r0, #2
|
|
strh r2, [r4, r1]
|
|
ldrsb r1, [r4, r0]
|
|
eor r1, r2
|
|
strb r1, [r4, r0]
|
|
_02238EDA:
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_02238EDC: .word 0x0000032B
|
|
_02238EE0: .word 0x0000032A
|
|
thumb_func_end ov72_02238E3C
|
|
|
|
thumb_func_start ov72_02238EE4
|
|
ov72_02238EE4: ; 0x02238EE4
|
|
push {r3, r4, lr}
|
|
sub sp, #0x14
|
|
mov r3, #4
|
|
add r4, r0, #0
|
|
str r3, [sp]
|
|
mov r0, #0x17
|
|
str r0, [sp, #4]
|
|
mov r0, #0x10
|
|
str r0, [sp, #8]
|
|
mov r0, #0xd
|
|
str r0, [sp, #0xc]
|
|
mov r0, #0xa4
|
|
ldr r1, _02238FE0 ; =0x00000E58
|
|
str r0, [sp, #0x10]
|
|
ldr r0, [r4, #4]
|
|
add r1, r4, r1
|
|
mov r2, #0
|
|
bl AddWindowParameterized
|
|
ldr r0, _02238FE0 ; =0x00000E58
|
|
mov r1, #0
|
|
add r0, r4, r0
|
|
bl FillWindowPixelBuffer
|
|
mov r0, #0xe
|
|
str r0, [sp]
|
|
mov r0, #4
|
|
str r0, [sp, #4]
|
|
mov r0, #2
|
|
str r0, [sp, #8]
|
|
mov r0, #0xd
|
|
str r0, [sp, #0xc]
|
|
mov r0, #0x94
|
|
ldr r1, _02238FE4 ; =0x00000E38
|
|
str r0, [sp, #0x10]
|
|
ldr r0, [r4, #4]
|
|
add r1, r4, r1
|
|
mov r2, #0
|
|
mov r3, #0x1a
|
|
bl AddWindowParameterized
|
|
ldr r0, _02238FE4 ; =0x00000E38
|
|
mov r1, #0xf
|
|
add r0, r4, r0
|
|
bl FillWindowPixelBuffer
|
|
mov r0, #0xe
|
|
str r0, [sp]
|
|
mov r0, #4
|
|
str r0, [sp, #4]
|
|
mov r0, #2
|
|
str r0, [sp, #8]
|
|
mov r0, #0xd
|
|
str r0, [sp, #0xc]
|
|
mov r0, #0x9c
|
|
ldr r1, _02238FE8 ; =0x00000E28
|
|
str r0, [sp, #0x10]
|
|
ldr r0, [r4, #4]
|
|
add r1, r4, r1
|
|
mov r2, #0
|
|
mov r3, #0x1a
|
|
bl AddWindowParameterized
|
|
ldr r0, _02238FE8 ; =0x00000E28
|
|
mov r1, #0xf
|
|
add r0, r4, r0
|
|
bl FillWindowPixelBuffer
|
|
mov r0, #1
|
|
str r0, [sp]
|
|
mov r0, #0x18
|
|
str r0, [sp, #4]
|
|
mov r0, #2
|
|
str r0, [sp, #8]
|
|
mov r0, #0xd
|
|
str r0, [sp, #0xc]
|
|
mov r0, #0x85
|
|
lsl r0, r0, #2
|
|
ldr r1, _02238FEC ; =0x00000E48
|
|
str r0, [sp, #0x10]
|
|
ldr r0, [r4, #4]
|
|
add r1, r4, r1
|
|
mov r2, #0
|
|
mov r3, #4
|
|
bl AddWindowParameterized
|
|
ldr r0, _02238FEC ; =0x00000E48
|
|
mov r1, #0
|
|
add r0, r4, r0
|
|
bl FillWindowPixelBuffer
|
|
mov r3, #1
|
|
ldr r0, _02238FF0 ; =0x000F0E00
|
|
str r3, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r1, _02238FF4 ; =0x00000BE4
|
|
ldr r0, _02238FEC ; =0x00000E48
|
|
ldr r1, [r4, r1]
|
|
add r0, r4, r0
|
|
mov r2, #0
|
|
bl ov72_0223A3E0
|
|
mov r0, #0x13
|
|
str r0, [sp]
|
|
mov r0, #0x1b
|
|
str r0, [sp, #4]
|
|
mov r0, #4
|
|
str r0, [sp, #8]
|
|
mov r0, #0xd
|
|
str r0, [sp, #0xc]
|
|
mov r0, #0x28
|
|
ldr r1, _02238FF8 ; =0x00000E18
|
|
str r0, [sp, #0x10]
|
|
ldr r0, [r4, #4]
|
|
add r1, r4, r1
|
|
mov r2, #0
|
|
mov r3, #2
|
|
bl AddWindowParameterized
|
|
ldr r0, _02238FF8 ; =0x00000E18
|
|
mov r1, #0xf
|
|
add r0, r4, r0
|
|
bl FillWindowPixelBuffer
|
|
add sp, #0x14
|
|
pop {r3, r4, pc}
|
|
.balign 4, 0
|
|
_02238FE0: .word 0x00000E58
|
|
_02238FE4: .word 0x00000E38
|
|
_02238FE8: .word 0x00000E28
|
|
_02238FEC: .word 0x00000E48
|
|
_02238FF0: .word 0x000F0E00
|
|
_02238FF4: .word 0x00000BE4
|
|
_02238FF8: .word 0x00000E18
|
|
thumb_func_end ov72_02238EE4
|
|
|
|
thumb_func_start ov72_02238FFC
|
|
ov72_02238FFC: ; 0x02238FFC
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _0223902C ; =0x00000E18
|
|
add r0, r4, r0
|
|
bl RemoveWindow
|
|
ldr r0, _02239030 ; =0x00000E48
|
|
add r0, r4, r0
|
|
bl RemoveWindow
|
|
ldr r0, _02239034 ; =0x00000E28
|
|
add r0, r4, r0
|
|
bl RemoveWindow
|
|
ldr r0, _02239038 ; =0x00000E38
|
|
add r0, r4, r0
|
|
bl RemoveWindow
|
|
ldr r0, _0223903C ; =0x00000E58
|
|
add r0, r4, r0
|
|
bl RemoveWindow
|
|
pop {r4, pc}
|
|
nop
|
|
_0223902C: .word 0x00000E18
|
|
_02239030: .word 0x00000E48
|
|
_02239034: .word 0x00000E28
|
|
_02239038: .word 0x00000E38
|
|
_0223903C: .word 0x00000E58
|
|
thumb_func_end ov72_02238FFC
|
|
|
|
thumb_func_start ov72_02239040
|
|
ov72_02239040: ; 0x02239040
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
mov r0, #0xb4
|
|
mov r1, #0x43
|
|
bl String_New
|
|
mov r1, #0xbe
|
|
lsl r1, r1, #4
|
|
str r0, [r4, r1]
|
|
mov r0, #4
|
|
mov r1, #0x43
|
|
bl String_New
|
|
ldr r1, _0223908C ; =0x00000BE8
|
|
str r0, [r4, r1]
|
|
mov r0, #3
|
|
mov r1, #0x43
|
|
bl String_New
|
|
ldr r1, _02239090 ; =0x00000BEC
|
|
str r0, [r4, r1]
|
|
sub r1, #0x18
|
|
ldr r0, [r4, r1]
|
|
mov r1, #0xc
|
|
bl NewString_ReadMsgData
|
|
ldr r1, _02239094 ; =0x00000BE4
|
|
str r0, [r4, r1]
|
|
mov r0, #1
|
|
lsl r0, r0, #8
|
|
mov r1, #0x43
|
|
bl String_New
|
|
mov r1, #0xbf
|
|
lsl r1, r1, #4
|
|
str r0, [r4, r1]
|
|
pop {r4, pc}
|
|
nop
|
|
_0223908C: .word 0x00000BE8
|
|
_02239090: .word 0x00000BEC
|
|
_02239094: .word 0x00000BE4
|
|
thumb_func_end ov72_02239040
|
|
|
|
thumb_func_start ov72_02239098
|
|
ov72_02239098: ; 0x02239098
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
mov r0, #0xbf
|
|
lsl r0, r0, #4
|
|
ldr r0, [r4, r0]
|
|
bl String_Delete
|
|
ldr r0, _022390CC ; =0x00000BE4
|
|
ldr r0, [r4, r0]
|
|
bl String_Delete
|
|
ldr r0, _022390D0 ; =0x00000BEC
|
|
ldr r0, [r4, r0]
|
|
bl String_Delete
|
|
ldr r0, _022390D4 ; =0x00000BE8
|
|
ldr r0, [r4, r0]
|
|
bl String_Delete
|
|
mov r0, #0xbe
|
|
lsl r0, r0, #4
|
|
ldr r0, [r4, r0]
|
|
bl String_Delete
|
|
pop {r4, pc}
|
|
nop
|
|
_022390CC: .word 0x00000BE4
|
|
_022390D0: .word 0x00000BEC
|
|
_022390D4: .word 0x00000BE8
|
|
thumb_func_end ov72_02239098
|
|
|
|
thumb_func_start ov72_022390D8
|
|
ov72_022390D8: ; 0x022390D8
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
ldr r1, _02239100 ; =0x00000F0F
|
|
add r4, r0, #0
|
|
str r1, [sp]
|
|
ldr r1, _02239104 ; =0x00000BDC
|
|
mov r2, #0x11
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x30
|
|
mov r2, #1
|
|
bl ov72_02238680
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_02239100: .word 0x00000F0F
|
|
_02239104: .word 0x00000BDC
|
|
thumb_func_end ov72_022390D8
|
|
|
|
thumb_func_start ov72_02239108
|
|
ov72_02239108: ; 0x02239108
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
add r4, r0, #0
|
|
ldr r0, _0223915C ; =0x0000136C
|
|
add r0, r4, r0
|
|
bl ov72_0223AF48
|
|
cmp r0, #0
|
|
beq _02239154
|
|
cmp r0, #2
|
|
bne _02239132
|
|
bl sub_0203946C
|
|
mov r1, #0
|
|
add r0, r4, #0
|
|
add r2, r1, #0
|
|
bl ov72_022387D0
|
|
mov r0, #0x2e
|
|
str r0, [r4, #0x1c]
|
|
b _02239154
|
|
_02239132:
|
|
ldr r0, _02239160 ; =0x00000F0F
|
|
ldr r1, _02239164 ; =0x00000BD8
|
|
str r0, [sp]
|
|
mov r2, #1
|
|
ldr r1, [r4, r1]
|
|
add r0, r4, #0
|
|
add r3, r2, #0
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #2
|
|
bl ov72_02238680
|
|
add r0, r4, #0
|
|
bl ov72_0223A420
|
|
_02239154:
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_0223915C: .word 0x0000136C
|
|
_02239160: .word 0x00000F0F
|
|
_02239164: .word 0x00000BD8
|
|
thumb_func_end ov72_02239108
|
|
|
|
thumb_func_start ov72_02239168
|
|
ov72_02239168: ; 0x02239168
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
ldr r1, _02239190 ; =0x00000F0F
|
|
add r4, r0, #0
|
|
str r1, [sp]
|
|
ldr r1, _02239194 ; =0x00000BD8
|
|
mov r2, #0xc
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x30
|
|
mov r2, #0x34
|
|
bl ov72_02238680
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_02239190: .word 0x00000F0F
|
|
_02239194: .word 0x00000BD8
|
|
thumb_func_end ov72_02239168
|
|
|
|
thumb_func_start ov72_02239198
|
|
ov72_02239198: ; 0x02239198
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _022391E4 ; =0x0000136C
|
|
add r0, r4, r0
|
|
bl ov72_0223AF48
|
|
cmp r0, #0
|
|
beq _022391E0
|
|
cmp r0, #2
|
|
bne _022391C0
|
|
bl ov00_021EC5B4
|
|
cmp r0, #0
|
|
bne _022391BA
|
|
mov r0, #0
|
|
str r0, [r4, #0x1c]
|
|
b _022391E0
|
|
_022391BA:
|
|
mov r0, #0x29
|
|
str r0, [r4, #0x1c]
|
|
b _022391E0
|
|
_022391C0:
|
|
bl ov00_021EC5B4
|
|
cmp r0, #0
|
|
bne _022391D6
|
|
mov r1, #0
|
|
add r0, r4, #0
|
|
add r2, r1, #0
|
|
bl ov72_022387D0
|
|
mov r0, #0x2e
|
|
b _022391D8
|
|
_022391D6:
|
|
mov r0, #0x29
|
|
_022391D8:
|
|
str r0, [r4, #0x1c]
|
|
ldr r0, [r4]
|
|
mov r1, #1
|
|
str r1, [r0, #0x20]
|
|
_022391E0:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_022391E4: .word 0x0000136C
|
|
thumb_func_end ov72_02239198
|
|
|
|
thumb_func_start ov72_022391E8
|
|
ov72_022391E8: ; 0x022391E8
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, [r4]
|
|
ldr r0, [r0, #0xc]
|
|
bl sub_02039418
|
|
mov r0, #4
|
|
bl Sys_SetSleepDisableFlag
|
|
add r0, r4, #0
|
|
bl ov72_0223A414
|
|
add r0, r4, #0
|
|
add r0, #0x2c
|
|
mov r1, #2
|
|
mov r2, #1
|
|
mov r3, #0x14
|
|
bl ov00_021EC3F0
|
|
mov r0, #2
|
|
bl ov00_021EC454
|
|
bl ov00_021EC4A4
|
|
mov r0, #3
|
|
str r0, [r4, #0x1c]
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_022391E8
|
|
|
|
thumb_func_start ov72_02239220
|
|
ov72_02239220: ; 0x02239220
|
|
push {r3, r4, lr}
|
|
sub sp, #0x44
|
|
add r4, r0, #0
|
|
bl ov00_021EC60C
|
|
bl ov00_021EC5B4
|
|
cmp r0, #0
|
|
beq _022392A0
|
|
bl ov00_021EC724
|
|
cmp r0, #8
|
|
bhi _0223927E
|
|
add r0, r0, r0
|
|
add r0, pc
|
|
ldrh r0, [r0, #6]
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
add pc, r0
|
|
_02239246: ; jump table
|
|
.short _0223927E - _02239246 - 2 ; case 0
|
|
.short _0223927E - _02239246 - 2 ; case 1
|
|
.short _0223927E - _02239246 - 2 ; case 2
|
|
.short _0223927E - _02239246 - 2 ; case 3
|
|
.short _02239296 - _02239246 - 2 ; case 4
|
|
.short _0223927E - _02239246 - 2 ; case 5
|
|
.short _0223927E - _02239246 - 2 ; case 6
|
|
.short _02239258 - _02239246 - 2 ; case 7
|
|
.short _0223927E - _02239246 - 2 ; case 8
|
|
_02239258:
|
|
add r0, sp, #4
|
|
bl ov00_021EC0FC
|
|
mov r1, #0xf5
|
|
lsl r1, r1, #4
|
|
str r0, [r4, r1]
|
|
ldr r2, [sp, #4]
|
|
add r0, r1, #4
|
|
str r2, [r4, r0]
|
|
bl ov00_021EC210
|
|
bl ov00_021EC8D8
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
mov r0, #0x37
|
|
str r0, [r4, #0x1c]
|
|
b _022392A0
|
|
_0223927E:
|
|
add r0, sp, #0
|
|
bl ov00_021EC0FC
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
mov r1, #0x35
|
|
str r1, [r4, #0x1c]
|
|
ldr r0, _022392A8 ; =0x00000F5C
|
|
sub r1, #0x37
|
|
str r1, [r4, r0]
|
|
b _022392A0
|
|
_02239296:
|
|
add r0, sp, #8
|
|
bl ov00_021EC9E0
|
|
mov r0, #4
|
|
str r0, [r4, #0x1c]
|
|
_022392A0:
|
|
mov r0, #3
|
|
add sp, #0x44
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_022392A8: .word 0x00000F5C
|
|
thumb_func_end ov72_02239220
|
|
|
|
thumb_func_start ov72_022392AC
|
|
ov72_022392AC: ; 0x022392AC
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov00_021ECD04
|
|
mov r0, #5
|
|
str r0, [r4, #0x1c]
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
thumb_func_end ov72_022392AC
|
|
|
|
thumb_func_start ov72_022392BC
|
|
ov72_022392BC: ; 0x022392BC
|
|
push {r4, lr}
|
|
sub sp, #8
|
|
add r4, r0, #0
|
|
bl ov00_021ECDC8
|
|
cmp r0, #5
|
|
bhi _02239362
|
|
add r0, r0, r0
|
|
add r0, pc
|
|
ldrh r0, [r0, #6]
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
add pc, r0
|
|
_022392D6: ; jump table
|
|
.short _022392E8 - _022392D6 - 2 ; case 0
|
|
.short _02239362 - _022392D6 - 2 ; case 1
|
|
.short _02239362 - _022392D6 - 2 ; case 2
|
|
.short _022392E2 - _022392D6 - 2 ; case 3
|
|
.short _022392E8 - _022392D6 - 2 ; case 4
|
|
.short _022392E8 - _022392D6 - 2 ; case 5
|
|
_022392E2:
|
|
mov r0, #6
|
|
str r0, [r4, #0x1c]
|
|
b _02239362
|
|
_022392E8:
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
add r0, sp, #4
|
|
add r1, sp, #0
|
|
bl ov00_021EC11C
|
|
mov r1, #0xf5
|
|
lsl r1, r1, #4
|
|
str r0, [r4, r1]
|
|
ldr r2, [sp, #4]
|
|
add r0, r1, #4
|
|
str r2, [r4, r0]
|
|
bl ov00_021EC210
|
|
bl ov00_021EC8D8
|
|
mov r0, #0x37
|
|
str r0, [r4, #0x1c]
|
|
ldr r1, [sp]
|
|
cmp r1, #7
|
|
bhi _02239350
|
|
add r1, r1, r1
|
|
add r1, pc
|
|
ldrh r1, [r1, #6]
|
|
lsl r1, r1, #0x10
|
|
asr r1, r1, #0x10
|
|
add pc, r1
|
|
_02239320: ; jump table
|
|
.short _02239350 - _02239320 - 2 ; case 0
|
|
.short _02239330 - _02239320 - 2 ; case 1
|
|
.short _02239330 - _02239320 - 2 ; case 2
|
|
.short _02239342 - _02239320 - 2 ; case 3
|
|
.short _02239334 - _02239320 - 2 ; case 4
|
|
.short _0223934C - _02239320 - 2 ; case 5
|
|
.short _0223933E - _02239320 - 2 ; case 6
|
|
.short _0223934C - _02239320 - 2 ; case 7
|
|
_02239330:
|
|
str r0, [r4, #0x1c]
|
|
b _02239350
|
|
_02239334:
|
|
bl ov00_021FA0D8
|
|
mov r0, #0x37
|
|
str r0, [r4, #0x1c]
|
|
b _02239350
|
|
_0223933E:
|
|
str r0, [r4, #0x1c]
|
|
b _02239350
|
|
_02239342:
|
|
bl ov00_021ED9B4
|
|
mov r0, #0x37
|
|
str r0, [r4, #0x1c]
|
|
b _02239350
|
|
_0223934C:
|
|
bl sub_020399EC
|
|
_02239350:
|
|
ldr r1, [sp, #4]
|
|
ldr r0, _02239368 ; =0xFFFFB1E0
|
|
cmp r1, r0
|
|
bge _02239362
|
|
ldr r0, _0223936C ; =0xFFFF8AD1
|
|
cmp r1, r0
|
|
blt _02239362
|
|
mov r0, #0x37
|
|
str r0, [r4, #0x1c]
|
|
_02239362:
|
|
mov r0, #3
|
|
add sp, #8
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_02239368: .word 0xFFFFB1E0
|
|
_0223936C: .word 0xFFFF8AD1
|
|
thumb_func_end ov72_022392BC
|
|
|
|
thumb_func_start ov72_02239370
|
|
ov72_02239370: ; 0x02239370
|
|
push {r3, r4, r5, lr}
|
|
add r5, r0, #0
|
|
ldr r0, [r5]
|
|
ldr r0, [r0, #8]
|
|
bl Save_SysInfo_GetField4C
|
|
cmp r0, #0
|
|
bne _0223938A
|
|
ldr r1, [r5]
|
|
ldr r0, [r1, #8]
|
|
ldr r1, [r1, #0x1c]
|
|
bl Save_SysInfo_SetField4C
|
|
_0223938A:
|
|
ldr r0, [r5]
|
|
ldr r0, [r0, #8]
|
|
bl Save_SysInfo_GetField4C
|
|
add r4, r0, #0
|
|
ldr r0, [r5]
|
|
ldr r0, [r0, #0x14]
|
|
bl DWC_CreateFriendKey
|
|
add r3, r0, #0
|
|
add r2, r1, #0
|
|
add r0, r4, #0
|
|
add r1, r3, #0
|
|
bl ov72_022378C0
|
|
mov r0, #7
|
|
str r0, [r5, #0x1c]
|
|
mov r0, #3
|
|
pop {r3, r4, r5, pc}
|
|
thumb_func_end ov72_02239370
|
|
|
|
thumb_func_start ov72_022393B0
|
|
ov72_022393B0: ; 0x022393B0
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov72_02237CB0
|
|
mov r0, #8
|
|
str r0, [r4, #0x1c]
|
|
ldr r0, _022393C8 ; =0x00000FD4
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
nop
|
|
_022393C8: .word 0x00000FD4
|
|
thumb_func_end ov72_022393B0
|
|
|
|
thumb_func_start ov72_022393CC
|
|
ov72_022393CC: ; 0x022393CC
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov72_02237B54
|
|
cmp r0, #0
|
|
beq _02239484
|
|
bl ov72_02237B74
|
|
ldr r1, _022394A0 ; =0x00000FD4
|
|
mov r2, #0
|
|
str r2, [r4, r1]
|
|
add r2, r0, #7
|
|
cmp r2, #9
|
|
bhi _02239478
|
|
add r2, r2, r2
|
|
add r2, pc
|
|
ldrh r2, [r2, #6]
|
|
lsl r2, r2, #0x10
|
|
asr r2, r2, #0x10
|
|
add pc, r2
|
|
_022393F4: ; jump table
|
|
.short _02239458 - _022393F4 - 2 ; case 0
|
|
.short _02239468 - _022393F4 - 2 ; case 1
|
|
.short _02239478 - _022393F4 - 2 ; case 2
|
|
.short _02239458 - _022393F4 - 2 ; case 3
|
|
.short _02239478 - _022393F4 - 2 ; case 4
|
|
.short _02239468 - _022393F4 - 2 ; case 5
|
|
.short _02239448 - _022393F4 - 2 ; case 6
|
|
.short _02239408 - _022393F4 - 2 ; case 7
|
|
.short _02239438 - _022393F4 - 2 ; case 8
|
|
.short _02239448 - _022393F4 - 2 ; case 9
|
|
_02239408:
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
ldr r0, [r4]
|
|
ldr r0, [r0, #0x18]
|
|
cmp r0, #0
|
|
beq _02239420
|
|
cmp r0, #1
|
|
beq _0223942C
|
|
cmp r0, #2
|
|
beq _02239432
|
|
b _0223949A
|
|
_02239420:
|
|
add r0, r4, #0
|
|
mov r1, #0xb
|
|
mov r2, #0xd
|
|
bl ov72_02238680
|
|
b _0223949A
|
|
_0223942C:
|
|
mov r0, #0x19
|
|
str r0, [r4, #0x1c]
|
|
b _0223949A
|
|
_02239432:
|
|
mov r0, #0x1d
|
|
str r0, [r4, #0x1c]
|
|
b _0223949A
|
|
_02239438:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _0223949A
|
|
_02239448:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _0223949A
|
|
_02239458:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _0223949A
|
|
_02239468:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _0223949A
|
|
_02239478:
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
bl sub_020399EC
|
|
b _0223949A
|
|
_02239484:
|
|
ldr r0, _022394A0 ; =0x00000FD4
|
|
ldr r1, [r4, r0]
|
|
add r1, r1, #1
|
|
str r1, [r4, r0]
|
|
ldr r1, [r4, r0]
|
|
mov r0, #0xe1
|
|
lsl r0, r0, #4
|
|
cmp r1, r0
|
|
bne _0223949A
|
|
bl sub_020399EC
|
|
_0223949A:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
nop
|
|
_022394A0: .word 0x00000FD4
|
|
thumb_func_end ov72_022393CC
|
|
|
|
thumb_func_start ov72_022394A4
|
|
ov72_022394A4: ; 0x022394A4
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, [r4]
|
|
ldr r1, _022394D0 ; =0x00000F64
|
|
ldr r0, [r0, #0xc]
|
|
add r1, r4, r1
|
|
bl sub_0203189C
|
|
ldr r1, _022394D0 ; =0x00000F64
|
|
add r0, r4, r1
|
|
add r1, #0x64
|
|
add r1, r4, r1
|
|
bl ov72_02237CF4
|
|
mov r0, #0xa
|
|
str r0, [r4, #0x1c]
|
|
ldr r0, _022394D4 ; =0x00000FD4
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
nop
|
|
_022394D0: .word 0x00000F64
|
|
_022394D4: .word 0x00000FD4
|
|
thumb_func_end ov72_022394A4
|
|
|
|
thumb_func_start ov72_022394D8
|
|
ov72_022394D8: ; 0x022394D8
|
|
push {r3, r4, r5, lr}
|
|
add r4, r0, #0
|
|
bl ov72_02237B54
|
|
cmp r0, #0
|
|
bne _022394E6
|
|
b _022395EE
|
|
_022394E6:
|
|
bl ov72_02237B74
|
|
add r5, r0, #0
|
|
ldr r0, _02239608 ; =0x00000FD4
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
add r1, r5, #7
|
|
cmp r1, #9
|
|
bhi _022395E2
|
|
add r1, r1, r1
|
|
add r1, pc
|
|
ldrh r1, [r1, #6]
|
|
lsl r1, r1, #0x10
|
|
asr r1, r1, #0x10
|
|
add pc, r1
|
|
_02239504: ; jump table
|
|
.short _022395C2 - _02239504 - 2 ; case 0
|
|
.short _022395D2 - _02239504 - 2 ; case 1
|
|
.short _022395E2 - _02239504 - 2 ; case 2
|
|
.short _022395C2 - _02239504 - 2 ; case 3
|
|
.short _022395E2 - _02239504 - 2 ; case 4
|
|
.short _022395D2 - _02239504 - 2 ; case 5
|
|
.short _022395B2 - _02239504 - 2 ; case 6
|
|
.short _02239518 - _02239504 - 2 ; case 7
|
|
.short _022395A2 - _02239504 - 2 ; case 8
|
|
.short _022395B2 - _02239504 - 2 ; case 9
|
|
_02239518:
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
ldr r0, _0223960C ; =0x00000FC8
|
|
ldr r1, [r4, r0]
|
|
cmp r1, #0
|
|
beq _02239530
|
|
cmp r1, #1
|
|
beq _02239586
|
|
cmp r1, #2
|
|
beq _02239586
|
|
b _02239596
|
|
_02239530:
|
|
add r1, r0, #4
|
|
ldr r1, [r4, r1]
|
|
cmp r1, #3
|
|
bhi _02239604
|
|
add r1, r1, r1
|
|
add r1, pc
|
|
ldrh r1, [r1, #6]
|
|
lsl r1, r1, #0x10
|
|
asr r1, r1, #0x10
|
|
add pc, r1
|
|
_02239544: ; jump table
|
|
.short _0223954C - _02239544 - 2 ; case 0
|
|
.short _02239576 - _02239544 - 2 ; case 1
|
|
.short _02239576 - _02239544 - 2 ; case 2
|
|
.short _02239576 - _02239544 - 2 ; case 3
|
|
_0223954C:
|
|
ldr r0, [r4]
|
|
ldr r0, [r0, #0x18]
|
|
cmp r0, #0
|
|
beq _0223955E
|
|
cmp r0, #1
|
|
beq _0223956A
|
|
cmp r0, #2
|
|
beq _02239570
|
|
b _02239604
|
|
_0223955E:
|
|
add r0, r4, #0
|
|
mov r1, #0xb
|
|
mov r2, #0xd
|
|
bl ov72_02238680
|
|
b _02239604
|
|
_0223956A:
|
|
mov r0, #0x19
|
|
str r0, [r4, #0x1c]
|
|
b _02239604
|
|
_02239570:
|
|
mov r0, #0x1d
|
|
str r0, [r4, #0x1c]
|
|
b _02239604
|
|
_02239576:
|
|
sub r0, #0x6c
|
|
str r5, [r4, r0]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239604
|
|
_02239586:
|
|
ldr r0, _02239610 ; =0x00000F5C
|
|
str r5, [r4, r0]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239604
|
|
_02239596:
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
bl sub_020399EC
|
|
b _02239604
|
|
_022395A2:
|
|
sub r0, #0x78
|
|
str r5, [r4, r0]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239604
|
|
_022395B2:
|
|
sub r0, #0x78
|
|
str r5, [r4, r0]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239604
|
|
_022395C2:
|
|
sub r0, #0x78
|
|
str r5, [r4, r0]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239604
|
|
_022395D2:
|
|
sub r0, #0x78
|
|
str r5, [r4, r0]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239604
|
|
_022395E2:
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
bl sub_020399EC
|
|
b _02239604
|
|
_022395EE:
|
|
ldr r0, _02239608 ; =0x00000FD4
|
|
ldr r1, [r4, r0]
|
|
add r1, r1, #1
|
|
str r1, [r4, r0]
|
|
ldr r1, [r4, r0]
|
|
mov r0, #0xe1
|
|
lsl r0, r0, #4
|
|
cmp r1, r0
|
|
bne _02239604
|
|
bl sub_020399EC
|
|
_02239604:
|
|
mov r0, #3
|
|
pop {r3, r4, r5, pc}
|
|
.balign 4, 0
|
|
_02239608: .word 0x00000FD4
|
|
_0223960C: .word 0x00000FC8
|
|
_02239610: .word 0x00000F5C
|
|
thumb_func_end ov72_022394D8
|
|
|
|
thumb_func_start ov72_02239614
|
|
ov72_02239614: ; 0x02239614
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
add r0, #0x94
|
|
ldr r0, [r0]
|
|
bl ov72_02237B80
|
|
mov r0, #0xc
|
|
str r0, [r4, #0x1c]
|
|
ldr r0, _02239634 ; =0x00000FD4
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
add r0, r4, #0
|
|
bl ov72_0223A420
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_02239634: .word 0x00000FD4
|
|
thumb_func_end ov72_02239614
|
|
|
|
thumb_func_start ov72_02239638
|
|
ov72_02239638: ; 0x02239638
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov72_02237B54
|
|
cmp r0, #0
|
|
beq _022396CA
|
|
bl ov72_02237B74
|
|
ldr r1, _022396E4 ; =0x00000FD4
|
|
mov r2, #0
|
|
str r2, [r4, r1]
|
|
add r2, r0, #7
|
|
cmp r2, #6
|
|
bhi _022396B4
|
|
add r2, r2, r2
|
|
add r2, pc
|
|
ldrh r2, [r2, #6]
|
|
lsl r2, r2, #0x10
|
|
asr r2, r2, #0x10
|
|
add pc, r2
|
|
_02239660: ; jump table
|
|
.short _02239696 - _02239660 - 2 ; case 0
|
|
.short _0223968C - _02239660 - 2 ; case 1
|
|
.short _022396A0 - _02239660 - 2 ; case 2
|
|
.short _02239696 - _02239660 - 2 ; case 3
|
|
.short _02239682 - _02239660 - 2 ; case 4
|
|
.short _02239678 - _02239660 - 2 ; case 5
|
|
.short _0223966E - _02239660 - 2 ; case 6
|
|
_0223966E:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
b _022396C2
|
|
_02239678:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
b _022396C2
|
|
_02239682:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
b _022396C2
|
|
_0223968C:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
b _022396C2
|
|
_02239696:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
b _022396C2
|
|
_022396A0:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
bl sub_020399EC
|
|
b _022396C2
|
|
_022396B4:
|
|
cmp r0, #0
|
|
ble _022396C2
|
|
add r1, r4, #0
|
|
add r1, #0x98
|
|
str r0, [r1]
|
|
ldr r0, [r4, #0x20]
|
|
str r0, [r4, #0x1c]
|
|
_022396C2:
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _022396E0
|
|
_022396CA:
|
|
ldr r0, _022396E4 ; =0x00000FD4
|
|
ldr r1, [r4, r0]
|
|
add r1, r1, #1
|
|
str r1, [r4, r0]
|
|
ldr r1, [r4, r0]
|
|
mov r0, #0xe1
|
|
lsl r0, r0, #4
|
|
cmp r1, r0
|
|
bne _022396E0
|
|
bl sub_020399EC
|
|
_022396E0:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_022396E4: .word 0x00000FD4
|
|
thumb_func_end ov72_02239638
|
|
|
|
thumb_func_start ov72_022396E8
|
|
ov72_022396E8: ; 0x022396E8
|
|
push {r4, lr}
|
|
sub sp, #8
|
|
add r4, r0, #0
|
|
add r0, #0x98
|
|
ldr r2, [r0]
|
|
cmp r2, #0x64
|
|
blt _02239720
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
mov r0, #0xbd
|
|
lsl r0, r0, #4
|
|
ldr r0, [r4, r0]
|
|
mov r1, #0
|
|
mov r3, #3
|
|
bl BufferIntegerAsString
|
|
ldr r0, _02239758 ; =0x00000F0F
|
|
ldr r1, _0223975C ; =0x00000BD4
|
|
str r0, [sp]
|
|
ldr r1, [r4, r1]
|
|
add r0, r4, #0
|
|
mov r2, #0xb
|
|
mov r3, #1
|
|
bl ov72_0223A280
|
|
b _02239746
|
|
_02239720:
|
|
mov r3, #2
|
|
str r3, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
mov r0, #0xbd
|
|
lsl r0, r0, #4
|
|
ldr r0, [r4, r0]
|
|
mov r1, #0
|
|
bl BufferIntegerAsString
|
|
ldr r0, _02239758 ; =0x00000F0F
|
|
ldr r1, _0223975C ; =0x00000BD4
|
|
str r0, [sp]
|
|
ldr r1, [r4, r1]
|
|
add r0, r4, #0
|
|
mov r2, #0
|
|
mov r3, #1
|
|
bl ov72_0223A280
|
|
_02239746:
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #0xe
|
|
bl ov72_02238680
|
|
mov r0, #3
|
|
add sp, #8
|
|
pop {r4, pc}
|
|
nop
|
|
_02239758: .word 0x00000F0F
|
|
_0223975C: .word 0x00000BD4
|
|
thumb_func_end ov72_022396E8
|
|
|
|
thumb_func_start ov72_02239760
|
|
ov72_02239760: ; 0x02239760
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
add r2, r4, #0
|
|
add r2, #0x98
|
|
ldr r2, [r2]
|
|
mov r1, #1
|
|
bl ov72_0223A520
|
|
mov r0, #0xf
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
mov r1, #0
|
|
mov r2, #1
|
|
bl ov72_0223A41C
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_02239760
|
|
|
|
thumb_func_start ov72_02239784
|
|
ov72_02239784: ; 0x02239784
|
|
push {r4, r5, lr}
|
|
sub sp, #0x1c
|
|
add r5, r0, #0
|
|
bl ov72_0223A588
|
|
add r4, r0, #0
|
|
beq _022397E0
|
|
cmp r4, #0
|
|
ble _022397D2
|
|
add r0, sp, #0
|
|
add r1, sp, #0x10
|
|
bl ov00_021ECB94
|
|
add r0, r5, #0
|
|
add r0, #0x9c
|
|
add r1, r5, #0
|
|
add r2, r5, #0
|
|
str r4, [r0]
|
|
add r1, #0x94
|
|
add r2, #0x9c
|
|
ldr r0, [r5]
|
|
ldr r1, [r1]
|
|
ldr r2, [r2]
|
|
lsl r1, r1, #0x18
|
|
lsl r2, r2, #0x18
|
|
ldr r0, [r0, #4]
|
|
lsr r1, r1, #0x18
|
|
lsr r2, r2, #0x18
|
|
add r3, sp, #0
|
|
bl sub_0202D720
|
|
cmp r0, #0
|
|
beq _022397CC
|
|
mov r0, #0x14
|
|
str r0, [r5, #0x1c]
|
|
b _022397E0
|
|
_022397CC:
|
|
mov r0, #0x10
|
|
str r0, [r5, #0x1c]
|
|
b _022397E0
|
|
_022397D2:
|
|
mov r1, #0
|
|
add r0, r5, #0
|
|
add r2, r1, #0
|
|
bl ov72_0223A41C
|
|
mov r0, #0x15
|
|
str r0, [r5, #0x1c]
|
|
_022397E0:
|
|
mov r0, #3
|
|
add sp, #0x1c
|
|
pop {r4, r5, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_02239784
|
|
|
|
thumb_func_start ov72_022397E8
|
|
ov72_022397E8: ; 0x022397E8
|
|
push {r4, lr}
|
|
sub sp, #8
|
|
add r4, r0, #0
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
mov r0, #0xbd
|
|
add r2, r4, #0
|
|
lsl r0, r0, #4
|
|
add r2, #0x9c
|
|
ldr r0, [r4, r0]
|
|
ldr r2, [r2]
|
|
mov r1, #0
|
|
mov r3, #3
|
|
bl BufferIntegerAsString
|
|
mov r3, #2
|
|
mov r0, #0xbd
|
|
add r2, r4, #0
|
|
str r3, [sp]
|
|
mov r1, #1
|
|
str r1, [sp, #4]
|
|
lsl r0, r0, #4
|
|
add r2, #0x94
|
|
ldr r0, [r4, r0]
|
|
ldr r2, [r2]
|
|
bl BufferIntegerAsString
|
|
ldr r0, _02239850 ; =0x00000F0F
|
|
mov r2, #1
|
|
str r0, [sp]
|
|
ldr r1, _02239854 ; =0x00000BD4
|
|
add r0, r4, #0
|
|
ldr r1, [r4, r1]
|
|
add r3, r2, #0
|
|
bl ov72_0223A280
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #0x11
|
|
bl ov72_02238680
|
|
add r4, #0xa0
|
|
ldr r2, _02239858 ; =0x00000A38
|
|
mov r0, #0
|
|
add r1, r4, #0
|
|
bl MIi_CpuClearFast
|
|
mov r0, #3
|
|
add sp, #8
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_02239850: .word 0x00000F0F
|
|
_02239854: .word 0x00000BD4
|
|
_02239858: .word 0x00000A38
|
|
thumb_func_end ov72_022397E8
|
|
|
|
thumb_func_start ov72_0223985C
|
|
ov72_0223985C: ; 0x0223985C
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
ldr r1, _02239884 ; =0x00000F0F
|
|
add r4, r0, #0
|
|
str r1, [sp]
|
|
ldr r1, _02239888 ; =0x00000BD4
|
|
mov r2, #2
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A280
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #0xd
|
|
bl ov72_02238680
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_02239884: .word 0x00000F0F
|
|
_02239888: .word 0x00000BD4
|
|
thumb_func_end ov72_0223985C
|
|
|
|
thumb_func_start ov72_0223988C
|
|
ov72_0223988C: ; 0x0223988C
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
add r1, r4, #0
|
|
add r0, #0x90
|
|
add r1, #0x9c
|
|
add r2, r4, #0
|
|
ldr r0, [r0]
|
|
ldr r1, [r1]
|
|
add r2, #0xa0
|
|
bl ov72_02237BD0
|
|
add r0, r4, #0
|
|
bl ov72_0223A420
|
|
mov r0, #0x12
|
|
str r0, [r4, #0x1c]
|
|
ldr r0, _022398B8 ; =0x00000FD4
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
nop
|
|
_022398B8: .word 0x00000FD4
|
|
thumb_func_end ov72_0223988C
|
|
|
|
thumb_func_start ov72_022398BC
|
|
ov72_022398BC: ; 0x022398BC
|
|
push {r3, r4, lr}
|
|
sub sp, #0x1c
|
|
add r4, r0, #0
|
|
bl ov72_02237B54
|
|
cmp r0, #0
|
|
beq _022399AA
|
|
bl ov72_02237B74
|
|
ldr r1, _022399C8 ; =0x00000FD4
|
|
mov r2, #0
|
|
str r2, [r4, r1]
|
|
add r2, r0, #7
|
|
cmp r2, #7
|
|
bhi _022399C0
|
|
add r2, r2, r2
|
|
add r2, pc
|
|
ldrh r2, [r2, #6]
|
|
lsl r2, r2, #0x10
|
|
asr r2, r2, #0x10
|
|
add pc, r2
|
|
_022398E6: ; jump table
|
|
.short _02239986 - _022398E6 - 2 ; case 0
|
|
.short _02239976 - _022398E6 - 2 ; case 1
|
|
.short _02239996 - _022398E6 - 2 ; case 2
|
|
.short _02239966 - _022398E6 - 2 ; case 3
|
|
.short _02239966 - _022398E6 - 2 ; case 4
|
|
.short _02239956 - _022398E6 - 2 ; case 5
|
|
.short _02239946 - _022398E6 - 2 ; case 6
|
|
.short _022398F6 - _022398E6 - 2 ; case 7
|
|
_022398F6:
|
|
add r2, r4, #0
|
|
add r3, r4, #0
|
|
add r2, #0x90
|
|
add r3, #0x9c
|
|
ldr r0, [r4]
|
|
ldr r2, [r2]
|
|
ldr r3, [r3]
|
|
add r1, r4, #0
|
|
lsl r2, r2, #0x18
|
|
lsl r3, r3, #0x18
|
|
ldr r0, [r0, #4]
|
|
add r1, #0xa0
|
|
lsr r2, r2, #0x18
|
|
lsr r3, r3, #0x18
|
|
bl sub_0202D7C0
|
|
add r0, r4, #0
|
|
mov r1, #0x27
|
|
mov r2, #0x13
|
|
bl ov72_02238680
|
|
add r0, sp, #0
|
|
add r1, sp, #0x10
|
|
bl ov00_021ECB94
|
|
add r1, r4, #0
|
|
ldr r0, [r4]
|
|
add r1, #0x94
|
|
add r4, #0x9c
|
|
ldr r1, [r1]
|
|
ldr r2, [r4]
|
|
lsl r1, r1, #0x18
|
|
lsl r2, r2, #0x18
|
|
ldr r0, [r0, #4]
|
|
lsr r1, r1, #0x18
|
|
lsr r2, r2, #0x18
|
|
add r3, sp, #0
|
|
bl sub_0202D678
|
|
b _022399C0
|
|
_02239946:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _022399C0
|
|
_02239956:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _022399C0
|
|
_02239966:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0xb
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _022399C0
|
|
_02239976:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _022399C0
|
|
_02239986:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _022399C0
|
|
_02239996:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
bl sub_020399EC
|
|
b _022399C0
|
|
_022399AA:
|
|
ldr r0, _022399C8 ; =0x00000FD4
|
|
ldr r1, [r4, r0]
|
|
add r1, r1, #1
|
|
str r1, [r4, r0]
|
|
ldr r1, [r4, r0]
|
|
mov r0, #0xe1
|
|
lsl r0, r0, #4
|
|
cmp r1, r0
|
|
bne _022399C0
|
|
bl sub_020399EC
|
|
_022399C0:
|
|
mov r0, #3
|
|
add sp, #0x1c
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_022399C8: .word 0x00000FD4
|
|
thumb_func_end ov72_022398BC
|
|
|
|
thumb_func_start ov72_022399CC
|
|
ov72_022399CC: ; 0x022399CC
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
ldr r1, _02239A00 ; =0x00000F0F
|
|
add r4, r0, #0
|
|
str r1, [sp]
|
|
ldr r1, _02239A04 ; =0x00000BD4
|
|
mov r2, #3
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #0x2d
|
|
bl ov72_02238680
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
ldr r0, [r4]
|
|
mov r1, #0
|
|
str r1, [r0, #0x20]
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_02239A00: .word 0x00000F0F
|
|
_02239A04: .word 0x00000BD4
|
|
thumb_func_end ov72_022399CC
|
|
|
|
thumb_func_start ov72_02239A08
|
|
ov72_02239A08: ; 0x02239A08
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
ldr r1, _02239A34 ; =0x00000F0F
|
|
add r4, r0, #0
|
|
str r1, [sp]
|
|
ldr r1, _02239A38 ; =0x00000BD4
|
|
mov r2, #7
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #0x1a
|
|
bl ov72_02238680
|
|
add r0, r4, #0
|
|
bl ov72_0223A420
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
.balign 4, 0
|
|
_02239A34: .word 0x00000F0F
|
|
_02239A38: .word 0x00000BD4
|
|
thumb_func_end ov72_02239A08
|
|
|
|
thumb_func_start ov72_02239A3C
|
|
ov72_02239A3C: ; 0x02239A3C
|
|
push {r3, r4, r5, lr}
|
|
add r5, r0, #0
|
|
ldr r0, [r5]
|
|
ldr r0, [r0]
|
|
bl sub_0202D568
|
|
add r4, r0, #0
|
|
ldr r0, [r5]
|
|
add r1, sp, #0
|
|
ldr r0, [r0, #4]
|
|
bl sub_0202D7F0
|
|
ldr r0, [r5]
|
|
ldr r2, _02239A80 ; =0x00000AD8
|
|
ldr r0, [r0, #0xc]
|
|
mov r1, #1
|
|
add r2, r5, r2
|
|
bl sub_02069528
|
|
add r1, sp, #0
|
|
ldrb r0, [r1]
|
|
ldr r3, _02239A80 ; =0x00000AD8
|
|
ldrb r1, [r1, #1]
|
|
add r2, r4, #0
|
|
add r3, r5, r3
|
|
bl ov72_02237C30
|
|
mov r0, #0x1b
|
|
str r0, [r5, #0x1c]
|
|
ldr r0, _02239A84 ; =0x00000FD4
|
|
mov r1, #0
|
|
str r1, [r5, r0]
|
|
mov r0, #3
|
|
pop {r3, r4, r5, pc}
|
|
.balign 4, 0
|
|
_02239A80: .word 0x00000AD8
|
|
_02239A84: .word 0x00000FD4
|
|
thumb_func_end ov72_02239A3C
|
|
|
|
thumb_func_start ov72_02239A88
|
|
ov72_02239A88: ; 0x02239A88
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov72_02237B54
|
|
cmp r0, #0
|
|
beq _02239B3C
|
|
bl ov72_02237B74
|
|
ldr r1, _02239B58 ; =0x00000FD4
|
|
mov r2, #0
|
|
str r2, [r4, r1]
|
|
add r2, r0, #7
|
|
cmp r2, #7
|
|
bhi _02239B52
|
|
add r2, r2, r2
|
|
add r2, pc
|
|
ldrh r2, [r2, #6]
|
|
lsl r2, r2, #0x10
|
|
asr r2, r2, #0x10
|
|
add pc, r2
|
|
_02239AB0: ; jump table
|
|
.short _02239B18 - _02239AB0 - 2 ; case 0
|
|
.short _02239B08 - _02239AB0 - 2 ; case 1
|
|
.short _02239B28 - _02239AB0 - 2 ; case 2
|
|
.short _02239B18 - _02239AB0 - 2 ; case 3
|
|
.short _02239AF8 - _02239AB0 - 2 ; case 4
|
|
.short _02239AE8 - _02239AB0 - 2 ; case 5
|
|
.short _02239AD8 - _02239AB0 - 2 ; case 6
|
|
.short _02239AC0 - _02239AB0 - 2 ; case 7
|
|
_02239AC0:
|
|
ldr r0, [r4]
|
|
mov r1, #5
|
|
ldr r0, [r0]
|
|
mov r2, #2
|
|
bl sub_0202D5DC
|
|
add r0, r4, #0
|
|
mov r1, #0x27
|
|
mov r2, #0x1c
|
|
bl ov72_02238680
|
|
b _02239B52
|
|
_02239AD8:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239B52
|
|
_02239AE8:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239B52
|
|
_02239AF8:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239B52
|
|
_02239B08:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239B52
|
|
_02239B18:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239B52
|
|
_02239B28:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
bl sub_020399EC
|
|
b _02239B52
|
|
_02239B3C:
|
|
ldr r0, _02239B58 ; =0x00000FD4
|
|
ldr r1, [r4, r0]
|
|
add r1, r1, #1
|
|
str r1, [r4, r0]
|
|
ldr r1, [r4, r0]
|
|
mov r0, #0xe1
|
|
lsl r0, r0, #4
|
|
cmp r1, r0
|
|
bne _02239B52
|
|
bl sub_020399EC
|
|
_02239B52:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
nop
|
|
_02239B58: .word 0x00000FD4
|
|
thumb_func_end ov72_02239A88
|
|
|
|
thumb_func_start ov72_02239B5C
|
|
ov72_02239B5C: ; 0x02239B5C
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
ldr r1, _02239B90 ; =0x00000F0F
|
|
add r4, r0, #0
|
|
str r1, [sp]
|
|
ldr r1, _02239B94 ; =0x00000BD4
|
|
mov r2, #8
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #0x2d
|
|
bl ov72_02238680
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
ldr r0, [r4]
|
|
mov r1, #0
|
|
str r1, [r0, #0x20]
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_02239B90: .word 0x00000F0F
|
|
_02239B94: .word 0x00000BD4
|
|
thumb_func_end ov72_02239B5C
|
|
|
|
thumb_func_start ov72_02239B98
|
|
ov72_02239B98: ; 0x02239B98
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
ldr r1, _02239BC0 ; =0x00000F0F
|
|
add r4, r0, #0
|
|
str r1, [sp]
|
|
ldr r1, _02239BC4 ; =0x00000BD4
|
|
mov r2, #5
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #0x1e
|
|
bl ov72_02238680
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_02239BC0: .word 0x00000F0F
|
|
_02239BC4: .word 0x00000BD4
|
|
thumb_func_end ov72_02239B98
|
|
|
|
thumb_func_start ov72_02239BC8
|
|
ov72_02239BC8: ; 0x02239BC8
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
add r2, r4, #0
|
|
mov r1, #1
|
|
add r2, #0x94
|
|
str r1, [r2]
|
|
add r2, r1, #0
|
|
bl ov72_0223A41C
|
|
add r0, r4, #0
|
|
mov r1, #1
|
|
mov r2, #0xa
|
|
bl ov72_0223A520
|
|
mov r0, #0x1f
|
|
str r0, [r4, #0x1c]
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
thumb_func_end ov72_02239BC8
|
|
|
|
thumb_func_start ov72_02239BEC
|
|
ov72_02239BEC: ; 0x02239BEC
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov72_0223A588
|
|
cmp r0, #0
|
|
beq _02239C10
|
|
ble _02239C0C
|
|
add r1, r4, #0
|
|
add r1, #0x94
|
|
str r0, [r1]
|
|
add r0, r4, #0
|
|
mov r1, #0xb
|
|
mov r2, #0x20
|
|
bl ov72_02238680
|
|
b _02239C10
|
|
_02239C0C:
|
|
mov r0, #0x17
|
|
str r0, [r4, #0x1c]
|
|
_02239C10:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
thumb_func_end ov72_02239BEC
|
|
|
|
thumb_func_start ov72_02239C14
|
|
ov72_02239C14: ; 0x02239C14
|
|
push {r4, lr}
|
|
sub sp, #8
|
|
add r4, r0, #0
|
|
add r0, #0x98
|
|
ldr r2, [r0]
|
|
cmp r2, #0x64
|
|
blt _02239C4C
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
mov r0, #0xbd
|
|
lsl r0, r0, #4
|
|
ldr r0, [r4, r0]
|
|
mov r1, #0
|
|
mov r3, #3
|
|
bl BufferIntegerAsString
|
|
ldr r0, _02239C84 ; =0x00000F0F
|
|
ldr r1, _02239C88 ; =0x00000BD4
|
|
str r0, [sp]
|
|
ldr r1, [r4, r1]
|
|
add r0, r4, #0
|
|
mov r2, #0xa
|
|
mov r3, #1
|
|
bl ov72_0223A280
|
|
b _02239C72
|
|
_02239C4C:
|
|
mov r3, #2
|
|
str r3, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
mov r0, #0xbd
|
|
lsl r0, r0, #4
|
|
ldr r0, [r4, r0]
|
|
mov r1, #0
|
|
bl BufferIntegerAsString
|
|
ldr r0, _02239C84 ; =0x00000F0F
|
|
ldr r1, _02239C88 ; =0x00000BD4
|
|
str r0, [sp]
|
|
ldr r1, [r4, r1]
|
|
add r0, r4, #0
|
|
mov r2, #6
|
|
mov r3, #1
|
|
bl ov72_0223A280
|
|
_02239C72:
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #0x21
|
|
bl ov72_02238680
|
|
mov r0, #3
|
|
add sp, #8
|
|
pop {r4, pc}
|
|
nop
|
|
_02239C84: .word 0x00000F0F
|
|
_02239C88: .word 0x00000BD4
|
|
thumb_func_end ov72_02239C14
|
|
|
|
thumb_func_start ov72_02239C8C
|
|
ov72_02239C8C: ; 0x02239C8C
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
add r2, r4, #0
|
|
mov r1, #1
|
|
add r2, #0x9c
|
|
str r1, [r2]
|
|
add r2, r4, #0
|
|
add r2, #0x98
|
|
ldr r2, [r2]
|
|
bl ov72_0223A520
|
|
add r0, r4, #0
|
|
mov r1, #0
|
|
mov r2, #1
|
|
bl ov72_0223A41C
|
|
mov r0, #0x22
|
|
str r0, [r4, #0x1c]
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
thumb_func_end ov72_02239C8C
|
|
|
|
thumb_func_start ov72_02239CB4
|
|
ov72_02239CB4: ; 0x02239CB4
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov72_0223A588
|
|
cmp r0, #0
|
|
beq _02239CD2
|
|
ble _02239CCE
|
|
add r1, r4, #0
|
|
add r1, #0x9c
|
|
str r0, [r1]
|
|
mov r0, #0x23
|
|
str r0, [r4, #0x1c]
|
|
b _02239CD2
|
|
_02239CCE:
|
|
mov r0, #0x1d
|
|
str r0, [r4, #0x1c]
|
|
_02239CD2:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_02239CB4
|
|
|
|
thumb_func_start ov72_02239CD8
|
|
ov72_02239CD8: ; 0x02239CD8
|
|
push {r4, lr}
|
|
sub sp, #8
|
|
add r4, r0, #0
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
mov r0, #0xbd
|
|
add r2, r4, #0
|
|
lsl r0, r0, #4
|
|
add r2, #0x9c
|
|
ldr r0, [r4, r0]
|
|
ldr r2, [r2]
|
|
mov r1, #0
|
|
mov r3, #3
|
|
bl BufferIntegerAsString
|
|
mov r3, #2
|
|
mov r0, #0xbd
|
|
add r2, r4, #0
|
|
str r3, [sp]
|
|
mov r1, #1
|
|
str r1, [sp, #4]
|
|
lsl r0, r0, #4
|
|
add r2, #0x94
|
|
ldr r0, [r4, r0]
|
|
ldr r2, [r2]
|
|
bl BufferIntegerAsString
|
|
ldr r0, _02239D34 ; =0x00000F0F
|
|
mov r2, #1
|
|
str r0, [sp]
|
|
ldr r1, _02239D38 ; =0x00000BD4
|
|
add r0, r4, #0
|
|
ldr r1, [r4, r1]
|
|
add r3, r2, #0
|
|
bl ov72_0223A280
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #0x24
|
|
bl ov72_02238680
|
|
mov r0, #3
|
|
add sp, #8
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_02239D34: .word 0x00000F0F
|
|
_02239D38: .word 0x00000BD4
|
|
thumb_func_end ov72_02239CD8
|
|
|
|
thumb_func_start ov72_02239D3C
|
|
ov72_02239D3C: ; 0x02239D3C
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
add r1, r4, #0
|
|
add r0, #0x94
|
|
add r1, #0x9c
|
|
add r2, r4, #0
|
|
ldr r0, [r0]
|
|
ldr r1, [r1]
|
|
add r2, #0xa0
|
|
bl ov72_02237BD0
|
|
mov r0, #0x25
|
|
str r0, [r4, #0x1c]
|
|
ldr r0, _02239D68 ; =0x00000FD4
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
add r0, r4, #0
|
|
bl ov72_0223A420
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
nop
|
|
_02239D68: .word 0x00000FD4
|
|
thumb_func_end ov72_02239D3C
|
|
|
|
thumb_func_start ov72_02239D6C
|
|
ov72_02239D6C: ; 0x02239D6C
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov72_02237B54
|
|
cmp r0, #0
|
|
beq _02239E34
|
|
bl ov72_02237B74
|
|
ldr r1, _02239E50 ; =0x00000FD4
|
|
mov r2, #0
|
|
str r2, [r4, r1]
|
|
add r2, r0, #7
|
|
cmp r2, #7
|
|
bhi _02239E4A
|
|
add r2, r2, r2
|
|
add r2, pc
|
|
ldrh r2, [r2, #6]
|
|
lsl r2, r2, #0x10
|
|
asr r2, r2, #0x10
|
|
add pc, r2
|
|
_02239D94: ; jump table
|
|
.short _02239E10 - _02239D94 - 2 ; case 0
|
|
.short _02239E00 - _02239D94 - 2 ; case 1
|
|
.short _02239E20 - _02239D94 - 2 ; case 2
|
|
.short _02239E10 - _02239D94 - 2 ; case 3
|
|
.short _02239DF0 - _02239D94 - 2 ; case 4
|
|
.short _02239DE0 - _02239D94 - 2 ; case 5
|
|
.short _02239DD0 - _02239D94 - 2 ; case 6
|
|
.short _02239DA4 - _02239D94 - 2 ; case 7
|
|
_02239DA4:
|
|
add r2, r4, #0
|
|
add r3, r4, #0
|
|
add r2, #0x94
|
|
add r3, #0x9c
|
|
ldr r0, [r4]
|
|
ldr r2, [r2]
|
|
ldr r3, [r3]
|
|
ldr r1, _02239E54 ; =0x000006DC
|
|
lsl r2, r2, #0x18
|
|
lsl r3, r3, #0x18
|
|
ldr r0, [r0, #4]
|
|
add r1, r4, r1
|
|
lsr r2, r2, #0x18
|
|
lsr r3, r3, #0x18
|
|
bl sub_0202D8A4
|
|
add r0, r4, #0
|
|
mov r1, #0x27
|
|
mov r2, #0x26
|
|
bl ov72_02238680
|
|
b _02239E4A
|
|
_02239DD0:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239E4A
|
|
_02239DE0:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239E4A
|
|
_02239DF0:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0xb
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239E4A
|
|
_02239E00:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239E4A
|
|
_02239E10:
|
|
mov r2, #0xb
|
|
str r2, [r4, #0x1c]
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
b _02239E4A
|
|
_02239E20:
|
|
sub r1, #0x78
|
|
str r0, [r4, r1]
|
|
mov r0, #0x35
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
bl sub_020399EC
|
|
b _02239E4A
|
|
_02239E34:
|
|
ldr r0, _02239E50 ; =0x00000FD4
|
|
ldr r1, [r4, r0]
|
|
add r1, r1, #1
|
|
str r1, [r4, r0]
|
|
ldr r1, [r4, r0]
|
|
mov r0, #0xe1
|
|
lsl r0, r0, #4
|
|
cmp r1, r0
|
|
bne _02239E4A
|
|
bl sub_020399EC
|
|
_02239E4A:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
nop
|
|
_02239E50: .word 0x00000FD4
|
|
_02239E54: .word 0x000006DC
|
|
thumb_func_end ov72_02239D6C
|
|
|
|
thumb_func_start ov72_02239E58
|
|
ov72_02239E58: ; 0x02239E58
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
ldr r1, _02239E8C ; =0x00000F0F
|
|
add r4, r0, #0
|
|
str r1, [sp]
|
|
ldr r1, _02239E90 ; =0x00000BD4
|
|
mov r2, #3
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #0x2d
|
|
bl ov72_02238680
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
ldr r0, [r4]
|
|
mov r1, #0
|
|
str r1, [r0, #0x20]
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_02239E8C: .word 0x00000F0F
|
|
_02239E90: .word 0x00000BD4
|
|
thumb_func_end ov72_02239E58
|
|
|
|
thumb_func_start ov72_02239E94
|
|
ov72_02239E94: ; 0x02239E94
|
|
mov r1, #0x29
|
|
str r1, [r0, #0x1c]
|
|
mov r0, #3
|
|
bx lr
|
|
thumb_func_end ov72_02239E94
|
|
|
|
thumb_func_start ov72_02239E9C
|
|
ov72_02239E9C: ; 0x02239E9C
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, [r4]
|
|
mov r1, #2
|
|
ldr r0, [r0, #0xc]
|
|
bl Save_PrepareForAsyncWrite
|
|
mov r0, #0x28
|
|
str r0, [r4, #0x1c]
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_02239E9C
|
|
|
|
thumb_func_start ov72_02239EB4
|
|
ov72_02239EB4: ; 0x02239EB4
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, [r4]
|
|
ldr r0, [r0, #0xc]
|
|
bl Save_WriteFileAsync
|
|
cmp r0, #2
|
|
bne _02239ECE
|
|
ldr r0, [r4, #0x20]
|
|
str r0, [r4, #0x1c]
|
|
add r0, r4, #0
|
|
bl ov72_0223A444
|
|
_02239ECE:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_02239EB4
|
|
|
|
thumb_func_start ov72_02239ED4
|
|
ov72_02239ED4: ; 0x02239ED4
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
ldr r1, _02239EFC ; =0x00000F0F
|
|
add r4, r0, #0
|
|
str r1, [sp]
|
|
ldr r1, _02239F00 ; =0x00000BD4
|
|
mov r2, #4
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x30
|
|
mov r2, #0x16
|
|
bl ov72_02238680
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_02239EFC: .word 0x00000F0F
|
|
_02239F00: .word 0x00000BD4
|
|
thumb_func_end ov72_02239ED4
|
|
|
|
thumb_func_start ov72_02239F04
|
|
ov72_02239F04: ; 0x02239F04
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _02239F2C ; =0x0000136C
|
|
add r0, r4, r0
|
|
bl ov72_0223AF48
|
|
cmp r0, #0
|
|
beq _02239F28
|
|
cmp r0, #2
|
|
bne _02239F1E
|
|
mov r0, #0xd
|
|
str r0, [r4, #0x1c]
|
|
b _02239F28
|
|
_02239F1E:
|
|
mov r0, #0x29
|
|
str r0, [r4, #0x1c]
|
|
ldr r0, [r4]
|
|
mov r1, #1
|
|
str r1, [r0, #0x20]
|
|
_02239F28:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_02239F2C: .word 0x0000136C
|
|
thumb_func_end ov72_02239F04
|
|
|
|
thumb_func_start ov72_02239F30
|
|
ov72_02239F30: ; 0x02239F30
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
ldr r1, _02239F58 ; =0x00000F0F
|
|
add r4, r0, #0
|
|
str r1, [sp]
|
|
ldr r1, _02239F5C ; =0x00000BD4
|
|
mov r2, #9
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x30
|
|
mov r2, #0x18
|
|
bl ov72_02238680
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_02239F58: .word 0x00000F0F
|
|
_02239F5C: .word 0x00000BD4
|
|
thumb_func_end ov72_02239F30
|
|
|
|
thumb_func_start ov72_02239F60
|
|
ov72_02239F60: ; 0x02239F60
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _02239F88 ; =0x0000136C
|
|
add r0, r4, r0
|
|
bl ov72_0223AF48
|
|
cmp r0, #0
|
|
beq _02239F84
|
|
cmp r0, #2
|
|
bne _02239F7A
|
|
mov r0, #0x1d
|
|
str r0, [r4, #0x1c]
|
|
b _02239F84
|
|
_02239F7A:
|
|
mov r0, #0x29
|
|
str r0, [r4, #0x1c]
|
|
ldr r0, [r4]
|
|
mov r1, #1
|
|
str r1, [r0, #0x20]
|
|
_02239F84:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_02239F88: .word 0x0000136C
|
|
thumb_func_end ov72_02239F60
|
|
|
|
thumb_func_start ov72_02239F8C
|
|
ov72_02239F8C: ; 0x02239F8C
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
ldr r1, _02239FB4 ; =0x00000F0F
|
|
add r4, r0, #0
|
|
str r1, [sp]
|
|
ldr r1, _02239FB8 ; =0x00000BDC
|
|
mov r2, #0x1a
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
mov r2, #0x2a
|
|
bl ov72_02238680
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_02239FB4: .word 0x00000F0F
|
|
_02239FB8: .word 0x00000BDC
|
|
thumb_func_end ov72_02239F8C
|
|
|
|
thumb_func_start ov72_02239FBC
|
|
ov72_02239FBC: ; 0x02239FBC
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov00_021EC8D8
|
|
mov r1, #0
|
|
add r0, r4, #0
|
|
add r2, r1, #0
|
|
bl ov72_022387D0
|
|
mov r0, #0x2b
|
|
str r0, [r4, #0x1c]
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_02239FBC
|
|
|
|
thumb_func_start ov72_02239FD8
|
|
ov72_02239FD8: ; 0x02239FD8
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
ldr r1, _0223A008 ; =0x00000F0F
|
|
add r4, r0, #0
|
|
str r1, [sp]
|
|
ldr r1, _0223A00C ; =0x00000BDC
|
|
mov r2, #0x1b
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
add r0, r4, #0
|
|
mov r1, #0x31
|
|
mov r2, #0x2e
|
|
bl ov72_02238680
|
|
mov r0, #0xf6
|
|
mov r1, #0
|
|
lsl r0, r0, #4
|
|
str r1, [r4, r0]
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_0223A008: .word 0x00000F0F
|
|
_0223A00C: .word 0x00000BDC
|
|
thumb_func_end ov72_02239FD8
|
|
|
|
thumb_func_start ov72_0223A010
|
|
ov72_0223A010: ; 0x0223A010
|
|
mov r0, #3
|
|
bx lr
|
|
thumb_func_end ov72_0223A010
|
|
|
|
thumb_func_start ov72_0223A014
|
|
ov72_0223A014: ; 0x0223A014
|
|
push {r3, r4, lr}
|
|
sub sp, #0xc
|
|
add r4, r0, #0
|
|
bl sub_0203A914
|
|
bl sub_0203946C
|
|
mov r0, #8
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
mov r0, #0x43
|
|
str r0, [sp, #8]
|
|
mov r0, #0
|
|
add r1, r0, #0
|
|
add r2, r0, #0
|
|
add r3, r0, #0
|
|
bl BeginNormalPaletteFade
|
|
mov r0, #0
|
|
str r0, [r4, #0x1c]
|
|
mov r0, #4
|
|
add sp, #0xc
|
|
pop {r3, r4, pc}
|
|
thumb_func_end ov72_0223A014
|
|
|
|
thumb_func_start ov72_0223A044
|
|
ov72_0223A044: ; 0x0223A044
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _0223A068 ; =0x00001308
|
|
ldr r0, [r4, r0]
|
|
bl ov72_02238668
|
|
cmp r0, #0
|
|
beq _0223A062
|
|
cmp r0, #2
|
|
bne _0223A05E
|
|
mov r0, #0
|
|
str r0, [r4, #0x1c]
|
|
b _0223A062
|
|
_0223A05E:
|
|
mov r0, #0x29
|
|
str r0, [r4, #0x1c]
|
|
_0223A062:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
nop
|
|
_0223A068: .word 0x00001308
|
|
thumb_func_end ov72_0223A044
|
|
|
|
thumb_func_start ov72_0223A06C
|
|
ov72_0223A06C: ; 0x0223A06C
|
|
push {r3, r4, r5, lr}
|
|
add r5, r0, #0
|
|
ldr r0, _0223A0D4 ; =0x00000F5C
|
|
mov r4, #0
|
|
ldr r0, [r5, r0]
|
|
add r0, r0, #7
|
|
cmp r0, #9
|
|
bhi _0223A0AE
|
|
add r0, r0, r0
|
|
add r0, pc
|
|
ldrh r0, [r0, #6]
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
add pc, r0
|
|
_0223A088: ; jump table
|
|
.short _0223A0A8 - _0223A088 - 2 ; case 0
|
|
.short _0223A09C - _0223A088 - 2 ; case 1
|
|
.short _0223A0AE - _0223A088 - 2 ; case 2
|
|
.short _0223A0A8 - _0223A088 - 2 ; case 3
|
|
.short _0223A0AC - _0223A088 - 2 ; case 4
|
|
.short _0223A09C - _0223A088 - 2 ; case 5
|
|
.short _0223A0A4 - _0223A088 - 2 ; case 6
|
|
.short _0223A0AE - _0223A088 - 2 ; case 7
|
|
.short _0223A0A0 - _0223A088 - 2 ; case 8
|
|
.short _0223A0A4 - _0223A088 - 2 ; case 9
|
|
_0223A09C:
|
|
mov r4, #0xf
|
|
b _0223A0AE
|
|
_0223A0A0:
|
|
mov r4, #0xd
|
|
b _0223A0AE
|
|
_0223A0A4:
|
|
mov r4, #0xe
|
|
b _0223A0AE
|
|
_0223A0A8:
|
|
mov r4, #0x10
|
|
b _0223A0AE
|
|
_0223A0AC:
|
|
mov r4, #0x11
|
|
_0223A0AE:
|
|
add r0, r5, #0
|
|
bl ov72_0223A444
|
|
ldr r0, _0223A0D8 ; =0x00000F0F
|
|
ldr r1, _0223A0DC ; =0x00000BD4
|
|
str r0, [sp]
|
|
ldr r1, [r5, r1]
|
|
add r0, r5, #0
|
|
add r2, r4, #0
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
add r0, r5, #0
|
|
mov r1, #0x2f
|
|
mov r2, #0x36
|
|
bl ov72_02238680
|
|
mov r0, #3
|
|
pop {r3, r4, r5, pc}
|
|
.balign 4, 0
|
|
_0223A0D4: .word 0x00000F5C
|
|
_0223A0D8: .word 0x00000F0F
|
|
_0223A0DC: .word 0x00000BD4
|
|
thumb_func_end ov72_0223A06C
|
|
|
|
thumb_func_start ov72_0223A0E0
|
|
ov72_0223A0E0: ; 0x0223A0E0
|
|
push {r3, r4, lr}
|
|
sub sp, #4
|
|
mov r1, #0xfd
|
|
add r4, r0, #0
|
|
lsl r1, r1, #4
|
|
ldrsh r2, [r4, r1]
|
|
cmp r2, #3
|
|
bhi _0223A17C
|
|
add r2, r2, r2
|
|
add r2, pc
|
|
ldrh r2, [r2, #6]
|
|
lsl r2, r2, #0x10
|
|
asr r2, r2, #0x10
|
|
add pc, r2
|
|
_0223A0FC: ; jump table
|
|
.short _0223A104 - _0223A0FC - 2 ; case 0
|
|
.short _0223A120 - _0223A0FC - 2 ; case 1
|
|
.short _0223A144 - _0223A0FC - 2 ; case 2
|
|
.short _0223A160 - _0223A0FC - 2 ; case 3
|
|
_0223A104:
|
|
sub r1, #0xc1
|
|
str r1, [sp]
|
|
ldr r1, _0223A1A0 ; =0x00000BD4
|
|
mov r2, #0x12
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
mov r0, #0xfd
|
|
lsl r0, r0, #4
|
|
ldrsh r1, [r4, r0]
|
|
add r1, r1, #1
|
|
strh r1, [r4, r0]
|
|
b _0223A198
|
|
_0223A120:
|
|
ldr r0, _0223A1A4 ; =0x00000BF4
|
|
ldr r0, [r4, r0]
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
bl TextPrinterCheckActive
|
|
cmp r0, #0
|
|
bne _0223A198
|
|
bl sub_0203946C
|
|
bl ov00_021EC8D8
|
|
mov r0, #0xfd
|
|
lsl r0, r0, #4
|
|
ldrsh r1, [r4, r0]
|
|
add r1, r1, #1
|
|
strh r1, [r4, r0]
|
|
b _0223A198
|
|
_0223A144:
|
|
sub r1, #0xc1
|
|
str r1, [sp]
|
|
ldr r1, _0223A1A0 ; =0x00000BD4
|
|
mov r2, #0x13
|
|
ldr r1, [r4, r1]
|
|
mov r3, #1
|
|
bl ov72_0223A350
|
|
mov r0, #0xfd
|
|
lsl r0, r0, #4
|
|
ldrsh r1, [r4, r0]
|
|
add r1, r1, #1
|
|
strh r1, [r4, r0]
|
|
b _0223A198
|
|
_0223A160:
|
|
ldr r0, _0223A1A4 ; =0x00000BF4
|
|
ldr r0, [r4, r0]
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
bl TextPrinterCheckActive
|
|
cmp r0, #0
|
|
bne _0223A198
|
|
mov r0, #0xfd
|
|
lsl r0, r0, #4
|
|
ldrsh r1, [r4, r0]
|
|
add r1, r1, #1
|
|
strh r1, [r4, r0]
|
|
b _0223A198
|
|
_0223A17C:
|
|
ldr r0, _0223A1A8 ; =0x00000FD2
|
|
ldrsh r1, [r4, r0]
|
|
add r1, r1, #1
|
|
strh r1, [r4, r0]
|
|
ldrsh r0, [r4, r0]
|
|
cmp r0, #0x1e
|
|
ble _0223A198
|
|
mov r1, #0
|
|
add r0, r4, #0
|
|
add r2, r1, #0
|
|
bl ov72_022387D0
|
|
mov r0, #0x2e
|
|
str r0, [r4, #0x1c]
|
|
_0223A198:
|
|
mov r0, #3
|
|
add sp, #4
|
|
pop {r3, r4, pc}
|
|
nop
|
|
_0223A1A0: .word 0x00000BD4
|
|
_0223A1A4: .word 0x00000BF4
|
|
_0223A1A8: .word 0x00000FD2
|
|
thumb_func_end ov72_0223A0E0
|
|
|
|
thumb_func_start ov72_0223A1AC
|
|
ov72_0223A1AC: ; 0x0223A1AC
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _0223A1C8 ; =0x00000BF4
|
|
ldr r0, [r4, r0]
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
bl TextPrinterCheckActive
|
|
cmp r0, #0
|
|
bne _0223A1C4
|
|
ldr r0, [r4, #0x20]
|
|
str r0, [r4, #0x1c]
|
|
_0223A1C4:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_0223A1C8: .word 0x00000BF4
|
|
thumb_func_end ov72_0223A1AC
|
|
|
|
thumb_func_start ov72_0223A1CC
|
|
ov72_0223A1CC: ; 0x0223A1CC
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _0223A1FC ; =0x00000BF4
|
|
ldr r0, [r4, r0]
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
bl TextPrinterCheckActive
|
|
cmp r0, #0
|
|
bne _0223A1F8
|
|
mov r0, #0xf6
|
|
lsl r0, r0, #4
|
|
ldr r0, [r4, r0]
|
|
cmp r0, #0x1e
|
|
ble _0223A1EE
|
|
ldr r0, [r4, #0x20]
|
|
str r0, [r4, #0x1c]
|
|
_0223A1EE:
|
|
mov r0, #0xf6
|
|
lsl r0, r0, #4
|
|
ldr r1, [r4, r0]
|
|
add r1, r1, #1
|
|
str r1, [r4, r0]
|
|
_0223A1F8:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_0223A1FC: .word 0x00000BF4
|
|
thumb_func_end ov72_0223A1CC
|
|
|
|
thumb_func_start ov72_0223A200
|
|
ov72_0223A200: ; 0x0223A200
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _0223A274 ; =0x00000BF4
|
|
ldr r0, [r4, r0]
|
|
lsl r0, r0, #0x18
|
|
lsr r0, r0, #0x18
|
|
bl TextPrinterCheckActive
|
|
cmp r0, #0
|
|
bne _0223A26E
|
|
ldr r0, _0223A278 ; =0x00000E14
|
|
ldr r1, [r4, r0]
|
|
ldr r0, _0223A27C ; =0x00001370
|
|
str r1, [r4, r0]
|
|
ldr r2, [r4, #4]
|
|
sub r1, r0, #4
|
|
str r2, [r4, r1]
|
|
add r1, r0, #0
|
|
mov r2, #0x43
|
|
add r1, #0x24
|
|
str r2, [r4, r1]
|
|
add r1, r0, #0
|
|
mov r2, #0
|
|
add r1, #0x28
|
|
strb r2, [r4, r1]
|
|
add r1, r0, #0
|
|
mov r2, #0xa
|
|
add r1, #0x2a
|
|
strb r2, [r4, r1]
|
|
add r1, r0, #0
|
|
mov r2, #6
|
|
add r1, #0x2b
|
|
strb r2, [r4, r1]
|
|
add r1, r0, #0
|
|
mov r2, #4
|
|
add r1, #0x2e
|
|
strb r2, [r4, r1]
|
|
add r1, r0, #0
|
|
mov r2, #0xb
|
|
add r1, #0x2c
|
|
strb r2, [r4, r1]
|
|
add r1, r0, #0
|
|
mov r2, #1
|
|
add r1, #0x2d
|
|
strb r2, [r4, r1]
|
|
add r1, r0, #0
|
|
sub r0, r0, #4
|
|
add r2, #0xff
|
|
add r1, #0x30
|
|
add r0, r4, r0
|
|
str r2, [r4, r1]
|
|
bl ov72_0223AF1C
|
|
ldr r0, [r4, #0x20]
|
|
str r0, [r4, #0x1c]
|
|
_0223A26E:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
nop
|
|
_0223A274: .word 0x00000BF4
|
|
_0223A278: .word 0x00000E14
|
|
_0223A27C: .word 0x00001370
|
|
thumb_func_end ov72_0223A200
|
|
|
|
thumb_func_start ov72_0223A280
|
|
ov72_0223A280: ; 0x0223A280
|
|
push {r3, r4, r5, r6, lr}
|
|
sub sp, #0xc
|
|
add r5, r0, #0
|
|
add r0, r1, #0
|
|
add r1, r2, #0
|
|
add r4, r3, #0
|
|
bl NewString_ReadMsgData
|
|
mov r1, #0xbd
|
|
add r6, r0, #0
|
|
lsl r1, r1, #4
|
|
ldr r0, [r5, r1]
|
|
add r1, #0x10
|
|
ldr r1, [r5, r1]
|
|
add r2, r6, #0
|
|
bl StringExpandPlaceholders
|
|
ldr r0, _0223A2E0 ; =0x00000E18
|
|
mov r1, #0xf
|
|
add r0, r5, r0
|
|
bl FillWindowPixelBuffer
|
|
ldr r0, _0223A2E0 ; =0x00000E18
|
|
mov r1, #0
|
|
add r0, r5, r0
|
|
mov r2, #1
|
|
mov r3, #0xe
|
|
bl DrawFrameAndWindow2
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
str r4, [sp, #4]
|
|
mov r2, #0xbe
|
|
ldr r0, _0223A2E0 ; =0x00000E18
|
|
str r3, [sp, #8]
|
|
lsl r2, r2, #4
|
|
ldr r2, [r5, r2]
|
|
add r0, r5, r0
|
|
mov r1, #1
|
|
bl AddTextPrinterParameterized
|
|
ldr r1, _0223A2E4 ; =0x00000BF4
|
|
str r0, [r5, r1]
|
|
add r0, r6, #0
|
|
bl String_Delete
|
|
add sp, #0xc
|
|
pop {r3, r4, r5, r6, pc}
|
|
.balign 4, 0
|
|
_0223A2E0: .word 0x00000E18
|
|
_0223A2E4: .word 0x00000BF4
|
|
thumb_func_end ov72_0223A280
|
|
|
|
thumb_func_start ov72_0223A2E8
|
|
ov72_0223A2E8: ; 0x0223A2E8
|
|
push {r4, lr}
|
|
ldr r1, _0223A310 ; =0x00000F54
|
|
add r4, r0, #0
|
|
ldr r0, [r4, r1]
|
|
add r1, r1, #4
|
|
ldr r1, [r4, r1]
|
|
neg r0, r0
|
|
bl ov00_021E6A70
|
|
ldr r2, _0223A310 ; =0x00000F54
|
|
add r1, r0, #0
|
|
ldr r2, [r4, r2]
|
|
add r0, r4, #0
|
|
neg r2, r2
|
|
bl ov72_0223A4DC
|
|
mov r0, #0x38
|
|
str r0, [r4, #0x1c]
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_0223A310: .word 0x00000F54
|
|
thumb_func_end ov72_0223A2E8
|
|
|
|
thumb_func_start ov72_0223A314
|
|
ov72_0223A314: ; 0x0223A314
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _0223A344 ; =gSystem
|
|
ldr r1, [r0, #0x48]
|
|
mov r0, #1
|
|
tst r0, r1
|
|
bne _0223A330
|
|
mov r0, #2
|
|
tst r0, r1
|
|
bne _0223A330
|
|
ldr r0, _0223A348 ; =gSystem + 0x40
|
|
ldrh r0, [r0, #0x24]
|
|
cmp r0, #0
|
|
beq _0223A33E
|
|
_0223A330:
|
|
ldr r0, _0223A34C ; =0x00000E58
|
|
mov r1, #0
|
|
add r0, r4, r0
|
|
bl sub_0200E5D4
|
|
mov r0, #0
|
|
str r0, [r4, #0x1c]
|
|
_0223A33E:
|
|
mov r0, #3
|
|
pop {r4, pc}
|
|
nop
|
|
_0223A344: .word gSystem
|
|
_0223A348: .word gSystem + 0x40
|
|
_0223A34C: .word 0x00000E58
|
|
thumb_func_end ov72_0223A314
|
|
|
|
thumb_func_start ov72_0223A350
|
|
ov72_0223A350: ; 0x0223A350
|
|
push {r4, r5, lr}
|
|
sub sp, #0xc
|
|
add r5, r0, #0
|
|
add r0, r1, #0
|
|
add r1, r2, #0
|
|
mov r2, #0xbe
|
|
lsl r2, r2, #4
|
|
ldr r2, [r5, r2]
|
|
add r4, r3, #0
|
|
bl ReadMsgDataIntoString
|
|
ldr r0, _0223A3A0 ; =0x00000E18
|
|
mov r1, #0xf
|
|
add r0, r5, r0
|
|
bl FillWindowPixelBuffer
|
|
ldr r0, _0223A3A0 ; =0x00000E18
|
|
mov r1, #0
|
|
add r0, r5, r0
|
|
mov r2, #1
|
|
mov r3, #0xe
|
|
bl DrawFrameAndWindow2
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
str r4, [sp, #4]
|
|
mov r2, #0xbe
|
|
ldr r0, _0223A3A0 ; =0x00000E18
|
|
str r3, [sp, #8]
|
|
lsl r2, r2, #4
|
|
ldr r2, [r5, r2]
|
|
add r0, r5, r0
|
|
mov r1, #1
|
|
bl AddTextPrinterParameterized
|
|
ldr r1, _0223A3A4 ; =0x00000BF4
|
|
str r0, [r5, r1]
|
|
add sp, #0xc
|
|
pop {r4, r5, pc}
|
|
nop
|
|
_0223A3A0: .word 0x00000E18
|
|
_0223A3A4: .word 0x00000BF4
|
|
thumb_func_end ov72_0223A350
|
|
|
|
thumb_func_start ov72_0223A3A8
|
|
ov72_0223A3A8: ; 0x0223A3A8
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
cmp r3, #1
|
|
beq _0223A3B6
|
|
cmp r3, #2
|
|
beq _0223A3CC
|
|
b _0223A3DA
|
|
_0223A3B6:
|
|
ldr r0, [sp, #0xc]
|
|
mov r2, #0
|
|
bl FontID_String_GetWidth
|
|
ldrb r1, [r4, #7]
|
|
lsl r1, r1, #3
|
|
sub r1, r1, r0
|
|
lsr r0, r1, #0x1f
|
|
add r0, r1, r0
|
|
asr r2, r0, #1
|
|
b _0223A3DA
|
|
_0223A3CC:
|
|
ldr r0, [sp, #0xc]
|
|
mov r2, #0
|
|
bl FontID_String_GetWidth
|
|
ldrb r1, [r4, #7]
|
|
lsl r1, r1, #3
|
|
sub r2, r1, r0
|
|
_0223A3DA:
|
|
add r0, r2, #0
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_0223A3A8
|
|
|
|
thumb_func_start ov72_0223A3E0
|
|
ov72_0223A3E0: ; 0x0223A3E0
|
|
push {r4, r5, r6, lr}
|
|
sub sp, #0x10
|
|
add r4, r3, #0
|
|
ldr r3, [sp, #0x24]
|
|
add r5, r0, #0
|
|
str r3, [sp]
|
|
mov r3, #1
|
|
str r3, [sp, #4]
|
|
ldr r3, [sp, #0x20]
|
|
add r6, r1, #0
|
|
bl ov72_0223A3A8
|
|
add r3, r0, #0
|
|
str r4, [sp]
|
|
mov r1, #0
|
|
ldr r0, [sp, #0x24]
|
|
str r1, [sp, #4]
|
|
str r0, [sp, #8]
|
|
str r1, [sp, #0xc]
|
|
add r0, r5, #0
|
|
mov r1, #1
|
|
add r2, r6, #0
|
|
bl AddTextPrinterParameterized2
|
|
add sp, #0x10
|
|
pop {r4, r5, r6, pc}
|
|
thumb_func_end ov72_0223A3E0
|
|
|
|
thumb_func_start ov72_0223A414
|
|
ov72_0223A414: ; 0x0223A414
|
|
ldr r3, _0223A418 ; =sub_0203A880
|
|
bx r3
|
|
.balign 4, 0
|
|
_0223A418: .word sub_0203A880
|
|
thumb_func_end ov72_0223A414
|
|
|
|
thumb_func_start ov72_0223A41C
|
|
ov72_0223A41C: ; 0x0223A41C
|
|
bx lr
|
|
.balign 4, 0
|
|
thumb_func_end ov72_0223A41C
|
|
|
|
thumb_func_start ov72_0223A420
|
|
ov72_0223A420: ; 0x0223A420
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _0223A43C ; =0x00000F4C
|
|
ldr r0, [r4, r0]
|
|
cmp r0, #0
|
|
bne _0223A43A
|
|
ldr r0, _0223A440 ; =0x00000E18
|
|
mov r1, #1
|
|
add r0, r4, r0
|
|
bl WaitingIcon_New
|
|
ldr r1, _0223A43C ; =0x00000F4C
|
|
str r0, [r4, r1]
|
|
_0223A43A:
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_0223A43C: .word 0x00000F4C
|
|
_0223A440: .word 0x00000E18
|
|
thumb_func_end ov72_0223A420
|
|
|
|
thumb_func_start ov72_0223A444
|
|
ov72_0223A444: ; 0x0223A444
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _0223A45C ; =0x00000F4C
|
|
ldr r0, [r4, r0]
|
|
cmp r0, #0
|
|
beq _0223A45A
|
|
bl sub_0200F450
|
|
ldr r0, _0223A45C ; =0x00000F4C
|
|
mov r1, #0
|
|
str r1, [r4, r0]
|
|
_0223A45A:
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_0223A45C: .word 0x00000F4C
|
|
thumb_func_end ov72_0223A444
|
|
|
|
thumb_func_start ov72_0223A460
|
|
ov72_0223A460: ; 0x0223A460
|
|
push {r3, r4, r5, r6, lr}
|
|
sub sp, #0xc
|
|
add r5, r0, #0
|
|
mov r0, #1
|
|
add r6, r1, #0
|
|
lsl r0, r0, #8
|
|
mov r1, #0x43
|
|
bl String_New
|
|
add r4, r0, #0
|
|
ldr r0, _0223A4D0 ; =0x00000BDC
|
|
add r1, r6, #0
|
|
ldr r0, [r5, r0]
|
|
add r2, r4, #0
|
|
bl ReadMsgDataIntoString
|
|
mov r1, #0xbd
|
|
lsl r1, r1, #4
|
|
ldr r0, [r5, r1]
|
|
add r1, #0x20
|
|
ldr r1, [r5, r1]
|
|
add r2, r4, #0
|
|
bl StringExpandPlaceholders
|
|
ldr r0, _0223A4D4 ; =0x00000E58
|
|
mov r1, #0xf
|
|
add r0, r5, r0
|
|
bl FillWindowPixelBuffer
|
|
ldr r0, _0223A4D4 ; =0x00000E58
|
|
mov r1, #1
|
|
add r0, r5, r0
|
|
mov r2, #0x1f
|
|
mov r3, #0xb
|
|
bl DrawFrameAndWindow1
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
str r3, [sp, #4]
|
|
mov r2, #0xbf
|
|
ldr r0, _0223A4D4 ; =0x00000E58
|
|
str r3, [sp, #8]
|
|
lsl r2, r2, #4
|
|
ldr r2, [r5, r2]
|
|
add r0, r5, r0
|
|
mov r1, #1
|
|
bl AddTextPrinterParameterized
|
|
ldr r1, _0223A4D8 ; =0x00000BF4
|
|
str r0, [r5, r1]
|
|
add r0, r4, #0
|
|
bl String_Delete
|
|
add sp, #0xc
|
|
pop {r3, r4, r5, r6, pc}
|
|
nop
|
|
_0223A4D0: .word 0x00000BDC
|
|
_0223A4D4: .word 0x00000E58
|
|
_0223A4D8: .word 0x00000BF4
|
|
thumb_func_end ov72_0223A460
|
|
|
|
thumb_func_start ov72_0223A4DC
|
|
ov72_0223A4DC: ; 0x0223A4DC
|
|
push {r3, r4, r5, lr}
|
|
sub sp, #8
|
|
add r5, r0, #0
|
|
mov r0, #0
|
|
add r4, r1, #0
|
|
mvn r0, r0
|
|
cmp r4, r0
|
|
bne _0223A4EE
|
|
mov r4, #0xb
|
|
_0223A4EE:
|
|
mov r0, #2
|
|
str r0, [sp]
|
|
mov r0, #1
|
|
str r0, [sp, #4]
|
|
mov r0, #0xbd
|
|
lsl r0, r0, #4
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0
|
|
mov r3, #5
|
|
bl BufferIntegerAsString
|
|
ldr r0, _0223A51C ; =0x00000E18
|
|
mov r1, #1
|
|
add r0, r5, r0
|
|
bl ClearFrameAndWindow2
|
|
add r0, r5, #0
|
|
add r1, r4, #0
|
|
bl ov72_0223A460
|
|
add sp, #8
|
|
pop {r3, r4, r5, pc}
|
|
nop
|
|
_0223A51C: .word 0x00000E18
|
|
thumb_func_end ov72_0223A4DC
|
|
|
|
thumb_func_start ov72_0223A520
|
|
ov72_0223A520: ; 0x0223A520
|
|
push {r4, lr}
|
|
ldr r3, _0223A580 ; =0x0000130C
|
|
mov r4, #0
|
|
strb r1, [r0, r3]
|
|
add r1, r3, #1
|
|
strb r2, [r0, r1]
|
|
add r1, r3, #2
|
|
strb r4, [r0, r1]
|
|
add r1, r3, #3
|
|
strb r4, [r0, r1]
|
|
cmp r2, #0x64
|
|
beq _0223A544
|
|
add r1, r3, #4
|
|
mov r2, #1
|
|
strh r2, [r0, r1]
|
|
add r3, #0x5c
|
|
str r2, [r0, r3]
|
|
b _0223A54C
|
|
_0223A544:
|
|
add r1, r3, #4
|
|
strh r4, [r0, r1]
|
|
add r3, #0x5c
|
|
str r4, [r0, r3]
|
|
_0223A54C:
|
|
ldr r3, _0223A584 ; =0x00001312
|
|
mov r1, #0
|
|
strb r1, [r0, r3]
|
|
sub r4, r1, #1
|
|
add r2, r3, #2
|
|
strb r4, [r0, r2]
|
|
add r2, r3, #3
|
|
strb r4, [r0, r2]
|
|
add r2, r3, #4
|
|
strb r4, [r0, r2]
|
|
add r2, r3, #0
|
|
add r2, #0x52
|
|
strh r1, [r0, r2]
|
|
mov r2, #1
|
|
add r3, #0x54
|
|
strh r2, [r0, r3]
|
|
mov r2, #0xe
|
|
lsl r2, r2, #8
|
|
ldr r0, [r0, r2]
|
|
cmp r0, #0
|
|
beq _0223A57A
|
|
bl ov72_022386F4
|
|
_0223A57A:
|
|
mov r0, #1
|
|
pop {r4, pc}
|
|
nop
|
|
_0223A580: .word 0x0000130C
|
|
_0223A584: .word 0x00001312
|
|
thumb_func_end ov72_0223A520
|
|
|
|
thumb_func_start ov72_0223A588
|
|
ov72_0223A588: ; 0x0223A588
|
|
push {r4, lr}
|
|
ldr r1, _0223A5A8 ; =0x00001312
|
|
add r4, r0, #0
|
|
ldrb r1, [r4, r1]
|
|
lsl r2, r1, #2
|
|
ldr r1, _0223A5AC ; =ov72_0223B744
|
|
ldr r1, [r1, r2]
|
|
blx r1
|
|
cmp r0, #1
|
|
bne _0223A5A2
|
|
ldr r0, _0223A5B0 ; =0x0000130E
|
|
ldrsb r0, [r4, r0]
|
|
pop {r4, pc}
|
|
_0223A5A2:
|
|
mov r0, #0
|
|
pop {r4, pc}
|
|
nop
|
|
_0223A5A8: .word 0x00001312
|
|
_0223A5AC: .word ov72_0223B744
|
|
_0223A5B0: .word 0x0000130E
|
|
thumb_func_end ov72_0223A588
|
|
|
|
thumb_func_start ov72_0223A5B4
|
|
ov72_0223A5B4: ; 0x0223A5B4
|
|
push {r3, r4, lr}
|
|
sub sp, #0xc
|
|
add r4, r0, #0
|
|
mov r0, #4
|
|
str r0, [sp]
|
|
mov r1, #1
|
|
str r1, [sp, #4]
|
|
mov r1, #0x43
|
|
str r1, [sp, #8]
|
|
mov r1, #0
|
|
add r2, r1, #0
|
|
add r3, r1, #0
|
|
bl BeginNormalPaletteFade
|
|
ldr r0, _0223A5DC ; =0x00001312
|
|
mov r1, #1
|
|
strb r1, [r4, r0]
|
|
mov r0, #0
|
|
add sp, #0xc
|
|
pop {r3, r4, pc}
|
|
.balign 4, 0
|
|
_0223A5DC: .word 0x00001312
|
|
thumb_func_end ov72_0223A5B4
|
|
|
|
thumb_func_start ov72_0223A5E0
|
|
ov72_0223A5E0: ; 0x0223A5E0
|
|
push {r3, r4, lr}
|
|
sub sp, #0xc
|
|
add r4, r0, #0
|
|
bl IsPaletteFadeFinished
|
|
cmp r0, #1
|
|
bne _0223A65E
|
|
add r0, r4, #0
|
|
bl ov72_0223A680
|
|
ldr r2, _0223A664 ; =0x00001310
|
|
ldr r0, _0223A668 ; =0x00000E04
|
|
ldrsh r1, [r4, r2]
|
|
add r2, #0x58
|
|
ldr r0, [r4, r0]
|
|
ldr r2, [r4, r2]
|
|
bl ov72_02238730
|
|
add r0, r4, #0
|
|
mov r1, #1
|
|
bl ov72_02238B18
|
|
add r0, r4, #0
|
|
bl ov72_0223ACA8
|
|
ldr r1, _0223A66C ; =0x00000BD4
|
|
ldr r0, _0223A670 ; =0x00001328
|
|
ldr r1, [r4, r1]
|
|
add r0, r4, r0
|
|
mov r2, #0x14
|
|
bl ov72_0223AD20
|
|
ldr r1, _0223A66C ; =0x00000BD4
|
|
ldr r0, _0223A674 ; =0x00001338
|
|
ldr r1, [r4, r1]
|
|
add r0, r4, r0
|
|
mov r2, #0x15
|
|
bl ov72_0223AD20
|
|
ldr r1, _0223A66C ; =0x00000BD4
|
|
ldr r0, _0223A678 ; =0x00001348
|
|
ldr r1, [r4, r1]
|
|
add r0, r4, r0
|
|
mov r2, #0x16
|
|
bl ov72_0223AD20
|
|
mov r0, #4
|
|
mov r1, #1
|
|
bl ToggleBgLayer
|
|
mov r0, #4
|
|
str r0, [sp]
|
|
mov r1, #1
|
|
str r1, [sp, #4]
|
|
mov r2, #0x43
|
|
str r2, [sp, #8]
|
|
add r2, r1, #0
|
|
mov r3, #0
|
|
bl BeginNormalPaletteFade
|
|
ldr r0, _0223A67C ; =0x00001312
|
|
mov r1, #2
|
|
strb r1, [r4, r0]
|
|
_0223A65E:
|
|
mov r0, #0
|
|
add sp, #0xc
|
|
pop {r3, r4, pc}
|
|
.balign 4, 0
|
|
_0223A664: .word 0x00001310
|
|
_0223A668: .word 0x00000E04
|
|
_0223A66C: .word 0x00000BD4
|
|
_0223A670: .word 0x00001328
|
|
_0223A674: .word 0x00001338
|
|
_0223A678: .word 0x00001348
|
|
_0223A67C: .word 0x00001312
|
|
thumb_func_end ov72_0223A5E0
|
|
|
|
thumb_func_start ov72_0223A680
|
|
ov72_0223A680: ; 0x0223A680
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
add r6, r0, #0
|
|
ldr r0, _0223A6FC ; =0x0000130D
|
|
ldrb r0, [r6, r0]
|
|
cmp r0, #0x64
|
|
bne _0223A696
|
|
ldr r0, _0223A700 ; =0x00000DF4
|
|
mov r1, #1
|
|
ldr r0, [r6, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
_0223A696:
|
|
ldr r0, _0223A704 ; =0x00000DF8
|
|
mov r1, #1
|
|
ldr r0, [r6, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
ldr r0, _0223A708 ; =0x00000DFC
|
|
mov r1, #1
|
|
ldr r0, [r6, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
ldr r7, _0223A70C ; =0x00001368
|
|
mov r4, #0
|
|
add r5, r6, #0
|
|
_0223A6B0:
|
|
ldr r0, _0223A700 ; =0x00000DF4
|
|
ldr r2, [r6, r7]
|
|
ldr r0, [r5, r0]
|
|
add r1, r4, #0
|
|
bl ov72_02238750
|
|
add r4, r4, #1
|
|
add r5, r5, #4
|
|
cmp r4, #3
|
|
blt _0223A6B0
|
|
mov r0, #0xe
|
|
lsl r0, r0, #8
|
|
ldr r0, [r6, r0]
|
|
mov r1, #1
|
|
bl Set2dSpriteVisibleFlag
|
|
ldr r0, _0223A710 ; =0x00000E04
|
|
mov r1, #1
|
|
ldr r0, [r6, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
ldr r0, _0223A714 ; =0x00000E08
|
|
mov r1, #1
|
|
ldr r0, [r6, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
ldr r0, _0223A718 ; =0x00000E0C
|
|
mov r1, #1
|
|
ldr r0, [r6, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
mov r0, #0xe1
|
|
lsl r0, r0, #4
|
|
ldr r0, [r6, r0]
|
|
mov r1, #1
|
|
bl Set2dSpriteVisibleFlag
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0223A6FC: .word 0x0000130D
|
|
_0223A700: .word 0x00000DF4
|
|
_0223A704: .word 0x00000DF8
|
|
_0223A708: .word 0x00000DFC
|
|
_0223A70C: .word 0x00001368
|
|
_0223A710: .word 0x00000E04
|
|
_0223A714: .word 0x00000E08
|
|
_0223A718: .word 0x00000E0C
|
|
thumb_func_end ov72_0223A680
|
|
|
|
thumb_func_start ov72_0223A71C
|
|
ov72_0223A71C: ; 0x0223A71C
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl IsPaletteFadeFinished
|
|
cmp r0, #1
|
|
bne _0223A72E
|
|
ldr r0, _0223A734 ; =0x00001312
|
|
mov r1, #3
|
|
strb r1, [r4, r0]
|
|
_0223A72E:
|
|
mov r0, #0
|
|
pop {r4, pc}
|
|
nop
|
|
_0223A734: .word 0x00001312
|
|
thumb_func_end ov72_0223A71C
|
|
|
|
thumb_func_start ov72_0223A738
|
|
ov72_0223A738: ; 0x0223A738
|
|
push {r3, lr}
|
|
ldr r1, _0223A754 ; =0x0000130D
|
|
ldrb r0, [r0, r1]
|
|
cmp r0, #0x64
|
|
bne _0223A74A
|
|
ldr r0, _0223A758 ; =ov72_0223B774
|
|
bl sub_02025224
|
|
pop {r3, pc}
|
|
_0223A74A:
|
|
ldr r0, _0223A75C ; =ov72_0223B7B8
|
|
bl sub_02025224
|
|
pop {r3, pc}
|
|
nop
|
|
_0223A754: .word 0x0000130D
|
|
_0223A758: .word ov72_0223B774
|
|
_0223A75C: .word ov72_0223B7B8
|
|
thumb_func_end ov72_0223A738
|
|
|
|
thumb_func_start ov72_0223A760
|
|
ov72_0223A760: ; 0x0223A760
|
|
push {r3, r4}
|
|
ldr r3, _0223A7E0 ; =ov72_0223B48C
|
|
lsl r4, r0, #2
|
|
add r3, r3, r4
|
|
ldrb r1, [r1, r3]
|
|
cmp r1, #0xd
|
|
bne _0223A776
|
|
ldrh r1, [r2]
|
|
ldr r0, _0223A7E4 ; =ov72_0223B464
|
|
ldrb r1, [r0, r1]
|
|
b _0223A7D8
|
|
_0223A776:
|
|
cmp r1, #0xe
|
|
bne _0223A782
|
|
ldrh r1, [r2]
|
|
ldr r0, _0223A7E8 ; =ov72_0223B466
|
|
ldrb r1, [r0, r1]
|
|
b _0223A7D8
|
|
_0223A782:
|
|
cmp r1, #0xf
|
|
bne _0223A78E
|
|
ldrh r1, [r2, #2]
|
|
ldr r0, _0223A7EC ; =ov72_0223B468
|
|
ldrb r1, [r0, r1]
|
|
b _0223A7D8
|
|
_0223A78E:
|
|
cmp r1, #0x10
|
|
bne _0223A79A
|
|
ldrh r1, [r2, #2]
|
|
ldr r0, _0223A7F0 ; =ov72_0223B46A
|
|
ldrb r1, [r0, r1]
|
|
b _0223A7D8
|
|
_0223A79A:
|
|
cmp r1, #0xa
|
|
bne _0223A7BA
|
|
cmp r0, #5
|
|
beq _0223A7A6
|
|
cmp r0, #0
|
|
bne _0223A7AC
|
|
_0223A7A6:
|
|
mov r0, #0
|
|
strh r0, [r2]
|
|
b _0223A7D8
|
|
_0223A7AC:
|
|
cmp r0, #1
|
|
beq _0223A7B4
|
|
cmp r0, #6
|
|
bne _0223A7D8
|
|
_0223A7B4:
|
|
mov r0, #1
|
|
strh r0, [r2]
|
|
b _0223A7D8
|
|
_0223A7BA:
|
|
cmp r1, #0xc
|
|
bne _0223A7D8
|
|
cmp r0, #3
|
|
beq _0223A7C6
|
|
cmp r0, #8
|
|
bne _0223A7CC
|
|
_0223A7C6:
|
|
mov r0, #0
|
|
strh r0, [r2, #2]
|
|
b _0223A7D8
|
|
_0223A7CC:
|
|
cmp r0, #4
|
|
beq _0223A7D4
|
|
cmp r0, #9
|
|
bne _0223A7D8
|
|
_0223A7D4:
|
|
mov r0, #1
|
|
strh r0, [r2, #2]
|
|
_0223A7D8:
|
|
add r0, r1, #0
|
|
pop {r3, r4}
|
|
bx lr
|
|
nop
|
|
_0223A7E0: .word ov72_0223B48C
|
|
_0223A7E4: .word ov72_0223B464
|
|
_0223A7E8: .word ov72_0223B466
|
|
_0223A7EC: .word ov72_0223B468
|
|
_0223A7F0: .word ov72_0223B46A
|
|
thumb_func_end ov72_0223A760
|
|
|
|
thumb_func_start ov72_0223A7F4
|
|
ov72_0223A7F4: ; 0x0223A7F4
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0x24
|
|
add r7, r0, #0
|
|
add r6, r1, #0
|
|
mov r0, #0x64
|
|
mov r4, #3
|
|
mov r1, #0
|
|
add r2, sp, #0x18
|
|
mov r3, #8
|
|
_0223A806:
|
|
add r5, r7, r1
|
|
ldrsb r5, [r5, r3]
|
|
add r1, r1, #1
|
|
cmp r1, #3
|
|
stmia r2!, {r5}
|
|
blt _0223A806
|
|
mov r1, #0
|
|
mvn r1, r1
|
|
cmp r6, r1
|
|
beq _0223A824
|
|
mov r1, #4
|
|
ldrsh r1, [r7, r1]
|
|
lsl r2, r1, #2
|
|
add r1, sp, #0x18
|
|
str r6, [r1, r2]
|
|
_0223A824:
|
|
mov r1, #0
|
|
str r1, [sp, #4]
|
|
str r1, [sp, #8]
|
|
add r5, r1, #0
|
|
add r6, sp, #0x18
|
|
_0223A82E:
|
|
add r2, r7, r5
|
|
mov r1, #8
|
|
ldrsb r1, [r2, r1]
|
|
cmp r1, #0
|
|
bne _0223A83E
|
|
ldr r1, [sp, #8]
|
|
cmp r1, #0
|
|
beq _0223A844
|
|
_0223A83E:
|
|
ldr r2, [r6]
|
|
cmp r2, #0
|
|
bge _0223A84E
|
|
_0223A844:
|
|
mov r1, #0xa
|
|
bl _s32_div_f
|
|
sub r4, r4, #1
|
|
b _0223A860
|
|
_0223A84E:
|
|
mov r1, #1
|
|
ldr r3, [sp, #4]
|
|
str r1, [sp, #8]
|
|
ldr r1, [sp, #4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
lsl r1, r1, #2
|
|
add r3, sp, #0xc
|
|
str r2, [r3, r1]
|
|
_0223A860:
|
|
add r5, r5, #1
|
|
add r6, r6, #4
|
|
cmp r5, #3
|
|
blt _0223A82E
|
|
mov r6, #0
|
|
str r6, [sp]
|
|
cmp r4, #0
|
|
ble _0223A88A
|
|
add r5, sp, #0xc
|
|
_0223A872:
|
|
ldr r1, [r5]
|
|
mul r1, r0
|
|
add r6, r6, r1
|
|
mov r1, #0xa
|
|
bl _s32_div_f
|
|
ldr r1, [sp]
|
|
add r5, r5, #4
|
|
add r1, r1, #1
|
|
str r1, [sp]
|
|
cmp r1, r4
|
|
blt _0223A872
|
|
_0223A88A:
|
|
ldrb r0, [r7, #1]
|
|
cmp r6, r0
|
|
ble _0223A898
|
|
mov r0, #0
|
|
add sp, #0x24
|
|
mvn r0, r0
|
|
pop {r4, r5, r6, r7, pc}
|
|
_0223A898:
|
|
add r0, r6, #0
|
|
add sp, #0x24
|
|
pop {r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_0223A7F4
|
|
|
|
thumb_func_start ov72_0223A8A0
|
|
ov72_0223A8A0: ; 0x0223A8A0
|
|
ldrb r1, [r0, #1]
|
|
cmp r1, #0x64
|
|
beq _0223A8BA
|
|
mov r1, #9
|
|
ldrsb r1, [r0, r1]
|
|
cmp r1, #0
|
|
blt _0223A8D6
|
|
mov r1, #0xa
|
|
ldrsb r0, [r0, r1]
|
|
cmp r0, #0
|
|
blt _0223A8D6
|
|
mov r0, #1
|
|
bx lr
|
|
_0223A8BA:
|
|
mov r1, #8
|
|
ldrsb r1, [r0, r1]
|
|
cmp r1, #0
|
|
blt _0223A8D6
|
|
mov r1, #9
|
|
ldrsb r1, [r0, r1]
|
|
cmp r1, #0
|
|
blt _0223A8D6
|
|
mov r1, #0xa
|
|
ldrsb r0, [r0, r1]
|
|
cmp r0, #0
|
|
blt _0223A8D6
|
|
mov r0, #1
|
|
bx lr
|
|
_0223A8D6:
|
|
mov r0, #0
|
|
bx lr
|
|
.balign 4, 0
|
|
thumb_func_end ov72_0223A8A0
|
|
|
|
thumb_func_start ov72_0223A8DC
|
|
ov72_0223A8DC: ; 0x0223A8DC
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov72_0223A8A0
|
|
cmp r0, #0
|
|
beq _0223A8EC
|
|
mov r0, #0xb
|
|
pop {r4, pc}
|
|
_0223A8EC:
|
|
ldrb r0, [r4, #3]
|
|
pop {r4, pc}
|
|
thumb_func_end ov72_0223A8DC
|
|
|
|
thumb_func_start ov72_0223A8F0
|
|
ov72_0223A8F0: ; 0x0223A8F0
|
|
push {r3, r4, r5, lr}
|
|
add r5, r1, #0
|
|
add r4, r0, #0
|
|
cmp r5, #0xf
|
|
bls _0223A8FC
|
|
b _0223AA6A
|
|
_0223A8FC:
|
|
add r0, r5, r5
|
|
add r0, pc
|
|
ldrh r0, [r0, #6]
|
|
lsl r0, r0, #0x10
|
|
asr r0, r0, #0x10
|
|
add pc, r0
|
|
_0223A908: ; jump table
|
|
.short _0223AA6A - _0223A908 - 2 ; case 0
|
|
.short _0223AA6A - _0223A908 - 2 ; case 1
|
|
.short _0223AA6A - _0223A908 - 2 ; case 2
|
|
.short _0223A928 - _0223A908 - 2 ; case 3
|
|
.short _0223A928 - _0223A908 - 2 ; case 4
|
|
.short _0223A928 - _0223A908 - 2 ; case 5
|
|
.short _0223A928 - _0223A908 - 2 ; case 6
|
|
.short _0223A928 - _0223A908 - 2 ; case 7
|
|
.short _0223A928 - _0223A908 - 2 ; case 8
|
|
.short _0223A928 - _0223A908 - 2 ; case 9
|
|
.short _0223A928 - _0223A908 - 2 ; case 10
|
|
.short _0223A928 - _0223A908 - 2 ; case 11
|
|
.short _0223A928 - _0223A908 - 2 ; case 12
|
|
.short _0223A9A2 - _0223A908 - 2 ; case 13
|
|
.short _0223A9F4 - _0223A908 - 2 ; case 14
|
|
.short _0223AA38 - _0223A908 - 2 ; case 15
|
|
_0223A928:
|
|
ldr r0, _0223AA6C ; =0x0000130C
|
|
sub r1, r5, #3
|
|
add r0, r4, r0
|
|
bl ov72_0223A7F4
|
|
mov r1, #0
|
|
mvn r1, r1
|
|
cmp r0, r1
|
|
beq _0223A99A
|
|
ldr r1, _0223AA70 ; =0x00001310
|
|
sub r3, r5, #3
|
|
ldrsh r0, [r4, r1]
|
|
add r2, r4, r0
|
|
add r0, r1, #4
|
|
strb r3, [r2, r0]
|
|
ldrsh r0, [r4, r1]
|
|
cmp r0, #2
|
|
bge _0223A950
|
|
add r0, r0, #1
|
|
strh r0, [r4, r1]
|
|
_0223A950:
|
|
ldr r2, _0223AA70 ; =0x00001310
|
|
ldr r0, _0223AA74 ; =0x00000E04
|
|
ldrsh r1, [r4, r2]
|
|
add r2, #0x58
|
|
ldr r0, [r4, r0]
|
|
ldr r2, [r4, r2]
|
|
bl ov72_02238730
|
|
ldr r0, _0223AA78 ; =0x0000130F
|
|
sub r1, r5, #3
|
|
strb r1, [r4, r0]
|
|
sub r0, r0, #3
|
|
add r0, r4, r0
|
|
bl ov72_0223A8DC
|
|
ldr r1, _0223AA78 ; =0x0000130F
|
|
strb r0, [r4, r1]
|
|
mov r0, #0xe
|
|
lsl r0, r0, #8
|
|
ldrb r1, [r4, r1]
|
|
ldr r0, [r4, r0]
|
|
bl ov72_022386F4
|
|
ldr r0, _0223AA7C ; =0x000005DC
|
|
bl PlaySE
|
|
sub r0, r5, #3
|
|
lsl r3, r0, #1
|
|
ldr r1, _0223AA80 ; =ov72_0223B478
|
|
ldr r2, _0223AA84 ; =ov72_0223B479
|
|
ldrb r1, [r1, r3]
|
|
ldrb r2, [r2, r3]
|
|
add r0, r4, #0
|
|
mov r3, #3
|
|
bl ov72_0223AED0
|
|
pop {r3, r4, r5, pc}
|
|
_0223A99A:
|
|
ldr r0, _0223AA88 ; =0x000005F2
|
|
bl PlaySE
|
|
pop {r3, r4, r5, pc}
|
|
_0223A9A2:
|
|
ldr r1, _0223AA70 ; =0x00001310
|
|
mov r3, #0
|
|
ldrsh r0, [r4, r1]
|
|
mvn r3, r3
|
|
add r2, r4, r0
|
|
add r0, r1, #4
|
|
strb r3, [r2, r0]
|
|
ldrsh r0, [r4, r1]
|
|
sub r0, r0, #1
|
|
strh r0, [r4, r1]
|
|
sub r0, r1, #3
|
|
ldrb r0, [r4, r0]
|
|
cmp r0, #0x64
|
|
ldrsh r0, [r4, r1]
|
|
bne _0223A9CA
|
|
cmp r0, #0
|
|
bge _0223A9D2
|
|
mov r0, #0
|
|
strh r0, [r4, r1]
|
|
b _0223A9D2
|
|
_0223A9CA:
|
|
cmp r0, #1
|
|
bge _0223A9D2
|
|
mov r0, #1
|
|
strh r0, [r4, r1]
|
|
_0223A9D2:
|
|
ldr r0, _0223AA7C ; =0x000005DC
|
|
bl PlaySE
|
|
ldr r2, _0223AA70 ; =0x00001310
|
|
ldr r0, _0223AA74 ; =0x00000E04
|
|
ldrsh r1, [r4, r2]
|
|
add r2, #0x58
|
|
ldr r0, [r4, r0]
|
|
ldr r2, [r4, r2]
|
|
bl ov72_02238730
|
|
ldr r0, _0223AA8C ; =0x00000E08
|
|
mov r1, #5
|
|
ldr r0, [r4, r0]
|
|
bl Set2dSpriteAnimSeqNo
|
|
pop {r3, r4, r5, pc}
|
|
_0223A9F4:
|
|
ldr r1, _0223AA78 ; =0x0000130F
|
|
sub r0, r5, #3
|
|
strb r0, [r4, r1]
|
|
mov r0, #0xe
|
|
lsl r0, r0, #8
|
|
ldrb r1, [r4, r1]
|
|
ldr r0, [r4, r0]
|
|
bl ov72_022386F4
|
|
ldr r0, _0223AA6C ; =0x0000130C
|
|
mov r1, #0
|
|
add r0, r4, r0
|
|
mvn r1, r1
|
|
bl ov72_0223A7F4
|
|
ldr r1, _0223AA90 ; =0x0000130E
|
|
strb r0, [r4, r1]
|
|
ldrsb r0, [r4, r1]
|
|
cmp r0, #0
|
|
bgt _0223AA20
|
|
mov r0, #1
|
|
strb r0, [r4, r1]
|
|
_0223AA20:
|
|
ldr r0, _0223AA94 ; =0x00001312
|
|
mov r1, #7
|
|
strb r1, [r4, r0]
|
|
ldr r0, _0223AA7C ; =0x000005DC
|
|
bl PlaySE
|
|
ldr r0, _0223AA98 ; =0x00000E0C
|
|
mov r1, #5
|
|
ldr r0, [r4, r0]
|
|
bl Set2dSpriteAnimSeqNo
|
|
pop {r3, r4, r5, pc}
|
|
_0223AA38:
|
|
ldr r1, _0223AA78 ; =0x0000130F
|
|
sub r0, r5, #3
|
|
mov r2, #0
|
|
strb r0, [r4, r1]
|
|
mvn r2, r2
|
|
sub r0, r1, #1
|
|
strb r2, [r4, r0]
|
|
mov r0, #0xe
|
|
lsl r0, r0, #8
|
|
ldrb r1, [r4, r1]
|
|
ldr r0, [r4, r0]
|
|
bl ov72_022386F4
|
|
ldr r0, _0223AA94 ; =0x00001312
|
|
mov r1, #7
|
|
strb r1, [r4, r0]
|
|
ldr r0, _0223AA7C ; =0x000005DC
|
|
bl PlaySE
|
|
mov r0, #0xe1
|
|
lsl r0, r0, #4
|
|
ldr r0, [r4, r0]
|
|
mov r1, #5
|
|
bl Set2dSpriteAnimSeqNo
|
|
_0223AA6A:
|
|
pop {r3, r4, r5, pc}
|
|
.balign 4, 0
|
|
_0223AA6C: .word 0x0000130C
|
|
_0223AA70: .word 0x00001310
|
|
_0223AA74: .word 0x00000E04
|
|
_0223AA78: .word 0x0000130F
|
|
_0223AA7C: .word 0x000005DC
|
|
_0223AA80: .word ov72_0223B478
|
|
_0223AA84: .word ov72_0223B479
|
|
_0223AA88: .word 0x000005F2
|
|
_0223AA8C: .word 0x00000E08
|
|
_0223AA90: .word 0x0000130E
|
|
_0223AA94: .word 0x00001312
|
|
_0223AA98: .word 0x00000E0C
|
|
thumb_func_end ov72_0223A8F0
|
|
|
|
thumb_func_start ov72_0223AA9C
|
|
ov72_0223AA9C: ; 0x0223AA9C
|
|
push {r4, lr}
|
|
ldr r1, _0223AB78 ; =gSystem
|
|
mov r3, #0x40
|
|
ldr r2, [r1, #0x4c]
|
|
add r4, r0, #0
|
|
tst r3, r2
|
|
beq _0223AAD0
|
|
ldr r2, _0223AB7C ; =0x0000130F
|
|
mov r1, #0
|
|
ldrb r0, [r4, r2]
|
|
add r2, #0x55
|
|
add r2, r4, r2
|
|
bl ov72_0223A760
|
|
ldr r1, _0223AB7C ; =0x0000130F
|
|
strb r0, [r4, r1]
|
|
mov r0, #0xe
|
|
lsl r0, r0, #8
|
|
ldrb r1, [r4, r1]
|
|
ldr r0, [r4, r0]
|
|
bl ov72_022386F4
|
|
ldr r0, _0223AB80 ; =0x000005DC
|
|
bl PlaySE
|
|
b _0223AB74
|
|
_0223AAD0:
|
|
mov r3, #0x80
|
|
tst r3, r2
|
|
beq _0223AAFC
|
|
ldr r2, _0223AB7C ; =0x0000130F
|
|
mov r1, #1
|
|
ldrb r0, [r4, r2]
|
|
add r2, #0x55
|
|
add r2, r4, r2
|
|
bl ov72_0223A760
|
|
ldr r1, _0223AB7C ; =0x0000130F
|
|
strb r0, [r4, r1]
|
|
mov r0, #0xe
|
|
lsl r0, r0, #8
|
|
ldrb r1, [r4, r1]
|
|
ldr r0, [r4, r0]
|
|
bl ov72_022386F4
|
|
ldr r0, _0223AB80 ; =0x000005DC
|
|
bl PlaySE
|
|
b _0223AB74
|
|
_0223AAFC:
|
|
mov r3, #0x20
|
|
tst r3, r2
|
|
beq _0223AB28
|
|
ldr r2, _0223AB7C ; =0x0000130F
|
|
mov r1, #2
|
|
ldrb r0, [r4, r2]
|
|
add r2, #0x55
|
|
add r2, r4, r2
|
|
bl ov72_0223A760
|
|
ldr r1, _0223AB7C ; =0x0000130F
|
|
strb r0, [r4, r1]
|
|
mov r0, #0xe
|
|
lsl r0, r0, #8
|
|
ldrb r1, [r4, r1]
|
|
ldr r0, [r4, r0]
|
|
bl ov72_022386F4
|
|
ldr r0, _0223AB80 ; =0x000005DC
|
|
bl PlaySE
|
|
b _0223AB74
|
|
_0223AB28:
|
|
mov r3, #0x10
|
|
tst r2, r3
|
|
beq _0223AB54
|
|
ldr r2, _0223AB7C ; =0x0000130F
|
|
mov r1, #3
|
|
ldrb r0, [r4, r2]
|
|
add r2, #0x55
|
|
add r2, r4, r2
|
|
bl ov72_0223A760
|
|
ldr r1, _0223AB7C ; =0x0000130F
|
|
strb r0, [r4, r1]
|
|
mov r0, #0xe
|
|
lsl r0, r0, #8
|
|
ldrb r1, [r4, r1]
|
|
ldr r0, [r4, r0]
|
|
bl ov72_022386F4
|
|
ldr r0, _0223AB80 ; =0x000005DC
|
|
bl PlaySE
|
|
b _0223AB74
|
|
_0223AB54:
|
|
ldr r2, [r1, #0x48]
|
|
mov r1, #1
|
|
tst r1, r2
|
|
beq _0223AB68
|
|
ldr r1, _0223AB7C ; =0x0000130F
|
|
ldrb r1, [r4, r1]
|
|
add r1, r1, #3
|
|
bl ov72_0223A8F0
|
|
b _0223AB74
|
|
_0223AB68:
|
|
mov r1, #2
|
|
tst r1, r2
|
|
beq _0223AB74
|
|
mov r1, #0xd
|
|
bl ov72_0223A8F0
|
|
_0223AB74:
|
|
mov r0, #0
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_0223AB78: .word gSystem
|
|
_0223AB7C: .word 0x0000130F
|
|
_0223AB80: .word 0x000005DC
|
|
thumb_func_end ov72_0223AA9C
|
|
|
|
thumb_func_start ov72_0223AB84
|
|
ov72_0223AB84: ; 0x0223AB84
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov72_0223A738
|
|
add r1, r0, #0
|
|
mov r0, #0
|
|
mvn r0, r0
|
|
cmp r1, r0
|
|
bne _0223AB9E
|
|
add r0, r4, #0
|
|
bl ov72_0223AA9C
|
|
b _0223ABA4
|
|
_0223AB9E:
|
|
add r0, r4, #0
|
|
bl ov72_0223A8F0
|
|
_0223ABA4:
|
|
add r0, r4, #0
|
|
bl ov72_0223ABB0
|
|
mov r0, #0
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_0223AB84
|
|
|
|
thumb_func_start ov72_0223ABB0
|
|
ov72_0223ABB0: ; 0x0223ABB0
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
add r6, r0, #0
|
|
mov r4, #0
|
|
add r5, r6, #0
|
|
sub r7, r4, #1
|
|
_0223ABBA:
|
|
ldr r0, _0223ABEC ; =0x00001314
|
|
add r1, r6, r4
|
|
ldrsb r1, [r1, r0]
|
|
cmp r1, r7
|
|
bne _0223ABD0
|
|
ldr r0, _0223ABF0 ; =0x00000DF4
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteAnimSeqNo
|
|
b _0223ABE2
|
|
_0223ABD0:
|
|
cmp r1, #0
|
|
blt _0223ABE2
|
|
cmp r1, #9
|
|
bgt _0223ABE2
|
|
ldr r0, _0223ABF0 ; =0x00000DF4
|
|
add r1, r1, #1
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteAnimSeqNo
|
|
_0223ABE2:
|
|
add r4, r4, #1
|
|
add r5, r5, #4
|
|
cmp r4, #3
|
|
blt _0223ABBA
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0223ABEC: .word 0x00001314
|
|
_0223ABF0: .word 0x00000DF4
|
|
thumb_func_end ov72_0223ABB0
|
|
|
|
thumb_func_start ov72_0223ABF4
|
|
ov72_0223ABF4: ; 0x0223ABF4
|
|
mov r0, #0
|
|
bx lr
|
|
thumb_func_end ov72_0223ABF4
|
|
|
|
thumb_func_start ov72_0223ABF8
|
|
ov72_0223ABF8: ; 0x0223ABF8
|
|
mov r0, #0
|
|
bx lr
|
|
thumb_func_end ov72_0223ABF8
|
|
|
|
thumb_func_start ov72_0223ABFC
|
|
ov72_0223ABFC: ; 0x0223ABFC
|
|
mov r0, #0
|
|
bx lr
|
|
thumb_func_end ov72_0223ABFC
|
|
|
|
thumb_func_start ov72_0223AC00
|
|
ov72_0223AC00: ; 0x0223AC00
|
|
push {r3, r4, lr}
|
|
sub sp, #0xc
|
|
add r4, r0, #0
|
|
mov r0, #4
|
|
str r0, [sp]
|
|
mov r1, #1
|
|
str r1, [sp, #4]
|
|
mov r1, #0x43
|
|
str r1, [sp, #8]
|
|
mov r1, #0
|
|
add r2, r1, #0
|
|
add r3, r1, #0
|
|
bl BeginNormalPaletteFade
|
|
ldr r0, _0223AC28 ; =0x00001312
|
|
mov r1, #8
|
|
strb r1, [r4, r0]
|
|
mov r0, #0
|
|
add sp, #0xc
|
|
pop {r3, r4, pc}
|
|
.balign 4, 0
|
|
_0223AC28: .word 0x00001312
|
|
thumb_func_end ov72_0223AC00
|
|
|
|
thumb_func_start ov72_0223AC2C
|
|
ov72_0223AC2C: ; 0x0223AC2C
|
|
push {r3, r4, lr}
|
|
sub sp, #0xc
|
|
add r4, r0, #0
|
|
bl IsPaletteFadeFinished
|
|
cmp r0, #1
|
|
bne _0223AC62
|
|
add r0, r4, #0
|
|
bl ov72_0223AD94
|
|
add r0, r4, #0
|
|
mov r1, #0
|
|
bl ov72_02238B18
|
|
mov r0, #4
|
|
str r0, [sp]
|
|
mov r1, #1
|
|
str r1, [sp, #4]
|
|
mov r2, #0x43
|
|
str r2, [sp, #8]
|
|
add r2, r1, #0
|
|
mov r3, #0
|
|
bl BeginNormalPaletteFade
|
|
ldr r0, _0223AC68 ; =0x00001312
|
|
mov r1, #9
|
|
strb r1, [r4, r0]
|
|
_0223AC62:
|
|
mov r0, #0
|
|
add sp, #0xc
|
|
pop {r3, r4, pc}
|
|
.balign 4, 0
|
|
_0223AC68: .word 0x00001312
|
|
thumb_func_end ov72_0223AC2C
|
|
|
|
thumb_func_start ov72_0223AC6C
|
|
ov72_0223AC6C: ; 0x0223AC6C
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl ov72_0223AE6C
|
|
cmp r0, #0
|
|
bne _0223AC80
|
|
ldr r0, _0223AC84 ; =0x00001313
|
|
ldrb r1, [r4, r0]
|
|
sub r0, r0, #1
|
|
strb r1, [r4, r0]
|
|
_0223AC80:
|
|
mov r0, #0
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
_0223AC84: .word 0x00001313
|
|
thumb_func_end ov72_0223AC6C
|
|
|
|
thumb_func_start ov72_0223AC88
|
|
ov72_0223AC88: ; 0x0223AC88
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
bl IsPaletteFadeFinished
|
|
cmp r0, #1
|
|
bne _0223AC9A
|
|
ldr r0, _0223ACA0 ; =0x00001312
|
|
mov r1, #0xb
|
|
strb r1, [r4, r0]
|
|
_0223AC9A:
|
|
mov r0, #0
|
|
pop {r4, pc}
|
|
nop
|
|
_0223ACA0: .word 0x00001312
|
|
thumb_func_end ov72_0223AC88
|
|
|
|
thumb_func_start ov72_0223ACA4
|
|
ov72_0223ACA4: ; 0x0223ACA4
|
|
mov r0, #1
|
|
bx lr
|
|
thumb_func_end ov72_0223ACA4
|
|
|
|
thumb_func_start ov72_0223ACA8
|
|
ov72_0223ACA8: ; 0x0223ACA8
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
sub sp, #0x18
|
|
ldr r1, _0223AD14 ; =0x00001328
|
|
ldr r5, _0223AD18 ; =ov72_0223B46C
|
|
str r0, [sp, #0x14]
|
|
mov r7, #0
|
|
mov r4, #0x1f
|
|
add r6, r0, r1
|
|
_0223ACB8:
|
|
mov r0, #0x15
|
|
str r0, [sp]
|
|
mov r0, #8
|
|
str r0, [sp, #4]
|
|
mov r0, #2
|
|
str r0, [sp, #8]
|
|
mov r0, #0xd
|
|
str r0, [sp, #0xc]
|
|
lsl r0, r4, #0x10
|
|
lsr r0, r0, #0x10
|
|
str r0, [sp, #0x10]
|
|
ldr r0, [sp, #0x14]
|
|
ldr r3, [r5]
|
|
ldr r0, [r0, #4]
|
|
lsl r3, r3, #0x18
|
|
add r1, r6, #0
|
|
mov r2, #4
|
|
lsr r3, r3, #0x18
|
|
bl AddWindowParameterized
|
|
add r7, r7, #1
|
|
add r4, #0x40
|
|
add r5, r5, #4
|
|
add r6, #0x10
|
|
cmp r7, #3
|
|
blt _0223ACB8
|
|
mov r0, #0x13
|
|
str r0, [sp]
|
|
mov r0, #0x1b
|
|
str r0, [sp, #4]
|
|
mov r2, #4
|
|
str r2, [sp, #8]
|
|
mov r0, #0xd
|
|
str r0, [sp, #0xc]
|
|
mov r0, #0x4f
|
|
str r0, [sp, #0x10]
|
|
ldr r0, [sp, #0x14]
|
|
ldr r3, _0223AD1C ; =0x00001318
|
|
ldr r1, [sp, #0x14]
|
|
ldr r0, [r0, #4]
|
|
add r1, r1, r3
|
|
mov r3, #2
|
|
bl AddWindowParameterized
|
|
add sp, #0x18
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0223AD14: .word 0x00001328
|
|
_0223AD18: .word ov72_0223B46C
|
|
_0223AD1C: .word 0x00001318
|
|
thumb_func_end ov72_0223ACA8
|
|
|
|
thumb_func_start ov72_0223AD20
|
|
ov72_0223AD20: ; 0x0223AD20
|
|
push {r3, r4, r5, lr}
|
|
sub sp, #0x10
|
|
add r5, r0, #0
|
|
add r0, r1, #0
|
|
add r1, r2, #0
|
|
bl NewString_ReadMsgData
|
|
add r4, r0, #0
|
|
add r0, r5, #0
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
ldr r0, _0223AD60 ; =0x000F0200
|
|
str r3, [sp, #4]
|
|
str r0, [sp, #8]
|
|
add r0, r5, #0
|
|
mov r1, #4
|
|
add r2, r4, #0
|
|
str r3, [sp, #0xc]
|
|
bl AddTextPrinterParameterized2
|
|
add r0, r5, #0
|
|
bl CopyWindowToVram
|
|
add r0, r4, #0
|
|
bl String_Delete
|
|
add sp, #0x10
|
|
pop {r3, r4, r5, pc}
|
|
nop
|
|
_0223AD60: .word 0x000F0200
|
|
thumb_func_end ov72_0223AD20
|
|
|
|
thumb_func_start ov72_0223AD64
|
|
ov72_0223AD64: ; 0x0223AD64
|
|
push {r4, r5, r6, lr}
|
|
add r6, r0, #0
|
|
ldr r0, _0223AD8C ; =0x00001328
|
|
mov r4, #0
|
|
add r5, r6, r0
|
|
_0223AD6E:
|
|
add r0, r5, #0
|
|
bl ClearWindowTilemapAndCopyToVram
|
|
add r0, r5, #0
|
|
bl RemoveWindow
|
|
add r4, r4, #1
|
|
add r5, #0x10
|
|
cmp r4, #3
|
|
blt _0223AD6E
|
|
ldr r0, _0223AD90 ; =0x00001318
|
|
add r0, r6, r0
|
|
bl RemoveWindow
|
|
pop {r4, r5, r6, pc}
|
|
.balign 4, 0
|
|
_0223AD8C: .word 0x00001328
|
|
_0223AD90: .word 0x00001318
|
|
thumb_func_end ov72_0223AD64
|
|
|
|
thumb_func_start ov72_0223AD94
|
|
ov72_0223AD94: ; 0x0223AD94
|
|
push {r3, r4, r5, r6, r7, lr}
|
|
add r5, r0, #0
|
|
bl ov72_0223AD64
|
|
ldr r0, _0223AE08 ; =0x00000DF4
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
ldr r0, _0223AE0C ; =0x00000DF8
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
ldr r0, _0223AE10 ; =0x00000DFC
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
mov r0, #0xe
|
|
lsl r0, r0, #8
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0
|
|
bl Set2dSpriteVisibleFlag
|
|
ldr r0, _0223AE14 ; =0x00000E04
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
ldr r0, _0223AE18 ; =0x00000E08
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
ldr r0, _0223AE1C ; =0x00000E0C
|
|
mov r1, #0
|
|
ldr r0, [r5, r0]
|
|
bl Set2dSpriteVisibleFlag
|
|
mov r0, #0xe1
|
|
lsl r0, r0, #4
|
|
ldr r0, [r5, r0]
|
|
mov r1, #0
|
|
bl Set2dSpriteVisibleFlag
|
|
mov r4, #0
|
|
ldr r6, _0223AE08 ; =0x00000DF4
|
|
add r7, r4, #0
|
|
_0223ADF6:
|
|
ldr r0, [r5, r6]
|
|
add r1, r7, #0
|
|
bl Set2dSpriteAnimSeqNo
|
|
add r4, r4, #1
|
|
add r5, r5, #4
|
|
cmp r4, #3
|
|
blt _0223ADF6
|
|
pop {r3, r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0223AE08: .word 0x00000DF4
|
|
_0223AE0C: .word 0x00000DF8
|
|
_0223AE10: .word 0x00000DFC
|
|
_0223AE14: .word 0x00000E04
|
|
_0223AE18: .word 0x00000E08
|
|
_0223AE1C: .word 0x00000E0C
|
|
thumb_func_end ov72_0223AD94
|
|
|
|
thumb_func_start ov72_0223AE20
|
|
ov72_0223AE20: ; 0x0223AE20
|
|
push {r4, r5, lr}
|
|
sub sp, #0xc
|
|
add r5, r0, #0
|
|
ldr r0, _0223AE64 ; =0x00001358
|
|
add r4, r5, r0
|
|
ldrb r0, [r4]
|
|
cmp r0, #0
|
|
bne _0223AE42
|
|
ldrb r0, [r4, #2]
|
|
lsl r0, r0, #2
|
|
add r2, r5, r0
|
|
ldr r0, _0223AE68 ; =0x00000DF4
|
|
ldr r0, [r2, r0]
|
|
bl Set2dSpriteAnimSeqNo
|
|
add sp, #0xc
|
|
pop {r4, r5, pc}
|
|
_0223AE42:
|
|
ldrb r0, [r4, #4]
|
|
str r0, [sp]
|
|
ldrb r0, [r4, #5]
|
|
str r0, [sp, #4]
|
|
str r1, [sp, #8]
|
|
ldrb r1, [r4, #2]
|
|
ldrb r2, [r4, #6]
|
|
ldrb r3, [r4, #7]
|
|
ldr r0, [r5, #4]
|
|
bl BgTilemapRectChangePalette
|
|
ldrb r1, [r4, #2]
|
|
ldr r0, [r5, #4]
|
|
bl ScheduleBgTilemapBufferTransfer
|
|
add sp, #0xc
|
|
pop {r4, r5, pc}
|
|
.balign 4, 0
|
|
_0223AE64: .word 0x00001358
|
|
_0223AE68: .word 0x00000DF4
|
|
thumb_func_end ov72_0223AE20
|
|
|
|
thumb_func_start ov72_0223AE6C
|
|
ov72_0223AE6C: ; 0x0223AE6C
|
|
push {r4, lr}
|
|
ldr r1, _0223AECC ; =0x00001358
|
|
add r4, r0, r1
|
|
ldrb r1, [r4, #1]
|
|
cmp r1, #0
|
|
beq _0223AE82
|
|
cmp r1, #1
|
|
beq _0223AE94
|
|
cmp r1, #2
|
|
beq _0223AEB6
|
|
b _0223AEC6
|
|
_0223AE82:
|
|
ldrh r1, [r4, #8]
|
|
lsl r1, r1, #0x18
|
|
lsr r1, r1, #0x18
|
|
bl ov72_0223AE20
|
|
ldrb r0, [r4, #1]
|
|
add r0, r0, #1
|
|
strb r0, [r4, #1]
|
|
b _0223AEC6
|
|
_0223AE94:
|
|
ldrb r1, [r4, #3]
|
|
add r1, r1, #1
|
|
strb r1, [r4, #3]
|
|
ldrb r1, [r4, #3]
|
|
cmp r1, #4
|
|
bne _0223AEC6
|
|
ldrh r1, [r4, #0xa]
|
|
lsl r1, r1, #0x18
|
|
lsr r1, r1, #0x18
|
|
bl ov72_0223AE20
|
|
mov r0, #0
|
|
strb r0, [r4, #3]
|
|
ldrb r0, [r4, #1]
|
|
add r0, r0, #1
|
|
strb r0, [r4, #1]
|
|
b _0223AEC6
|
|
_0223AEB6:
|
|
ldrb r0, [r4, #3]
|
|
add r0, r0, #1
|
|
strb r0, [r4, #3]
|
|
ldrb r0, [r4, #3]
|
|
cmp r0, #2
|
|
bne _0223AEC6
|
|
mov r0, #0
|
|
pop {r4, pc}
|
|
_0223AEC6:
|
|
mov r0, #1
|
|
pop {r4, pc}
|
|
nop
|
|
_0223AECC: .word 0x00001358
|
|
thumb_func_end ov72_0223AE6C
|
|
|
|
thumb_func_start ov72_0223AED0
|
|
ov72_0223AED0: ; 0x0223AED0
|
|
push {r4, r5, r6, r7}
|
|
ldr r4, _0223AF18 ; =0x00001358
|
|
mov r5, #1
|
|
strb r5, [r0, r4]
|
|
mov r5, #0
|
|
add r6, r4, #3
|
|
strb r5, [r0, r6]
|
|
add r6, r4, #1
|
|
strb r5, [r0, r6]
|
|
mov r7, #5
|
|
add r6, r4, #2
|
|
strb r7, [r0, r6]
|
|
add r7, r4, #0
|
|
add r7, #8
|
|
mov r6, #1
|
|
strh r6, [r0, r7]
|
|
add r6, r4, #0
|
|
add r6, #0xa
|
|
strh r5, [r0, r6]
|
|
add r5, r4, #6
|
|
strb r1, [r0, r5]
|
|
add r1, r4, #7
|
|
strb r2, [r0, r1]
|
|
mov r2, #6
|
|
add r1, r4, #4
|
|
strb r2, [r0, r1]
|
|
add r1, r4, #5
|
|
strb r2, [r0, r1]
|
|
add r1, r4, #0
|
|
sub r1, #0x45
|
|
strb r3, [r0, r1]
|
|
mov r1, #0xa
|
|
sub r4, #0x46
|
|
strb r1, [r0, r4]
|
|
pop {r4, r5, r6, r7}
|
|
bx lr
|
|
.balign 4, 0
|
|
_0223AF18: .word 0x00001358
|
|
thumb_func_end ov72_0223AED0
|
|
|
|
thumb_func_start ov72_0223AF1C
|
|
ov72_0223AF1C: ; 0x0223AF1C
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
add r1, r4, #0
|
|
mov r2, #0
|
|
add r1, #0x2d
|
|
strb r2, [r1]
|
|
add r1, r4, #0
|
|
add r1, #0x2c
|
|
ldrb r2, [r1]
|
|
add r1, r4, #0
|
|
add r1, #0x33
|
|
strb r2, [r1]
|
|
bl ov72_0223B0C4
|
|
add r0, r4, #0
|
|
bl ov72_0223B1C8
|
|
add r0, r4, #0
|
|
bl ov72_0223B2E4
|
|
pop {r4, pc}
|
|
.balign 4, 0
|
|
thumb_func_end ov72_0223AF1C
|
|
|
|
thumb_func_start ov72_0223AF48
|
|
ov72_0223AF48: ; 0x0223AF48
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
add r1, r4, #0
|
|
add r1, #0x2d
|
|
ldrb r1, [r1]
|
|
lsl r2, r1, #2
|
|
ldr r1, _0223AF6C ; =ov72_0223B7FC
|
|
ldr r1, [r1, r2]
|
|
blx r1
|
|
cmp r0, #1
|
|
bne _0223AF66
|
|
add r4, #0x33
|
|
ldrb r0, [r4]
|
|
add r0, r0, #1
|
|
pop {r4, pc}
|
|
_0223AF66:
|
|
mov r0, #0
|
|
pop {r4, pc}
|
|
nop
|
|
_0223AF6C: .word ov72_0223B7FC
|
|
thumb_func_end ov72_0223AF48
|
|
|
|
thumb_func_start ov72_0223AF70
|
|
ov72_0223AF70: ; 0x0223AF70
|
|
mov r1, #1
|
|
add r0, #0x2d
|
|
strb r1, [r0]
|
|
mov r0, #0
|
|
bx lr
|
|
.balign 4, 0
|
|
thumb_func_end ov72_0223AF70
|
|
|
|
thumb_func_start ov72_0223AF7C
|
|
ov72_0223AF7C: ; 0x0223AF7C
|
|
push {r3, r4, r5, lr}
|
|
add r4, r0, #0
|
|
ldr r0, _0223B078 ; =ov72_0223B4C8
|
|
bl sub_02025224
|
|
add r5, r0, #0
|
|
mov r0, #0
|
|
mvn r0, r0
|
|
cmp r5, r0
|
|
beq _0223AFE6
|
|
ldr r0, _0223B07C ; =0x000005DC
|
|
bl PlaySE
|
|
cmp r5, #0
|
|
bne _0223AFBE
|
|
add r0, r4, #0
|
|
mov r1, #0
|
|
add r0, #0x33
|
|
strb r1, [r0]
|
|
add r1, r4, #0
|
|
add r1, #0x33
|
|
ldrb r1, [r1]
|
|
add r0, r4, #0
|
|
bl ov72_0223B2FC
|
|
ldr r0, [r4, #4]
|
|
mov r1, #3
|
|
bl Set2dSpriteAnimSeqNo
|
|
mov r0, #3
|
|
add r4, #0x2d
|
|
strb r0, [r4]
|
|
b _0223B074
|
|
_0223AFBE:
|
|
cmp r5, #1
|
|
bne _0223B074
|
|
add r0, r4, #0
|
|
mov r1, #1
|
|
add r0, #0x33
|
|
strb r1, [r0]
|
|
add r1, r4, #0
|
|
add r1, #0x33
|
|
ldrb r1, [r1]
|
|
add r0, r4, #0
|
|
bl ov72_0223B2FC
|
|
ldr r0, [r4, #4]
|
|
mov r1, #3
|
|
bl Set2dSpriteAnimSeqNo
|
|
mov r0, #3
|
|
add r4, #0x2d
|
|
strb r0, [r4]
|
|
b _0223B074
|
|
_0223AFE6:
|
|
ldr r0, _0223B080 ; =gSystem
|
|
mov r1, #0x40
|
|
ldr r0, [r0, #0x48]
|
|
tst r1, r0
|
|
beq _0223B00A
|
|
add r0, r4, #0
|
|
mov r1, #0
|
|
add r0, #0x33
|
|
strb r1, [r0]
|
|
add r0, r4, #0
|
|
add r4, #0x33
|
|
ldrb r1, [r4]
|
|
bl ov72_0223B2FC
|
|
ldr r0, _0223B07C ; =0x000005DC
|
|
bl PlaySE
|
|
b _0223B074
|
|
_0223B00A:
|
|
mov r1, #0x80
|
|
tst r1, r0
|
|
beq _0223B02A
|
|
add r0, r4, #0
|
|
mov r1, #1
|
|
add r0, #0x33
|
|
strb r1, [r0]
|
|
add r0, r4, #0
|
|
add r4, #0x33
|
|
ldrb r1, [r4]
|
|
bl ov72_0223B2FC
|
|
ldr r0, _0223B07C ; =0x000005DC
|
|
bl PlaySE
|
|
b _0223B074
|
|
_0223B02A:
|
|
mov r2, #1
|
|
add r1, r0, #0
|
|
tst r1, r2
|
|
beq _0223B048
|
|
ldr r0, [r4, #4]
|
|
mov r1, #3
|
|
bl Set2dSpriteAnimSeqNo
|
|
mov r0, #3
|
|
add r4, #0x2d
|
|
strb r0, [r4]
|
|
ldr r0, _0223B07C ; =0x000005DC
|
|
bl PlaySE
|
|
b _0223B074
|
|
_0223B048:
|
|
mov r1, #2
|
|
tst r0, r1
|
|
beq _0223B074
|
|
add r0, r4, #0
|
|
add r0, #0x33
|
|
add r1, r4, #0
|
|
strb r2, [r0]
|
|
add r1, #0x33
|
|
ldrb r1, [r1]
|
|
add r0, r4, #0
|
|
bl ov72_0223B2FC
|
|
add r0, r4, #0
|
|
mov r1, #3
|
|
add r0, #0x2d
|
|
strb r1, [r0]
|
|
ldr r0, [r4, #4]
|
|
bl Set2dSpriteAnimSeqNo
|
|
ldr r0, _0223B07C ; =0x000005DC
|
|
bl PlaySE
|
|
_0223B074:
|
|
mov r0, #0
|
|
pop {r3, r4, r5, pc}
|
|
.balign 4, 0
|
|
_0223B078: .word ov72_0223B4C8
|
|
_0223B07C: .word 0x000005DC
|
|
_0223B080: .word gSystem
|
|
thumb_func_end ov72_0223AF7C
|
|
|
|
thumb_func_start ov72_0223B084
|
|
ov72_0223B084: ; 0x0223B084
|
|
mov r0, #0
|
|
bx lr
|
|
thumb_func_end ov72_0223B084
|
|
|
|
thumb_func_start ov72_0223B088
|
|
ov72_0223B088: ; 0x0223B088
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, [r4, #4]
|
|
bl sub_02024B68
|
|
cmp r0, #0
|
|
beq _0223B09A
|
|
mov r0, #0
|
|
pop {r4, pc}
|
|
_0223B09A:
|
|
add r0, r4, #0
|
|
add r0, #0x2f
|
|
ldrb r0, [r0]
|
|
mov r1, #0
|
|
bl ToggleBgLayer
|
|
add r0, r4, #0
|
|
add r0, #0x32
|
|
ldrb r0, [r0]
|
|
mov r1, #0
|
|
bl ToggleBgLayer
|
|
add r0, r4, #0
|
|
bl ov72_0223B2C0
|
|
ldr r0, [r4, #4]
|
|
mov r1, #0
|
|
bl Set2dSpriteVisibleFlag
|
|
mov r0, #1
|
|
pop {r4, pc}
|
|
thumb_func_end ov72_0223B088
|
|
|
|
thumb_func_start ov72_0223B0C4
|
|
ov72_0223B0C4: ; 0x0223B0C4
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0x1c
|
|
add r4, r0, #0
|
|
ldr r1, [r4, #0x28]
|
|
mov r0, #0xef
|
|
bl NARC_New
|
|
add r1, r4, #0
|
|
add r1, #0x2f
|
|
ldrb r1, [r1]
|
|
str r0, [sp, #0x14]
|
|
cmp r1, #3
|
|
bhi _0223B108
|
|
mov r1, #0x20
|
|
str r1, [sp]
|
|
ldr r1, [r4, #0x28]
|
|
add r3, r4, #0
|
|
str r1, [sp, #4]
|
|
add r3, #0x2e
|
|
ldrb r3, [r3]
|
|
mov r1, #0
|
|
add r2, r1, #0
|
|
lsl r3, r3, #5
|
|
bl GfGfxLoader_GXLoadPalFromOpenNarc
|
|
add r1, r4, #0
|
|
add r1, #0x30
|
|
ldrb r1, [r1]
|
|
ldr r2, [r4, #0x28]
|
|
mov r0, #0
|
|
lsl r1, r1, #5
|
|
bl LoadFontPal0
|
|
b _0223B130
|
|
_0223B108:
|
|
mov r1, #0x20
|
|
str r1, [sp]
|
|
ldr r1, [r4, #0x28]
|
|
add r3, r4, #0
|
|
str r1, [sp, #4]
|
|
add r3, #0x2e
|
|
ldrb r3, [r3]
|
|
mov r1, #0
|
|
mov r2, #4
|
|
lsl r3, r3, #5
|
|
bl GfGfxLoader_GXLoadPalFromOpenNarc
|
|
add r1, r4, #0
|
|
add r1, #0x30
|
|
ldrb r1, [r1]
|
|
ldr r2, [r4, #0x28]
|
|
mov r0, #4
|
|
lsl r1, r1, #5
|
|
bl LoadFontPal0
|
|
_0223B130:
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
str r0, [sp, #8]
|
|
ldr r0, [r4, #0x28]
|
|
add r3, r4, #0
|
|
str r0, [sp, #0xc]
|
|
add r3, #0x2f
|
|
ldrb r3, [r3]
|
|
ldr r0, [sp, #0x14]
|
|
ldr r2, [r4]
|
|
mov r1, #1
|
|
bl GfGfxLoader_LoadCharDataFromOpenNarc
|
|
ldr r0, [r4, #0x28]
|
|
mov r1, #0xa
|
|
str r0, [sp]
|
|
ldr r0, [sp, #0x14]
|
|
mov r2, #0
|
|
add r3, sp, #0x18
|
|
bl GfGfxLoader_GetScrnDataFromOpenNarc
|
|
add r1, r4, #0
|
|
add r1, #0x2f
|
|
str r0, [sp, #0x10]
|
|
ldrb r1, [r1]
|
|
ldr r0, [r4]
|
|
bl GetBgTilemapBuffer
|
|
ldr r2, [sp, #0x18]
|
|
mov r5, #3
|
|
ldr r7, _0223B1C4 ; =0x00000FFF
|
|
add r3, r0, #0
|
|
mov r1, #0
|
|
add r2, #0xc
|
|
lsl r5, r5, #8
|
|
_0223B178:
|
|
add r0, r4, #0
|
|
add r0, #0x2e
|
|
ldrh r6, [r2]
|
|
ldrb r0, [r0]
|
|
add r1, r1, #1
|
|
and r6, r7
|
|
lsl r0, r0, #0xc
|
|
orr r0, r6
|
|
strh r0, [r3]
|
|
add r2, r2, #2
|
|
add r3, r3, #2
|
|
cmp r1, r5
|
|
blt _0223B178
|
|
add r1, r4, #0
|
|
add r1, #0x2f
|
|
ldrb r1, [r1]
|
|
ldr r0, [r4]
|
|
bl BgCommitTilemapBufferToVram
|
|
ldr r0, [sp, #0x10]
|
|
bl FreeToHeap
|
|
ldr r0, [sp, #0x14]
|
|
bl NARC_Delete
|
|
add r0, r4, #0
|
|
add r0, #0x2f
|
|
ldrb r0, [r0]
|
|
mov r1, #1
|
|
bl ToggleBgLayer
|
|
add r4, #0x32
|
|
ldrb r0, [r4]
|
|
mov r1, #1
|
|
bl ToggleBgLayer
|
|
add sp, #0x1c
|
|
pop {r4, r5, r6, r7, pc}
|
|
.balign 4, 0
|
|
_0223B1C4: .word 0x00000FFF
|
|
thumb_func_end ov72_0223B0C4
|
|
|
|
thumb_func_start ov72_0223B1C8
|
|
ov72_0223B1C8: ; 0x0223B1C8
|
|
push {r4, r5, r6, r7, lr}
|
|
sub sp, #0x14
|
|
add r5, r0, #0
|
|
ldr r3, [r5, #0x28]
|
|
mov r0, #1
|
|
mov r1, #0x1b
|
|
mov r2, #0xbf
|
|
bl NewMsgDataFromNarc
|
|
add r4, r0, #0
|
|
mov r0, #8
|
|
str r0, [sp]
|
|
str r0, [sp, #4]
|
|
mov r0, #2
|
|
str r0, [sp, #8]
|
|
add r0, r5, #0
|
|
add r0, #0x30
|
|
ldrb r0, [r0]
|
|
add r2, r5, #0
|
|
add r1, r5, #0
|
|
str r0, [sp, #0xc]
|
|
add r0, r5, #0
|
|
add r0, #0x31
|
|
ldrb r0, [r0]
|
|
add r2, #0x32
|
|
add r1, #8
|
|
str r0, [sp, #0x10]
|
|
ldrb r2, [r2]
|
|
ldr r0, [r5]
|
|
mov r3, #0xc
|
|
bl AddWindowParameterized
|
|
add r0, r5, #0
|
|
add r0, #8
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
mov r0, #0xe
|
|
str r0, [sp]
|
|
mov r0, #8
|
|
str r0, [sp, #4]
|
|
mov r0, #2
|
|
str r0, [sp, #8]
|
|
add r0, r5, #0
|
|
add r0, #0x30
|
|
ldrb r0, [r0]
|
|
add r2, r5, #0
|
|
add r1, r5, #0
|
|
str r0, [sp, #0xc]
|
|
add r0, r5, #0
|
|
add r0, #0x31
|
|
ldrb r0, [r0]
|
|
add r2, #0x32
|
|
add r1, #0x18
|
|
add r0, #0x10
|
|
lsl r0, r0, #0x10
|
|
lsr r0, r0, #0x10
|
|
str r0, [sp, #0x10]
|
|
ldrb r2, [r2]
|
|
ldr r0, [r5]
|
|
mov r3, #0xc
|
|
bl AddWindowParameterized
|
|
add r0, r5, #0
|
|
add r0, #0x18
|
|
mov r1, #0
|
|
bl FillWindowPixelBuffer
|
|
add r0, r4, #0
|
|
mov r1, #0x2e
|
|
bl NewString_ReadMsgData
|
|
add r6, r0, #0
|
|
add r0, r4, #0
|
|
mov r1, #0x2f
|
|
bl NewString_ReadMsgData
|
|
mov r3, #0
|
|
add r7, r0, #0
|
|
str r3, [sp]
|
|
ldr r0, _0223B2BC ; =0x000F0100
|
|
str r3, [sp, #4]
|
|
str r0, [sp, #8]
|
|
add r0, r5, #0
|
|
add r0, #8
|
|
mov r1, #4
|
|
add r2, r6, #0
|
|
str r3, [sp, #0xc]
|
|
bl AddTextPrinterParameterized2
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
ldr r0, _0223B2BC ; =0x000F0100
|
|
str r3, [sp, #4]
|
|
str r0, [sp, #8]
|
|
add r0, r5, #0
|
|
add r0, #0x18
|
|
mov r1, #4
|
|
add r2, r7, #0
|
|
str r3, [sp, #0xc]
|
|
bl AddTextPrinterParameterized2
|
|
add r0, r5, #0
|
|
add r0, #8
|
|
bl CopyWindowToVram
|
|
add r5, #0x18
|
|
add r0, r5, #0
|
|
bl CopyWindowToVram
|
|
add r0, r7, #0
|
|
bl String_Delete
|
|
add r0, r6, #0
|
|
bl String_Delete
|
|
add r0, r4, #0
|
|
bl DestroyMsgData
|
|
add sp, #0x14
|
|
pop {r4, r5, r6, r7, pc}
|
|
nop
|
|
_0223B2BC: .word 0x000F0100
|
|
thumb_func_end ov72_0223B1C8
|
|
|
|
thumb_func_start ov72_0223B2C0
|
|
ov72_0223B2C0: ; 0x0223B2C0
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
add r0, #0x18
|
|
bl ClearWindowTilemapAndCopyToVram
|
|
add r0, r4, #0
|
|
add r0, #8
|
|
bl ClearWindowTilemapAndCopyToVram
|
|
add r0, r4, #0
|
|
add r0, #0x18
|
|
bl RemoveWindow
|
|
add r4, #8
|
|
add r0, r4, #0
|
|
bl RemoveWindow
|
|
pop {r4, pc}
|
|
thumb_func_end ov72_0223B2C0
|
|
|
|
thumb_func_start ov72_0223B2E4
|
|
ov72_0223B2E4: ; 0x0223B2E4
|
|
push {r4, lr}
|
|
add r4, r0, #0
|
|
ldr r0, [r4, #4]
|
|
mov r1, #1
|
|
bl Set2dSpriteVisibleFlag
|
|
add r0, r4, #0
|
|
add r4, #0x2c
|
|
ldrb r1, [r4]
|
|
bl ov72_0223B2FC
|
|
pop {r4, pc}
|
|
thumb_func_end ov72_0223B2E4
|
|
|
|
thumb_func_start ov72_0223B2FC
|
|
ov72_0223B2FC: ; 0x0223B2FC
|
|
push {lr}
|
|
sub sp, #0xc
|
|
lsl r3, r1, #2
|
|
ldr r1, _0223B328 ; =ov72_0223B4C0
|
|
ldrh r1, [r1, r3]
|
|
lsl r1, r1, #0xc
|
|
str r1, [sp]
|
|
ldr r1, _0223B32C ; =ov72_0223B4C2
|
|
ldr r2, [r0, #0x34]
|
|
ldrh r1, [r1, r3]
|
|
add r1, r2, r1
|
|
lsl r1, r1, #0xc
|
|
str r1, [sp, #4]
|
|
mov r1, #0
|
|
str r1, [sp, #8]
|
|
ldr r0, [r0, #4]
|
|
add r1, sp, #0
|
|
bl sub_020247D4
|
|
add sp, #0xc
|
|
pop {pc}
|
|
nop
|
|
_0223B328: .word ov72_0223B4C0
|
|
_0223B32C: .word ov72_0223B4C2
|
|
thumb_func_end ov72_0223B2FC
|
|
|
|
.rodata
|
|
|
|
_0223B330:
|
|
.byte 0x00, 0x17, 0x0D, 0x07, 0x04, 0x0D, 0x00, 0x00
|
|
|
|
ov72_0223B338: ; 0x0223B338
|
|
.byte 0x28, 0x00, 0xB0, 0x00, 0x80, 0x00, 0xB0, 0x00
|
|
.byte 0xD8, 0x00, 0xB0, 0x00
|
|
|
|
ov72_0223B344: ; 0x0223B344
|
|
.byte 0x14, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
|
|
.byte 0x43, 0x00, 0x00, 0x00
|
|
|
|
ov72_0223B354: ; 0x0223B354
|
|
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
|
|
ov72_0223B364: ; 0x0223B364
|
|
.byte 0x60, 0x00
|
|
|
|
ov72_0223B366: ; 0x0223B366
|
|
.byte 0x1D, 0x00, 0x80, 0x00, 0x1D, 0x00, 0xA0, 0x00, 0x1D, 0x00
|
|
.byte 0x50, 0x00, 0x1D, 0x00, 0x70, 0x00, 0x1D, 0x00, 0x90, 0x00, 0x1D, 0x00
|
|
|
|
ov72_0223B37C: ; 0x0223B37C
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00
|
|
.byte 0x60, 0x00, 0x00, 0x00
|
|
|
|
ov72_0223B3A4: ; 0x0223B3A4
|
|
.byte 0x20, 0x00
|
|
|
|
ov72_0223B3A6: ; 0x0223B3A6
|
|
.byte 0x51, 0x00, 0x50, 0x00, 0x51, 0x00, 0x80, 0x00, 0x51, 0x00
|
|
.byte 0xAE, 0x00, 0x51, 0x00, 0xE0, 0x00, 0x51, 0x00, 0x20, 0x00, 0x80, 0x00, 0x50, 0x00, 0x80, 0x00
|
|
.byte 0x80, 0x00, 0x80, 0x00, 0xAE, 0x00, 0x80, 0x00, 0xE0, 0x00, 0x80, 0x00, 0x28, 0x00, 0xB0, 0x00
|
|
.byte 0x80, 0x00, 0xB0, 0x00, 0xD8, 0x00, 0xB0, 0x00
|
|
|
|
ov72_0223B3D8: ; 0x0223B3D8
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x1B, 0x02, 0x00, 0x02, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
|
|
ov72_0223B3F4: ; 0x0223B3F4
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x1F, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
|
|
ov72_0223B410: ; 0x0223B410
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x01, 0x00, 0x1E, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
|
|
ov72_0223B42C: ; 0x0223B42C
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x1F, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
|
|
ov72_0223B448: ; 0x0223B448
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x1E, 0x04, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
|
|
ov72_0223B464: ; 0x0223B464
|
|
.byte 0x05, 0x06
|
|
|
|
ov72_0223B466: ; 0x0223B466
|
|
.byte 0x00, 0x01
|
|
|
|
ov72_0223B468: ; 0x0223B468
|
|
.byte 0x08, 0x09
|
|
|
|
ov72_0223B46A: ; 0x0223B46A
|
|
.byte 0x03, 0x04
|
|
|
|
ov72_0223B46C: ; 0x0223B46C
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.byte 0x0C, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00
|
|
|
|
ov72_0223B478: ; 0x0223B478
|
|
.byte 0x01
|
|
|
|
ov72_0223B479: ; 0x0223B479
|
|
.byte 0x07, 0x07, 0x07, 0x0D, 0x07, 0x13, 0x07
|
|
.byte 0x19, 0x07, 0x01, 0x0D, 0x07, 0x0D, 0x0D, 0x0D, 0x13, 0x0D, 0x19, 0x0D
|
|
|
|
ov72_0223B48C: ; 0x0223B48C
|
|
.byte 0x0A, 0x05, 0x04, 0x01
|
|
.byte 0x0A, 0x06, 0x00, 0x02, 0x0B, 0x07, 0x01, 0x03, 0x0C, 0x08, 0x02, 0x04, 0x0C, 0x09, 0x03, 0x00
|
|
.byte 0x00, 0x0A, 0x09, 0x06, 0x01, 0x0A, 0x05, 0x07, 0x02, 0x0B, 0x06, 0x08, 0x03, 0x0C, 0x07, 0x09
|
|
.byte 0x04, 0x0C, 0x08, 0x05, 0x0D, 0x0E, 0x0C, 0x0B, 0x07, 0x02, 0x0A, 0x0C, 0x0F, 0x10, 0x0B, 0x0A
|
|
|
|
ov72_0223B4C0: ; 0x0223B4C0
|
|
.byte 0x80, 0x00
|
|
|
|
ov72_0223B4C2: ; 0x0223B4C2
|
|
.byte 0x48, 0x00, 0x80, 0x00, 0x78, 0x00
|
|
|
|
ov72_0223B4C8: ; 0x0223B4C8
|
|
.byte 0x32, 0x5C, 0x03, 0xFB, 0x63, 0x8C, 0x03, 0xFB
|
|
.byte 0xFF, 0x00, 0x00, 0x00
|
|
|
|
.data
|
|
|
|
_0223B4E0:
|
|
.asciz "http://gamestats2.gs.nintendowifi.net/pokemondpds/battletower/roomnum.asp"
|
|
.balign 4, 0
|
|
|
|
ov72_0223B52C: ; 0x0223B52C
|
|
.asciz "http://gamestats2.gs.nintendowifi.net/pokemondpds/battletower/download.asp"
|
|
.balign 4, 0
|
|
|
|
ov72_0223B578: ; 0x0223B578
|
|
.asciz "http://gamestats2.gs.nintendowifi.net/pokemondpds/battletower/upload.asp"
|
|
.balign 4, 0
|
|
|
|
ov72_0223B5C4: ; 0x0223B5C4
|
|
.asciz "http://gamestats2.gs.nintendowifi.net/pokemondpds/battletower/info.asp"
|
|
.balign 4, 0
|
|
|
|
ov72_0223B60C: ; 0x0223B60C
|
|
.asciz "http://gamestats2.gs.nintendowifi.net/pokemondpds/common/setProfile.asp"
|
|
.balign 4, 0
|
|
|
|
ov72_0223B654: ; 0x0223B654
|
|
.word ov72_0223886C
|
|
|
|
ov72_0223B658: ; 0x0223B658
|
|
.word ov72_0223894C
|
|
|
|
ov72_0223B65C: ; 0x0223B65C
|
|
.word ov72_0223897C
|
|
|
|
ov72_0223B660: ; 0x0223B660
|
|
.word ov72_022390D8
|
|
.word ov72_02239108
|
|
.word ov72_022391E8
|
|
.word ov72_02239220
|
|
.word ov72_022392AC
|
|
.word ov72_022392BC
|
|
.word ov72_02239370
|
|
.word ov72_022393B0
|
|
.word ov72_022393CC
|
|
.word ov72_022394A4
|
|
.word ov72_022394D8
|
|
.word ov72_02239614
|
|
.word ov72_02239638
|
|
.word ov72_022396E8
|
|
.word ov72_02239760
|
|
.word ov72_02239784
|
|
.word ov72_022397E8
|
|
.word ov72_0223988C
|
|
.word ov72_022398BC
|
|
.word ov72_022399CC
|
|
.word ov72_0223985C
|
|
.word ov72_02239ED4
|
|
.word ov72_02239F04
|
|
.word ov72_02239F30
|
|
.word ov72_02239F60
|
|
.word ov72_02239A08
|
|
.word ov72_02239A3C
|
|
.word ov72_02239A88
|
|
.word ov72_02239B5C
|
|
.word ov72_02239B98
|
|
.word ov72_02239BC8
|
|
.word ov72_02239BEC
|
|
.word ov72_02239C14
|
|
.word ov72_02239C8C
|
|
.word ov72_02239CB4
|
|
.word ov72_02239CD8
|
|
.word ov72_02239D3C
|
|
.word ov72_02239D6C
|
|
.word ov72_02239E58
|
|
.word ov72_02239E9C
|
|
.word ov72_02239EB4
|
|
.word ov72_02239F8C
|
|
.word ov72_02239FBC
|
|
.word ov72_02239FD8
|
|
.word ov72_0223A010
|
|
.word ov72_02239E94
|
|
.word ov72_0223A014
|
|
.word ov72_0223A1AC
|
|
.word ov72_0223A200
|
|
.word ov72_0223A1CC
|
|
.word ov72_0223A044
|
|
.word ov72_02239168
|
|
.word ov72_02239198
|
|
.word ov72_0223A06C
|
|
.word ov72_0223A0E0
|
|
.word ov72_0223A2E8
|
|
.word ov72_0223A314
|
|
|
|
ov72_0223B744: ; 0x0223B744
|
|
.word ov72_0223A5B4
|
|
.word ov72_0223A5E0
|
|
.word ov72_0223A71C
|
|
.word ov72_0223AB84
|
|
.word ov72_0223ABF4
|
|
.word ov72_0223ABF8
|
|
.word ov72_0223ABFC
|
|
.word ov72_0223AC00
|
|
.word ov72_0223AC2C
|
|
.word ov72_0223AC88
|
|
.word ov72_0223AC6C
|
|
.word ov72_0223ACA4
|
|
|
|
ov72_0223B774: ; 0x0223B774
|
|
.byte 0x0E, 0x2F, 0x58, 0x77, 0x0E, 0x2F, 0x78, 0x97, 0x0E, 0x2F, 0x98, 0xB7
|
|
.byte 0x3C, 0x63, 0x0C, 0x33, 0x3C, 0x63, 0x3C, 0x63, 0x3C, 0x63, 0x6C, 0x93, 0x3C, 0x63, 0x9E, 0xC3
|
|
.byte 0x3C, 0x63, 0xCC, 0xF3, 0x6C, 0x93, 0x0C, 0x33, 0x6C, 0x93, 0x3C, 0x63, 0x6C, 0x93, 0x6C, 0x93
|
|
.byte 0x6C, 0x93, 0x9E, 0xC3, 0x6C, 0x93, 0xCC, 0xF3, 0xA4, 0xBB, 0x04, 0x4B, 0xA4, 0xBB, 0x5C, 0xA3
|
|
.byte 0xA4, 0xBB, 0xB4, 0xFB, 0xFF, 0x00, 0x00, 0x00
|
|
|
|
ov72_0223B7B8: ; 0x0223B7B8
|
|
.byte 0x0E, 0x2F, 0x48, 0x67, 0x0E, 0x2F, 0x68, 0x87
|
|
.byte 0x0E, 0x2F, 0x88, 0xA7, 0x3C, 0x63, 0x0C, 0x33, 0x3C, 0x63, 0x3C, 0x63, 0x3C, 0x63, 0x6C, 0x93
|
|
.byte 0x3C, 0x63, 0x9E, 0xC3, 0x3C, 0x63, 0xCC, 0xF3, 0x6C, 0x93, 0x0C, 0x33, 0x6C, 0x93, 0x3C, 0x63
|
|
.byte 0x6C, 0x93, 0x6C, 0x93, 0x6C, 0x93, 0x9E, 0xC3, 0x6C, 0x93, 0xCC, 0xF3, 0xA4, 0xBB, 0x04, 0x4B
|
|
.byte 0xA4, 0xBB, 0x5C, 0xA3, 0xA4, 0xBB, 0xB4, 0xFB, 0xFF, 0x00, 0x00, 0x00
|
|
|
|
ov72_0223B7FC: ; 0x0223B7FC
|
|
.word ov72_0223AF70, ov72_0223AF7C, ov72_0223B084, ov72_0223B088
|
|
|
|
.bss
|
|
|
|
_0223B820:
|
|
.space 0xC
|
|
|
|
ov72_0223B82C: ; 0x0223B82C
|
|
.space 0x8
|
|
|
|
ov72_0223B834: ; 0x0223B834
|
|
.space 0xCC
|
|
|
|
ov72_0223B900: ; 0x0223B900
|
|
.space 0x1B
|
|
|
|
ov72_0223B91B: ; 0x0223B91B
|
|
.space 0x5
|
|
|
|
ov72_0223B920: ; 0x0223B920
|
|
.space 0x3
|
|
|
|
ov72_0223B923: ; 0x0223B923
|
|
.space 0x9
|
|
|
|
ov72_0223B92C: ; 0x0223B92C
|
|
.space 0x14
|