mirror of
https://github.com/pret/pokeruby.git
synced 2026-10-09 01:58:43 -04:00
through sub_8097390
This commit is contained in:
@@ -5,231 +5,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_80972A8
|
||||
sub_80972A8: @ 80972A8
|
||||
push {r4,lr}
|
||||
ldr r4, _080972B8 @ =gSharedMem
|
||||
ldrb r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _080972BC
|
||||
cmp r0, 0x1
|
||||
beq _080972CA
|
||||
b _080972F2
|
||||
.align 2, 0
|
||||
_080972B8: .4byte gSharedMem
|
||||
_080972BC:
|
||||
movs r0, 0
|
||||
bl sub_809B100
|
||||
ldrb r0, [r4, 0x4]
|
||||
adds r0, 0x1
|
||||
strb r0, [r4, 0x4]
|
||||
b _080972F2
|
||||
_080972CA:
|
||||
bl sub_809B130
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080972F2
|
||||
ldr r0, _080972E4 @ =gUnknown_0203847C
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _080972EC
|
||||
ldr r0, _080972E8 @ =sub_8097858
|
||||
bl SetPSSCallback
|
||||
b _080972F2
|
||||
.align 2, 0
|
||||
_080972E4: .4byte gUnknown_0203847C
|
||||
_080972E8: .4byte sub_8097858
|
||||
_080972EC:
|
||||
ldr r0, _080972F8 @ =sub_8096C84
|
||||
bl SetPSSCallback
|
||||
_080972F2:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080972F8: .4byte sub_8096C84
|
||||
thumb_func_end sub_80972A8
|
||||
|
||||
thumb_func_start sub_80972FC
|
||||
sub_80972FC: @ 80972FC
|
||||
push {r4,lr}
|
||||
ldr r4, _0809730C @ =gSharedMem
|
||||
ldrb r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _08097310
|
||||
cmp r0, 0x1
|
||||
beq _0809731E
|
||||
b _08097346
|
||||
.align 2, 0
|
||||
_0809730C: .4byte gSharedMem
|
||||
_08097310:
|
||||
movs r0, 0x1
|
||||
bl sub_809B100
|
||||
ldrb r0, [r4, 0x4]
|
||||
adds r0, 0x1
|
||||
strb r0, [r4, 0x4]
|
||||
b _08097346
|
||||
_0809731E:
|
||||
bl sub_809B130
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08097346
|
||||
ldr r0, _08097338 @ =gUnknown_0203847C
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _08097340
|
||||
ldr r0, _0809733C @ =sub_8097858
|
||||
bl SetPSSCallback
|
||||
b _08097346
|
||||
.align 2, 0
|
||||
_08097338: .4byte gUnknown_0203847C
|
||||
_0809733C: .4byte sub_8097858
|
||||
_08097340:
|
||||
ldr r0, _0809734C @ =sub_8096C84
|
||||
bl SetPSSCallback
|
||||
_08097346:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0809734C: .4byte sub_8096C84
|
||||
thumb_func_end sub_80972FC
|
||||
|
||||
thumb_func_start c3_0808DC50
|
||||
c3_0808DC50: @ 8097350
|
||||
push {r4,lr}
|
||||
ldr r4, _08097360 @ =gSharedMem
|
||||
ldrb r0, [r4, 0x4]
|
||||
cmp r0, 0
|
||||
beq _08097364
|
||||
cmp r0, 0x1
|
||||
beq _08097372
|
||||
b _08097386
|
||||
.align 2, 0
|
||||
_08097360: .4byte gSharedMem
|
||||
_08097364:
|
||||
movs r0, 0x2
|
||||
bl sub_809B100
|
||||
ldrb r0, [r4, 0x4]
|
||||
adds r0, 0x1
|
||||
strb r0, [r4, 0x4]
|
||||
b _08097386
|
||||
_08097372:
|
||||
bl sub_809B130
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08097386
|
||||
bl BoxSetMosaic
|
||||
ldr r0, _0809738C @ =sub_8096C84
|
||||
bl SetPSSCallback
|
||||
_08097386:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0809738C: .4byte sub_8096C84
|
||||
thumb_func_end c3_0808DC50
|
||||
|
||||
thumb_func_start sub_8097390
|
||||
sub_8097390: @ 8097390
|
||||
push {lr}
|
||||
ldr r0, _080973A4 @ =gSharedMem
|
||||
ldrb r0, [r0, 0x4]
|
||||
cmp r0, 0x5
|
||||
bhi _08097462
|
||||
lsls r0, 2
|
||||
ldr r1, _080973A8 @ =_080973AC
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_080973A4: .4byte gSharedMem
|
||||
_080973A8: .4byte _080973AC
|
||||
.align 2, 0
|
||||
_080973AC:
|
||||
.4byte _080973C4
|
||||
.4byte _080973FC
|
||||
.4byte _0809741C
|
||||
.4byte _0809742C
|
||||
.4byte _0809743E
|
||||
.4byte _0809745C
|
||||
_080973C4:
|
||||
bl CalculatePlayerPartyCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x6
|
||||
bne _080973E4
|
||||
movs r0, 0xE
|
||||
bl sub_8098898
|
||||
ldr r1, _080973E0 @ =gSharedMem
|
||||
movs r0, 0x1
|
||||
strb r0, [r1, 0x4]
|
||||
b _08097462
|
||||
.align 2, 0
|
||||
_080973E0: .4byte gSharedMem
|
||||
_080973E4:
|
||||
bl sub_809B0E0
|
||||
movs r0, 0
|
||||
bl sub_809B100
|
||||
ldr r1, _080973F8 @ =gSharedMem
|
||||
movs r0, 0x2
|
||||
strb r0, [r1, 0x4]
|
||||
b _08097462
|
||||
.align 2, 0
|
||||
_080973F8: .4byte gSharedMem
|
||||
_080973FC:
|
||||
ldr r0, _08097414 @ =gMain
|
||||
ldrh r1, [r0, 0x2E]
|
||||
movs r0, 0xF3
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _08097462
|
||||
bl sub_8098A5C
|
||||
ldr r0, _08097418 @ =sub_8096C84
|
||||
bl SetPSSCallback
|
||||
b _08097462
|
||||
.align 2, 0
|
||||
_08097414: .4byte gMain
|
||||
_08097418: .4byte sub_8096C84
|
||||
_0809741C:
|
||||
bl sub_809B130
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08097462
|
||||
bl sub_809880C
|
||||
b _0809744C
|
||||
_0809742C:
|
||||
bl sub_8098830
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08097462
|
||||
movs r0, 0x1
|
||||
bl sub_809B100
|
||||
b _0809744C
|
||||
_0809743E:
|
||||
bl sub_809B130
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08097462
|
||||
bl sub_80987DC
|
||||
_0809744C:
|
||||
ldr r1, _08097458 @ =gSharedMem
|
||||
ldrb r0, [r1, 0x4]
|
||||
adds r0, 0x1
|
||||
strb r0, [r1, 0x4]
|
||||
b _08097462
|
||||
.align 2, 0
|
||||
_08097458: .4byte gSharedMem
|
||||
_0809745C:
|
||||
ldr r0, _08097468 @ =sub_8097004
|
||||
bl SetPSSCallback
|
||||
_08097462:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08097468: .4byte sub_8097004
|
||||
thumb_func_end sub_8097390
|
||||
|
||||
thumb_func_start sub_809746C
|
||||
sub_809746C: @ 809746C
|
||||
push {r4,lr}
|
||||
|
||||
@@ -103,6 +103,7 @@ void sub_809746C(void);
|
||||
void sub_8097594(void);
|
||||
void sub_8097788(void);
|
||||
void sub_80977E4(void);
|
||||
void sub_8097858(void);
|
||||
void sub_809789C(void);
|
||||
void sub_8097BA0(void);
|
||||
void sub_8097CC0(void);
|
||||
@@ -116,10 +117,13 @@ bool8 sub_80985CC(void);
|
||||
void sub_80986E8(void);
|
||||
void sub_8098710(void);
|
||||
void sub_8098734(void);
|
||||
void sub_80987DC(void);
|
||||
void sub_809880C(void);
|
||||
bool8 sub_8098830(void);
|
||||
void sub_8098898(u8 index);
|
||||
void sub_8098A5C(void);
|
||||
void sub_809B100(u8 a0);
|
||||
bool8 sub_809B130(void);
|
||||
void sub_8098B48(void);
|
||||
void sub_8099BF8(u8 a0);
|
||||
void sub_8099C70(u8 whichBox);
|
||||
@@ -130,6 +134,7 @@ void sub_809AA98(void);
|
||||
bool8 sub_809AC00(void);
|
||||
void sub_809B0C0(u8 a0);
|
||||
void sub_809B0D4(void);
|
||||
void sub_809B0E0(void);
|
||||
u8 sub_809B0F4(void);
|
||||
void sub_809B440(void);
|
||||
void sub_809BBC0(void);
|
||||
@@ -1418,6 +1423,115 @@ void sub_8097078(void)
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80972A8(void)
|
||||
{
|
||||
switch (ePokemonStorageSystem.unk_0004)
|
||||
{
|
||||
case 0:
|
||||
sub_809B100(0);
|
||||
ePokemonStorageSystem.unk_0004++;
|
||||
break;
|
||||
case 1:
|
||||
if (!sub_809B130())
|
||||
{
|
||||
if (gUnknown_0203847C)
|
||||
SetPSSCallback(sub_8097858);
|
||||
else
|
||||
SetPSSCallback(sub_8096C84);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_80972FC(void)
|
||||
{
|
||||
switch (ePokemonStorageSystem.unk_0004)
|
||||
{
|
||||
case 0:
|
||||
sub_809B100(1);
|
||||
ePokemonStorageSystem.unk_0004++;
|
||||
break;
|
||||
case 1:
|
||||
if (!sub_809B130())
|
||||
{
|
||||
if (gUnknown_0203847C)
|
||||
SetPSSCallback(sub_8097858);
|
||||
else
|
||||
SetPSSCallback(sub_8096C84);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void c3_0808DC50(void)
|
||||
{
|
||||
switch (ePokemonStorageSystem.unk_0004)
|
||||
{
|
||||
case 0:
|
||||
sub_809B100(2);
|
||||
ePokemonStorageSystem.unk_0004++;
|
||||
break;
|
||||
case 1:
|
||||
if (!sub_809B130())
|
||||
{
|
||||
BoxSetMosaic();
|
||||
SetPSSCallback(sub_8096C84);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void sub_8097390(void)
|
||||
{
|
||||
switch (ePokemonStorageSystem.unk_0004)
|
||||
{
|
||||
case 0:
|
||||
if (CalculatePlayerPartyCount() == 6)
|
||||
{
|
||||
sub_8098898(14);
|
||||
ePokemonStorageSystem.unk_0004 = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
sub_809B0E0();
|
||||
sub_809B100(0);
|
||||
ePokemonStorageSystem.unk_0004 = 2;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
if (gMain.newKeys & (A_BUTTON | B_BUTTON | DPAD_ANY))
|
||||
{
|
||||
sub_8098A5C();
|
||||
SetPSSCallback(sub_8096C84);
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
if (!sub_809B130())
|
||||
{
|
||||
sub_809880C();
|
||||
ePokemonStorageSystem.unk_0004++;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (!sub_8098830())
|
||||
{
|
||||
sub_809B100(1);
|
||||
ePokemonStorageSystem.unk_0004++;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
if (!sub_809B130())
|
||||
{
|
||||
sub_80987DC();
|
||||
ePokemonStorageSystem.unk_0004++;
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
SetPSSCallback(sub_8097004);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
asm(".section .text.8098898");
|
||||
|
||||
void sub_8098898(u8 index) {
|
||||
|
||||
Reference in New Issue
Block a user