mirror of
https://github.com/pret/pmd-red.git
synced 2026-04-24 15:07:09 -05:00
This decision was made to reduce the complexity of using .include whilst juggling with tools/scaninc and tools/preproc: - tools/scaninc doesn't apply the proper search rules for .include (it assumes #include behavior). In particular, it doesn't consider paths starting from $PWD, and doesn't scan the included files as a result. - .include had to be processed before #include by preproc in many cases, as code was being included that had to be preprocessed by CPP (think of #define). This contradicts standard GCC behavior. To make include paths consistent across the asm/ data/ and src/ directories, the following files were moved: - constants/ → include/asm/constants/ - asm/macros/ → include/asm/macros/ - asm/macros.inc → include/asm/macros.inc - include/macros/m4a.inc → include/asm/macros/m4a.inc As part of the necessary changes for this to work, the scaninc method in the makefile was improved to generate .d files that don't choke when files are missing.
1531 lines
24 KiB
ArmAsm
1531 lines
24 KiB
ArmAsm
#include "asm/constants/gba_constants.inc"
|
|
#include "asm/macros.inc"
|
|
|
|
.syntax unified
|
|
|
|
.text
|
|
|
|
thumb_func_start UpdateKecleonStoreDialogue
|
|
UpdateKecleonStoreDialogue:
|
|
push {r4,lr}
|
|
sub sp, 0x14
|
|
ldr r1, _08018EA4
|
|
ldr r0, [r1]
|
|
ldr r0, [r0, 0x8]
|
|
adds r4, r1, 0
|
|
cmp r0, 0x20
|
|
bls _08018E9A
|
|
b _080194E8
|
|
_08018E9A:
|
|
lsls r0, 2
|
|
ldr r1, _08018EA8
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
mov pc, r0
|
|
.align 2, 0
|
|
_08018EA4: .4byte gUnknown_203B210
|
|
_08018EA8: .4byte _08018EAC
|
|
.align 2, 0
|
|
_08018EAC:
|
|
.4byte _08018F30
|
|
.4byte _08018F58
|
|
.4byte _08018FA8
|
|
.4byte _08018FD0
|
|
.4byte _080194E8
|
|
.4byte _08018FFC
|
|
.4byte _08019024
|
|
.4byte _0801904C
|
|
.4byte _08019070
|
|
.4byte _08019094
|
|
.4byte _080190B8
|
|
.4byte _080190DC
|
|
.4byte _08019104
|
|
.4byte _0801912C
|
|
.4byte _08019164
|
|
.4byte _0801918C
|
|
.4byte _080191B4
|
|
.4byte _08019294
|
|
.4byte _080191DC
|
|
.4byte _080191FA
|
|
.4byte _08019218
|
|
.4byte _080193F4
|
|
.4byte _08019254
|
|
.4byte _08019314
|
|
.4byte _0801933C
|
|
.4byte _080193FE
|
|
.4byte _08019364
|
|
.4byte _08019372
|
|
.4byte _08019380
|
|
.4byte _080193F4
|
|
.4byte _080193B4
|
|
.4byte _0801946C
|
|
.4byte _080194C0
|
|
_08018F30:
|
|
bl sub_8019DAC
|
|
bl sub_80194F8
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r2, _08018F50
|
|
ldr r0, _08018F54
|
|
ldr r4, [r0]
|
|
ldr r1, [r4]
|
|
movs r0, 0x5C
|
|
muls r0, r1
|
|
adds r0, r2
|
|
b _08018F76
|
|
.align 2, 0
|
|
_08018F50: .4byte gKecleonShopDialogue
|
|
_08018F54: .4byte gUnknown_203B210
|
|
_08018F58:
|
|
bl sub_8019DAC
|
|
bl sub_80194F8
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _08018FA0
|
|
ldr r0, _08018FA4
|
|
ldr r4, [r0]
|
|
ldr r2, [r4]
|
|
movs r0, 0x5C
|
|
muls r0, r2
|
|
adds r1, 0x4
|
|
adds r0, r1
|
|
_08018F76:
|
|
ldr r0, [r0]
|
|
ldr r2, [r4, 0x28]
|
|
adds r3, r4, 0
|
|
adds r3, 0x34
|
|
adds r1, r4, 0
|
|
adds r1, 0x74
|
|
str r1, [sp]
|
|
movs r1, 0x4
|
|
str r1, [sp, 0x4]
|
|
movs r1, 0
|
|
str r1, [sp, 0x8]
|
|
adds r1, r4, 0
|
|
adds r1, 0xE4
|
|
ldr r1, [r1]
|
|
str r1, [sp, 0xC]
|
|
movs r1, 0xC
|
|
str r1, [sp, 0x10]
|
|
movs r1, 0
|
|
bl sub_8014248
|
|
b _080194E8
|
|
.align 2, 0
|
|
_08018FA0: .4byte gKecleonShopDialogue
|
|
_08018FA4: .4byte gUnknown_203B210
|
|
_08018FA8:
|
|
ldr r1, [r4]
|
|
movs r0, 0x1
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _08018FCC
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x58
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_08018FCC: .4byte gKecleonShopDialogue
|
|
_08018FD0:
|
|
ldr r1, [r4]
|
|
movs r0, 0x4
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _08018FF4
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x8
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
ldr r3, _08018FF8
|
|
b _08019456
|
|
.align 2, 0
|
|
_08018FF4: .4byte gKecleonShopDialogue
|
|
_08018FF8: .4byte 0x0000030d
|
|
_08018FFC:
|
|
ldr r1, [r4]
|
|
movs r0, 0x1
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _08019020
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x30
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_08019020: .4byte gKecleonShopDialogue
|
|
_08019024:
|
|
ldr r1, [r4]
|
|
movs r0, 0x10
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0x1
|
|
bl sub_8019E04
|
|
ldr r1, _08019048
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x34
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_08019048: .4byte gKecleonShopDialogue
|
|
_0801904C:
|
|
ldr r1, [r4]
|
|
movs r0, 0x1
|
|
str r0, [r1, 0xC]
|
|
bl sub_8019E04
|
|
ldr r1, _0801906C
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x38
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_0801906C: .4byte gKecleonShopDialogue
|
|
_08019070:
|
|
ldr r1, [r4]
|
|
movs r0, 0x1
|
|
str r0, [r1, 0xC]
|
|
bl sub_8019E04
|
|
ldr r1, _08019090
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x3C
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_08019090: .4byte gKecleonShopDialogue
|
|
_08019094:
|
|
ldr r1, [r4]
|
|
movs r0, 0x1
|
|
str r0, [r1, 0xC]
|
|
bl sub_8019E04
|
|
ldr r1, _080190B4
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x40
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_080190B4: .4byte gKecleonShopDialogue
|
|
_080190B8:
|
|
ldr r1, [r4]
|
|
movs r0, 0x1
|
|
str r0, [r1, 0xC]
|
|
bl sub_8019E04
|
|
ldr r1, _080190D8
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x44
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_080190D8: .4byte gKecleonShopDialogue
|
|
_080190DC:
|
|
ldr r1, [r4]
|
|
movs r0, 0x1
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _08019100
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x48
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_08019100: .4byte gKecleonShopDialogue
|
|
_08019104:
|
|
ldr r1, [r4]
|
|
movs r0, 0x10
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0x1
|
|
bl sub_8019E04
|
|
ldr r1, _08019128
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x4C
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_08019128: .4byte gKecleonShopDialogue
|
|
_0801912C:
|
|
ldr r0, _0801915C
|
|
ldr r1, [r4]
|
|
adds r1, 0x1C
|
|
movs r2, 0
|
|
bl sub_8090E14
|
|
ldr r1, [r4]
|
|
movs r0, 0x18
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0x1
|
|
bl sub_8019E04
|
|
ldr r1, _08019160
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x50
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_0801915C: .4byte gUnknown_202DE58
|
|
_08019160: .4byte gKecleonShopDialogue
|
|
_08019164:
|
|
ldr r1, [r4]
|
|
movs r0, 0x18
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0x1
|
|
bl sub_8019E04
|
|
ldr r1, _08019188
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x54
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_08019188: .4byte gKecleonShopDialogue
|
|
_0801918C:
|
|
ldr r1, [r4]
|
|
movs r0, 0x12
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _080191B0
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0xC
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_080191B0: .4byte gKecleonShopDialogue
|
|
_080191B4:
|
|
ldr r1, [r4]
|
|
movs r0, 0x13
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _080191D8
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x10
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_080191D8: .4byte gKecleonShopDialogue
|
|
_080191DC:
|
|
ldr r0, [r4]
|
|
ldrb r0, [r0, 0x4]
|
|
cmp r0, 0
|
|
beq _080191EC
|
|
movs r0, 0x3
|
|
bl sub_8019E40
|
|
b _080191F2
|
|
_080191EC:
|
|
movs r0, 0x3
|
|
bl sub_801A20C
|
|
_080191F2:
|
|
movs r0, 0
|
|
bl sub_801AD34
|
|
b _08019378
|
|
_080191FA:
|
|
ldr r0, [r4]
|
|
ldrb r0, [r0, 0x4]
|
|
cmp r0, 0
|
|
beq _0801920A
|
|
movs r0, 0x1
|
|
bl sub_8019FCC
|
|
b _08019210
|
|
_0801920A:
|
|
movs r0, 0x1
|
|
bl sub_801A398
|
|
_08019210:
|
|
movs r0, 0
|
|
bl sub_801AD34
|
|
b _08019378
|
|
_08019218:
|
|
ldr r0, [r4]
|
|
ldrb r0, [r0, 0x4]
|
|
cmp r0, 0
|
|
beq _08019226
|
|
bl sub_801A0D8
|
|
b _0801922A
|
|
_08019226:
|
|
bl sub_801A4A4
|
|
_0801922A:
|
|
movs r0, 0
|
|
bl sub_801AD34
|
|
movs r0, 0x1
|
|
bl DrawTeamMoneyBox
|
|
bl sub_80195C0
|
|
ldr r0, _08019250
|
|
ldr r2, [r0]
|
|
adds r0, r2, 0
|
|
adds r0, 0x84
|
|
adds r1, r2, 0
|
|
adds r1, 0x34
|
|
adds r3, r2, 0
|
|
adds r3, 0x74
|
|
ldr r2, [r2, 0x30]
|
|
b _080193A0
|
|
.align 2, 0
|
|
_08019250: .4byte gUnknown_203B210
|
|
_08019254:
|
|
bl sub_8019700
|
|
ldr r0, _08019284
|
|
ldr r4, _08019288
|
|
ldr r1, [r4]
|
|
adds r1, 0x1C
|
|
movs r2, 0
|
|
bl sub_8090E14
|
|
ldr r1, _0801928C
|
|
ldr r0, [r4]
|
|
ldr r0, [r0, 0x10]
|
|
str r0, [r1]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _08019290
|
|
ldr r4, [r4]
|
|
ldr r2, [r4]
|
|
movs r0, 0x5C
|
|
muls r0, r2
|
|
adds r1, 0x14
|
|
b _0801948C
|
|
.align 2, 0
|
|
_08019284: .4byte gUnknown_202DE58
|
|
_08019288: .4byte gUnknown_203B210
|
|
_0801928C: .4byte gUnknown_202DE30
|
|
_08019290: .4byte gKecleonShopDialogue
|
|
_08019294:
|
|
bl sub_8019D8C
|
|
cmp r0, 0
|
|
bne _080192C0
|
|
ldr r0, _080192AC
|
|
ldr r0, [r0]
|
|
ldrb r0, [r0, 0x4]
|
|
cmp r0, 0
|
|
beq _080192B0
|
|
bl sub_801A010
|
|
b _080192B4
|
|
.align 2, 0
|
|
_080192AC: .4byte gUnknown_203B210
|
|
_080192B0:
|
|
bl sub_801A3DC
|
|
_080192B4:
|
|
ldr r0, _080192BC
|
|
ldr r1, [r0]
|
|
movs r0, 0xB
|
|
b _080192F2
|
|
.align 2, 0
|
|
_080192BC: .4byte gUnknown_203B210
|
|
_080192C0:
|
|
bl GetNumberOfFilledInventorySlots
|
|
cmp r0, 0x13
|
|
ble _080192EC
|
|
ldr r0, _080192D8
|
|
ldr r0, [r0]
|
|
ldrb r0, [r0, 0x4]
|
|
cmp r0, 0
|
|
beq _080192DC
|
|
bl sub_801A010
|
|
b _080192E0
|
|
.align 2, 0
|
|
_080192D8: .4byte gUnknown_203B210
|
|
_080192DC:
|
|
bl sub_801A3DC
|
|
_080192E0:
|
|
ldr r0, _080192E8
|
|
ldr r1, [r0]
|
|
movs r0, 0x1
|
|
b _080192F2
|
|
.align 2, 0
|
|
_080192E8: .4byte gUnknown_203B210
|
|
_080192EC:
|
|
ldr r0, _0801930C
|
|
ldr r1, [r0]
|
|
movs r0, 0x10
|
|
_080192F2:
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r2, _08019310
|
|
ldr r0, _0801930C
|
|
ldr r1, [r0]
|
|
ldr r3, [r1]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r2, 0x18
|
|
b _0801944C
|
|
.align 2, 0
|
|
_0801930C: .4byte gUnknown_203B210
|
|
_08019310: .4byte gKecleonShopDialogue
|
|
_08019314:
|
|
ldr r1, [r4]
|
|
movs r0, 0x1A
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _08019338
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x1C
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_08019338: .4byte gKecleonShopDialogue
|
|
_0801933C:
|
|
ldr r1, [r4]
|
|
movs r0, 0x1B
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _08019360
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x20
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
b _08019454
|
|
.align 2, 0
|
|
_08019360: .4byte gKecleonShopDialogue
|
|
_08019364:
|
|
movs r0, 0x4
|
|
movs r1, 0x3
|
|
movs r2, 0
|
|
movs r3, 0xA
|
|
bl sub_801A5D8
|
|
b _08019378
|
|
_08019372:
|
|
movs r0, 0x1
|
|
bl sub_801A8D0
|
|
_08019378:
|
|
movs r0, 0x1
|
|
bl DrawTeamMoneyBox
|
|
b _080194E8
|
|
_08019380:
|
|
bl sub_801A9E0
|
|
movs r0, 0x1
|
|
bl DrawTeamMoneyBox
|
|
bl sub_8019660
|
|
ldr r0, _080193B0
|
|
ldr r2, [r0]
|
|
adds r0, r2, 0
|
|
adds r0, 0x84
|
|
adds r1, r2, 0
|
|
adds r1, 0x34
|
|
adds r3, r2, 0
|
|
adds r3, 0x74
|
|
ldr r2, [r2, 0x2C]
|
|
_080193A0:
|
|
str r2, [sp]
|
|
movs r2, 0x2
|
|
str r2, [sp, 0x4]
|
|
movs r2, 0
|
|
bl sub_8012D60
|
|
b _080194E8
|
|
.align 2, 0
|
|
_080193B0: .4byte gUnknown_203B210
|
|
_080193B4:
|
|
bl sub_8019700
|
|
ldr r0, _080193E4
|
|
ldr r4, _080193E8
|
|
ldr r1, [r4]
|
|
adds r1, 0x1C
|
|
movs r2, 0
|
|
bl sub_8090E14
|
|
ldr r1, _080193EC
|
|
ldr r0, [r4]
|
|
ldr r0, [r0, 0x10]
|
|
str r0, [r1]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _080193F0
|
|
ldr r4, [r4]
|
|
ldr r2, [r4]
|
|
movs r0, 0x5C
|
|
muls r0, r2
|
|
adds r1, 0x24
|
|
b _0801948C
|
|
.align 2, 0
|
|
_080193E4: .4byte gUnknown_202DE58
|
|
_080193E8: .4byte gUnknown_203B210
|
|
_080193EC: .4byte gUnknown_202DE30
|
|
_080193F0: .4byte gKecleonShopDialogue
|
|
_080193F4:
|
|
ldr r0, [r4]
|
|
adds r0, 0x1C
|
|
bl sub_801B3C0
|
|
b _080194E8
|
|
_080193FE:
|
|
bl GetNumberOfFilledInventorySlots
|
|
cmp r0, 0
|
|
beq _08019418
|
|
ldr r0, _08019424
|
|
ldr r0, [r0]
|
|
movs r1, 0x98
|
|
lsls r1, 2
|
|
adds r0, r1
|
|
ldr r1, [r0]
|
|
ldr r0, _08019428
|
|
cmp r1, r0
|
|
ble _08019430
|
|
_08019418:
|
|
bl sub_801A928
|
|
ldr r0, _0801942C
|
|
ldr r1, [r0]
|
|
movs r0, 0x1
|
|
b _08019436
|
|
.align 2, 0
|
|
_08019424: .4byte gTeamInventory_203B460
|
|
_08019428: .4byte 0x0001869e
|
|
_0801942C: .4byte gUnknown_203B210
|
|
_08019430:
|
|
ldr r0, _08019460
|
|
ldr r1, [r0]
|
|
movs r0, 0x18
|
|
_08019436:
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r2, _08019464
|
|
ldr r0, _08019460
|
|
ldr r1, [r0]
|
|
ldr r3, [r1]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r2, 0x2C
|
|
_0801944C:
|
|
adds r0, r2
|
|
ldr r0, [r0]
|
|
adds r1, 0xE4
|
|
ldr r2, [r1]
|
|
_08019454:
|
|
ldr r3, _08019468
|
|
_08019456:
|
|
movs r1, 0
|
|
bl sub_80141B4
|
|
b _080194E8
|
|
.align 2, 0
|
|
_08019460: .4byte gUnknown_203B210
|
|
_08019464: .4byte gKecleonShopDialogue
|
|
_08019468: .4byte 0x0000010d
|
|
_0801946C:
|
|
bl sub_8019700
|
|
ldr r1, _080194B4
|
|
ldr r4, _080194B8
|
|
ldr r0, [r4]
|
|
ldr r0, [r0, 0x18]
|
|
str r0, [r1]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _080194BC
|
|
ldr r4, [r4]
|
|
ldr r2, [r4]
|
|
movs r0, 0x5C
|
|
muls r0, r2
|
|
adds r1, 0x28
|
|
_0801948C:
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r3, r4, 0
|
|
adds r3, 0x34
|
|
movs r2, 0
|
|
str r2, [sp]
|
|
movs r1, 0x4
|
|
str r1, [sp, 0x4]
|
|
str r2, [sp, 0x8]
|
|
adds r4, 0xE4
|
|
ldr r1, [r4]
|
|
str r1, [sp, 0xC]
|
|
movs r1, 0xC
|
|
str r1, [sp, 0x10]
|
|
movs r1, 0
|
|
movs r2, 0x5
|
|
bl sub_8014248
|
|
b _080194E8
|
|
.align 2, 0
|
|
_080194B4: .4byte gUnknown_202DE30
|
|
_080194B8: .4byte gUnknown_203B210
|
|
_080194BC: .4byte gKecleonShopDialogue
|
|
_080194C0:
|
|
ldr r1, [r4]
|
|
movs r0, 0x1
|
|
str r0, [r1, 0xC]
|
|
movs r0, 0
|
|
bl sub_8019E04
|
|
ldr r1, _080194F0
|
|
ldr r2, [r4]
|
|
ldr r3, [r2]
|
|
movs r0, 0x5C
|
|
muls r0, r3
|
|
adds r1, 0x2C
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
adds r2, 0xE4
|
|
ldr r2, [r2]
|
|
ldr r3, _080194F4
|
|
movs r1, 0
|
|
bl sub_80141B4
|
|
_080194E8:
|
|
add sp, 0x14
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080194F0: .4byte gKecleonShopDialogue
|
|
_080194F4: .4byte 0x0000010d
|
|
thumb_func_end UpdateKecleonStoreDialogue
|
|
|
|
thumb_func_start sub_80194F8
|
|
sub_80194F8:
|
|
push {r4-r7,lr}
|
|
ldr r4, _08019580
|
|
ldr r0, [r4]
|
|
adds r0, 0x74
|
|
movs r1, 0
|
|
movs r2, 0x10
|
|
bl MemoryFill16
|
|
ldr r3, [r4]
|
|
movs r2, 0
|
|
ldr r0, _08019584
|
|
ldr r0, [r0]
|
|
str r0, [r3, 0x34]
|
|
movs r0, 0x2
|
|
str r0, [r3, 0x38]
|
|
movs r1, 0x1
|
|
ldr r0, _08019588
|
|
ldr r0, [r0]
|
|
str r0, [r3, 0x3C]
|
|
movs r0, 0x3
|
|
str r0, [r3, 0x40]
|
|
ldr r0, _0801958C
|
|
str r0, [r3, 0x44]
|
|
movs r0, 0x4
|
|
str r0, [r3, 0x48]
|
|
ldr r0, _08019590
|
|
ldr r0, [r0]
|
|
str r0, [r3, 0x4C]
|
|
movs r0, 0x7
|
|
str r0, [r3, 0x50]
|
|
ldr r0, _08019594
|
|
ldr r0, [r0]
|
|
str r0, [r3, 0x54]
|
|
str r1, [r3, 0x58]
|
|
movs r6, 0x5
|
|
str r2, [r3, 0x5C]
|
|
str r1, [r3, 0x60]
|
|
movs r5, 0
|
|
mov r12, r3
|
|
adds r3, 0x38
|
|
mov r2, r12
|
|
adds r2, 0x74
|
|
_0801954C:
|
|
ldrh r0, [r2]
|
|
cmp r0, 0
|
|
bne _0801955C
|
|
ldr r1, [r3]
|
|
mov r7, r12
|
|
ldr r0, [r7, 0x28]
|
|
cmp r1, r0
|
|
beq _080195BA
|
|
_0801955C:
|
|
adds r3, 0x8
|
|
adds r2, 0x2
|
|
adds r5, 0x1
|
|
cmp r5, r6
|
|
blt _0801954C
|
|
movs r5, 0
|
|
cmp r5, r6
|
|
bge _080195BA
|
|
ldr r1, [r4]
|
|
adds r0, r1, 0
|
|
adds r0, 0x74
|
|
ldrh r0, [r0]
|
|
cmp r0, 0
|
|
bne _08019598
|
|
ldr r0, [r1, 0x38]
|
|
str r0, [r1, 0x28]
|
|
b _080195BA
|
|
.align 2, 0
|
|
_08019580: .4byte gUnknown_203B210
|
|
_08019584: .4byte gUnknown_80D4978
|
|
_08019588: .4byte gUnknown_80D4984
|
|
_0801958C: .4byte gUnknown_80DB8A0
|
|
_08019590: .4byte gUnknown_80D4970
|
|
_08019594: .4byte gUnknown_80D4934
|
|
_08019598:
|
|
adds r5, 0x1
|
|
cmp r5, r6
|
|
bge _080195BA
|
|
ldr r2, [r4]
|
|
lsls r0, r5, 1
|
|
adds r1, r2, 0
|
|
adds r1, 0x74
|
|
adds r1, r0
|
|
ldrh r0, [r1]
|
|
cmp r0, 0
|
|
bne _08019598
|
|
lsls r0, r5, 3
|
|
adds r1, r2, 0
|
|
adds r1, 0x38
|
|
adds r1, r0
|
|
ldr r0, [r1]
|
|
str r0, [r2, 0x28]
|
|
_080195BA:
|
|
pop {r4-r7}
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_80194F8
|
|
|
|
thumb_func_start sub_80195C0
|
|
sub_80195C0:
|
|
push {r4-r7,lr}
|
|
ldr r4, _0801962C
|
|
ldr r0, [r4]
|
|
adds r0, 0x74
|
|
movs r1, 0
|
|
movs r2, 0x10
|
|
bl MemoryFill16
|
|
ldr r3, [r4]
|
|
movs r2, 0
|
|
ldr r0, _08019630
|
|
ldr r0, [r0]
|
|
str r0, [r3, 0x34]
|
|
movs r0, 0x2
|
|
str r0, [r3, 0x38]
|
|
movs r1, 0x1
|
|
ldr r0, _08019634
|
|
ldr r0, [r0]
|
|
str r0, [r3, 0x3C]
|
|
movs r0, 0x7
|
|
str r0, [r3, 0x40]
|
|
movs r6, 0x2
|
|
str r2, [r3, 0x44]
|
|
str r1, [r3, 0x48]
|
|
movs r5, 0
|
|
mov r12, r3
|
|
adds r3, 0x38
|
|
mov r2, r12
|
|
adds r2, 0x74
|
|
_080195FA:
|
|
ldrh r0, [r2]
|
|
cmp r0, 0
|
|
bne _0801960A
|
|
ldr r1, [r3]
|
|
mov r7, r12
|
|
ldr r0, [r7, 0x30]
|
|
cmp r1, r0
|
|
beq _0801965A
|
|
_0801960A:
|
|
adds r3, 0x8
|
|
adds r2, 0x2
|
|
adds r5, 0x1
|
|
cmp r5, r6
|
|
blt _080195FA
|
|
movs r5, 0
|
|
cmp r5, r6
|
|
bge _0801965A
|
|
ldr r1, [r4]
|
|
adds r0, r1, 0
|
|
adds r0, 0x74
|
|
ldrh r0, [r0]
|
|
cmp r0, 0
|
|
bne _08019638
|
|
ldr r0, [r1, 0x38]
|
|
str r0, [r1, 0x30]
|
|
b _0801965A
|
|
.align 2, 0
|
|
_0801962C: .4byte gUnknown_203B210
|
|
_08019630: .4byte gUnknown_80D4978
|
|
_08019634: .4byte gUnknown_80D4970
|
|
_08019638:
|
|
adds r5, 0x1
|
|
cmp r5, r6
|
|
bge _0801965A
|
|
ldr r2, [r4]
|
|
lsls r0, r5, 1
|
|
adds r1, r2, 0
|
|
adds r1, 0x74
|
|
adds r1, r0
|
|
ldrh r0, [r1]
|
|
cmp r0, 0
|
|
bne _08019638
|
|
lsls r0, r5, 3
|
|
adds r1, r2, 0
|
|
adds r1, 0x38
|
|
adds r1, r0
|
|
ldr r0, [r1]
|
|
str r0, [r2, 0x30]
|
|
_0801965A:
|
|
pop {r4-r7}
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_80195C0
|
|
|
|
thumb_func_start sub_8019660
|
|
sub_8019660:
|
|
push {r4-r7,lr}
|
|
ldr r4, _080196CC
|
|
ldr r0, [r4]
|
|
adds r0, 0x74
|
|
movs r1, 0
|
|
movs r2, 0x10
|
|
bl MemoryFill16
|
|
ldr r3, [r4]
|
|
movs r2, 0
|
|
ldr r0, _080196D0
|
|
ldr r0, [r0]
|
|
str r0, [r3, 0x34]
|
|
movs r0, 0x3
|
|
str r0, [r3, 0x38]
|
|
movs r1, 0x1
|
|
ldr r0, _080196D4
|
|
ldr r0, [r0]
|
|
str r0, [r3, 0x3C]
|
|
movs r0, 0x7
|
|
str r0, [r3, 0x40]
|
|
movs r6, 0x2
|
|
str r2, [r3, 0x44]
|
|
str r1, [r3, 0x48]
|
|
movs r5, 0
|
|
mov r12, r3
|
|
adds r3, 0x38
|
|
mov r2, r12
|
|
adds r2, 0x74
|
|
_0801969A:
|
|
ldrh r0, [r2]
|
|
cmp r0, 0
|
|
bne _080196AA
|
|
ldr r1, [r3]
|
|
mov r7, r12
|
|
ldr r0, [r7, 0x2C]
|
|
cmp r1, r0
|
|
beq _080196FA
|
|
_080196AA:
|
|
adds r3, 0x8
|
|
adds r2, 0x2
|
|
adds r5, 0x1
|
|
cmp r5, r6
|
|
blt _0801969A
|
|
movs r5, 0
|
|
cmp r5, r6
|
|
bge _080196FA
|
|
ldr r1, [r4]
|
|
adds r0, r1, 0
|
|
adds r0, 0x74
|
|
ldrh r0, [r0]
|
|
cmp r0, 0
|
|
bne _080196D8
|
|
ldr r0, [r1, 0x38]
|
|
str r0, [r1, 0x2C]
|
|
b _080196FA
|
|
.align 2, 0
|
|
_080196CC: .4byte gUnknown_203B210
|
|
_080196D0: .4byte gUnknown_80D4984
|
|
_080196D4: .4byte gUnknown_80D4970
|
|
_080196D8:
|
|
adds r5, 0x1
|
|
cmp r5, r6
|
|
bge _080196FA
|
|
ldr r2, [r4]
|
|
lsls r0, r5, 1
|
|
adds r1, r2, 0
|
|
adds r1, 0x74
|
|
adds r1, r0
|
|
ldrh r0, [r1]
|
|
cmp r0, 0
|
|
bne _080196D8
|
|
lsls r0, r5, 3
|
|
adds r1, r2, 0
|
|
adds r1, 0x38
|
|
adds r1, r0
|
|
ldr r0, [r1]
|
|
str r0, [r2, 0x2C]
|
|
_080196FA:
|
|
pop {r4-r7}
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_8019660
|
|
|
|
thumb_func_start sub_8019700
|
|
sub_8019700:
|
|
ldr r0, _08019724
|
|
ldr r1, [r0]
|
|
movs r3, 0
|
|
ldr r0, _08019728
|
|
ldr r0, [r0]
|
|
str r0, [r1, 0x34]
|
|
movs r0, 0x5
|
|
str r0, [r1, 0x38]
|
|
movs r2, 0x1
|
|
ldr r0, _0801972C
|
|
ldr r0, [r0]
|
|
str r0, [r1, 0x3C]
|
|
movs r0, 0x6
|
|
str r0, [r1, 0x40]
|
|
str r3, [r1, 0x44]
|
|
str r2, [r1, 0x48]
|
|
bx lr
|
|
.align 2, 0
|
|
_08019724: .4byte gUnknown_203B210
|
|
_08019728: .4byte gUnknown_80D4920
|
|
_0801972C: .4byte gUnknown_80D4928
|
|
thumb_func_end sub_8019700
|
|
|
|
thumb_func_start sub_8019730
|
|
sub_8019730:
|
|
push {lr}
|
|
sub sp, 0x4
|
|
mov r0, sp
|
|
bl sub_80144A4
|
|
cmp r0, 0
|
|
beq _08019740
|
|
b _0801984A
|
|
_08019740:
|
|
ldr r1, [sp]
|
|
cmp r1, 0x1
|
|
beq _0801974C
|
|
ldr r0, _08019760
|
|
ldr r0, [r0]
|
|
str r1, [r0, 0x28]
|
|
_0801974C:
|
|
ldr r0, [sp]
|
|
subs r0, 0x1
|
|
cmp r0, 0x6
|
|
bls _08019756
|
|
b _0801984A
|
|
_08019756:
|
|
lsls r0, 2
|
|
ldr r1, _08019764
|
|
adds r0, r1
|
|
ldr r0, [r0]
|
|
mov pc, r0
|
|
.align 2, 0
|
|
_08019760: .4byte gUnknown_203B210
|
|
_08019764: .4byte _08019768
|
|
.align 2, 0
|
|
_08019768:
|
|
.4byte _08019844
|
|
.4byte _08019784
|
|
.4byte _080197AC
|
|
.4byte _080197E4
|
|
.4byte _0801984A
|
|
.4byte _0801984A
|
|
.4byte _0801983C
|
|
_08019784:
|
|
bl sub_8019D8C
|
|
cmp r0, 0
|
|
bne _08019794
|
|
movs r0, 0x5
|
|
bl UpdateKecleonStoreState
|
|
b _0801984A
|
|
_08019794:
|
|
bl GetNumberOfFilledInventorySlots
|
|
cmp r0, 0x13
|
|
ble _080197A4
|
|
movs r0, 0xA
|
|
bl UpdateKecleonStoreState
|
|
b _0801984A
|
|
_080197A4:
|
|
movs r0, 0xF
|
|
bl UpdateKecleonStoreState
|
|
b _0801984A
|
|
_080197AC:
|
|
bl GetNumberOfFilledInventorySlots
|
|
cmp r0, 0
|
|
beq _080197EC
|
|
ldr r0, _080197D8
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, 0x14]
|
|
cmp r0, 0
|
|
beq _080197FE
|
|
ldr r0, _080197DC
|
|
ldr r0, [r0]
|
|
movs r1, 0x98
|
|
lsls r1, 2
|
|
adds r0, r1
|
|
ldr r1, [r0]
|
|
ldr r0, _080197E0
|
|
cmp r1, r0
|
|
bgt _08019822
|
|
movs r0, 0x17
|
|
bl UpdateKecleonStoreState
|
|
b _0801984A
|
|
.align 2, 0
|
|
_080197D8: .4byte gUnknown_203B210
|
|
_080197DC: .4byte gTeamInventory_203B460
|
|
_080197E0: .4byte 0x0001869e
|
|
_080197E4:
|
|
bl GetNumberOfFilledInventorySlots
|
|
cmp r0, 0
|
|
bne _080197F4
|
|
_080197EC:
|
|
movs r0, 0x9
|
|
bl UpdateKecleonStoreState
|
|
b _0801984A
|
|
_080197F4:
|
|
ldr r0, _08019808
|
|
ldr r1, [r0]
|
|
ldr r0, [r1, 0x14]
|
|
cmp r0, 0
|
|
bne _0801980C
|
|
_080197FE:
|
|
movs r0, 0x8
|
|
bl UpdateKecleonStoreState
|
|
b _0801984A
|
|
.align 2, 0
|
|
_08019808: .4byte gUnknown_203B210
|
|
_0801980C:
|
|
ldr r0, _0801982C
|
|
ldr r0, [r0]
|
|
movs r2, 0x98
|
|
lsls r2, 2
|
|
adds r0, r2
|
|
ldr r1, [r1, 0x18]
|
|
ldr r0, [r0]
|
|
adds r1, r0
|
|
ldr r0, _08019830
|
|
cmp r1, r0
|
|
ble _08019834
|
|
_08019822:
|
|
movs r0, 0x7
|
|
bl UpdateKecleonStoreState
|
|
b _0801984A
|
|
.align 2, 0
|
|
_0801982C: .4byte gTeamInventory_203B460
|
|
_08019830: .4byte 0x0001869f
|
|
_08019834:
|
|
movs r0, 0x1F
|
|
bl UpdateKecleonStoreState
|
|
b _0801984A
|
|
_0801983C:
|
|
movs r0, 0x2
|
|
bl UpdateKecleonStoreState
|
|
b _0801984A
|
|
_08019844:
|
|
movs r0, 0x3
|
|
bl UpdateKecleonStoreState
|
|
_0801984A:
|
|
add sp, 0x4
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_8019730
|
|
|
|
thumb_func_start sub_8019850
|
|
sub_8019850:
|
|
push {r4,lr}
|
|
sub sp, 0x4
|
|
mov r0, sp
|
|
bl sub_80144A4
|
|
cmp r0, 0
|
|
bne _080198DE
|
|
ldr r0, [sp]
|
|
cmp r0, 0x5
|
|
beq _08019874
|
|
cmp r0, 0x5
|
|
bgt _0801986E
|
|
cmp r0, 0x1
|
|
beq _080198D8
|
|
b _080198DE
|
|
_0801986E:
|
|
cmp r0, 0x6
|
|
beq _080198D8
|
|
b _080198DE
|
|
_08019874:
|
|
ldr r4, _080198A8
|
|
ldr r0, [r4]
|
|
ldr r0, [r0, 0x10]
|
|
negs r0, r0
|
|
bl AddToTeamMoney
|
|
ldr r1, [r4]
|
|
ldrb r0, [r1, 0x4]
|
|
cmp r0, 0
|
|
beq _080198AC
|
|
adds r0, r1, 0
|
|
adds r0, 0x20
|
|
ldrb r0, [r0]
|
|
bl xxx_get_inv_unk230_at_809185C
|
|
bl sub_8091274
|
|
ldr r0, [r4]
|
|
adds r0, 0x20
|
|
ldrb r0, [r0]
|
|
bl xxx_init_unk230_substruct
|
|
bl xxx_fill_unk230_gaps
|
|
b _080198C8
|
|
.align 2, 0
|
|
_080198A8: .4byte gUnknown_203B210
|
|
_080198AC:
|
|
adds r0, r1, 0
|
|
adds r0, 0x21
|
|
ldrb r0, [r0]
|
|
bl xxx_get_unk250_at_8091A90
|
|
bl sub_8091274
|
|
ldr r0, [r4]
|
|
adds r0, 0x21
|
|
ldrb r0, [r0]
|
|
bl xxx_init_inv_unk250_at_8091A74
|
|
bl xxx_fill_inv_unk250_gaps_8091AA8
|
|
_080198C8:
|
|
movs r0, 0xA6
|
|
lsls r0, 1
|
|
bl PlaySound
|
|
movs r0, 0x11
|
|
bl UpdateKecleonStoreState
|
|
b _080198DE
|
|
_080198D8:
|
|
movs r0, 0x10
|
|
bl UpdateKecleonStoreState
|
|
_080198DE:
|
|
add sp, 0x4
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_8019850
|
|
|
|
thumb_func_start sub_80198E8
|
|
sub_80198E8:
|
|
push {r4,lr}
|
|
sub sp, 0x4
|
|
mov r0, sp
|
|
bl sub_80144A4
|
|
cmp r0, 0
|
|
bne _0801993A
|
|
ldr r0, [sp]
|
|
cmp r0, 0x5
|
|
beq _0801990C
|
|
cmp r0, 0x5
|
|
bgt _08019906
|
|
cmp r0, 0x1
|
|
beq _08019934
|
|
b _0801993A
|
|
_08019906:
|
|
cmp r0, 0x6
|
|
beq _08019934
|
|
b _0801993A
|
|
_0801990C:
|
|
ldr r4, _08019930
|
|
ldr r0, [r4]
|
|
ldr r0, [r0, 0x10]
|
|
bl AddToTeamMoney
|
|
ldr r0, [r4]
|
|
ldr r0, [r0, 0x24]
|
|
bl ShiftItemsDownFrom
|
|
movs r0, 0xA6
|
|
lsls r0, 1
|
|
bl PlaySound
|
|
movs r0, 0x19
|
|
bl UpdateKecleonStoreState
|
|
b _0801993A
|
|
.align 2, 0
|
|
_08019930: .4byte gUnknown_203B210
|
|
_08019934:
|
|
movs r0, 0x18
|
|
bl UpdateKecleonStoreState
|
|
_0801993A:
|
|
add sp, 0x4
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_80198E8
|
|
|
|
thumb_func_start sub_8019944
|
|
sub_8019944:
|
|
push {r4,r5,lr}
|
|
sub sp, 0x4
|
|
mov r0, sp
|
|
bl sub_80144A4
|
|
cmp r0, 0
|
|
bne _080199C2
|
|
ldr r0, [sp]
|
|
cmp r0, 0x5
|
|
beq _08019968
|
|
cmp r0, 0x5
|
|
bgt _08019962
|
|
cmp r0, 0x1
|
|
beq _080199BC
|
|
b _080199C2
|
|
_08019962:
|
|
cmp r0, 0x6
|
|
beq _080199BC
|
|
b _080199C2
|
|
_08019968:
|
|
movs r4, 0
|
|
ldr r5, _080199B4
|
|
_0801996C:
|
|
lsls r1, r4, 2
|
|
ldr r0, [r5]
|
|
adds r2, r0, r1
|
|
ldrb r1, [r2]
|
|
movs r0, 0x1
|
|
ands r0, r1
|
|
cmp r0, 0
|
|
beq _0801998E
|
|
ldrb r0, [r2, 0x2]
|
|
bl CanSellItem
|
|
lsls r0, 24
|
|
cmp r0, 0
|
|
beq _0801998E
|
|
adds r0, r4, 0
|
|
bl ClearItemSlotAt
|
|
_0801998E:
|
|
adds r4, 0x1
|
|
cmp r4, 0x13
|
|
ble _0801996C
|
|
bl FillInventoryGaps
|
|
ldr r0, _080199B8
|
|
ldr r0, [r0]
|
|
ldr r0, [r0, 0x18]
|
|
bl AddToTeamMoney
|
|
movs r0, 0xA6
|
|
lsls r0, 1
|
|
bl PlaySound
|
|
movs r0, 0x20
|
|
bl UpdateKecleonStoreState
|
|
b _080199C2
|
|
.align 2, 0
|
|
_080199B4: .4byte gTeamInventory_203B460
|
|
_080199B8: .4byte gUnknown_203B210
|
|
_080199BC:
|
|
movs r0, 0x1
|
|
bl UpdateKecleonStoreState
|
|
_080199C2:
|
|
add sp, 0x4
|
|
pop {r4,r5}
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_8019944
|
|
|
|
thumb_func_start sub_80199CC
|
|
sub_80199CC:
|
|
push {r4,r5,lr}
|
|
ldr r0, _080199E0
|
|
ldr r0, [r0]
|
|
ldrb r0, [r0, 0x4]
|
|
cmp r0, 0
|
|
beq _080199E4
|
|
movs r0, 0x1
|
|
bl sub_8019EDC
|
|
b _080199EA
|
|
.align 2, 0
|
|
_080199E0: .4byte gUnknown_203B210
|
|
_080199E4:
|
|
movs r0, 0x1
|
|
bl sub_801A2A8
|
|
_080199EA:
|
|
cmp r0, 0x2
|
|
beq _08019AD4
|
|
cmp r0, 0x2
|
|
bhi _080199FA
|
|
cmp r0, 0x1
|
|
bne _080199F8
|
|
b _08019AF4
|
|
_080199F8:
|
|
b _08019B00
|
|
_080199FA:
|
|
cmp r0, 0x3
|
|
beq _08019A04
|
|
cmp r0, 0x4
|
|
beq _08019A6C
|
|
b _08019B00
|
|
_08019A04:
|
|
ldr r4, _08019A24
|
|
ldr r0, [r4]
|
|
ldrb r0, [r0, 0x4]
|
|
cmp r0, 0
|
|
beq _08019A28
|
|
bl sub_8019FB0
|
|
ldr r1, [r4]
|
|
adds r1, 0x20
|
|
strb r0, [r1]
|
|
ldr r0, [r4]
|
|
adds r0, 0x20
|
|
ldrb r0, [r0]
|
|
bl xxx_get_inv_unk230_at_809185C
|
|
b _08019A3C
|
|
.align 2, 0
|
|
_08019A24: .4byte gUnknown_203B210
|
|
_08019A28:
|
|
bl sub_801A37C
|
|
ldr r1, [r4]
|
|
adds r1, 0x21
|
|
strb r0, [r1]
|
|
ldr r0, [r4]
|
|
adds r0, 0x21
|
|
ldrb r0, [r0]
|
|
bl xxx_get_unk250_at_8091A90
|
|
_08019A3C:
|
|
adds r5, r0, 0
|
|
ldr r4, _08019A68
|
|
ldr r0, [r4]
|
|
adds r0, 0x1C
|
|
ldrb r1, [r5]
|
|
movs r2, 0
|
|
bl xxx_init_itemslot_8090A8C
|
|
ldr r1, [r4]
|
|
ldrb r0, [r5, 0x1]
|
|
strb r0, [r1, 0x1D]
|
|
ldr r0, [r4]
|
|
adds r0, 0x1C
|
|
bl GetStackBuyPrice
|
|
ldr r1, [r4]
|
|
str r0, [r1, 0x10]
|
|
movs r0, 0x14
|
|
bl UpdateKecleonStoreState
|
|
b _08019B00
|
|
.align 2, 0
|
|
_08019A68: .4byte gUnknown_203B210
|
|
_08019A6C:
|
|
ldr r4, _08019A8C
|
|
ldr r0, [r4]
|
|
ldrb r0, [r0, 0x4]
|
|
cmp r0, 0
|
|
beq _08019A90
|
|
bl sub_8019FB0
|
|
ldr r1, [r4]
|
|
adds r1, 0x20
|
|
strb r0, [r1]
|
|
ldr r0, [r4]
|
|
adds r0, 0x20
|
|
ldrb r0, [r0]
|
|
bl xxx_get_inv_unk230_at_809185C
|
|
b _08019AA4
|
|
.align 2, 0
|
|
_08019A8C: .4byte gUnknown_203B210
|
|
_08019A90:
|
|
bl sub_801A37C
|
|
ldr r1, [r4]
|
|
adds r1, 0x21
|
|
strb r0, [r1]
|
|
ldr r0, [r4]
|
|
adds r0, 0x21
|
|
ldrb r0, [r0]
|
|
bl xxx_get_unk250_at_8091A90
|
|
_08019AA4:
|
|
adds r5, r0, 0
|
|
ldr r4, _08019AD0
|
|
ldr r0, [r4]
|
|
adds r0, 0x1C
|
|
ldrb r1, [r5]
|
|
movs r2, 0
|
|
bl xxx_init_itemslot_8090A8C
|
|
ldr r1, [r4]
|
|
ldrb r0, [r5, 0x1]
|
|
strb r0, [r1, 0x1D]
|
|
ldr r0, [r4]
|
|
adds r0, 0x1C
|
|
bl GetStackBuyPrice
|
|
ldr r1, [r4]
|
|
str r0, [r1, 0x10]
|
|
movs r0, 0x15
|
|
bl UpdateKecleonStoreState
|
|
b _08019B00
|
|
.align 2, 0
|
|
_08019AD0: .4byte gUnknown_203B210
|
|
_08019AD4:
|
|
ldr r0, _08019AE4
|
|
ldr r0, [r0]
|
|
ldrb r0, [r0, 0x4]
|
|
cmp r0, 0
|
|
beq _08019AE8
|
|
bl sub_801A010
|
|
b _08019AEC
|
|
.align 2, 0
|
|
_08019AE4: .4byte gUnknown_203B210
|
|
_08019AE8:
|
|
bl sub_801A3DC
|
|
_08019AEC:
|
|
movs r0, 0x1
|
|
bl UpdateKecleonStoreState
|
|
b _08019B00
|
|
_08019AF4:
|
|
movs r0, 0
|
|
bl sub_801AD34
|
|
movs r0, 0x1
|
|
bl DrawTeamMoneyBox
|
|
_08019B00:
|
|
pop {r4,r5}
|
|
pop {r0}
|
|
bx r0
|
|
thumb_func_end sub_80199CC
|
|
|
|
.align 2,0
|