sub_814DFA4

This commit is contained in:
jiangzhengwenjz
2020-03-04 05:43:50 +08:00
parent 0e468b49bb
commit d6352f7429
+22 -460
View File
@@ -1,6 +1,7 @@
#include "global.h"
#include "gflib.h"
#include "battle_anim.h"
#include "berry.h"
#include "berry_crush.h"
#include "decompress.h"
#include "digit_obj_util.h"
@@ -830,64 +831,62 @@ static void sub_814DF44(u8 windowId, u8 left, u8 colorId, const u8 *string)
AddTextPrinterParameterized3(windowId, 2, left, 0, sBerryCrushTextColorTable[colorId], 0, string);
}
#ifdef NONMATCHING
static void sub_814DFA4(struct BerryCrushGame * sp0C, u8 sp10, u8 sp14, u8 sp18)
{
u8 r8;
u8 sp1C;
u8 sp20;
u8 r8 = 0;
u8 sp1C = 0;
u8 sp20 = 0;
u8 r2;
s32 r3;
u8 r7;
struct BerryCrushGame_68_x * sp24 = &sp0C->unk68.as_four_players;
for (r8 = 0, sp1C = 0, sp20 = 0; r8 < sp0C->unk9; r8++)
union BerryCrushGame_68 * sp24 = &sp0C->unk68;
s32 sp30;
for (; r8 < sp0C->unk9; r8++)
{
// sp10<<2 --> sp28
// &sp0C->unk138.unk82 --> sp2C
DynamicPlaceholderTextUtil_Reset();
switch (sp10)
{
case 0:
sp1C = sp0C->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[sp10][r8];
if (r8 != 0 && sp24->unk00.unk0C[sp10][r8] != sp24->unk00.unk0C[sp10][r8 - 1])
sp1C = sp24->as_five_players.unk1C[0].unk4.as_2d_bytes[sp10][r8];
if (r8 != 0 && sp24->as_four_players.unk00.unk0C[sp10][r8] != sp24->as_four_players.unk00.unk0C[sp10][r8 - 1])
{
sp20 = r8;
}
ConvertIntToDecimalStringN(gStringVar1, sp24->unk00.unk0C[sp10][r8], STR_CONV_MODE_RIGHT_ALIGN, 4);
ConvertIntToDecimalStringN(gStringVar1, sp24->as_four_players.unk00.unk0C[sp10][r8], STR_CONV_MODE_RIGHT_ALIGN, 4);
r7 = sp14 - GetStringWidth(2, gUnknown_846F4B8[sp10], -1) - 4;
AddTextPrinterParameterized3(sp0C->unk138.unk82, 2, r7, sp18 + 14 * r8, sBerryCrushTextColorTable[0], 0, gUnknown_846F4B8[sp10]);
AddTextPrinterParameterized3(sp0C->unk138.unk82, 2, r7 - 24, sp18 + 14 * r8, sBerryCrushTextColorTable[0], 0, gStringVar1);
break;
case 1:
sp1C = sp0C->unk68.as_five_players.unk1C[0].unk4.as_2d_bytes[sp10][r8];
if (r8 != 0 && sp24->unk00.unk0C[sp10][r8] != sp24->unk00.unk0C[sp10][r8 - 1])
sp1C = sp24->as_five_players.unk1C[0].unk4.as_2d_bytes[sp10][r8];
if (r8 != 0 && sp24->as_four_players.unk00.unk0C[sp10][r8] != sp24->as_four_players.unk00.unk0C[sp10][r8 - 1])
{
sp20 = r8;
}
ConvertIntToDecimalStringN(gStringVar1, sp24->unk00.unk0C[sp10][r8], STR_CONV_MODE_LEFT_ALIGN, 3);
ConvertIntToDecimalStringN(gStringVar1, sp24->as_four_players.unk00.unk0C[sp10][r8] >> 4, STR_CONV_MODE_RIGHT_ALIGN, 3);
r3 = 0;
r7 = sp24->unk00.unk0C[sp10][r8] & 15;
r7 = sp24->as_four_players.unk00.unk0C[sp10][r8] & 15;
for (r2 = 0; r2 < 4; r2++)
{
if ((r7 >> (3 - r2)) & 1)
r3 += gUnknown_846E450[r2];
}
r7 = r3 / 1000000;
r7 = r3 / 1000000u;
ConvertIntToDecimalStringN(gStringVar2, r7, STR_CONV_MODE_LEADING_ZEROS, 2);
StringExpandPlaceholders(gStringVar4, gUnknown_846F4B8[sp10]);
r2 = sp14 - GetStringWidth(2, gStringVar4, 0) - 4;
AddTextPrinterParameterized3(sp0C->unk138.unk82, 2, r2, sp18 + 14 * r8, sBerryCrushTextColorTable[0], 0, gStringVar4);
sp30 = sp14 - 4;
AddTextPrinterParameterized3(sp0C->unk138.unk82, 2, sp30 - GetStringWidth(2, gStringVar4, 0), sp18 + 14 * r8, sBerryCrushTextColorTable[0], 0, gStringVar4);
break;
case 2:
sp1C = r8;
sp20 = r8;
r2 = sp0C->unk68.as_five_players.unk1C[r8].unk14[8];
if (r2 >= LAST_BERRY_INDEX - FIRST_BERRY_INDEX)
r2 = sp0C->unk68.as_five_players.unk1C[r8].unk14[12];
if (r2 >= LAST_BERRY_INDEX - FIRST_BERRY_INDEX + 2)
r2 = 0;
StringCopy(gStringVar1, gBerries[r2].name);
StringExpandPlaceholders(gStringVar4, gUnknown_846F4B8[sp10]);
r2 = sp14 - GetStringWidth(2, gStringVar4, -1) - 4;
AddTextPrinterParameterized3(sp0C->unk138.unk82, 2, r2, sp18 + 14 * r8, sBerryCrushTextColorTable[0], 0, gStringVar4);
AddTextPrinterParameterized3(sp0C->unk138.unk82, 2, sp14 - GetStringWidth(2, gStringVar4, -1) - 4, sp18 + 14 * r8, sBerryCrushTextColorTable[0], 0, gStringVar4);
break;
}
if (sp1C == sp0C->unk8)
@@ -895,448 +894,11 @@ static void sub_814DFA4(struct BerryCrushGame * sp0C, u8 sp10, u8 sp14, u8 sp18)
else
StringCopy(gStringVar3, gText_1_Dynamic0);
gStringVar3[0] = sp20 + CHAR_1;
DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, sp0C->unk68.as_five_players.unk1C[sp1C].unk14);
DynamicPlaceholderTextUtil_SetPlaceholderPtr(0, PLAYER_UNK14(sp0C, sp1C));
DynamicPlaceholderTextUtil_ExpandPlaceholders(gStringVar4, gStringVar3);
AddTextPrinterParameterized3(sp0C->unk138.unk82, 2, 4, sp18 + 14 * r8, sBerryCrushTextColorTable[0], 0, gStringVar4);
}
}
#else
NAKED
static void sub_814DFA4(struct BerryCrushGame * sp0C, u8 sp10, u8 sp14, u8 r3)
{
asm_unified("\tpush {r4-r7,lr}\n"
"\tmov r7, r10\n"
"\tmov r6, r9\n"
"\tmov r5, r8\n"
"\tpush {r5-r7}\n"
"\tsub sp, 0x38\n"
"\tstr r0, [sp, 0xC]\n"
"\tlsls r1, 24\n"
"\tlsrs r1, 24\n"
"\tstr r1, [sp, 0x10]\n"
"\tlsls r2, 24\n"
"\tlsrs r2, 24\n"
"\tstr r2, [sp, 0x14]\n"
"\tlsls r3, 24\n"
"\tlsrs r3, 24\n"
"\tstr r3, [sp, 0x18]\n"
"\tmovs r0, 0\n"
"\tmov r8, r0\n"
"\tmovs r1, 0\n"
"\tstr r1, [sp, 0x1C]\n"
"\tmovs r2, 0\n"
"\tstr r2, [sp, 0x20]\n"
"\tldr r4, [sp, 0xC]\n"
"\tadds r4, 0x68\n"
"\tstr r4, [sp, 0x24]\n"
"\tldr r0, [sp, 0xC]\n"
"\tldrb r0, [r0, 0x9]\n"
"\tcmp r8, r0\n"
"\tbcc _0814DFE0\n"
"\tb _0814E30C\n"
"_0814DFE0:\n"
"\tldr r1, [sp, 0x10]\n"
"\tlsls r1, 2\n"
"\tstr r1, [sp, 0x28]\n"
"\tmovs r4, 0xDD\n"
"\tlsls r4, 1\n"
"\tldr r2, [sp, 0xC]\n"
"\tadds r4, r2, r4\n"
"\tstr r4, [sp, 0x2C]\n"
"_0814DFF0:\n"
"\tbl DynamicPlaceholderTextUtil_Reset\n"
"\tldr r0, [sp, 0x10]\n"
"\tcmp r0, 0x1\n"
"\tbeq _0814E0E4\n"
"\tcmp r0, 0x1\n"
"\tbgt _0814E00A\n"
"\tcmp r0, 0\n"
"\tbeq _0814E01A\n"
"\tmov r1, r8\n"
"\tlsls r1, 3\n"
"\tmov r9, r1\n"
"\tb _0814E0C8\n"
"_0814E00A:\n"
"\tldr r0, [sp, 0x10]\n"
"\tcmp r0, 0x2\n"
"\tbne _0814E012\n"
"\tb _0814E200\n"
"_0814E012:\n"
"\tmov r1, r8\n"
"\tlsls r1, 3\n"
"\tmov r9, r1\n"
"\tb _0814E0C8\n"
"_0814E01A:\n"
"\tldr r0, [sp, 0x24]\n"
"\tadds r0, 0x20\n"
"\tadd r0, r8\n"
"\tldrb r0, [r0]\n"
"\tstr r0, [sp, 0x1C]\n"
"\tmov r0, r8\n"
"\tlsls r3, r0, 1\n"
"\tldr r2, [sp, 0x24]\n"
"\tadds r2, 0xC\n"
"\tcmp r0, 0\n"
"\tbeq _0814E048\n"
"\tadds r0, r2, r3\n"
"\tmov r1, r8\n"
"\tsubs r1, 0x1\n"
"\tlsls r1, 1\n"
"\tadds r1, r2, r1\n"
"\tldrh r0, [r0]\n"
"\tldrh r1, [r1]\n"
"\tcmp r0, r1\n"
"\tbeq _0814E048\n"
"\tmov r4, r8\n"
"\tadds r1, r4, 0\n"
"\tstr r1, [sp, 0x20]\n"
"_0814E048:\n"
"\tldr r1, [sp, 0x28]\n"
"\tldr r4, [sp, 0x10]\n"
"\tadds r0, r1, r4\n"
"\tlsls r0, 1\n"
"\tadds r0, r3, r0\n"
"\tadds r0, r2, r0\n"
"\tldrh r1, [r0]\n"
"\tldr r0, _0814E0D8 @ =gStringVar1\n"
"\tmovs r2, 0x1\n"
"\tmovs r3, 0x4\n"
"\tbl ConvertIntToDecimalStringN\n"
"\tldr r0, _0814E0DC @ =gUnknown_846F4B8\n"
"\tldr r1, [sp, 0x28]\n"
"\tadds r0, r1, r0\n"
"\tldr r5, [r0]\n"
"\tmovs r0, 0x2\n"
"\tadds r1, r5, 0\n"
"\tmovs r2, 0x1\n"
"\tnegs r2, r2\n"
"\tbl GetStringWidth\n"
"\tldr r2, [sp, 0x14]\n"
"\tsubs r0, r2, r0\n"
"\tsubs r0, 0x4\n"
"\tlsls r0, 24\n"
"\tlsrs r7, r0, 24\n"
"\tldr r4, [sp, 0x2C]\n"
"\tldrb r0, [r4]\n"
"\tmov r1, r8\n"
"\tlsls r6, r1, 3\n"
"\tsubs r4, r6, r1\n"
"\tlsls r4, 1\n"
"\tldr r2, [sp, 0x18]\n"
"\tadds r4, r2, r4\n"
"\tlsls r4, 24\n"
"\tlsrs r4, 24\n"
"\tldr r1, _0814E0E0 @ =sBerryCrushTextColorTable\n"
"\tstr r1, [sp]\n"
"\tmovs r2, 0\n"
"\tstr r2, [sp, 0x4]\n"
"\tstr r5, [sp, 0x8]\n"
"\tmovs r1, 0x2\n"
"\tadds r2, r7, 0\n"
"\tadds r3, r4, 0\n"
"\tbl AddTextPrinterParameterized3\n"
"\tldr r1, [sp, 0x2C]\n"
"\tldrb r0, [r1]\n"
"\tadds r2, r7, 0\n"
"\tsubs r2, 0x18\n"
"\tlsls r2, 24\n"
"\tlsrs r2, 24\n"
"\tldr r1, _0814E0E0 @ =sBerryCrushTextColorTable\n"
"\tstr r1, [sp]\n"
"\tmovs r1, 0\n"
"\tstr r1, [sp, 0x4]\n"
"\tldr r1, _0814E0D8 @ =gStringVar1\n"
"\tstr r1, [sp, 0x8]\n"
"\tmovs r1, 0x2\n"
"\tadds r3, r4, 0\n"
"\tbl AddTextPrinterParameterized3\n"
"\tmov r9, r6\n"
"_0814E0C8:\n"
"\tldr r6, [sp, 0x20]\n"
"\tadds r6, 0xA2\n"
"\tldr r2, [sp, 0x1C]\n"
"\tlsls r5, r2, 5\n"
"\tmovs r4, 0x1\n"
"\tadd r4, r8\n"
"\tmov r10, r4\n"
"\tb _0814E27E\n"
"\t.align 2, 0\n"
"_0814E0D8: .4byte gStringVar1\n"
"_0814E0DC: .4byte gUnknown_846F4B8\n"
"_0814E0E0: .4byte sBerryCrushTextColorTable\n"
"_0814E0E4:\n"
"\tldr r0, [sp, 0x24]\n"
"\tadd r0, r8\n"
"\tadds r0, 0x28\n"
"\tldrb r0, [r0]\n"
"\tstr r0, [sp, 0x1C]\n"
"\tmov r0, r8\n"
"\tlsls r3, r0, 1\n"
"\tldr r2, [sp, 0x24]\n"
"\tadds r2, 0xC\n"
"\tcmp r0, 0\n"
"\tbeq _0814E116\n"
"\tadds r0, r3, 0\n"
"\tadds r0, 0xA\n"
"\tadds r0, r2, r0\n"
"\tmov r4, r8\n"
"\tlsls r1, r4, 1\n"
"\tadds r1, 0x8\n"
"\tadds r1, r2, r1\n"
"\tldrh r0, [r0]\n"
"\tldrh r1, [r1]\n"
"\tcmp r0, r1\n"
"\tbeq _0814E116\n"
"\tmov r1, r8\n"
"\tadds r0, r1, 0\n"
"\tstr r0, [sp, 0x20]\n"
"_0814E116:\n"
"\tldr r0, [sp, 0x28]\n"
"\tldr r1, [sp, 0x10]\n"
"\tadds r4, r0, r1\n"
"\tlsls r4, 1\n"
"\tadds r4, r3, r4\n"
"\tadds r4, r2, r4\n"
"\tldrh r1, [r4]\n"
"\tlsrs r1, 4\n"
"\tldr r0, _0814E1E4 @ =gStringVar1\n"
"\tmovs r2, 0x1\n"
"\tmovs r3, 0x3\n"
"\tbl ConvertIntToDecimalStringN\n"
"\tmovs r3, 0\n"
"\tldrb r0, [r4]\n"
"\tmovs r7, 0xF\n"
"\tands r7, r0\n"
"\tmovs r2, 0\n"
"\tldr r4, [sp, 0x10]\n"
"\tlsls r4, 2\n"
"\tstr r4, [sp, 0x34]\n"
"\tmov r0, r8\n"
"\tlsls r0, 3\n"
"\tmov r9, r0\n"
"\tldr r1, [sp, 0x14]\n"
"\tsubs r1, 0x4\n"
"\tstr r1, [sp, 0x30]\n"
"\tldr r6, [sp, 0x20]\n"
"\tadds r6, 0xA2\n"
"\tldr r4, [sp, 0x1C]\n"
"\tlsls r5, r4, 5\n"
"\tmovs r0, 0x1\n"
"\tadd r0, r8\n"
"\tmov r10, r0\n"
"\tmovs r1, 0x1\n"
"\tmov r12, r1\n"
"\tldr r4, _0814E1E8 @ =gUnknown_846E450\n"
"_0814E160:\n"
"\tmovs r0, 0x3\n"
"\tsubs r1, r0, r2\n"
"\tadds r0, r7, 0\n"
"\tasrs r0, r1\n"
"\tmov r1, r12\n"
"\tands r0, r1\n"
"\tcmp r0, 0\n"
"\tbeq _0814E178\n"
"\tlsls r0, r2, 2\n"
"\tadds r0, r4\n"
"\tldr r0, [r0]\n"
"\tadds r3, r0\n"
"_0814E178:\n"
"\tadds r0, r2, 0x1\n"
"\tlsls r0, 24\n"
"\tlsrs r2, r0, 24\n"
"\tcmp r2, 0x3\n"
"\tbls _0814E160\n"
"\tadds r0, r3, 0\n"
"\tldr r1, _0814E1EC @ =1000000\n"
"\tbl __udivsi3\n"
"\tlsls r0, 24\n"
"\tlsrs r7, r0, 24\n"
"\tldr r0, _0814E1F0 @ =gStringVar2\n"
"\tadds r1, r7, 0\n"
"\tmovs r2, 0x2\n"
"\tmovs r3, 0x2\n"
"\tbl ConvertIntToDecimalStringN\n"
"\tldr r0, _0814E1F4 @ =gUnknown_846F4B8\n"
"\tldr r2, [sp, 0x34]\n"
"\tadds r0, r2, r0\n"
"\tldr r1, [r0]\n"
"\tldr r0, _0814E1F8 @ =gStringVar4\n"
"\tbl StringExpandPlaceholders\n"
"\tmovs r0, 0x2\n"
"\tldr r1, _0814E1F8 @ =gStringVar4\n"
"\tmovs r2, 0\n"
"\tbl GetStringWidth\n"
"\tadds r2, r0, 0\n"
"\tldr r4, [sp, 0x30]\n"
"\tsubs r2, r4, r2\n"
"\tlsls r2, 24\n"
"\tlsrs r2, 24\n"
"\tldr r1, [sp, 0x2C]\n"
"\tldrb r0, [r1]\n"
"\tmov r4, r9\n"
"\tmov r1, r8\n"
"\tsubs r3, r4, r1\n"
"\tlsls r3, 1\n"
"\tldr r4, [sp, 0x18]\n"
"\tadds r3, r4, r3\n"
"\tlsls r3, 24\n"
"\tlsrs r3, 24\n"
"\tldr r1, _0814E1FC @ =sBerryCrushTextColorTable\n"
"\tstr r1, [sp]\n"
"\tmovs r4, 0\n"
"\tstr r4, [sp, 0x4]\n"
"\tldr r1, _0814E1F8 @ =gStringVar4\n"
"\tstr r1, [sp, 0x8]\n"
"\tmovs r1, 0x2\n"
"\tbl AddTextPrinterParameterized3\n"
"\tb _0814E27E\n"
"\t.align 2, 0\n"
"_0814E1E4: .4byte gStringVar1\n"
"_0814E1E8: .4byte gUnknown_846E450\n"
"_0814E1EC: .4byte 1000000\n"
"_0814E1F0: .4byte gStringVar2\n"
"_0814E1F4: .4byte gUnknown_846F4B8\n"
"_0814E1F8: .4byte gStringVar4\n"
"_0814E1FC: .4byte sBerryCrushTextColorTable\n"
"_0814E200:\n"
"\tmov r2, r8\n"
"\tstr r2, [sp, 0x1C]\n"
"\tmov r0, r8\n"
"\tadds r4, r0, 0\n"
"\tstr r4, [sp, 0x20]\n"
"\tlsls r5, r0, 5\n"
"\tldr r1, [sp, 0xC]\n"
"\tadds r0, r1, r5\n"
"\tadds r0, 0xA4\n"
"\tldrb r2, [r0]\n"
"\tcmp r2, 0x2B\n"
"\tbls _0814E21A\n"
"\tmovs r2, 0\n"
"_0814E21A:\n"
"\tlsls r1, r2, 3\n"
"\tsubs r1, r2\n"
"\tlsls r1, 2\n"
"\tldr r0, _0814E294 @ =gBerries\n"
"\tadds r1, r0\n"
"\tldr r0, _0814E298 @ =gStringVar1\n"
"\tbl StringCopy\n"
"\tldr r0, _0814E29C @ =gUnknown_846F4B8\n"
"\tldr r1, [r0, 0x8]\n"
"\tldr r0, _0814E2A0 @ =gStringVar4\n"
"\tbl StringExpandPlaceholders\n"
"\tmovs r0, 0x2\n"
"\tldr r1, _0814E2A0 @ =gStringVar4\n"
"\tmovs r2, 0x1\n"
"\tnegs r2, r2\n"
"\tbl GetStringWidth\n"
"\tadds r2, r0, 0\n"
"\tldr r4, [sp, 0x14]\n"
"\tsubs r2, r4, r2\n"
"\tsubs r2, 0x4\n"
"\tlsls r2, 24\n"
"\tlsrs r2, 24\n"
"\tldr r1, [sp, 0x2C]\n"
"\tldrb r0, [r1]\n"
"\tmov r1, r8\n"
"\tlsls r4, r1, 3\n"
"\tsubs r3, r4, r1\n"
"\tlsls r3, 1\n"
"\tldr r1, [sp, 0x18]\n"
"\tadds r3, r1, r3\n"
"\tlsls r3, 24\n"
"\tlsrs r3, 24\n"
"\tldr r1, _0814E2A4 @ =sBerryCrushTextColorTable\n"
"\tstr r1, [sp]\n"
"\tmovs r1, 0\n"
"\tstr r1, [sp, 0x4]\n"
"\tldr r1, _0814E2A0 @ =gStringVar4\n"
"\tstr r1, [sp, 0x8]\n"
"\tmovs r1, 0x2\n"
"\tbl AddTextPrinterParameterized3\n"
"\tmov r9, r4\n"
"\tmov r6, r8\n"
"\tadds r6, 0xA2\n"
"\tmovs r2, 0x1\n"
"\tadd r2, r8\n"
"\tmov r10, r2\n"
"_0814E27E:\n"
"\tldr r0, [sp, 0x1C]\n"
"\tldr r4, [sp, 0xC]\n"
"\tldrb r4, [r4, 0x8]\n"
"\tcmp r0, r4\n"
"\tbne _0814E2B0\n"
"\tldr r0, _0814E2A8 @ =gStringVar3\n"
"\tldr r1, _0814E2AC @ =gText_1_ClrLtGryShdwBlk_Dynamic0\n"
"\tbl StringCopy\n"
"\tb _0814E2B8\n"
"\t.align 2, 0\n"
"_0814E294: .4byte gBerries\n"
"_0814E298: .4byte gStringVar1\n"
"_0814E29C: .4byte gUnknown_846F4B8\n"
"_0814E2A0: .4byte gStringVar4\n"
"_0814E2A4: .4byte sBerryCrushTextColorTable\n"
"_0814E2A8: .4byte gStringVar3\n"
"_0814E2AC: .4byte gText_1_ClrLtGryShdwBlk_Dynamic0\n"
"_0814E2B0:\n"
"\tldr r0, _0814E31C @ =gStringVar3\n"
"\tldr r1, _0814E320 @ =gText_1_Dynamic0\n"
"\tbl StringCopy\n"
"_0814E2B8:\n"
"\tldr r4, _0814E31C @ =gStringVar3\n"
"\tstrb r6, [r4]\n"
"\tadds r1, r5, 0\n"
"\tadds r1, 0x98\n"
"\tldr r0, [sp, 0xC]\n"
"\tadds r1, r0, r1\n"
"\tmovs r0, 0\n"
"\tbl DynamicPlaceholderTextUtil_SetPlaceholderPtr\n"
"\tldr r0, _0814E324 @ =gStringVar4\n"
"\tadds r1, r4, 0\n"
"\tbl DynamicPlaceholderTextUtil_ExpandPlaceholders\n"
"\tldr r1, [sp, 0x2C]\n"
"\tldrb r0, [r1]\n"
"\tmov r2, r9\n"
"\tmov r4, r8\n"
"\tsubs r3, r2, r4\n"
"\tlsls r3, 1\n"
"\tldr r1, [sp, 0x18]\n"
"\tadds r3, r1, r3\n"
"\tlsls r3, 24\n"
"\tlsrs r3, 24\n"
"\tldr r2, _0814E328 @ =sBerryCrushTextColorTable\n"
"\tstr r2, [sp]\n"
"\tmovs r4, 0\n"
"\tstr r4, [sp, 0x4]\n"
"\tldr r1, _0814E324 @ =gStringVar4\n"
"\tstr r1, [sp, 0x8]\n"
"\tmovs r1, 0x2\n"
"\tmovs r2, 0x4\n"
"\tbl AddTextPrinterParameterized3\n"
"\tmov r2, r10\n"
"\tlsls r0, r2, 24\n"
"\tlsrs r0, 24\n"
"\tmov r8, r0\n"
"\tldr r4, [sp, 0xC]\n"
"\tldrb r4, [r4, 0x9]\n"
"\tcmp r8, r4\n"
"\tbcs _0814E30C\n"
"\tb _0814DFF0\n"
"_0814E30C:\n"
"\tadd sp, 0x38\n"
"\tpop {r3-r5}\n"
"\tmov r8, r3\n"
"\tmov r9, r4\n"
"\tmov r10, r5\n"
"\tpop {r4-r7}\n"
"\tpop {r0}\n"
"\tbx r0\n"
"\t.align 2, 0\n"
"_0814E31C: .4byte gStringVar3\n"
"_0814E320: .4byte gText_1_Dynamic0\n"
"_0814E324: .4byte gStringVar4\n"
"_0814E328: .4byte sBerryCrushTextColorTable");
}
#endif
static void sub_814E32C(struct BerryCrushGame * r8)
{