berry_pouch through sub_813E2B8

This commit is contained in:
PikalaxALT
2019-09-30 16:59:39 -04:00
parent 3766ddcfda
commit e65487716a
8 changed files with 290 additions and 674 deletions
-634
View File
@@ -5,640 +5,6 @@
.text
thumb_func_start sub_813DDA0
sub_813DDA0: @ 813DDA0
push {r4-r6,lr}
lsls r0, 24
lsrs r5, r0, 24
adds r6, r5, 0
bl sub_80BF72C
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0813DDFE
bl Menu_ProcessInputNoWrapAround
lsls r0, 24
asrs r4, r0, 24
movs r0, 0x2
negs r0, r0
cmp r4, r0
beq _0813DDFE
adds r0, 0x1
cmp r4, r0
bne _0813DDE0
movs r0, 0x5
bl PlaySE
ldr r0, _0813DDDC @ =gUnknown_846437C
ldr r1, [r0, 0x1C]
adds r0, r5, 0
bl _call_via_r1
b _0813DDFE
.align 2, 0
_0813DDDC: .4byte gUnknown_846437C
_0813DDE0:
movs r0, 0x5
bl PlaySE
ldr r1, _0813DE04 @ =gUnknown_846437C
ldr r0, _0813DE08 @ =gUnknown_203F384
ldr r0, [r0]
adds r0, r4
ldrb r0, [r0]
lsls r0, 3
adds r1, 0x4
adds r0, r1
ldr r1, [r0]
adds r0, r6, 0
bl _call_via_r1
_0813DDFE:
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_0813DE04: .4byte gUnknown_846437C
_0813DE08: .4byte gUnknown_203F384
thumb_func_end sub_813DDA0
thumb_func_start sub_813DE0C
sub_813DE0C: @ 813DE0C
push {r4,r5,lr}
lsls r0, 24
lsrs r5, r0, 24
ldr r0, _0813DE5C @ =gUnknown_203F388
ldrb r0, [r0]
adds r0, 0x9
lsls r0, 24
lsrs r0, 24
bl sub_813EA98
movs r0, 0x6
bl sub_813EA98
movs r0, 0
bl PutWindowTilemap
movs r0, 0x1
bl PutWindowTilemap
movs r0, 0
bl ScheduleBgCopyTilemapToVram
movs r0, 0x2
bl ScheduleBgCopyTilemapToVram
ldr r0, _0813DE60 @ =gUnknown_203F370
ldrb r0, [r0, 0x4]
cmp r0, 0x4
bne _0813DE78
ldr r4, _0813DE64 @ =gSpecialVar_ItemId
ldrh r0, [r4]
bl ItemId_GetBattleFunc
cmp r0, 0
bne _0813DE68
adds r0, r5, 0
bl FieldUseFunc_OakStopsYou
b _0813DEB0
.align 2, 0
_0813DE5C: .4byte gUnknown_203F388
_0813DE60: .4byte gUnknown_203F370
_0813DE64: .4byte gSpecialVar_ItemId
_0813DE68:
ldrh r0, [r4]
bl ItemId_GetBattleFunc
adds r1, r0, 0
adds r0, r5, 0
bl _call_via_r1
b _0813DEB0
_0813DE78:
bl CalculatePlayerPartyCount
lsls r0, 24
cmp r0, 0
bne _0813DEA0
ldr r0, _0813DE9C @ =gSpecialVar_ItemId
ldrh r0, [r0]
bl ItemId_GetType
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0813DEA0
adds r0, r5, 0
bl sub_813E274
b _0813DEB0
.align 2, 0
_0813DE9C: .4byte gSpecialVar_ItemId
_0813DEA0:
ldr r0, _0813DEB8 @ =gSpecialVar_ItemId
ldrh r0, [r0]
bl ItemId_GetFieldFunc
adds r1, r0, 0
adds r0, r5, 0
bl _call_via_r1
_0813DEB0:
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_0813DEB8: .4byte gSpecialVar_ItemId
thumb_func_end sub_813DE0C
thumb_func_start sub_813DEBC
sub_813DEBC: @ 813DEBC
push {r4-r7,lr}
mov r7, r8
push {r7}
lsls r0, 24
lsrs r6, r0, 24
lsls r0, r6, 2
adds r0, r6
lsls r7, r0, 3
ldr r0, _0813DF24 @ =gTasks+0x8
mov r8, r0
adds r5, r7, r0
ldr r4, _0813DF28 @ =gUnknown_203F388
ldrb r0, [r4]
adds r0, 0x9
lsls r0, 24
lsrs r0, 24
bl sub_813EB10
lsls r0, 24
lsrs r0, 24
bl ClearWindowTilemap
movs r0, 0x6
bl sub_813EB10
lsls r0, 24
lsrs r0, 24
bl ClearWindowTilemap
ldrb r0, [r4]
adds r0, 0x9
lsls r0, 24
lsrs r0, 24
bl sub_813EA98
movs r0, 0x6
bl sub_813EA98
movs r0, 0
bl PutWindowTilemap
movs r0, 0x1
strh r0, [r5, 0x10]
movs r1, 0x4
ldrsh r0, [r5, r1]
cmp r0, 0x1
bne _0813DF2C
adds r0, r6, 0
bl sub_813DF54
b _0813DF42
.align 2, 0
_0813DF24: .4byte gTasks+0x8
_0813DF28: .4byte gUnknown_203F388
_0813DF2C:
ldr r1, _0813DF4C @ =gUnknown_84163DB
adds r0, r6, 0
bl sub_813D940
bl sub_813D614
mov r0, r8
subs r0, 0x8
adds r0, r7, r0
ldr r1, _0813DF50 @ =sub_813E010
str r1, [r0]
_0813DF42:
pop {r3}
mov r8, r3
pop {r4-r7}
pop {r0}
bx r0
.align 2, 0
_0813DF4C: .4byte gUnknown_84163DB
_0813DF50: .4byte sub_813E010
thumb_func_end sub_813DEBC
thumb_func_start sub_813DF54
sub_813DF54: @ 813DF54
push {r4,r5,lr}
sub sp, 0x14
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
lsls r1, r4, 2
adds r1, r4
lsls r1, 3
ldr r0, _0813DFB4 @ =gTasks+0x8
adds r1, r0
ldr r0, _0813DFB8 @ =gStringVar2
movs r2, 0x10
ldrsh r1, [r1, r2]
movs r2, 0
movs r3, 0x3
bl ConvertIntToDecimalStringN
ldr r5, _0813DFBC @ =gStringVar4
ldr r1, _0813DFC0 @ =gUnknown_8416409
adds r0, r5, 0
bl StringExpandPlaceholders
movs r0, 0x7
bl sub_813EA08
lsls r0, 24
lsrs r0, 24
movs r1, 0x2
str r1, [sp]
movs r2, 0x1
str r2, [sp, 0x4]
str r1, [sp, 0x8]
movs r1, 0
str r1, [sp, 0xC]
str r2, [sp, 0x10]
movs r1, 0x2
adds r2, r5, 0
movs r3, 0
bl sub_813E9A0
ldr r1, _0813DFC4 @ =gUnknown_846436C
adds r0, r4, 0
bl sub_813EB7C
add sp, 0x14
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_0813DFB4: .4byte gTasks+0x8
_0813DFB8: .4byte gStringVar2
_0813DFBC: .4byte gStringVar4
_0813DFC0: .4byte gUnknown_8416409
_0813DFC4: .4byte gUnknown_846436C
thumb_func_end sub_813DF54
thumb_func_start sub_813DFC8
sub_813DFC8: @ 813DFC8
push {r4,r5,lr}
adds r5, r0, 0
lsls r5, 24
lsrs r5, 24
lsls r4, r5, 2
adds r4, r5
lsls r4, 3
ldr r0, _0813E00C @ =gTasks+0x8
adds r4, r0
movs r0, 0x7
bl sub_813EA98
movs r0, 0x1
bl PutWindowTilemap
movs r0, 0
bl PutWindowTilemap
movs r0, 0
bl ScheduleBgCopyTilemapToVram
movs r0, 0x2
bl ScheduleBgCopyTilemapToVram
ldrb r0, [r4]
movs r1, 0x1
bl sub_813D4B0
adds r0, r5, 0
bl sub_813DBB4
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_0813E00C: .4byte gTasks+0x8
thumb_func_end sub_813DFC8
thumb_func_start sub_813E010
sub_813E010: @ 813E010
push {r4-r6,lr}
lsls r0, 24
lsrs r5, r0, 24
adds r6, r5, 0
lsls r0, r5, 2
adds r0, r5
lsls r0, 3
ldr r1, _0813E044 @ =gTasks+0x8
adds r4, r0, r1
adds r0, r4, 0
adds r0, 0x10
ldrh r1, [r4, 0x4]
bl AdjustQuantityAccordingToDPadInput
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bne _0813E048
movs r0, 0x10
ldrsh r1, [r4, r0]
movs r0, 0
movs r2, 0x3
bl sub_813D9F8
b _0813E0D4
.align 2, 0
_0813E044: .4byte gTasks+0x8
_0813E048:
ldr r0, _0813E08C @ =gMain
ldrh r1, [r0, 0x2E]
movs r0, 0x1
ands r0, r1
cmp r0, 0
beq _0813E090
movs r0, 0x5
bl PlaySE
movs r0, 0x8
bl sub_813EB10
lsls r0, 24
lsrs r0, 24
bl ClearWindowTilemap
movs r0, 0x8
bl sub_813EA98
movs r0, 0
bl sub_813EA98
movs r0, 0
bl ScheduleBgCopyTilemapToVram
movs r0, 0x2
bl ScheduleBgCopyTilemapToVram
bl sub_813D684
adds r0, r5, 0
bl sub_813DF54
b _0813E0D4
.align 2, 0
_0813E08C: .4byte gMain
_0813E090:
movs r0, 0x2
ands r0, r1
cmp r0, 0
beq _0813E0D4
movs r0, 0x5
bl PlaySE
movs r0, 0x8
bl sub_813EA98
movs r0, 0
bl sub_813EA98
movs r0, 0
bl PutWindowTilemap
movs r0, 0x1
bl PutWindowTilemap
movs r0, 0
bl ScheduleBgCopyTilemapToVram
movs r0, 0x2
bl ScheduleBgCopyTilemapToVram
ldrb r0, [r4]
movs r1, 0x1
bl sub_813D4B0
bl sub_813D684
adds r0, r6, 0
bl sub_813DBB4
_0813E0D4:
pop {r4-r6}
pop {r0}
bx r0
thumb_func_end sub_813E010
thumb_func_start sub_813E0DC
sub_813E0DC: @ 813E0DC
push {r4-r6,lr}
sub sp, 0x14
lsls r0, 24
lsrs r0, 24
lsls r4, r0, 2
adds r4, r0
lsls r4, 3
ldr r6, _0813E14C @ =gTasks+0x8
adds r5, r4, r6
movs r0, 0x7
bl sub_813EA98
movs r1, 0x2
ldrsh r0, [r5, r1]
ldr r1, _0813E150 @ =gStringVar1
bl sub_813D39C
ldr r0, _0813E154 @ =gStringVar2
movs r2, 0x10
ldrsh r1, [r5, r2]
movs r2, 0
movs r3, 0x3
bl ConvertIntToDecimalStringN
ldr r5, _0813E158 @ =gStringVar4
ldr r1, _0813E15C @ =gUnknown_84163F4
adds r0, r5, 0
bl StringExpandPlaceholders
movs r0, 0x9
bl sub_813EA08
lsls r0, 24
lsrs r0, 24
movs r1, 0x2
str r1, [sp]
movs r2, 0x1
str r2, [sp, 0x4]
str r1, [sp, 0x8]
movs r1, 0
str r1, [sp, 0xC]
str r2, [sp, 0x10]
movs r1, 0x2
adds r2, r5, 0
movs r3, 0
bl sub_813E9A0
subs r6, 0x8
adds r4, r6
ldr r0, _0813E160 @ =sub_813E164
str r0, [r4]
add sp, 0x14
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_0813E14C: .4byte gTasks+0x8
_0813E150: .4byte gStringVar1
_0813E154: .4byte gStringVar2
_0813E158: .4byte gStringVar4
_0813E15C: .4byte gUnknown_84163F4
_0813E160: .4byte sub_813E164
thumb_func_end sub_813E0DC
thumb_func_start sub_813E164
sub_813E164: @ 813E164
push {r4-r6,lr}
lsls r0, 24
lsrs r0, 24
adds r6, r0, 0
lsls r0, r6, 2
adds r0, r6
lsls r0, 3
ldr r1, _0813E1EC @ =gTasks+0x8
adds r5, r0, r1
ldr r0, _0813E1F0 @ =gMain
ldrh r1, [r0, 0x2E]
movs r0, 0x1
ands r0, r1
cmp r0, 0
bne _0813E18A
movs r0, 0x2
ands r0, r1
cmp r0, 0
beq _0813E1E4
_0813E18A:
movs r0, 0x5
bl PlaySE
ldr r0, _0813E1F4 @ =gSpecialVar_ItemId
ldrh r0, [r0]
ldrh r1, [r5, 0x10]
bl RemoveBagItem
movs r0, 0x9
bl sub_813EA98
ldrb r0, [r5]
ldr r4, _0813E1F8 @ =gUnknown_203F370 + 10
subs r2, r4, 0x2
adds r1, r4, 0
bl DestroyListMenuTask
bl sub_813D8AC
bl sub_813D6F4
bl sub_813D204
ldr r0, _0813E1FC @ =gMultiuseListMenuTemplate
subs r4, 0xA
ldrh r1, [r4, 0xA]
ldrh r2, [r4, 0x8]
bl ListMenuInit
lsls r0, 24
lsrs r0, 24
strh r0, [r5]
movs r0, 0x1
bl PutWindowTilemap
movs r0, 0
bl ScheduleBgCopyTilemapToVram
ldrb r0, [r5]
movs r1, 0x1
bl sub_813D4B0
adds r0, r6, 0
bl sub_813DBB4
_0813E1E4:
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_0813E1EC: .4byte gTasks+0x8
_0813E1F0: .4byte gMain
_0813E1F4: .4byte gSpecialVar_ItemId
_0813E1F8: .4byte gUnknown_203F370 + 10
_0813E1FC: .4byte gMultiuseListMenuTemplate
thumb_func_end sub_813E164
thumb_func_start sub_813E200
sub_813E200: @ 813E200
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
ldr r0, _0813E244 @ =gUnknown_203F388
ldrb r0, [r0]
adds r0, 0x9
lsls r0, 24
lsrs r0, 24
bl sub_813EA98
movs r0, 0x6
bl sub_813EA98
movs r0, 0
bl PutWindowTilemap
movs r0, 0x1
bl PutWindowTilemap
movs r0, 0
bl ScheduleBgCopyTilemapToVram
movs r0, 0x2
bl ScheduleBgCopyTilemapToVram
bl CalculatePlayerPartyCount
lsls r0, 24
cmp r0, 0
bne _0813E248
adds r0, r4, 0
bl sub_813E274
b _0813E25E
.align 2, 0
_0813E244: .4byte gUnknown_203F388
_0813E248:
ldr r0, _0813E264 @ =gUnknown_203F36C
ldr r1, [r0]
ldr r0, _0813E268 @ =sub_8126EDC
str r0, [r1]
ldr r1, _0813E26C @ =gTasks
lsls r0, r4, 2
adds r0, r4
lsls r0, 3
adds r0, r1
ldr r1, _0813E270 @ =BerryPouch_StartFadeToExitCallback
str r1, [r0]
_0813E25E:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0813E264: .4byte gUnknown_203F36C
_0813E268: .4byte sub_8126EDC
_0813E26C: .4byte gTasks
_0813E270: .4byte BerryPouch_StartFadeToExitCallback
thumb_func_end sub_813E200
thumb_func_start sub_813E274
sub_813E274: @ 813E274
push {lr}
lsls r0, 24
lsrs r0, 24
ldr r2, _0813E288 @ =gText_ThereIsNoPokemon
ldr r3, _0813E28C @ =sub_813E290
movs r1, 0x2
bl DisplayItemMessageInBerryPouch
pop {r0}
bx r0
.align 2, 0
_0813E288: .4byte gText_ThereIsNoPokemon
_0813E28C: .4byte sub_813E290
thumb_func_end sub_813E274
thumb_func_start sub_813E290
sub_813E290: @ 813E290
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
ldr r0, _0813E2B4 @ =gMain
ldrh r1, [r0, 0x2E]
movs r0, 0x1
ands r0, r1
cmp r0, 0
beq _0813E2AE
movs r0, 0x5
bl PlaySE
adds r0, r4, 0
bl sub_813E2B8
_0813E2AE:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0813E2B4: .4byte gMain
thumb_func_end sub_813E290
thumb_func_start sub_813E2B8
sub_813E2B8: @ 813E2B8
push {r4-r6,lr}
adds r6, r0, 0
lsls r6, 24
lsrs r6, 24
lsls r5, r6, 2
adds r5, r6
lsls r5, 3
ldr r0, _0813E314 @ =gTasks+0x8
adds r5, r0
movs r0, 0x5
bl sub_813EACC
ldrb r0, [r5]
ldr r4, _0813E318 @ =gUnknown_203F370 + 10
subs r2, r4, 0x2
adds r1, r4, 0
bl DestroyListMenuTask
bl sub_813D8AC
bl sub_813D6F4
bl sub_813D204
ldr r0, _0813E31C @ =gMultiuseListMenuTemplate
subs r4, 0xA
ldrh r1, [r4, 0xA]
ldrh r2, [r4, 0x8]
bl ListMenuInit
lsls r0, 24
lsrs r0, 24
strh r0, [r5]
movs r0, 0
bl ScheduleBgCopyTilemapToVram
ldrb r0, [r5]
movs r1, 0x1
bl sub_813D4B0
adds r0, r6, 0
bl sub_813DBB4
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_0813E314: .4byte gTasks+0x8
_0813E318: .4byte gUnknown_203F370 + 10
_0813E31C: .4byte gMultiuseListMenuTemplate
thumb_func_end sub_813E2B8
thumb_func_start sub_813E320
sub_813E320: @ 813E320
push {r4,lr}