mirror of
https://github.com/pret/pmd-sky.git
synced 2026-03-21 17:25:15 -05:00
3728 lines
70 KiB
ArmAsm
3728 lines
70 KiB
ArmAsm
.include "asm/macros.inc"
|
|
.include "overlay_05.inc"
|
|
|
|
.text
|
|
|
|
arm_func_start ov05_0233CA80
|
|
ov05_0233CA80: ; 0x0233CA80
|
|
ldr ip, _0233CA90 ; =MemZero
|
|
ldr r0, _0233CA94 ; =ov05_0233FCC0
|
|
mov r1, #0xc
|
|
bx ip
|
|
.align 2, 0
|
|
_0233CA90: .word MemZero
|
|
_0233CA94: .word ov05_0233FCC0
|
|
arm_func_end ov05_0233CA80
|
|
|
|
arm_func_start ov05_0233CA98
|
|
ov05_0233CA98: ; 0x0233CA98
|
|
ldr r1, _0233CAA4 ; =ov05_0233FCC0
|
|
str r0, [r1]
|
|
bx lr
|
|
.align 2, 0
|
|
_0233CAA4: .word ov05_0233FCC0
|
|
arm_func_end ov05_0233CA98
|
|
|
|
arm_func_start ov05_0233CAA8
|
|
ov05_0233CAA8: ; 0x0233CAA8
|
|
ldr r0, _0233CAB4 ; =ov05_0233FCC0
|
|
ldr r0, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
_0233CAB4: .word ov05_0233FCC0
|
|
arm_func_end ov05_0233CAA8
|
|
|
|
arm_func_start ov05_0233CAB8
|
|
ov05_0233CAB8: ; 0x0233CAB8
|
|
ldr r1, _0233CAC4 ; =ov05_0233FCC0
|
|
str r0, [r1, #4]
|
|
bx lr
|
|
.align 2, 0
|
|
_0233CAC4: .word ov05_0233FCC0
|
|
arm_func_end ov05_0233CAB8
|
|
|
|
arm_func_start ov05_0233CAC8
|
|
ov05_0233CAC8: ; 0x0233CAC8
|
|
stmdb sp!, {r3, lr}
|
|
ldrsb ip, [sp, #8]
|
|
str ip, [sp]
|
|
bl sub_02046A9C
|
|
arm_func_end ov05_0233CAC8
|
|
|
|
arm_func_start ov05_0233CAD8
|
|
ov05_0233CAD8: ; 0x0233CAD8
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end ov05_0233CAD8
|
|
|
|
arm_func_start ov05_0233CADC
|
|
ov05_0233CADC: ; 0x0233CADC
|
|
stmdb sp!, {lr}
|
|
sub sp, sp, #0xc
|
|
ldr ip, [sp, #0x10]
|
|
ldrh lr, [sp, #0x14]
|
|
str ip, [sp]
|
|
mov ip, #0
|
|
str lr, [sp, #4]
|
|
str ip, [sp, #8]
|
|
bl sub_02046A20
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {pc}
|
|
arm_func_end ov05_0233CADC
|
|
|
|
arm_func_start ov05_0233CB08
|
|
ov05_0233CB08: ; 0x0233CB08
|
|
stmdb sp!, {lr}
|
|
sub sp, sp, #0xc
|
|
arm_func_end ov05_0233CB08
|
|
|
|
arm_func_start ov05_0233CB10
|
|
ov05_0233CB10: ; 0x0233CB10
|
|
ldr ip, [sp, #0x10]
|
|
ldrh lr, [sp, #0x14]
|
|
str ip, [sp]
|
|
ldr ip, [sp, #0x18]
|
|
str lr, [sp, #4]
|
|
str ip, [sp, #8]
|
|
bl sub_02046A20
|
|
add sp, sp, #0xc
|
|
ldmia sp!, {pc}
|
|
arm_func_end ov05_0233CB10
|
|
|
|
arm_func_start ov05_0233CB34
|
|
ov05_0233CB34: ; 0x0233CB34
|
|
stmdb sp!, {r3, lr}
|
|
bl sub_02046B04
|
|
arm_func_end ov05_0233CB34
|
|
|
|
arm_func_start ov05_0233CB3C
|
|
ov05_0233CB3C: ; 0x0233CB3C
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
moveq r0, #0xd
|
|
ldmeqia sp!, {r3, pc}
|
|
add r1, r1, #1
|
|
cmp r0, r1
|
|
moveq r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end ov05_0233CB3C
|
|
|
|
arm_func_start ov05_02046BA0
|
|
ov05_02046BA0: ; 0x0233CB5C
|
|
ldr ip, _0233CB64 ; =sub_02046BA0
|
|
bx ip
|
|
.align 2, 0
|
|
_0233CB64: .word sub_02046BA0
|
|
arm_func_end ov05_02046BA0
|
|
|
|
arm_func_start ov05_0233CB68
|
|
ov05_0233CB68: ; 0x0233CB68
|
|
ldr ip, _0233CB74 ; =sub_02046BE8
|
|
mov r2, #0
|
|
bx ip
|
|
.align 2, 0
|
|
_0233CB74: .word sub_02046BE8
|
|
arm_func_end ov05_0233CB68
|
|
|
|
arm_func_start ov05_02046BE8
|
|
ov05_02046BE8: ; 0x0233CB78
|
|
ldr ip, _0233CB80 ; =sub_02046BE8
|
|
bx ip
|
|
.align 2, 0
|
|
_0233CB80: .word sub_02046BE8
|
|
arm_func_end ov05_02046BE8
|
|
|
|
arm_func_start ov05_0233CB84
|
|
ov05_0233CB84: ; 0x0233CB84
|
|
stmdb sp!, {r3, lr}
|
|
bl sub_02046C78
|
|
cmp r0, #0
|
|
movne r0, #0xd
|
|
moveq r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end ov05_0233CB84
|
|
|
|
arm_func_start ov05_0233CB9C
|
|
ov05_0233CB9C: ; 0x0233CB9C
|
|
stmdb sp!, {r3, lr}
|
|
mov r0, #0xb4
|
|
mov r1, #8
|
|
bl MemAlloc
|
|
ldr r2, _0233CC08 ; =ov05_0233FCCC
|
|
mov r1, #0xb4
|
|
str r0, [r2, #4]
|
|
bl MemZero
|
|
ldr r0, _0233CC08 ; =ov05_0233FCCC
|
|
mov r3, #0
|
|
ldr r2, [r0, #4]
|
|
mov r1, #0xc
|
|
str r3, [r2, #0xc]
|
|
ldr r3, [r0, #4]
|
|
add r2, r3, #0x10
|
|
str r2, [r3, #0x74]
|
|
ldr r0, [r0, #4]
|
|
bl MemZero
|
|
ldr r0, _0233CC08 ; =ov05_0233FCCC
|
|
mov r1, #0
|
|
str r1, [r0]
|
|
bl sub_02046D20
|
|
ldr r0, _0233CC0C ; =ov05_0233FCA0
|
|
mov r1, #0
|
|
str r1, [r0]
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0233CC08: .word ov05_0233FCCC
|
|
_0233CC0C: .word ov05_0233FCA0
|
|
arm_func_end ov05_0233CB9C
|
|
|
|
arm_func_start ov05_0233CC10
|
|
ov05_0233CC10: ; 0x0233CC10
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, lr}
|
|
sub sp, sp, #0x18c
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
ldr r1, _0233D348 ; =0x00002001
|
|
ldr r0, [r0, #4]
|
|
ldr r2, [r0, #0xc]
|
|
cmp r2, r1
|
|
bgt _0233CC98
|
|
bge _0233D10C
|
|
sub r0, r1, #0x1000
|
|
cmp r2, r0
|
|
bgt _0233CC78
|
|
bge _0233CF98
|
|
cmp r2, #2
|
|
bgt _0233CC6C
|
|
cmp r2, #0
|
|
blt _0233D338
|
|
beq _0233CCE8
|
|
cmp r2, #1
|
|
beq _0233CDA0
|
|
cmp r2, #2
|
|
beq _0233CE2C
|
|
b _0233D338
|
|
_0233CC6C:
|
|
cmp r2, #0x1000
|
|
beq _0233CE48
|
|
b _0233D338
|
|
_0233CC78:
|
|
ldr r0, _0233D34C ; =0x00001002
|
|
cmp r2, r0
|
|
bgt _0233CC8C
|
|
beq _0233D018
|
|
b _0233D338
|
|
_0233CC8C:
|
|
cmp r2, #0x2000
|
|
beq _0233D034
|
|
b _0233D338
|
|
_0233CC98:
|
|
add r0, r1, #0x1000
|
|
cmp r2, r0
|
|
bgt _0233CCC8
|
|
bge _0233D220
|
|
add r0, r1, #1
|
|
cmp r2, r0
|
|
bgt _0233CCBC
|
|
beq _0233D18C
|
|
b _0233D338
|
|
_0233CCBC:
|
|
cmp r2, #0x3000
|
|
beq _0233D20C
|
|
b _0233D338
|
|
_0233CCC8:
|
|
cmp r2, #0x4000
|
|
bgt _0233CCD8
|
|
beq _0233D2A4
|
|
b _0233D338
|
|
_0233CCD8:
|
|
add r0, r1, #0x2000
|
|
cmp r2, r0
|
|
beq _0233D2B8
|
|
b _0233D338
|
|
_0233CCE8:
|
|
bl ov01_0232E94C
|
|
cmp r0, #0
|
|
bne _0233D338
|
|
bl ov01_0232F3F4
|
|
bl ov05_0233CA80
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
mov r1, #3
|
|
ldr r0, [r0, #4]
|
|
add r0, r0, #0x10
|
|
bl MemZero
|
|
bl sub_0204E210
|
|
cmp r0, #0
|
|
bne _0233CD3C
|
|
bl GetAdventureLogDungeonFloor
|
|
ldrb r0, [r0]
|
|
cmp r0, #0xbe
|
|
ldreq r0, _0233D344 ; =ov05_0233FCCC
|
|
moveq r1, #3
|
|
ldreq r0, [r0, #4]
|
|
streqb r1, [r0, #0x11]
|
|
beq _0233CD4C
|
|
_0233CD3C:
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
mov r1, #0
|
|
ldr r0, [r0, #4]
|
|
strb r1, [r0, #0x11]
|
|
_0233CD4C:
|
|
mov r0, #0
|
|
bl ov01_0233767C
|
|
ldr r2, _0233D350 ; =ov05_0233FBD8
|
|
ldr r1, _0233D344 ; =ov05_0233FCCC
|
|
ldr r2, [r2, r0, lsl #3]
|
|
ldr r0, [r1, #4]
|
|
ldr r3, _0233D354 ; =ov05_0233FBD4
|
|
str r2, [r0, #0x14]
|
|
mov r0, #0
|
|
ldr r2, _0233D358 ; =0x000037E1
|
|
str r3, [sp]
|
|
str r2, [sp, #4]
|
|
ldr r3, [r1, #4]
|
|
ldr r2, _0233D35C ; =0x00000233
|
|
mov r1, r0
|
|
add r3, r3, #0x14
|
|
bl ov05_0233CADC
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
mov r1, #1
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
_0233CDA0:
|
|
bl ov05_0233CB34
|
|
mov r4, r0
|
|
bl ov05_02046BA0
|
|
mov r0, r0, lsl #0x18
|
|
mov r1, r0, asr #0x18
|
|
mov r0, #0
|
|
bl ov01_0233768C
|
|
cmp r4, #1
|
|
bne _0233CDE0
|
|
mov r0, #0
|
|
arm_func_end ov05_0233CC10
|
|
|
|
arm_func_start ov05_0233CDC8
|
|
ov05_0233CDC8: ; 0x0233CDC8
|
|
bl ov05_0233CA98
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
mov r1, #0x1000
|
|
ldr r0, [r0, #4]
|
|
arm_func_end ov05_0233CDC8
|
|
|
|
arm_func_start ov05_0233CDD8
|
|
ov05_0233CDD8: ; 0x0233CDD8
|
|
str r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233CDE0:
|
|
cmp r4, #2
|
|
arm_func_end ov05_0233CDD8
|
|
|
|
arm_func_start ov05_0233CDE4
|
|
ov05_0233CDE4: ; 0x0233CDE4
|
|
bne _0233CE10
|
|
mov r0, #1
|
|
bl ov05_0233CA98
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
mov r3, #0
|
|
ldr r2, [r0, #4]
|
|
mov r1, #0x2000
|
|
strb r3, [r2, #0xb1]
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233CE10:
|
|
sub r0, r4, #0xc
|
|
cmp r0, #1
|
|
ldrls r0, _0233D344 ; =ov05_0233FCCC
|
|
movls r1, #2
|
|
ldrls r0, [r0, #4]
|
|
strls r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233CE2C:
|
|
bl ov01_0232E94C
|
|
cmp r0, #0
|
|
bne _0233D338
|
|
mov r0, #0x13
|
|
bl ov01_023310B8
|
|
mov r0, #3
|
|
b _0233D33C
|
|
_0233CE48:
|
|
bl ov01_0232E94C
|
|
cmp r0, #0
|
|
bne _0233D338
|
|
bl sub_0204E5E4
|
|
cmp r0, #0
|
|
bne _0233CE80
|
|
ldr r1, _0233D360 ; =0x000037E3
|
|
mov r0, #0x1c
|
|
bl ov05_0233CB68
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
ldr r1, _0233D34C ; =0x00001002
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233CE80:
|
|
add r0, sp, #0x13c
|
|
mov r7, #0
|
|
bl InitPreprocessorArgs
|
|
add r0, sp, #0xc
|
|
bl sub_02057010
|
|
mov r6, r0
|
|
mov r5, r7
|
|
add r4, sp, #0xc
|
|
mov sb, #6
|
|
mvn sl, #0
|
|
b _0233CF20
|
|
_0233CEAC:
|
|
mov r0, r5, lsl #1
|
|
ldrsh r0, [r4, r0]
|
|
bl GetTeamMember
|
|
mov r8, r0
|
|
ldrsh r0, [r8, #4]
|
|
cmp r0, #0x218
|
|
beq _0233CEE4
|
|
ldrsh r0, [r8, #4]
|
|
bl sub_02054F18
|
|
cmp r0, #0
|
|
ldrnesh r0, [r8, #4]
|
|
movne r7, #1
|
|
strne r0, [sp, #0x13c]
|
|
bne _0233CF28
|
|
_0233CEE4:
|
|
add r0, r8, #0x22
|
|
bl GetFirstNotRealMoveInTimeDarkness
|
|
cmp r0, sl
|
|
beq _0233CF1C
|
|
mla r1, r0, sb, r8
|
|
ldrh r0, [r1, #0x24]
|
|
cmp r0, #0x1d4
|
|
bne _0233CF1C
|
|
ldrsh r0, [r8, #4]
|
|
mov r7, #2
|
|
str r0, [sp, #0x13c]
|
|
ldrh r0, [r1, #0x24]
|
|
str r0, [sp, #0x14c]
|
|
b _0233CF28
|
|
_0233CF1C:
|
|
add r5, r5, #1
|
|
_0233CF20:
|
|
cmp r5, r6
|
|
blt _0233CEAC
|
|
_0233CF28:
|
|
cmp r7, #0
|
|
bne _0233CF64
|
|
mov r0, #1
|
|
bl ov01_0233767C
|
|
str r0, [sp]
|
|
mov r0, #0
|
|
ldr r2, _0233D364 ; =ov05_0233FB94
|
|
ldr r3, _0233D368 ; =0x000037E2
|
|
mov r1, r0
|
|
bl ov05_0233CAC8
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
ldr r1, _0233D36C ; =0x00001001
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233CF64:
|
|
cmp r7, #2
|
|
ldreq r0, _0233D370 ; =0x000037E5
|
|
add r2, sp, #0x13c
|
|
ldrne r0, _0233D374 ; =0x000037E4
|
|
mov r0, r0, lsl #0x10
|
|
mov r1, r0, lsr #0x10
|
|
mov r0, #0x1c
|
|
bl ov05_02046BE8
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
ldr r1, _0233D34C ; =0x00001002
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233CF98:
|
|
bl ov05_0233CB34
|
|
mov r4, r0
|
|
bl ov05_02046BA0
|
|
mov r0, r0, lsl #0x18
|
|
mov r1, r0, asr #0x18
|
|
mov r0, #1
|
|
bl ov01_0233768C
|
|
cmp r4, #3
|
|
bne _0233CFD8
|
|
mov r0, #0
|
|
bl ov05_0233CAB8
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
mov r1, #0x3000
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233CFD8:
|
|
cmp r4, #4
|
|
bne _0233CFFC
|
|
mov r0, #1
|
|
bl ov05_0233CAB8
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
mov r1, #0x4000
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233CFFC:
|
|
sub r0, r4, #0xc
|
|
cmp r0, #1
|
|
ldrls r0, _0233D344 ; =ov05_0233FCCC
|
|
movls r1, #0
|
|
ldrls r0, [r0, #4]
|
|
strls r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233D018:
|
|
bl ov05_0233CB84
|
|
cmp r0, #0xd
|
|
ldreq r0, _0233D344 ; =ov05_0233FCCC
|
|
moveq r1, #0
|
|
ldreq r0, [r0, #4]
|
|
streq r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233D034:
|
|
bl ov01_0232E94C
|
|
cmp r0, #0
|
|
bne _0233D338
|
|
bl ExplorerMazeMonsterExists
|
|
cmp r0, #0
|
|
beq _0233D0D8
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
ldr r0, [r0, #4]
|
|
ldrb r0, [r0, #0xb1]
|
|
cmp r0, #0
|
|
bne _0233D0D8
|
|
add r0, sp, #0xec
|
|
bl InitPreprocessorArgs
|
|
add r0, sp, #0x14
|
|
bl GetExplorerMazeTeamName
|
|
add r2, sp, #0x14
|
|
add r0, sp, #0x54
|
|
mov r1, #0x98
|
|
str r2, [sp, #0x124]
|
|
bl MemZero
|
|
mov r0, #3
|
|
bl ov01_0233767C
|
|
ldr r2, _0233D378 ; =ov05_0233FB68
|
|
ldr r1, _0233D37C ; =ov05_0233FB64
|
|
ldr r2, [r2, r0, lsl #3]
|
|
ldr r0, _0233D380 ; =0x000037EC
|
|
str r2, [sp, #0x54]
|
|
str r1, [sp]
|
|
str r0, [sp, #4]
|
|
add r1, sp, #0xec
|
|
str r1, [sp, #8]
|
|
mov r0, #0
|
|
mov r1, #8
|
|
mov r2, #0x33
|
|
add r3, sp, #0x54
|
|
bl ov05_0233CB08
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
ldr r1, _0233D384 ; =0x00002002
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233D0D8:
|
|
mov r0, #2
|
|
bl ov01_0233767C
|
|
str r0, [sp]
|
|
mov r0, #0
|
|
ldr r2, _0233D388 ; =ov05_0233FBB4
|
|
ldr r3, _0233D38C ; =0x000037E9
|
|
mov r1, r0
|
|
bl ov05_0233CAC8
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
ldr r1, _0233D348 ; =0x00002001
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233D10C:
|
|
bl ov05_0233CB34
|
|
mov r4, r0
|
|
bl ov05_02046BA0
|
|
mov r0, r0, lsl #0x18
|
|
mov r1, r0, asr #0x18
|
|
mov r0, #2
|
|
bl ov01_0233768C
|
|
cmp r4, #3
|
|
bne _0233D14C
|
|
mov r0, #0
|
|
bl ov05_0233CAB8
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
mov r1, #0x3000
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233D14C:
|
|
cmp r4, #4
|
|
bne _0233D170
|
|
mov r0, #1
|
|
bl ov05_0233CAB8
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
mov r1, #0x4000
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233D170:
|
|
sub r0, r4, #0xc
|
|
cmp r0, #1
|
|
ldrls r0, _0233D344 ; =ov05_0233FCCC
|
|
movls r1, #0
|
|
ldrls r0, [r0, #4]
|
|
strls r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233D18C:
|
|
bl ov05_0233CB34
|
|
mov r4, r0
|
|
bl ov05_02046BA0
|
|
mov r0, r0, lsl #0x18
|
|
mov r1, r0, asr #0x18
|
|
mov r0, #3
|
|
bl ov01_0233768C
|
|
cmp r4, #0xb
|
|
bne _0233D1F0
|
|
mov r0, #2
|
|
bl ov01_0233767C
|
|
str r0, [sp]
|
|
mov r0, #0
|
|
ldr r2, _0233D388 ; =ov05_0233FBB4
|
|
ldr r3, _0233D38C ; =0x000037E9
|
|
mov r1, r0
|
|
bl ov05_0233CAC8
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
mov r3, #1
|
|
ldr r2, [r0, #4]
|
|
add r1, r3, #0x2000
|
|
strb r3, [r2, #0xb1]
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233D1F0:
|
|
sub r0, r4, #0xc
|
|
cmp r0, #1
|
|
ldrls r0, _0233D344 ; =ov05_0233FCCC
|
|
movls r1, #0
|
|
ldrls r0, [r0, #4]
|
|
strls r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233D20C:
|
|
bl ov05_0233D3D0
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
ldr r1, _0233D390 ; =0x00003001
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
_0233D220:
|
|
bl ov05_0233D450
|
|
mov r4, r0
|
|
bl sub_02003BFC
|
|
cmp r4, #1
|
|
bne _0233D270
|
|
bl ov05_0233D424
|
|
bl ov05_0233CAA8
|
|
cmp r0, #1
|
|
ldreq r0, _0233D344 ; =ov05_0233FCCC
|
|
moveq r1, #0x2000
|
|
ldreq r0, [r0, #4]
|
|
streq r1, [r0, #0xc]
|
|
beq _0233D338
|
|
bl ov05_0233CAA8
|
|
cmp r0, #0
|
|
ldreq r0, _0233D344 ; =ov05_0233FCCC
|
|
moveq r1, #0x1000
|
|
ldreq r0, [r0, #4]
|
|
streq r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233D270:
|
|
cmp r4, #3
|
|
bne _0233D288
|
|
bl ov05_0233D424
|
|
bl sub_0204A018
|
|
mov r0, #3
|
|
b _0233D33C
|
|
_0233D288:
|
|
cmp r4, #2
|
|
bne _0233D338
|
|
bl ov05_0233D424
|
|
mov r0, #0x13
|
|
bl ov01_023310B8
|
|
mov r0, #3
|
|
b _0233D33C
|
|
_0233D2A4:
|
|
bl ov05_0233DB1C
|
|
ldr r0, _0233D344 ; =ov05_0233FCCC
|
|
ldr r1, _0233D394 ; =0x00004001
|
|
ldr r0, [r0, #4]
|
|
str r1, [r0, #0xc]
|
|
_0233D2B8:
|
|
bl sub_02003BFC
|
|
bl ov05_0233DBDC
|
|
cmp r0, #1
|
|
bne _0233D304
|
|
bl ov05_0233DBA0
|
|
bl ov05_0233CAA8
|
|
cmp r0, #1
|
|
ldreq r0, _0233D344 ; =ov05_0233FCCC
|
|
moveq r1, #0x2000
|
|
ldreq r0, [r0, #4]
|
|
streq r1, [r0, #0xc]
|
|
beq _0233D338
|
|
bl ov05_0233CAA8
|
|
cmp r0, #0
|
|
ldreq r0, _0233D344 ; =ov05_0233FCCC
|
|
moveq r1, #0x1000
|
|
ldreq r0, [r0, #4]
|
|
streq r1, [r0, #0xc]
|
|
b _0233D338
|
|
_0233D304:
|
|
cmp r0, #3
|
|
bne _0233D31C
|
|
bl ov05_0233DBA0
|
|
bl sub_0204A018
|
|
mov r0, #3
|
|
b _0233D33C
|
|
_0233D31C:
|
|
cmp r0, #2
|
|
bne _0233D338
|
|
bl ov05_0233DBA0
|
|
mov r0, #0x13
|
|
bl ov01_023310B8
|
|
mov r0, #3
|
|
b _0233D33C
|
|
_0233D338:
|
|
mov r0, #1
|
|
_0233D33C:
|
|
add sp, sp, #0x18c
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, pc}
|
|
.align 2, 0
|
|
#if defined(EUROPE)
|
|
#define OV05_0233CDE4_OFFSET 2
|
|
#elif defined(JAPAN)
|
|
#define OV05_0233CDE4_OFFSET 0x164
|
|
#else
|
|
#define OV05_0233CDE4_OFFSET 0
|
|
#endif
|
|
_0233D344: .word ov05_0233FCCC
|
|
_0233D348: .word 0x00002001
|
|
_0233D34C: .word 0x00001002
|
|
_0233D350: .word ov05_0233FBD8
|
|
_0233D354: .word ov05_0233FBD4
|
|
_0233D358: .word 0x000037E1 + OV05_0233CDE4_OFFSET
|
|
_0233D35C: .word 0x00000233
|
|
_0233D360: .word 0x000037E3 + OV05_0233CDE4_OFFSET
|
|
_0233D364: .word ov05_0233FB94
|
|
_0233D368: .word 0x000037E2 + OV05_0233CDE4_OFFSET
|
|
_0233D36C: .word 0x00001001
|
|
_0233D370: .word 0x000037E5 + OV05_0233CDE4_OFFSET
|
|
_0233D374: .word 0x000037E4 + OV05_0233CDE4_OFFSET
|
|
_0233D378: .word ov05_0233FB68
|
|
_0233D37C: .word ov05_0233FB64
|
|
_0233D380: .word 0x000037EC + OV05_0233CDE4_OFFSET
|
|
_0233D384: .word 0x00002002
|
|
_0233D388: .word ov05_0233FBB4
|
|
_0233D38C: .word 0x000037E9 + OV05_0233CDE4_OFFSET
|
|
_0233D390: .word 0x00003001
|
|
_0233D394: .word 0x00004001
|
|
arm_func_end ov05_0233CDE4
|
|
|
|
arm_func_start ov05_0233D398
|
|
ov05_0233D398: ; 0x0233D398
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0233D3CC ; =ov05_0233FCCC
|
|
ldr r0, [r0, #4]
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
bl sub_02046D20
|
|
ldr r0, _0233D3CC ; =ov05_0233FCCC
|
|
ldr r0, [r0, #4]
|
|
bl MemFree
|
|
ldr r0, _0233D3CC ; =ov05_0233FCCC
|
|
mov r1, #0
|
|
str r1, [r0, #4]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0233D3CC: .word ov05_0233FCCC
|
|
arm_func_end ov05_0233D398
|
|
|
|
arm_func_start ov05_0233D3D0
|
|
ov05_0233D3D0: ; 0x0233D3D0
|
|
stmdb sp!, {r3, lr}
|
|
mov r0, #0x1dc
|
|
mov r1, #8
|
|
bl MemAlloc
|
|
ldr r2, _0233D420 ; =ov05_0233FCA4
|
|
mov r1, #0x1dc
|
|
str r0, [r2]
|
|
bl MemZero
|
|
ldr r0, _0233D420 ; =ov05_0233FCA4
|
|
mov r3, #0
|
|
ldr r1, [r0]
|
|
sub r2, r3, #2
|
|
str r3, [r1]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #8]
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x33
|
|
bic r0, r0, #0x1f
|
|
str r0, [r1, #0x10]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0233D420: .word ov05_0233FCA4
|
|
arm_func_end ov05_0233D3D0
|
|
|
|
arm_func_start ov05_0233D424
|
|
ov05_0233D424: ; 0x0233D424
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0233D44C ; =ov05_0233FCA4
|
|
ldr r0, [r0]
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
bl MemFree
|
|
ldr r0, _0233D44C ; =ov05_0233FCA4
|
|
mov r1, #0
|
|
str r1, [r0]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0233D44C: .word ov05_0233FCA4
|
|
arm_func_end ov05_0233D424
|
|
|
|
arm_func_start ov05_0233D450
|
|
ov05_0233D450: ; 0x0233D450
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x17c
|
|
ldr r0, _0233D9FC ; =ov05_0233FCA4
|
|
ldr r4, [r0]
|
|
ldr r2, [r4]
|
|
cmp r2, #0x4000
|
|
bgt _0233D4A4
|
|
bge _0233D884
|
|
cmp r2, #0
|
|
bgt _0233D480
|
|
beq _0233D4E8
|
|
b _0233D9F0
|
|
_0233D480:
|
|
ldr r0, _0233DA00 ; =0x00001001
|
|
cmp r2, r0
|
|
bgt _0233D9F0
|
|
cmp r2, #0x1000
|
|
blt _0233D9F0
|
|
beq _0233D688
|
|
cmp r2, r0
|
|
beq _0233D730
|
|
b _0233D9F0
|
|
_0233D4A4:
|
|
cmp r2, #0x5000
|
|
bgt _0233D4B4
|
|
beq _0233D898
|
|
b _0233D9F0
|
|
_0233D4B4:
|
|
ldr r1, _0233DA04 ; =0x00005005
|
|
cmp r2, r1
|
|
bgt _0233D9F0
|
|
sub r0, r1, #2
|
|
cmp r2, r0
|
|
blt _0233D9F0
|
|
beq _0233D8AC
|
|
sub r0, r1, #1
|
|
cmp r2, r0
|
|
beq _0233D8C0
|
|
cmp r2, r1
|
|
beq _0233D9E0
|
|
b _0233D9F0
|
|
_0233D4E8:
|
|
bl ov05_0233CAA8
|
|
cmp r0, #1
|
|
bne _0233D56C
|
|
ldr r0, _0233D9FC ; =ov05_0233FCA4
|
|
ldr r1, [r0]
|
|
cmp r1, #0
|
|
movne r0, #1
|
|
strne r0, [r1, #4]
|
|
add r0, r4, #0x54
|
|
mov r1, #0x150
|
|
bl MemZero
|
|
add r0, r4, #0x1bc
|
|
mov r1, #0x18
|
|
bl MemZero
|
|
mov r0, #0x18
|
|
str r0, [r4, #0x1a4]
|
|
add r0, r4, #0x1bc
|
|
str r0, [r4, #0x1a8]
|
|
mov r0, #0x150
|
|
str r0, [r4, #0x1ac]
|
|
add r0, r4, #0x54
|
|
str r0, [r4, #0x1b0]
|
|
mov r1, #0
|
|
strb r1, [r4, #0x1b8]
|
|
ldr r0, _0233DA08 ; =ov05_0233DA2C
|
|
mov r1, #1
|
|
str r0, [r4, #0x1b4]
|
|
add r0, r4, #0x1c0
|
|
strb r1, [r4, #0x1d4]
|
|
bl GetMainTeamNameWithCheck
|
|
mov r0, #0x1000
|
|
str r0, [r4]
|
|
b _0233D9F0
|
|
_0233D56C:
|
|
bl ov05_0233CAA8
|
|
cmp r0, #0
|
|
bne _0233D9F0
|
|
ldr r0, _0233D9FC ; =ov05_0233FCA4
|
|
ldr r1, [r0]
|
|
cmp r1, #0
|
|
movne r0, #0
|
|
strne r0, [r1, #4]
|
|
add r0, r4, #0x54
|
|
mov r1, #0x150
|
|
bl MemZero
|
|
add r0, r4, #0x1bc
|
|
mov r1, #0x18
|
|
bl MemZero
|
|
mov r0, #0x150
|
|
str r0, [r4, #0x1a4]
|
|
add r0, r4, #0x54
|
|
str r0, [r4, #0x1a8]
|
|
mov r0, #0x18
|
|
str r0, [r4, #0x1ac]
|
|
add r0, r4, #0x1bc
|
|
str r0, [r4, #0x1b0]
|
|
mov r1, #0
|
|
ldr r0, _0233DA0C ; =ov01_02337B68
|
|
strb r1, [r4, #0x1b8]
|
|
str r0, [r4, #0x1b4]
|
|
add r0, r4, #0x5a
|
|
strb r1, [r4, #0x1d4]
|
|
bl GetMainTeamNameWithCheck
|
|
add r0, sp, #0
|
|
mov r1, #0
|
|
bl sub_02057030
|
|
mov sb, r0
|
|
mov r8, #0
|
|
add r6, r4, #0x70
|
|
mov r5, #0xf8
|
|
add r7, sp, #0
|
|
mov fp, #0x4c
|
|
b _0233D63C
|
|
_0233D608:
|
|
mul sl, r8, fp
|
|
mov r0, r8, lsl #1
|
|
ldrsh r0, [r7, r0]
|
|
bl GetTeamMember
|
|
mov r1, r0
|
|
add r0, r6, sl
|
|
bl sub_02055E14
|
|
add sl, r4, sl
|
|
ldrb r0, [sl, #0x75]
|
|
bl sub_02051798
|
|
cmp r0, #0xff
|
|
streqb r5, [sl, #0x75]
|
|
add r8, r8, #1
|
|
_0233D63C:
|
|
cmp r8, sb
|
|
blt _0233D608
|
|
mov r3, sb
|
|
mov r2, #0
|
|
mov r0, #0x4c
|
|
b _0233D660
|
|
_0233D654:
|
|
mla r1, r3, r0, r4
|
|
strh r2, [r1, #0x78]
|
|
add r3, r3, #1
|
|
_0233D660:
|
|
cmp r3, #4
|
|
blt _0233D654
|
|
bl GetLanguageType
|
|
strb r0, [r4, #0x58]
|
|
bl sub_02050CD0
|
|
strb r0, [r4, #0x59]
|
|
str sb, [r4, #0x1a0]
|
|
mov r0, #0x1000
|
|
str r0, [r4]
|
|
b _0233D9F0
|
|
_0233D688:
|
|
ldr r1, [r4, #0x10]
|
|
mov r0, #6
|
|
strb r0, [r1]
|
|
mov r0, #0
|
|
strb r0, [r1, #1]
|
|
mov r0, #0x10
|
|
strb r0, [r4, #0x54]
|
|
mov r0, #0x11
|
|
strb r0, [r4, #0x1bc]
|
|
add r5, r4, #0x1bc
|
|
bl GetLanguageType
|
|
strb r0, [r5, #2]
|
|
ldrsb r2, [r5, #2]
|
|
add r0, r4, #0x58
|
|
mov r1, #0x14c
|
|
strb r2, [r4, #0x56]
|
|
bl ov01_02337B3C
|
|
strb r0, [r4, #0x57]
|
|
add r0, r5, #4
|
|
mov r1, #0x14
|
|
bl ov01_02337B3C
|
|
strb r0, [r5, #3]
|
|
add r0, r4, #0x1a4
|
|
mov r1, #1
|
|
str r0, [sp, #0xc]
|
|
str r1, [sp, #8]
|
|
ldr r1, [r4, #4]
|
|
add r0, sp, #8
|
|
str r1, [sp, #0x18]
|
|
ldrb r3, [r4, #0x1d4]
|
|
mov r2, #0x20
|
|
mov r1, #0
|
|
strb r3, [sp, #0x1c]
|
|
ldr r3, [r4, #0x10]
|
|
str r3, [sp, #0x20]
|
|
strh r2, [sp, #0x24]
|
|
strb r1, [sp, #0x26]
|
|
str r1, [sp, #0x28]
|
|
bl ov01_02337BA0
|
|
ldr r0, _0233DA00 ; =0x00001001
|
|
str r0, [r4]
|
|
b _0233D9F0
|
|
_0233D730:
|
|
bl ov01_02337E0C
|
|
movs r6, r0
|
|
beq _0233D9F0
|
|
add r0, sp, #0x2c
|
|
add r5, r4, #0x54
|
|
add r7, r4, #0x1bc
|
|
bl InitPreprocessorArgs
|
|
bl ov01_02337C54
|
|
cmp r6, #0xe
|
|
addls pc, pc, r6, lsl #2
|
|
b _0233D9F0
|
|
_0233D75C: ; jump table
|
|
b _0233D9F0 ; case 0
|
|
b _0233D87C ; case 1
|
|
b _0233D9F0 ; case 2
|
|
b _0233D9F0 ; case 3
|
|
b _0233D798 ; case 4
|
|
b _0233D87C ; case 5
|
|
b _0233D87C ; case 6
|
|
b _0233D87C ; case 7
|
|
b _0233D87C ; case 8
|
|
b _0233D87C ; case 9
|
|
b _0233D87C ; case 10
|
|
b _0233D87C ; case 11
|
|
b _0233D87C ; case 12
|
|
b _0233D87C ; case 13
|
|
b _0233D87C ; case 14
|
|
_0233D798:
|
|
bl ov05_0233CAA8
|
|
cmp r0, #0
|
|
bne _0233D7F4
|
|
bl GetLanguageType
|
|
ldrsb r1, [r7, #2]
|
|
cmp r1, r0
|
|
add r0, sp, #0x7c
|
|
bne _0233D7C8
|
|
add r1, r7, #4
|
|
mov r2, #0x14
|
|
bl StrncpySimpleNoPadSafe
|
|
b _0233D7D0
|
|
_0233D7C8:
|
|
ldr r1, _0233DA10 ; =0x000038C9
|
|
bl GetStringFromFileVeneer
|
|
_0233D7D0:
|
|
ldr r1, _0233DA14 ; =0x000037ED
|
|
add r3, sp, #0x7c
|
|
add r2, sp, #0x2c
|
|
mov r0, #0x1c
|
|
str r3, [sp, #0x64]
|
|
bl ov05_02046BE8
|
|
mov r0, #0x4000
|
|
str r0, [r4]
|
|
b _0233D9F0
|
|
_0233D7F4:
|
|
bl ov05_0233CAA8
|
|
cmp r0, #1
|
|
bne _0233D9F0
|
|
bl GetLanguageType
|
|
ldrsb r1, [r5, #2]
|
|
cmp r1, r0
|
|
add r0, sp, #0x7c
|
|
bne _0233D824
|
|
add r1, r5, #6
|
|
mov r2, #0x14
|
|
bl StrncpySimpleNoPadSafe
|
|
b _0233D82C
|
|
_0233D824:
|
|
ldr r1, _0233DA10 ; =0x000038C9
|
|
bl GetStringFromFileVeneer
|
|
_0233D82C:
|
|
add r0, sp, #0x7c
|
|
str r0, [sp, #0x64]
|
|
mov r3, #0
|
|
mov r0, #0x4c
|
|
_0233D83C:
|
|
mla r2, r3, r0, r5
|
|
ldrh r1, [r2, #0x1c]
|
|
add r3, r3, #1
|
|
cmp r3, #4
|
|
and r1, r1, #1
|
|
strh r1, [r2, #0x1c]
|
|
blt _0233D83C
|
|
add r0, r5, #4
|
|
bl sub_02058FCC
|
|
ldr r1, _0233DA18 ; =0x000037EE
|
|
add r2, sp, #0x2c
|
|
mov r0, #0x1c
|
|
bl ov05_02046BE8
|
|
mov r0, #0x5000
|
|
str r0, [r4]
|
|
b _0233D9F0
|
|
_0233D87C:
|
|
mov r0, #1
|
|
b _0233D9F4
|
|
_0233D884:
|
|
bl ov05_0233CB84
|
|
cmp r0, #0xd
|
|
bne _0233D9F0
|
|
mov r0, #2
|
|
b _0233D9F4
|
|
_0233D898:
|
|
bl ov05_0233CB84
|
|
cmp r0, #0xd
|
|
ldreq r0, _0233DA1C ; =0x00005004
|
|
streq r0, [r4]
|
|
b _0233D9F0
|
|
_0233D8AC:
|
|
mov r0, #0
|
|
str r0, [r4, #0x1d8]
|
|
sub r0, r1, #1
|
|
str r0, [r4]
|
|
b _0233D9F0
|
|
_0233D8C0:
|
|
ldr r0, [r4, #0x1d8]
|
|
cmp r0, #4
|
|
addls pc, pc, r0, lsl #2
|
|
b _0233D9A0
|
|
_0233D8D0: ; jump table
|
|
b _0233D8E4 ; case 0
|
|
b _0233D8F8 ; case 1
|
|
b _0233D924 ; case 2
|
|
b _0233D97C ; case 3
|
|
b _0233D990 ; case 4
|
|
_0233D8E4:
|
|
ldr r1, _0233DA20 ; =0x0000023B
|
|
mov r0, #0
|
|
bl ov05_0233CB68
|
|
mov r0, #1
|
|
str r0, [r4, #0x1d8]
|
|
_0233D8F8:
|
|
bl ov05_0233CB84
|
|
cmp r0, #0xd
|
|
bne _0233D9A0
|
|
mov r0, #0xe0
|
|
mov r1, #0x88
|
|
mov r2, #1
|
|
bl sub_02029F88
|
|
mov r0, #2
|
|
str r0, [r4, #0x1d8]
|
|
bl sub_02003B94
|
|
b _0233D9A0
|
|
_0233D924:
|
|
mov r0, #3
|
|
bl NoteSaveBase
|
|
mov r5, r0
|
|
bl sub_02003BC8
|
|
bl sub_02029FBC
|
|
cmp r5, #0
|
|
bne _0233D958
|
|
#ifdef JAPAN
|
|
ldr r1, _0233F2A4 ; =0x000004CD
|
|
mov r0, #0x1c
|
|
#else
|
|
mov r0, #0x1c
|
|
mov r1, #0x23c
|
|
#endif
|
|
bl ov05_0233CB68
|
|
mov r0, #3
|
|
str r0, [r4, #0x1d8]
|
|
b _0233D9A0
|
|
_0233D958:
|
|
cmp r5, #1
|
|
moveq r0, #3
|
|
beq _0233D9A4
|
|
ldr r1, _0233DA24 ; =0x00000239
|
|
mov r0, #0x1c
|
|
bl ov05_0233CB68
|
|
mov r0, #4
|
|
str r0, [r4, #0x1d8]
|
|
b _0233D9A0
|
|
_0233D97C:
|
|
bl ov05_0233CB84
|
|
cmp r0, #0xd
|
|
bne _0233D9A0
|
|
mov r0, #1
|
|
b _0233D9A4
|
|
_0233D990:
|
|
bl ov05_0233CB84
|
|
cmp r0, #0xd
|
|
moveq r0, #2
|
|
beq _0233D9A4
|
|
_0233D9A0:
|
|
mov r0, #0
|
|
_0233D9A4:
|
|
cmp r0, #1
|
|
bne _0233D9C4
|
|
ldr r1, _0233DA28 ; =0x000037EF
|
|
mov r0, #0x1c
|
|
bl ov05_0233CB68
|
|
ldr r0, _0233DA04 ; =0x00005005
|
|
str r0, [r4]
|
|
b _0233D9F0
|
|
_0233D9C4:
|
|
cmp r0, #3
|
|
moveq r0, #3
|
|
beq _0233D9F4
|
|
cmp r0, #2
|
|
bne _0233D9F0
|
|
mov r0, #2
|
|
b _0233D9F4
|
|
_0233D9E0:
|
|
bl ov05_0233CB84
|
|
cmp r0, #0xd
|
|
moveq r0, #2
|
|
beq _0233D9F4
|
|
_0233D9F0:
|
|
mov r0, #0
|
|
_0233D9F4:
|
|
add sp, sp, #0x17c
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
#if defined(EUROPE)
|
|
#define OV05_0233D450_OFFSET 2
|
|
#elif defined(JAPAN)
|
|
#define OV05_0233D450_OFFSET 0x164
|
|
#else
|
|
#define OV05_0233D450_OFFSET 0
|
|
#endif
|
|
_0233D9FC: .word ov05_0233FCA4
|
|
_0233DA00: .word 0x00001001
|
|
_0233DA04: .word 0x00005005
|
|
_0233DA08: .word ov05_0233DA2C
|
|
_0233DA0C: .word ov01_02337B68
|
|
#ifdef JAPAN
|
|
_0233DA10: .word 0x00003507
|
|
#else
|
|
_0233DA10: .word 0x000038C9 + OV05_0233D450_OFFSET
|
|
#endif
|
|
_0233DA14: .word 0x000037ED + OV05_0233D450_OFFSET
|
|
_0233DA18: .word 0x000037EE + OV05_0233D450_OFFSET
|
|
_0233DA1C: .word 0x00005004
|
|
#ifdef JAPAN
|
|
_0233DA20: .word 0x000004CC
|
|
_0233F2A4: .word 0x000004CD
|
|
_0233DA24: .word 0x000004CA
|
|
#else
|
|
_0233DA20: .word 0x0000023B
|
|
_0233DA24: .word 0x00000239
|
|
#endif
|
|
_0233DA28: .word 0x000037EF + OV05_0233D450_OFFSET
|
|
arm_func_end ov05_0233D450
|
|
|
|
arm_func_start ov05_0233DA2C
|
|
ov05_0233DA2C: ; 0x0233DA2C
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr}
|
|
mov r8, r0
|
|
add r5, r8, #4
|
|
bl ov05_0233CAA8
|
|
cmp r0, #1
|
|
bne _0233DB14
|
|
mov r0, r5
|
|
mov r1, #0x14c
|
|
bl ov01_02337B3C
|
|
ldrb r1, [r8, #3]
|
|
cmp r0, r1
|
|
movne r0, #3
|
|
ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
ldrb r0, [r8]
|
|
cmp r0, #0x10
|
|
movne r0, #2
|
|
ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
ldr r0, [r8, #0x14c]
|
|
cmp r0, #0
|
|
beq _0233DA84
|
|
cmp r0, #4
|
|
bls _0233DA8C
|
|
_0233DA84:
|
|
mov r0, #6
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0233DA8C:
|
|
mov r6, #0
|
|
add r4, r5, #0x42
|
|
mov sb, #0x4c
|
|
b _0233DB00
|
|
_0233DA9C:
|
|
mul sl, r6, sb
|
|
add r7, r5, sl
|
|
ldrsh r0, [r7, #0x20]
|
|
bl IsMonsterIllegalForMissions
|
|
cmp r0, #0
|
|
bne _0233DAF4
|
|
ldrsh r0, [r7, #0x20]
|
|
bl sub_02054F18
|
|
cmp r0, #0
|
|
bne _0233DAF4
|
|
add r0, r4, sl
|
|
bl IsMovesetValid
|
|
cmp r0, #0
|
|
beq _0233DAF4
|
|
ldrb r0, [r7, #0x1c]
|
|
cmp r0, #1
|
|
blo _0233DAF4
|
|
cmp r0, #0x64
|
|
bhi _0233DAF4
|
|
ldrb r0, [r7, #0x3c]
|
|
cmp r0, #0xb
|
|
blo _0233DAFC
|
|
_0233DAF4:
|
|
mov r0, #6
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0233DAFC:
|
|
add r6, r6, #1
|
|
_0233DB00:
|
|
ldr r0, [r8, #0x14c]
|
|
cmp r6, r0
|
|
blo _0233DA9C
|
|
mov r0, #1
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0233DB14:
|
|
mov r0, #0
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
arm_func_end ov05_0233DA2C
|
|
|
|
arm_func_start ov05_0233DB1C
|
|
ov05_0233DB1C: ; 0x0233DB1C
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0233DB98 ; =0x0000188C
|
|
mov r1, #8
|
|
bl MemAlloc
|
|
ldr r2, _0233DB9C ; =ov05_0233FCA8
|
|
ldr r1, _0233DB98 ; =0x0000188C
|
|
str r0, [r2]
|
|
bl MemZero
|
|
mov r0, #0
|
|
ldr r2, _0233DB9C ; =ov05_0233FCA8
|
|
sub ip, r0, #2
|
|
ldr r1, [r2]
|
|
sub r3, r0, #1
|
|
str r0, [r1]
|
|
ldr lr, [r2]
|
|
add r1, lr, #0xc1
|
|
bic r1, r1, #0x1f
|
|
str r1, [lr, #0x2c4]
|
|
ldr r1, [r2]
|
|
add r1, r1, #0x1000
|
|
strb ip, [r1, #0x7dc]
|
|
ldr r1, [r2]
|
|
add r1, r1, #0x1000
|
|
str r3, [r1, #0x7d8]
|
|
ldr r1, [r2]
|
|
add r1, r1, #0x1000
|
|
strb r0, [r1, #0x880]
|
|
ldr r1, [r2]
|
|
add r1, r1, #0x1000
|
|
str r0, [r1, #0x888]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0233DB98: .word 0x0000188C
|
|
_0233DB9C: .word ov05_0233FCA8
|
|
arm_func_end ov05_0233DB1C
|
|
|
|
arm_func_start ov05_0233DBA0
|
|
ov05_0233DBA0: ; 0x0233DBA0
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0233DBD8 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
mov r0, #1
|
|
bl ov00_022BCBAC
|
|
ldr r0, _0233DBD8 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
bl MemFree
|
|
ldr r0, _0233DBD8 ; =ov05_0233FCA8
|
|
mov r1, #0
|
|
str r1, [r0]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0233DBD8: .word ov05_0233FCA8
|
|
arm_func_end ov05_0233DBA0
|
|
|
|
arm_func_start ov05_0233DBDC
|
|
ov05_0233DBDC: ; 0x0233DBDC
|
|
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
|
sub sp, sp, #0x348
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, _0233EB04 ; =0x00003023
|
|
ldr r4, [r1]
|
|
ldr r1, [r4]
|
|
cmp r1, r0
|
|
bgt _0233DD20
|
|
bge _0233E888
|
|
ldr r2, _0233EB08 ; =0x00002001
|
|
cmp r1, r2
|
|
bgt _0233DC74
|
|
bge _0233E2E4
|
|
sub r0, r2, #0x1000
|
|
cmp r1, r0
|
|
bgt _0233DC54
|
|
bge _0233E18C
|
|
cmp r1, #2
|
|
bgt _0233DC48
|
|
cmp r1, #0
|
|
blt _0233F854
|
|
beq _0233DE0C
|
|
cmp r1, #1
|
|
beq _0233DE44
|
|
cmp r1, #2
|
|
beq _0233DE60
|
|
b _0233F854
|
|
_0233DC48:
|
|
cmp r1, #0x1000
|
|
beq _0233E09C
|
|
b _0233F854
|
|
_0233DC54:
|
|
ldr r0, _0233EB0C ; =0x00001002
|
|
cmp r1, r0
|
|
bgt _0233DC68
|
|
beq _0233E1C0
|
|
b _0233F854
|
|
_0233DC68:
|
|
cmp r1, #0x2000
|
|
beq _0233E218
|
|
b _0233F854
|
|
_0233DC74:
|
|
sub r2, r0, #0x12
|
|
cmp r1, r2
|
|
bgt _0233DCF0
|
|
sub r0, r0, #0x21
|
|
subs r0, r1, r0
|
|
addpl pc, pc, r0, lsl #2
|
|
b _0233DCD0
|
|
_0233DC90: ; jump table
|
|
b _0233E424 ; case 0
|
|
b _0233E4EC ; case 1
|
|
b _0233E64C ; case 2
|
|
b _0233F854 ; case 3
|
|
b _0233F13C ; case 4
|
|
b _0233F248 ; case 5
|
|
b _0233F854 ; case 6
|
|
b _0233F854 ; case 7
|
|
b _0233F854 ; case 8
|
|
b _0233F854 ; case 9
|
|
b _0233F854 ; case 10
|
|
b _0233F854 ; case 11
|
|
b _0233F854 ; case 12
|
|
b _0233F224 ; case 13
|
|
b _0233EEB8 ; case 14
|
|
b _0233EFC0 ; case 15
|
|
_0233DCD0:
|
|
cmp r1, #0x3000
|
|
bgt _0233DCE0
|
|
beq _0233E364
|
|
b _0233F854
|
|
_0233DCE0:
|
|
ldr r0, _0233EB10 ; =0x00003001
|
|
cmp r1, r0
|
|
beq _0233E37C
|
|
b _0233F854
|
|
_0233DCF0:
|
|
sub r2, r0, #2
|
|
cmp r1, r2
|
|
bgt _0233DD10
|
|
bge _0233E7A4
|
|
sub r0, r0, #3
|
|
cmp r1, r0
|
|
beq _0233E6B8
|
|
b _0233F854
|
|
_0233DD10:
|
|
sub r0, r0, #1
|
|
cmp r1, r0
|
|
beq _0233E7F4
|
|
b _0233F854
|
|
_0233DD20:
|
|
ldr r3, _0233EB14 ; =0x00004002
|
|
cmp r1, r3
|
|
bgt _0233DDB4
|
|
bge _0233F4A4
|
|
add r2, r0, #5
|
|
cmp r1, r2
|
|
bgt _0233DD94
|
|
add r2, r0, #3
|
|
cmp r1, r2
|
|
blt _0233DD68
|
|
beq _0233EBB4
|
|
add r2, r0, #4
|
|
cmp r1, r2
|
|
beq _0233ED24
|
|
add r0, r0, #5
|
|
cmp r1, r0
|
|
beq _0233EE0C
|
|
b _0233F854
|
|
_0233DD68:
|
|
add r2, r0, #1
|
|
cmp r1, r2
|
|
bgt _0233DD84
|
|
add r0, r0, #1
|
|
cmp r1, r0
|
|
beq _0233E9A4
|
|
b _0233F854
|
|
_0233DD84:
|
|
add r0, r0, #2
|
|
cmp r1, r0
|
|
beq _0233EA78
|
|
b _0233F854
|
|
_0233DD94:
|
|
cmp r1, #0x4000
|
|
bgt _0233DDA4
|
|
beq _0233F40C
|
|
b _0233F854
|
|
_0233DDA4:
|
|
sub r0, r3, #1
|
|
cmp r1, r0
|
|
beq _0233F440
|
|
b _0233F854
|
|
_0233DDB4:
|
|
cmp r1, #0x9000
|
|
bgt _0233DDE0
|
|
bge _0233F760
|
|
cmp r1, #0x8000
|
|
bgt _0233DDD0
|
|
beq _0233F508
|
|
b _0233F854
|
|
_0233DDD0:
|
|
add r0, r3, #0x4000
|
|
cmp r1, r0
|
|
beq _0233F534
|
|
b _0233F854
|
|
_0233DDE0:
|
|
ldr r0, _0233EB18 ; =0x00009011
|
|
cmp r1, r0
|
|
bgt _0233DE00
|
|
bge _0233F7E8
|
|
sub r0, r0, #1
|
|
cmp r1, r0
|
|
beq _0233F7D4
|
|
b _0233F854
|
|
_0233DE00:
|
|
cmp r1, #0xf000
|
|
beq _0233F74C
|
|
b _0233F854
|
|
_0233DE0C:
|
|
bl sub_0204A1CC
|
|
bl ov00_022BCA80
|
|
cmp r0, #3
|
|
ldrne r0, _0233EB00 ; =ov05_0233FCA8
|
|
movne r1, #2
|
|
ldrne r0, [r0]
|
|
strne r1, [r0]
|
|
bne _0233F854
|
|
bl ov01_02339888
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233DE44:
|
|
bl ov01_023398A4
|
|
cmp r0, #0
|
|
ldrne r0, _0233EB00 ; =ov05_0233FCA8
|
|
movne r1, #2
|
|
ldrne r0, [r0]
|
|
strne r1, [r0]
|
|
b _0233F854
|
|
_0233DE60:
|
|
bl ov05_0233CAA8
|
|
cmp r0, #1
|
|
bne _0233DEF0
|
|
bl ov05_0233F93C
|
|
bl ov00_022BD338
|
|
cmp r0, #0
|
|
beq _0233DE88
|
|
bl ov00_022BCCF4
|
|
cmp r0, #0
|
|
bne _0233DE98
|
|
_0233DE88:
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #3
|
|
ldr r0, [r0]
|
|
strb r1, [r0, #0x9c]
|
|
_0233DE98:
|
|
mov r0, #4
|
|
bl ov01_0233767C
|
|
ldr r2, _0233EB1C ; =ov05_0233FC18
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r2, [r2, r0, lsl #3]
|
|
ldr r0, [r1]
|
|
ldr r3, _0233EB20 ; =ov05_0233FC14
|
|
str r2, [r0, #4]
|
|
mov r0, #0
|
|
ldr r2, _0233EB24 ; =0x000037F0
|
|
str r3, [sp]
|
|
str r2, [sp, #4]
|
|
ldr r3, [r1]
|
|
ldr r2, _0233EB28 ; =0x00000233
|
|
mov r1, r0
|
|
add r3, r3, #4
|
|
bl ov05_0233CADC
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x1000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233DEF0:
|
|
bl ov05_0233CAA8
|
|
cmp r0, #0
|
|
bne _0233F854
|
|
bl ov00_022BCCF4
|
|
cmp r0, #0
|
|
beq _0233E018
|
|
bl sub_020590C0
|
|
cmp r1, #0
|
|
cmpeq r0, #2
|
|
bls _0233E018
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1000
|
|
ldrb r0, [r0, #0x880]
|
|
cmp r0, #0
|
|
bne _0233E018
|
|
bl sub_020590C0
|
|
mov r4, r0
|
|
add r0, sp, #0x2f8
|
|
mov r5, r1
|
|
bl InitPreprocessorArgs
|
|
bl ov05_0233F93C
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
mov r3, #0xc
|
|
ldr r2, [r1]
|
|
mov r0, r4
|
|
str r3, [r2, #4]
|
|
ldr r2, _0233EB2C ; =0x00002710
|
|
mov r1, r5
|
|
mov r3, #0
|
|
bl _ull_mod
|
|
str r0, [sp, #0x324]
|
|
ldr r2, _0233EB2C ; =0x00002710
|
|
mov r0, r4
|
|
mov r1, r5
|
|
mov r3, #0
|
|
bl _ll_udiv
|
|
ldr r2, _0233EB2C ; =0x00002710
|
|
mov r3, #0
|
|
bl _ull_mod
|
|
str r0, [sp, #0x320]
|
|
ldr r2, _0233EB30 ; =0x05F5E100
|
|
mov r1, r5
|
|
mov r0, r4
|
|
mov r3, #0
|
|
bl _ll_udiv
|
|
ldr r2, _0233EB2C ; =0x00002710
|
|
mov r3, #0
|
|
bl _ull_mod
|
|
str r0, [sp, #0x31c]
|
|
mov r0, #5
|
|
bl ov01_0233767C
|
|
ldr r2, _0233EB34 ; =ov05_0233FB80
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r3, [r2, r0, lsl #3]
|
|
ldr r2, [r1]
|
|
ldr r0, _0233EB38 ; =ov05_0233FB7C
|
|
str r3, [r2, #4]
|
|
str r0, [sp]
|
|
ldr r2, _0233EB3C ; =0x00003801
|
|
add r0, sp, #0x2f8
|
|
str r2, [sp, #4]
|
|
str r0, [sp, #8]
|
|
ldr r1, [r1]
|
|
mov r0, #0
|
|
add r3, r1, #4
|
|
mov r1, r0
|
|
mov r2, #0x33
|
|
bl ov05_0233CB08
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x2000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E018:
|
|
bl ov05_0233F93C
|
|
bl ov00_022BD338
|
|
cmp r0, #0
|
|
beq _0233E034
|
|
bl ov00_022BCCF4
|
|
cmp r0, #0
|
|
bne _0233E044
|
|
_0233E034:
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #3
|
|
ldr r0, [r0]
|
|
strb r1, [r0, #0x9c]
|
|
_0233E044:
|
|
mov r0, #6
|
|
bl ov01_0233767C
|
|
ldr r2, _0233EB40 ; =ov05_0233FBF8
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r2, [r2, r0, lsl #3]
|
|
ldr r0, [r1]
|
|
ldr r3, _0233EB44 ; =ov05_0233FBF4
|
|
str r2, [r0, #4]
|
|
mov r0, #0
|
|
ldr r2, _0233EB48 ; =0x00003802
|
|
str r3, [sp]
|
|
str r2, [sp, #4]
|
|
ldr r3, [r1]
|
|
ldr r2, _0233EB28 ; =0x00000233
|
|
mov r1, r0
|
|
add r3, r3, #4
|
|
bl ov05_0233CADC
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB08 ; =0x00002001
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E09C:
|
|
add r0, r4, #0x1000
|
|
mov r1, #0
|
|
str r1, [r0, #0x888]
|
|
bl ov05_0233CB34
|
|
mov r4, r0
|
|
bl ov05_02046BA0
|
|
mov r0, r0, lsl #0x18
|
|
mov r1, r0, asr #0x18
|
|
mov r0, #4
|
|
bl ov01_0233768C
|
|
cmp r4, #6
|
|
bne _0233E0EC
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r3, #0
|
|
ldr r2, [r0]
|
|
mov r1, #0x3000
|
|
str r3, [r2, #0x2cc]
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E0EC:
|
|
cmp r4, #7
|
|
bne _0233E114
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r3, #1
|
|
ldr r2, [r0]
|
|
mov r1, #0x3000
|
|
str r3, [r2, #0x2cc]
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E114:
|
|
cmp r4, #8
|
|
bne _0233E13C
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r3, #2
|
|
ldr r2, [r0]
|
|
mov r1, #0x3000
|
|
str r3, [r2, #0x2cc]
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E13C:
|
|
cmp r4, #9
|
|
bne _0233E178
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mvn r3, #0
|
|
ldr r2, [r0]
|
|
ldr r1, _0233EB4C ; =0xD4A51000
|
|
str r3, [r2, #0x2cc]
|
|
ldr r2, [r0]
|
|
mov r0, #0xe8
|
|
str r1, [r2, #0x2d0]
|
|
str r0, [r2, #0x2d4]
|
|
rsb r0, r3, #0x1000
|
|
str r0, [r2]
|
|
bl sub_02046D20
|
|
b _0233F854
|
|
_0233E178:
|
|
sub r0, r4, #0xc
|
|
cmp r0, #1
|
|
bhi _0233F854
|
|
mov r0, #1
|
|
b _0233F858
|
|
_0233E18C:
|
|
ldr r1, [r4, #0x2d0]
|
|
ldr r2, [r4, #0x2d4]
|
|
mov r0, #2
|
|
bl ov01_0233580C
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r3, _0233EB0C ; =0x00001002
|
|
ldr r2, [r0]
|
|
mov r1, #0
|
|
str r3, [r2]
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1000
|
|
str r1, [r0, #0x888]
|
|
b _0233F854
|
|
_0233E1C0:
|
|
bl ov01_02336014
|
|
cmp r0, #2
|
|
bne _0233E1F8
|
|
bl ov01_023370AC
|
|
ldr r2, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r2, [r2]
|
|
str r0, [r2, #0x2d0]
|
|
str r1, [r2, #0x2d4]
|
|
bl ov01_02335FA8
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x3000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E1F8:
|
|
cmp r0, #1
|
|
bne _0233F854
|
|
bl ov01_02335FA8
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #2
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E218:
|
|
bl ov05_0233CB34
|
|
mov r4, r0
|
|
bl ov05_02046BA0
|
|
mov r0, r0, lsl #0x18
|
|
mov r1, r0, asr #0x18
|
|
mov r0, #5
|
|
bl ov01_0233768C
|
|
cmp r4, #0xb
|
|
bne _0233E2D0
|
|
bl ov05_0233F93C
|
|
bl ov00_022BD338
|
|
cmp r0, #0
|
|
beq _0233E258
|
|
bl ov00_022BCCF4
|
|
cmp r0, #0
|
|
bne _0233E268
|
|
_0233E258:
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #3
|
|
ldr r0, [r0]
|
|
strb r1, [r0, #0x9c]
|
|
_0233E268:
|
|
mov r0, #6
|
|
bl ov01_0233767C
|
|
ldr r2, _0233EB40 ; =ov05_0233FBF8
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r2, [r2, r0, lsl #3]
|
|
ldr r0, [r1]
|
|
ldr r3, _0233EB44 ; =ov05_0233FBF4
|
|
str r2, [r0, #4]
|
|
mov r0, #0
|
|
ldr r2, _0233EB48 ; =0x00003802
|
|
str r3, [sp]
|
|
str r2, [sp, #4]
|
|
ldr r3, [r1]
|
|
ldr r2, _0233EB28 ; =0x00000233
|
|
mov r1, r0
|
|
add r3, r3, #4
|
|
bl ov05_0233CADC
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
mov r3, #1
|
|
ldr r0, [r1]
|
|
add r2, r3, #0x2000
|
|
add r0, r0, #0x1000
|
|
strb r3, [r0, #0x880]
|
|
ldr r0, [r1]
|
|
str r2, [r0]
|
|
b _0233F854
|
|
_0233E2D0:
|
|
sub r0, r4, #0xc
|
|
cmp r0, #1
|
|
bhi _0233F854
|
|
mov r0, #1
|
|
b _0233F858
|
|
_0233E2E4:
|
|
bl ov05_0233CB34
|
|
mov r4, r0
|
|
bl ov05_02046BA0
|
|
mov r0, r0, lsl #0x18
|
|
mov r1, r0, asr #0x18
|
|
mov r0, #6
|
|
bl ov01_0233768C
|
|
cmp r4, #6
|
|
bne _0233E328
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r3, #1
|
|
ldr r2, [r0]
|
|
mov r1, #0x3000
|
|
strb r3, [r2, #0x2c8]
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E328:
|
|
cmp r4, #0xa
|
|
bne _0233E350
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r3, #0
|
|
ldr r2, [r0]
|
|
mov r1, #0x3000
|
|
strb r3, [r2, #0x2c8]
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E350:
|
|
sub r0, r4, #0xc
|
|
cmp r0, #1
|
|
bhi _0233F854
|
|
mov r0, #1
|
|
b _0233F858
|
|
_0233E364:
|
|
bl ov01_02338A24
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB10 ; =0x00003001
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E37C:
|
|
bl ov01_02338EC4
|
|
cmp r0, #1
|
|
beq _0233E3F4
|
|
cmp r0, #4
|
|
beq _0233E39C
|
|
cmp r0, #8
|
|
beq _0233E40C
|
|
b _0233F854
|
|
_0233E39C:
|
|
bl ov05_0233CAA8
|
|
cmp r0, #1
|
|
bne _0233E3C8
|
|
ldr r1, _0233EB50 ; =0x000037F6
|
|
mov r0, #0
|
|
bl ov05_0233CB68
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB54 ; =0x00003002
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E3C8:
|
|
bl ov05_0233CAA8
|
|
cmp r0, #0
|
|
bne _0233F854
|
|
ldr r1, _0233EB58 ; =0x00003806
|
|
mov r0, #0
|
|
bl ov05_0233CB68
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB54 ; =0x00003002
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E3F4:
|
|
bl ov01_02338B08
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #2
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E40C:
|
|
bl ov01_02338B08
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x9000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E424:
|
|
bl ov05_0233CB84
|
|
mov r4, r0
|
|
bl ov01_02338EC4
|
|
cmp r0, #5
|
|
bne _0233E454
|
|
bl sub_02046D20
|
|
bl ov01_02338C34
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB5C ; =0x0000300F
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E454:
|
|
cmp r4, #0xd
|
|
bne _0233F854
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
ldrb r0, [r0, #0x2c8]
|
|
cmp r0, #0
|
|
beq _0233E4A8
|
|
bl ov00_022BD338
|
|
cmp r0, #0
|
|
beq _0233E488
|
|
bl ov00_022BCCF4
|
|
cmp r0, #0
|
|
bne _0233E4A8
|
|
_0233E488:
|
|
mov r0, #0x14
|
|
mov r1, #6
|
|
bl ov01_023398B0
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB5C ; =0x0000300F
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E4A8:
|
|
bl sub_0205BD78
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
mov r2, r0
|
|
ldr r0, [r1]
|
|
mov r1, #1
|
|
ldr r0, [r0, #0x2c4]
|
|
bl ov01_0232C5C8
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
mov r0, #0
|
|
ldr r1, [r1]
|
|
ldr r1, [r1, #0x2c4]
|
|
bl ov01_02338C4C
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB60 ; =0x00003003
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E4EC:
|
|
bl ov01_02338EC4
|
|
cmp r0, #4
|
|
bne _0233E628
|
|
bl ov05_0233CAA8
|
|
cmp r0, #0
|
|
bne _0233E568
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
ldrb r1, [r0, #0x2c8]
|
|
ldr r0, [r0, #0x2c4]
|
|
bl ov01_0232DA1C
|
|
cmp r0, #0
|
|
beq _0233E548
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
mov r0, #9
|
|
ldr r1, [r1]
|
|
ldr r1, [r1, #0x2c4]
|
|
bl ov01_02338C4C
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB64 ; =0x00003004
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E548:
|
|
mov r0, #2
|
|
mov r1, #6
|
|
bl ov01_023398B0
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB5C ; =0x0000300F
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E568:
|
|
bl ov05_0233CAA8
|
|
cmp r0, #1
|
|
bne _0233F854
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r2, [r0]
|
|
ldr r3, [r2, #0x2cc]
|
|
cmp r3, #0
|
|
bge _0233E5C0
|
|
ldr r0, [r2, #0x2c4]
|
|
ldr r1, [r2, #0x2d0]
|
|
ldr r2, [r2, #0x2d4]
|
|
bl ov01_0232DE74
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
mov r0, #0xb
|
|
ldr r1, [r1]
|
|
ldr r1, [r1, #0x2c4]
|
|
bl ov01_02338C4C
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB68 ; =0x00003010
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E5C0:
|
|
cmp r3, #2
|
|
movne r1, #0
|
|
movne r2, #8
|
|
bne _0233E5E0
|
|
bl sub_02050CD0
|
|
mov r2, r0
|
|
mov r1, r2
|
|
mov r3, #1
|
|
_0233E5E0:
|
|
mov r0, #0x10
|
|
str r0, [sp]
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
str r3, [sp, #4]
|
|
ldr r0, [r0]
|
|
mov r3, #0
|
|
ldr r0, [r0, #0x2c4]
|
|
bl ov01_0232DBAC
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
mov r0, #0xa
|
|
ldr r1, [r1]
|
|
ldr r1, [r1, #0x2c4]
|
|
bl ov01_02338C4C
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB6C ; =0x00003020
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E628:
|
|
cmp r0, #8
|
|
cmpne r0, #6
|
|
bne _0233F854
|
|
bl ov01_02338B08
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x9000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E64C:
|
|
bl ov01_02338EC4
|
|
cmp r0, #4
|
|
bne _0233E694
|
|
mov r0, #0
|
|
bl ov01_02338E1C
|
|
bl ov01_0232DB94
|
|
ldr r2, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r2, [r2]
|
|
str r0, [r2, #0x2d0]
|
|
str r1, [r2, #0x2d4]
|
|
mov r0, #1
|
|
mov r1, #0
|
|
bl ov01_02338C28
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB70 ; =0x00003007
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E694:
|
|
cmp r0, #8
|
|
cmpne r0, #6
|
|
bne _0233F854
|
|
bl ov01_02338B08
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x9000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E6B8:
|
|
bl ov01_02338EC4
|
|
cmp r0, #4
|
|
bne _0233E780
|
|
mov r0, #0
|
|
bl ov01_02338E1C
|
|
mov r4, r0
|
|
bl ov01_0232DCCC
|
|
ldr r2, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, [r2]
|
|
add r1, r1, #0x1000
|
|
str r0, [r1, #0x7d4]
|
|
ldr r2, [r2]
|
|
add r0, r2, #0x1000
|
|
ldr r0, [r0, #0x7d4]
|
|
cmp r0, #0
|
|
bne _0233E718
|
|
mov r0, #1
|
|
mov r1, #0
|
|
bl ov01_02338C28
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB70 ; =0x00003007
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E718:
|
|
add r1, r2, #0x350
|
|
mov r0, r4
|
|
add r2, r2, #0x2d0
|
|
mov r3, #0x10
|
|
bl ov01_0232DD00
|
|
add r0, sp, #0x2a8
|
|
bl InitPreprocessorArgs
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB74 ; =ov05_0233FC44
|
|
ldr r2, [r0]
|
|
add r0, sp, #0x1a8
|
|
ldr r2, [r2, #0x2cc]
|
|
mov r2, r2, lsl #1
|
|
ldrh r1, [r1, r2]
|
|
bl GetStringFromFileVeneer
|
|
add r3, sp, #0x1a8
|
|
ldr r1, _0233EB78 ; =0x000037F9
|
|
add r2, sp, #0x2a8
|
|
mov r0, #0x1c
|
|
str r3, [sp, #0x2e0]
|
|
bl ov05_02046BE8
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB7C ; =0x00003021
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E780:
|
|
cmp r0, #8
|
|
cmpne r0, #6
|
|
bne _0233F854
|
|
bl ov01_02338B08
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x9000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E7A4:
|
|
bl ov01_02338EC4
|
|
mov r4, r0
|
|
bl ov05_0233CB84
|
|
cmp r4, #5
|
|
bne _0233E7D4
|
|
bl sub_02046D20
|
|
bl ov01_02338C34
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB5C ; =0x0000300F
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E7D4:
|
|
cmp r0, #0xd
|
|
bne _0233F854
|
|
bl sub_02046D20
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB80 ; =0x00003022
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E7F4:
|
|
add r0, r4, #0x1700
|
|
ldrsb r0, [r0, #0xdc]
|
|
mvn r1, #1
|
|
cmp r0, r1
|
|
bne _0233E874
|
|
add r0, r4, #0x1000
|
|
ldr r0, [r0, #0x7d8]
|
|
add r1, r4, #0x1000
|
|
cmp r0, #0
|
|
movlt r0, #0
|
|
str r0, [r1, #0x7e0]
|
|
mov r3, #0x10
|
|
ldr r2, _0233EB84 ; =0x000037FA
|
|
str r3, [r1, #0x7ec]
|
|
add r0, r4, #0x1700
|
|
strh r2, [r0, #0xe8]
|
|
str r3, [r1, #0x7ec]
|
|
mov r0, #0xd
|
|
str r0, [r1, #0x7e4]
|
|
ldr r5, [r1, #0x7d4]
|
|
add r2, r4, #0x7e0
|
|
str r5, [sp]
|
|
mov r5, #8
|
|
ldr r0, _0233EB88 ; =ov05_0233FC4C
|
|
ldr r1, _0233EB8C ; =0x00441C33
|
|
ldr r3, _0233EB90 ; =ov05_0233F9C4
|
|
add r2, r2, #0x1000
|
|
str r5, [sp, #4]
|
|
bl CreateAdvancedMenu
|
|
add r1, r4, #0x1000
|
|
strb r0, [r1, #0x7dc]
|
|
b _0233E878
|
|
_0233E874:
|
|
bl ResumeAdvancedMenu
|
|
_0233E878:
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB04 ; =0x00003023
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
_0233E888:
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1700
|
|
ldrsb r0, [r0, #0xdc]
|
|
bl GetAdvancedMenuCurrentOption
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, [r1]
|
|
add r1, r1, #0x1000
|
|
str r0, [r1, #0x7d8]
|
|
bl ov01_02338EC4
|
|
cmp r0, #5
|
|
bne _0233E8D4
|
|
bl ov05_0233F980
|
|
bl ov01_02338C34
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB5C ; =0x0000300F
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E8D4:
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1700
|
|
ldrsb r0, [r0, #0xdc]
|
|
bl IsAdvancedMenuActive2
|
|
cmp r0, #0
|
|
bne _0233F854
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1700
|
|
ldrsb r0, [r0, #0xdc]
|
|
bl GetAdvancedMenuResult
|
|
mov r4, r0
|
|
bl ov05_0233F980
|
|
cmp r4, #0
|
|
bge _0233E948
|
|
mov r0, #7
|
|
bl ov01_0233767C
|
|
str r0, [sp]
|
|
mov r0, #0
|
|
ldr r2, _0233EB38 ; =ov05_0233FB7C
|
|
ldr r3, _0233EB94 ; =0x000037FC
|
|
mov r1, r0
|
|
bl ov05_0233CAC8
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB98 ; =0x00003028
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E948:
|
|
ldr r3, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB9C ; =ov05_0233FC5C
|
|
ldr r0, [r3]
|
|
ldr r2, _0233EBA0 ; =ov05_0233FA74
|
|
add r0, r0, #0x1000
|
|
str r4, [r0, #0x7d8]
|
|
ldr r0, [r3]
|
|
add r0, r0, #0x78
|
|
add r0, r0, #0x1800
|
|
bl sub_0204707C
|
|
mov r0, #8
|
|
bl ov01_0233767C
|
|
str r0, [sp]
|
|
mov r0, #0
|
|
ldr r2, _0233EB38 ; =ov05_0233FB7C
|
|
ldr r3, _0233EBA4 ; =0x000037FB
|
|
mov r1, r0
|
|
bl ov05_0233CAC8
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EBA8 ; =0x00003024
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233E9A4:
|
|
bl ov01_02338EC4
|
|
mov r5, r0
|
|
bl ov05_0233CB34
|
|
mov r4, r0
|
|
bl ov05_02046BA0
|
|
mov r0, r0, lsl #0x18
|
|
mov r1, r0, asr #0x18
|
|
mov r0, #8
|
|
bl ov01_0233768C
|
|
cmp r5, #5
|
|
bne _0233EA04
|
|
bl sub_02046BB4
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x78
|
|
add r0, r0, #0x1800
|
|
bl sub_02047150
|
|
bl sub_02046D20
|
|
bl ov01_02338C34
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB5C ; =0x0000300F
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233EA04:
|
|
cmp r4, #0xb
|
|
bne _0233EA40
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x78
|
|
add r0, r0, #0x1800
|
|
bl sub_02047150
|
|
ldr r1, _0233EB50 ; =0x000037F6
|
|
mov r0, #0
|
|
bl ov05_0233CB68
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EBAC ; =0x00003025
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233EA40:
|
|
sub r0, r4, #0xc
|
|
cmp r0, #1
|
|
bhi _0233F854
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x78
|
|
add r0, r0, #0x1800
|
|
bl sub_02047150
|
|
bl sub_02046D20
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB80 ; =0x00003022
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233EA78:
|
|
bl ov01_02338EC4
|
|
mov r4, r0
|
|
bl ov05_0233CB84
|
|
cmp r4, #5
|
|
bne _0233EAAC
|
|
bl sub_02046BB4
|
|
bl sub_02046D20
|
|
bl ov01_02338C34
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB5C ; =0x0000300F
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233EAAC:
|
|
cmp r0, #0xd
|
|
bne _0233F854
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x1000
|
|
ldr r1, [r0, #0x7d8]
|
|
ldr r0, [r2, #0x2c4]
|
|
add r2, r2, r1, lsl #3
|
|
ldr r1, [r2, #0x2d0]
|
|
ldr r2, [r2, #0x2d4]
|
|
bl ov01_0232E038
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
mov r0, #0xc
|
|
ldr r1, [r1]
|
|
ldr r1, [r1, #0x2c4]
|
|
bl ov01_02338C4C
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EBB0 ; =0x00003026
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
.align 2, 0
|
|
#if defined(EUROPE)
|
|
#define OV05_0233DBA0_OFFSET 2
|
|
#elif defined(JAPAN)
|
|
#define OV05_0233DBA0_OFFSET 0x164
|
|
#else
|
|
#define OV05_0233DBA0_OFFSET 0
|
|
#endif
|
|
_0233EB00: .word ov05_0233FCA8
|
|
_0233EB04: .word 0x00003023
|
|
_0233EB08: .word 0x00002001
|
|
_0233EB0C: .word 0x00001002
|
|
_0233EB10: .word 0x00003001
|
|
_0233EB14: .word 0x00004002
|
|
_0233EB18: .word 0x00009011
|
|
_0233EB1C: .word ov05_0233FC18
|
|
_0233EB20: .word ov05_0233FC14
|
|
_0233EB24: .word 0x000037F0 + OV05_0233DBA0_OFFSET
|
|
_0233EB28: .word 0x00000233
|
|
_0233EB2C: .word 0x00002710
|
|
_0233EB30: .word 0x05F5E100
|
|
_0233EB34: .word ov05_0233FB80
|
|
_0233EB38: .word ov05_0233FB7C
|
|
_0233EB3C: .word 0x00003801 + OV05_0233DBA0_OFFSET
|
|
_0233EB40: .word ov05_0233FBF8
|
|
_0233EB44: .word ov05_0233FBF4
|
|
_0233EB48: .word 0x00003802 + OV05_0233DBA0_OFFSET
|
|
_0233EB4C: .word 0xD4A51000
|
|
_0233EB50: .word 0x000037F6 + OV05_0233DBA0_OFFSET
|
|
_0233EB54: .word 0x00003002
|
|
_0233EB58: .word 0x00003806 + OV05_0233DBA0_OFFSET
|
|
_0233EB5C: .word 0x0000300F
|
|
_0233EB60: .word 0x00003003
|
|
_0233EB64: .word 0x00003004
|
|
_0233EB68: .word 0x00003010
|
|
_0233EB6C: .word 0x00003020
|
|
_0233EB70: .word 0x00003007
|
|
_0233EB74: .word ov05_0233FC44
|
|
_0233EB78: .word 0x000037F9 + OV05_0233DBA0_OFFSET
|
|
_0233EB7C: .word 0x00003021
|
|
_0233EB80: .word 0x00003022
|
|
_0233EB84: .word 0x000037FA + OV05_0233DBA0_OFFSET
|
|
_0233EB88: .word ov05_0233FC4C
|
|
_0233EB8C: .word 0x00441C33
|
|
_0233EB90: .word ov05_0233F9C4
|
|
_0233EB94: .word 0x000037FC + OV05_0233DBA0_OFFSET
|
|
_0233EB98: .word 0x00003028
|
|
_0233EB9C: .word ov05_0233FC5C
|
|
_0233EBA0: .word ov05_0233FA74
|
|
_0233EBA4: .word 0x000037FB + OV05_0233DBA0_OFFSET
|
|
_0233EBA8: .word 0x00003024
|
|
_0233EBAC: .word 0x00003025
|
|
_0233EBB0: .word 0x00003026
|
|
_0233EBB4:
|
|
bl ov01_02338EC4
|
|
cmp r0, #4
|
|
bne _0233ED00
|
|
mov r0, #0
|
|
bl ov01_02338E1C
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
mov r2, #0x148
|
|
ldr r3, [r1]
|
|
mov r4, r0
|
|
add r1, r3, #0x1000
|
|
ldr r1, [r1, #0x7d8]
|
|
add r3, r3, #0x350
|
|
mla r5, r1, r2, r3
|
|
mov r7, #0
|
|
bl ov01_0232E06C
|
|
cmp r0, #0
|
|
beq _0233EC04
|
|
mov r0, r4
|
|
mov r1, r5
|
|
bl ov01_0232E0A4
|
|
_0233EC04:
|
|
mov r8, #0
|
|
mov r6, r8
|
|
add r4, r5, #0x42
|
|
mov fp, #0x4c
|
|
_0233EC14:
|
|
mul sb, r6, fp
|
|
add sl, r5, sb
|
|
ldrh r0, [sl, #0x18]
|
|
tst r0, #1
|
|
movne r0, #1
|
|
moveq r0, #0
|
|
tst r0, #0xff
|
|
beq _0233EC8C
|
|
ldrsh r0, [sl, #0x20]
|
|
add r8, r8, #1
|
|
bl IsMonsterIllegalForMissions
|
|
cmp r0, #0
|
|
bne _0233EC88
|
|
ldrsh r0, [sl, #0x20]
|
|
bl sub_02054F18
|
|
cmp r0, #0
|
|
bne _0233EC88
|
|
add r0, r4, sb
|
|
bl IsMovesetValid
|
|
cmp r0, #0
|
|
beq _0233EC88
|
|
ldrb r0, [sl, #0x1c]
|
|
cmp r0, #1
|
|
blo _0233EC88
|
|
cmp r0, #0x64
|
|
bhi _0233EC88
|
|
ldrb r0, [sl, #0x3c]
|
|
cmp r0, #0xb
|
|
blo _0233EC8C
|
|
_0233EC88:
|
|
mov r7, #1
|
|
_0233EC8C:
|
|
add r6, r6, #1
|
|
cmp r6, #4
|
|
blt _0233EC14
|
|
cmp r8, #0
|
|
moveq r7, #1
|
|
cmp r7, #0
|
|
bne _0233ECE0
|
|
mov r0, r5
|
|
bl sub_02058FCC
|
|
ldr r1, _0233F860 ; =0x000037FD
|
|
mov r0, #0x1c
|
|
bl ov05_0233CB68
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r3, _0233F864 ; =0x00002A30
|
|
ldr r0, [r1]
|
|
ldr r2, _0233F868 ; =0x00003027
|
|
add r0, r0, #0x1000
|
|
str r3, [r0, #0x884]
|
|
ldr r0, [r1]
|
|
str r2, [r0]
|
|
b _0233F854
|
|
_0233ECE0:
|
|
mov r0, #2
|
|
mov r1, #6
|
|
bl ov01_023398B0
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB5C ; =0x0000300F
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233ED00:
|
|
cmp r0, #8
|
|
cmpne r0, #6
|
|
bne _0233F854
|
|
bl ov01_02338B08
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x9000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233ED24:
|
|
bl ov01_02339988
|
|
bl ov01_02338EC4
|
|
mov r4, r0
|
|
bl ov05_0233CB84
|
|
mov r5, r0
|
|
add r1, sp, #0xe
|
|
mov r0, #0
|
|
bl GetHeldButtons
|
|
bl IsTouchScreenNotOff
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
beq _0233ED6C
|
|
add r0, sp, #0x34
|
|
bl GetReleasedStylus
|
|
add r0, sp, #0x34
|
|
mov r1, #1
|
|
mov r2, #0
|
|
bl sub_02006C8C
|
|
_0233ED6C:
|
|
ldrh r1, [sp, #0xe]
|
|
cmp r1, #0
|
|
cmpeq r0, #0
|
|
ldrne r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldrne r1, _0233F864 ; =0x00002A30
|
|
ldrne r0, [r0]
|
|
addne r0, r0, #0x1000
|
|
strne r1, [r0, #0x884]
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1000
|
|
ldr r1, [r0, #0x884]
|
|
cmp r1, #0
|
|
subgt r1, r1, #1
|
|
strgt r1, [r0, #0x884]
|
|
cmp r4, #5
|
|
bne _0233EDCC
|
|
bl sub_02046D20
|
|
bl ov01_02338C34
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB5C ; =0x0000300F
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233EDCC:
|
|
cmp r5, #0xd
|
|
beq _0233EDEC
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1000
|
|
ldr r0, [r0, #0x884]
|
|
cmp r0, #0
|
|
bgt _0233F854
|
|
_0233EDEC:
|
|
mov r0, #1
|
|
mov r1, #0
|
|
bl ov01_02338C28
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB70 ; =0x00003007
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233EE0C:
|
|
bl ov01_02338EC4
|
|
mov r5, r0
|
|
bl ov05_0233CB34
|
|
mov r4, r0
|
|
bl ov05_02046BA0
|
|
mov r0, r0, lsl #0x18
|
|
mov r1, r0, asr #0x18
|
|
mov r0, #7
|
|
bl ov01_0233768C
|
|
cmp r5, #5
|
|
bne _0233EE58
|
|
bl sub_02046BB4
|
|
bl sub_02046D20
|
|
bl ov01_02338C34
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB5C ; =0x0000300F
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233EE58:
|
|
cmp r4, #0xb
|
|
bne _0233EE94
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mvn r3, #0
|
|
ldr r1, [r0]
|
|
mov r0, #1
|
|
add r2, r1, #0x1000
|
|
mov r1, #0
|
|
str r3, [r2, #0x7d8]
|
|
bl ov01_02338C28
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB70 ; =0x00003007
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233EE94:
|
|
sub r0, r4, #0xc
|
|
cmp r0, #1
|
|
bhi _0233F854
|
|
bl sub_02046D20
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB80 ; =0x00003022
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233EEB8:
|
|
bl ov01_02338EC4
|
|
cmp r0, #4
|
|
bne _0233EF9C
|
|
mov r0, #0
|
|
bl ov01_02338E1C
|
|
mov r5, r0
|
|
bl ov01_0232DEA8
|
|
mov r4, r0
|
|
mov r0, r5
|
|
bl ov01_0232DEE0
|
|
cmp r4, #0
|
|
bne _0233EF40
|
|
mov r4, #0
|
|
ldr r3, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, r4
|
|
mov r0, #0x4c
|
|
_0233EEF8:
|
|
ldr r2, [r3]
|
|
mla r2, r4, r0, r2
|
|
add r2, r2, #0x300
|
|
add r4, r4, #1
|
|
strh r1, [r2, #0x70]
|
|
cmp r4, #4
|
|
blt _0233EEF8
|
|
ldr r2, _0233EB00 ; =ov05_0233FCA8
|
|
mov r0, #1
|
|
ldr r2, [r2]
|
|
add r2, r2, #0x1000
|
|
str r0, [r2, #0x7d0]
|
|
bl ov01_02338C28
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB70 ; =0x00003007
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233EF40:
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r2, [r1]
|
|
strb r0, [r2, #0x2c8]
|
|
ldr r1, [r1]
|
|
mov r0, r5
|
|
add r1, r1, #0x350
|
|
bl ov01_0232DF18
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r2, [r0]
|
|
ldr r0, [r2, #0x2c4]
|
|
ldr r1, [r2, #0x2d0]
|
|
ldr r2, [r2, #0x2d4]
|
|
bl ov01_0232E038
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
mov r0, #0xc
|
|
ldr r1, [r1]
|
|
ldr r1, [r1, #0x2c4]
|
|
bl ov01_02338C4C
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233F86C ; =0x00003011
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233EF9C:
|
|
cmp r0, #8
|
|
cmpne r0, #6
|
|
bne _0233F854
|
|
bl ov01_02338B08
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x9000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233EFC0:
|
|
bl ov01_02338EC4
|
|
cmp r0, #4
|
|
bne _0233F118
|
|
mov r0, #0
|
|
bl ov01_02338E1C
|
|
mov r4, r0
|
|
mov r5, #0
|
|
bl ov01_0232E06C
|
|
cmp r0, #0
|
|
beq _0233F0AC
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
mov r0, r4
|
|
ldr r1, [r1]
|
|
mov r3, r5
|
|
add r8, r1, #0x350
|
|
add r2, r1, #0x1000
|
|
mov r1, r8
|
|
str r3, [r2, #0x7d0]
|
|
bl ov01_0232E0A4
|
|
mov r7, r5
|
|
mov r6, r7
|
|
add r4, r8, #0x42
|
|
mov fp, #0x4c
|
|
_0233F01C:
|
|
mul sb, r6, fp
|
|
add sl, r8, sb
|
|
ldrh r0, [sl, #0x18]
|
|
tst r0, #1
|
|
movne r0, #1
|
|
moveq r0, #0
|
|
tst r0, #0xff
|
|
beq _0233F094
|
|
ldrsh r0, [sl, #0x20]
|
|
add r7, r7, #1
|
|
bl IsMonsterIllegalForMissions
|
|
cmp r0, #0
|
|
bne _0233F090
|
|
ldrsh r0, [sl, #0x20]
|
|
bl sub_02054F18
|
|
cmp r0, #0
|
|
bne _0233F090
|
|
add r0, r4, sb
|
|
bl IsMovesetValid
|
|
cmp r0, #0
|
|
beq _0233F090
|
|
ldrb r0, [sl, #0x1c]
|
|
cmp r0, #1
|
|
blo _0233F090
|
|
cmp r0, #0x64
|
|
bhi _0233F090
|
|
ldrb r0, [sl, #0x3c]
|
|
cmp r0, #0xb
|
|
blo _0233F094
|
|
_0233F090:
|
|
mov r5, #1
|
|
_0233F094:
|
|
add r6, r6, #1
|
|
cmp r6, #4
|
|
blt _0233F01C
|
|
cmp r7, #0
|
|
moveq r5, #1
|
|
b _0233F0D0
|
|
_0233F0AC:
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, [r0]
|
|
ldrb r0, [r1, #0x2c8]
|
|
cmp r0, #0
|
|
add r0, r1, #0x1000
|
|
movne r1, #2
|
|
strne r1, [r0, #0x7d0]
|
|
moveq r1, #3
|
|
streq r1, [r0, #0x7d0]
|
|
_0233F0D0:
|
|
cmp r5, #0
|
|
bne _0233F0F8
|
|
mov r0, #1
|
|
mov r1, #0
|
|
bl ov01_02338C28
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB70 ; =0x00003007
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F0F8:
|
|
mov r0, #2
|
|
mov r1, #6
|
|
bl ov01_023398B0
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB5C ; =0x0000300F
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F118:
|
|
cmp r0, #8
|
|
cmpne r0, #6
|
|
bne _0233F854
|
|
bl ov01_02338B08
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x9000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F13C:
|
|
bl ov01_02339988
|
|
bl ov01_02338EC4
|
|
mov r4, r0
|
|
bl ov05_0233CB84
|
|
mov r5, r0
|
|
add r1, sp, #0xc
|
|
mov r0, #0
|
|
bl GetHeldButtons
|
|
bl IsTouchScreenNotOff
|
|
cmp r0, #0
|
|
moveq r0, #0
|
|
beq _0233F184
|
|
add r0, sp, #0x10
|
|
bl GetReleasedStylus
|
|
add r0, sp, #0x10
|
|
mov r1, #1
|
|
mov r2, #0
|
|
bl sub_02006C8C
|
|
_0233F184:
|
|
ldrh r1, [sp, #0xc]
|
|
cmp r1, #0
|
|
cmpeq r0, #0
|
|
ldrne r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldrne r1, _0233F864 ; =0x00002A30
|
|
ldrne r0, [r0]
|
|
addne r0, r0, #0x1000
|
|
strne r1, [r0, #0x884]
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1000
|
|
ldr r1, [r0, #0x884]
|
|
cmp r1, #0
|
|
subgt r1, r1, #1
|
|
strgt r1, [r0, #0x884]
|
|
cmp r4, #5
|
|
bne _0233F1E4
|
|
bl sub_02046D20
|
|
bl ov01_02338C34
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB5C ; =0x0000300F
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F1E4:
|
|
cmp r5, #0xd
|
|
beq _0233F204
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1000
|
|
ldr r0, [r0, #0x884]
|
|
cmp r0, #0
|
|
bgt _0233F854
|
|
_0233F204:
|
|
mov r0, #1
|
|
mov r1, #0
|
|
bl ov01_02338C28
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB70 ; =0x00003007
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F224:
|
|
bl ov01_02338EC4
|
|
cmp r0, #0
|
|
beq _0233F854
|
|
bl ov01_02338B08
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x9000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F248:
|
|
bl ov01_02338EC4
|
|
cmp r0, #6
|
|
bne _0233F3EC
|
|
bl ov01_02338B08
|
|
bl ov05_0233CAA8
|
|
cmp r0, #1
|
|
bne _0233F3B8
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r2, [r0]
|
|
ldr r0, [r2, #0x2cc]
|
|
cmp r0, #0
|
|
add r0, r2, #0x1000
|
|
bge _0233F35C
|
|
ldr r0, [r0, #0x7d0]
|
|
cmp r0, #3
|
|
addls pc, pc, r0, lsl #2
|
|
b _0233F854
|
|
_0233F28C: ; jump table
|
|
b _0233F29C ; case 0
|
|
b _0233F2F4 ; case 1
|
|
b _0233F328 ; case 2
|
|
b _0233F2F4 ; case 3
|
|
_0233F29C:
|
|
add r0, r2, #0x350
|
|
bl sub_02058FCC
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233F870 ; =0x000037FF
|
|
ldr r0, [r0]
|
|
mov r3, #0
|
|
add r2, r0, #0x1000
|
|
mov r0, #0x1c
|
|
str r3, [r2, #0x7d8]
|
|
bl ov05_0233CB68
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB9C ; =ov05_0233FC5C
|
|
ldr r0, [r0]
|
|
ldr r2, _0233EBA0 ; =ov05_0233FA74
|
|
add r0, r0, #0x78
|
|
add r0, r0, #0x1800
|
|
bl sub_0204707C
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x4000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F2F4:
|
|
mov r0, #9
|
|
bl ov01_0233767C
|
|
str r0, [sp]
|
|
mov r0, #0
|
|
ldr r2, _0233F874 ; =ov05_0233FB4C
|
|
ldr r3, _0233F878 ; =0x000037F7
|
|
mov r1, r0
|
|
bl ov05_0233CAC8
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233F87C ; =0x00004001
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F328:
|
|
mov r0, #9
|
|
bl ov01_0233767C
|
|
str r0, [sp]
|
|
mov r0, #0
|
|
ldr r2, _0233F874 ; =ov05_0233FB4C
|
|
ldr r3, _0233F880 ; =0x000037F8
|
|
mov r1, r0
|
|
bl ov05_0233CAC8
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233F87C ; =0x00004001
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F35C:
|
|
ldr r1, [r0, #0x7d4]
|
|
cmp r1, #0
|
|
bne _0233F39C
|
|
mov r0, #0xa
|
|
bl ov01_0233767C
|
|
str r0, [sp]
|
|
mov r0, #0
|
|
ldr r2, _0233F874 ; =ov05_0233FB4C
|
|
#ifdef EUROPE
|
|
mov r1, r0
|
|
mov r3, #0x3800
|
|
#else
|
|
ldr r3, _0233F884 ; =0x000037FE
|
|
mov r1, r0
|
|
#endif
|
|
bl ov05_0233CAC8
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB14 ; =0x00004002
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F39C:
|
|
ldr r0, [r0, #0x7d8]
|
|
cmp r0, #0
|
|
movlt r0, #0x9000
|
|
strlt r0, [r2]
|
|
movge r0, #0x8000
|
|
strge r0, [r2]
|
|
b _0233F854
|
|
_0233F3B8:
|
|
bl ov05_0233CAA8
|
|
cmp r0, #0
|
|
bne _0233F854
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, [r0]
|
|
ldr r0, [r1, #0x2d0]
|
|
ldr r1, [r1, #0x2d4]
|
|
bl sub_020590DC
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x8000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F3EC:
|
|
cmp r0, #8
|
|
bne _0233F854
|
|
bl ov01_02338B08
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x9000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F40C:
|
|
bl ov05_0233CB84
|
|
cmp r0, #0xd
|
|
bne _0233F854
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x78
|
|
add r0, r0, #0x1800
|
|
bl sub_02047150
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x8000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F440:
|
|
bl ov05_0233CB34
|
|
mov r4, r0
|
|
bl ov05_02046BA0
|
|
mov r0, r0, lsl #0x18
|
|
mov r1, r0, asr #0x18
|
|
mov r0, #9
|
|
bl ov01_0233768C
|
|
cmp r4, #0xb
|
|
bne _0233F488
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r3, #0x9000
|
|
ldr r2, [r0]
|
|
mov r1, #2
|
|
str r3, [r2]
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1000
|
|
str r1, [r0, #0x888]
|
|
b _0233F854
|
|
_0233F488:
|
|
sub r0, r4, #0xc
|
|
cmp r0, #1
|
|
ldrls r0, _0233EB00 ; =ov05_0233FCA8
|
|
movls r1, #0x9000
|
|
ldrls r0, [r0]
|
|
strls r1, [r0]
|
|
b _0233F854
|
|
_0233F4A4:
|
|
bl ov05_0233CB34
|
|
mov r4, r0
|
|
bl ov05_02046BA0
|
|
mov r0, r0, lsl #0x18
|
|
mov r1, r0, asr #0x18
|
|
mov r0, #0xa
|
|
bl ov01_0233768C
|
|
cmp r4, #0xb
|
|
bne _0233F4EC
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r3, #0x9000
|
|
ldr r2, [r0]
|
|
mov r1, #1
|
|
str r3, [r2]
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1000
|
|
str r1, [r0, #0x888]
|
|
b _0233F854
|
|
_0233F4EC:
|
|
sub r0, r4, #0xc
|
|
cmp r0, #1
|
|
ldrls r0, _0233EB00 ; =ov05_0233FCA8
|
|
movls r1, #0x9000
|
|
ldrls r0, [r0]
|
|
strls r1, [r0]
|
|
b _0233F854
|
|
_0233F508:
|
|
mov r0, #0
|
|
bl ov00_022BD264
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
mov r3, #0
|
|
ldr r0, [r1]
|
|
ldr r2, _0233F888 ; =0x00008002
|
|
add r0, r0, #0x1000
|
|
str r3, [r0, #0x87c]
|
|
ldr r0, [r1]
|
|
str r2, [r0]
|
|
b _0233F854
|
|
_0233F534:
|
|
add r0, r4, #0x1000
|
|
ldr r0, [r0, #0x87c]
|
|
cmp r0, #4
|
|
addls pc, pc, r0, lsl #2
|
|
b _0233F62C
|
|
_0233F548: ; jump table
|
|
b _0233F55C ; case 0
|
|
b _0233F578 ; case 1
|
|
b _0233F5A8 ; case 2
|
|
b _0233F608 ; case 3
|
|
b _0233F61C ; case 4
|
|
_0233F55C:
|
|
bl ov00_022BD780
|
|
ldr r1, _0233F88C ; =0x0000023B
|
|
mov r0, #0
|
|
bl ov05_0233CB68
|
|
add r0, r4, #0x1000
|
|
mov r1, #1
|
|
str r1, [r0, #0x87c]
|
|
_0233F578:
|
|
bl ov05_0233CB84
|
|
cmp r0, #0xd
|
|
bne _0233F62C
|
|
mov r0, #0xe0
|
|
mov r1, #0x88
|
|
mov r2, #1
|
|
bl sub_02029F88
|
|
add r0, r4, #0x1000
|
|
mov r1, #2
|
|
str r1, [r0, #0x87c]
|
|
bl sub_02003B94
|
|
b _0233F62C
|
|
_0233F5A8:
|
|
mov r0, #3
|
|
bl NoteSaveBase
|
|
mov r5, r0
|
|
bl sub_02003BC8
|
|
bl sub_02029FBC
|
|
cmp r5, #0
|
|
bne _0233F5E0
|
|
#ifdef JAPAN
|
|
ldr r1, _02341114 ; =0x000004CD
|
|
mov r0, #0x1c
|
|
#else
|
|
mov r0, #0x1c
|
|
mov r1, #0x23c
|
|
#endif
|
|
bl ov05_0233CB68
|
|
add r0, r4, #0x1000
|
|
mov r1, #3
|
|
str r1, [r0, #0x87c]
|
|
b _0233F62C
|
|
_0233F5E0:
|
|
cmp r5, #1
|
|
moveq r0, #3
|
|
beq _0233F630
|
|
ldr r1, _0233F890 ; =0x00000239
|
|
mov r0, #0x1c
|
|
bl ov05_0233CB68
|
|
add r0, r4, #0x1000
|
|
mov r1, #4
|
|
str r1, [r0, #0x87c]
|
|
b _0233F62C
|
|
_0233F608:
|
|
bl ov05_0233CB84
|
|
cmp r0, #0xd
|
|
bne _0233F62C
|
|
mov r0, #1
|
|
b _0233F630
|
|
_0233F61C:
|
|
bl ov05_0233CB84
|
|
cmp r0, #0xd
|
|
moveq r0, #2
|
|
beq _0233F630
|
|
_0233F62C:
|
|
mov r0, #0
|
|
_0233F630:
|
|
cmp r0, #1
|
|
bne _0233F730
|
|
bl ov05_0233CAA8
|
|
cmp r0, #1
|
|
bne _0233F664
|
|
#if defined(EUROPE)
|
|
ldr r1, _02340010 ; =0x00003802
|
|
mov r0, #0x1c
|
|
#elif defined(JAPAN)
|
|
mov r0, #0x1c
|
|
rsb r1, r0, #0x3980
|
|
#else
|
|
mov r0, #0x1c
|
|
mov r1, #0x3800
|
|
#endif
|
|
bl ov05_0233CB68
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0xf000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F664:
|
|
ldr r1, _0233EB00 ; =ov05_0233FCA8
|
|
add r0, sp, #0x158
|
|
ldr r1, [r1]
|
|
ldr r5, [r1, #0x2d0]
|
|
ldr r4, [r1, #0x2d4]
|
|
bl InitPreprocessorArgs
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
ldrb r0, [r0, #0x2c8]
|
|
cmp r0, #0
|
|
ldrne r0, _0233F894 ; =0x00003803
|
|
ldreq r0, _0233F898 ; =0x00003804
|
|
mov r1, r0, lsl #0x10
|
|
add r0, sp, #0x58
|
|
mov r1, r1, lsr #0x10
|
|
bl GetStringFromFileVeneer
|
|
ldr r2, _0233EB2C ; =0x00002710
|
|
mov r0, r5
|
|
mov r1, r4
|
|
mov r3, #0
|
|
bl _ull_mod
|
|
str r0, [sp, #0x184]
|
|
ldr r2, _0233EB2C ; =0x00002710
|
|
mov r0, r5
|
|
mov r1, r4
|
|
mov r3, #0
|
|
bl _ll_udiv
|
|
ldr r2, _0233EB2C ; =0x00002710
|
|
mov r3, #0
|
|
bl _ull_mod
|
|
str r0, [sp, #0x180]
|
|
ldr r2, _0233EB30 ; =0x05F5E100
|
|
mov r1, r4
|
|
mov r0, r5
|
|
mov r3, #0
|
|
bl _ll_udiv
|
|
ldr r2, _0233EB2C ; =0x00002710
|
|
mov r3, #0
|
|
bl _ull_mod
|
|
add r1, sp, #0x58
|
|
str r1, [sp, #0x190]
|
|
str r0, [sp, #0x17c]
|
|
ldr r1, _0233F89C ; =0x00003807
|
|
mov r0, #0x1c
|
|
add r2, sp, #0x158
|
|
bl ov05_02046BE8
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0xf000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F730:
|
|
cmp r0, #3
|
|
moveq r0, #3
|
|
beq _0233F858
|
|
cmp r0, #2
|
|
bne _0233F854
|
|
mov r0, #1
|
|
b _0233F858
|
|
_0233F74C:
|
|
bl ov05_0233CB84
|
|
cmp r0, #0xd
|
|
bne _0233F854
|
|
mov r0, #2
|
|
b _0233F858
|
|
_0233F760:
|
|
bl ov00_022BD274
|
|
cmp r0, #0
|
|
ldrne r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldrne r1, _0233F8A0 ; =0x00009010
|
|
ldrne r0, [r0]
|
|
strne r1, [r0]
|
|
bne _0233F854
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1000
|
|
ldr r0, [r0, #0x888]
|
|
cmp r0, #1
|
|
bne _0233F7AC
|
|
bl ov05_0233F8A8
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x1000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F7AC:
|
|
cmp r0, #2
|
|
bne _0233F7CC
|
|
bl sub_02046D20
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233F8A4 ; =0x00001001
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F7CC:
|
|
mov r0, #1
|
|
b _0233F858
|
|
_0233F7D4:
|
|
bl ov01_0233769C
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233EB18 ; =0x00009011
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
_0233F7E8:
|
|
bl ov01_02337718
|
|
cmp r0, #1
|
|
cmpne r0, #3
|
|
bne _0233F854
|
|
bl ov01_023376DC
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1000
|
|
ldr r0, [r0, #0x888]
|
|
cmp r0, #1
|
|
bne _0233F82C
|
|
bl ov05_0233F8A8
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
mov r1, #0x1000
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F82C:
|
|
cmp r0, #2
|
|
bne _0233F84C
|
|
bl sub_02046D20
|
|
ldr r0, _0233EB00 ; =ov05_0233FCA8
|
|
ldr r1, _0233F8A4 ; =0x00001001
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0233F854
|
|
_0233F84C:
|
|
mov r0, #1
|
|
b _0233F858
|
|
_0233F854:
|
|
mov r0, #0
|
|
_0233F858:
|
|
add sp, sp, #0x348
|
|
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
|
.align 2, 0
|
|
#if defined(EUROPE)
|
|
#define OV05_0233DBDC_OFFSET 2
|
|
#elif defined(JAPAN)
|
|
#define OV05_0233DBDC_OFFSET 0x164
|
|
#else
|
|
#define OV05_0233DBDC_OFFSET 0
|
|
#endif
|
|
_0233F860: .word 0x000037FD + OV05_0233DBDC_OFFSET
|
|
_0233F864: .word 0x00002A30
|
|
_0233F868: .word 0x00003027
|
|
_0233F86C: .word 0x00003011
|
|
_0233F870: .word 0x000037FF + OV05_0233DBDC_OFFSET
|
|
_0233F874: .word ov05_0233FB4C
|
|
_0233F878: .word 0x000037F7 + OV05_0233DBDC_OFFSET
|
|
_0233F87C: .word 0x00004001
|
|
_0233F880: .word 0x000037F8 + OV05_0233DBDC_OFFSET
|
|
#ifndef EUROPE
|
|
_0233F884: .word 0x000037FE + OV05_0233DBDC_OFFSET
|
|
#endif
|
|
_0233F888: .word 0x00008002
|
|
#ifdef JAPAN
|
|
_0233F88C: .word 0x000004CC
|
|
_02341114: .word 0x000004CD
|
|
_0233F890: .word 0x000004CA
|
|
#else
|
|
_0233F88C: .word 0x0000023B
|
|
_0233F890: .word 0x00000239
|
|
#endif
|
|
#ifdef EUROPE
|
|
_02340010: .word 0x00003802
|
|
#endif
|
|
_0233F894: .word 0x00003803 + OV05_0233DBDC_OFFSET
|
|
_0233F898: .word 0x00003804 + OV05_0233DBDC_OFFSET
|
|
_0233F89C: .word 0x00003807 + OV05_0233DBDC_OFFSET
|
|
_0233F8A0: .word 0x00009010
|
|
_0233F8A4: .word 0x00001001
|
|
arm_func_end ov05_0233DBDC
|
|
|
|
arm_func_start ov05_0233F8A8
|
|
ov05_0233F8A8: ; 0x0233F8A8
|
|
stmdb sp!, {r3, lr}
|
|
sub sp, sp, #8
|
|
bl ov05_0233F93C
|
|
bl ov00_022BD338
|
|
cmp r0, #0
|
|
beq _0233F8CC
|
|
bl ov00_022BCCF4
|
|
cmp r0, #0
|
|
bne _0233F8DC
|
|
_0233F8CC:
|
|
ldr r0, _0233F928 ; =ov05_0233FCA8
|
|
mov r1, #3
|
|
ldr r0, [r0]
|
|
strb r1, [r0, #0x9c]
|
|
_0233F8DC:
|
|
mov r0, #4
|
|
bl ov01_0233767C
|
|
ldr r2, _0233F92C ; =ov05_0233FC18
|
|
ldr r1, _0233F928 ; =ov05_0233FCA8
|
|
ldr r2, [r2, r0, lsl #3]
|
|
ldr r0, [r1]
|
|
ldr r3, _0233F930 ; =ov05_0233FC14
|
|
str r2, [r0, #4]
|
|
mov r0, #0
|
|
ldr r2, _0233F934 ; =0x000037F0
|
|
str r3, [sp]
|
|
str r2, [sp, #4]
|
|
ldr r3, [r1]
|
|
ldr r2, _0233F938 ; =0x00000233
|
|
mov r1, r0
|
|
add r3, r3, #4
|
|
bl ov05_0233CADC
|
|
add sp, sp, #8
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0233F928: .word ov05_0233FCA8
|
|
_0233F92C: .word ov05_0233FC18
|
|
_0233F930: .word ov05_0233FC14
|
|
#if defined(EUROPE)
|
|
_0233F934: .word 0x000037F2
|
|
#elif defined(JAPAN)
|
|
_0233F934: .word 0x00003954
|
|
#else
|
|
_0233F934: .word 0x000037F0
|
|
#endif
|
|
_0233F938: .word 0x00000233
|
|
arm_func_end ov05_0233F8A8
|
|
|
|
arm_func_start ov05_0233F93C
|
|
ov05_0233F93C: ; 0x0233F93C
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0233F97C ; =ov05_0233FCA8
|
|
mov r1, #0x98
|
|
ldr r0, [r0]
|
|
add r0, r0, #4
|
|
bl MemZero
|
|
ldr r0, _0233F97C ; =ov05_0233FCA8
|
|
mov r1, #6
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x9c
|
|
bl MemZero
|
|
ldr r0, _0233F97C ; =ov05_0233FCA8
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x9c
|
|
str r0, [r1, #0x64]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0233F97C: .word ov05_0233FCA8
|
|
arm_func_end ov05_0233F93C
|
|
|
|
arm_func_start ov05_0233F980
|
|
ov05_0233F980: ; 0x0233F980
|
|
stmdb sp!, {r4, lr}
|
|
ldr r0, _0233F9C0 ; =ov05_0233FCA8
|
|
mvn r1, #1
|
|
ldr r4, [r0]
|
|
add r0, r4, #0x1700
|
|
ldrsb r0, [r0, #0xdc]
|
|
cmp r0, r1
|
|
ldmeqia sp!, {r4, pc}
|
|
bl sub_0202836C
|
|
add r0, r4, #0x1700
|
|
ldrsb r0, [r0, #0xdc]
|
|
bl CloseAdvancedMenu
|
|
add r0, r4, #0x1000
|
|
mvn r1, #1
|
|
strb r1, [r0, #0x7dc]
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
_0233F9C0: .word ov05_0233FCA8
|
|
arm_func_end ov05_0233F980
|
|
|
|
arm_func_start ov05_0233F9C4
|
|
ov05_0233F9C4: ; 0x0233F9C4
|
|
stmdb sp!, {r4, r5, r6, r7, lr}
|
|
sub sp, sp, #0x94
|
|
ldr r2, _0233FA68 ; =ov05_0233FCA8
|
|
mov r6, r0
|
|
add r0, sp, #0x44
|
|
mov r7, r1
|
|
ldr r4, [r2]
|
|
bl InitPreprocessorArgs
|
|
mov r0, #0x148
|
|
mul r5, r7, r0
|
|
bl GetLanguageType
|
|
add r1, r4, r5
|
|
add r1, r1, #0x300
|
|
ldrsb r1, [r1, #0x50]
|
|
cmp r1, r0
|
|
bne _0233FA20
|
|
add r0, r4, #0x52
|
|
add r1, r0, #0x300
|
|
add r0, sp, #4
|
|
add r1, r1, r5
|
|
mov r2, #0x14
|
|
bl StrncpySimpleNoPadSafe
|
|
b _0233FA2C
|
|
_0233FA20:
|
|
ldr r1, _0233FA6C ; =0x00000235
|
|
add r0, sp, #4
|
|
bl GetStringFromFileVeneer
|
|
_0233FA2C:
|
|
add r1, sp, #4
|
|
add r0, r4, r5
|
|
str r1, [sp, #0x7c]
|
|
ldrb r0, [r0, #0x351]
|
|
ldr r2, _0233FA70 ; =ov05_0233FC6C
|
|
add r4, sp, #0x44
|
|
str r0, [sp, #0x54]
|
|
mov r0, r6
|
|
mov r1, #0x100
|
|
mov r3, #0
|
|
str r4, [sp]
|
|
bl PreprocessString
|
|
mov r0, r6
|
|
add sp, sp, #0x94
|
|
ldmia sp!, {r4, r5, r6, r7, pc}
|
|
.align 2, 0
|
|
_0233FA68: .word ov05_0233FCA8
|
|
#ifdef JAPAN
|
|
_0233FA6C: .word 0x000004C6
|
|
#else
|
|
_0233FA6C: .word 0x00000235
|
|
#endif
|
|
_0233FA70: .word ov05_0233FC6C
|
|
arm_func_end ov05_0233F9C4
|
|
|
|
arm_func_start ov05_0233FA74
|
|
ov05_0233FA74: ; 0x0233FA74
|
|
stmdb sp!, {r3, r4, r5, r6, lr}
|
|
sub sp, sp, #0x194
|
|
ldr r1, _0233FB40 ; =ov05_0233FCA8
|
|
mov r6, r0
|
|
ldr r4, [r1]
|
|
add r0, sp, #0x144
|
|
bl InitPreprocessorArgs
|
|
add r0, r4, #0x1000
|
|
ldr r1, [r0, #0x7d8]
|
|
mov r0, #0x148
|
|
mul r5, r1, r0
|
|
bl GetLanguageType
|
|
add r1, r4, r5
|
|
add r1, r1, #0x300
|
|
ldrsb r1, [r1, #0x50]
|
|
cmp r1, r0
|
|
bne _0233FAD4
|
|
add r0, r4, #0x52
|
|
add r1, r0, #0x300
|
|
add r0, sp, #4
|
|
add r1, r1, r5
|
|
mov r2, #0x14
|
|
bl StrncpySimpleNoPadSafe
|
|
b _0233FAE0
|
|
_0233FAD4:
|
|
ldr r1, _0233FB44 ; =0x00000235
|
|
add r0, sp, #4
|
|
bl GetStringFromFileVeneer
|
|
_0233FAE0:
|
|
add r1, sp, #4
|
|
add r0, r4, #0x1000
|
|
str r1, [sp, #0x17c]
|
|
ldr r1, [r0, #0x7d8]
|
|
mov r0, #0x148
|
|
mla r0, r1, r0, r4
|
|
ldrb r1, [r0, #0x351]
|
|
ldr r2, _0233FB48 ; =ov05_0233FC6C
|
|
add r4, sp, #0x144
|
|
str r1, [sp, #0x154]
|
|
add r0, sp, #0x44
|
|
mov r1, #0x100
|
|
mov r3, #0
|
|
str r4, [sp]
|
|
bl PreprocessString
|
|
add r3, sp, #0x44
|
|
mov r0, r6
|
|
mov r1, #4
|
|
mov r2, #2
|
|
bl DrawTextInWindow
|
|
mov r0, r6
|
|
bl UpdateWindow
|
|
add sp, sp, #0x194
|
|
ldmia sp!, {r3, r4, r5, r6, pc}
|
|
.align 2, 0
|
|
_0233FB40: .word ov05_0233FCA8
|
|
#ifdef JAPAN
|
|
_0233FB44: .word 0x000004C6
|
|
#else
|
|
_0233FB44: .word 0x00000235
|
|
#endif
|
|
_0233FB48: .word ov05_0233FC6C
|
|
arm_func_end ov05_0233FA74
|
|
; 0x0233FB4C
|
|
|
|
.rodata
|
|
.global ov05_0233FB4C
|
|
ov05_0233FB4C:
|
|
#if defined(EUROPE)
|
|
#define OV05_DATA_OFFSET 2
|
|
#elif defined(JAPAN)
|
|
#define OV05_DATA_OFFSET 0x164
|
|
#else
|
|
#define OV05_DATA_OFFSET 0
|
|
#endif
|
|
.word 0x37DB + OV05_DATA_OFFSET
|
|
.byte 0x0B, 0x00, 0x00, 0x00
|
|
.word 0x37DD + OV05_DATA_OFFSET
|
|
.byte 0x0D, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.global ov05_0233FB64
|
|
ov05_0233FB64:
|
|
.word 0x37DB + OV05_DATA_OFFSET
|
|
.global ov05_0233FB68
|
|
ov05_0233FB68:
|
|
.byte 0x0B, 0x00, 0x00, 0x00
|
|
.word 0x37DC + OV05_DATA_OFFSET
|
|
.byte 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.global ov05_0233FB7C
|
|
ov05_0233FB7C:
|
|
.word 0x37DB + OV05_DATA_OFFSET
|
|
.global ov05_0233FB80
|
|
ov05_0233FB80:
|
|
.byte 0x0B, 0x00, 0x00, 0x00
|
|
.word 0x37DC + OV05_DATA_OFFSET
|
|
.byte 0x0C, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.global ov05_0233FB94
|
|
ov05_0233FB94:
|
|
.word 0x37E7 + OV05_DATA_OFFSET
|
|
.byte 0x03, 0x00, 0x00, 0x00
|
|
.word 0x37E8 + OV05_DATA_OFFSET
|
|
.byte 0x04, 0x00, 0x00, 0x00
|
|
.word 0x37E0 + OV05_DATA_OFFSET
|
|
.byte 0x0D, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.global ov05_0233FBB4
|
|
ov05_0233FBB4:
|
|
.word 0x37EA + OV05_DATA_OFFSET
|
|
.byte 0x03, 0x00, 0x00, 0x00
|
|
.word 0x37EB + OV05_DATA_OFFSET
|
|
.byte 0x04, 0x00, 0x00, 0x00
|
|
.word 0x37E0 + OV05_DATA_OFFSET
|
|
.byte 0x0D, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.global ov05_0233FBD4
|
|
ov05_0233FBD4:
|
|
.word 0x37DE + OV05_DATA_OFFSET
|
|
.global ov05_0233FBD8
|
|
ov05_0233FBD8:
|
|
.byte 0x01, 0x00, 0x00, 0x00
|
|
.word 0x37DF + OV05_DATA_OFFSET
|
|
.byte 0x02, 0x00, 0x00, 0x00
|
|
.word 0x37E0 + OV05_DATA_OFFSET
|
|
.byte 0x0D, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.global ov05_0233FBF4
|
|
ov05_0233FBF4:
|
|
.word 0x3803 + OV05_DATA_OFFSET
|
|
.global ov05_0233FBF8
|
|
ov05_0233FBF8:
|
|
.byte 0x06, 0x00, 0x00, 0x00
|
|
.word 0x3804 + OV05_DATA_OFFSET
|
|
.byte 0x0A, 0x00, 0x00, 0x00
|
|
.word 0x3805 + OV05_DATA_OFFSET
|
|
.byte 0x0D, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.global ov05_0233FC14
|
|
ov05_0233FC14:
|
|
.word 0x37F1 + OV05_DATA_OFFSET
|
|
.global ov05_0233FC18
|
|
ov05_0233FC18:
|
|
.byte 0x06, 0x00, 0x00, 0x00
|
|
.word 0x37F2 + OV05_DATA_OFFSET
|
|
.byte 0x07, 0x00, 0x00, 0x00
|
|
.word 0x37F3 + OV05_DATA_OFFSET
|
|
.byte 0x08, 0x00, 0x00, 0x00
|
|
.word 0x37F4 + OV05_DATA_OFFSET
|
|
.byte 0x09, 0x00, 0x00, 0x00
|
|
.word 0x37F5 + OV05_DATA_OFFSET
|
|
.byte 0x0D, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF
|
|
.global ov05_0233FC44
|
|
ov05_0233FC44:
|
|
.hword 0x37F1 + OV05_DATA_OFFSET, 0x37F2 + OV05_DATA_OFFSET, 0x37F3 + OV05_DATA_OFFSET, 0x37F3 + OV05_DATA_OFFSET
|
|
.global ov05_0233FC4C
|
|
ov05_0233FC4C:
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x04, 0x02, 0x18, 0x11, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.global ov05_0233FC5C
|
|
ov05_0233FC5C:
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, 0x18, 0x02, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.global ov05_0233FC6C
|
|
ov05_0233FC6C:
|
|
.byte 0x5B, 0x43, 0x53, 0x3A, 0x58, 0x5D, 0x5B, 0x73, 0x74, 0x72, 0x69, 0x6E, 0x67, 0x3A, 0x30, 0x5D
|
|
.byte 0x5B, 0x43, 0x52, 0x5D, 0x5B, 0x43, 0x4C, 0x55, 0x4D, 0x5F, 0x53, 0x45, 0x54, 0x3A, 0x38, 0x38
|
|
.byte 0x5D, 0x5B, 0x72, 0x61, 0x6E, 0x6B, 0x3A, 0x30, 0x5D, 0x00, 0x00, 0x00
|
|
|
|
.data
|
|
.global ov05_0233FCA0
|
|
ov05_0233FCA0:
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global ov05_0233FCA4
|
|
ov05_0233FCA4:
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global ov05_0233FCA8
|
|
ov05_0233FCA8:
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
|
|
.bss
|
|
.global ov05_0233FCC0
|
|
ov05_0233FCC0:
|
|
.space 0xC
|
|
.global ov05_0233FCCC
|
|
ov05_0233FCCC:
|
|
.space 0x14
|