summaryrefslogtreecommitdiff
path: root/src/engine/trade.c
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2018-02-07 00:40:22 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2018-02-07 00:40:22 -0500
commitdcd35c895cb1c5680f92360cb084e6924ed3b76f (patch)
treee3b12bfd9f67e1237832602f03fe5bfd7380ab0b /src/engine/trade.c
parenteff6795887cc27f2c5139df9a6da70f4f02338b4 (diff)
parentc79d259508d47a8b5bde5b9060b8fe8c6989bd44 (diff)
Merge branch 'master' into unk_text_8095904
Diffstat (limited to 'src/engine/trade.c')
-rw-r--r--src/engine/trade.c243
1 files changed, 111 insertions, 132 deletions
diff --git a/src/engine/trade.c b/src/engine/trade.c
index 0bc589ff4..36e6fc757 100644
--- a/src/engine/trade.c
+++ b/src/engine/trade.c
@@ -141,7 +141,7 @@ struct TradeEwramStruct {
};
static void sub_8047EC0(void);
-static void sub_804AFB8(const struct WindowConfig *, u8 *, const u8 *, u8);
+static void sub_804AFB8(const struct WindowTemplate *, u8 *, const u8 *, u8);
static void sub_804ACD8(const u8 *, u8 *, u8);
static void nullsub_5(u8, u8);
static void sub_804AA88(void);
@@ -213,12 +213,14 @@ static
#endif
void sub_804DB84(void);
-extern u8 gUnknown_020297D8[2];
-extern u8 *gUnknown_020296CC[13];
+EWRAM_DATA u8 *gUnknown_020296CC[13] = {0};
+EWRAM_DATA struct MailStruct gUnknown_02029700[6] = {0};
+EWRAM_DATA u8 gUnknown_020297D8[2] = {0};
+
extern struct TradeEwramSubstruct *gUnknown_03004824;
-extern struct MailStruct gUnknown_02029700[16];
-const u32 unref_data_820ABD4[] = {
+const u32 unref_data_820ABD4[] =
+{
0x00000890,
0x00003AC0,
0x0000001C,
@@ -1016,10 +1018,10 @@ void sub_8047CD8(void)
static void sub_8047CE8(void)
{
u8 mpId;
- sub_804AFB8(&gWindowConfig_81E725C, gUnknown_020296CC[0], gSaveBlock2.playerName, 0xC);
+ sub_804AFB8(&gWindowTemplate_81E725C, gUnknown_020296CC[0], gSaveBlock2.playerName, 0xC);
mpId = GetMultiplayerId();
- sub_804AFB8(&gWindowConfig_81E725C, gUnknown_020296CC[3], gLinkPlayers[mpId ^ 1].name, 0xC);
- sub_804AFB8(&gWindowConfig_81E725C, gUnknown_020296CC[6], gUnknown_0820C14C[0], 0x8);
+ sub_804AFB8(&gWindowTemplate_81E725C, gUnknown_020296CC[3], gLinkPlayers[mpId ^ 1].name, 0xC);
+ sub_804AFB8(&gWindowTemplate_81E725C, gUnknown_020296CC[6], gUnknown_0820C14C[0], 0x8);
sub_804ACD8(gUnknown_0820C14C[1], gUnknown_020296CC[8], 0x14);
nullsub_5(3, 0);
}
@@ -1087,12 +1089,12 @@ static void sub_8047EC0(void)
ResetTasks();
sub_804A964(&gUnknown_03004824->unk_00c8, BG_SCREEN_ADDR(5));
SetVBlankCallback(sub_80489F4);
- InitMenuWindow(&gWindowConfig_81E6CE4);
- SetUpWindowConfig(&gWindowConfig_81E6F84);
- InitWindowFromConfig(&gUnknown_03004824->window, &gWindowConfig_81E6F84);
- gUnknown_03004824->unk_007a = SetTextWindowBaseTileNum(20);
- LoadTextWindowGraphics(&gUnknown_03004824->window);
- MenuZeroFillScreen();
+ InitMenuWindow(&gWindowTemplate_81E6CE4);
+ Text_LoadWindowTemplate(&gWindowTemplate_81E6F84);
+ Text_InitWindowWithTemplate(&gUnknown_03004824->window, &gWindowTemplate_81E6F84);
+ gUnknown_03004824->unk_007a = TextWindow_SetBaseTileNum(20);
+ TextWindow_LoadStdFrameGraphics(&gUnknown_03004824->window);
+ Menu_EraseScreen();
sub_809D51C();
gUnknown_03004824->unk_0075 = 0;
gUnknown_03004824->unk_007b = 0;
@@ -1157,7 +1159,7 @@ static void sub_8047EC0(void)
break;
case 6:
CalculateEnemyPartyCount();
- FillWindowRect_DefaultPalette(&gUnknown_03004824->window, 0, 0, 0, 29, 19);
+ Text_FillWindowRectDefPalette(&gUnknown_03004824->window, 0, 0, 0, 29, 19);
REG_DISPCNT = 0;
gUnknown_03004824->partyCounts[0] = gPlayerPartyCount;
gUnknown_03004824->partyCounts[1] = gEnemyPartyCount;
@@ -1267,12 +1269,12 @@ static void sub_80484F4(void)
ResetTasks();
sub_804A964(&gUnknown_03004824->unk_00c8, BG_SCREEN_ADDR(5));
SetVBlankCallback(sub_80489F4);
- InitMenuWindow(&gWindowConfig_81E6CE4);
- SetUpWindowConfig(&gWindowConfig_81E6F84);
- InitWindowFromConfig(&gUnknown_03004824->window, &gWindowConfig_81E6F84);
- gUnknown_03004824->unk_007a = SetTextWindowBaseTileNum(20);
- LoadTextWindowGraphics(&gUnknown_03004824->window);
- MenuZeroFillScreen();
+ InitMenuWindow(&gWindowTemplate_81E6CE4);
+ Text_LoadWindowTemplate(&gWindowTemplate_81E6F84);
+ Text_InitWindowWithTemplate(&gUnknown_03004824->window, &gWindowTemplate_81E6F84);
+ gUnknown_03004824->unk_007a = TextWindow_SetBaseTileNum(20);
+ TextWindow_LoadStdFrameGraphics(&gUnknown_03004824->window);
+ Menu_EraseScreen();
sub_809D51C();
gUnknown_03004824->unk_0075 = 0;
gUnknown_03004824->unk_007b = 0;
@@ -1453,9 +1455,7 @@ static void sub_8048AB4(void)
static void sub_8048B0C(u8 a0)
{
int i;
- u16 *dest;
- const u16 *src;
- u32 size;
+
switch (a0)
{
case 0:
@@ -1464,30 +1464,13 @@ static void sub_8048B0C(u8 a0)
gPlttBufferUnfaded[i] = *(gUnknown_08EA02C8 + i);
gPlttBufferFaded[i] = *(gUnknown_08EA02C8 + i);
}
- src = gUnknown_08EA0348;
- dest = (u16 *)BG_VRAM;
- size = 0x1280;
- while (1)
- {
- DmaCopy16(3, src, dest, BLOCKSIZE * sizeof(u16));
- src += BLOCKSIZE;
- dest += BLOCKSIZE;
- size -= BLOCKSIZE * sizeof(u16);
- if (size <= BLOCKSIZE * sizeof(u16))
- {
- DmaCopy16(3, src, dest, size);
- break;
- }
- }
+ DmaCopyLarge16(3, gUnknown_08EA0348, (void *)BG_VRAM, 0x1280, 0x1000);
for (i = 0; i < 0x400; i ++)
gUnknown_03004824->unk_00c8.unk_12[i] = gUnknown_08EA15C8[i];
- dest = BG_SCREEN_ADDR(6);
- DmaCopy16(3, gTradeStripesBG2Tilemap, dest, 0x800);
+ DmaCopy16Defvars(3, gTradeStripesBG2Tilemap, BG_SCREEN_ADDR(6), 0x800);
break;
case 1:
- src = gTradeStripesBG3Tilemap;
- dest = BG_SCREEN_ADDR(7);
- DmaCopy16(3, src, dest, 0x800);
+ DmaCopy16Defvars(3, gTradeStripesBG3Tilemap, BG_SCREEN_ADDR(7), 0x800);
sub_804A6DC(0);
sub_804A6DC(1);
sub_804A938(&gUnknown_03004824->unk_00c8);
@@ -1728,7 +1711,7 @@ static bool8 sub_8048D44(void)
gUnknown_03004824->unk_0075 ++;
break;
case 1:
- if (sub_8007ECC())
+ if (IsLinkTaskFinished())
{
if (GetBlockReceivedStatus() == 0)
{
@@ -2096,8 +2079,8 @@ static void sub_8049680(void)
PlaySE(SE_SELECT);
if (gUnknown_03004824->tradeMenuCursorPosition < PARTY_SIZE)
{
- DrawTextWindow(&gUnknown_03004824->window, 18, 14, 28, 19);
- PrintMenuItems(19, 15, 2, (const struct MenuAction *)gUnknown_0820C320);
+ TextWindow_DrawStdFrame(&gUnknown_03004824->window, 18, 14, 28, 19);
+ Menu_PrintItems(19, 15, 2, (const struct MenuAction *)gUnknown_0820C320);
InitMenu(0, 19, 15, 2, 0, 9);
gUnknown_03004824->unk_007b = 1;
}
@@ -2108,7 +2091,7 @@ static void sub_8049680(void)
}
else if (gUnknown_03004824->tradeMenuCursorPosition == 2 * PARTY_SIZE)
{
- DrawTextWindow(&gUnknown_03004824->window, 24, 14, 29, 19);
+ TextWindow_DrawStdFrame(&gUnknown_03004824->window, 24, 14, 29, 19);
InitYesNoMenu(24, 14, 4);
gUnknown_03004824->unk_007b = 4;
sub_804ACD8(gUnknown_0820C14C[4], BG_CHAR_ADDR(4) + 32 * gUnknown_03004824->unk_007e, 20);
@@ -2126,7 +2109,7 @@ static void sub_8049680(void)
static void sub_8049804(void)
{
- HandleDestroyMenuCursors();
+ Menu_DestroyCursor();
sub_804A80C();
gUnknown_03004824->unk_007b = 0;
gSprites[gUnknown_03004824->tradeMenuCursorSpriteIdx].invisible = FALSE;
@@ -2138,17 +2121,17 @@ static void sub_8049860(void)
if (gMain.newAndRepeatedKeys & DPAD_UP)
{
PlaySE(SE_SELECT);
- gUnknown_03004824->unk_007c = MoveMenuCursor(-1);
+ gUnknown_03004824->unk_007c = Menu_MoveCursor(-1);
}
else if (gMain.newAndRepeatedKeys & DPAD_DOWN)
{
PlaySE(SE_SELECT);
- gUnknown_03004824->unk_007c = MoveMenuCursor(+1);
+ gUnknown_03004824->unk_007c = Menu_MoveCursor(+1);
}
if (gMain.newKeys & A_BUTTON)
{
PlaySE(SE_SELECT);
- if (GetMenuCursorPos() == 0)
+ if (Menu_GetCursorPos() == 0)
{
BeginNormalPaletteFade(-1, 0, 0, 16, 0);
gUnknown_03004824->unk_007b = 2;
@@ -2227,7 +2210,7 @@ static void sub_8049A20(void)
{
sub_804AADC(3, 1);
gUnknown_03004824->linkData[0] = 0xbbbb;
- if (sub_8007ECC())
+ if (IsLinkTaskFinished())
{
Trade_SendData(gUnknown_03004824);
}
@@ -2239,24 +2222,24 @@ static void sub_8049AC0(void)
if (gMain.newAndRepeatedKeys & DPAD_UP)
{
PlaySE(SE_SELECT);
- gUnknown_03004824->unk_007c = MoveMenuCursor(-1);
+ gUnknown_03004824->unk_007c = Menu_MoveCursor(-1);
}
else if (gMain.newAndRepeatedKeys & DPAD_DOWN)
{
PlaySE(SE_SELECT);
- gUnknown_03004824->unk_007c = MoveMenuCursor(+1);
+ gUnknown_03004824->unk_007c = Menu_MoveCursor(+1);
}
if (gMain.newKeys & A_BUTTON)
{
PlaySE(SE_SELECT);
- if (GetMenuCursorPos() == 0)
+ if (Menu_GetCursorPos() == 0)
{
sub_8049A20();
}
else
{
sub_804AADC(3, 1);
- if (sub_8007ECC())
+ if (IsLinkTaskFinished())
{
gUnknown_03004824->linkData[0] = 0xbbcc;
Trade_SendData(gUnknown_03004824);
@@ -2267,9 +2250,9 @@ static void sub_8049AC0(void)
else if (gMain.newKeys & B_BUTTON)
{
sub_804AADC(3, 1);
- if (GetMenuCursorPos() == 0)
+ if (Menu_GetCursorPos() == 0)
{
- gUnknown_03004824->unk_007c = MoveMenuCursor(+1);
+ gUnknown_03004824->unk_007c = Menu_MoveCursor(+1);
}
gUnknown_03004824->linkData[0] = 0xbbcc;
Trade_SendData(gUnknown_03004824);
@@ -2282,17 +2265,17 @@ static void sub_8049BC0(void)
if (gMain.newAndRepeatedKeys & DPAD_UP)
{
PlaySE(SE_SELECT);
- gUnknown_03004824->unk_007c = MoveMenuCursor(-1);
+ gUnknown_03004824->unk_007c = Menu_MoveCursor(-1);
}
else if (gMain.newAndRepeatedKeys & DPAD_DOWN)
{
PlaySE(SE_SELECT);
- gUnknown_03004824->unk_007c = MoveMenuCursor(+1);
+ gUnknown_03004824->unk_007c = Menu_MoveCursor(+1);
}
if (gMain.newKeys & A_BUTTON)
{
PlaySE(SE_SELECT);
- if (GetMenuCursorPos() == 0)
+ if (Menu_GetCursorPos() == 0)
{
sub_804AA0C(4);
gUnknown_03004824->linkData[0] = 0xeeaa;
@@ -2337,7 +2320,7 @@ static void DisplayMessageAndContinueTask(void)
gUnknown_03004824->unk_00b4++;
if (gUnknown_03004824->unk_00b4 > 120)
{
- DrawTextWindow(&gUnknown_03004824->window, 24, 14, 29, 19);
+ TextWindow_DrawStdFrame(&gUnknown_03004824->window, 24, 14, 29, 19);
InitYesNoMenu(24, 14, 4);
gUnknown_03004824->unk_00b4 = 0;
gUnknown_03004824->unk_007b = 3;
@@ -2464,8 +2447,8 @@ static void sub_8049ED4(u8 a0)
StoreSpriteCallbackInData(&gSprites[gUnknown_03004824->partyIcons[whichParty][whichPokemon]], sub_809D62C);
gUnknown_03004824->unk_0080[a0] ++;
sub_8078A34(&gSprites[gUnknown_03004824->partyIcons[whichParty][whichPokemon]]);
- HandleDestroyMenuCursors();
- FillWindowRect_DefaultPalette(&gUnknown_03004824->window, 0, gUnknown_0820C330[whichParty][0], 0, gUnknown_0820C330[whichParty][1], 19);
+ Menu_DestroyCursor();
+ Text_FillWindowRectDefPalette(&gUnknown_03004824->window, 0, gUnknown_0820C330[whichParty][0], 0, gUnknown_0820C330[whichParty][1], 19);
sub_804A96C_alt(&gUnknown_03004824->unk_00c8, 15 * a0, 0, gTradePartyBoxTilemap, 15, 17, 0);
if (whichParty == 0)
{
@@ -2491,10 +2474,10 @@ static void sub_8049ED4(u8 a0)
string1[3] = 0xFC;
string1[4] = 0x11;
string1[5] = (64 - stringLength) / 2;
- sub_8003460(&gUnknown_03004824->window, string1, gUnknown_03004824->unk_007a + whichParty * 6 * 32, gUnknown_0820C334[whichParty][0], gUnknown_0820C334[whichParty][1]);
+ Text_InitWindowAndPrintText(&gUnknown_03004824->window, string1, gUnknown_03004824->unk_007a + whichParty * 6 * 32, gUnknown_0820C334[whichParty][0], gUnknown_0820C334[whichParty][1]);
sub_804A33C(string2, whichParty, whichPokemon);
- sub_8003460(&gUnknown_03004824->window, gOtherText_Terminator2, gUnknown_03004824->unk_007a + whichParty * 6 * 32 + 32, gUnknown_0820C334[whichParty + 1][0], gUnknown_0820C334[whichParty + 1][1] + 1);
- sub_8003460(&gUnknown_03004824->window, string2, gUnknown_03004824->unk_007a + whichParty * 6 * 32 + 38, gUnknown_0820C334[whichParty + 1][0], gUnknown_0820C334[whichParty + 1][1] + 1);
+ Text_InitWindowAndPrintText(&gUnknown_03004824->window, gOtherText_Terminator2, gUnknown_03004824->unk_007a + whichParty * 6 * 32 + 32, gUnknown_0820C334[whichParty + 1][0], gUnknown_0820C334[whichParty + 1][1] + 1);
+ Text_InitWindowAndPrintText(&gUnknown_03004824->window, string2, gUnknown_03004824->unk_007a + whichParty * 6 * 32 + 38, gUnknown_0820C334[whichParty + 1][0], gUnknown_0820C334[whichParty + 1][1] + 1);
gUnknown_03004824->unk_0080[a0] ++;
break;
case 4:
@@ -2692,7 +2675,7 @@ static void sub_8049ED4(u8 a0)
"\tlsls r0, 2\n"
"\tadds r0, r7\n"
"\tbl sub_8078A34\n"
- "\tbl HandleDestroyMenuCursors\n"
+ "\tbl Menu_DestroyCursor\n"
"\tldr r3, _0804A09C @ =gUnknown_03004824\n"
"\tldr r0, [r3]\n"
"\tadds r0, 0x4\n"
@@ -2708,7 +2691,7 @@ static void sub_8049ED4(u8 a0)
"\tstr r1, [sp, 0x4]\n"
"\tmovs r1, 0\n"
"\tmovs r3, 0\n"
- "\tbl FillWindowRect_DefaultPalette\n"
+ "\tbl Text_FillWindowRectDefPalette\n"
"\tldr r1, _0804A09C @ =gUnknown_03004824\n"
"\tldr r0, [r1]\n"
"\tadds r0, 0xC8\n"
@@ -2884,7 +2867,7 @@ static void sub_8049ED4(u8 a0)
"\tldrb r1, [r1]\n"
"\tstr r1, [sp]\n"
"\tadd r1, sp, 0xC\n"
- "\tbl sub_8003460\n"
+ "\tbl Text_InitWindowAndPrintText\n"
"\tadd r7, sp, 0x34\n"
"\tadds r0, r7, 0\n"
"\tldr r1, [sp, 0x6C]\n"
@@ -2910,7 +2893,7 @@ static void sub_8049ED4(u8 a0)
"\tlsrs r4, 24\n"
"\tstr r4, [sp]\n"
"\tadds r3, r5, 0\n"
- "\tbl sub_8003460\n"
+ "\tbl Text_InitWindowAndPrintText\n"
"\tldr r0, _0804A22C @ =gUnknown_03004824\n"
"\tldr r1, [r0]\n"
"\tadds r0, r1, 0x4\n"
@@ -2921,7 +2904,7 @@ static void sub_8049ED4(u8 a0)
"\tstr r4, [sp]\n"
"\tadds r1, r7, 0\n"
"\tadds r3, r5, 0\n"
- "\tbl sub_8003460\n"
+ "\tbl Text_InitWindowAndPrintText\n"
"\tldr r2, _0804A22C @ =gUnknown_03004824\n"
"\tldr r1, [r2]\n"
"\tb _0804A28A\n"
@@ -3010,7 +2993,7 @@ u8 sub_804A2B4(u8 *a0, u8 whichParty, u8 whichPokemon)
GetMonGender(&gEnemyParty[whichPokemon]);
GetMonData(&gEnemyParty[whichPokemon], MON_DATA_LEVEL);
}
- return GetStringWidthGivenWindowConfig(&gWindowConfig_81E7294, a0);
+ return Text_GetStringWidthFromWindowTemplate(&gWindowTemplate_81E7294, a0);
}
#ifdef NONMATCHING
@@ -3067,8 +3050,8 @@ static void sub_804A41C(u8 whichParty)
GetMonData(pokemon, MON_DATA_NICKNAME, nickname);
StringCopy10(string + 6, nickname);
GetMonGender(pokemon);
- string[5] = (50 - GetStringWidthGivenWindowConfig(&gWindowConfig_81E7294, string + 6)) / 2;
- sub_8003460(&gUnknown_03004824->window, string, gUnknown_03004824->unk_007a + 22 * 6 * whichParty + 22 * i, gTradeMonSpriteCoords[i + 6 * whichParty][0], gTradeMonSpriteCoords[i + 6 * whichParty][1]);
+ string[5] = (50 - Text_GetStringWidthFromWindowTemplate(&gWindowTemplate_81E7294, string + 6)) / 2;
+ Text_InitWindowAndPrintText(&gUnknown_03004824->window, string, gUnknown_03004824->unk_007a + 22 * 6 * whichParty + 22 * i, gTradeMonSpriteCoords[i + 6 * whichParty][0], gTradeMonSpriteCoords[i + 6 * whichParty][1]);
}
}
#else
@@ -3141,8 +3124,8 @@ static void sub_804A41C(u8 whichParty)
"\tbl GetMonGender\n"
"\tmov r1, sp\n"
"\tadds r1, 0x22\n"
- "\tldr r0, _0804A518 @ =gWindowConfig_81E7294\n"
- "\tbl GetStringWidthGivenWindowConfig\n"
+ "\tldr r0, _0804A518 @ =gWindowTemplate_81E7294\n"
+ "\tbl Text_GetStringWidthFromWindowTemplate\n"
"\tlsls r0, 24\n"
"\tlsrs r0, 24\n"
"\tmovs r1, 0x32\n"
@@ -3177,7 +3160,7 @@ static void sub_804A41C(u8 whichParty)
"\tldrb r1, [r1]\n"
"\tstr r1, [sp]\n"
"\tmov r1, r8\n"
- "\tbl sub_8003460\n"
+ "\tbl Text_InitWindowAndPrintText\n"
"\tadds r0, r6, 0x1\n"
"\tlsls r0, 24\n"
"\tlsrs r6, r0, 24\n"
@@ -3198,7 +3181,7 @@ static void sub_804A41C(u8 whichParty)
"\tbx r0\n"
"\t.align 2, 0\n"
"_0804A514: .4byte gEnemyParty\n"
- "_0804A518: .4byte gWindowConfig_81E7294");
+ "_0804A518: .4byte gWindowTemplate_81E7294");
}
#endif
@@ -3337,7 +3320,7 @@ static void sub_804A740(u8 whichParty)
static void sub_804A80C(void)
{
- FillWindowRect_DefaultPalette(&gUnknown_03004824->window, 0, gUnknown_0820C330[1][0], 0, gUnknown_0820C330[1][1], 19);
+ Text_FillWindowRectDefPalette(&gUnknown_03004824->window, 0, gUnknown_0820C330[1][0], 0, gUnknown_0820C330[1][1], 19);
sub_804A41C(1);
}
@@ -3345,7 +3328,7 @@ static void sub_804A840(u8 whichParty)
{
if (whichParty == 0)
{
- FillWindowRect_DefaultPalette(&gUnknown_03004824->window, 0, gUnknown_0820C330[0][0], 0, gUnknown_0820C330[0][1], 19);
+ Text_FillWindowRectDefPalette(&gUnknown_03004824->window, 0, gUnknown_0820C330[0][0], 0, gUnknown_0820C330[0][1], 19);
sub_804A96C_alt(&gUnknown_03004824->unk_00c8, 0, 0, gTradePartyBoxTilemap, 15, 17, 0);
sub_804A6DC(0);
sub_804A41C(0);
@@ -3354,8 +3337,8 @@ static void sub_804A840(u8 whichParty)
}
else
{
- HandleDestroyMenuCursors();
- FillWindowRect_DefaultPalette(&gUnknown_03004824->window, 0, gUnknown_0820C330[1][0], 0, gUnknown_0820C330[1][1], 19);
+ Menu_DestroyCursor();
+ Text_FillWindowRectDefPalette(&gUnknown_03004824->window, 0, gUnknown_0820C330[1][0], 0, gUnknown_0820C330[1][1], 19);
sub_804A96C_alt(&gUnknown_03004824->unk_00c8, 15, 0, gTradePartyBoxTilemap, 15, 17, 0);
sub_804A6DC(1);
sub_804A41C(1);
@@ -3413,18 +3396,18 @@ static void sub_804A96C_alt(struct UnkStructD *arg0, u8 left, u8 top, const u16
static void sub_804A9F4(u8 unused)
{
- MenuZeroFillScreen();
+ Menu_EraseScreen();
}
static void sub_804AA00(u8 unused)
{
- MenuZeroFillScreen();
+ Menu_EraseScreen();
}
static void sub_804AA0C(u8 a0)
{
- DrawTextWindow(&gUnknown_03004824->window, gTradeMessageWindowRects[a0][0], gTradeMessageWindowRects[a0][1], gTradeMessageWindowRects[a0][2], gTradeMessageWindowRects[a0][3]);
- sub_8003460(&gUnknown_03004824->window, gUnknown_0820C2F0[a0], 0x180 + gUnknown_03004824->unk_007a, gTradeMessageWindowRects[a0][0] + 1, gTradeMessageWindowRects[a0][1] + 1);
+ TextWindow_DrawStdFrame(&gUnknown_03004824->window, gTradeMessageWindowRects[a0][0], gTradeMessageWindowRects[a0][1], gTradeMessageWindowRects[a0][2], gTradeMessageWindowRects[a0][3]);
+ Text_InitWindowAndPrintText(&gUnknown_03004824->window, gUnknown_0820C2F0[a0], 0x180 + gUnknown_03004824->unk_007a, gTradeMessageWindowRects[a0][0] + 1, gTradeMessageWindowRects[a0][1] + 1);
}
static void sub_804AA88(void)
@@ -3523,7 +3506,7 @@ static bool8 sub_804ABF8(void)
static void sub_804ACD8(const u8 *src, u8 *dest, u8 a2)
{
- sub_804AFB8(&gWindowConfig_81E725C, dest, src, a2);
+ sub_804AFB8(&gWindowTemplate_81E725C, dest, src, a2);
}
#ifdef NONMATCHING
@@ -3798,7 +3781,7 @@ static void sub_804AF84(void)
gSaveBlock1.giftRibbons[i] = gUnknown_03004824->unk_00b5[i];
}
-static void sub_804AFB8(const struct WindowConfig *windowConfig, u8 *dest, const u8 *src, u8 size)
+static void sub_804AFB8(const struct WindowTemplate *windowConfig, u8 *dest, const u8 *src, u8 size)
{
u8 i;
u8 *tileBuffer;
@@ -3806,7 +3789,7 @@ static void sub_804AFB8(const struct WindowConfig *windowConfig, u8 *dest, const
tileBuffer = gTileBuffer;
CpuFill16(0, tileBuffer, size * 0x80);
CpuFill16(0, tileBuffer + windowConfig->width * 0x20, size * 0x80);
- sub_8004E3C(windowConfig, tileBuffer, src);
+ Text_InitWindow8004E3C(windowConfig, tileBuffer, src);
for (i = 0; i < size; i ++)
{
CpuCopy16(&tileBuffer[32 * (i * 4)], &dest[32 * (i * 8)], 0x80);
@@ -4028,11 +4011,11 @@ static void sub_804B41C(void)
FreeAllSpritePalettes();
SetVBlankCallback(sub_804B210);
sub_804B228();
- SetUpWindowConfig(&gWindowConfig_81E6F84);
- InitWindowFromConfig(&gUnknown_03004828->window, &gWindowConfig_81E6F84);
- gUnknown_03004828->textWindowBaseTileNum = SetTextWindowBaseTileNum(2);
- LoadTextWindowGraphics(&gUnknown_03004828->window);
- MenuZeroFillScreen();
+ Text_LoadWindowTemplate(&gWindowTemplate_81E6F84);
+ Text_InitWindowWithTemplate(&gUnknown_03004828->window, &gWindowTemplate_81E6F84);
+ gUnknown_03004828->textWindowBaseTileNum = TextWindow_SetBaseTileNum(2);
+ TextWindow_LoadStdFrameGraphics(&gUnknown_03004828->window);
+ Menu_EraseScreen();
gLinkType = 0x1144;
gMain.state ++;
LZDecompressVram(gUnknown_08D00000, (void *)VRAM);
@@ -4182,22 +4165,22 @@ static __attribute__((naked)) void sub_804B41C(void)
"\tldr r0, _0804B578 @ =sub_804B210\n"
"\tbl SetVBlankCallback\n"
"\tbl sub_804B228\n"
- "\tldr r4, _0804B57C @ =gWindowConfig_81E6F84\n"
+ "\tldr r4, _0804B57C @ =gWindowTemplate_81E6F84\n"
"\tadds r0, r4, 0\n"
- "\tbl SetUpWindowConfig\n"
+ "\tbl Text_LoadWindowTemplate\n"
"\tldr r0, [r6]\n"
"\tadds r0, 0x4\n"
"\tadds r1, r4, 0\n"
- "\tbl InitWindowFromConfig\n"
+ "\tbl Text_InitWindowWithTemplate\n"
"\tmovs r0, 0x2\n"
- "\tbl SetTextWindowBaseTileNum\n"
+ "\tbl TextWindow_SetBaseTileNum\n"
"\tldr r1, [r6]\n"
"\tadds r1, 0x34\n"
"\tstrb r0, [r1]\n"
"\tldr r0, [r6]\n"
"\tadds r0, 0x4\n"
- "\tbl LoadTextWindowGraphics\n"
- "\tbl MenuZeroFillScreen\n"
+ "\tbl TextWindow_LoadStdFrameGraphics\n"
+ "\tbl Menu_EraseScreen\n"
"\tldr r1, _0804B580 @ =gLinkType\n"
"\tldr r4, _0804B584 @ =0x00001144\n"
"\tadds r0, r4, 0\n"
@@ -4279,7 +4262,7 @@ static __attribute__((naked)) void sub_804B41C(void)
"_0804B570: .4byte gUnknown_03004828\n"
"_0804B574: .4byte gSharedMem + 0x1F000\n"
"_0804B578: .4byte sub_804B210\n"
- "_0804B57C: .4byte gWindowConfig_81E6F84\n"
+ "_0804B57C: .4byte gWindowTemplate_81E6F84\n"
"_0804B580: .4byte gLinkType\n"
"_0804B584: .4byte 0x00001144\n"
"_0804B588: .4byte gMain\n"
@@ -4512,8 +4495,8 @@ static __attribute__((naked)) void sub_804B41C(void)
}
#endif
-static void sub_804B790(void)
// In-game trade init
+void sub_804B790(void)
{
u8 otName[11];
switch (gMain.state)
@@ -4531,11 +4514,11 @@ static void sub_804B790(void)
FreeAllSpritePalettes();
SetVBlankCallback(sub_804B210);
sub_804B228();
- SetUpWindowConfig(&gWindowConfig_81E717C);
- InitWindowFromConfig(&gUnknown_03004828->window, &gWindowConfig_81E717C);
- gUnknown_03004828->textWindowBaseTileNum = SetTextWindowBaseTileNum(2);
- LoadTextWindowGraphics(&gUnknown_03004828->window);
- MenuZeroFillScreen();
+ Text_LoadWindowTemplate(&gWindowTemplate_81E717C);
+ Text_InitWindowWithTemplate(&gUnknown_03004828->window, &gWindowTemplate_81E717C);
+ gUnknown_03004828->textWindowBaseTileNum = TextWindow_SetBaseTileNum(2);
+ TextWindow_LoadStdFrameGraphics(&gUnknown_03004828->window);
+ Menu_EraseScreen();
gLinkType = 0x1144;
gUnknown_03004828->isLinkTrade = FALSE;
gUnknown_03004828->unk_00b6 = 0;
@@ -4649,7 +4632,7 @@ static void sub_804BB78(void)
switch (gUnknown_03004828->unk_00bd)
{
case 1:
- if (sub_8007ECC())
+ if (IsLinkTaskFinished())
{
Trade_SendData(gUnknown_03004828);
gUnknown_03004828->unk_00bd ++;
@@ -4733,7 +4716,7 @@ static void sub_804BBE8(u8 a0)
for (i = 0; i < 0x280; i ++)
buffer[i] |= 0x7000;
DmaCopy16Defvars(3, gSharedMem, BG_SCREEN_ADDR(5), 0x500);
- MenuZeroFillWindowRect(2, 15, 27, 18);
+ Menu_EraseWindowRect(2, 15, 27, 18);
break;
case 6:
REG_DISPCNT = DISPCNT_MODE_1 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG2_ON | DISPCNT_OBJ_ON;
@@ -4843,7 +4826,7 @@ static bool8 sub_804C29C(void)
case 10:
StringExpandPlaceholders(gStringVar4, gTradeText_WillBeSent);
- sub_8003460(&gUnknown_03004828->window, gStringVar4, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
+ Text_InitWindowAndPrintText(&gUnknown_03004828->window, gStringVar4, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
gUnknown_03004828->unk_00c4 = 11;
gUnknown_03004828->unk_00c0 = 0;
break;
@@ -4852,13 +4835,13 @@ static bool8 sub_804C29C(void)
{
gUnknown_03004828->unk_0102 = sub_8047580(gUnknown_03004828->pokePicSpriteIdxs[0], gSprites[gUnknown_03004828->pokePicSpriteIdxs[0]].oam.paletteNum, 0x78, 0x20, 0x2, 0x1, 0x14, 0xfffff);
gUnknown_03004828->unk_00c4 ++;
- ZeroFillWindowRect(&gUnknown_03004828->window, 0, 0, 29, 19);
+ Text_EraseWindowRect(&gUnknown_03004828->window, 0, 0, 29, 19);
StringExpandPlaceholders(gStringVar4, gTradeText_ByeBye);
- sub_8003460(&gUnknown_03004828->window, gStringVar4, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
+ Text_InitWindowAndPrintText(&gUnknown_03004828->window, gStringVar4, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
}
break;
case 12:
- if (gSprites[gUnknown_03004828->unk_0102].callback == SpriteCallbackDummy && sub_80035AC(&gUnknown_03004828->window) == TRUE)
+ if (gSprites[gUnknown_03004828->unk_0102].callback == SpriteCallbackDummy && Text_UpdateWindow(&gUnknown_03004828->window) == TRUE)
{
gUnknown_03004828->unk_0103 = CreateSprite(&gSpriteTemplate_821595C, 0x78, 0x20, 0);
gSprites[gUnknown_03004828->unk_0103].callback = sub_804D738;
@@ -5199,9 +5182,9 @@ static bool8 sub_804C29C(void)
break;
case 67:
REG_DISPCNT = DISPCNT_MODE_0 | DISPCNT_OBJ_1D_MAP | DISPCNT_BG0_ON | DISPCNT_BG1_ON | DISPCNT_BG2_ON | DISPCNT_OBJ_ON;
- ZeroFillWindowRect(&gUnknown_03004828->window, 0, 0, 29, 19);
+ Text_EraseWindowRect(&gUnknown_03004828->window, 0, 0, 29, 19);
StringExpandPlaceholders(gStringVar4, gTradeText_SentOverPoke);
- sub_8003460(&gUnknown_03004828->window, gStringVar4, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
+ Text_InitWindowAndPrintText(&gUnknown_03004828->window, gStringVar4, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
gUnknown_03004828->unk_00c4 ++;
gUnknown_03004828->unk_00c0 = 0;
break;
@@ -5213,9 +5196,9 @@ static bool8 sub_804C29C(void)
if (gUnknown_03004828->unk_00c0 == 0xf0)
{
gUnknown_03004828->unk_00c4 ++;
- ZeroFillWindowRect(&gUnknown_03004828->window, 0, 0, 29, 19);
+ Text_EraseWindowRect(&gUnknown_03004828->window, 0, 0, 29, 19);
StringExpandPlaceholders(gStringVar4, gTradeText_TakeGoodCare);
- sub_8003460(&gUnknown_03004828->window, gStringVar4, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
+ Text_InitWindowAndPrintText(&gUnknown_03004828->window, gStringVar4, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
gUnknown_03004828->unk_00c0 = 0;
}
break;
@@ -5536,9 +5519,9 @@ static void sub_804DC88(void)
case 0:
gUnknown_03004828 = &ewram_2010000.unk_0f000;
gMain.state ++;
- ZeroFillWindowRect(&gUnknown_03004828->window, 0, 0, 29, 19);
+ Text_EraseWindowRect(&gUnknown_03004828->window, 0, 0, 29, 19);
StringExpandPlaceholders(gStringVar4, gOtherText_LinkStandby2);
- sub_8003460(&gUnknown_03004828->window, gStringVar4, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
+ Text_InitWindowAndPrintText(&gUnknown_03004828->window, gStringVar4, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
break;
case 1:
sub_80084A4();
@@ -5551,21 +5534,21 @@ static void sub_804DC88(void)
gMain.state = 101;
gUnknown_03004828->unk_00c0 = 0;
}
- if (sub_8007ECC())
+ if (IsLinkTaskFinished())
{
gMain.state = 2;
}
break;
case 101:
- if (sub_8007ECC())
+ if (IsLinkTaskFinished())
{
gMain.state = 2;
}
break;
case 2:
gMain.state = 50;
- ZeroFillWindowRect(&gUnknown_03004828->window, 0, 0, 29, 19);
- sub_8003460(&gUnknown_03004828->window, gSystemText_Saving, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
+ Text_EraseWindowRect(&gUnknown_03004828->window, 0, 0, 29, 19);
+ Text_InitWindowAndPrintText(&gUnknown_03004828->window, gSystemText_Saving, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
break;
case 50:
SetSecretBase2Field_9_AndHideBG();
@@ -5609,7 +5592,7 @@ static void sub_804DC88(void)
gMain.state = 42;
break;
case 42:
- if (sub_8007ECC())
+ if (IsLinkTaskFinished())
{
sub_8125E04();
gSoftResetDisabled = FALSE;
@@ -5624,7 +5607,7 @@ static void sub_804DC88(void)
}
break;
case 6:
- if (sub_8007ECC())
+ if (IsLinkTaskFinished())
{
BeginNormalPaletteFade(-1, 0, 0, 16, 0);
gMain.state ++;
@@ -5701,13 +5684,9 @@ static void sub_804E1DC(void)
void sub_804E22C(void)
{
- const u16 *src;
- u16 *dest;
LZDecompressVram(gUnknown_08D00000, (void *)VRAM);
CpuCopy16(gUnknown_08D00524, gSharedMem, 0x1000);
- src = (const u16 *)gSharedMem;
- dest = BG_SCREEN_ADDR(5);
- DmaCopy16(3, src, dest, 0x500)
+ DmaCopy16Defvars(3, gSharedMem, BG_SCREEN_ADDR(5), 0x500);
LoadCompressedPalette(gUnknown_08D004E0, 0, 32);
REG_BG1CNT = BGCNT_PRIORITY(2) | BGCNT_SCREENBASE(5);
}