summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorcamthesaxman <cameronghall@cox.net>2017-12-17 20:41:11 -0600
committercamthesaxman <cameronghall@cox.net>2017-12-17 20:41:11 -0600
commitd1a7e101bf8fc3ceb80e339cdec32682c2ff4ffe (patch)
tree00b6ba5d24404e87d86dc12c79263a207b6dd078 /src
parent6415654584a586f48ede7e9e6f6de39b8c6ac9f0 (diff)
match some functions in contest.c
Diffstat (limited to 'src')
-rw-r--r--src/contest.c3654
1 files changed, 292 insertions, 3362 deletions
diff --git a/src/contest.c b/src/contest.c
index b7b37faae..c4fd99e32 100644
--- a/src/contest.c
+++ b/src/contest.c
@@ -47,18 +47,14 @@ struct Shared19204
/*0x19204*/ u8 unk19204;
/*0x19205*/ u8 unk19205;
/*0x19206*/ u8 unk19206[4];
-#if 1
- /*0x1920A*/ u16 unk1920A_0:4; // probably a bitfield
+ /*0x1920A*/ u16 unk1920A_0:4;
u16 unk1920A_4:1;
u16 unk1920A_5:1;
u16 unk1920A_6:1;
- u16 unk1920A_7:2;
+ u16 unk1920A_7:1;
+ /*0x1920B*/ u16 unk1920B_0:1;
u16 unk1920B_1:1;
- u16 unk1920B_2:1; // definitely a bitfield
-#else
- /*0x1920A*/ u8 unk1920A;
- /*0x1920B*/ u8 unk1920B;
-#endif
+ u16 unk1920B_2:1;
/*0x1920C*/ u8 unk1920C;
/*0x1920D*/ u8 filler1920D[0x14-0xD];
/*0x19214*/ u8 unk19214;
@@ -133,6 +129,7 @@ struct UnknownContestStruct4
u8 filler3;
};
+/*
struct UnknownContestStruct5_alt
{
u8 bits_0;
@@ -140,6 +137,7 @@ struct UnknownContestStruct5_alt
s8 unk2;
u8 filler3;
};
+*/
struct UnknownContestStruct5
{
@@ -168,6 +166,13 @@ struct Shared19260
#define shared19204 (*(struct Shared19204 *)(gSharedMem + 0x19204))
#define shared19260 (*(struct Shared19260 *)(gSharedMem + 0x19260))
+// These are separate structs because sub_80AC2CC requires that to match.
+#define shared19260_ ((struct UnknownContestStruct1 *)(gSharedMem + 0x19260))
+#define shared192D0 (gSharedMem + 0x192D0)
+#define shared19328 (*(struct UnknownContestStruct5 *)(gSharedMem + 0x19328))
+#define shared19338 ((struct UnknownContestStruct4 *)(gSharedMem + 0x19338))
+#define shared19348 ((struct UnknownContestStruct3 *)(gSharedMem + 0x19348))
+
extern u16 gScriptContestCategory;
extern u16 gScriptContestRank;
extern u8 gBattleMonForms[];
@@ -212,6 +217,22 @@ extern const struct CompressedSpritePalette gUnknown_083CA4CC;
extern const struct SpriteTemplate gUnknown_083CA4D4;
extern const u8 gUnknown_083CAF84[];
extern const u8 gUnknown_083CAFAE[];
+extern const u8 gUnknown_083CAFD7[];
+extern const u8 gUnknown_083CB00D[];
+extern const u8 gUnknown_083CBD52[];
+extern const u8 gUnknown_083CBD79[];
+extern const u8 gUnknown_083CBD9D[];
+extern const u8 gUnknown_083CBDC6[];
+extern const u8 gUnknown_083CBF60[];
+extern const u8 gUnknown_083CC075[];
+extern const u8 gUnknown_083CC0A0[];
+extern const u8 gUnknown_083CC0BC[];
+extern const u8 gUnknown_083CC0E3[];
+extern const u8 gUnknown_083CC103[];
+extern const u8 gUnknown_083CC14A[];
+extern const u8 gUnknown_083CC16E[];
+extern const u8 *const gUnknown_083CC2D8[];
+extern const u8 *const gUnknown_083CC330[];
extern const struct ContestMove gContestMoves[];
extern const u8 gUnknownText_UnknownFormatting2[];
extern const u8 gUnknownText_UnknownFormatting3[];
@@ -221,6 +242,7 @@ extern const u8 gUnknown_083CC59C[];
extern const u8 gUnknown_083CC5A2[];
extern const u8 *const gContestEffectStrings[];
+
void sub_80AB350(void);
void sub_80AB5D4(u8);
void sub_80AB604(u8);
@@ -418,7 +440,7 @@ void sub_80AB350(void)
}
// Can't figure out whether bitfields were used or not
-/*
+#ifdef NONMATCHING
void sub_80AB398(void)
{
s32 i;
@@ -430,9 +452,14 @@ void sub_80AB398(void)
memset(&shared19260.unk19260[i], 0, sizeof(shared19260.unk19260[i]));
for (i = 0; i < 4; i++)
{
+ /*
shared19260.unk19260[i].unkB &= ~3;
shared19260.unk19260[i].unk13 = 0xFF;
shared19260.unk19260[i].unk14 = 0xFF;
+ */
+ shared19260_[i].unkB &= ~3;
+ shared19260_[i].unk13 = 0xFF;
+ shared19260_[i].unk14 = 0xFF;
}
memset(&shared19260.unk192D0, 0, sizeof(shared19260.unk192D0));
memset(&shared19260.unk192E4, 0, sizeof(shared19260.unk192E4));
@@ -447,8 +474,7 @@ void sub_80AB398(void)
}
sub_80B159C();
}
-*/
-
+#else
__attribute__((naked))
void sub_80AB398(void)
{
@@ -562,6 +588,7 @@ _080AB474: .4byte gIsLinkContest\n\
_080AB478: .4byte gUnknown_02038696\n\
.syntax divided\n");
}
+#endif
void sub_80AB47C(void)
{
@@ -797,7 +824,6 @@ void sub_80AB9A0(u8 taskId)
case 4:
default:
if (shared19204.unk1920A_6)
- //if (shared19204.unk1920A & 0x40)
break;
gTasks[taskId].data[0] = 0;
gTasks[taskId].data[1] = 0;
@@ -880,7 +906,6 @@ void sub_80ABC70(u8 taskId)
extern const u8 gUnknown_083CA340[][4];
-#ifdef NONMATCHING
void sub_80ABCDC(u8 taskId)
{
u8 i;
@@ -901,16 +926,16 @@ void sub_80ABCDC(u8 taskId)
u16 r4 = gContestMons[gContestPlayerMonIndex].moves[i];
u8 *r5 = sp8;
- if (shared19260.unk19260[gContestPlayerMonIndex].unk8 != 0
+ if (shared19260_[gContestPlayerMonIndex].unk8 != 0
&& sub_80B214C(gContestPlayerMonIndex) != 0
- && AreMovesContestCombo(shared19260.unk19260[gContestPlayerMonIndex].unk8, r4)
- && shared19260.unk19260[gContestPlayerMonIndex].unk15_4)
+ && AreMovesContestCombo(shared19260_[gContestPlayerMonIndex].unk8, r4)
+ && shared19260_[gContestPlayerMonIndex].unk15_4)
{
r5 = StringCopy(sp8, gUnknownText_UnknownFormatting2);
}
//_080ABDA0
else if (r4 != 0
- && shared19260.unk19260[gContestPlayerMonIndex].unk8 == r4
+ && shared19260_[gContestPlayerMonIndex].unk8 == r4
&& gContestMoves[r4].effect != 3)
{
r5 = StringCopy(sp8, gUnknownText_UnknownFormatting3);
@@ -932,216 +957,6 @@ void sub_80ABCDC(u8 taskId)
sub_80AEBEC(gContestMons[gContestPlayerMonIndex].moves[shared19204.unk19204]);
gTasks[taskId].func = sub_80ABEA0;
}
-#else
-__attribute__((naked))
-void sub_80ABCDC(u8 taskId)
-{
- asm(".syntax unified\n\
- push {r4-r7,lr}\n\
- mov r7, r10\n\
- mov r6, r9\n\
- mov r5, r8\n\
- push {r5-r7}\n\
- sub sp, 0x2C\n\
- lsls r0, 24\n\
- lsrs r0, 24\n\
- str r0, [sp, 0x28]\n\
- ldr r0, _080ABD80 @ =gUnknown_030042A0\n\
- movs r1, 0xA0\n\
- strh r1, [r0]\n\
- ldr r0, _080ABD84 @ =gUnknown_03004280\n\
- strh r1, [r0]\n\
- ldr r5, _080ABD88 @ =gUnknown_03004210\n\
- ldr r4, _080ABD8C @ =gUnknown_083CA340\n\
- ldrb r2, [r4]\n\
- ldrb r3, [r4, 0x1]\n\
- ldrb r0, [r4, 0x2]\n\
- str r0, [sp]\n\
- ldrb r0, [r4, 0x3]\n\
- str r0, [sp, 0x4]\n\
- adds r0, r5, 0\n\
- movs r1, 0\n\
- bl FillWindowRect_DefaultPalette\n\
- movs r6, 0\n\
- ldr r0, _080ABD90 @ =gContestPlayerMonIndex\n\
- mov r8, r0\n\
- ldr r7, _080ABD94 @ =gSharedMem + 0x19260\n\
- mov r9, r5\n\
- mov r10, r4\n\
-_080ABD1C:\n\
- lsls r1, r6, 1\n\
- mov r3, r8\n\
- ldrb r2, [r3]\n\
- lsls r0, r2, 6\n\
- adds r1, r0\n\
- ldr r0, _080ABD98 @ =gUnknown_0203858E\n\
- adds r1, r0\n\
- ldrh r4, [r1]\n\
- add r5, sp, 0x8\n\
- lsls r0, r2, 3\n\
- subs r0, r2\n\
- lsls r0, 2\n\
- adds r0, r7\n\
- ldrh r0, [r0, 0x8]\n\
- cmp r0, 0\n\
- beq _080ABDA0\n\
- adds r0, r2, 0\n\
- bl sub_80B214C\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- beq _080ABDA0\n\
- mov r2, r8\n\
- ldrb r1, [r2]\n\
- lsls r0, r1, 3\n\
- subs r0, r1\n\
- lsls r0, 2\n\
- adds r0, r7\n\
- ldrh r0, [r0, 0x8]\n\
- adds r1, r4, 0\n\
- bl AreMovesContestCombo\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- beq _080ABDA0\n\
- mov r3, r8\n\
- ldrb r1, [r3]\n\
- lsls r0, r1, 3\n\
- subs r0, r1\n\
- lsls r0, 2\n\
- adds r0, r7\n\
- ldrb r1, [r0, 0x15]\n\
- movs r0, 0x10\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080ABDA0\n\
- add r0, sp, 0x8\n\
- ldr r1, _080ABD9C @ =gUnknownText_UnknownFormatting2\n\
- b _080ABDC6\n\
- .align 2, 0\n\
-_080ABD80: .4byte gUnknown_030042A0\n\
-_080ABD84: .4byte gUnknown_03004280\n\
-_080ABD88: .4byte gUnknown_03004210\n\
-_080ABD8C: .4byte gUnknown_083CA340\n\
-_080ABD90: .4byte gContestPlayerMonIndex\n\
-_080ABD94: .4byte gSharedMem + 0x19260\n\
-_080ABD98: .4byte gUnknown_0203858E\n\
-_080ABD9C: .4byte gUnknownText_UnknownFormatting2\n\
-_080ABDA0:\n\
- cmp r4, 0\n\
- beq _080ABDCC\n\
- mov r1, r8\n\
- ldrb r0, [r1]\n\
- lsls r1, r0, 3\n\
- subs r1, r0\n\
- lsls r1, 2\n\
- adds r1, r7\n\
- ldrh r0, [r1, 0x8]\n\
- cmp r0, r4\n\
- bne _080ABDCC\n\
- ldr r0, _080ABE74 @ =gContestMoves\n\
- lsls r1, r4, 3\n\
- adds r1, r0\n\
- ldrb r0, [r1]\n\
- cmp r0, 0x3\n\
- beq _080ABDCC\n\
- add r0, sp, 0x8\n\
- ldr r1, _080ABE78 @ =gUnknownText_UnknownFormatting3\n\
-_080ABDC6:\n\
- bl StringCopy\n\
- adds r5, r0, 0\n\
-_080ABDCC:\n\
- movs r0, 0xD\n\
- adds r1, r4, 0\n\
- muls r1, r0\n\
- ldr r0, _080ABE7C @ =gMoveNames\n\
- adds r1, r0\n\
- adds r0, r5, 0\n\
- bl StringCopy\n\
- lsls r1, r6, 2\n\
- adds r2, r1, r6\n\
- lsls r2, 18\n\
- movs r3, 0xC2\n\
- lsls r3, 18\n\
- adds r2, r3\n\
- lsrs r2, 16\n\
- mov r3, r10\n\
- adds r0, r1, r3\n\
- ldrb r3, [r0]\n\
- lsls r3, 3\n\
- adds r3, 0x4\n\
- lsls r3, 24\n\
- lsrs r3, 24\n\
- ldr r0, _080ABE80 @ =gUnknown_083CA340 + 0x1\n\
- adds r1, r0\n\
- ldrb r0, [r1]\n\
- lsls r0, 3\n\
- str r0, [sp]\n\
- movs r0, 0x1\n\
- str r0, [sp, 0x4]\n\
- mov r0, r9\n\
- add r1, sp, 0x8\n\
- bl sub_8002E4C\n\
- mov r0, r9\n\
- bl sub_8002F44\n\
- adds r0, r6, 0x1\n\
- lsls r0, 24\n\
- lsrs r6, r0, 24\n\
- cmp r6, 0x3\n\
- bhi _080ABE20\n\
- b _080ABD1C\n\
-_080ABE20:\n\
- ldr r1, _080ABE84 @ =0x0000ffff\n\
- ldr r3, _080ABE88 @ =0x00002d9f\n\
- movs r0, 0x48\n\
- str r0, [sp]\n\
- movs r0, 0\n\
- movs r2, 0xC\n\
- bl sub_814A5C0\n\
- ldr r4, _080ABE8C @ =gSharedMem + 0x19204\n\
- movs r0, 0\n\
- ldrsb r0, [r4, r0]\n\
- bl sub_80AC0AC\n\
- ldr r2, _080ABE90 @ =gContestMons\n\
- ldrb r1, [r4]\n\
- lsls r1, 1\n\
- ldr r0, _080ABE94 @ =gContestPlayerMonIndex\n\
- ldrb r0, [r0]\n\
- lsls r0, 6\n\
- adds r1, r0\n\
- adds r2, 0x1E\n\
- adds r1, r2\n\
- ldrh r0, [r1]\n\
- bl sub_80AEBEC\n\
- ldr r1, _080ABE98 @ =gTasks\n\
- ldr r2, [sp, 0x28]\n\
- lsls r0, r2, 2\n\
- adds r0, r2\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- ldr r1, _080ABE9C @ =sub_80ABEA0\n\
- str r1, [r0]\n\
- add sp, 0x2C\n\
- pop {r3-r5}\n\
- mov r8, r3\n\
- mov r9, r4\n\
- mov r10, r5\n\
- pop {r4-r7}\n\
- pop {r0}\n\
- bx r0\n\
- .align 2, 0\n\
-_080ABE74: .4byte gContestMoves\n\
-_080ABE78: .4byte gUnknownText_UnknownFormatting3\n\
-_080ABE7C: .4byte gMoveNames\n\
-_080ABE80: .4byte gUnknown_083CA340 + 0x1\n\
-_080ABE84: .4byte 0x0000ffff\n\
-_080ABE88: .4byte 0x00002d9f\n\
-_080ABE8C: .4byte gSharedMem + 0x19204\n\
-_080ABE90: .4byte gContestMons\n\
-_080ABE94: .4byte gContestPlayerMonIndex\n\
-_080ABE98: .4byte gTasks\n\
-_080ABE9C: .4byte sub_80ABEA0\n\
- .syntax divided\n");
-}
-#endif
void sub_80ABEA0(u8 taskId)
{
@@ -1232,10 +1047,9 @@ void sub_80AC0C8(u8 taskId)
if (gIsLinkContest & 1)
{
u16 var = sub_80AF15C(gContestPlayerMonIndex);
- struct UnknownContestStruct1 *s = &shared19260.unk19260[gContestPlayerMonIndex];
u8 taskId2;
- s->unk6 = var;
+ shared19260_[gContestPlayerMonIndex].unk6 = var;
taskId2 = CreateTask(sub_80C8A38, 0);
SetTaskFuncWithFollowupFunc(taskId2, sub_80C8A38, sub_80AC15C);
gTasks[taskId].func = nullsub_89;
@@ -1305,47 +1119,26 @@ void sub_80AC284(u8 taskId)
}
}
-extern const u8 gUnknown_083CAFD7[];
-extern const u8 gUnknown_083CB00D[];
-extern const u8 gUnknown_083CBD52[];
-extern const u8 gUnknown_083CBD79[];
-extern const u8 gUnknown_083CBD9D[];
-extern const u8 gUnknown_083CBDC6[];
-extern const u8 gUnknown_083CBF60[];
-extern const u8 gUnknown_083CC075[];
-extern const u8 gUnknown_083CC0A0[];
-extern const u8 gUnknown_083CC0BC[];
-extern const u8 gUnknown_083CC0E3[];
-extern const u8 gUnknown_083CC103[];
-extern const u8 gUnknown_083CC14A[];
-extern const u8 gUnknown_083CC16E[];
-extern const u8 *const gUnknown_083CC2D8[];
-extern const u8 *const gUnknown_083CC330[];
-
-#ifdef NONMATCHING
void sub_80AC2CC(u8 taskId)
{
- u8 spriteId; // r5
+ u8 spriteId;
s32 r6;
u8 r7 = shared19204.unk19215;
+ s8 r4;
switch (gTasks[taskId].data[0])
{
case 0:
- //_080AC404
sub_80B0D7C();
- // had to write the array index like this to match
- for (r6 = 0; shared19204.unk19214 != r6[shared19260.unk192D0]; r6++)
+ for (r6 = 0; shared19204.unk19214 != shared192D0[r6]; r6++)
;
- //_080AC42C
shared19204.unk19215 = r6;
- r7 = shared19204.unk19215; // is r7 actually a variable?
+ r7 = shared19204.unk19215;
if (gIsLinkContest & 1)
{
u8 taskId2;
- //shared19204.unk1920B_2 = 1;
- shared19204.unk1920B |= 4;
+ shared19204.unk1920B_2 = 1;
if (sub_80AE074())
sub_80B114C(shared19204.unk19215);
taskId2 = CreateTask(sub_80C8C80, 0);
@@ -1353,7 +1146,6 @@ void sub_80AC2CC(u8 taskId)
sub_80AF860();
gTasks[taskId].data[0] = 1;
}
- //_080AC498
else
{
sub_80B114C(shared19204.unk19215);
@@ -1361,34 +1153,27 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 1:
- if (!(shared19204.unk1920B & 4))
+ if (!shared19204.unk1920B_2)
gTasks[taskId].data[0] = 2;
return;
case 2:
- //_080AC4D4
+ if ((shared19260_[r7].unkC & 6)
+ || (shared19260_[r7].unkB & 0x80))
{
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7]; // r2
-
- if ((s->unkC & 6)
- || (s->unkB & 0x80))
- {
- gTasks[taskId].data[0] = 31;
- }
- else
- {
- sub_80AF138();
- sub_80B0CDC(r7, 0);
- gTasks[taskId].data[10] = 0;
- gTasks[taskId].data[0] = 3;
- }
+ gTasks[taskId].data[0] = 31;
+ }
+ else
+ {
+ sub_80AF138();
+ sub_80B0CDC(r7, 0);
+ gTasks[taskId].data[10] = 0;
+ gTasks[taskId].data[0] = 3;
}
return;
case 3:
- //_080AC534
- // r6 optimized out
for (r6 = 0; r6 < 4; r6++)
gBattleMonForms[r6] = 0;
- memset(shared19260.unk19348, 0, 20);
+ memset(shared19348, 0, 20);
sub_80B28F0(shared19204.unk19215);
spriteId = sub_80AE9FC(
gContestMons[shared19204.unk19215].species,
@@ -1402,41 +1187,32 @@ void sub_80AC2CC(u8 taskId)
gTasks[taskId].data[0] = 4;
return;
case 4:
- //_080AC5E8
spriteId = gTasks[taskId].data[2];
if (gSprites[spriteId].callback == SpriteCallbackDummy)
{
- struct UnknownContestStruct4 *s = &shared19260.unk19338[r7];
- if (!(s->unk2 & 2))
+ if (!(shared19338[r7].unk2 & 2))
gTasks[taskId].data[0] = 5;
}
return;
case 5:
- //_080AC638
+ if (shared19260_[r7].unkC & 1)
{
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
-
- if (s->unkC & 1)
- {
- gTasks[taskId].data[0] = 33;
- }
- //_080AC664
+ gTasks[taskId].data[0] = 33;
+ }
+ else
+ {
+ sub_80AF138();
+ StringCopy(gStringVar1, gContestMons[r7].nickname);
+ if (shared19260_[r7].unk6 < 355)
+ StringCopy(gStringVar2, gMoveNames[shared19260_[r7].unk6]);
else
- {
- sub_80AF138();
- StringCopy(gStringVar1, gContestMons[r7].nickname);
- if (s->unk6 <= 354)
- StringCopy(gStringVar2, gMoveNames[s->unk6]);
- else
- StringCopy(gStringVar2, gUnknown_083CC330[s->unkA]);
- StringExpandPlaceholders(gStringVar4, gUnknown_083CAFD7);
- sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
- gTasks[taskId].data[0] = 6;
- }
+ StringCopy(gStringVar2, gUnknown_083CC330[shared19260_[r7].unkA]);
+ StringExpandPlaceholders(gStringVar4, gUnknown_083CAFD7);
+ sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
+ gTasks[taskId].data[0] = 6;
}
return;
case 6:
- //_080AC6F8
if (sub_80037A0(&gMenuWindow) != 0)
{
shared19204.unk1925E = 0;
@@ -1444,21 +1220,17 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 7:
- //_080AC730
{
- struct UnknownContestStruct1 *s = &shared19260.unk19260[shared19204.unk19215];
- // doesn't match
- u16 r4 = sub_80B2760(s->unk6);
+ u16 move = sub_80B2760(shared19260_[shared19204.unk19215].unk6);
sub_80B2790(shared19204.unk19215);
sub_80B28F0(shared19204.unk19215);
- sub_80B29B4(r4);
- ExecuteMoveAnim(r4);
+ sub_80B29B4(move);
+ ExecuteMoveAnim(move);
gTasks[taskId].data[0] = 8;
}
return;
case 8:
- //_080AC77C
gAnimScriptCallback();
if (!gAnimScriptActive)
{
@@ -1470,10 +1242,7 @@ void sub_80AC2CC(u8 taskId)
}
else
{
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
-
- //if (!(s->unk15 & 0x10))
- if (!s->unk15_4)
+ if (!shared19260_[r7].unk15_4)
sub_80B03A8(r7);
sub_80B20C4();
gTasks[taskId].data[0] = 23;
@@ -1481,7 +1250,6 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 9:
- //_080AC7F4
if (gTasks[taskId].data[10]++ > 30)
{
gTasks[taskId].data[10] = 0;
@@ -1489,127 +1257,89 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 23:
- //_080AC81E
+ gTasks[taskId].data[1] = 0;
+ if (shared19260_[r7].unk13 != 0xFF)
{
- struct UnknownContestStruct1 *s; // r6
-
- gTasks[taskId].data[1] = 0;
- s = &shared19260.unk19260[r7];
- if (s->unk13 != 0xFF)
- {
- sub_80B146C(r7, s->unk13);
- shared19260.unk19260[r7].unk13 = 0xFF;
- gTasks[taskId].data[0] = 24;
- }
- //_080AC85C
- else
+ sub_80B146C(r7, shared19260_[r7].unk13);
+ shared19260_[r7].unk13 = 0xFF;
+ gTasks[taskId].data[0] = 24;
+ }
+ else
+ {
+ if (shared19260_[r7].unk14 != 0xFF)
{
- if (s->unk14 != 0xFF)
+ for (r6 = 0; r6 < 4; r6++)
{
- //s32 r6 = 0;
-
- for (r6 = 0; r6 < 4; r6++)
- {
- if (r6 != r7 && shared19260.unk19260[r6].unk13 != 0xFF)
- break;
- }
- //_080AC886
- if (r6 == 4)
- {
- sub_80B146C(r7, shared19260.unk19260[r7].unk14);
- shared19260.unk19260[r7].unk14 = 0xFF;
- gTasks[taskId].data[0] = 24;
- }
- //_080AC8B4
- else
- {
- gTasks[taskId].data[0] = 48;
- }
+ if (r6 != r7 && shared19260_[r6].unk13 != 0xFF)
+ break;
+ }
+ if (r6 == 4)
+ {
+ sub_80B146C(r7, shared19260_[r7].unk14);
+ shared19260_[r7].unk14 = 0xFF;
+ gTasks[taskId].data[0] = 24;
}
- //_080AC8C4
else
{
gTasks[taskId].data[0] = 48;
}
}
+ else
+ {
+ gTasks[taskId].data[0] = 48;
+ }
}
return;
case 24:
- //_080AC8CC
if (sub_80037A0(&gMenuWindow) != 0)
gTasks[taskId].data[0] = 23;
return;
case 48:
- //_080AC8F8
+ if ((shared19260_[r7].unk11 & 3) == 1)
{
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
-
- if ((s->unk11 & 3) == 1)
- {
- sub_80B1710(5);
- }
- else if ((s->unk11 & 3) == 2)
- {
- sub_80B1710(6);
- }
- else if ((s->unk11 & 3) == 3)
- {
- sub_80B1710(7);
- }
- else
- {
- gTasks[taskId].data[0] = 47;
- return;
- }
- gTasks[taskId].data[0] = 49;
+ sub_80B1710(5);
}
+ else if ((shared19260_[r7].unk11 & 3) == 2)
+ {
+ sub_80B1710(6);
+ }
+ else if ((shared19260_[r7].unk11 & 3) == 3)
+ {
+ sub_80B1710(7);
+ }
+ else
+ {
+ gTasks[taskId].data[0] = 47;
+ return;
+ }
+ gTasks[taskId].data[0] = 49;
return;
case 49:
- //_080AC94C
- if (!(shared19204.unk1920A & 0x10))
+ if (!shared19204.unk1920A_4)
gTasks[taskId].data[0] = 47;
return;
case 47:
- //_080AC96C
sub_80B1FD0(1);
gTasks[taskId].data[0] = 12;
return;
case 12:
- //_080AC98C
- {
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
-
- sub_80AFBA0(0, s->unk2, r7);
- gTasks[taskId].data[0] = 13;
- }
+ sub_80AFBA0(0, shared19260_[r7].unk2, r7);
+ gTasks[taskId].data[0] = 13;
return;
case 13:
- //_080AC9C0
- {
- struct UnknownContestStruct4 *s = &shared19260.unk19338[shared19204.unk19215];
-
- if (!(s->unk2 & 4))
- gTasks[taskId].data[0] = 35;
- }
+ if (!(shared19338[shared19204.unk19215].unk2 & 4))
+ gTasks[taskId].data[0] = 35;
return;
case 35:
- //_080AC9EC
- {
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
-
- if ((s->unk10 & 0x30) == 0x10)
- sub_80B1710(8);
- gTasks[taskId].data[0] = 36;
- }
+ if (shared19260_[r7].unk10_4 == 1)
+ sub_80B1710(8);
+ gTasks[taskId].data[0] = 36;
return;
case 36:
- //_080ACA24
- //if (!shared19204.unk1920A_4)
- if (!(shared19204.unk1920A & 0x10))
+ if (!shared19204.unk1920A_4)
gTasks[taskId].data[0] = 37;
return;
case 37:
- //_080ACA44
if (sub_80AEE54(r7, 1))
{
gTasks[taskId].data[10] = 0;
@@ -1621,7 +1351,6 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 38:
- //_080ACA84
if (++gTasks[taskId].data[10] > 20)
{
gTasks[taskId].data[10] = 0;
@@ -1629,56 +1358,41 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 50:
- //_080ACAAE
if (sub_80AF038(r7) != 0)
PlaySE(SE_C_PASI);
gTasks[taskId].data[0] = 25;
return;
case 25:
- //_080ACAD8
gTasks[taskId].data[1] = 0;
gTasks[taskId].data[0] = 26;
return;
case 26:
- //_080ACAEE
- //asm_comment("case26");
{
- s8 r4 = 0;
s32 r2 = 0;
+ r4 = 0;
for (r6 = gTasks[taskId].data[1]; r6 < 4; r6++)
{
- //_080ACB0A
r4 = 0;
for (r2 = 0; r2 < 4; r2++)
{
if (r2 != r7 && gUnknown_02038696[r2] == r6
- && shared19260.unk19260[r2].unk13 != 0xFF)
+ && shared19260_[r2].unk13 != 0xFF)
{
r4 = 1;
break;
}
}
- //_080ACB4E
if (r4 != 0)
break;
}
- r4 = r4; // This makes it shift for some reason
- //_080ACB58
if (r4)
{
- //_080ACB60
- u8 r2_;
- struct UnknownContestStruct1 *s;
-
gTasks[taskId].data[1] = gUnknown_02038696[r2];
- r2_ = r2;
- s = &shared19260.unk19260[r2];
- sub_80B146C(r2_, s->unk13);
- s->unk13 = 0xFF;
+ sub_80B146C(r2, shared19260_[r2].unk13);
+ shared19260_[r2].unk13 = 0xFF;
gTasks[taskId].data[0] = 27;
}
- //_080ACB98
else
{
gTasks[taskId].data[1] = 0;
@@ -1689,38 +1403,22 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 27:
- //_080ACBB0
if (sub_80037A0(&gMenuWindow) != 0)
gTasks[taskId].data[0] = 28;
return;
case 28:
- //_080ACBDC
- {
- struct UnknownContestStruct1 *s; // r0
-
- for (r6 = 0; gTasks[taskId].data[1] != gUnknown_02038696[r6]; r6++)
- ;
- //_080ACC08
- s = &shared19260.unk19260[r6];
- sub_80AFBA0(s->unk2 + s->unkE, -s->unkE, r6);
- gTasks[taskId].data[0] = 29;
- }
+ for (r6 = 0; gTasks[taskId].data[1] != gUnknown_02038696[r6]; r6++)
+ ;
+ sub_80AFBA0(shared19260_[r6].unk2 + shared19260_[r6].unkE, -shared19260_[r6].unkE, r6);
+ gTasks[taskId].data[0] = 29;
return;
case 29:
- //_080ACC44
- {
- struct UnknownContestStruct4 *s;
-
- for (r6 = 0; gTasks[taskId].data[1] != gUnknown_02038696[r6]; r6++)
- ;
- //_080ACC6C
- s = &shared19260.unk19338[r6];
- if (!(s->unk2 & 4))
- gTasks[taskId].data[0] = 39;
- }
+ for (r6 = 0; gTasks[taskId].data[1] != gUnknown_02038696[r6]; r6++)
+ ;
+ if (!(shared19338[r6].unk2 & 4))
+ gTasks[taskId].data[0] = 39;
return;
case 39:
- //_080ACC98
for (r6 = 0; gTasks[taskId].data[1] != gUnknown_02038696[r6]; r6++)
;
if (sub_80AEE54(r6, 1))
@@ -1734,7 +1432,6 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 40:
- //_080ACD00
if (++gTasks[taskId].data[10] > 20)
{
gTasks[taskId].data[10] = 0;
@@ -1742,259 +1439,191 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 30:
- //_080ACD2A
+ for (r6 = 0; r6 < 4; r6++)
{
- struct UnknownContestStruct1 *s;
-
- for (r6 = 0; r6 < 4; r6++)
- {
- if (gUnknown_02038696[r6] == gTasks[taskId].data[1])
- break;
- }
- //_080ACD5E
- if (sub_80AF038(r6) != 0)
- PlaySE(SE_C_PASI);
- else
- PlaySE(SE_C_SYU);
- s = &shared19260.unk19260[r6];
- //if (s->unk15 & 0x20)
- if (s->unk15_5)
- {
- sub_80B03A8(r6);
- s->unk15_5 = 0;
- }
- gTasks[taskId].data[1]++;
- gTasks[taskId].data[0] = 26;
+ if (gUnknown_02038696[r6] == gTasks[taskId].data[1])
+ break;
}
+ if (sub_80AF038(r6) != 0)
+ PlaySE(SE_C_PASI);
+ else
+ PlaySE(SE_C_SYU);
+ if (shared19260_[r6].unk15_5)
+ {
+ sub_80B03A8(r6);
+ shared19260_[r6].unk15_5 = 0;
+ }
+ gTasks[taskId].data[1]++;
+ gTasks[taskId].data[0] = 26;
return;
case 51:
- //_080ACDC8
if (gTasks[taskId].data[10]++ > 9)
{
- struct UnknownContestStruct1 *s;
-
gTasks[taskId].data[10] = 0;
- s = &shared19260.unk19260[r7];
- if ((s->unkC & 6)
- || (s->unk11 & 4))
+ if ((shared19260_[r7].unkC & 6)
+ || (shared19260_[r7].unk11 & 4))
{
sub_80AF138();
StringCopy(gStringVar1, gContestMons[r7].nickname);
StringExpandPlaceholders(gStringVar4, gUnknown_083CC103);
sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
}
- //_080ACE36
gTasks[taskId].data[0] = 52;
}
return;
case 52:
- //_080ACE64
if (sub_80037A0(&gMenuWindow) != 0)
{
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
-
- if (!s->unk15_6)
+ if (!shared19260_[r7].unk15_6)
gTasks[taskId].data[0] = 17;
else
gTasks[taskId].data[0] = 14;
}
return;
case 14:
- //_080ACEC0
+ r4 = shared19260_[r7].unk16;
+ if (shared19260_[r7].unk16 != 0)
{
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
- s8 r4 = s->unk16; // what type is this?
-
- if (s->unk16 != 0)
- {
- sub_80AF138();
- if (r4 == 1)
- sub_8002EB0(&gMenuWindow, gUnknown_083CBD79, 776, 1, 15);
- else if (r4 == 2)
- sub_8002EB0(&gMenuWindow, gUnknown_083CBD9D, 776, 1, 15);
- else
- sub_8002EB0(&gMenuWindow, gUnknown_083CBDC6, 776, 1, 15);
- //_080ACF22
- sub_80B1710(3);
- gTasks[taskId].data[10] = 0;
- gTasks[taskId].data[0] = 45;
- }
- //_080ACF48
+ sub_80AF138();
+ if (r4 == 1)
+ sub_8002EB0(&gMenuWindow, gUnknown_083CBD79, 776, 1, 15);
+ else if (r4 == 2)
+ sub_8002EB0(&gMenuWindow, gUnknown_083CBD9D, 776, 1, 15);
else
- {
- sub_80AF138();
- StringCopy(gStringVar1, gContestMons[r7].nickname);
- StringExpandPlaceholders(gStringVar4, gUnknown_083CBD52);
- sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
- sub_80B1710(2);
- gTasks[taskId].data[10] = 0;
- gTasks[taskId].data[0] = 45;
- }
+ sub_8002EB0(&gMenuWindow, gUnknown_083CBDC6, 776, 1, 15);
+ sub_80B1710(3);
+ gTasks[taskId].data[10] = 0;
+ gTasks[taskId].data[0] = 45;
+ }
+ else
+ {
+ sub_80AF138();
+ StringCopy(gStringVar1, gContestMons[r7].nickname);
+ StringExpandPlaceholders(gStringVar4, gUnknown_083CBD52);
+ sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
+ sub_80B1710(2);
+ gTasks[taskId].data[10] = 0;
+ gTasks[taskId].data[0] = 45;
}
return;
case 45:
- //_080ACFA8
- //if (!shared19204.unk1920A_4)
- if (!(shared19204.unk1920A & 0x10))
+ if (!shared19204.unk1920A_4)
{
sub_80B09B0(shared19204.unk19215);
gTasks[taskId].data[0] = 15;
}
return;
case 15:
- //_080ACFD4
if (sub_80037A0(&gMenuWindow) != 0)
{
if (++gTasks[taskId].data[10] > 50)
{
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
- //if (!(shared19260.unk19260[r7].unk15 & 0x10))
- if (!s->unk15_4)
+ if (!shared19260_[r7].unk15_4)
{
sub_80AFBA0(
- shared19260.unk19260[r7].unk2,
- shared19260.unk19260[r7].unk17,
+ shared19260_[r7].unk2,
+ shared19260_[r7].unk17,
r7);
- shared19260.unk19260[r7].unk2 += shared19260.unk19260[r7].unk17;
+ shared19260_[r7].unk2 += shared19260_[r7].unk17;
}
- //_080AD02C
gTasks[taskId].data[0] = 16;
}
}
return;
case 16:
- //_080AD040
+ if (!(shared19338[r7].unk2 & 4))
{
- struct UnknownContestStruct4 *s = &shared19260.unk19338[r7];
-
- if (!(s->unk2 & 4))
- {
- gTasks[taskId].data[10] = 0;
- gTasks[taskId].data[0] = 17;
- }
+ gTasks[taskId].data[10] = 0;
+ gTasks[taskId].data[0] = 17;
}
return;
case 17:
- //_080AD070
+ if (shared19260_[r7].unk15_0)
{
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
-
- //if (s->unk15 & 1)
- if (s->unk15_0)
- {
- sub_80AF138();
- StringCopy(gStringVar1, gContestMons[r7].nickname);
- StringExpandPlaceholders(gStringVar4, gUnknown_083CC075);
- sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
- gTasks[taskId].data[10] = 0;
- sub_80B1710();
- gTasks[taskId].data[0] = 46;
- }
- //_080AD0E8
- else
- {
- gTasks[taskId].data[0] = 41;
- }
+ sub_80AF138();
+ StringCopy(gStringVar1, gContestMons[r7].nickname);
+ StringExpandPlaceholders(gStringVar4, gUnknown_083CC075);
+ sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
+ gTasks[taskId].data[10] = 0;
+ sub_80B1710();
+ gTasks[taskId].data[0] = 46;
+ }
+ else
+ {
+ gTasks[taskId].data[0] = 41;
}
return;
case 46:
- //_080AD0FA
- //if (!shared19204.unk1920A_4)
- if (!(shared19204.unk1920A & 0x10))
+ if (!shared19204.unk1920A_4)
gTasks[taskId].data[0] = 19;
return;
case 19:
- //_080AD11A
if (sub_80037A0(&gMenuWindow) != 0)
{
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
-
- sub_80AFBA0(s->unk2, -s->unk18, r7);
- s->unk2 -= s->unk18;
+ sub_80AFBA0(shared19260_[r7].unk2, -shared19260_[r7].unk18, r7);
+ shared19260_[r7].unk2 -= shared19260_[r7].unk18;
gTasks[taskId].data[0] = 18;
}
return;
case 18:
- //_080AD168
+ sub_80B0D7C();
+ if (!(shared19338[r7].unk2 & 4))
{
- struct UnknownContestStruct4 *s;
-
- sub_80B0D7C();
- s = &shared19260.unk19338[r7];
- if (!(s->unk2 & 4))
- {
- gTasks[taskId].data[10] = 0;
- sub_80AF138();
- gTasks[taskId].data[0] = 41;
- }
+ gTasks[taskId].data[10] = 0;
+ sub_80AF138();
+ gTasks[taskId].data[0] = 41;
}
return;
case 41:
- //_080AD1A4
- //asm_comment("case41");
+ if (shared19328.bits_8 && r7 != shared19328.bits_9)
{
- //struct UnknownContestStruct5_alt *s5_alt = (struct UnknownContestStruct5_alt *)&shared19260.unk19328; // r2
- struct UnknownContestStruct5 *s5 = (struct UnknownContestStruct5 *)&shared19260.unk19328; // r1
-
- if (s5->bits_8 && r7 != s5->bits_9)
+ gTasks[taskId].data[0] = 57;
+ }
+ else
+ {
+ r4 = shared19328.bits_0;
+ if (shared19260_[r7].unk11 & 0x10)
{
- gTasks[taskId].data[0] = 57;
+ r4 = 1;
+ StringCopy(gStringVar3, gMoveNames[shared19260_[r7].unk6]);
}
- //_080AD1D0
else
{
- s8 r4 = s5->bits_0;
- //struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
- struct UnknownContestStruct1 *s = ((struct UnknownContestStruct1 *)(((u8 *)s5) - 0xC8)) + r7;
-
- if (s->unk11 & 0x10)
- {
- r4 = 1;
- StringCopy(gStringVar3, gMoveNames[s->unk6]);
- }
+ StringCopy(gStringVar3, gUnknown_083CC2D8[gContestMoves[shared19260_[r7].unk6].contestCategory]);
+ }
+ if (r4 > 0)
+ {
+ if (shared19260_[r7].unk15_0)
+ r4 = 0;
+ }
+ sub_80AF138();
+ StringCopy(gStringVar1, gContestMons[r7].nickname);
+ shared19204.unk19217 += r4;
+ if (shared19204.unk19217 < 0)
+ shared19204.unk19217 = 0;
+ if (r4 == 0)
+ {
+ gTasks[taskId].data[0] = 55;
+ }
+ else
+ {
+ if (r4 < 0)
+ StringExpandPlaceholders(gStringVar4, gUnknown_083CC0BC);
+ else if (r4 > 0 && shared19204.unk19217 <= 4)
+ StringExpandPlaceholders(gStringVar4, gUnknown_083CC0A0);
else
- {
- StringCopy(gStringVar3, gUnknown_083CC2D8[gContestMoves[s->unk6].contestCategory]);
- }
- //_080AD21E
- if (r4 > 0)
- {
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
-
- //if (s->unk15 & 1)
- if (s->unk15_0)
- r4 = 0;
- }
- sub_80AF138();
- StringCopy(gStringVar1, gContestMons[r7].nickname);
- shared19204.unk19217 += r4;
- if (shared19204.unk19217 < 0)
- shared19204.unk19217 = 0;
- if (r4 == 0)
- {
- gTasks[taskId].data[0] = 55;
- }
+ StringExpandPlaceholders(gStringVar4, gUnknown_083CC0E3);
+ sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
+ gTasks[taskId].data[10] = 0;
+ gTasks[taskId].data[11] = 0;
+ if (r4 < 0)
+ gTasks[taskId].data[0] = 53;
else
- {
- if (r4 < 0)
- StringExpandPlaceholders(gStringVar4, gUnknown_083CC0BC);
- else if (r4 > 0 && shared19204.unk19217 <= 4)
- StringExpandPlaceholders(gStringVar4, gUnknown_083CC0A0);
- else
- StringExpandPlaceholders(gStringVar4, gUnknown_083CC0E3);
- sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
- gTasks[taskId].data[10] = 0;
- gTasks[taskId].data[11] = 0;
- if (r4 < 0)
- gTasks[taskId].data[0] = 53;
- else
- gTasks[taskId].data[0] = 54;
- }
+ gTasks[taskId].data[0] = 54;
}
}
return;
case 53:
- //_080AD316
switch (gTasks[taskId].data[10])
{
case 0:
@@ -2003,16 +1632,14 @@ void sub_80AC2CC(u8 taskId)
gTasks[taskId].data[10]++;
break;
case 1:
- //_080AD354
- if (!(shared19204.unk1920B & 1) && sub_80037A0(&gMenuWindow) != 0)
+ if (!shared19204.unk1920B_0 && sub_80037A0(&gMenuWindow) != 0)
{
sub_80B1CBC(-1);
gTasks[taskId].data[10]++;
}
break;
case 2:
- //_080AD37C
- if (!(shared19204.unk1920A & 0x20))
+ if (!shared19204.unk1920A_5)
{
if (gTasks[taskId].data[11]++ > 29)
{
@@ -2023,7 +1650,6 @@ void sub_80AC2CC(u8 taskId)
}
break;
case 3:
- //_080AD3B0
if (!gPaletteFade.active)
{
gTasks[taskId].data[10] = 0;
@@ -2034,20 +1660,17 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 54:
- //_080AD3D0
switch (gTasks[taskId].data[10])
{
case 0:
- //_080AD408
if (sub_80037A0(&gMenuWindow) != 0)
{
- sub_80B1EA8(0, 1);
+ sub_80B1EA8(1, 1);
gTasks[taskId].data[10]++;
}
break;
case 1:
- //_080AD420
- if (!(shared19204.unk1920B & 1))
+ if (!shared19204.unk1920B_0)
{
sub_80B1DDC();
PlaySE(SE_W227B);
@@ -2056,58 +1679,28 @@ void sub_80AC2CC(u8 taskId)
}
break;
case 2:
- asm_comment("asdfasdf");
- //_080AD43E
- if (!(shared19204.unk1920A & 0x20))
+ if (!shared19204.unk1920A_5)
{
if (gTasks[taskId].data[11]++ > 29)
{
- struct UnknownContestStruct1 *s;
- struct UnknownContestStruct5 *s5;
- //register s16 r0 asm("r0");
-
gTasks[taskId].data[11] = 0;
- s = &shared19260.unk19260[r7];
- s5 = &shared19260.unk19328;
- sub_80AFBA0(s->unk2, s5->unk2, r7);
- s->unk2 += s5->unk2;
+ sub_80AFBA0(shared19260_[r7].unk2, shared19328.unk2, r7);
+ shared19260_[r7].unk2 += shared19328.unk2;
gTasks[taskId].data[10]++;
}
- /*
- if (gTasks[taskId].data[11]++ > 29)
- {
- struct UnknownContestStruct1 *s;
- struct UnknownContestStruct5 *s5;
- register s16 r0 asm("r0");
-
- gTasks[taskId].data[11] = 0;
- s = &shared19260.unk19260[r7];
- r0 = s->unk2;
- s5 = &shared19260.unk19328;
- sub_80AFBA0(r0, s5->unk2, r7);
- s->unk2 += s5->unk2;
- gTasks[taskId].data[10]++;
- }
- */
}
break;
case 3:
- //_080AD4A0
+ if (!(shared19338[r7].unk2 & 4))
{
- struct UnknownContestStruct4 *s = &shared19260.unk19338[r7];
-
- if (!(s->unk2 & 4))
+ if (!shared19204.unk1920A_7)
{
- if (!(shared19204.unk1920A & 0x80))
- {
- sub_80B1EA8(1, -1);
- gTasks[taskId].data[10]++;
- }
+ sub_80B1EA8(1, -1);
+ gTasks[taskId].data[10]++;
}
}
break;
case 4:
- //_080AD4EC
if (!gPaletteFade.active)
{
gTasks[taskId].data[10] = 0;
@@ -2118,31 +1711,22 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 43:
- //_080AD514
+ if (!(shared19338[r7].unk2 & 4))
{
- struct UnknownContestStruct4 *s = &shared19260.unk19338[r7];
-
- if (!(s->unk2 & 4))
- {
- sub_80AF138();
- gTasks[taskId].data[0] = 55;
- }
+ sub_80AF138();
+ gTasks[taskId].data[0] = 55;
}
return;
case 57:
- //_080AD53C
- {
- sub_80AF138();
- StringCopy(gStringVar3, gContestMons[shared19260.unk19328.bits_9].nickname);
- StringCopy(gStringVar1, gContestMons[r7].nickname);
- StringCopy(gStringVar2, gMoveNames[shared19260.unk19260[r7].unk6]);
- StringExpandPlaceholders(gStringVar4, gUnknown_083CC14A);
- sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
- gTasks[taskId].data[0] = 58;
- }
+ sub_80AF138();
+ StringCopy(gStringVar3, gContestMons[shared19328.bits_9].nickname);
+ StringCopy(gStringVar1, gContestMons[r7].nickname);
+ StringCopy(gStringVar2, gMoveNames[shared19260_[r7].unk6]);
+ StringExpandPlaceholders(gStringVar4, gUnknown_083CC14A);
+ sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
+ gTasks[taskId].data[0] = 58;
return;
case 58:
- //_080AD5D0
if (sub_80037A0(&gMenuWindow) != 0)
{
sub_80AF138();
@@ -2152,7 +1736,6 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 59:
- //_080AD624
if (sub_80037A0(&gMenuWindow) != 0)
{
sub_80AF138();
@@ -2160,37 +1743,25 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 33:
- //_080AD648
- {
- struct UnknownContestStruct1 *s = &shared19260.unk19260[r7];
-
- /*
- if (s->unk15 & 0x10)
- s->unk15 &= ~0x10; // probably a bitfield
- */
- if (s->unk15_4)
- s->unk15_4 = 0;
- sub_80B09B0(r7);
- StringCopy(gStringVar1, gContestMons[r7].nickname);
- StringCopy(gStringVar2, gMoveNames[s->unk6]);
- StringExpandPlaceholders(gStringVar4, gUnknown_083CBF60);
- sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
- gTasks[taskId].data[0] = 34;
- }
+ if (shared19260_[r7].unk15_4)
+ shared19260_[r7].unk15_4 = 0;
+ sub_80B09B0(r7);
+ StringCopy(gStringVar1, gContestMons[r7].nickname);
+ StringCopy(gStringVar2, gMoveNames[shared19260_[r7].unk6]);
+ StringExpandPlaceholders(gStringVar4, gUnknown_083CBF60);
+ sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
+ gTasks[taskId].data[0] = 34;
return;
case 34:
- //_080AD6D8
if (sub_80037A0(&gMenuWindow) != 0)
gTasks[taskId].data[0] = 55;
return;
case 55:
- //_080AD700
sub_80B1BDC();
gTasks[taskId].data[0] = 56;
return;
case 56:
- //_080AD71C
- if (!(shared19204.unk1920A & 0x40))
+ if (!shared19204.unk1920A_6)
{
if (shared19204.unk19217 > 4)
{
@@ -2201,13 +1772,11 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 10:
- //_080AD750
spriteId = gTasks[taskId].data[2];
gSprites[spriteId].callback = sub_80AD92C;
gTasks[taskId].data[0] = 11;
return;
case 11:
- //_080AD77C
spriteId = gTasks[taskId].data[2];
if (gSprites[spriteId].invisible)
{
@@ -2217,14 +1786,12 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 20:
- //_080AD7B8
for (r6 = 0; r6 < 4; r6++)
sub_80B0CDC(r6, 1);
gTasks[taskId].data[10] = 0;
gTasks[taskId].data[0] = 21;
return;
case 31:
- //_080AD7E8
sub_80AF138();
StringCopy(gStringVar1, gContestMons[r7].nickname);
StringExpandPlaceholders(gStringVar4, gUnknown_083CB00D);
@@ -2232,12 +1799,10 @@ void sub_80AC2CC(u8 taskId)
gTasks[taskId].data[0] = 32;
return;
case 32:
- //_080AD840
if (sub_80037A0(&gMenuWindow) != 0)
gTasks[taskId].data[0] = 21;
return;
case 21:
- //_080AD868
if (++gTasks[taskId].data[10] > 29)
{
gTasks[taskId].data[10] = 0;
@@ -2245,7 +1810,6 @@ void sub_80AC2CC(u8 taskId)
}
return;
case 22:
- //_080AD88C
if (++shared19204.unk19214 == 4)
{
gTasks[taskId].data[0] = 0;
@@ -2261,2618 +1825,6 @@ void sub_80AC2CC(u8 taskId)
return;
}
}
-#endif
-
-__attribute__((naked))
-void sub_80AC2CC(u8 taskId)
-{
- asm(".syntax unified\n\
- push {r4-r7,lr}\n\
- mov r7, r10\n\
- mov r6, r9\n\
- mov r5, r8\n\
- push {r5-r7}\n\
- sub sp, 0x8\n\
- lsls r0, 24\n\
- lsrs r0, 24\n\
- mov r8, r0\n\
- ldr r2, _080AC308 @ =gSharedMem + 0x19204\n\
- ldrb r7, [r2, 0x11]\n\
- ldr r1, _080AC30C @ =gTasks\n\
- lsls r0, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r3, 0x8\n\
- ldrsh r0, [r0, r3]\n\
- adds r6, r2, 0\n\
- mov r12, r1\n\
- cmp r0, 0x3B\n\
- bls _080AC2FC\n\
- bl _080AD8CA\n\
-_080AC2FC:\n\
- lsls r0, 2\n\
- ldr r1, _080AC310 @ =_080AC314\n\
- adds r0, r1\n\
- ldr r0, [r0]\n\
- mov pc, r0\n\
- .align 2, 0\n\
-_080AC308: .4byte gSharedMem + 0x19204\n\
-_080AC30C: .4byte gTasks\n\
-_080AC310: .4byte _080AC314\n\
- .align 2, 0\n\
-_080AC314:\n\
- .4byte _080AC404\n\
- .4byte _080AC4B4\n\
- .4byte _080AC4D4\n\
- .4byte _080AC534\n\
- .4byte _080AC5E8\n\
- .4byte _080AC638\n\
- .4byte _080AC6F8\n\
- .4byte _080AC730\n\
- .4byte _080AC77C\n\
- .4byte _080AC7F4\n\
- .4byte _080AD750\n\
- .4byte _080AD77C\n\
- .4byte _080AC98C\n\
- .4byte _080AC9C0\n\
- .4byte _080ACEC0\n\
- .4byte _080ACFD4\n\
- .4byte _080AD040\n\
- .4byte _080AD070\n\
- .4byte _080AD168\n\
- .4byte _080AD11A\n\
- .4byte _080AD7B8\n\
- .4byte _080AD868\n\
- .4byte _080AD88C\n\
- .4byte _080AC81E\n\
- .4byte _080AC8CC\n\
- .4byte _080ACAD8\n\
- .4byte _080ACAEE\n\
- .4byte _080ACBB0\n\
- .4byte _080ACBDC\n\
- .4byte _080ACC44\n\
- .4byte _080ACD2A\n\
- .4byte _080AD7E8\n\
- .4byte _080AD840\n\
- .4byte _080AD648\n\
- .4byte _080AD6D8\n\
- .4byte _080AC9EC\n\
- .4byte _080ACA24\n\
- .4byte _080ACA44\n\
- .4byte _080ACA84\n\
- .4byte _080ACC98\n\
- .4byte _080ACD00\n\
- .4byte _080AD1A4\n\
- .4byte _080AD8CA\n\
- .4byte _080AD514\n\
- .4byte _080AD8CA\n\
- .4byte _080ACFA8\n\
- .4byte _080AD0FA\n\
- .4byte _080AC96C\n\
- .4byte _080AC8F8\n\
- .4byte _080AC94C\n\
- .4byte _080ACAAE\n\
- .4byte _080ACDC8\n\
- .4byte _080ACE64\n\
- .4byte _080AD316\n\
- .4byte _080AD3D0\n\
- .4byte _080AD700\n\
- .4byte _080AD71C\n\
- .4byte _080AD53C\n\
- .4byte _080AD5D0\n\
- .4byte _080AD624\n\
-_080AC404:\n\
- bl sub_80B0D7C\n\
- movs r6, 0\n\
- ldr r0, _080AC484 @ =gSharedMem + 0x19204\n\
- adds r1, r0, 0\n\
- adds r1, 0xCC\n\
- ldrb r0, [r0, 0x10]\n\
- mov r4, r8\n\
- lsls r4, 2\n\
- mov r9, r4\n\
- ldrb r5, [r1]\n\
- cmp r0, r5\n\
- beq _080AC42C\n\
- adds r2, r1, 0\n\
- adds r1, r0, 0\n\
-_080AC422:\n\
- adds r6, 0x1\n\
- adds r0, r6, r2\n\
- ldrb r0, [r0]\n\
- cmp r1, r0\n\
- bne _080AC422\n\
-_080AC42C:\n\
- ldr r4, _080AC484 @ =gSharedMem + 0x19204\n\
- strb r6, [r4, 0x11]\n\
- ldrb r7, [r4, 0x11]\n\
- ldr r0, _080AC488 @ =gIsLinkContest\n\
- ldrb r1, [r0]\n\
- movs r5, 0x1\n\
- adds r0, r5, 0\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AC498\n\
- ldrb r0, [r4, 0x7]\n\
- movs r1, 0x4\n\
- orrs r0, r1\n\
- strb r0, [r4, 0x7]\n\
- bl sub_80AE074\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- beq _080AC458\n\
- ldrb r0, [r4, 0x11]\n\
- bl sub_80B114C\n\
-_080AC458:\n\
- ldr r4, _080AC48C @ =sub_80C8C80\n\
- adds r0, r4, 0\n\
- movs r1, 0\n\
- bl CreateTask\n\
- lsls r0, 24\n\
- lsrs r0, 24\n\
- ldr r2, _080AC490 @ =sub_80AD8DC\n\
- adds r1, r4, 0\n\
- bl SetTaskFuncWithFollowupFunc\n\
- bl sub_80AF860\n\
- ldr r1, _080AC494 @ =gTasks\n\
- mov r0, r9\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- strh r5, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC484: .4byte gSharedMem + 0x19204\n\
-_080AC488: .4byte gIsLinkContest\n\
-_080AC48C: .4byte sub_80C8C80\n\
-_080AC490: .4byte sub_80AD8DC\n\
-_080AC494: .4byte gTasks\n\
-_080AC498:\n\
- adds r0, r7, 0\n\
- bl sub_80B114C\n\
- ldr r0, _080AC4B0 @ =gTasks\n\
- mov r1, r9\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0x2\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC4B0: .4byte gTasks\n\
-_080AC4B4:\n\
- ldrb r1, [r6, 0x7]\n\
- movs r0, 0x4\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AC4C2\n\
- bl _080AD8CA\n\
-_080AC4C2:\n\
- mov r1, r8\n\
- lsls r0, r1, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r1, 0x2\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
-_080AC4D4:\n\
- lsls r0, r7, 3\n\
- subs r0, r7\n\
- lsls r0, 2\n\
- ldr r1, _080AC508 @ =gSharedMem + 0x19260\n\
- adds r2, r0, r1\n\
- ldrb r1, [r2, 0xC]\n\
- movs r0, 0x6\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- bne _080AC4F6\n\
- ldrb r1, [r2, 0xB]\n\
- movs r0, 0x80\n\
- ands r0, r1\n\
- lsls r0, 24\n\
- lsrs r6, r0, 24\n\
- cmp r6, 0\n\
- beq _080AC50C\n\
-_080AC4F6:\n\
- mov r2, r8\n\
- lsls r0, r2, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r1, 0x1F\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC508: .4byte gSharedMem + 0x19260\n\
-_080AC50C:\n\
- bl sub_80AF138\n\
- adds r0, r7, 0\n\
- movs r1, 0\n\
- bl sub_80B0CDC\n\
- ldr r0, _080AC530 @ =gTasks\n\
- mov r3, r8\n\
- lsls r1, r3, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- strh r6, [r1, 0x1C]\n\
- movs r0, 0x3\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC530: .4byte gTasks\n\
-_080AC534:\n\
- mov r4, r8\n\
- lsls r4, 2\n\
- mov r9, r4\n\
- ldr r4, _080AC5C4 @ =gSharedMem + 0x19348\n\
- ldr r1, _080AC5C8 @ =gBattleMonForms\n\
- movs r2, 0\n\
- adds r0, r1, 0x3\n\
-_080AC542:\n\
- strb r2, [r0]\n\
- subs r0, 0x1\n\
- cmp r0, r1\n\
- bge _080AC542\n\
- movs r6, 0x4\n\
- adds r0, r4, 0\n\
- movs r1, 0\n\
- movs r2, 0x14\n\
- bl memset\n\
- ldr r5, _080AC5CC @ =0xfffffebc\n\
- adds r7, r4, r5\n\
- ldrb r0, [r7, 0x11]\n\
- bl sub_80B28F0\n\
- ldr r3, _080AC5D0 @ =gContestMons\n\
- ldrb r2, [r7, 0x11]\n\
- lsls r2, 6\n\
- adds r0, r2, r3\n\
- ldrh r0, [r0]\n\
- adds r1, r3, 0\n\
- adds r1, 0x3C\n\
- adds r1, r2, r1\n\
- ldr r1, [r1]\n\
- adds r3, 0x38\n\
- adds r2, r3\n\
- ldr r2, [r2]\n\
- bl sub_80AE9FC\n\
- lsls r0, 24\n\
- lsrs r5, r0, 24\n\
- ldr r2, _080AC5D4 @ =gSprites\n\
- lsls r0, r5, 4\n\
- adds r0, r5\n\
- lsls r0, 2\n\
- adds r3, r0, r2\n\
- movs r1, 0x78\n\
- strh r1, [r3, 0x24]\n\
- adds r2, 0x1C\n\
- adds r0, r2\n\
- ldr r1, _080AC5D8 @ =sub_80AD8FC\n\
- str r1, [r0]\n\
- ldr r0, _080AC5DC @ =gTasks\n\
- mov r4, r9\n\
- add r4, r8\n\
- lsls r4, 3\n\
- adds r4, r0\n\
- strh r5, [r4, 0xC]\n\
- ldr r1, _080AC5E0 @ =gObjectBankIDs\n\
- ldr r0, _080AC5E4 @ =gBankAttacker\n\
- ldrb r0, [r0]\n\
- adds r0, r1\n\
- strb r5, [r0]\n\
- ldrb r0, [r7, 0x11]\n\
- bl sub_80B09E4\n\
- lsls r0, 24\n\
- lsrs r0, 24\n\
- movs r1, 0\n\
- bl sub_80B0BC4\n\
- strh r6, [r4, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC5C4: .4byte gSharedMem + 0x19348\n\
-_080AC5C8: .4byte gBattleMonForms\n\
-_080AC5CC: .4byte 0xfffffebc\n\
-_080AC5D0: .4byte gContestMons\n\
-_080AC5D4: .4byte gSprites\n\
-_080AC5D8: .4byte sub_80AD8FC\n\
-_080AC5DC: .4byte gTasks\n\
-_080AC5E0: .4byte gObjectBankIDs\n\
-_080AC5E4: .4byte gBankAttacker\n\
-_080AC5E8:\n\
- mov r1, r8\n\
- lsls r0, r1, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- mov r3, r12\n\
- adds r2, r0, r3\n\
- ldrb r5, [r2, 0xC]\n\
- ldr r1, _080AC62C @ =gSprites\n\
- lsls r0, r5, 4\n\
- adds r0, r5\n\
- lsls r0, 2\n\
- adds r1, 0x1C\n\
- adds r0, r1\n\
- ldr r1, [r0]\n\
- ldr r0, _080AC630 @ =SpriteCallbackDummy\n\
- cmp r1, r0\n\
- beq _080AC60E\n\
- bl _080AD8CA\n\
-_080AC60E:\n\
- lsls r0, r7, 2\n\
- ldr r1, _080AC634 @ =gSharedMem + 0x19338\n\
- adds r0, r1\n\
- ldrb r1, [r0, 0x2]\n\
- movs r0, 0x2\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AC622\n\
- bl _080AD8CA\n\
-_080AC622:\n\
- movs r0, 0x5\n\
- strh r0, [r2, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC62C: .4byte gSprites\n\
-_080AC630: .4byte SpriteCallbackDummy\n\
-_080AC634: .4byte gSharedMem + 0x19338\n\
-_080AC638:\n\
- lsls r0, r7, 3\n\
- subs r0, r7\n\
- lsls r0, 2\n\
- ldr r1, _080AC660 @ =gSharedMem + 0x19260\n\
- adds r5, r0, r1\n\
- ldrb r1, [r5, 0xC]\n\
- movs r0, 0x1\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AC664\n\
- mov r4, r8\n\
- lsls r0, r4, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r1, 0x21\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC660: .4byte gSharedMem + 0x19260\n\
-_080AC664:\n\
- bl sub_80AF138\n\
- ldr r0, _080AC690 @ =gStringVar1\n\
- lsls r1, r7, 6\n\
- ldr r2, _080AC694 @ =gContestMons + 0x2\n\
- adds r1, r2\n\
- bl StringCopy\n\
- ldrh r1, [r5, 0x6]\n\
- movs r0, 0xB1\n\
- lsls r0, 1\n\
- cmp r1, r0\n\
- bhi _080AC6A0\n\
- ldr r0, _080AC698 @ =gStringVar2\n\
- adds r2, r1, 0\n\
- movs r1, 0xD\n\
- muls r1, r2\n\
- ldr r2, _080AC69C @ =gMoveNames\n\
- adds r1, r2\n\
- bl StringCopy\n\
- b _080AC6B0\n\
- .align 2, 0\n\
-_080AC690: .4byte gStringVar1\n\
-_080AC694: .4byte gContestMons + 0x2\n\
-_080AC698: .4byte gStringVar2\n\
-_080AC69C: .4byte gMoveNames\n\
-_080AC6A0:\n\
- ldr r0, _080AC6E0 @ =gStringVar2\n\
- ldr r2, _080AC6E4 @ =gUnknown_083CC330\n\
- ldrb r1, [r5, 0xA]\n\
- lsls r1, 2\n\
- adds r1, r2\n\
- ldr r1, [r1]\n\
- bl StringCopy\n\
-_080AC6B0:\n\
- ldr r4, _080AC6E8 @ =gStringVar4\n\
- ldr r1, _080AC6EC @ =gUnknown_083CAFD7\n\
- adds r0, r4, 0\n\
- bl StringExpandPlaceholders\n\
- ldr r0, _080AC6F0 @ =gMenuWindow\n\
- movs r2, 0xC2\n\
- lsls r2, 2\n\
- movs r1, 0xF\n\
- str r1, [sp]\n\
- adds r1, r4, 0\n\
- movs r3, 0x1\n\
- bl sub_8002EB0\n\
- ldr r1, _080AC6F4 @ =gTasks\n\
- mov r5, r8\n\
- lsls r0, r5, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0x6\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC6E0: .4byte gStringVar2\n\
-_080AC6E4: .4byte gUnknown_083CC330\n\
-_080AC6E8: .4byte gStringVar4\n\
-_080AC6EC: .4byte gUnknown_083CAFD7\n\
-_080AC6F0: .4byte gMenuWindow\n\
-_080AC6F4: .4byte gTasks\n\
-_080AC6F8:\n\
- ldr r0, _080AC724 @ =gMenuWindow\n\
- bl sub_80037A0\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- bne _080AC708\n\
- bl _080AD8CA\n\
-_080AC708:\n\
- ldr r0, _080AC728 @ =gSharedMem + 0x19204\n\
- adds r0, 0x5A\n\
- movs r1, 0\n\
- strb r1, [r0]\n\
- ldr r1, _080AC72C @ =gTasks\n\
- mov r2, r8\n\
- lsls r0, r2, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0x7\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC724: .4byte gMenuWindow\n\
-_080AC728: .4byte gSharedMem + 0x19204\n\
-_080AC72C: .4byte gTasks\n\
-_080AC730:\n\
- ldrb r1, [r6, 0x11]\n\
- lsls r0, r1, 3\n\
- subs r0, r1\n\
- lsls r0, 2\n\
- adds r1, r6, 0\n\
- adds r1, 0x5C\n\
- adds r0, r1\n\
- ldrh r0, [r0, 0x6]\n\
- bl sub_80B2760\n\
- adds r4, r0, 0\n\
- lsls r4, 16\n\
- lsrs r4, 16\n\
- ldrb r0, [r6, 0x11]\n\
- bl sub_80B2790\n\
- ldrb r0, [r6, 0x11]\n\
- bl sub_80B28F0\n\
- adds r0, r4, 0\n\
- bl sub_80B29B4\n\
- adds r0, r4, 0\n\
- bl ExecuteMoveAnim\n\
- ldr r1, _080AC778 @ =gTasks\n\
- mov r3, r8\n\
- lsls r0, r3, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0x8\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC778: .4byte gTasks\n\
-_080AC77C:\n\
- ldr r0, _080AC7B8 @ =gAnimScriptCallback\n\
- ldr r0, [r0]\n\
- bl _call_via_r0\n\
- ldr r0, _080AC7BC @ =gAnimScriptActive\n\
- ldrb r4, [r0]\n\
- cmp r4, 0\n\
- beq _080AC790\n\
- bl _080AD8CA\n\
-_080AC790:\n\
- adds r0, r7, 0\n\
- bl sub_80B28CC\n\
- ldr r1, _080AC7C0 @ =gSharedMem + 0x19204\n\
- adds r0, r1, 0\n\
- adds r0, 0x5A\n\
- ldrb r0, [r0]\n\
- cmp r0, 0\n\
- beq _080AC7C8\n\
- ldr r0, _080AC7C4 @ =gTasks\n\
- mov r5, r8\n\
- lsls r1, r5, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- strh r4, [r1, 0x1C]\n\
- movs r0, 0x9\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC7B8: .4byte gAnimScriptCallback\n\
-_080AC7BC: .4byte gAnimScriptActive\n\
-_080AC7C0: .4byte gSharedMem + 0x19204\n\
-_080AC7C4: .4byte gTasks\n\
-_080AC7C8:\n\
- lsls r0, r7, 3\n\
- subs r0, r7\n\
- lsls r0, 2\n\
- adds r1, 0x5C\n\
- adds r0, r1\n\
- ldrb r1, [r0, 0x15]\n\
- movs r0, 0x10\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- bne _080AC7E2\n\
- adds r0, r7, 0\n\
- bl sub_80B03A8\n\
-_080AC7E2:\n\
- bl sub_80B20C4\n\
- ldr r0, _080AC7F0 @ =gTasks\n\
- mov r2, r8\n\
- lsls r1, r2, 2\n\
- b _080AC8E2\n\
- .align 2, 0\n\
-_080AC7F0: .4byte gTasks\n\
-_080AC7F4:\n\
- mov r3, r8\n\
- lsls r0, r3, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- mov r4, r12\n\
- adds r2, r0, r4\n\
- ldrh r0, [r2, 0x1C]\n\
- adds r1, r0, 0x1\n\
- strh r1, [r2, 0x1C]\n\
- lsls r0, 16\n\
- asrs r0, 16\n\
- cmp r0, 0x1E\n\
- bgt _080AC812\n\
- bl _080AD8CA\n\
-_080AC812:\n\
- movs r0, 0\n\
- strh r0, [r2, 0x1C]\n\
- movs r0, 0x7\n\
- strh r0, [r2, 0x8]\n\
- bl _080AD8CA\n\
-_080AC81E:\n\
- mov r5, r8\n\
- lsls r3, r5, 2\n\
- adds r0, r3, r5\n\
- lsls r0, 3\n\
- mov r1, r12\n\
- adds r4, r0, r1\n\
- movs r0, 0\n\
- strh r0, [r4, 0xA]\n\
- lsls r2, r7, 3\n\
- subs r0, r2, r7\n\
- lsls r0, 2\n\
- ldr r1, _080AC858 @ =gSharedMem + 0x19260\n\
- adds r6, r0, r1\n\
- ldrb r0, [r6, 0x13]\n\
- mov r9, r3\n\
- mov r10, r2\n\
- adds r3, r1, 0\n\
- cmp r0, 0xFF\n\
- beq _080AC85C\n\
- adds r1, r0, 0\n\
- adds r0, r7, 0\n\
- bl sub_80B146C\n\
- movs r0, 0xFF\n\
- strb r0, [r6, 0x13]\n\
- movs r0, 0x18\n\
- strh r0, [r4, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC858: .4byte gSharedMem + 0x19260\n\
-_080AC85C:\n\
- ldrb r0, [r6, 0x14]\n\
- cmp r0, 0xFF\n\
- beq _080AC8C4\n\
- movs r6, 0\n\
- cmp r6, r7\n\
- beq _080AC86E\n\
- ldrb r0, [r3, 0x13]\n\
- cmp r0, 0xFF\n\
- bne _080AC886\n\
-_080AC86E:\n\
- adds r6, 0x1\n\
- cmp r6, 0x3\n\
- bgt _080AC886\n\
- cmp r6, r7\n\
- beq _080AC86E\n\
- lsls r0, r6, 3\n\
- subs r0, r6\n\
- lsls r0, 2\n\
- adds r0, r3\n\
- ldrb r0, [r0, 0x13]\n\
- cmp r0, 0xFF\n\
- beq _080AC86E\n\
-_080AC886:\n\
- cmp r6, 0x4\n\
- bne _080AC8B4\n\
- mov r2, r10\n\
- subs r4, r2, r7\n\
- lsls r4, 2\n\
- adds r4, r3\n\
- ldrb r1, [r4, 0x14]\n\
- adds r0, r7, 0\n\
- bl sub_80B146C\n\
- movs r0, 0xFF\n\
- strb r0, [r4, 0x14]\n\
- ldr r1, _080AC8B0 @ =gTasks\n\
- mov r0, r9\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0x18\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC8B0: .4byte gTasks\n\
-_080AC8B4:\n\
- mov r0, r9\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r1, 0x30\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
-_080AC8C4:\n\
- movs r0, 0x30\n\
- strh r0, [r4, 0x8]\n\
- bl _080AD8CA\n\
-_080AC8CC:\n\
- ldr r0, _080AC8F0 @ =gMenuWindow\n\
- bl sub_80037A0\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- bne _080AC8DC\n\
- bl _080AD8CA\n\
-_080AC8DC:\n\
- ldr r0, _080AC8F4 @ =gTasks\n\
- mov r3, r8\n\
- lsls r1, r3, 2\n\
-_080AC8E2:\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0x17\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC8F0: .4byte gMenuWindow\n\
-_080AC8F4: .4byte gTasks\n\
-_080AC8F8:\n\
- lsls r0, r7, 3\n\
- subs r0, r7\n\
- lsls r0, 2\n\
- ldr r1, _080AC914 @ =gSharedMem + 0x19260\n\
- adds r0, r1\n\
- ldrb r0, [r0, 0x11]\n\
- movs r3, 0x3\n\
- ands r3, r0\n\
- cmp r3, 0x1\n\
- bne _080AC918\n\
- movs r0, 0x5\n\
- bl sub_80B1710\n\
- b _080AC934\n\
- .align 2, 0\n\
-_080AC914: .4byte gSharedMem + 0x19260\n\
-_080AC918:\n\
- cmp r3, 0x2\n\
- bne _080AC924\n\
- movs r0, 0x6\n\
- bl sub_80B1710\n\
- b _080AC934\n\
-_080AC924:\n\
- cmp r3, 0x3\n\
- beq _080AC92E\n\
- mov r4, r8\n\
- lsls r0, r4, 2\n\
- b _080AC95E\n\
-_080AC92E:\n\
- movs r0, 0x7\n\
- bl sub_80B1710\n\
-_080AC934:\n\
- ldr r0, _080AC948 @ =gTasks\n\
- mov r5, r8\n\
- lsls r1, r5, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0x31\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC948: .4byte gTasks\n\
-_080AC94C:\n\
- ldrb r1, [r6, 0x6]\n\
- movs r0, 0x10\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AC95A\n\
- bl _080AD8CA\n\
-_080AC95A:\n\
- mov r1, r8\n\
- lsls r0, r1, 2\n\
-_080AC95E:\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r1, 0x2F\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
-_080AC96C:\n\
- movs r0, 0x1\n\
- bl sub_80B1FD0\n\
- ldr r0, _080AC988 @ =gTasks\n\
- mov r2, r8\n\
- lsls r1, r2, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0xC\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC988: .4byte gTasks\n\
-_080AC98C:\n\
- lsls r0, r7, 3\n\
- subs r0, r7\n\
- lsls r0, 2\n\
- ldr r1, _080AC9B8 @ =gSharedMem + 0x19260\n\
- adds r0, r1\n\
- movs r3, 0x2\n\
- ldrsh r1, [r0, r3]\n\
- movs r0, 0\n\
- adds r2, r7, 0\n\
- bl sub_80AFBA0\n\
- ldr r1, _080AC9BC @ =gTasks\n\
- mov r4, r8\n\
- lsls r0, r4, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0xD\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AC9B8: .4byte gSharedMem + 0x19260\n\
-_080AC9BC: .4byte gTasks\n\
-_080AC9C0:\n\
- ldrb r0, [r6, 0x11]\n\
- lsls r0, 2\n\
- movs r5, 0x9A\n\
- lsls r5, 1\n\
- adds r1, r6, r5\n\
- adds r0, r1\n\
- ldrb r1, [r0, 0x2]\n\
- movs r0, 0x4\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AC9DA\n\
- bl _080AD8CA\n\
-_080AC9DA:\n\
- mov r1, r8\n\
- lsls r0, r1, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r1, 0x23\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
-_080AC9EC:\n\
- lsls r0, r7, 3\n\
- subs r0, r7\n\
- lsls r0, 2\n\
- ldr r1, _080ACA1C @ =gSharedMem + 0x19260\n\
- adds r0, r1\n\
- ldrb r1, [r0, 0x10]\n\
- movs r0, 0x30\n\
- ands r0, r1\n\
- cmp r0, 0x10\n\
- bne _080ACA06\n\
- movs r0, 0x8\n\
- bl sub_80B1710\n\
-_080ACA06:\n\
- ldr r0, _080ACA20 @ =gTasks\n\
- mov r2, r8\n\
- lsls r1, r2, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0x24\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACA1C: .4byte gSharedMem + 0x19260\n\
-_080ACA20: .4byte gTasks\n\
-_080ACA24:\n\
- ldrb r1, [r6, 0x6]\n\
- movs r0, 0x10\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080ACA32\n\
- bl _080AD8CA\n\
-_080ACA32:\n\
- mov r3, r8\n\
- lsls r0, r3, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r1, 0x25\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
-_080ACA44:\n\
- adds r0, r7, 0\n\
- movs r1, 0x1\n\
- bl sub_80AEE54\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- beq _080ACA70\n\
- ldr r1, _080ACA6C @ =gTasks\n\
- mov r4, r8\n\
- lsls r0, r4, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0\n\
- strh r1, [r0, 0x1C]\n\
- movs r1, 0x26\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACA6C: .4byte gTasks\n\
-_080ACA70:\n\
- ldr r0, _080ACA80 @ =gTasks\n\
- mov r5, r8\n\
- lsls r1, r5, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- b _080ACAA6\n\
- .align 2, 0\n\
-_080ACA80: .4byte gTasks\n\
-_080ACA84:\n\
- mov r1, r8\n\
- lsls r0, r1, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- mov r2, r12\n\
- adds r1, r0, r2\n\
- ldrh r0, [r1, 0x1C]\n\
- adds r0, 0x1\n\
- strh r0, [r1, 0x1C]\n\
- lsls r0, 16\n\
- asrs r0, 16\n\
- cmp r0, 0x14\n\
- bgt _080ACAA2\n\
- bl _080AD8CA\n\
-_080ACAA2:\n\
- movs r0, 0\n\
- strh r0, [r1, 0x1C]\n\
-_080ACAA6:\n\
- movs r0, 0x32\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
-_080ACAAE:\n\
- adds r0, r7, 0\n\
- bl sub_80AF038\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- beq _080ACAC0\n\
- movs r0, 0x63\n\
- bl PlaySE\n\
-_080ACAC0:\n\
- ldr r0, _080ACAD4 @ =gTasks\n\
- mov r3, r8\n\
- lsls r1, r3, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0x19\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACAD4: .4byte gTasks\n\
-_080ACAD8:\n\
- mov r4, r8\n\
- lsls r0, r4, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r1, 0\n\
- strh r1, [r0, 0xA]\n\
- movs r1, 0x1A\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
-_080ACAEE:\n\
- movs r2, 0\n\
- movs r4, 0\n\
- mov r5, r8\n\
- lsls r1, r5, 2\n\
- adds r0, r1, r5\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r3, 0xA\n\
- ldrsh r6, [r0, r3]\n\
- mov r9, r1\n\
- cmp r6, 0x3\n\
- bgt _080ACB58\n\
- ldr r3, _080ACB24 @ =gUnknown_02038696\n\
- ldr r1, _080ACB28 @ =gSharedMem + 0x19260\n\
-_080ACB0A:\n\
- movs r4, 0\n\
- movs r2, 0\n\
- cmp r4, r7\n\
- beq _080ACB2C\n\
- ldrb r0, [r3]\n\
- cmp r0, r6\n\
- bne _080ACB2C\n\
- ldrb r0, [r1, 0x13]\n\
- cmp r0, 0xFF\n\
- beq _080ACB2C\n\
- movs r4, 0x1\n\
- b _080ACB60\n\
- .align 2, 0\n\
-_080ACB24: .4byte gUnknown_02038696\n\
-_080ACB28: .4byte gSharedMem + 0x19260\n\
-_080ACB2C:\n\
- adds r2, 0x1\n\
- cmp r2, 0x3\n\
- bgt _080ACB4E\n\
- cmp r2, r7\n\
- beq _080ACB2C\n\
- adds r0, r2, r3\n\
- ldrb r0, [r0]\n\
- cmp r0, r6\n\
- bne _080ACB2C\n\
- lsls r0, r2, 3\n\
- subs r0, r2\n\
- lsls r0, 2\n\
- adds r0, r1\n\
- ldrb r0, [r0, 0x13]\n\
- cmp r0, 0xFF\n\
- beq _080ACB2C\n\
- movs r4, 0x1\n\
-_080ACB4E:\n\
- cmp r4, 0\n\
- bne _080ACB60\n\
- adds r6, 0x1\n\
- cmp r6, 0x3\n\
- ble _080ACB0A\n\
-_080ACB58:\n\
- lsls r0, r4, 24\n\
- asrs r1, r0, 24\n\
- cmp r1, 0\n\
- beq _080ACB98\n\
-_080ACB60:\n\
- mov r5, r9\n\
- add r5, r8\n\
- lsls r5, 3\n\
- add r5, r12\n\
- ldr r0, _080ACB90 @ =gUnknown_02038696\n\
- adds r0, r2, r0\n\
- ldrb r0, [r0]\n\
- strh r0, [r5, 0xA]\n\
- lsls r0, r2, 24\n\
- lsrs r0, 24\n\
- lsls r4, r2, 3\n\
- subs r4, r2\n\
- lsls r4, 2\n\
- ldr r1, _080ACB94 @ =gSharedMem + 0x19260\n\
- adds r4, r1\n\
- ldrb r1, [r4, 0x13]\n\
- bl sub_80B146C\n\
- movs r0, 0xFF\n\
- strb r0, [r4, 0x13]\n\
- movs r0, 0x1B\n\
- strh r0, [r5, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACB90: .4byte gUnknown_02038696\n\
-_080ACB94: .4byte gSharedMem + 0x19260\n\
-_080ACB98:\n\
- mov r0, r9\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- strh r1, [r0, 0xA]\n\
- strh r1, [r0, 0x1C]\n\
- movs r1, 0x33\n\
- strh r1, [r0, 0x8]\n\
- bl sub_80AF120\n\
- bl _080AD8CA\n\
-_080ACBB0:\n\
- ldr r0, _080ACBD4 @ =gMenuWindow\n\
- bl sub_80037A0\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- bne _080ACBC0\n\
- bl _080AD8CA\n\
-_080ACBC0:\n\
- ldr r0, _080ACBD8 @ =gTasks\n\
- mov r4, r8\n\
- lsls r1, r4, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0x1C\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACBD4: .4byte gMenuWindow\n\
-_080ACBD8: .4byte gTasks\n\
-_080ACBDC:\n\
- movs r6, 0\n\
- mov r5, r8\n\
- lsls r0, r5, 2\n\
- adds r1, r0, r5\n\
- lsls r1, 3\n\
- add r1, r12\n\
- movs r3, 0xA\n\
- ldrsh r2, [r1, r3]\n\
- ldr r1, _080ACC38 @ =gUnknown_02038696\n\
- mov r9, r0\n\
- ldr r3, _080ACC3C @ =gSharedMem + 0x19260\n\
- adds r5, r1, 0\n\
- ldrb r4, [r5]\n\
- cmp r2, r4\n\
- beq _080ACC08\n\
- adds r1, r2, 0\n\
- adds r2, r5, 0\n\
-_080ACBFE:\n\
- adds r6, 0x1\n\
- adds r0, r6, r2\n\
- ldrb r0, [r0]\n\
- cmp r1, r0\n\
- bne _080ACBFE\n\
-_080ACC08:\n\
- lsls r0, r6, 3\n\
- subs r0, r6\n\
- lsls r0, 2\n\
- adds r0, r3\n\
- ldrb r1, [r0, 0xE]\n\
- ldrh r0, [r0, 0x2]\n\
- adds r0, r1\n\
- lsls r0, 16\n\
- asrs r0, 16\n\
- negs r1, r1\n\
- lsls r2, r6, 24\n\
- lsrs r2, 24\n\
- bl sub_80AFBA0\n\
- ldr r1, _080ACC40 @ =gTasks\n\
- mov r0, r9\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0x1D\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACC38: .4byte gUnknown_02038696\n\
-_080ACC3C: .4byte gSharedMem + 0x19260\n\
-_080ACC40: .4byte gTasks\n\
-_080ACC44:\n\
- movs r6, 0\n\
- mov r5, r8\n\
- lsls r0, r5, 2\n\
- adds r1, r0, r5\n\
- lsls r1, 3\n\
- add r1, r12\n\
- movs r2, 0xA\n\
- ldrsh r3, [r1, r2]\n\
- ldr r1, _080ACC90 @ =gUnknown_02038696\n\
- mov r9, r0\n\
- ldr r2, _080ACC94 @ =gSharedMem + 0x19338\n\
- adds r5, r1, 0\n\
- ldrb r4, [r5]\n\
- cmp r3, r4\n\
- beq _080ACC6C\n\
-_080ACC62:\n\
- adds r6, 0x1\n\
- adds r0, r6, r1\n\
- ldrb r0, [r0]\n\
- cmp r3, r0\n\
- bne _080ACC62\n\
-_080ACC6C:\n\
- lsls r0, r6, 2\n\
- adds r0, r2\n\
- ldrb r1, [r0, 0x2]\n\
- movs r0, 0x4\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080ACC7E\n\
- bl _080AD8CA\n\
-_080ACC7E:\n\
- mov r0, r9\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r1, 0x27\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACC90: .4byte gUnknown_02038696\n\
-_080ACC94: .4byte gSharedMem + 0x19338\n\
-_080ACC98:\n\
- movs r6, 0\n\
- mov r5, r8\n\
- lsls r0, r5, 2\n\
- adds r1, r0, r5\n\
- lsls r1, 3\n\
- add r1, r12\n\
- movs r3, 0xA\n\
- ldrsh r2, [r1, r3]\n\
- ldr r1, _080ACCE8 @ =gUnknown_02038696\n\
- mov r9, r0\n\
- adds r5, r1, 0\n\
- ldrb r4, [r5]\n\
- cmp r2, r4\n\
- beq _080ACCC2\n\
- adds r1, r2, 0\n\
- adds r2, r5, 0\n\
-_080ACCB8:\n\
- adds r6, 0x1\n\
- adds r0, r6, r2\n\
- ldrb r0, [r0]\n\
- cmp r1, r0\n\
- bne _080ACCB8\n\
-_080ACCC2:\n\
- lsls r0, r6, 24\n\
- lsrs r0, 24\n\
- movs r1, 0x1\n\
- bl sub_80AEE54\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- beq _080ACCF0\n\
- ldr r1, _080ACCEC @ =gTasks\n\
- mov r0, r9\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0\n\
- strh r1, [r0, 0x1C]\n\
- movs r1, 0x28\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACCE8: .4byte gUnknown_02038696\n\
-_080ACCEC: .4byte gTasks\n\
-_080ACCF0:\n\
- ldr r0, _080ACCFC @ =gTasks\n\
- mov r1, r9\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- b _080ACD22\n\
- .align 2, 0\n\
-_080ACCFC: .4byte gTasks\n\
-_080ACD00:\n\
- mov r5, r8\n\
- lsls r0, r5, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- mov r2, r12\n\
- adds r1, r0, r2\n\
- ldrh r0, [r1, 0x1C]\n\
- adds r0, 0x1\n\
- strh r0, [r1, 0x1C]\n\
- lsls r0, 16\n\
- asrs r0, 16\n\
- cmp r0, 0x14\n\
- bgt _080ACD1E\n\
- bl _080AD8CA\n\
-_080ACD1E:\n\
- movs r0, 0\n\
- strh r0, [r1, 0x1C]\n\
-_080ACD22:\n\
- movs r0, 0x1E\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
-_080ACD2A:\n\
- movs r6, 0\n\
- ldr r2, _080ACD78 @ =gUnknown_02038696\n\
- ldrb r3, [r2]\n\
- mov r4, r8\n\
- lsls r1, r4, 2\n\
- adds r0, r1, r4\n\
- lsls r0, 3\n\
- mov r5, r12\n\
- adds r4, r0, r5\n\
- movs r5, 0xA\n\
- ldrsh r0, [r4, r5]\n\
- mov r9, r1\n\
- adds r5, r2, 0\n\
- cmp r3, r0\n\
- beq _080ACD5E\n\
- adds r3, r5, 0\n\
- adds r2, r4, 0\n\
-_080ACD4C:\n\
- adds r6, 0x1\n\
- cmp r6, 0x3\n\
- bgt _080ACD5E\n\
- adds r0, r6, r3\n\
- ldrb r1, [r0]\n\
- movs r4, 0xA\n\
- ldrsh r0, [r2, r4]\n\
- cmp r1, r0\n\
- bne _080ACD4C\n\
-_080ACD5E:\n\
- lsls r4, r6, 24\n\
- lsrs r0, r4, 24\n\
- bl sub_80AF038\n\
- lsls r0, 24\n\
- adds r5, r4, 0\n\
- cmp r0, 0\n\
- beq _080ACD7C\n\
- movs r0, 0x63\n\
- bl PlaySE\n\
- b _080ACD82\n\
- .align 2, 0\n\
-_080ACD78: .4byte gUnknown_02038696\n\
-_080ACD7C:\n\
- movs r0, 0x64\n\
- bl PlaySE\n\
-_080ACD82:\n\
- lsls r0, r6, 3\n\
- subs r0, r6\n\
- lsls r0, 2\n\
- ldr r1, _080ACDC0 @ =gSharedMem + 0x19260\n\
- adds r4, r0, r1\n\
- ldrb r1, [r4, 0x15]\n\
- movs r0, 0x20\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080ACDA6\n\
- lsrs r0, r5, 24\n\
- bl sub_80B03A8\n\
- ldrb r1, [r4, 0x15]\n\
- movs r0, 0x21\n\
- negs r0, r0\n\
- ands r0, r1\n\
- strb r0, [r4, 0x15]\n\
-_080ACDA6:\n\
- ldr r0, _080ACDC4 @ =gTasks\n\
- mov r1, r9\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- ldrh r0, [r1, 0xA]\n\
- adds r0, 0x1\n\
- strh r0, [r1, 0xA]\n\
- movs r0, 0x1A\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACDC0: .4byte gSharedMem + 0x19260\n\
-_080ACDC4: .4byte gTasks\n\
-_080ACDC8:\n\
- mov r5, r8\n\
- lsls r2, r5, 2\n\
- adds r0, r2, r5\n\
- lsls r0, 3\n\
- mov r1, r12\n\
- adds r3, r0, r1\n\
- ldrh r0, [r3, 0x1C]\n\
- adds r1, r0, 0x1\n\
- strh r1, [r3, 0x1C]\n\
- lsls r0, 16\n\
- asrs r0, 16\n\
- mov r9, r2\n\
- cmp r0, 0x9\n\
- bgt _080ACDE8\n\
- bl _080AD8CA\n\
-_080ACDE8:\n\
- movs r0, 0\n\
- strh r0, [r3, 0x1C]\n\
- lsls r0, r7, 3\n\
- subs r0, r7\n\
- lsls r0, 2\n\
- ldr r1, _080ACE48 @ =gSharedMem + 0x19260\n\
- adds r2, r0, r1\n\
- ldrb r1, [r2, 0xC]\n\
- movs r0, 0x6\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- bne _080ACE0A\n\
- ldrb r1, [r2, 0x11]\n\
- movs r0, 0x4\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080ACE36\n\
-_080ACE0A:\n\
- bl sub_80AF138\n\
- ldr r0, _080ACE4C @ =gStringVar1\n\
- lsls r1, r7, 6\n\
- ldr r2, _080ACE50 @ =gContestMons + 0x2\n\
- adds r1, r2\n\
- bl StringCopy\n\
- ldr r4, _080ACE54 @ =gStringVar4\n\
- ldr r1, _080ACE58 @ =gUnknown_083CC103\n\
- adds r0, r4, 0\n\
- bl StringExpandPlaceholders\n\
- ldr r0, _080ACE5C @ =gMenuWindow\n\
- movs r2, 0xC2\n\
- lsls r2, 2\n\
- movs r1, 0xF\n\
- str r1, [sp]\n\
- adds r1, r4, 0\n\
- movs r3, 0x1\n\
- bl sub_8002EB0\n\
-_080ACE36:\n\
- ldr r0, _080ACE60 @ =gTasks\n\
- mov r1, r9\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0x34\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACE48: .4byte gSharedMem + 0x19260\n\
-_080ACE4C: .4byte gStringVar1\n\
-_080ACE50: .4byte gContestMons + 0x2\n\
-_080ACE54: .4byte gStringVar4\n\
-_080ACE58: .4byte gUnknown_083CC103\n\
-_080ACE5C: .4byte gMenuWindow\n\
-_080ACE60: .4byte gTasks\n\
-_080ACE64:\n\
- ldr r0, _080ACE9C @ =gMenuWindow\n\
- bl sub_80037A0\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- bne _080ACE74\n\
- bl _080AD8CA\n\
-_080ACE74:\n\
- lsls r0, r7, 3\n\
- subs r0, r7\n\
- lsls r0, 2\n\
- ldr r1, _080ACEA0 @ =gSharedMem + 0x19260\n\
- adds r0, r1\n\
- ldrb r1, [r0, 0x15]\n\
- movs r0, 0x40\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- bne _080ACEA8\n\
- ldr r0, _080ACEA4 @ =gTasks\n\
- mov r2, r8\n\
- lsls r1, r2, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0x11\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACE9C: .4byte gMenuWindow\n\
-_080ACEA0: .4byte gSharedMem + 0x19260\n\
-_080ACEA4: .4byte gTasks\n\
-_080ACEA8:\n\
- ldr r0, _080ACEBC @ =gTasks\n\
- mov r3, r8\n\
- lsls r1, r3, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0xE\n\
- strh r0, [r1, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACEBC: .4byte gTasks\n\
-_080ACEC0:\n\
- lsls r0, r7, 3\n\
- subs r0, r7\n\
- lsls r0, 2\n\
- ldr r1, _080ACEE4 @ =gSharedMem + 0x19260\n\
- adds r0, r1\n\
- ldrb r4, [r0, 0x16]\n\
- lsls r4, 24\n\
- lsrs r5, r4, 24\n\
- cmp r5, 0\n\
- beq _080ACF48\n\
- bl sub_80AF138\n\
- asrs r0, r4, 24\n\
- cmp r0, 0x1\n\
- bne _080ACEF0\n\
- ldr r0, _080ACEE8 @ =gMenuWindow\n\
- ldr r1, _080ACEEC @ =gUnknown_083CBD79\n\
- b _080ACEF8\n\
- .align 2, 0\n\
-_080ACEE4: .4byte gSharedMem + 0x19260\n\
-_080ACEE8: .4byte gMenuWindow\n\
-_080ACEEC: .4byte gUnknown_083CBD79\n\
-_080ACEF0:\n\
- cmp r0, 0x2\n\
- bne _080ACF10\n\
- ldr r0, _080ACF08 @ =gMenuWindow\n\
- ldr r1, _080ACF0C @ =gUnknown_083CBD9D\n\
-_080ACEF8:\n\
- movs r2, 0xC2\n\
- lsls r2, 2\n\
- movs r3, 0xF\n\
- str r3, [sp]\n\
- movs r3, 0x1\n\
- bl sub_8002EB0\n\
- b _080ACF22\n\
- .align 2, 0\n\
-_080ACF08: .4byte gMenuWindow\n\
-_080ACF0C: .4byte gUnknown_083CBD9D\n\
-_080ACF10:\n\
- ldr r0, _080ACF3C @ =gMenuWindow\n\
- ldr r1, _080ACF40 @ =gUnknown_083CBDC6\n\
- movs r2, 0xC2\n\
- lsls r2, 2\n\
- movs r3, 0xF\n\
- str r3, [sp]\n\
- movs r3, 0x1\n\
- bl sub_8002EB0\n\
-_080ACF22:\n\
- movs r0, 0x3\n\
- bl sub_80B1710\n\
- ldr r1, _080ACF44 @ =gTasks\n\
- mov r4, r8\n\
- lsls r0, r4, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0\n\
- strh r1, [r0, 0x1C]\n\
- b _080ACF88\n\
- .align 2, 0\n\
-_080ACF3C: .4byte gMenuWindow\n\
-_080ACF40: .4byte gUnknown_083CBDC6\n\
-_080ACF44: .4byte gTasks\n\
-_080ACF48:\n\
- bl sub_80AF138\n\
- ldr r0, _080ACF90 @ =gStringVar1\n\
- lsls r1, r7, 6\n\
- ldr r2, _080ACF94 @ =gContestMons + 0x2\n\
- adds r1, r2\n\
- bl StringCopy\n\
- ldr r4, _080ACF98 @ =gStringVar4\n\
- ldr r1, _080ACF9C @ =gUnknown_083CBD52\n\
- adds r0, r4, 0\n\
- bl StringExpandPlaceholders\n\
- ldr r0, _080ACFA0 @ =gMenuWindow\n\
- movs r2, 0xC2\n\
- lsls r2, 2\n\
- movs r1, 0xF\n\
- str r1, [sp]\n\
- adds r1, r4, 0\n\
- movs r3, 0x1\n\
- bl sub_8002EB0\n\
- movs r0, 0x2\n\
- bl sub_80B1710\n\
- ldr r1, _080ACFA4 @ =gTasks\n\
- mov r2, r8\n\
- lsls r0, r2, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- strh r5, [r0, 0x1C]\n\
-_080ACF88:\n\
- movs r1, 0x2D\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACF90: .4byte gStringVar1\n\
-_080ACF94: .4byte gContestMons + 0x2\n\
-_080ACF98: .4byte gStringVar4\n\
-_080ACF9C: .4byte gUnknown_083CBD52\n\
-_080ACFA0: .4byte gMenuWindow\n\
-_080ACFA4: .4byte gTasks\n\
-_080ACFA8:\n\
- ldrb r1, [r6, 0x6]\n\
- movs r0, 0x10\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080ACFB6\n\
- bl _080AD8CA\n\
-_080ACFB6:\n\
- ldrb r0, [r6, 0x11]\n\
- bl sub_80B09B0\n\
- ldr r1, _080ACFD0 @ =gTasks\n\
- mov r3, r8\n\
- lsls r0, r3, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0xF\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080ACFD0: .4byte gTasks\n\
-_080ACFD4:\n\
- ldr r0, _080AD034 @ =gMenuWindow\n\
- bl sub_80037A0\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- bne _080ACFE4\n\
- bl _080AD8CA\n\
-_080ACFE4:\n\
- ldr r1, _080AD038 @ =gTasks\n\
- mov r4, r8\n\
- lsls r0, r4, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r4, r0, r1\n\
- ldrh r0, [r4, 0x1C]\n\
- adds r0, 0x1\n\
- strh r0, [r4, 0x1C]\n\
- lsls r0, 16\n\
- asrs r0, 16\n\
- cmp r0, 0x32\n\
- bgt _080AD002\n\
- bl _080AD8CA\n\
-_080AD002:\n\
- lsls r0, r7, 3\n\
- subs r0, r7\n\
- lsls r0, 2\n\
- ldr r1, _080AD03C @ =gSharedMem + 0x19260\n\
- adds r6, r0, r1\n\
- ldrb r1, [r6, 0x15]\n\
- movs r5, 0x10\n\
- adds r0, r5, 0\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- bne _080AD02C\n\
- movs r1, 0x2\n\
- ldrsh r0, [r6, r1]\n\
- ldrb r1, [r6, 0x17]\n\
- adds r2, r7, 0\n\
- bl sub_80AFBA0\n\
- ldrh r0, [r6, 0x2]\n\
- ldrb r2, [r6, 0x17]\n\
- adds r0, r2\n\
- strh r0, [r6, 0x2]\n\
-_080AD02C:\n\
- strh r5, [r4, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AD034: .4byte gMenuWindow\n\
-_080AD038: .4byte gTasks\n\
-_080AD03C: .4byte gSharedMem + 0x19260\n\
-_080AD040:\n\
- lsls r0, r7, 2\n\
- ldr r1, _080AD06C @ =gSharedMem + 0x19338\n\
- adds r0, r1\n\
- ldrb r1, [r0, 0x2]\n\
- movs r0, 0x4\n\
- ands r0, r1\n\
- lsls r0, 24\n\
- lsrs r1, r0, 24\n\
- cmp r1, 0\n\
- beq _080AD058\n\
- bl _080AD8CA\n\
-_080AD058:\n\
- mov r3, r8\n\
- lsls r0, r3, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- strh r1, [r0, 0x1C]\n\
- movs r1, 0x11\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AD06C: .4byte gSharedMem + 0x19338\n\
-_080AD070:\n\
- lsls r0, r7, 3\n\
- subs r0, r7\n\
- lsls r0, 2\n\
- ldr r1, _080AD0CC @ =gSharedMem + 0x19260\n\
- adds r0, r1\n\
- ldrb r1, [r0, 0x15]\n\
- movs r0, 0x1\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AD0E8\n\
- bl sub_80AF138\n\
- ldr r0, _080AD0D0 @ =gStringVar1\n\
- lsls r1, r7, 6\n\
- ldr r2, _080AD0D4 @ =gContestMons + 0x2\n\
- adds r1, r2\n\
- bl StringCopy\n\
- ldr r4, _080AD0D8 @ =gStringVar4\n\
- ldr r1, _080AD0DC @ =gUnknown_083CC075\n\
- adds r0, r4, 0\n\
- bl StringExpandPlaceholders\n\
- ldr r0, _080AD0E0 @ =gMenuWindow\n\
- movs r2, 0xC2\n\
- lsls r2, 2\n\
- movs r1, 0xF\n\
- str r1, [sp]\n\
- adds r1, r4, 0\n\
- movs r3, 0x1\n\
- bl sub_8002EB0\n\
- ldr r0, _080AD0E4 @ =gTasks\n\
- mov r5, r8\n\
- lsls r4, r5, 2\n\
- add r4, r8\n\
- lsls r4, 3\n\
- adds r4, r0\n\
- movs r0, 0\n\
- strh r0, [r4, 0x1C]\n\
- bl sub_80B1710\n\
- movs r0, 0x2E\n\
- strh r0, [r4, 0x8]\n\
- bl _080AD8CA\n\
- .align 2, 0\n\
-_080AD0CC: .4byte gSharedMem + 0x19260\n\
-_080AD0D0: .4byte gStringVar1\n\
-_080AD0D4: .4byte gContestMons + 0x2\n\
-_080AD0D8: .4byte gStringVar4\n\
-_080AD0DC: .4byte gUnknown_083CC075\n\
-_080AD0E0: .4byte gMenuWindow\n\
-_080AD0E4: .4byte gTasks\n\
-_080AD0E8:\n\
- mov r1, r8\n\
- lsls r0, r1, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r1, 0x29\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
-_080AD0FA:\n\
- ldrb r1, [r6, 0x6]\n\
- movs r0, 0x10\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AD108\n\
- bl _080AD8CA\n\
-_080AD108:\n\
- mov r2, r8\n\
- lsls r0, r2, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r1, 0x13\n\
- strh r1, [r0, 0x8]\n\
- bl _080AD8CA\n\
-_080AD11A:\n\
- ldr r0, _080AD15C @ =gMenuWindow\n\
- bl sub_80037A0\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- bne _080AD12A\n\
- bl _080AD8CA\n\
-_080AD12A:\n\
- lsls r4, r7, 3\n\
- subs r4, r7\n\
- lsls r4, 2\n\
- ldr r0, _080AD160 @ =gSharedMem + 0x19260\n\
- adds r4, r0\n\
- movs r3, 0x2\n\
- ldrsh r0, [r4, r3]\n\
- ldrb r1, [r4, 0x18]\n\
- negs r1, r1\n\
- adds r2, r7, 0\n\
- bl sub_80AFBA0\n\
- ldrb r1, [r4, 0x18]\n\
- ldrh r0, [r4, 0x2]\n\
- subs r0, r1\n\
- strh r0, [r4, 0x2]\n\
- ldr r1, _080AD164 @ =gTasks\n\
- mov r4, r8\n\
- lsls r0, r4, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0x12\n\
- strh r1, [r0, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD15C: .4byte gMenuWindow\n\
-_080AD160: .4byte gSharedMem + 0x19260\n\
-_080AD164: .4byte gTasks\n\
-_080AD168:\n\
- bl sub_80B0D7C\n\
- lsls r0, r7, 2\n\
- ldr r1, _080AD19C @ =gSharedMem + 0x19338\n\
- adds r0, r1\n\
- ldrb r1, [r0, 0x2]\n\
- movs r0, 0x4\n\
- ands r0, r1\n\
- lsls r0, 24\n\
- lsrs r6, r0, 24\n\
- cmp r6, 0\n\
- beq _080AD182\n\
- b _080AD8CA\n\
-_080AD182:\n\
- ldr r0, _080AD1A0 @ =gTasks\n\
- mov r5, r8\n\
- lsls r4, r5, 2\n\
- add r4, r8\n\
- lsls r4, 3\n\
- adds r4, r0\n\
- strh r6, [r4, 0x1C]\n\
- bl sub_80AF138\n\
- movs r0, 0x29\n\
- strh r0, [r4, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD19C: .4byte gSharedMem + 0x19338\n\
-_080AD1A0: .4byte gTasks\n\
-_080AD1A4:\n\
- ldr r2, _080AD1CC @ =gSharedMem + 0x19328\n\
- ldrb r1, [r2, 0x1]\n\
- movs r0, 0x1\n\
- ands r0, r1\n\
- adds r1, r2, 0\n\
- cmp r0, 0\n\
- beq _080AD1D0\n\
- ldr r0, [r1]\n\
- lsls r0, 20\n\
- lsrs r0, 29\n\
- cmp r7, r0\n\
- beq _080AD1D0\n\
- mov r1, r8\n\
- lsls r0, r1, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r1, 0x39\n\
- strh r1, [r0, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD1CC: .4byte gSharedMem + 0x19328\n\
-_080AD1D0:\n\
- ldrb r4, [r1]\n\
- lsls r2, r7, 3\n\
- subs r0, r2, r7\n\
- lsls r0, 2\n\
- subs r1, 0xC8\n\
- adds r5, r0, r1\n\
- ldrb r1, [r5, 0x11]\n\
- movs r0, 0x10\n\
- ands r0, r1\n\
- mov r10, r2\n\
- cmp r0, 0\n\
- beq _080AD204\n\
- movs r4, 0x1\n\
- ldr r0, _080AD1FC @ =gStringVar3\n\
- ldrh r2, [r5, 0x6]\n\
- movs r1, 0xD\n\
- muls r1, r2\n\
- ldr r2, _080AD200 @ =gMoveNames\n\
- adds r1, r2\n\
- bl StringCopy\n\
- b _080AD21E\n\
- .align 2, 0\n\
-_080AD1FC: .4byte gStringVar3\n\
-_080AD200: .4byte gMoveNames\n\
-_080AD204:\n\
- ldr r0, _080AD270 @ =gStringVar3\n\
- ldr r3, _080AD274 @ =gUnknown_083CC2D8\n\
- ldr r2, _080AD278 @ =gContestMoves\n\
- ldrh r1, [r5, 0x6]\n\
- lsls r1, 3\n\
- adds r1, r2\n\
- ldrb r1, [r1, 0x1]\n\
- lsls r1, 29\n\
- lsrs r1, 27\n\
- adds r1, r3\n\
- ldr r1, [r1]\n\
- bl StringCopy\n\
-_080AD21E:\n\
- lsls r0, r4, 24\n\
- cmp r0, 0\n\
- ble _080AD23A\n\
- mov r2, r10\n\
- subs r0, r2, r7\n\
- lsls r0, 2\n\
- ldr r1, _080AD27C @ =gSharedMem + 0x19260\n\
- adds r0, r1\n\
- ldrb r1, [r0, 0x15]\n\
- movs r0, 0x1\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AD23A\n\
- movs r4, 0\n\
-_080AD23A:\n\
- bl sub_80AF138\n\
- ldr r0, _080AD280 @ =gStringVar1\n\
- lsls r1, r7, 6\n\
- ldr r2, _080AD284 @ =gContestMons + 0x2\n\
- adds r1, r2\n\
- bl StringCopy\n\
- ldr r3, _080AD288 @ =gSharedMem + 0x19204\n\
- ldrb r0, [r3, 0x13]\n\
- lsls r1, r4, 24\n\
- asrs r2, r1, 24\n\
- adds r0, r2, r0\n\
- strb r0, [r3, 0x13]\n\
- lsls r0, 24\n\
- adds r4, r1, 0\n\
- cmp r0, 0\n\
- bge _080AD262\n\
- movs r0, 0\n\
- strb r0, [r3, 0x13]\n\
-_080AD262:\n\
- cmp r2, 0\n\
- bne _080AD290\n\
- ldr r0, _080AD28C @ =gTasks\n\
- mov r3, r8\n\
- lsls r1, r3, 2\n\
- b _080AD6EC\n\
- .align 2, 0\n\
-_080AD270: .4byte gStringVar3\n\
-_080AD274: .4byte gUnknown_083CC2D8\n\
-_080AD278: .4byte gContestMoves\n\
-_080AD27C: .4byte gSharedMem + 0x19260\n\
-_080AD280: .4byte gStringVar1\n\
-_080AD284: .4byte gContestMons + 0x2\n\
-_080AD288: .4byte gSharedMem + 0x19204\n\
-_080AD28C: .4byte gTasks\n\
-_080AD290:\n\
- cmp r2, 0\n\
- bge _080AD2A8\n\
- ldr r0, _080AD2A0 @ =gStringVar4\n\
- ldr r1, _080AD2A4 @ =gUnknown_083CC0BC\n\
- bl StringExpandPlaceholders\n\
- b _080AD2D0\n\
- .align 2, 0\n\
-_080AD2A0: .4byte gStringVar4\n\
-_080AD2A4: .4byte gUnknown_083CC0BC\n\
-_080AD2A8:\n\
- cmp r2, 0\n\
- ble _080AD2C8\n\
- movs r0, 0x13\n\
- ldrsb r0, [r3, r0]\n\
- cmp r0, 0x4\n\
- bgt _080AD2C8\n\
- ldr r0, _080AD2C0 @ =gStringVar4\n\
- ldr r1, _080AD2C4 @ =gUnknown_083CC0A0\n\
- bl StringExpandPlaceholders\n\
- b _080AD2D0\n\
- .align 2, 0\n\
-_080AD2C0: .4byte gStringVar4\n\
-_080AD2C4: .4byte gUnknown_083CC0A0\n\
-_080AD2C8:\n\
- ldr r0, _080AD300 @ =gStringVar4\n\
- ldr r1, _080AD304 @ =gUnknown_083CC0E3\n\
- bl StringExpandPlaceholders\n\
-_080AD2D0:\n\
- ldr r0, _080AD308 @ =gMenuWindow\n\
- ldr r1, _080AD300 @ =gStringVar4\n\
- movs r2, 0xC2\n\
- lsls r2, 2\n\
- movs r3, 0xF\n\
- str r3, [sp]\n\
- movs r3, 0x1\n\
- bl sub_8002EB0\n\
- ldr r1, _080AD30C @ =gTasks\n\
- mov r5, r8\n\
- lsls r0, r5, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r1, r0, r1\n\
- movs r0, 0\n\
- strh r0, [r1, 0x1C]\n\
- strh r0, [r1, 0x1E]\n\
- cmp r4, 0\n\
- bge _080AD310\n\
- movs r0, 0x35\n\
- strh r0, [r1, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD300: .4byte gStringVar4\n\
-_080AD304: .4byte gUnknown_083CC0E3\n\
-_080AD308: .4byte gMenuWindow\n\
-_080AD30C: .4byte gTasks\n\
-_080AD310:\n\
- movs r0, 0x36\n\
- strh r0, [r1, 0x8]\n\
- b _080AD8CA\n\
-_080AD316:\n\
- mov r1, r8\n\
- lsls r0, r1, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- mov r2, r12\n\
- adds r4, r0, r2\n\
- movs r3, 0x1C\n\
- ldrsh r2, [r4, r3]\n\
- cmp r2, 0x1\n\
- beq _080AD354\n\
- cmp r2, 0x1\n\
- bgt _080AD334\n\
- cmp r2, 0\n\
- beq _080AD33E\n\
- b _080AD8CA\n\
-_080AD334:\n\
- cmp r2, 0x2\n\
- beq _080AD37C\n\
- cmp r2, 0x3\n\
- beq _080AD3B0\n\
- b _080AD8CA\n\
-_080AD33E:\n\
- movs r0, 0x1\n\
- negs r0, r0\n\
- movs r1, 0x1\n\
- bl sub_80B1EA8\n\
- ldr r0, _080AD350 @ =0x00000187\n\
- bl PlayFanfare\n\
- b _080AD3A8\n\
- .align 2, 0\n\
-_080AD350: .4byte 0x00000187\n\
-_080AD354:\n\
- ldrb r0, [r6, 0x7]\n\
- ands r2, r0\n\
- cmp r2, 0\n\
- beq _080AD35E\n\
- b _080AD8CA\n\
-_080AD35E:\n\
- ldr r0, _080AD378 @ =gMenuWindow\n\
- bl sub_80037A0\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- bne _080AD36C\n\
- b _080AD8CA\n\
-_080AD36C:\n\
- movs r0, 0x1\n\
- negs r0, r0\n\
- bl sub_80B1CBC\n\
- b _080AD3A8\n\
- .align 2, 0\n\
-_080AD378: .4byte gMenuWindow\n\
-_080AD37C:\n\
- ldrb r1, [r6, 0x6]\n\
- movs r0, 0x20\n\
- ands r0, r1\n\
- lsls r0, 24\n\
- lsrs r2, r0, 24\n\
- cmp r2, 0\n\
- beq _080AD38C\n\
- b _080AD8CA\n\
-_080AD38C:\n\
- ldrh r0, [r4, 0x1E]\n\
- adds r1, r0, 0x1\n\
- strh r1, [r4, 0x1E]\n\
- lsls r0, 16\n\
- asrs r0, 16\n\
- cmp r0, 0x1D\n\
- bgt _080AD39C\n\
- b _080AD8CA\n\
-_080AD39C:\n\
- strh r2, [r4, 0x1E]\n\
- movs r1, 0x1\n\
- negs r1, r1\n\
- adds r0, r1, 0\n\
- bl sub_80B1EA8\n\
-_080AD3A8:\n\
- ldrh r0, [r4, 0x1C]\n\
- adds r0, 0x1\n\
- strh r0, [r4, 0x1C]\n\
- b _080AD8CA\n\
-_080AD3B0:\n\
- ldr r0, _080AD3CC @ =gPaletteFade\n\
- ldrb r1, [r0, 0x7]\n\
- movs r0, 0x80\n\
- ands r0, r1\n\
- lsls r0, 24\n\
- lsrs r0, 24\n\
- cmp r0, 0\n\
- beq _080AD3C2\n\
- b _080AD8CA\n\
-_080AD3C2:\n\
- strh r0, [r4, 0x1C]\n\
- strh r0, [r4, 0x1E]\n\
- movs r0, 0x2B\n\
- strh r0, [r4, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD3CC: .4byte gPaletteFade\n\
-_080AD3D0:\n\
- mov r4, r8\n\
- lsls r1, r4, 2\n\
- adds r0, r1, r4\n\
- lsls r0, 3\n\
- add r0, r12\n\
- movs r5, 0x1C\n\
- ldrsh r0, [r0, r5]\n\
- mov r9, r1\n\
- cmp r0, 0x4\n\
- bls _080AD3E6\n\
- b _080AD8CA\n\
-_080AD3E6:\n\
- lsls r0, 2\n\
- ldr r1, _080AD3F0 @ =_080AD3F4\n\
- adds r0, r1\n\
- ldr r0, [r0]\n\
- mov pc, r0\n\
- .align 2, 0\n\
-_080AD3F0: .4byte _080AD3F4\n\
- .align 2, 0\n\
-_080AD3F4:\n\
- .4byte _080AD408\n\
- .4byte _080AD420\n\
- .4byte _080AD43E\n\
- .4byte _080AD4A0\n\
- .4byte _080AD4EC\n\
-_080AD408:\n\
- ldr r0, _080AD41C @ =gMenuWindow\n\
- bl sub_80037A0\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- bne _080AD416\n\
- b _080AD8CA\n\
-_080AD416:\n\
- movs r0, 0x1\n\
- movs r1, 0x1\n\
- b _080AD4C8\n\
- .align 2, 0\n\
-_080AD41C: .4byte gMenuWindow\n\
-_080AD420:\n\
- ldrb r1, [r6, 0x7]\n\
- movs r0, 0x1\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AD42C\n\
- b _080AD8CA\n\
-_080AD42C:\n\
- bl sub_80B1DDC\n\
- movs r0, 0xDF\n\
- bl PlaySE\n\
- movs r0, 0x1\n\
- bl sub_80B1CBC\n\
- b _080AD4CC\n\
-_080AD43E:\n\
- ldrb r1, [r6, 0x6]\n\
- movs r0, 0x20\n\
- ands r0, r1\n\
- lsls r0, 24\n\
- lsrs r2, r0, 24\n\
- cmp r2, 0\n\
- beq _080AD44E\n\
- b _080AD8CA\n\
-_080AD44E:\n\
- mov r0, r9\n\
- add r0, r8\n\
- lsls r0, 3\n\
- mov r1, r12\n\
- adds r3, r0, r1\n\
- ldrh r0, [r3, 0x1E]\n\
- adds r1, r0, 0x1\n\
- strh r1, [r3, 0x1E]\n\
- lsls r0, 16\n\
- asrs r0, 16\n\
- cmp r0, 0x1D\n\
- bgt _080AD468\n\
- b _080AD8CA\n\
-_080AD468:\n\
- strh r2, [r3, 0x1E]\n\
- lsls r4, r7, 3\n\
- subs r4, r7\n\
- lsls r4, 2\n\
- adds r0, r6, 0\n\
- adds r0, 0x5C\n\
- adds r4, r0\n\
- movs r2, 0x2\n\
- ldrsh r0, [r4, r2]\n\
- movs r1, 0x92\n\
- lsls r1, 1\n\
- adds r5, r6, r1\n\
- movs r1, 0x2\n\
- ldrsb r1, [r5, r1]\n\
- adds r2, r7, 0\n\
- str r3, [sp, 0x4]\n\
- bl sub_80AFBA0\n\
- movs r0, 0x2\n\
- ldrsb r0, [r5, r0]\n\
- ldrh r2, [r4, 0x2]\n\
- adds r0, r2\n\
- strh r0, [r4, 0x2]\n\
- ldr r3, [sp, 0x4]\n\
- ldrh r0, [r3, 0x1C]\n\
- adds r0, 0x1\n\
- strh r0, [r3, 0x1C]\n\
- b _080AD8CA\n\
-_080AD4A0:\n\
- lsls r0, r7, 2\n\
- ldr r2, _080AD4E0 @ =gSharedMem + 0x19338\n\
- adds r0, r2\n\
- ldrb r1, [r0, 0x2]\n\
- movs r0, 0x4\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AD4B2\n\
- b _080AD8CA\n\
-_080AD4B2:\n\
- ldr r3, _080AD4E4 @ =0xfffffecc\n\
- adds r0, r2, r3\n\
- ldrb r1, [r0, 0x6]\n\
- movs r0, 0x80\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AD4C2\n\
- b _080AD8CA\n\
-_080AD4C2:\n\
- movs r1, 0x1\n\
- negs r1, r1\n\
- movs r0, 0x1\n\
-_080AD4C8:\n\
- bl sub_80B1EA8\n\
-_080AD4CC:\n\
- ldr r0, _080AD4E8 @ =gTasks\n\
- mov r1, r9\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- ldrh r0, [r1, 0x1C]\n\
- adds r0, 0x1\n\
- strh r0, [r1, 0x1C]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD4E0: .4byte gSharedMem + 0x19338\n\
-_080AD4E4: .4byte 0xfffffecc\n\
-_080AD4E8: .4byte gTasks\n\
-_080AD4EC:\n\
- ldr r0, _080AD510 @ =gPaletteFade\n\
- ldrb r1, [r0, 0x7]\n\
- movs r0, 0x80\n\
- ands r0, r1\n\
- lsls r0, 24\n\
- lsrs r1, r0, 24\n\
- cmp r1, 0\n\
- beq _080AD4FE\n\
- b _080AD8CA\n\
-_080AD4FE:\n\
- mov r0, r9\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- strh r1, [r0, 0x1C]\n\
- strh r1, [r0, 0x1E]\n\
- movs r1, 0x2B\n\
- strh r1, [r0, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD510: .4byte gPaletteFade\n\
-_080AD514:\n\
- lsls r0, r7, 2\n\
- ldr r1, _080AD534 @ =gSharedMem + 0x19338\n\
- adds r0, r1\n\
- ldrb r1, [r0, 0x2]\n\
- movs r0, 0x4\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AD526\n\
- b _080AD8CA\n\
-_080AD526:\n\
- bl sub_80AF138\n\
- ldr r0, _080AD538 @ =gTasks\n\
- mov r4, r8\n\
- lsls r1, r4, 2\n\
- b _080AD6EC\n\
- .align 2, 0\n\
-_080AD534: .4byte gSharedMem + 0x19338\n\
-_080AD538: .4byte gTasks\n\
-_080AD53C:\n\
- bl sub_80AF138\n\
- ldr r0, _080AD5A8 @ =gStringVar3\n\
- ldr r4, _080AD5AC @ =gSharedMem + 0x19328\n\
- ldr r1, [r4]\n\
- lsls r1, 20\n\
- lsrs r1, 29\n\
- lsls r1, 6\n\
- ldr r5, _080AD5B0 @ =gContestMons + 0x2\n\
- adds r1, r5\n\
- bl StringCopy\n\
- ldr r0, _080AD5B4 @ =gStringVar1\n\
- lsls r1, r7, 6\n\
- adds r1, r5\n\
- bl StringCopy\n\
- ldr r0, _080AD5B8 @ =gStringVar2\n\
- lsls r1, r7, 3\n\
- subs r1, r7\n\
- lsls r1, 2\n\
- subs r4, 0xC8\n\
- adds r1, r4\n\
- ldrh r2, [r1, 0x6]\n\
- movs r1, 0xD\n\
- muls r1, r2\n\
- ldr r2, _080AD5BC @ =gMoveNames\n\
- adds r1, r2\n\
- bl StringCopy\n\
- ldr r4, _080AD5C0 @ =gStringVar4\n\
- ldr r1, _080AD5C4 @ =gUnknown_083CC14A\n\
- adds r0, r4, 0\n\
- bl StringExpandPlaceholders\n\
- ldr r0, _080AD5C8 @ =gMenuWindow\n\
- movs r2, 0xC2\n\
- lsls r2, 2\n\
- movs r1, 0xF\n\
- str r1, [sp]\n\
- adds r1, r4, 0\n\
- movs r3, 0x1\n\
- bl sub_8002EB0\n\
- ldr r1, _080AD5CC @ =gTasks\n\
- mov r5, r8\n\
- lsls r0, r5, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0x3A\n\
- strh r1, [r0, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD5A8: .4byte gStringVar3\n\
-_080AD5AC: .4byte gSharedMem + 0x19328\n\
-_080AD5B0: .4byte gContestMons + 0x2\n\
-_080AD5B4: .4byte gStringVar1\n\
-_080AD5B8: .4byte gStringVar2\n\
-_080AD5BC: .4byte gMoveNames\n\
-_080AD5C0: .4byte gStringVar4\n\
-_080AD5C4: .4byte gUnknown_083CC14A\n\
-_080AD5C8: .4byte gMenuWindow\n\
-_080AD5CC: .4byte gTasks\n\
-_080AD5D0:\n\
- ldr r5, _080AD614 @ =gMenuWindow\n\
- adds r0, r5, 0\n\
- bl sub_80037A0\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- bne _080AD5E0\n\
- b _080AD8CA\n\
-_080AD5E0:\n\
- bl sub_80AF138\n\
- ldr r4, _080AD618 @ =gStringVar4\n\
- ldr r1, _080AD61C @ =gUnknown_083CC16E\n\
- adds r0, r4, 0\n\
- bl StringExpandPlaceholders\n\
- movs r2, 0xC2\n\
- lsls r2, 2\n\
- movs r0, 0xF\n\
- str r0, [sp]\n\
- adds r0, r5, 0\n\
- adds r1, r4, 0\n\
- movs r3, 0x1\n\
- bl sub_8002EB0\n\
- ldr r1, _080AD620 @ =gTasks\n\
- mov r2, r8\n\
- lsls r0, r2, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0x3B\n\
- strh r1, [r0, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD614: .4byte gMenuWindow\n\
-_080AD618: .4byte gStringVar4\n\
-_080AD61C: .4byte gUnknown_083CC16E\n\
-_080AD620: .4byte gTasks\n\
-_080AD624:\n\
- ldr r0, _080AD640 @ =gMenuWindow\n\
- bl sub_80037A0\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- bne _080AD632\n\
- b _080AD8CA\n\
-_080AD632:\n\
- bl sub_80AF138\n\
- ldr r0, _080AD644 @ =gTasks\n\
- mov r3, r8\n\
- lsls r1, r3, 2\n\
- b _080AD6EC\n\
- .align 2, 0\n\
-_080AD640: .4byte gMenuWindow\n\
-_080AD644: .4byte gTasks\n\
-_080AD648:\n\
- lsls r0, r7, 3\n\
- subs r0, r7\n\
- lsls r0, 2\n\
- ldr r1, _080AD6B4 @ =gSharedMem + 0x19260\n\
- adds r4, r0, r1\n\
- ldrb r1, [r4, 0x15]\n\
- movs r0, 0x10\n\
- ands r0, r1\n\
- cmp r0, 0\n\
- beq _080AD664\n\
- movs r0, 0x11\n\
- negs r0, r0\n\
- ands r0, r1\n\
- strb r0, [r4, 0x15]\n\
-_080AD664:\n\
- adds r0, r7, 0\n\
- bl sub_80B09B0\n\
- ldr r0, _080AD6B8 @ =gStringVar1\n\
- lsls r1, r7, 6\n\
- ldr r2, _080AD6BC @ =gContestMons + 0x2\n\
- adds r1, r2\n\
- bl StringCopy\n\
- ldr r0, _080AD6C0 @ =gStringVar2\n\
- ldrh r2, [r4, 0x6]\n\
- movs r1, 0xD\n\
- muls r1, r2\n\
- ldr r2, _080AD6C4 @ =gMoveNames\n\
- adds r1, r2\n\
- bl StringCopy\n\
- ldr r4, _080AD6C8 @ =gStringVar4\n\
- ldr r1, _080AD6CC @ =gUnknown_083CBF60\n\
- adds r0, r4, 0\n\
- bl StringExpandPlaceholders\n\
- ldr r0, _080AD6D0 @ =gMenuWindow\n\
- movs r2, 0xC2\n\
- lsls r2, 2\n\
- movs r1, 0xF\n\
- str r1, [sp]\n\
- adds r1, r4, 0\n\
- movs r3, 0x1\n\
- bl sub_8002EB0\n\
- ldr r1, _080AD6D4 @ =gTasks\n\
- mov r4, r8\n\
- lsls r0, r4, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0x22\n\
- strh r1, [r0, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD6B4: .4byte gSharedMem + 0x19260\n\
-_080AD6B8: .4byte gStringVar1\n\
-_080AD6BC: .4byte gContestMons + 0x2\n\
-_080AD6C0: .4byte gStringVar2\n\
-_080AD6C4: .4byte gMoveNames\n\
-_080AD6C8: .4byte gStringVar4\n\
-_080AD6CC: .4byte gUnknown_083CBF60\n\
-_080AD6D0: .4byte gMenuWindow\n\
-_080AD6D4: .4byte gTasks\n\
-_080AD6D8:\n\
- ldr r0, _080AD6F8 @ =gMenuWindow\n\
- bl sub_80037A0\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- bne _080AD6E6\n\
- b _080AD8CA\n\
-_080AD6E6:\n\
- ldr r0, _080AD6FC @ =gTasks\n\
- mov r5, r8\n\
- lsls r1, r5, 2\n\
-_080AD6EC:\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0x37\n\
- strh r0, [r1, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD6F8: .4byte gMenuWindow\n\
-_080AD6FC: .4byte gTasks\n\
-_080AD700:\n\
- bl sub_80B1BDC\n\
- ldr r0, _080AD718 @ =gTasks\n\
- mov r2, r8\n\
- lsls r1, r2, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0x38\n\
- strh r0, [r1, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD718: .4byte gTasks\n\
-_080AD71C:\n\
- ldrb r1, [r6, 0x6]\n\
- movs r0, 0x40\n\
- ands r0, r1\n\
- lsls r0, 24\n\
- lsrs r1, r0, 24\n\
- cmp r1, 0\n\
- beq _080AD72C\n\
- b _080AD8CA\n\
-_080AD72C:\n\
- movs r0, 0x13\n\
- ldrsb r0, [r6, r0]\n\
- cmp r0, 0x4\n\
- ble _080AD73A\n\
- strb r1, [r6, 0x13]\n\
- bl sub_80B1928\n\
-_080AD73A:\n\
- ldr r0, _080AD74C @ =gTasks\n\
- mov r3, r8\n\
- lsls r1, r3, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0xA\n\
- strh r0, [r1, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD74C: .4byte gTasks\n\
-_080AD750:\n\
- mov r4, r8\n\
- lsls r2, r4, 2\n\
- add r2, r8\n\
- lsls r2, 3\n\
- add r2, r12\n\
- ldrb r5, [r2, 0xC]\n\
- ldr r1, _080AD774 @ =gSprites\n\
- lsls r0, r5, 4\n\
- adds r0, r5\n\
- lsls r0, 2\n\
- adds r1, 0x1C\n\
- adds r0, r1\n\
- ldr r1, _080AD778 @ =sub_80AD92C\n\
- str r1, [r0]\n\
- movs r0, 0xB\n\
- strh r0, [r2, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD774: .4byte gSprites\n\
-_080AD778: .4byte sub_80AD92C\n\
-_080AD77C:\n\
- mov r5, r8\n\
- lsls r0, r5, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- mov r1, r12\n\
- adds r4, r0, r1\n\
- ldrb r5, [r4, 0xC]\n\
- ldr r1, _080AD7B4 @ =gSprites\n\
- lsls r0, r5, 4\n\
- adds r0, r5\n\
- lsls r0, 2\n\
- adds r6, r0, r1\n\
- adds r0, r6, 0\n\
- adds r0, 0x3E\n\
- ldrb r0, [r0]\n\
- lsls r0, 29\n\
- cmp r0, 0\n\
- blt _080AD7A2\n\
- b _080AD8CA\n\
-_080AD7A2:\n\
- adds r0, r6, 0\n\
- bl FreeSpriteOamMatrix\n\
- adds r0, r6, 0\n\
- bl DestroySprite\n\
- movs r0, 0x14\n\
- strh r0, [r4, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD7B4: .4byte gSprites\n\
-_080AD7B8:\n\
- movs r6, 0\n\
- mov r2, r8\n\
- lsls r2, 2\n\
- mov r9, r2\n\
-_080AD7C0:\n\
- lsls r0, r6, 24\n\
- lsrs r0, 24\n\
- movs r1, 0x1\n\
- bl sub_80B0CDC\n\
- adds r6, 0x1\n\
- cmp r6, 0x3\n\
- ble _080AD7C0\n\
- ldr r1, _080AD7E4 @ =gTasks\n\
- mov r0, r9\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0\n\
- strh r1, [r0, 0x1C]\n\
- movs r1, 0x15\n\
- strh r1, [r0, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD7E4: .4byte gTasks\n\
-_080AD7E8:\n\
- bl sub_80AF138\n\
- ldr r0, _080AD828 @ =gStringVar1\n\
- lsls r1, r7, 6\n\
- ldr r2, _080AD82C @ =gContestMons + 0x2\n\
- adds r1, r2\n\
- bl StringCopy\n\
- ldr r4, _080AD830 @ =gStringVar4\n\
- ldr r1, _080AD834 @ =gUnknown_083CB00D\n\
- adds r0, r4, 0\n\
- bl StringExpandPlaceholders\n\
- ldr r0, _080AD838 @ =gMenuWindow\n\
- movs r2, 0xC2\n\
- lsls r2, 2\n\
- movs r1, 0xF\n\
- str r1, [sp]\n\
- adds r1, r4, 0\n\
- movs r3, 0x1\n\
- bl sub_8002EB0\n\
- ldr r1, _080AD83C @ =gTasks\n\
- mov r3, r8\n\
- lsls r0, r3, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- adds r0, r1\n\
- movs r1, 0x20\n\
- strh r1, [r0, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD828: .4byte gStringVar1\n\
-_080AD82C: .4byte gContestMons + 0x2\n\
-_080AD830: .4byte gStringVar4\n\
-_080AD834: .4byte gUnknown_083CB00D\n\
-_080AD838: .4byte gMenuWindow\n\
-_080AD83C: .4byte gTasks\n\
-_080AD840:\n\
- ldr r0, _080AD860 @ =gMenuWindow\n\
- bl sub_80037A0\n\
- lsls r0, 24\n\
- cmp r0, 0\n\
- beq _080AD8CA\n\
- ldr r0, _080AD864 @ =gTasks\n\
- mov r4, r8\n\
- lsls r1, r4, 2\n\
- add r1, r8\n\
- lsls r1, 3\n\
- adds r1, r0\n\
- movs r0, 0x15\n\
- strh r0, [r1, 0x8]\n\
- b _080AD8CA\n\
- .align 2, 0\n\
-_080AD860: .4byte gMenuWindow\n\
-_080AD864: .4byte gTasks\n\
-_080AD868:\n\
- mov r5, r8\n\
- lsls r0, r5, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- mov r2, r12\n\
- adds r1, r0, r2\n\
- ldrh r0, [r1, 0x1C]\n\
- adds r0, 0x1\n\
- strh r0, [r1, 0x1C]\n\
- lsls r0, 16\n\
- asrs r0, 16\n\
- cmp r0, 0x1D\n\
- ble _080AD8CA\n\
- movs r0, 0\n\
- strh r0, [r1, 0x1C]\n\
- movs r0, 0x16\n\
- strh r0, [r1, 0x8]\n\
- b _080AD8CA\n\
-_080AD88C:\n\
- ldrb r0, [r6, 0x10]\n\
- adds r0, 0x1\n\
- movs r1, 0\n\
- strb r0, [r6, 0x10]\n\
- lsls r0, 24\n\
- lsrs r0, 24\n\
- cmp r0, 0x4\n\
- bne _080AD8B8\n\
- mov r3, r8\n\
- lsls r0, r3, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- strh r1, [r0, 0x8]\n\
- strh r1, [r0, 0xA]\n\
- strh r1, [r0, 0xC]\n\
- ldr r1, _080AD8B4 @ =sub_80AD960\n\
- str r1, [r0]\n\
- b _080AD8C4\n\
- .align 2, 0\n\
-_080AD8B4: .4byte sub_80AD960\n\
-_080AD8B8:\n\
- mov r4, r8\n\
- lsls r0, r4, 2\n\
- add r0, r8\n\
- lsls r0, 3\n\
- add r0, r12\n\
- strh r1, [r0, 0x8]\n\
-_080AD8C4:\n\
- movs r0, 0\n\
- bl nullsub_18\n\
-_080AD8CA:\n\
- add sp, 0x8\n\
- pop {r3-r5}\n\
- mov r8, r3\n\
- mov r9, r4\n\
- mov r10, r5\n\
- pop {r4-r7}\n\
- pop {r0}\n\
- bx r0\n\
- .syntax divided\n");
-}
void sub_80AD8DC(u8 taskId)
{
@@ -5014,8 +1966,7 @@ void sub_80ADB48(u8 taskId)
void sub_80ADB88(u8 taskId)
{
- struct UnknownContestStruct1 *s = &shared19260.unk19260[gContestPlayerMonIndex];
- u8 r4 = s->unk1A;
+ u8 r4 = shared19260_[gContestPlayerMonIndex].unk1A;
sub_80AF138();
StringCopy(gStringVar1, gContestMons[gContestPlayerMonIndex].nickname);
@@ -5089,16 +2040,14 @@ void sub_80ADD74(u8 taskId)
void sub_80ADDA4(u8 taskId)
{
s32 i;
- struct UnknownContestStruct1 *s;
gUnknown_030042A0 = 0;
gUnknown_03004280 = 0;
for (i = 0; i < 4; i++)
- gUnknown_02038680[i] = shared19260.unk19260[i].unk4;
+ gUnknown_02038680[i] = shared19260_[i].unk4;
sub_80AF668();
sub_80AF138();
- s = &shared19260.unk19260[gContestPlayerMonIndex];
- sub_80BE23C(s->unk8);
+ sub_80BE23C(shared19260_[gContestPlayerMonIndex].unk8);
gUnknown_03005D28 = gRngValue;
StringExpandPlaceholders(gStringVar4, gUnknown_083CB02C);
sub_8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
@@ -5733,23 +2682,23 @@ void sub_80AED58(void)
void sub_80AED7C(u16 a, u8 b)
{
u8 r5 = gUnknown_02038696[b] * 5 + 2;
-
+
if (sub_80AF59C(b) == 0 && a != 0)
{
u16 tile = sub_80AEB68(a, b);
-
+
*(u16 *)(VRAM + 0xC028 + r5 * 64) = tile;
*(u16 *)(VRAM + 0xC028 + r5 * 64 + 2) = tile + 1;
-
+
*(u16 *)(VRAM + 0xC068 + r5 * 64) = tile + 16;
*(u16 *)(VRAM + 0xC068 + r5 * 64 + 2) = tile + 17;
-
+
}
else
{
*(u16 *)(VRAM + 0xC028 + r5 * 64) = 0;
*(u16 *)(VRAM + 0xC028 + r5 * 64 + 2) = 0;
-
+
*(u16 *)(VRAM + 0xC068 + r5 * 64) = 0;
*(u16 *)(VRAM + 0xC068 + r5 * 64 + 2) = 0;
}
@@ -5758,13 +2707,9 @@ void sub_80AED7C(u16 a, u8 b)
void unref_sub_80AEE20(void)
{
u8 i;
-
+
for (i = 0; i < 4; i++)
- {
- struct UnknownContestStruct1 *s = &shared19260.unk19260[i];
-
- sub_80AED7C(s->unk6, i);
- }
+ sub_80AED7C(shared19260_[i].unk6, i);
}
u16 sub_80AEE4C(u8 unused)
@@ -5774,52 +2719,41 @@ u16 sub_80AEE4C(u8 unused)
bool8 sub_80AEE54(u8 a, u8 b)
{
- struct UnknownContestStruct1 *s = &shared19260.unk19260[a];
u8 r9;
u16 r8;
s32 r4;
-
- if (s->unk10_4 == 0)
+
+ if (shared19260_[a].unk10_4 == 0)
return FALSE;
r9 = gUnknown_02038696[a] * 5 + 2;
- if (s->unk10_4 == 1)
+ if (shared19260_[a].unk10_4 == 1)
{
- struct UnknownContestStruct1 *r5;
-
r8 = sub_80AEE4C(a);
r4 = 0;
- while (1)
+ while (shared19260_[a].unkD / 10 > r4)
{
- r5 = &shared19260.unk19260[a];
- if (r5->unkD / 10 <= r4)
- break;
*(u16 *)(VRAM + 0xC026 + (r9 + r4) * 64) = r8;
r4++;
}
if (b != 0)
{
PlaySE(SE_EXPMAX);
- r5->unk10_4 = 0;
+ shared19260_[a].unk10_4 = 0;
}
}
else
{
- struct UnknownContestStruct1 *r5;
-
r8 = 0;
r4 = 3;
- while (1)
+ while (shared19260_[a].unkD / 10 < r4)
{
- r5 = &shared19260.unk19260[a];
- if (r5->unkD / 10 >= r4)
- break;
*(u16 *)(VRAM + 0xBFE6 + (r9 + r4) * 64) = r8;
r4--;
}
if (b != 0)
{
PlaySE(SE_FU_ZAKU2);
- r5->unk10_4 = 0;
+ shared19260_[a].unk10_4 = 0;
}
}
return TRUE;
@@ -5829,19 +2763,15 @@ void sub_80AEF50(void)
{
s32 i;
s32 r4;
-
+
for (i = 0; i < 4; i++)
{
- struct UnknownContestStruct1 *s;
u8 r8 = gUnknown_02038696[i] * 5 + 2;
u16 r6 = sub_80AEE4C(i);
-
+
r4 = 0;
- while (1)
+ while (r4 < shared19260_[i].unkD / 10)
{
- s = &shared19260.unk19260[i];
- if (r4 >= s->unkD / 10)
- break;
*(u16 *)(VRAM + 0xC026 + (r8 + r4) * 64) = r6;
r4++;
}
@@ -5857,7 +2787,7 @@ void sub_80AEF50(void)
u16 sub_80AEFE8(int unused, u8 b)
{
u16 var = 0;
-
+
switch (b)
{
case 0: