mirror of
https://github.com/pret/pmd-sky.git
synced 2026-03-21 17:25:15 -05:00
2552 lines
57 KiB
ArmAsm
2552 lines
57 KiB
ArmAsm
.include "asm/macros.inc"
|
|
.include "overlay_24.inc"
|
|
|
|
.text
|
|
|
|
arm_func_start ov24_0238A140
|
|
ov24_0238A140: ; 0x0238A140
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, [r0]
|
|
ldr r1, [r2]
|
|
cmp r1, #0x26
|
|
addls pc, pc, r1, lsl #2
|
|
b _0238A5B8
|
|
_0238A15C: ; jump table
|
|
b _0238A1F8 ; case 0
|
|
b _0238A1F8 ; case 1
|
|
b _0238A5B8 ; case 2
|
|
b _0238A5B8 ; case 3
|
|
b _0238A2B4 ; case 4
|
|
b _0238A5B8 ; case 5
|
|
b _0238A5B8 ; case 6
|
|
b _0238A5B8 ; case 7
|
|
b _0238A5B8 ; case 8
|
|
b _0238A5B8 ; case 9
|
|
b _0238A5B8 ; case 10
|
|
b _0238A5B8 ; case 11
|
|
b _0238A5B8 ; case 12
|
|
b _0238A5B8 ; case 13
|
|
b _0238A26C ; case 14
|
|
b _0238A5B8 ; case 15
|
|
b _0238A5B8 ; case 16
|
|
b _0238A5B8 ; case 17
|
|
b _0238A5B8 ; case 18
|
|
b _0238A5B8 ; case 19
|
|
b _0238A22C ; case 20
|
|
b _0238A5B8 ; case 21
|
|
b _0238A5B8 ; case 22
|
|
b _0238A518 ; case 23
|
|
b _0238A55C ; case 24
|
|
b _0238A2C0 ; case 25
|
|
b _0238A334 ; case 26
|
|
b _0238A5B8 ; case 27
|
|
b _0238A5B8 ; case 28
|
|
b _0238A26C ; case 29
|
|
b _0238A4A8 ; case 30
|
|
b _0238A5B8 ; case 31
|
|
b _0238A3DC ; case 32
|
|
b _0238A3DC ; case 33
|
|
b _0238A43C ; case 34
|
|
b _0238A488 ; case 35
|
|
b _0238A424 ; case 36
|
|
b _0238A5B8 ; case 37
|
|
b _0238A598 ; case 38
|
|
_0238A1F8:
|
|
add r0, r2, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl IsDialogueBoxActive
|
|
cmp r0, #0
|
|
bne _0238A604
|
|
mov r0, #0x1a
|
|
bl ov24_0238A610
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl ShowDialogueBox
|
|
b _0238A604
|
|
_0238A22C:
|
|
bl ov11_02306C9C
|
|
cmp r0, #3
|
|
beq _0238A250
|
|
cmp r0, #4
|
|
bne _0238A604
|
|
bl ov11_02306C64
|
|
mov r0, #0x11
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A250:
|
|
bl ov11_02306C64
|
|
ldr r1, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r1]
|
|
str r0, [r1, #0x1e8]
|
|
mov r0, #0x26
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A26C:
|
|
add r0, r2, #0x200
|
|
ldrsb r0, [r0, #0x8f]
|
|
bl GetSimpleMenuResult__0202B870
|
|
cmp r0, #1
|
|
beq _0238A2A4
|
|
cmp r0, #4
|
|
beq _0238A294
|
|
cmp r0, #5
|
|
beq _0238A2A4
|
|
b _0238A604
|
|
_0238A294:
|
|
bl ov24_0238C47C
|
|
mov r0, #0x13
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A2A4:
|
|
bl ov24_0238C47C
|
|
mov r0, #0x11
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A2B4:
|
|
bl ov11_022DC504
|
|
mov r0, #3
|
|
ldmia sp!, {r3, pc}
|
|
_0238A2C0:
|
|
bl ov11_0230D220
|
|
cmp r0, #0
|
|
bne _0238A604
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl IsDialogueBoxActive
|
|
cmp r0, #0
|
|
bne _0238A604
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl ShowDialogueBox
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0x27
|
|
ldr r1, [r0]
|
|
str r2, [r1]
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl sub_0202F2C4
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl HidePortraitBox
|
|
b _0238A604
|
|
_0238A334:
|
|
add r0, r2, #0x200
|
|
ldrsb r0, [r0, #0x8f]
|
|
bl GetSimpleMenuResult__0202B870
|
|
cmp r0, #1
|
|
ldrne r1, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldrne r1, [r1]
|
|
strne r0, [r1, #0x1c]
|
|
cmp r0, #1
|
|
beq _0238A3CC
|
|
cmp r0, #6
|
|
beq _0238A3BC
|
|
cmp r0, #7
|
|
bne _0238A604
|
|
bl ov24_0238C47C
|
|
bl sub_020107DC
|
|
cmp r0, #0
|
|
beq _0238A38C
|
|
cmp r0, #1
|
|
beq _0238A398
|
|
cmp r0, #2
|
|
beq _0238A3A4
|
|
b _0238A3B0
|
|
_0238A38C:
|
|
mov r0, #9
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A398:
|
|
mov r0, #7
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A3A4:
|
|
mov r0, #6
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A3B0:
|
|
mov r0, #5
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A3BC:
|
|
bl ov24_0238C47C
|
|
mov r0, #2
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A3CC:
|
|
bl ov24_0238C47C
|
|
mov r0, #3
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A3DC:
|
|
bl GetKeyboardStatus
|
|
cmp r0, #3
|
|
bne _0238A604
|
|
bl GetKeyboardStringResult
|
|
ldr r2, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, r0
|
|
ldr r0, [r2]
|
|
add r0, r0, #0x42
|
|
bl StrcpySimple
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0x10
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x22
|
|
add r1, r1, #0x42
|
|
bl StrncpySimpleNoPadSafe
|
|
mov r0, #0x24
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A424:
|
|
bl sub_02037468
|
|
cmp r0, #0
|
|
beq _0238A604
|
|
mov r0, #0x22
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A43C:
|
|
bl sub_0203931C
|
|
cmp r0, #0
|
|
bne _0238A464
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0x10
|
|
ldr r1, [r0]
|
|
mov r0, #0x23
|
|
str r2, [r1, #4]
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A464:
|
|
cmp r0, #1
|
|
bne _0238A604
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0x21
|
|
ldr r1, [r0]
|
|
mov r0, #0x23
|
|
str r2, [r1, #4]
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A488:
|
|
bl sub_02039218
|
|
cmp r0, #0
|
|
beq _0238A604
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #4]
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A4A8:
|
|
ldr r1, [r2, #0xc]
|
|
add r1, r1, #1
|
|
str r1, [r2, #0xc]
|
|
ldr r1, [r0]
|
|
ldr r0, [r1, #0xc]
|
|
cmp r0, #1
|
|
beq _0238A4D8
|
|
cmp r0, #2
|
|
beq _0238A604
|
|
cmp r0, #3
|
|
beq _0238A4FC
|
|
b _0238A604
|
|
_0238A4D8:
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8e]
|
|
bl sub_0202836C
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8e]
|
|
bl CloseCollectionMenu
|
|
b _0238A604
|
|
_0238A4FC:
|
|
ldr r0, [r1, #8]
|
|
bl ov24_0238A610
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
str r1, [r0, #0xc]
|
|
b _0238A604
|
|
_0238A518:
|
|
add r0, r2, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl IsDialogueBoxActive
|
|
cmp r0, #0
|
|
bne _0238A604
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl CloseDialogueBox
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mvn r2, #1
|
|
ldr r1, [r0]
|
|
mov r0, #0x18
|
|
strb r2, [r1, #0x28c]
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A55C:
|
|
bl sub_0203D538
|
|
mvn r1, #0
|
|
cmp r0, r1
|
|
beq _0238A578
|
|
cmp r0, #1
|
|
beq _0238A588
|
|
b _0238A604
|
|
_0238A578:
|
|
bl sub_0203EFD4
|
|
mov r0, #4
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A588:
|
|
bl sub_0203EFD4
|
|
mov r0, #4
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A598:
|
|
ldr r1, [r2, #0xc]
|
|
sub r0, r1, #1
|
|
str r0, [r2, #0xc]
|
|
cmp r1, #0
|
|
bne _0238A604
|
|
mov r0, #0x1f
|
|
bl ov24_0238A610
|
|
b _0238A604
|
|
_0238A5B8:
|
|
bl ov11_0230D220
|
|
cmp r0, #0
|
|
bne _0238A604
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl IsDialogueBoxActive
|
|
cmp r0, #0
|
|
bne _0238A604
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl ShowDialogueBox
|
|
ldr r0, _0238A60C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #8]
|
|
bl ov24_0238A610
|
|
_0238A604:
|
|
mov r0, #0
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238A60C: .word OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
arm_func_end ov24_0238A140
|
|
|
|
arm_func_start ov24_0238A610
|
|
ov24_0238A610: ; 0x0238A610
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0x1c
|
|
ldr r1, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r3, _0238B388 ; =ov24_0238C50A
|
|
ldr r1, [r1]
|
|
add r2, sp, #8
|
|
str r0, [r1]
|
|
mov r1, #4
|
|
_0238A630:
|
|
ldrh r0, [r3], #2
|
|
subs r1, r1, #1
|
|
strh r0, [r2], #2
|
|
bne _0238A630
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
ldr r2, [r1]
|
|
cmp r2, #0x26
|
|
addls pc, pc, r2, lsl #2
|
|
b _0238B37C
|
|
_0238A658: ; jump table
|
|
b _0238A6F4 ; case 0
|
|
b _0238A82C ; case 1
|
|
b _0238A890 ; case 2
|
|
b _0238A900 ; case 3
|
|
b _0238B37C ; case 4
|
|
b _0238A964 ; case 5
|
|
b _0238A9E0 ; case 6
|
|
b _0238AA5C ; case 7
|
|
b _0238AAD8 ; case 8
|
|
b _0238AB50 ; case 9
|
|
b _0238ACE0 ; case 10
|
|
b _0238B37C ; case 11
|
|
b _0238B37C ; case 12
|
|
b _0238B37C ; case 13
|
|
b _0238AC80 ; case 14
|
|
b _0238B114 ; case 15
|
|
b _0238B170 ; case 16
|
|
b _0238ABE0 ; case 17
|
|
b _0238ABF8 ; case 18
|
|
b _0238AE60 ; case 19
|
|
b _0238ADB8 ; case 20
|
|
b _0238AF00 ; case 21
|
|
b _0238AECC ; case 22
|
|
b _0238B0A8 ; case 23
|
|
b _0238B0CC ; case 24
|
|
b _0238B37C ; case 25
|
|
b _0238A800 ; case 26
|
|
b _0238B37C ; case 27
|
|
b _0238B37C ; case 28
|
|
b _0238AD90 ; case 29
|
|
b _0238B37C ; case 30
|
|
b _0238B284 ; case 31
|
|
b _0238B2D4 ; case 32
|
|
b _0238B310 ; case 33
|
|
b _0238B32C ; case 34
|
|
b _0238B37C ; case 35
|
|
b _0238B37C ; case 36
|
|
b _0238B338 ; case 37
|
|
b _0238B278 ; case 38
|
|
_0238A6F4:
|
|
mov r0, #0
|
|
strb r0, [r1, #0x1f0]
|
|
bl CreateDialogueBox
|
|
ldr r2, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #3
|
|
ldr r3, [r2]
|
|
mov r2, #1
|
|
strb r0, [r3, #0x28c]
|
|
mov r0, #0
|
|
bl CreatePortraitBox
|
|
ldr r2, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0x71
|
|
ldr r3, [r2]
|
|
strb r0, [r3, #0x28d]
|
|
ldr r0, [r2]
|
|
add r0, r0, #0x294
|
|
bl InitPortraitParamsWithMonsterId
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x294
|
|
bl SetPortraitLayout
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r3, [r0]
|
|
ldrb r0, [r3, #0x21]
|
|
cmp r0, #0
|
|
bne _0238A7E4
|
|
ldrb r0, [r3, #0x20]
|
|
ldr r1, _0238B38C ; =0x00003018
|
|
cmp r0, #0
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bne _0238A7B8
|
|
ldr r2, _0238B390 ; =0x0000038A
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238A7C4
|
|
_0238A7B8:
|
|
ldr r2, _0238B394 ; =0x0000038B
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
_0238A7C4:
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r3, #4
|
|
ldr r2, [r0]
|
|
mov r1, #0x19
|
|
str r3, [r2, #8]
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0238B37C
|
|
_0238A7E4:
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
ldr r1, _0238B398 ; =0x00003008
|
|
ldr r2, _0238B39C ; =0x0000038F
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238A800:
|
|
ldr r0, _0238B3A0 ; =DAYCARE_WINDOW_PARAMS_4
|
|
mov r4, #4
|
|
ldr r1, _0238B3A4 ; =0x00300013
|
|
ldr r3, _0238B3A8 ; =DAYCARE_MAIN_MENU_ITEMS
|
|
mov r2, #0
|
|
str r4, [sp]
|
|
bl CreateSimpleMenuFromStringIds
|
|
ldr r1, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #0x28f]
|
|
b _0238B37C
|
|
_0238A82C:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238B398 ; =0x00003008
|
|
ldr r3, [r0]
|
|
ldr r2, _0238B39C ; =0x0000038F
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238A890:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r3, #1
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1, #8]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238B38C ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238B3AC ; =0x00000391
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238A900:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #4
|
|
ldr r1, [r0]
|
|
str r2, [r1, #8]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238B38C ; =0x00003018
|
|
ldr r3, [r0]
|
|
#ifdef JAPAN
|
|
add r2, r1, #0x25c
|
|
#else
|
|
mov r2, #0x390
|
|
#endif
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238A964:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238B3B0 ; =0x0000220F
|
|
ldr r1, [r0]
|
|
mov r3, #8
|
|
str r2, [r1, #0x21c]
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1, #8]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238B38C ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238B3B4 ; =0x00000392
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238A9E0:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238B3B0 ; =0x0000220F
|
|
ldr r1, [r0]
|
|
mov r3, #8
|
|
str r2, [r1, #0x21c]
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1, #8]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238B38C ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238B3B4 ; =0x00000392
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238AA5C:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238B3B0 ; =0x0000220F
|
|
ldr r1, [r0]
|
|
mov r3, #8
|
|
str r2, [r1, #0x21c]
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1, #8]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238B38C ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238B3B4 ; =0x00000392
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238AAD8:
|
|
ldr r0, _0238B3B0 ; =0x0000220F
|
|
bl sub_02017CB4
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r3, #1
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1, #8]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238B38C ; =0x00003018
|
|
ldr r3, [r0]
|
|
#ifdef JAPAN
|
|
add r2, r1, #0x264
|
|
#else
|
|
mov r2, #0x398
|
|
#endif
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238AB50:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0xa
|
|
ldr r1, [r0]
|
|
mov r3, #0
|
|
str r2, [r1, #8]
|
|
ldr r1, [r0]
|
|
ldr r2, _0238B3B0 ; =0x0000220F
|
|
strb r3, [r1, #0x1f0]
|
|
ldr r1, [r0]
|
|
str r2, [r1, #0x21c]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
bl sub_0201077C
|
|
ldr r1, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r1]
|
|
str r0, [r1, #0x1f8]
|
|
bl IncrementNbEggsHatched
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238B38C ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238B3B8 ; =0x00000393
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238ABE0:
|
|
mov r2, #0x12
|
|
str r2, [r1, #8]
|
|
ldr r0, [r0]
|
|
mov r1, #0x14
|
|
str r1, [r0, #0x2a4]
|
|
b _0238B37C
|
|
_0238ABF8:
|
|
ldr r2, [r1, #0x2a4]
|
|
sub r2, r2, #1
|
|
str r2, [r1, #0x2a4]
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #0x2a4]
|
|
cmp r0, #0
|
|
bgt _0238B37C
|
|
mov r0, #3
|
|
bl sub_02017C10
|
|
cmp r0, #0
|
|
bne _0238AC2C
|
|
mov r0, #3
|
|
bl sub_02017C50
|
|
_0238AC2C:
|
|
ldr r1, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #4
|
|
ldr r0, [r1]
|
|
mov r3, #0x1b
|
|
str r2, [r0, #8]
|
|
ldr r2, [r1]
|
|
mov r0, #0
|
|
str r3, [r2]
|
|
ldr r2, [r1]
|
|
add r1, r2, #0x52
|
|
str r1, [r2, #0x230]
|
|
bl sub_02010794
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238B3BC ; =0x00000397
|
|
ldr r3, [r0]
|
|
mov r1, #0x1c
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238AC80:
|
|
mov r2, #0x1b
|
|
str r2, [r1]
|
|
ldr r1, [r0]
|
|
mov r2, #0x1d
|
|
str r2, [r1, #8]
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl HidePortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238B3C0 ; =0x00000396
|
|
ldr r4, [r0]
|
|
mov r1, #4
|
|
add r3, r4, #0x66
|
|
str r3, [r4, #0x230]
|
|
ldr r4, [r0]
|
|
ldrsh r3, [r4, #0x14]
|
|
str r3, [r4, #0x20c]
|
|
ldr r3, [r0]
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238ACE0:
|
|
ldr r0, _0238B3B0 ; =0x0000220F
|
|
bl sub_02017CB4
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238B3C4 ; =0x00000715
|
|
ldr r1, [r0]
|
|
mov r3, #5
|
|
str r2, [r1, #0x21c]
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1, #0x220]
|
|
ldr r3, [r0]
|
|
add r1, r3, #0x52
|
|
str r1, [r3, #0x230]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r3, #0x1b
|
|
ldr r1, [r0]
|
|
mov r2, #0xe
|
|
str r3, [r1]
|
|
ldr r1, [r0]
|
|
str r2, [r1, #8]
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238B38C ; =0x00003018
|
|
ldr r4, [r0]
|
|
ldr r2, _0238B3C8 ; =0x00000395
|
|
ldrsh r3, [r4, #0x14]
|
|
str r3, [r4, #0x20c]
|
|
ldr r3, [r0]
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238AD90:
|
|
mov r0, #0
|
|
ldr r3, _0238B3CC ; =DAYCARE_MENU_ITEMS_CONFIRM
|
|
mov r2, r0
|
|
mov r1, #0x11
|
|
str r0, [sp]
|
|
bl CreateSimpleMenuFromStringIds
|
|
ldr r1, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #0x28f]
|
|
b _0238B37C
|
|
_0238ADB8:
|
|
add r0, r1, #0x1bc
|
|
bl sub_0206351C
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0x71
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x100
|
|
strh r1, [r0, #0xbc]
|
|
bl sub_0201077C
|
|
ldr r2, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r4, #6
|
|
ldr r1, [r2]
|
|
mov r3, #0
|
|
add r1, r1, #0x100
|
|
strh r0, [r1, #0xe0]
|
|
ldr r0, [r2]
|
|
strb r4, [r0, #0x1be]
|
|
ldr r0, [r2]
|
|
str r3, [r0, #0x1c4]
|
|
bl sub_0201077C
|
|
mov r1, r0
|
|
add r0, sp, #8
|
|
mov r2, #1
|
|
mov r3, #0
|
|
bl sub_02053B60
|
|
bl sub_0201077C
|
|
add r2, sp, #8
|
|
mov r1, r0
|
|
mov r0, #1
|
|
str r2, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r3, _0238B3D0 ; =OVERLAY24_UNKNOWN_STRUCT__NA_238C508
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x248
|
|
add r2, r2, #0x42
|
|
bl sub_02052F8C
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x248
|
|
bl ov11_023061E4
|
|
b _0238B37C
|
|
_0238AE60:
|
|
mov r0, #0
|
|
bl GetFirstEmptyMemberIdx
|
|
mvn r1, #0
|
|
cmp r0, r1
|
|
bne _0238AEB4
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl sub_0202F2C4
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl HidePortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0x14
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
bl ov24_0238B3F8
|
|
b _0238B37C
|
|
_0238AEB4:
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0xf
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
bl ov24_0238B3F8
|
|
b _0238B37C
|
|
_0238AECC:
|
|
mov r2, #0x17
|
|
str r2, [r1, #8]
|
|
ldr r1, [r0]
|
|
mov r2, #0x1b
|
|
str r2, [r1]
|
|
ldr r3, [r0]
|
|
ldr r1, _0238B38C ; =0x00003018
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
ldr r2, _0238B3D4 ; =0x000003A2
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238AF00:
|
|
bl Rand16Bit
|
|
mov r1, #0x64
|
|
bl _s32_div_f
|
|
ldr r0, _0238B3D8 ; =_020A1868
|
|
ldrsh r0, [r0]
|
|
cmp r1, r0
|
|
bge _0238B094
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
ldrsh r0, [r1, #0x16]
|
|
cmp r0, #0
|
|
moveq r0, #4
|
|
streq r0, [r1]
|
|
beq _0238B37C
|
|
bl ov24_0238C4CC
|
|
bl IsBagFull
|
|
cmp r0, #0
|
|
beq _0238AFC0
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0x16
|
|
ldr r1, [r0]
|
|
mov r3, #0x1b
|
|
str r2, [r1, #8]
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238B38C ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238B3DC ; =0x000003A1
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238AFC0:
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238B38C ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238B3DC ; =0x000003A1
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r3, #0x25
|
|
ldr r2, [r0]
|
|
mov r1, #0
|
|
str r3, [r2, #8]
|
|
ldr r2, [r0]
|
|
add r0, sp, #0x10
|
|
ldrsh r2, [r2, #0x16]
|
|
strh r2, [sp, #0x10]
|
|
strh r1, [sp, #0x12]
|
|
bl SpecialProcAddItemToBag
|
|
mov r0, #0
|
|
strb r0, [sp, #0x14]
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldrsh r2, [sp, #0x10]
|
|
ldrh r1, [sp, #0x12]
|
|
ldr r0, [r0]
|
|
strh r2, [sp, #0x18]
|
|
add r0, r0, #0x7a
|
|
strh r1, [sp, #0x16]
|
|
ldr r2, _0238B3E0 ; =OVERLAY24_UNKNOWN_STRUCT__NA_238C514
|
|
add r1, sp, #0x14
|
|
add r0, r0, #0x100
|
|
bl sub_0200D670
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x7a
|
|
add r0, r0, #0x100
|
|
str r0, [r1, #0x230]
|
|
b _0238B37C
|
|
_0238B094:
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #4
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0238B37C
|
|
_0238B0A8:
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl sub_0202F2C4
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl HidePortraitBox
|
|
b _0238B37C
|
|
_0238B0CC:
|
|
add r0, r1, #0x1bc
|
|
bl sub_0206351C
|
|
ldr r3, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #1
|
|
ldr r0, [r3]
|
|
mov r1, #0
|
|
str r2, [r0, #0x1c8]
|
|
ldr r0, [r3]
|
|
mov r2, r1
|
|
str r1, [r0, #0x1e4]
|
|
ldr r0, [r3]
|
|
ldrsh r4, [r0, #0x16]
|
|
add r0, r0, #0x100
|
|
strh r4, [r0, #0xd0]
|
|
ldr r0, [r3]
|
|
add r0, r0, #0x1bc
|
|
bl sub_0203D438
|
|
b _0238B37C
|
|
_0238B114:
|
|
bl sub_0201077C
|
|
mov r1, r0
|
|
add r0, sp, #8
|
|
mov r2, #1
|
|
mov r3, #0
|
|
bl sub_02053B60
|
|
bl sub_0201077C
|
|
mov r2, #1
|
|
str r2, [sp]
|
|
ldr r1, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238B3D0 ; =OVERLAY24_UNKNOWN_STRUCT__NA_238C508
|
|
ldr r1, [r1]
|
|
add r3, sp, #8
|
|
add r1, r1, #0x42
|
|
bl sub_02055DD0
|
|
ldr r1, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0x26
|
|
ldr r3, [r1]
|
|
str r0, [r3, #0x1e8]
|
|
ldr r0, [r1]
|
|
str r2, [r0]
|
|
bl ov24_0238B3F8
|
|
b _0238B37C
|
|
_0238B170:
|
|
ldr r0, [r1, #0x1e8]
|
|
add r1, r1, #0x42
|
|
add r0, r0, #0x3a
|
|
mov r2, #0xa
|
|
bl StrncpySimple
|
|
ldr r2, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, _0238B3E4 ; =EGG_HP_BONUS
|
|
ldr r1, [r2]
|
|
ldrsh r3, [r0]
|
|
ldr lr, [r1, #0x1e8]
|
|
ldr r1, _0238B3E8 ; =EGG_STAT_BONUSES
|
|
ldrsh r4, [lr, #0xa]
|
|
ldr r0, _0238B3EC ; =_020A18E0
|
|
ldrsh ip, [r1]
|
|
add r3, r4, r3
|
|
strh r3, [lr, #0xa]
|
|
ldr r4, [r2]
|
|
ldrsh r3, [r1, #2]
|
|
ldr r4, [r4, #0x1e8]
|
|
ldrsh r1, [r0]
|
|
ldrb lr, [r4, #0xc]
|
|
ldrsh r0, [r0, #2]
|
|
add ip, lr, ip
|
|
strb ip, [r4, #0xc]
|
|
ldr ip, [r2]
|
|
ldr lr, [ip, #0x1e8]
|
|
ldrb ip, [lr, #0xd]
|
|
add r3, ip, r3
|
|
strb r3, [lr, #0xd]
|
|
ldr r3, [r2]
|
|
ldr ip, [r3, #0x1e8]
|
|
ldrb r3, [ip, #0xe]
|
|
add r1, r3, r1
|
|
strb r1, [ip, #0xe]
|
|
ldr r1, [r2]
|
|
ldr r2, [r1, #0x1e8]
|
|
ldrb r1, [r2, #0xf]
|
|
add r0, r1, r0
|
|
strb r0, [r2, #0xf]
|
|
bl sub_0201077C
|
|
bl SetPokemonJoined
|
|
ldr r1, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r0, #0
|
|
ldr r2, [r1]
|
|
add r1, r2, #0x22
|
|
str r1, [r2, #0x230]
|
|
bl sub_02010794
|
|
mov r3, #0x15
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0x1b
|
|
ldr r2, [r0]
|
|
str r3, [r2, #8]
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
bl ov24_0238C4CC
|
|
mov r0, #5
|
|
bl sub_02017C50
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0x1c
|
|
ldr r3, [r0]
|
|
ldr r2, _0238B3F0 ; =0x00000399
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238B278:
|
|
mov r0, #0xa
|
|
str r0, [r1, #0xc]
|
|
b _0238B37C
|
|
_0238B284:
|
|
mov r0, #0x20
|
|
str r0, [r1, #8]
|
|
bl ov11_02310BDC
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl HidePortraitBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238B3F4 ; =0x000003A3
|
|
ldr ip, [r0]
|
|
mov r1, #0x1c
|
|
add r3, ip, #0x66
|
|
str r3, [ip, #0x230]
|
|
ldr r3, [r0]
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B37C
|
|
_0238B2D4:
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl CloseDialogueBox
|
|
ldr r1, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mvn r3, #1
|
|
ldr r2, [r1]
|
|
mov r0, #2
|
|
strb r3, [r2, #0x28c]
|
|
ldr r1, [r1]
|
|
mov r2, #0
|
|
add r3, r1, #0x66
|
|
add r1, r1, #0x42
|
|
add r3, r3, #0x100
|
|
bl ShowKeyboard
|
|
b _0238B37C
|
|
_0238B310:
|
|
add r0, r1, #0x66
|
|
add r1, r1, #0x42
|
|
add r3, r0, #0x100
|
|
mov r0, #2
|
|
mov r2, #0
|
|
bl ShowKeyboard
|
|
b _0238B37C
|
|
_0238B32C:
|
|
add r0, r1, #0x22
|
|
bl sub_0203909C
|
|
b _0238B37C
|
|
_0238B338:
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl HidePortraitBox
|
|
mov r0, #4
|
|
bl sub_02017C50
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
#ifdef JAPAN
|
|
ldr r2, _0238C958 ; =0x00002448
|
|
ldr r3, [r0]
|
|
mov r1, #0x18
|
|
#else
|
|
mov r1, #0x18
|
|
ldr r3, [r0]
|
|
mov r2, #0x274
|
|
#endif
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
ldr r0, _0238B384 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #4
|
|
ldr r0, [r0]
|
|
str r1, [r0, #8]
|
|
_0238B37C:
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
#ifdef JAPAN
|
|
#define OV24_0238A610_OFFSET 0x2EE4
|
|
#else
|
|
#define OV24_0238A610_OFFSET 0
|
|
#endif
|
|
_0238B384: .word OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
_0238B388: .word ov24_0238C50A
|
|
_0238B38C: .word 0x00003018
|
|
_0238B390: .word 0x0000038A + OV24_0238A610_OFFSET
|
|
_0238B394: .word 0x0000038B + OV24_0238A610_OFFSET
|
|
_0238B398: .word 0x00003008
|
|
_0238B39C: .word 0x0000038F + OV24_0238A610_OFFSET
|
|
_0238B3A0: .word DAYCARE_WINDOW_PARAMS_4
|
|
_0238B3A4: .word 0x00300013
|
|
_0238B3A8: .word DAYCARE_MAIN_MENU_ITEMS
|
|
_0238B3AC: .word 0x00000391 + OV24_0238A610_OFFSET
|
|
_0238B3B0: .word 0x0000220F
|
|
_0238B3B4: .word 0x00000392 + OV24_0238A610_OFFSET
|
|
_0238B3B8: .word 0x00000393 + OV24_0238A610_OFFSET
|
|
_0238B3BC: .word 0x00000397 + OV24_0238A610_OFFSET
|
|
_0238B3C0: .word 0x00000396 + OV24_0238A610_OFFSET
|
|
_0238B3C4: .word 0x00000715
|
|
_0238B3C8: .word 0x00000395 + OV24_0238A610_OFFSET
|
|
_0238B3CC: .word DAYCARE_MENU_ITEMS_CONFIRM
|
|
_0238B3D0: .word OVERLAY24_UNKNOWN_STRUCT__NA_238C508
|
|
_0238B3D4: .word 0x000003A2 + OV24_0238A610_OFFSET
|
|
_0238B3D8: .word _020A1868
|
|
_0238B3DC: .word 0x000003A1 + OV24_0238A610_OFFSET
|
|
_0238B3E0: .word OVERLAY24_UNKNOWN_STRUCT__NA_238C514
|
|
_0238B3E4: .word EGG_HP_BONUS
|
|
_0238B3E8: .word EGG_STAT_BONUSES
|
|
_0238B3EC: .word _020A18E0
|
|
_0238B3F0: .word 0x00000399 + OV24_0238A610_OFFSET
|
|
_0238B3F4: .word 0x000003A3 + OV24_0238A610_OFFSET
|
|
#ifdef JAPAN
|
|
_0238C958: .word 0x00002448
|
|
#endif
|
|
arm_func_end ov24_0238A610
|
|
|
|
arm_func_start ov24_0238B3F8
|
|
ov24_0238B3F8: ; 0x0238B3F8
|
|
stmdb sp!, {r3, r4, lr}
|
|
sub sp, sp, #0x1c
|
|
ldr r3, _0238C160 ; =ov24_0238C50A
|
|
add r2, sp, #0x12
|
|
mov r1, #4
|
|
_0238B40C:
|
|
ldrh r0, [r3], #2
|
|
subs r1, r1, #1
|
|
strh r0, [r2], #2
|
|
bne _0238B40C
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
ldr r2, [r1]
|
|
cmp r2, #0x26
|
|
addls pc, pc, r2, lsl #2
|
|
b _0238C158
|
|
_0238B434: ; jump table
|
|
b _0238B4D0 ; case 0
|
|
b _0238B608 ; case 1
|
|
b _0238B66C ; case 2
|
|
b _0238B6DC ; case 3
|
|
b _0238C158 ; case 4
|
|
b _0238B740 ; case 5
|
|
b _0238B7BC ; case 6
|
|
b _0238B838 ; case 7
|
|
b _0238B8B4 ; case 8
|
|
b _0238B92C ; case 9
|
|
b _0238BABC ; case 10
|
|
b _0238C158 ; case 11
|
|
b _0238C158 ; case 12
|
|
b _0238C158 ; case 13
|
|
b _0238BA5C ; case 14
|
|
b _0238BEF0 ; case 15
|
|
b _0238BF4C ; case 16
|
|
b _0238B9BC ; case 17
|
|
b _0238B9D4 ; case 18
|
|
b _0238BC3C ; case 19
|
|
b _0238BB94 ; case 20
|
|
b _0238BCDC ; case 21
|
|
b _0238BCA8 ; case 22
|
|
b _0238BE84 ; case 23
|
|
b _0238BEA8 ; case 24
|
|
b _0238C158 ; case 25
|
|
b _0238B5DC ; case 26
|
|
b _0238C158 ; case 27
|
|
b _0238C158 ; case 28
|
|
b _0238BB6C ; case 29
|
|
b _0238C158 ; case 30
|
|
b _0238C060 ; case 31
|
|
b _0238C0B0 ; case 32
|
|
b _0238C0EC ; case 33
|
|
b _0238C108 ; case 34
|
|
b _0238C158 ; case 35
|
|
b _0238C158 ; case 36
|
|
b _0238C114 ; case 37
|
|
b _0238C054 ; case 38
|
|
_0238B4D0:
|
|
mov r0, #0
|
|
strb r0, [r1, #0x1f0]
|
|
bl CreateDialogueBox
|
|
ldr r2, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #3
|
|
ldr r3, [r2]
|
|
mov r2, #1
|
|
strb r0, [r3, #0x28c]
|
|
mov r0, #0
|
|
bl CreatePortraitBox
|
|
ldr r2, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0x71
|
|
ldr r3, [r2]
|
|
strb r0, [r3, #0x28d]
|
|
ldr r0, [r2]
|
|
add r0, r0, #0x294
|
|
bl InitPortraitParamsWithMonsterId
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x294
|
|
bl SetPortraitLayout
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r3, [r0]
|
|
ldrb r0, [r3, #0x21]
|
|
cmp r0, #0
|
|
bne _0238B5C0
|
|
ldrb r0, [r3, #0x20]
|
|
ldr r1, _0238C168 ; =0x00003018
|
|
cmp r0, #0
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bne _0238B594
|
|
ldr r2, _0238C16C ; =0x0000038A
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238B5A0
|
|
_0238B594:
|
|
ldr r2, _0238C170 ; =0x0000038B
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
_0238B5A0:
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r3, #4
|
|
ldr r2, [r0]
|
|
mov r1, #0x19
|
|
str r3, [r2, #8]
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0238C158
|
|
_0238B5C0:
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
ldr r1, _0238C174 ; =0x00003008
|
|
ldr r2, _0238C178 ; =0x0000038F
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238B5DC:
|
|
ldr r0, _0238C17C ; =DAYCARE_WINDOW_PARAMS_4
|
|
mov r4, #4
|
|
ldr r1, _0238C180 ; =0x00300013
|
|
ldr r3, _0238C184 ; =DAYCARE_MAIN_MENU_ITEMS
|
|
mov r2, #0
|
|
str r4, [sp]
|
|
bl CreateSimpleMenuFromStringIds
|
|
ldr r1, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #0x28f]
|
|
b _0238C158
|
|
_0238B608:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238C174 ; =0x00003008
|
|
ldr r3, [r0]
|
|
ldr r2, _0238C178 ; =0x0000038F
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238B66C:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r3, #1
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1, #8]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238C168 ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238C188 ; =0x00000391
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238B6DC:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #4
|
|
ldr r1, [r0]
|
|
str r2, [r1, #8]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238C168 ; =0x00003018
|
|
ldr r3, [r0]
|
|
#ifdef JAPAN
|
|
add r2, r1, #0x25c
|
|
#else
|
|
mov r2, #0x390
|
|
#endif
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238B740:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238C18C ; =0x0000220F
|
|
ldr r1, [r0]
|
|
mov r3, #8
|
|
str r2, [r1, #0x21c]
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1, #8]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238C168 ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238C190 ; =0x00000392
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238B7BC:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238C18C ; =0x0000220F
|
|
ldr r1, [r0]
|
|
mov r3, #8
|
|
str r2, [r1, #0x21c]
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1, #8]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238C168 ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238C190 ; =0x00000392
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238B838:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238C18C ; =0x0000220F
|
|
ldr r1, [r0]
|
|
mov r3, #8
|
|
str r2, [r1, #0x21c]
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1, #8]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238C168 ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238C190 ; =0x00000392
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238B8B4:
|
|
ldr r0, _0238C18C ; =0x0000220F
|
|
bl sub_02017CB4
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r3, #1
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1, #8]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238C168 ; =0x00003018
|
|
ldr r3, [r0]
|
|
#ifdef JAPAN
|
|
add r2, r1, #0x264
|
|
#else
|
|
mov r2, #0x398
|
|
#endif
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238B92C:
|
|
bl ov24_0238C47C
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0xa
|
|
ldr r1, [r0]
|
|
mov r3, #0
|
|
str r2, [r1, #8]
|
|
ldr r1, [r0]
|
|
ldr r2, _0238C18C ; =0x0000220F
|
|
strb r3, [r1, #0x1f0]
|
|
ldr r1, [r0]
|
|
str r2, [r1, #0x21c]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
bl sub_0201077C
|
|
ldr r1, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r1]
|
|
str r0, [r1, #0x1f8]
|
|
bl IncrementNbEggsHatched
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238C168 ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238C194 ; =0x00000393
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238B9BC:
|
|
mov r2, #0x12
|
|
str r2, [r1, #8]
|
|
ldr r0, [r0]
|
|
mov r1, #0x14
|
|
str r1, [r0, #0x2a4]
|
|
b _0238C158
|
|
_0238B9D4:
|
|
ldr r2, [r1, #0x2a4]
|
|
sub r2, r2, #1
|
|
str r2, [r1, #0x2a4]
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, #0x2a4]
|
|
cmp r0, #0
|
|
bgt _0238C158
|
|
mov r0, #3
|
|
bl sub_02017C10
|
|
cmp r0, #0
|
|
bne _0238BA08
|
|
mov r0, #3
|
|
bl sub_02017C50
|
|
_0238BA08:
|
|
ldr r1, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #4
|
|
ldr r0, [r1]
|
|
mov r3, #0x1b
|
|
str r2, [r0, #8]
|
|
ldr r2, [r1]
|
|
mov r0, #0
|
|
str r3, [r2]
|
|
ldr r2, [r1]
|
|
add r1, r2, #0x52
|
|
str r1, [r2, #0x230]
|
|
bl sub_02010794
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238C198 ; =0x00000397
|
|
ldr r3, [r0]
|
|
mov r1, #0x1c
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238BA5C:
|
|
mov r2, #0x1b
|
|
str r2, [r1]
|
|
ldr r1, [r0]
|
|
mov r2, #0x1d
|
|
str r2, [r1, #8]
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl HidePortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238C19C ; =0x00000396
|
|
ldr r4, [r0]
|
|
mov r1, #4
|
|
add r3, r4, #0x66
|
|
str r3, [r4, #0x230]
|
|
ldr r4, [r0]
|
|
ldrsh r3, [r4, #0x14]
|
|
str r3, [r4, #0x20c]
|
|
ldr r3, [r0]
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238BABC:
|
|
ldr r0, _0238C18C ; =0x0000220F
|
|
bl sub_02017CB4
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238C1A0 ; =0x00000715
|
|
ldr r1, [r0]
|
|
mov r3, #5
|
|
str r2, [r1, #0x21c]
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1, #0x220]
|
|
ldr r3, [r0]
|
|
add r1, r3, #0x52
|
|
str r1, [r3, #0x230]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r3, #0x1b
|
|
ldr r1, [r0]
|
|
mov r2, #0xe
|
|
str r3, [r1]
|
|
ldr r1, [r0]
|
|
str r2, [r1, #8]
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238C168 ; =0x00003018
|
|
ldr r4, [r0]
|
|
ldr r2, _0238C1A4 ; =0x00000395
|
|
ldrsh r3, [r4, #0x14]
|
|
str r3, [r4, #0x20c]
|
|
ldr r3, [r0]
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238BB6C:
|
|
mov r0, #0
|
|
ldr r3, _0238C1A8 ; =DAYCARE_MENU_ITEMS_CONFIRM
|
|
mov r2, r0
|
|
mov r1, #0x11
|
|
str r0, [sp]
|
|
bl CreateSimpleMenuFromStringIds
|
|
ldr r1, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #0x28f]
|
|
b _0238C158
|
|
_0238BB94:
|
|
add r0, r1, #0x1bc
|
|
bl sub_0206351C
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0x71
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x100
|
|
strh r1, [r0, #0xbc]
|
|
bl sub_0201077C
|
|
ldr r2, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r4, #6
|
|
ldr r1, [r2]
|
|
mov r3, #0
|
|
add r1, r1, #0x100
|
|
strh r0, [r1, #0xe0]
|
|
ldr r0, [r2]
|
|
strb r4, [r0, #0x1be]
|
|
ldr r0, [r2]
|
|
str r3, [r0, #0x1c4]
|
|
bl sub_0201077C
|
|
mov r1, r0
|
|
add r0, sp, #0x12
|
|
mov r2, #1
|
|
mov r3, #0
|
|
bl sub_02053B60
|
|
bl sub_0201077C
|
|
add r2, sp, #0x12
|
|
mov r1, r0
|
|
mov r0, #1
|
|
str r2, [sp]
|
|
str r0, [sp, #4]
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r3, _0238C1AC ; =OVERLAY24_UNKNOWN_STRUCT__NA_238C508
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x248
|
|
add r2, r2, #0x42
|
|
bl sub_02052F8C
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #1
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x248
|
|
bl ov11_023061E4
|
|
b _0238C158
|
|
_0238BC3C:
|
|
mov r0, #0
|
|
bl GetFirstEmptyMemberIdx
|
|
mvn r1, #0
|
|
cmp r0, r1
|
|
bne _0238BC90
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl sub_0202F2C4
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl HidePortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0x14
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
bl ov24_0238B3F8
|
|
b _0238C158
|
|
_0238BC90:
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0xf
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
bl ov24_0238B3F8
|
|
b _0238C158
|
|
_0238BCA8:
|
|
mov r2, #0x17
|
|
str r2, [r1, #8]
|
|
ldr r1, [r0]
|
|
mov r2, #0x1b
|
|
str r2, [r1]
|
|
ldr r3, [r0]
|
|
ldr r1, _0238C168 ; =0x00003018
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
ldr r2, _0238C1B0 ; =0x000003A2
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238BCDC:
|
|
bl Rand16Bit
|
|
mov r1, #0x64
|
|
bl _s32_div_f
|
|
ldr r0, _0238C1B4 ; =_020A1868
|
|
ldrsh r0, [r0]
|
|
cmp r1, r0
|
|
bge _0238BE70
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
ldrsh r0, [r1, #0x16]
|
|
cmp r0, #0
|
|
moveq r0, #4
|
|
streq r0, [r1]
|
|
beq _0238C158
|
|
bl ov24_0238C4CC
|
|
bl IsBagFull
|
|
cmp r0, #0
|
|
beq _0238BD9C
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0x16
|
|
ldr r1, [r0]
|
|
mov r3, #0x1b
|
|
str r2, [r1, #8]
|
|
ldr r1, [r0]
|
|
mov r2, #0
|
|
str r3, [r1]
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238C168 ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238C1B8 ; =0x000003A1
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238BD9C:
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0
|
|
ldr r1, [r0]
|
|
strb r2, [r1, #0x1f0]
|
|
ldr r2, [r0]
|
|
add r0, r2, #0x100
|
|
ldrsb r1, [r0, #0xf0]
|
|
add r0, r2, #0x294
|
|
bl SetPortraitEmotion
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
add r1, r1, #0x294
|
|
bl ShowPortraitInPortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, _0238C168 ; =0x00003018
|
|
ldr r3, [r0]
|
|
ldr r2, _0238C1B8 ; =0x000003A1
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r3, #0x25
|
|
ldr r2, [r0]
|
|
mov r1, #0
|
|
str r3, [r2, #8]
|
|
ldr r2, [r0]
|
|
add r0, sp, #0xe
|
|
ldrsh r2, [r2, #0x16]
|
|
strh r2, [sp, #0xe]
|
|
strh r1, [sp, #0x10]
|
|
bl SpecialProcAddItemToBag
|
|
mov r0, #0
|
|
strb r0, [sp, #8]
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldrsh r2, [sp, #0xe]
|
|
ldrh r1, [sp, #0x10]
|
|
ldr r0, [r0]
|
|
strh r2, [sp, #0xc]
|
|
add r0, r0, #0x7a
|
|
strh r1, [sp, #0xa]
|
|
ldr r2, _0238C1BC ; =OVERLAY24_UNKNOWN_STRUCT__NA_238C514
|
|
add r1, sp, #8
|
|
add r0, r0, #0x100
|
|
bl sub_0200D670
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x7a
|
|
add r0, r0, #0x100
|
|
str r0, [r1, #0x230]
|
|
b _0238C158
|
|
_0238BE70:
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #4
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
b _0238C158
|
|
_0238BE84:
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl sub_0202F2C4
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl HidePortraitBox
|
|
b _0238C158
|
|
_0238BEA8:
|
|
add r0, r1, #0x1bc
|
|
bl sub_0206351C
|
|
ldr r3, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #1
|
|
ldr r0, [r3]
|
|
mov r1, #0
|
|
str r2, [r0, #0x1c8]
|
|
ldr r0, [r3]
|
|
mov r2, r1
|
|
str r1, [r0, #0x1e4]
|
|
ldr r0, [r3]
|
|
ldrsh r4, [r0, #0x16]
|
|
add r0, r0, #0x100
|
|
strh r4, [r0, #0xd0]
|
|
ldr r0, [r3]
|
|
add r0, r0, #0x1bc
|
|
bl sub_0203D438
|
|
b _0238C158
|
|
_0238BEF0:
|
|
bl sub_0201077C
|
|
mov r1, r0
|
|
add r0, sp, #0x12
|
|
mov r2, #1
|
|
mov r3, #0
|
|
bl sub_02053B60
|
|
bl sub_0201077C
|
|
mov r2, #1
|
|
str r2, [sp]
|
|
ldr r1, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238C1AC ; =OVERLAY24_UNKNOWN_STRUCT__NA_238C508
|
|
ldr r1, [r1]
|
|
add r3, sp, #0x12
|
|
add r1, r1, #0x42
|
|
bl sub_02055DD0
|
|
ldr r1, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0x26
|
|
ldr r3, [r1]
|
|
str r0, [r3, #0x1e8]
|
|
ldr r0, [r1]
|
|
str r2, [r0]
|
|
bl ov24_0238B3F8
|
|
b _0238C158
|
|
_0238BF4C:
|
|
ldr r0, [r1, #0x1e8]
|
|
add r1, r1, #0x42
|
|
add r0, r0, #0x3a
|
|
mov r2, #0xa
|
|
bl StrncpySimple
|
|
ldr r2, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, _0238C1C0 ; =EGG_HP_BONUS
|
|
ldr r1, [r2]
|
|
ldrsh r3, [r0]
|
|
ldr lr, [r1, #0x1e8]
|
|
ldr r1, _0238C1C4 ; =EGG_STAT_BONUSES
|
|
ldrsh r4, [lr, #0xa]
|
|
ldr r0, _0238C1C8 ; =_020A18E0
|
|
ldrsh ip, [r1]
|
|
add r3, r4, r3
|
|
strh r3, [lr, #0xa]
|
|
ldr r4, [r2]
|
|
ldrsh r3, [r1, #2]
|
|
ldr r4, [r4, #0x1e8]
|
|
ldrsh r1, [r0]
|
|
ldrb lr, [r4, #0xc]
|
|
ldrsh r0, [r0, #2]
|
|
add ip, lr, ip
|
|
strb ip, [r4, #0xc]
|
|
ldr ip, [r2]
|
|
ldr lr, [ip, #0x1e8]
|
|
ldrb ip, [lr, #0xd]
|
|
add r3, ip, r3
|
|
strb r3, [lr, #0xd]
|
|
ldr r3, [r2]
|
|
ldr ip, [r3, #0x1e8]
|
|
ldrb r3, [ip, #0xe]
|
|
add r1, r3, r1
|
|
strb r1, [ip, #0xe]
|
|
ldr r1, [r2]
|
|
ldr r2, [r1, #0x1e8]
|
|
ldrb r1, [r2, #0xf]
|
|
add r0, r1, r0
|
|
strb r0, [r2, #0xf]
|
|
bl sub_0201077C
|
|
bl SetPokemonJoined
|
|
ldr r1, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r0, #0
|
|
ldr r2, [r1]
|
|
add r1, r2, #0x22
|
|
str r1, [r2, #0x230]
|
|
bl sub_02010794
|
|
mov r3, #0x15
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0x1b
|
|
ldr r2, [r0]
|
|
str r3, [r2, #8]
|
|
ldr r0, [r0]
|
|
str r1, [r0]
|
|
bl ov24_0238C4CC
|
|
mov r0, #5
|
|
bl sub_02017C50
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0x1c
|
|
ldr r3, [r0]
|
|
ldr r2, _0238C1CC ; =0x00000399
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238C054:
|
|
mov r0, #0xa
|
|
str r0, [r1, #0xc]
|
|
b _0238C158
|
|
_0238C060:
|
|
mov r0, #0x20
|
|
str r0, [r1, #8]
|
|
bl ov11_02310BDC
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl HidePortraitBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, _0238C1D0 ; =0x000003A3
|
|
ldr ip, [r0]
|
|
mov r1, #0x1c
|
|
add r3, ip, #0x66
|
|
str r3, [ip, #0x230]
|
|
ldr r3, [r0]
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
b _0238C158
|
|
_0238C0B0:
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl CloseDialogueBox
|
|
ldr r1, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mvn r3, #1
|
|
ldr r2, [r1]
|
|
mov r0, #2
|
|
strb r3, [r2, #0x28c]
|
|
ldr r1, [r1]
|
|
mov r2, #0
|
|
add r3, r1, #0x66
|
|
add r1, r1, #0x42
|
|
add r3, r3, #0x100
|
|
bl ShowKeyboard
|
|
b _0238C158
|
|
_0238C0EC:
|
|
add r0, r1, #0x66
|
|
add r1, r1, #0x42
|
|
add r3, r0, #0x100
|
|
mov r0, #2
|
|
mov r2, #0
|
|
bl ShowKeyboard
|
|
b _0238C158
|
|
_0238C108:
|
|
add r0, r1, #0x22
|
|
bl sub_0203909C
|
|
b _0238C158
|
|
_0238C114:
|
|
add r0, r1, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl HidePortraitBox
|
|
mov r0, #4
|
|
bl sub_02017C50
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
#ifdef JAPAN
|
|
ldr r2, _0238D738 ; =0x00002448
|
|
ldr r3, [r0]
|
|
mov r1, #0x18
|
|
#else
|
|
mov r1, #0x18
|
|
ldr r3, [r0]
|
|
mov r2, #0x274
|
|
#endif
|
|
add r0, r3, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
add r3, r3, #0x1f8
|
|
bl ShowStringIdInDialogueBox
|
|
ldr r0, _0238C164 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #4
|
|
ldr r0, [r0]
|
|
str r1, [r0, #8]
|
|
_0238C158:
|
|
add sp, sp, #0x1c
|
|
ldmia sp!, {r3, r4, pc}
|
|
.align 2, 0
|
|
#ifdef JAPAN
|
|
#define OV24_0238B3F8_OFFSET 0x2EE4
|
|
#else
|
|
#define OV24_0238B3F8_OFFSET 0
|
|
#endif
|
|
_0238C160: .word ov24_0238C50A
|
|
_0238C164: .word OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
_0238C168: .word 0x00003018
|
|
_0238C16C: .word 0x0000038A + OV24_0238B3F8_OFFSET
|
|
_0238C170: .word 0x0000038B + OV24_0238B3F8_OFFSET
|
|
_0238C174: .word 0x00003008
|
|
_0238C178: .word 0x0000038F + OV24_0238B3F8_OFFSET
|
|
_0238C17C: .word DAYCARE_WINDOW_PARAMS_4
|
|
_0238C180: .word 0x00300013
|
|
_0238C184: .word DAYCARE_MAIN_MENU_ITEMS
|
|
_0238C188: .word 0x00000391 + OV24_0238B3F8_OFFSET
|
|
_0238C18C: .word 0x0000220F
|
|
_0238C190: .word 0x00000392 + OV24_0238B3F8_OFFSET
|
|
_0238C194: .word 0x00000393 + OV24_0238B3F8_OFFSET
|
|
_0238C198: .word 0x00000397 + OV24_0238B3F8_OFFSET
|
|
_0238C19C: .word 0x00000396 + OV24_0238B3F8_OFFSET
|
|
_0238C1A0: .word 0x00000715
|
|
_0238C1A4: .word 0x00000395 + OV24_0238B3F8_OFFSET
|
|
_0238C1A8: .word DAYCARE_MENU_ITEMS_CONFIRM
|
|
_0238C1AC: .word OVERLAY24_UNKNOWN_STRUCT__NA_238C508
|
|
_0238C1B0: .word 0x000003A2 + OV24_0238B3F8_OFFSET
|
|
_0238C1B4: .word _020A1868
|
|
_0238C1B8: .word 0x000003A1 + OV24_0238B3F8_OFFSET
|
|
_0238C1BC: .word OVERLAY24_UNKNOWN_STRUCT__NA_238C514
|
|
_0238C1C0: .word EGG_HP_BONUS
|
|
_0238C1C4: .word EGG_STAT_BONUSES
|
|
_0238C1C8: .word _020A18E0
|
|
_0238C1CC: .word 0x00000399 + OV24_0238B3F8_OFFSET
|
|
_0238C1D0: .word 0x000003A3 + OV24_0238B3F8_OFFSET
|
|
#ifdef JAPAN
|
|
_0238D738: .word 0x00002448
|
|
#endif
|
|
arm_func_end ov24_0238B3F8
|
|
|
|
arm_func_start ov24_0238C1D4
|
|
ov24_0238C1D4: ; 0x0238C1D4
|
|
stmdb sp!, {r3, lr}
|
|
mov r0, #0x2a8
|
|
mov r1, #6
|
|
bl MemAlloc
|
|
ldr r1, _0238C33C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r3, #0
|
|
str r0, [r1]
|
|
str r3, [r0, #0x1c]
|
|
ldr r0, [r1]
|
|
sub r2, r3, #2
|
|
str r3, [r0, #0x1f4]
|
|
ldr r0, [r1]
|
|
strb r2, [r0, #0x28c]
|
|
ldr r0, [r1]
|
|
strb r2, [r0, #0x28d]
|
|
bl sub_0201077C
|
|
ldr r2, _0238C33C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, r0
|
|
ldr r0, [r2]
|
|
add r0, r0, #0x52
|
|
bl GetNameRaw
|
|
ldr r0, _0238C33C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x66
|
|
add r0, r0, #0x100
|
|
add r1, r1, #0x52
|
|
#ifdef JAPAN
|
|
bl sub_02025304_JP
|
|
#else
|
|
bl StrcpyName
|
|
#endif
|
|
ldr r0, _0238C33C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x22
|
|
add r1, r1, #0x52
|
|
bl strcpy
|
|
ldr r0, _0238C33C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r0]
|
|
add r0, r1, #0x42
|
|
add r1, r1, #0x66
|
|
add r1, r1, #0x100
|
|
bl StrcpySimple
|
|
bl sub_0201077C
|
|
mov r1, r0
|
|
ldr r0, _0238C33C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0x4e
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x66
|
|
bl GetNameWithGender
|
|
ldr r0, _0238C33C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x1f8
|
|
bl InitPreprocessorArgs
|
|
mov r3, #0x71
|
|
ldr r0, _0238C33C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0
|
|
ldr r1, [r0]
|
|
str r3, [r1, #0x244]
|
|
ldr r1, [r0]
|
|
str r3, [r1, #0x1f8]
|
|
ldr r1, [r0]
|
|
str r2, [r1, #0xc]
|
|
ldr r0, [r0]
|
|
str r2, [r0, #0x2a4]
|
|
bl sub_0201077C
|
|
cmp r0, #0
|
|
bne _0238C2FC
|
|
mov r0, #8
|
|
bl GetAdventureLogCompleted
|
|
ldr r1, _0238C33C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #0
|
|
ldr r3, [r1]
|
|
strb r0, [r3, #0x20]
|
|
ldr r1, [r1]
|
|
mov r0, #1
|
|
strb r2, [r1, #0x21]
|
|
bl sub_020107C4
|
|
b _0238C32C
|
|
_0238C2FC:
|
|
bl sub_020107AC
|
|
ldr r1, _0238C33C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r2, #1
|
|
ldr r3, [r1]
|
|
strb r0, [r3, #0x20]
|
|
ldr r0, [r1]
|
|
strb r2, [r0, #0x21]
|
|
bl sub_0201077C
|
|
bl ReturnEggExclusiveItem
|
|
ldr r1, _0238C33C ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r1]
|
|
strh r0, [r1, #0x16]
|
|
_0238C32C:
|
|
mov r0, #0
|
|
bl ov24_0238A610
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238C33C: .word OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
arm_func_end ov24_0238C1D4
|
|
|
|
arm_func_start ov24_0238C340
|
|
ov24_0238C340: ; 0x0238C340
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0238C368 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
cmp r0, #0
|
|
ldmeqia sp!, {r3, pc}
|
|
bl MemFree
|
|
ldr r0, _0238C368 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r1, #0
|
|
str r1, [r0]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238C368: .word OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
arm_func_end ov24_0238C340
|
|
|
|
arm_func_start ov24_0238C36C
|
|
ov24_0238C36C: ; 0x0238C36C
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0238C478 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r2, [r0]
|
|
ldr r1, [r2, #0x1f4]
|
|
cmp r1, #3
|
|
addls pc, pc, r1, lsl #2
|
|
b _0238C470
|
|
_0238C388: ; jump table
|
|
b _0238C398 ; case 0
|
|
b _0238C3A4 ; case 1
|
|
b _0238C408 ; case 2
|
|
b _0238C464 ; case 3
|
|
_0238C398:
|
|
mov r0, #1
|
|
str r0, [r2, #0x1f4]
|
|
b _0238C470
|
|
_0238C3A4:
|
|
bl ov24_0238A140
|
|
cmp r0, #3
|
|
bne _0238C470
|
|
ldr r0, _0238C478 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mov r3, #2
|
|
ldr r2, [r0]
|
|
sub r1, r3, #4
|
|
str r3, [r2, #0x1f4]
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
cmp r0, r1
|
|
beq _0238C3F0
|
|
bl sub_0202F2C4
|
|
ldr r0, _0238C478 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
bl sub_0202836C
|
|
_0238C3F0:
|
|
ldr r0, _0238C478 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl HidePortraitBox
|
|
b _0238C470
|
|
_0238C408:
|
|
mov r1, #3
|
|
str r1, [r2, #0x1f4]
|
|
ldr r0, [r0]
|
|
sub r1, r1, #5
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
cmp r0, r1
|
|
beq _0238C43C
|
|
bl CloseDialogueBox
|
|
ldr r0, _0238C478 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
strb r1, [r0, #0x28c]
|
|
_0238C43C:
|
|
ldr r0, _0238C478 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8d]
|
|
bl ClosePortraitBox
|
|
ldr r0, _0238C478 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
strb r1, [r0, #0x28d]
|
|
b _0238C470
|
|
_0238C464:
|
|
bl ov11_022E6E68
|
|
mov r0, #4
|
|
ldmia sp!, {r3, pc}
|
|
_0238C470:
|
|
mov r0, #1
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238C478: .word OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
arm_func_end ov24_0238C36C
|
|
|
|
arm_func_start ov24_0238C47C
|
|
ov24_0238C47C: ; 0x0238C47C
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0238C4C8 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8f]
|
|
cmp r0, r1
|
|
ldmeqia sp!, {r3, pc}
|
|
bl sub_0202836C
|
|
ldr r0, _0238C4C8 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8f]
|
|
bl CloseSimpleMenu
|
|
ldr r0, _0238C4C8 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
strb r1, [r0, #0x28f]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238C4C8: .word OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
arm_func_end ov24_0238C47C
|
|
|
|
arm_func_start ov24_0238C4CC
|
|
ov24_0238C4CC: ; 0x0238C4CC
|
|
stmdb sp!, {r3, lr}
|
|
ldr r0, _0238C504 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
mvn r1, #1
|
|
ldr r0, [r0]
|
|
add r0, r0, #0x200
|
|
ldrsb r0, [r0, #0x8c]
|
|
cmp r0, r1
|
|
ldmneia sp!, {r3, pc}
|
|
mov r0, #0
|
|
bl CreateDialogueBox
|
|
ldr r1, _0238C504 ; =OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
ldr r1, [r1]
|
|
strb r0, [r1, #0x28c]
|
|
ldmia sp!, {r3, pc}
|
|
.align 2, 0
|
|
_0238C504: .word OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
arm_func_end ov24_0238C4CC
|
|
; 0x0238C508
|
|
|
|
.rodata
|
|
.global OVERLAY24_UNKNOWN_STRUCT__NA_238C508
|
|
OVERLAY24_UNKNOWN_STRUCT__NA_238C508:
|
|
.byte 0xF8, 0x00
|
|
.global ov24_0238C50A
|
|
ov24_0238C50A:
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.global OVERLAY24_UNKNOWN_STRUCT__NA_238C514
|
|
OVERLAY24_UNKNOWN_STRUCT__NA_238C514:
|
|
.byte 0x00, 0x00, 0x00, 0x00
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
|
.global DAYCARE_MENU_ITEMS_CONFIRM
|
|
DAYCARE_MENU_ITEMS_CONFIRM:
|
|
#ifdef JAPAN
|
|
#define OV24_DATA_OFFSET 0x2EE4
|
|
#else
|
|
#define OV24_DATA_OFFSET 0
|
|
#endif
|
|
.word 0x386 + OV24_DATA_OFFSET
|
|
.byte 0x04, 0x00, 0x00, 0x00
|
|
.word 0x387 + OV24_DATA_OFFSET
|
|
.byte 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
|
.global DAYCARE_MAIN_MENU_ITEMS
|
|
DAYCARE_MAIN_MENU_ITEMS:
|
|
.word 0x38C + OV24_DATA_OFFSET
|
|
.byte 0x07, 0x00, 0x00, 0x00
|
|
.word 0x38D + OV24_DATA_OFFSET
|
|
.byte 0x06, 0x00, 0x00, 0x00
|
|
.word 0x38E + OV24_DATA_OFFSET
|
|
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
|
.hword 0x38A + OV24_DATA_OFFSET, 0x38B + OV24_DATA_OFFSET, 0x38C + OV24_DATA_OFFSET, 0x38D + OV24_DATA_OFFSET, 0x38E + OV24_DATA_OFFSET, 0x38F + OV24_DATA_OFFSET, 0x390 + OV24_DATA_OFFSET, 0x391 + OV24_DATA_OFFSET
|
|
.hword 0x392 + OV24_DATA_OFFSET, 0x393 + OV24_DATA_OFFSET, 0x394 + OV24_DATA_OFFSET, 0x395 + OV24_DATA_OFFSET, 0x396 + OV24_DATA_OFFSET, 0x397 + OV24_DATA_OFFSET, 0x398 + OV24_DATA_OFFSET, 0x399 + OV24_DATA_OFFSET
|
|
.hword 0x39A + OV24_DATA_OFFSET, 0x39B + OV24_DATA_OFFSET, 0x39C + OV24_DATA_OFFSET, 0x39D + OV24_DATA_OFFSET, 0x39E + OV24_DATA_OFFSET, 0x39F + OV24_DATA_OFFSET, 0x3A0 + OV24_DATA_OFFSET, 0x3A1 + OV24_DATA_OFFSET
|
|
.hword 0x3A2 + OV24_DATA_OFFSET, 0x3A3 + OV24_DATA_OFFSET, 0x3A4 + OV24_DATA_OFFSET, 0x3A5 + OV24_DATA_OFFSET
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x12, 0x10
|
|
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x0A, 0x08, 0x03
|
|
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x0F, 0x08, 0x03
|
|
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
.global DAYCARE_WINDOW_PARAMS_4
|
|
DAYCARE_WINDOW_PARAMS_4:
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x1E, 0x0F, 0x00, 0x00
|
|
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x02, 0x08, 0x04
|
|
.byte 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
|
|
|
.data
|
|
.global OVERLAY24_UNKNOWN_POINTER__NA_238C600
|
|
OVERLAY24_UNKNOWN_POINTER__NA_238C600:
|
|
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|