mirror of
https://github.com/pret/pmd-sky.git
synced 2026-03-21 17:25:15 -05:00
1806 lines
41 KiB
ArmAsm
1806 lines
41 KiB
ArmAsm
.include "asm/macros.inc"
|
|
.include "overlay_17_0238A754.inc"
|
|
|
|
.text
|
|
|
|
arm_func_start ov17_0238A754
|
|
ov17_0238A754: ; 0x0238A754
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, lr}
|
|
sub sp, sp, #0x124
|
|
bl sub_0203C9E4
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r4, [r0]
|
|
ldr r1, [r4, #0x6c]
|
|
cmp r1, #3
|
|
addls pc, pc, r1, lsl #2
|
|
b _0238AF90
|
|
_0238A778: ; jump table
|
|
b _0238A788 ; case 0
|
|
b _0238AF18 ; case 1
|
|
b _0238AF4C ; case 2
|
|
b _0238AF90 ; case 3
|
|
_0238A788:
|
|
ldr r7, _0238AFA0 ; =OVERLAY17_FUNCTION_POINTER_TABLE
|
|
add r6, sp, #4
|
|
mov r5, #0xa
|
|
_0238A794:
|
|
ldmia r7!, {r0, r1, r2, r3}
|
|
stmia r6!, {r0, r1, r2, r3}
|
|
subs r5, r5, #1
|
|
bne _0238A794
|
|
ldmia r7, {r0, r1}
|
|
stmia r6, {r0, r1}
|
|
ldr r0, [r4, #0x74]
|
|
cmp r0, #3
|
|
addls pc, pc, r0, lsl #2
|
|
b _0238AF10
|
|
_0238A7BC: ; jump table
|
|
b _0238A7CC ; case 0
|
|
b _0238A840 ; case 1
|
|
b _0238AEC8 ; case 2
|
|
b _0238A7CC ; case 3
|
|
_0238A7CC:
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0
|
|
str r1, [r4, #0x74]
|
|
ldr r1, [r0]
|
|
add r0, sp, #4
|
|
ldr r1, [r1, #0x70]
|
|
ldr r0, [r0, r1, lsl #2]
|
|
blx r0
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r3, [r0]
|
|
ldr r1, [r3, #0x70]
|
|
ldr r2, [r3, #0x78]
|
|
cmp r1, r2
|
|
beq _0238AF10
|
|
ldr r1, [r3, #0x74]
|
|
cmp r1, #3
|
|
bne _0238A828
|
|
str r2, [r3, #0x70]
|
|
ldr r1, [r0]
|
|
add r0, sp, #4
|
|
ldr r1, [r1, #0x70]
|
|
ldr r0, [r0, r1, lsl #2]
|
|
blx r0
|
|
_0238A828:
|
|
bl ov17_0238A278
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x74]
|
|
b _0238AF10
|
|
_0238A840:
|
|
bl ov17_0238A364
|
|
cmp r0, #0
|
|
beq _0238AF10
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r2, [r0]
|
|
ldrh r0, [r2, #0x7e]
|
|
tst r0, #1
|
|
beq _0238AA30
|
|
ldrsb r1, [r2]
|
|
mvn r0, #1
|
|
ldrh r5, [r2, #0x7c]
|
|
cmp r1, r0
|
|
ldr r4, _0238AFA4 ; =0x00003008
|
|
bne _0238A898
|
|
ldr r0, _0238AFA8 ; =ASSEMBLY_WINDOW_PARAMS_4
|
|
bl CreateDialogueBox
|
|
ldr r1, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r2, #0
|
|
ldr r3, [r1]
|
|
strb r0, [r3]
|
|
ldr r0, [r1]
|
|
strh r2, [r0, #0x7c]
|
|
_0238A898:
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0]
|
|
bl ShowDialogueBox
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r0]
|
|
ldr r0, [r1, #0x70]
|
|
cmp r0, #0x29
|
|
addls pc, pc, r0, lsl #2
|
|
b _0238A9F8
|
|
_0238A8C0: ; jump table
|
|
b _0238A968 ; case 0
|
|
b _0238A9F8 ; case 1
|
|
b _0238A9F8 ; case 2
|
|
b _0238A9F8 ; case 3
|
|
b _0238A9AC ; case 4
|
|
b _0238A9AC ; case 5
|
|
b _0238A97C ; case 6
|
|
b _0238A97C ; case 7
|
|
b _0238A988 ; case 8
|
|
b _0238A994 ; case 9
|
|
b _0238A994 ; case 10
|
|
b _0238A9A0 ; case 11
|
|
b _0238A9F8 ; case 12
|
|
b _0238A9F8 ; case 13
|
|
b _0238A9F8 ; case 14
|
|
b _0238A9F8 ; case 15
|
|
b _0238A9B8 ; case 16
|
|
b _0238A9B8 ; case 17
|
|
b _0238A9B8 ; case 18
|
|
b _0238A9C4 ; case 19
|
|
b _0238A9C4 ; case 20
|
|
b _0238A9D0 ; case 21
|
|
b _0238A9D0 ; case 22
|
|
b _0238A9D0 ; case 23
|
|
b _0238A9DC ; case 24
|
|
b _0238A9DC ; case 25
|
|
b _0238A9DC ; case 26
|
|
b _0238A9E4 ; case 27
|
|
b _0238A9E4 ; case 28
|
|
b _0238A9E4 ; case 29
|
|
b _0238A9F8 ; case 30
|
|
b _0238A9F8 ; case 31
|
|
b _0238A9F8 ; case 32
|
|
b _0238A9F8 ; case 33
|
|
b _0238A9F8 ; case 34
|
|
b _0238A9F8 ; case 35
|
|
b _0238A9F8 ; case 36
|
|
b _0238A9F8 ; case 37
|
|
b _0238A9F8 ; case 38
|
|
b _0238A9F8 ; case 39
|
|
b _0238A9F0 ; case 40
|
|
b _0238A9F0 ; case 41
|
|
_0238A968:
|
|
ldrb r0, [r1, #9]
|
|
cmp r0, #0
|
|
#ifdef JAPAN
|
|
movne r5, #0x3d00
|
|
#else
|
|
ldrne r5, _0238AFAC ; =0x0000041E
|
|
#endif
|
|
ldreq r5, _0238AFB0 ; =0x0000041F
|
|
b _0238A9F8
|
|
_0238A97C:
|
|
ldr r5, _0238AFB4 ; =0x00000425
|
|
ldr r4, _0238AFB8 ; =0x00003018
|
|
b _0238A9F8
|
|
_0238A988:
|
|
ldr r5, _0238AFBC ; =0x00000426
|
|
#ifdef JAPAN
|
|
sub r4, r5, #0xcf0
|
|
#else
|
|
ldr r4, _0238AFB8 ; =0x00003018
|
|
#endif
|
|
b _0238A9F8
|
|
_0238A994:
|
|
ldr r5, _0238AFC0 ; =0x00000427
|
|
ldr r4, _0238AFB8 ; =0x00003018
|
|
b _0238A9F8
|
|
_0238A9A0:
|
|
ldr r5, _0238AFC4 ; =0x00000428
|
|
#ifdef JAPAN
|
|
ldr r4, _0238AFB8 ; =0x00003018
|
|
#else
|
|
rsb r4, r5, #0x3440
|
|
#endif
|
|
b _0238A9F8
|
|
_0238A9AC:
|
|
ldr r5, _0238AFC8 ; =0x00000429
|
|
ldr r4, _0238AFB8 ; =0x00003018
|
|
b _0238A9F8
|
|
_0238A9B8:
|
|
#ifdef JAPAN
|
|
ldr r5, _0238C528 ; =0x00003D02
|
|
#else
|
|
mov r5, #0x420
|
|
#endif
|
|
ldr r4, _0238AFB8 ; =0x00003018
|
|
b _0238A9F8
|
|
_0238A9C4:
|
|
ldr r5, _0238AFCC ; =0x00000422
|
|
ldr r4, _0238AFB8 ; =0x00003018
|
|
b _0238A9F8
|
|
_0238A9D0:
|
|
ldr r5, _0238AFD0 ; =0x00000421
|
|
ldr r4, _0238AFB8 ; =0x00003018
|
|
b _0238A9F8
|
|
_0238A9DC:
|
|
ldr r5, _0238AFD4 ; =0x00000423
|
|
b _0238A9F8
|
|
_0238A9E4:
|
|
ldr r5, _0238AFD8 ; =0x00000424
|
|
ldr r4, _0238AFB8 ; =0x00003018
|
|
b _0238A9F8
|
|
_0238A9F0:
|
|
ldr r5, _0238AFDC ; =0x0000042A
|
|
ldr r4, _0238AFB8 ; =0x00003018
|
|
_0238A9F8:
|
|
ldrh r0, [r1, #0x7c]
|
|
cmp r0, r5
|
|
beq _0238AA30
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
strh r5, [r1, #0x7c]
|
|
ldr r2, [r0]
|
|
ldr r3, _0238AFE0 ; =0x00000186
|
|
mov r1, r4
|
|
str r3, [r2, #0x58]
|
|
ldr r3, [r0]
|
|
ldrsb r0, [r3]
|
|
ldrh r2, [r3, #0x7c]
|
|
add r3, r3, #0xc
|
|
bl ShowStringIdInDialogueBox
|
|
_0238AA30:
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #2
|
|
beq _0238AABC
|
|
ldrsb r1, [r1, #1]
|
|
mvn r0, #1
|
|
cmp r1, r0
|
|
bne _0238AABC
|
|
mov r0, #0
|
|
mov r1, #3
|
|
mov r2, #1
|
|
bl CreatePortraitBox
|
|
ldr r2, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, _0238AFE0 ; =0x00000186
|
|
ldr r3, [r2]
|
|
strb r0, [r3, #1]
|
|
ldr r0, [r2]
|
|
add r0, r0, #0x5c
|
|
bl InitPortraitParamsWithMonsterId
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x5c
|
|
bl SetPortraitLayout
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x5c
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r0]
|
|
ldrsb r0, [r1, #1]
|
|
add r1, r1, #0x5c
|
|
bl ShowPortraitInPortraitBox
|
|
_0238AABC:
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #4
|
|
beq _0238AB04
|
|
ldrsb r1, [r1, #2]
|
|
mvn r0, #1
|
|
cmp r1, r0
|
|
bne _0238AB04
|
|
ldr r0, _0238AFE4 ; =ASSEMBLY_WINDOW_PARAMS_1
|
|
mov r2, #0
|
|
ldr r1, _0238AFE8 ; =0x00300013
|
|
ldr r3, _0238AFEC ; =ASSEMBLY_MAIN_MENU_ITEMS_2
|
|
str r2, [sp]
|
|
bl CreateSimpleMenuFromStringIds
|
|
ldr r1, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #2]
|
|
_0238AB04:
|
|
ldr r1, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r3, [r1]
|
|
ldrh r0, [r3, #0x7e]
|
|
tst r0, #0x10
|
|
beq _0238AB5C
|
|
ldrsb r2, [r3, #3]
|
|
mvn r0, #1
|
|
cmp r2, r0
|
|
bne _0238AB5C
|
|
mov r0, #1
|
|
str r0, [r3, #0x1b4]
|
|
mov r0, #0
|
|
str r0, [sp]
|
|
ldr r2, [r1]
|
|
ldr r0, _0238AFF0 ; =ASSEMBLY_WINDOW_PARAMS_3
|
|
ldr r1, _0238AFF4 ; =0x00300033
|
|
ldr r3, _0238AFF8 ; =ASSEMBLY_MENU_ITEMS_CONFIRM
|
|
add r2, r2, #0x1b4
|
|
bl CreateSimpleMenuFromStringIds
|
|
ldr r1, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #3]
|
|
_0238AB5C:
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
ldrh r0, [r0, #0x7e]
|
|
tst r0, #0x20
|
|
beq _0238AB94
|
|
bl sub_0203A998
|
|
cmp r0, #0
|
|
bne _0238AB94
|
|
ldr r1, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r0, #1
|
|
ldr r1, [r1]
|
|
add r1, r1, #0x5a
|
|
add r1, r1, #0x200
|
|
bl sub_02039C3C
|
|
_0238AB94:
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r2, [r0]
|
|
ldrh r0, [r2, #0x7e]
|
|
tst r0, #8
|
|
beq _0238AD90
|
|
ldrsb r1, [r2, #4]
|
|
mvn r0, #1
|
|
cmp r1, r0
|
|
bne _0238AD90
|
|
add r0, r2, #0x200
|
|
ldrsh r6, [r0, #0x58]
|
|
mov r0, r6
|
|
bl GetTeamMember
|
|
mov r4, r0
|
|
mov r0, r6
|
|
bl sub_020564B0
|
|
cmp r0, #0
|
|
ldrne r7, _0238AFFC ; =ASSEMBLY_SUBMENU_ITEMS_1
|
|
bne _0238ACEC
|
|
mov r0, r6
|
|
bl IsMainCharacter
|
|
mov r8, r0
|
|
mov r0, r6
|
|
bl sub_02056410
|
|
mov r7, r0
|
|
mov r5, #0
|
|
bl GetGameMode
|
|
cmp r0, #4
|
|
beq _0238AC14
|
|
bl GetGameMode
|
|
cmp r0, #5
|
|
bne _0238AC1C
|
|
_0238AC14:
|
|
mov r5, #1
|
|
b _0238AC28
|
|
_0238AC1C:
|
|
ldrsh r0, [r4, #4]
|
|
cmp r0, #0x214
|
|
moveq r5, #1
|
|
_0238AC28:
|
|
mov r0, #0x14
|
|
bl GetResolvedPerformanceProgressFlag
|
|
cmp r0, #0
|
|
beq _0238AC84
|
|
bl GetGameMode
|
|
cmp r0, #3
|
|
beq _0238AC84
|
|
cmp r8, #0
|
|
beq _0238AC5C
|
|
cmp r7, #0
|
|
ldrne r7, _0238B000 ; =ASSEMBLY_SUBMENU_ITEMS_6
|
|
ldreq r7, _0238B004 ; =ASSEMBLY_SUBMENU_ITEMS_3
|
|
b _0238ACEC
|
|
_0238AC5C:
|
|
cmp r5, #0
|
|
beq _0238AC74
|
|
cmp r7, #0
|
|
ldrne r7, _0238B000 ; =ASSEMBLY_SUBMENU_ITEMS_6
|
|
ldreq r7, _0238B004 ; =ASSEMBLY_SUBMENU_ITEMS_3
|
|
b _0238ACEC
|
|
_0238AC74:
|
|
cmp r7, #0
|
|
ldrne r7, _0238B008 ; =ASSEMBLY_SUBMENU_ITEMS_7
|
|
ldreq r7, _0238B00C ; =ASSEMBLY_SUBMENU_ITEMS_5
|
|
b _0238ACEC
|
|
_0238AC84:
|
|
cmp r8, #0
|
|
beq _0238ACC8
|
|
bl GetGameMode
|
|
cmp r0, #4
|
|
beq _0238ACA4
|
|
bl GetGameMode
|
|
cmp r0, #5
|
|
bne _0238ACC0
|
|
_0238ACA4:
|
|
bl GetPartnerMemberIdx
|
|
cmp r6, r0
|
|
bne _0238ACC0
|
|
cmp r7, #0
|
|
ldrne r7, _0238B010 ; =ASSEMBLY_SUBMENU_ITEMS_2
|
|
ldreq r7, _0238B004 ; =ASSEMBLY_SUBMENU_ITEMS_3
|
|
b _0238ACEC
|
|
_0238ACC0:
|
|
ldr r7, _0238AFFC ; =ASSEMBLY_SUBMENU_ITEMS_1
|
|
b _0238ACEC
|
|
_0238ACC8:
|
|
cmp r5, #0
|
|
beq _0238ACE0
|
|
cmp r7, #0
|
|
ldrne r7, _0238B010 ; =ASSEMBLY_SUBMENU_ITEMS_2
|
|
ldreq r7, _0238B004 ; =ASSEMBLY_SUBMENU_ITEMS_3
|
|
b _0238ACEC
|
|
_0238ACE0:
|
|
cmp r7, #0
|
|
ldrne r7, _0238B014 ; =ASSEMBLY_SUBMENU_ITEMS_4
|
|
ldreq r7, _0238B00C ; =ASSEMBLY_SUBMENU_ITEMS_5
|
|
_0238ACEC:
|
|
mov r8, #0
|
|
mov r4, r8
|
|
mov r5, #3
|
|
ldr sb, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
b _0238AD4C
|
|
_0238AD00:
|
|
mov r1, r8, lsl #3
|
|
ldrh r0, [r7, r1]
|
|
cmp r0, #0
|
|
beq _0238AD54
|
|
add r0, r7, r1
|
|
ldr r0, [r0, #4]
|
|
cmp r0, #6
|
|
bne _0238AD3C
|
|
mov r0, r6
|
|
bl sub_02056F60
|
|
cmp r0, #0
|
|
ldreq r0, [sb]
|
|
addeq r0, r0, r8
|
|
streqb r5, [r0, #0x24c]
|
|
beq _0238AD48
|
|
_0238AD3C:
|
|
ldr r0, [sb]
|
|
add r0, r0, r8
|
|
strb r4, [r0, #0x24c]
|
|
_0238AD48:
|
|
add r8, r8, #1
|
|
_0238AD4C:
|
|
cmp r8, #0xc
|
|
blt _0238AD00
|
|
_0238AD54:
|
|
ldr r1, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r2, #0
|
|
ldr r4, [r1]
|
|
ldr r0, _0238B018 ; =ASSEMBLY_WINDOW_PARAMS_2
|
|
add r3, r4, #0x24c
|
|
str r3, [r4, #0x17c]
|
|
str r2, [sp]
|
|
ldr r2, [r1]
|
|
ldr r1, _0238B01C ; =0x00000213
|
|
mov r3, r7
|
|
add r2, r2, #0x11c
|
|
bl CreateSimpleMenuFromStringIds
|
|
ldr r1, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #4]
|
|
_0238AD90:
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r2, [r0]
|
|
ldrh r0, [r2, #0x7e]
|
|
tst r0, #0x40
|
|
beq _0238ADDC
|
|
ldrsb r1, [r2, #5]
|
|
mvn r0, #1
|
|
cmp r1, r0
|
|
bne _0238ADDC
|
|
add r0, r2, #0x200
|
|
ldrsh r1, [r0, #0x58]
|
|
add r0, sp, #0xac
|
|
bl sub_0205B028
|
|
add r0, sp, #0xac
|
|
mov r1, #3
|
|
bl sub_0203F150
|
|
ldr r1, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #5]
|
|
_0238ADDC:
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #0x80
|
|
beq _0238AE24
|
|
ldrsb r1, [r1, #6]
|
|
mvn r0, #1
|
|
cmp r1, r0
|
|
bne _0238AE20
|
|
mov r1, #0
|
|
mov r2, r1
|
|
mov r0, #8
|
|
bl sub_0204018C
|
|
ldr r1, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #6]
|
|
b _0238AE24
|
|
_0238AE20:
|
|
bl sub_02041178
|
|
_0238AE24:
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r3, [r0]
|
|
ldrh r0, [r3, #0x7e]
|
|
tst r0, #0x100
|
|
beq _0238AE6C
|
|
ldrsb r1, [r3, #5]
|
|
mvn r0, #1
|
|
cmp r1, r0
|
|
bne _0238AE6C
|
|
add r0, r3, #0x200
|
|
ldrsh r2, [r0, #0x68]
|
|
ldr r0, [r3, #0x264]
|
|
mov r1, #4
|
|
mov r3, #1
|
|
bl sub_020417A8
|
|
ldr r1, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #7]
|
|
_0238AE6C:
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r0]
|
|
ldrh r0, [r1, #0x7e]
|
|
tst r0, #0x200
|
|
beq _0238AEB4
|
|
ldrsb r1, [r1, #8]
|
|
mvn r0, #1
|
|
cmp r1, r0
|
|
bne _0238AEB4
|
|
ldr r0, _0238B020 ; =ASSEMBLY_WINDOW_PARAMS_5
|
|
mov r2, #0
|
|
ldr r3, _0238B024 ; =ASSEMBLY_MAIN_MENU_ITEMS_1
|
|
mov r1, #0x13
|
|
str r2, [sp]
|
|
bl CreateSimpleMenuFromStringIds
|
|
ldr r1, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #8]
|
|
_0238AEB4:
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #2
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x74]
|
|
b _0238AF10
|
|
_0238AEC8:
|
|
ldrh r0, [r4, #0x7e]
|
|
tst r0, #1
|
|
beq _0238AEE8
|
|
ldrsb r0, [r4]
|
|
bl IsDialogueBoxActive
|
|
cmp r0, #0
|
|
movne r0, #0
|
|
bne _0238AEEC
|
|
_0238AEE8:
|
|
mov r0, #1
|
|
_0238AEEC:
|
|
cmp r0, #0
|
|
beq _0238AF10
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r2, #0
|
|
ldr r1, [r0]
|
|
str r2, [r1, #0x74]
|
|
ldr r1, [r0]
|
|
ldr r0, [r1, #0x78]
|
|
str r0, [r1, #0x70]
|
|
_0238AF10:
|
|
mov r0, #1
|
|
b _0238AF94
|
|
_0238AF18:
|
|
bl sub_0203C874
|
|
bl ov17_0238A364
|
|
cmp r0, #0
|
|
beq _0238AF90
|
|
bl sub_0203C8E0
|
|
cmp r0, #0
|
|
bne _0238AF90
|
|
bl sub_0203C940
|
|
ldr r0, _0238AF9C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #2
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x6c]
|
|
b _0238AF90
|
|
_0238AF4C:
|
|
mov r1, #3
|
|
str r1, [r4, #0x6c]
|
|
ldr r1, [r0]
|
|
ldr r0, [r1, #0x260]
|
|
cmp r0, #2
|
|
bne _0238AF84
|
|
ldr r0, [r1, #0x80]
|
|
tst r0, #0x100
|
|
beq _0238AF88
|
|
ldr r0, [r1, #0x10c]
|
|
ldr r2, [r1, #0x108]
|
|
mov r1, #0
|
|
blx r2
|
|
b _0238AF88
|
|
_0238AF84:
|
|
bl ov11_022E6E68
|
|
_0238AF88:
|
|
mov r0, #4
|
|
b _0238AF94
|
|
_0238AF90:
|
|
mov r0, #1
|
|
_0238AF94:
|
|
add sp, sp, #0x124
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
|
|
.align 2, 0
|
|
#ifdef JAPAN
|
|
#define OV17_0238A754_OFFSET 0x38E2
|
|
#else
|
|
#define OV17_0238A754_OFFSET 0
|
|
#endif
|
|
_0238AF9C: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
_0238AFA0: .word OVERLAY17_FUNCTION_POINTER_TABLE
|
|
_0238AFA4: .word 0x00003008
|
|
_0238AFA8: .word ASSEMBLY_WINDOW_PARAMS_4
|
|
#ifndef JAPAN
|
|
_0238AFAC: .word 0x0000041E
|
|
#endif
|
|
_0238AFB0: .word 0x0000041F + OV17_0238A754_OFFSET
|
|
_0238AFB4: .word 0x00000425 + OV17_0238A754_OFFSET
|
|
_0238AFB8: .word 0x00003018
|
|
_0238AFBC: .word 0x00000426 + OV17_0238A754_OFFSET
|
|
_0238AFC0: .word 0x00000427 + OV17_0238A754_OFFSET
|
|
_0238AFC4: .word 0x00000428 + OV17_0238A754_OFFSET
|
|
_0238AFC8: .word 0x00000429 + OV17_0238A754_OFFSET
|
|
#ifdef JAPAN
|
|
_0238C528: .word 0x00003D02
|
|
#endif
|
|
_0238AFCC: .word 0x00000422 + OV17_0238A754_OFFSET
|
|
_0238AFD0: .word 0x00000421 + OV17_0238A754_OFFSET
|
|
_0238AFD4: .word 0x00000423 + OV17_0238A754_OFFSET
|
|
_0238AFD8: .word 0x00000424 + OV17_0238A754_OFFSET
|
|
_0238AFDC: .word 0x0000042A + OV17_0238A754_OFFSET
|
|
_0238AFE0: .word 0x00000186
|
|
_0238AFE4: .word ASSEMBLY_WINDOW_PARAMS_1
|
|
_0238AFE8: .word 0x00300013
|
|
_0238AFEC: .word ASSEMBLY_MAIN_MENU_ITEMS_2
|
|
_0238AFF0: .word ASSEMBLY_WINDOW_PARAMS_3
|
|
_0238AFF4: .word 0x00300033
|
|
_0238AFF8: .word ASSEMBLY_MENU_ITEMS_CONFIRM
|
|
_0238AFFC: .word ASSEMBLY_SUBMENU_ITEMS_1
|
|
_0238B000: .word ASSEMBLY_SUBMENU_ITEMS_6
|
|
_0238B004: .word ASSEMBLY_SUBMENU_ITEMS_3
|
|
_0238B008: .word ASSEMBLY_SUBMENU_ITEMS_7
|
|
_0238B00C: .word ASSEMBLY_SUBMENU_ITEMS_5
|
|
_0238B010: .word ASSEMBLY_SUBMENU_ITEMS_2
|
|
_0238B014: .word ASSEMBLY_SUBMENU_ITEMS_4
|
|
_0238B018: .word ASSEMBLY_WINDOW_PARAMS_2
|
|
_0238B01C: .word 0x00000213
|
|
_0238B020: .word ASSEMBLY_WINDOW_PARAMS_5
|
|
_0238B024: .word ASSEMBLY_MAIN_MENU_ITEMS_1
|
|
arm_func_end ov17_0238A754
|
|
|
|
arm_func_start ov17_0238B028
|
|
ov17_0238B028: ; 0x0238B028
|
|
ldr r1, _0238B044 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #3
|
|
ldr r2, [r1]
|
|
str r3, [r2, #0x74]
|
|
ldr r1, [r1]
|
|
str r0, [r1, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B044: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B028
|
|
|
|
arm_func_start ov17_0238B048
|
|
ov17_0238B048: ; 0x0238B048
|
|
ldr r0, _0238B074 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r2, #3
|
|
ldr r1, [r0]
|
|
ldr r3, _0238B078 ; =0x00000186
|
|
strh r2, [r1, #0x7e]
|
|
ldr r2, [r0]
|
|
mov r1, #1
|
|
str r3, [r2, #0xc]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B074: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
_0238B078: .word 0x00000186
|
|
arm_func_end ov17_0238B048
|
|
|
|
arm_func_start ov17_0238B07C
|
|
ov17_0238B07C: ; 0x0238B07C
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0238B0B0 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
ldrb r0, [r0, #9]
|
|
cmp r0, #0
|
|
beq _0238B09C
|
|
bl GetMainCharacter1MemberIdx
|
|
bl sub_0203C7E4
|
|
_0238B09C:
|
|
ldr r0, _0238B0B0 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #2
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B0B0: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B07C
|
|
|
|
arm_func_start ov17_0238B0B4
|
|
ov17_0238B0B4: ; 0x0238B0B4
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0238B108 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
ldrb r0, [r0, #9]
|
|
cmp r0, #0
|
|
beq _0238B0E8
|
|
bl sub_0203C910
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
ldr r0, _0238B108 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
strb r1, [r0, #9]
|
|
_0238B0E8:
|
|
ldr r0, _0238B108 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #7
|
|
ldr r2, [r0]
|
|
mov r1, #3
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B108: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B0B4
|
|
|
|
arm_func_start ov17_0238B10C
|
|
ov17_0238B10C: ; 0x0238B10C
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0238B190 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #2]
|
|
bl IsSimpleMenuActive
|
|
cmp r0, #0
|
|
ldmneia sp!, {r3, pc}
|
|
ldr r0, _0238B190 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #2]
|
|
bl GetSimpleMenuResult__0202B870
|
|
cmp r0, #2
|
|
beq _0238B150
|
|
cmp r0, #3
|
|
beq _0238B15C
|
|
cmp r0, #4
|
|
b _0238B184
|
|
_0238B150:
|
|
mov r0, #0xc
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r3, pc}
|
|
_0238B15C:
|
|
bl GetGameMode
|
|
cmp r0, #4
|
|
cmpne r0, #5
|
|
bne _0238B178
|
|
mov r0, #9
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r3, pc}
|
|
_0238B178:
|
|
mov r0, #6
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r3, pc}
|
|
_0238B184:
|
|
mov r0, #4
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B190: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B10C
|
|
|
|
arm_func_start ov17_0238B194
|
|
ov17_0238B194: ; 0x0238B194
|
|
ldr r0, _0238B1B4 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #3
|
|
ldr r2, [r0]
|
|
mov r1, #5
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B1B4: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B194
|
|
|
|
arm_func_start ov17_0238B1B8
|
|
ov17_0238B1B8: ; 0x0238B1B8
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0238B1E4 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
strh r1, [r0, #0x7e]
|
|
bl ov17_0238A278
|
|
ldr r0, _0238B1E4 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x6c]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B1E4: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B1B8
|
|
|
|
arm_func_start ov17_0238B1E8
|
|
ov17_0238B1E8: ; 0x0238B1E8
|
|
ldr r0, _0238B208 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #3
|
|
ldr r2, [r0]
|
|
mov r1, #7
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B208: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B1E8
|
|
|
|
arm_func_start ov17_0238B20C
|
|
ov17_0238B20C: ; 0x0238B20C
|
|
ldr r0, _0238B220 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #8
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B220: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B20C
|
|
|
|
arm_func_start ov17_0238B224
|
|
ov17_0238B224: ; 0x0238B224
|
|
ldr r0, _0238B238 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B238: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B224
|
|
|
|
arm_func_start ov17_0238B23C
|
|
ov17_0238B23C: ; 0x0238B23C
|
|
ldr r0, _0238B25C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #3
|
|
ldr r2, [r0]
|
|
mov r1, #0xa
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B25C: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B23C
|
|
|
|
arm_func_start ov17_0238B260
|
|
ov17_0238B260: ; 0x0238B260
|
|
ldr r0, _0238B274 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0xb
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B274: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B260
|
|
|
|
arm_func_start ov17_0238B278
|
|
ov17_0238B278: ; 0x0238B278
|
|
ldr r0, _0238B28C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B28C: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B278
|
|
|
|
arm_func_start ov17_0238B290
|
|
ov17_0238B290: ; 0x0238B290
|
|
ldr r0, _0238B2B0 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #0x20
|
|
ldr r2, [r0]
|
|
mov r1, #0xd
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B2B0: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B290
|
|
|
|
arm_func_start ov17_0238B2B4
|
|
ov17_0238B2B4: ; 0x0238B2B4
|
|
stmdb sp!, {r3, lr}
|
|
bl sub_0203A5A8
|
|
cmp r0, #0
|
|
beq _0238B31C
|
|
bl sub_0203A9EC
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
add r1, sp, #0
|
|
mov r0, #0
|
|
bl GetPressedButtons
|
|
ldrh r0, [sp]
|
|
tst r0, #8
|
|
ldmeqia sp!, {r3, pc}
|
|
mov r0, #0
|
|
bl PlaySeVolumeWrapper
|
|
bl sub_0203AAB0
|
|
ldr r1, _0238B368 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r1]
|
|
add r1, r1, #0x200
|
|
strh r0, [r1, #0x58]
|
|
bl sub_0203A5F0
|
|
ldr r0, _0238B368 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0x1e
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
_0238B31C:
|
|
bl sub_0203AA20
|
|
mvn r1, #0
|
|
cmp r0, r1
|
|
bne _0238B33C
|
|
bl sub_0203A51C
|
|
mov r0, #0
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r3, pc}
|
|
_0238B33C:
|
|
ldr r2, _0238B368 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r2]
|
|
add r1, r1, #0x200
|
|
strh r0, [r1, #0x58]
|
|
ldr r0, [r2]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl sub_0203FA64
|
|
mov r0, #0xe
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B368: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B2B4
|
|
|
|
arm_func_start ov17_0238B36C
|
|
ov17_0238B36C: ; 0x0238B36C
|
|
ldr r0, _0238B38C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #0x28
|
|
ldr r2, [r0]
|
|
mov r1, #0xf
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B38C: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B36C
|
|
|
|
arm_func_start ov17_0238B390
|
|
ov17_0238B390: ; 0x0238B390
|
|
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr}
|
|
ldr r0, _0238B4CC ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #4]
|
|
bl IsSimpleMenuActive
|
|
cmp r0, #0
|
|
ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
ldr r0, _0238B4CC ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #4]
|
|
bl GetSimpleMenuResult__0202B870
|
|
sub r0, r0, #5
|
|
cmp r0, #7
|
|
addls pc, pc, r0, lsl #2
|
|
b _0238B4BC
|
|
_0238B3CC: ; jump table
|
|
b _0238B3EC ; case 0
|
|
b _0238B3F8 ; case 1
|
|
b _0238B46C ; case 2
|
|
b _0238B478 ; case 3
|
|
b _0238B484 ; case 4
|
|
b _0238B490 ; case 5
|
|
b _0238B49C ; case 6
|
|
b _0238B4BC ; case 7
|
|
_0238B3EC:
|
|
mov r0, #0x10
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B3F8:
|
|
mov sl, #0
|
|
ldr r6, _0238B4CC ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r4, _0238B4D0 ; =0x0000022B
|
|
ldr r7, _0238B4D4 ; =TEAM_MEMBER_TABLE_PTR
|
|
mov r8, sl
|
|
mov sb, #1
|
|
mov r5, #0x44
|
|
_0238B414:
|
|
smulbb r0, sl, r5
|
|
ldr r1, [r7]
|
|
ldrb r0, [r1, r0]
|
|
tst r0, #1
|
|
movne r0, sb
|
|
moveq r0, r8
|
|
tst r0, #0xff
|
|
ldrne r0, [r6]
|
|
addne r0, r0, #0x200
|
|
ldrnesh r0, [r0, #0x58]
|
|
cmpne r0, sl
|
|
beq _0238B44C
|
|
mov r0, sl
|
|
bl sub_02056410
|
|
_0238B44C:
|
|
add r0, sl, #1
|
|
mov r0, r0, lsl #0x10
|
|
cmp r4, r0, asr #16
|
|
mov sl, r0, asr #0x10
|
|
bgt _0238B414
|
|
mov r0, #0x13
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B46C:
|
|
mov r0, #0x15
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B478:
|
|
mov r0, #0x18
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B484:
|
|
mov r0, #0x1e
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B490:
|
|
mov r0, #0x20
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B49C:
|
|
ldr r0, _0238B4CC ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #0
|
|
ldr r2, [r0]
|
|
mov r1, #0x22
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
_0238B4BC:
|
|
bl sub_0203A638
|
|
mov r0, #0xc
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
|
.align 2, 0
|
|
_0238B4CC: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
_0238B4D0: .word 0x0000022B
|
|
_0238B4D4: .word TEAM_MEMBER_TABLE_PTR
|
|
arm_func_end ov17_0238B390
|
|
|
|
arm_func_start ov17_0238B4D8
|
|
ov17_0238B4D8: ; 0x0238B4D8
|
|
ldr r1, _0238B50C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #3
|
|
ldr r0, [r1]
|
|
mov r2, #0x11
|
|
strh r3, [r0, #0x7e]
|
|
ldr r3, [r1]
|
|
add r0, r3, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
orr r0, r0, #0x20000
|
|
str r0, [r3, #0xc]
|
|
ldr r0, [r1]
|
|
str r2, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B50C: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B4D8
|
|
|
|
arm_func_start ov17_0238B510
|
|
ov17_0238B510: ; 0x0238B510
|
|
stmdb sp!, {r3, lr}
|
|
mov r0, #5
|
|
bl sub_02017C50
|
|
ldr r0, _0238B530 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0x12
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B530: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B510
|
|
|
|
arm_func_start ov17_0238B534
|
|
ov17_0238B534: ; 0x0238B534
|
|
stmdb sp!, {r3, lr}
|
|
mov r0, #5
|
|
bl sub_02017C10
|
|
cmp r0, #0
|
|
ldmneia sp!, {r3, pc}
|
|
ldr r0, _0238B578 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl TryAddMonsterToActiveTeam
|
|
bl sub_02057444
|
|
bl ov11_022DC504
|
|
ldr r0, _0238B578 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B578: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B534
|
|
|
|
arm_func_start ov17_0238B57C
|
|
ov17_0238B57C: ; 0x0238B57C
|
|
stmdb sp!, {r3, lr}
|
|
ldr r1, _0238B5D8 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #3
|
|
ldr r0, [r1]
|
|
add r2, r3, #0x1400
|
|
strh r3, [r0, #0x7e]
|
|
ldr r3, [r1]
|
|
add r0, r3, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
orr r0, r0, #0x20000
|
|
str r0, [r3, #0xc]
|
|
ldr r0, [r1]
|
|
str r2, [r0, #0x30]
|
|
ldr r0, [r1]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl sub_02056554
|
|
bl sub_02057444
|
|
ldr r0, _0238B5D8 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0x14
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B5D8: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B57C
|
|
|
|
arm_func_start ov17_0238B5DC
|
|
ov17_0238B5DC: ; 0x0238B5DC
|
|
stmdb sp!, {r3, lr}
|
|
bl ov11_022DC504
|
|
ldr r0, _0238B5F8 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B5F8: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B5DC
|
|
|
|
arm_func_start ov17_0238B5FC
|
|
ov17_0238B5FC: ; 0x0238B5FC
|
|
stmdb sp!, {r3, lr}
|
|
ldr r1, _0238B684 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #3
|
|
ldr r2, [r1]
|
|
mov r0, #7
|
|
strh r3, [r2, #0x7e]
|
|
ldr r2, [r1]
|
|
add r1, r2, #0x200
|
|
ldrsh r1, [r1, #0x58]
|
|
orr r1, r1, #0x20000
|
|
str r1, [r2, #0xc]
|
|
bl sub_02017C10
|
|
cmp r0, #0
|
|
ldmneia sp!, {r3, pc}
|
|
ldr r0, _0238B684 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl GetActiveRosterIndex
|
|
mvn r1, #0
|
|
cmp r0, r1
|
|
beq _0238B670
|
|
bl sub_02058138
|
|
ldr r0, _0238B684 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl sub_020566C4
|
|
bl sub_02057444
|
|
_0238B670:
|
|
ldr r0, _0238B684 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0x16
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B684: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B5FC
|
|
|
|
arm_func_start ov17_0238B688
|
|
ov17_0238B688: ; 0x0238B688
|
|
stmdb sp!, {r3, lr}
|
|
mov r0, #7
|
|
bl sub_02017C50
|
|
ldr r0, _0238B6A8 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0x17
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B6A8: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B688
|
|
|
|
arm_func_start ov17_0238B6AC
|
|
ov17_0238B6AC: ; 0x0238B6AC
|
|
stmdb sp!, {r3, lr}
|
|
mov r0, #7
|
|
bl sub_02017C10
|
|
cmp r0, #0
|
|
ldmneia sp!, {r3, pc}
|
|
ldr r0, _0238B6D8 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bl ov11_022DC504
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B6D8: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B6AC
|
|
|
|
arm_func_start ov17_0238B6DC
|
|
ov17_0238B6DC: ; 0x0238B6DC
|
|
ldr r1, _0238B710 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #3
|
|
ldr r0, [r1]
|
|
mov r2, #0x19
|
|
strh r3, [r0, #0x7e]
|
|
ldr r3, [r1]
|
|
add r0, r3, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
orr r0, r0, #0x20000
|
|
str r0, [r3, #0xc]
|
|
ldr r0, [r1]
|
|
str r2, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B710: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B6DC
|
|
|
|
arm_func_start ov17_0238B714
|
|
ov17_0238B714: ; 0x0238B714
|
|
ldr r0, _0238B734 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #0x13
|
|
ldr r2, [r0]
|
|
mov r1, #0x1a
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B734: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B714
|
|
|
|
arm_func_start ov17_0238B738
|
|
ov17_0238B738: ; 0x0238B738
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0238B7A4 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #3]
|
|
bl IsSimpleMenuActive
|
|
cmp r0, #0
|
|
ldmneia sp!, {r3, pc}
|
|
ldr r0, _0238B7A4 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #3]
|
|
bl GetSimpleMenuResult__0202B870
|
|
cmp r0, #0
|
|
beq _0238B780
|
|
cmp r0, #1
|
|
ldmneia sp!, {r3, pc}
|
|
mov r0, #0
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r3, pc}
|
|
_0238B780:
|
|
ldr r1, _0238B7A4 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r0, #0x1b
|
|
ldr r2, [r1]
|
|
add r1, r2, #0x200
|
|
ldrsh r1, [r1, #0x58]
|
|
orr r1, r1, #0x20000
|
|
str r1, [r2, #0xc]
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B7A4: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B738
|
|
|
|
arm_func_start ov17_0238B7A8
|
|
ov17_0238B7A8: ; 0x0238B7A8
|
|
ldr r0, _0238B7C8 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #3
|
|
ldr r2, [r0]
|
|
mov r1, #0x1c
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B7C8: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B7A8
|
|
|
|
arm_func_start ov17_0238B7CC
|
|
ov17_0238B7CC: ; 0x0238B7CC
|
|
stmdb sp!, {r3, lr}
|
|
ldr r1, _0238B850 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r0, #3
|
|
ldr r1, [r1]
|
|
strh r0, [r1, #0x7e]
|
|
bl sub_02017C50
|
|
ldr r0, _0238B850 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl GetActiveRosterIndex
|
|
mvn r1, #0
|
|
cmp r0, r1
|
|
beq _0238B81C
|
|
bl sub_02058138
|
|
ldr r0, _0238B850 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl sub_020566C4
|
|
_0238B81C:
|
|
ldr r0, _0238B850 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl sub_02055B20
|
|
bl sub_0203C9C4
|
|
#ifndef JAPAN
|
|
bl sub_0203AF0C
|
|
#endif
|
|
bl sub_02057180
|
|
ldr r0, _0238B850 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0x1d
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B850: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B7CC
|
|
|
|
arm_func_start ov17_0238B854
|
|
ov17_0238B854: ; 0x0238B854
|
|
stmdb sp!, {r3, lr}
|
|
mov r0, #3
|
|
bl sub_02017C10
|
|
cmp r0, #0
|
|
ldreq r0, _0238B878 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
moveq r1, #0
|
|
ldreq r0, [r0]
|
|
streq r1, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B878: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B854
|
|
|
|
arm_func_start ov17_0238B87C
|
|
ov17_0238B87C: ; 0x0238B87C
|
|
ldr r0, _0238B89C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #0x40
|
|
ldr r2, [r0]
|
|
mov r1, #0x1f
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B89C: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B87C
|
|
|
|
arm_func_start ov17_0238B8A0
|
|
ov17_0238B8A0: ; 0x0238B8A0
|
|
stmdb sp!, {r3, lr}
|
|
bl sub_0203F398
|
|
cmp r0, #1
|
|
ldmneia sp!, {r3, pc}
|
|
bl sub_0203F990
|
|
ldr r0, _0238B8D0 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mvn r2, #1
|
|
ldr r1, [r0]
|
|
mov r0, #0xc
|
|
strb r2, [r1, #5]
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B8D0: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B8A0
|
|
|
|
arm_func_start ov17_0238B8D4
|
|
ov17_0238B8D4: ; 0x0238B8D4
|
|
ldr r0, _0238B8F4 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #0x80
|
|
ldr r2, [r0]
|
|
mov r1, #0x21
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B8F4: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B8D4
|
|
|
|
arm_func_start ov17_0238B8F8
|
|
ov17_0238B8F8: ; 0x0238B8F8
|
|
stmdb sp!, {r4, lr}
|
|
bl sub_020407EC
|
|
movs r4, r0
|
|
beq _0238B91C
|
|
ldr r0, _0238B95C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
bl sub_0203FD80
|
|
_0238B91C:
|
|
cmp r4, #1
|
|
beq _0238B944
|
|
cmp r4, #2
|
|
beq _0238B938
|
|
cmp r4, #7
|
|
beq _0238B950
|
|
ldmia sp!, {r4, pc}
|
|
_0238B938:
|
|
mov r0, #0x24
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r4, pc}
|
|
_0238B944:
|
|
mov r0, #0xc
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r4, pc}
|
|
_0238B950:
|
|
mov r0, #0x26
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
_0238B95C: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B8F8
|
|
|
|
arm_func_start ov17_0238B960
|
|
ov17_0238B960: ; 0x0238B960
|
|
stmdb sp!, {r3, lr}
|
|
ldr r1, _0238B9AC ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, _0238B9B0 ; =TEAM_MEMBER_TABLE_PTR
|
|
ldr r2, [r1]
|
|
ldr r1, [r0]
|
|
add r0, r2, #0x200
|
|
ldrsh r2, [r0, #0x58]
|
|
mov r0, #0x44
|
|
mov r3, #0
|
|
smlabb r1, r2, r0, r1
|
|
ldrsh r0, [r1, #4]
|
|
ldrsh r2, [r1, #8]
|
|
add r1, r1, #0x14
|
|
bl PrintIqSkillsMenu
|
|
ldr r0, _0238B9AC ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0x23
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238B9AC: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
_0238B9B0: .word TEAM_MEMBER_TABLE_PTR
|
|
arm_func_end ov17_0238B960
|
|
|
|
arm_func_start ov17_0238B9B4
|
|
ov17_0238B9B4: ; 0x0238B9B4
|
|
stmdb sp!, {r3, lr}
|
|
bl sub_02041B7C
|
|
cmp r0, #1
|
|
ldmneia sp!, {r3, pc}
|
|
bl sub_020420F4
|
|
bl sub_020572EC
|
|
mov r0, #0xc
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end ov17_0238B9B4
|
|
|
|
arm_func_start ov17_0238B9D8
|
|
ov17_0238B9D8: ; 0x0238B9D8
|
|
ldr r0, _0238B9F8 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #0x280
|
|
ldr r2, [r0]
|
|
mov r1, #0x25
|
|
strh r3, [r2, #0x7e]
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238B9F8: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B9D8
|
|
|
|
arm_func_start ov17_0238B9FC
|
|
ov17_0238B9FC: ; 0x0238B9FC
|
|
stmdb sp!, {r4, lr}
|
|
ldr r0, _0238BA7C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r4, #0
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #8]
|
|
bl IsSimpleMenuActive
|
|
cmp r0, #0
|
|
ldmneia sp!, {r4, pc}
|
|
ldr r0, _0238BA7C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #8]
|
|
bl GetSimpleMenuResult__0202B870
|
|
cmp r0, #3
|
|
beq _0238BA3C
|
|
cmp r0, #4
|
|
b _0238BA48
|
|
_0238BA3C:
|
|
mov r0, #0x26
|
|
bl ov17_0238B028
|
|
b _0238BA4C
|
|
_0238BA48:
|
|
mov r4, #1
|
|
_0238BA4C:
|
|
cmp r4, #0
|
|
ldmeqia sp!, {r4, pc}
|
|
ldr r0, _0238BA7C ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
ldrsb r0, [r0, #6]
|
|
cmp r0, r1
|
|
beq _0238BA70
|
|
bl sub_020307EC
|
|
_0238BA70:
|
|
mov r0, #0x20
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r4, pc}
|
|
.align 2, 0
|
|
_0238BA7C: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238B9FC
|
|
|
|
arm_func_start ov17_0238BA80
|
|
ov17_0238BA80: ; 0x0238BA80
|
|
stmdb sp!, {r3, lr}
|
|
bl sub_0203FD38
|
|
ldr r1, _0238BAC4 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
ldr r1, [r1]
|
|
str r0, [r1, #0x264]
|
|
bl sub_02041094
|
|
ldr r2, _0238BAC4 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov ip, #0x100
|
|
ldr r1, [r2]
|
|
mov r3, #0x27
|
|
add r1, r1, #0x200
|
|
strh r0, [r1, #0x68]
|
|
ldr r0, [r2]
|
|
strh ip, [r0, #0x7e]
|
|
ldr r0, [r2]
|
|
str r3, [r0, #0x78]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238BAC4: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238BA80
|
|
|
|
arm_func_start ov17_0238BAC8
|
|
ov17_0238BAC8: ; 0x0238BAC8
|
|
stmdb sp!, {r3, lr}
|
|
bl sub_02041A18
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
mov r0, #0x20
|
|
bl ov17_0238B028
|
|
ldmia sp!, {r3, pc}
|
|
arm_func_end ov17_0238BAC8
|
|
|
|
arm_func_start ov17_0238BAE4
|
|
ov17_0238BAE4: ; 0x0238BAE4
|
|
ldr r1, _0238BB18 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r3, #3
|
|
ldr r0, [r1]
|
|
mov r2, #0x29
|
|
strh r3, [r0, #0x7e]
|
|
ldr r3, [r1]
|
|
add r0, r3, #0x200
|
|
ldrsh r0, [r0, #0x58]
|
|
orr r0, r0, #0x20000
|
|
str r0, [r3, #0xc]
|
|
ldr r0, [r1]
|
|
str r2, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238BB18: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238BAE4
|
|
|
|
arm_func_start ov17_0238BB1C
|
|
ov17_0238BB1C: ; 0x0238BB1C
|
|
ldr r0, _0238BB30 ; =OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
mov r1, #0xc
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0x78]
|
|
bx lr
|
|
.align 2, 0
|
|
_0238BB30: .word OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
arm_func_end ov17_0238BB1C
|
|
; 0x0238BB34
|
|
|
|
.rodata
|
|
.global ASSEMBLY_WINDOW_PARAMS_1
|
|
ASSEMBLY_WINDOW_PARAMS_1:
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x1E, 0x0F, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_WINDOW_PARAMS_2
|
|
ASSEMBLY_WINDOW_PARAMS_2:
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x13, 0x02, 0x0B, 0x00, 0x00, 0xFE, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_WINDOW_PARAMS_3
|
|
ASSEMBLY_WINDOW_PARAMS_3:
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x1E, 0x0F, 0x08, 0x00, 0x00, 0xFE, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_WINDOW_PARAMS_4
|
|
ASSEMBLY_WINDOW_PARAMS_4:
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x11, 0x1C, 0x05, 0x00, 0xFD, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_WINDOW_PARAMS_5
|
|
ASSEMBLY_WINDOW_PARAMS_5:
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x16, 0x02, 0x08, 0x00, 0x00, 0xFE, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_MENU_ITEMS_CONFIRM
|
|
ASSEMBLY_MENU_ITEMS_CONFIRM:
|
|
#ifdef JAPAN
|
|
#define OV17_DATA_OFFSET 0x38E2
|
|
#else
|
|
#define OV17_DATA_OFFSET 0
|
|
#endif
|
|
.word 0x411 + OV17_DATA_OFFSET
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.word 0x412 + OV17_DATA_OFFSET
|
|
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_MAIN_MENU_ITEMS_1
|
|
ASSEMBLY_MAIN_MENU_ITEMS_1:
|
|
.word 0x414 + OV17_DATA_OFFSET
|
|
.byte 0x03, 0x00, 0x00, 0x00
|
|
.word 0x415 + OV17_DATA_OFFSET
|
|
.byte 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x04, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_MAIN_MENU_ITEMS_2
|
|
ASSEMBLY_MAIN_MENU_ITEMS_2:
|
|
.word 0x413 + OV17_DATA_OFFSET
|
|
.byte 0x02, 0x00, 0x00, 0x00
|
|
.word 0x414 + OV17_DATA_OFFSET
|
|
.byte 0x03, 0x00, 0x00, 0x00
|
|
.word 0x415 + OV17_DATA_OFFSET
|
|
.byte 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x04, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_SUBMENU_ITEMS_1
|
|
ASSEMBLY_SUBMENU_ITEMS_1:
|
|
.word 0x41A + OV17_DATA_OFFSET
|
|
.byte 0x09, 0x00, 0x00, 0x00
|
|
.word 0x41B + OV17_DATA_OFFSET
|
|
.byte 0x0A, 0x00, 0x00, 0x00
|
|
.word 0x41C + OV17_DATA_OFFSET
|
|
.byte 0x0B, 0x00, 0x00, 0x00
|
|
.word 0x41D + OV17_DATA_OFFSET
|
|
.byte 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_SUBMENU_ITEMS_2
|
|
ASSEMBLY_SUBMENU_ITEMS_2:
|
|
.word 0x418 + OV17_DATA_OFFSET
|
|
.byte 0x07, 0x00, 0x00, 0x00
|
|
.word 0x41A + OV17_DATA_OFFSET
|
|
.byte 0x09, 0x00, 0x00, 0x00
|
|
.word 0x41B + OV17_DATA_OFFSET
|
|
.byte 0x0A, 0x00, 0x00, 0x00
|
|
.word 0x41C + OV17_DATA_OFFSET
|
|
.byte 0x0B, 0x00, 0x00, 0x00
|
|
.word 0x41D + OV17_DATA_OFFSET
|
|
.byte 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_SUBMENU_ITEMS_3
|
|
ASSEMBLY_SUBMENU_ITEMS_3:
|
|
.word 0x417 + OV17_DATA_OFFSET
|
|
.byte 0x06, 0x00, 0x00, 0x00
|
|
.word 0x41A + OV17_DATA_OFFSET
|
|
.byte 0x09, 0x00, 0x00, 0x00
|
|
.word 0x41B + OV17_DATA_OFFSET
|
|
.byte 0x0A, 0x00, 0x00, 0x00
|
|
.word 0x41C + OV17_DATA_OFFSET
|
|
.byte 0x0B, 0x00, 0x00, 0x00
|
|
.word 0x41D + OV17_DATA_OFFSET
|
|
.byte 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_SUBMENU_ITEMS_4
|
|
ASSEMBLY_SUBMENU_ITEMS_4:
|
|
.word 0x418 + OV17_DATA_OFFSET
|
|
.byte 0x07, 0x00, 0x00, 0x00
|
|
.word 0x419 + OV17_DATA_OFFSET
|
|
.byte 0x08, 0x00, 0x00, 0x00
|
|
.word 0x41A + OV17_DATA_OFFSET
|
|
.byte 0x09, 0x00, 0x00, 0x00
|
|
.word 0x41B + OV17_DATA_OFFSET
|
|
.byte 0x0A, 0x00, 0x00, 0x00
|
|
.word 0x41C + OV17_DATA_OFFSET
|
|
.byte 0x0B, 0x00, 0x00, 0x00
|
|
.word 0x41D + OV17_DATA_OFFSET
|
|
.byte 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x0C, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_SUBMENU_ITEMS_5
|
|
ASSEMBLY_SUBMENU_ITEMS_5:
|
|
.word 0x417 + OV17_DATA_OFFSET
|
|
.byte 0x06, 0x00, 0x00, 0x00
|
|
.word 0x419 + OV17_DATA_OFFSET
|
|
.byte 0x08, 0x00, 0x00, 0x00
|
|
.word 0x41A + OV17_DATA_OFFSET
|
|
.byte 0x09, 0x00, 0x00, 0x00
|
|
.word 0x41B + OV17_DATA_OFFSET
|
|
.byte 0x0A, 0x00, 0x00, 0x00
|
|
.word 0x41C + OV17_DATA_OFFSET
|
|
.byte 0x0B, 0x00, 0x00, 0x00
|
|
.word 0x41D + OV17_DATA_OFFSET
|
|
.byte 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_SUBMENU_ITEMS_6
|
|
ASSEMBLY_SUBMENU_ITEMS_6:
|
|
.word 0x416 + OV17_DATA_OFFSET
|
|
.byte 0x05, 0x00, 0x00, 0x00
|
|
.word 0x418 + OV17_DATA_OFFSET
|
|
.byte 0x07, 0x00, 0x00, 0x00
|
|
.word 0x41A + OV17_DATA_OFFSET
|
|
.byte 0x09, 0x00, 0x00, 0x00
|
|
.word 0x41B + OV17_DATA_OFFSET
|
|
.byte 0x0A, 0x00, 0x00, 0x00
|
|
.word 0x41C + OV17_DATA_OFFSET
|
|
.byte 0x0B, 0x00, 0x00, 0x00
|
|
.word 0x41D + OV17_DATA_OFFSET
|
|
.byte 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x0C, 0x00, 0x00, 0x00
|
|
.global ASSEMBLY_SUBMENU_ITEMS_7
|
|
ASSEMBLY_SUBMENU_ITEMS_7:
|
|
.word 0x416 + OV17_DATA_OFFSET
|
|
.byte 0x05, 0x00, 0x00, 0x00
|
|
.word 0x418 + OV17_DATA_OFFSET
|
|
.byte 0x07, 0x00, 0x00, 0x00
|
|
.word 0x419 + OV17_DATA_OFFSET
|
|
.byte 0x08, 0x00, 0x00, 0x00
|
|
.word 0x41A + OV17_DATA_OFFSET
|
|
.byte 0x09, 0x00, 0x00, 0x00
|
|
.word 0x41B + OV17_DATA_OFFSET
|
|
.byte 0x0A, 0x00, 0x00, 0x00
|
|
.word 0x41C + OV17_DATA_OFFSET
|
|
.byte 0x0B, 0x00, 0x00, 0x00
|
|
.word 0x41D + OV17_DATA_OFFSET
|
|
.byte 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x0C, 0x00, 0x00, 0x00
|
|
.global OVERLAY17_FUNCTION_POINTER_TABLE
|
|
OVERLAY17_FUNCTION_POINTER_TABLE:
|
|
.word ov17_0238B048
|
|
.word ov17_0238B07C
|
|
.word ov17_0238B0B4
|
|
.word ov17_0238B10C
|
|
.word ov17_0238B194
|
|
.word ov17_0238B1B8
|
|
.word ov17_0238B1E8
|
|
.word ov17_0238B20C
|
|
.word ov17_0238B224
|
|
.word ov17_0238B23C
|
|
.word ov17_0238B260
|
|
.word ov17_0238B278
|
|
.word ov17_0238B290
|
|
.word ov17_0238B2B4
|
|
.word ov17_0238B36C
|
|
.word ov17_0238B390
|
|
.word ov17_0238B4D8
|
|
.word ov17_0238B510
|
|
.word ov17_0238B534
|
|
.word ov17_0238B57C
|
|
.word ov17_0238B5DC
|
|
.word ov17_0238B5FC
|
|
.word ov17_0238B688
|
|
.word ov17_0238B6AC
|
|
.word ov17_0238B6DC
|
|
.word ov17_0238B714
|
|
.word ov17_0238B738
|
|
.word ov17_0238B7A8
|
|
.word ov17_0238B7CC
|
|
.word ov17_0238B854
|
|
.word ov17_0238B87C
|
|
.word ov17_0238B8A0
|
|
.word ov17_0238B8D4
|
|
.word ov17_0238B8F8
|
|
.word ov17_0238B960
|
|
.word ov17_0238B9B4
|
|
.word ov17_0238B9D8
|
|
.word ov17_0238B9FC
|
|
.word ov17_0238BA80
|
|
.word ov17_0238BAC8
|
|
.word ov17_0238BAE4
|
|
.word ov17_0238BB1C
|
|
|
|
.data
|
|
.global OVERLAY17_UNKNOWN_POINTER__NA_238BE00
|
|
OVERLAY17_UNKNOWN_POINTER__NA_238BE00:
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|