summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2018-01-23 12:25:04 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2018-01-23 12:25:04 -0500
commit49ff4ad4e8f5cf8cea984e255ba3bb5051ff91e6 (patch)
tree8fbdd739bdb2586c62c8a057135ebe165e00cdba
parent0ec2cb85de36a636a96f24101cd5a20ffb53f5ea (diff)
through sub_80C2340
-rw-r--r--asm/contest_link_80C2020.s114
-rw-r--r--asm/contest_link_80C857C.s4
-rw-r--r--data/contest_link_80C2020.s3
-rw-r--r--include/battle.h2
-rw-r--r--include/contest.h12
-rw-r--r--src/battle/contest_link_80C2020.c37
-rw-r--r--src/contest.c6
-rw-r--r--src/contest_ai.c5
-rw-r--r--src/debug/matsuda_debug_menu.c19
-rw-r--r--src/pokemon/pokemon_size_record.c2
-rw-r--r--src/script_pokemon_util_80C4BF0.c16
-rw-r--r--sym_common.txt2
12 files changed, 64 insertions, 158 deletions
diff --git a/asm/contest_link_80C2020.s b/asm/contest_link_80C2020.s
index 4d0f6281e..9fe07f3c0 100644
--- a/asm/contest_link_80C2020.s
+++ b/asm/contest_link_80C2020.s
@@ -5,120 +5,6 @@
.text
- thumb_func_start sub_80C226C
-sub_80C226C: @ 80C226C
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _080C2288 @ =gContestPlayerMonIndex
- ldrb r0, [r0]
- cmp r5, r0
- bne _080C2294
- ldr r0, _080C228C @ =gDisplayedStringBattle
- ldr r1, _080C2290 @ =gUnknown_083D17DC
- bl StringCopy
- adds r2, r0, 0
- b _080C2296
- .align 2, 0
-_080C2288: .4byte gContestPlayerMonIndex
-_080C228C: .4byte gDisplayedStringBattle
-_080C2290: .4byte gUnknown_083D17DC
-_080C2294:
- ldr r2, _080C22E8 @ =gDisplayedStringBattle
-_080C2296:
- movs r4, 0xFC
- strb r4, [r2]
- movs r0, 0x6
- strb r0, [r2, 0x1]
- movs r0, 0x4
- strb r0, [r2, 0x2]
- adds r2, 0x3
- lsls r6, r5, 6
- ldr r7, _080C22EC @ =gContestMons + 0x2
- adds r1, r6, r7
- adds r0, r2, 0
- bl StringCopy
- adds r2, r0, 0
- strb r4, [r2]
- movs r0, 0x13
- strb r0, [r2, 0x1]
- movs r0, 0x32
- strb r0, [r2, 0x2]
- adds r2, 0x3
- ldr r1, _080C22F0 @ =gUnknown_083D17E0
- adds r0, r2, 0
- bl StringCopy
- adds r2, r0, 0
- ldr r0, _080C22F4 @ =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080C22FC
- lsls r4, r5, 3
- subs r1, r4, r5
- lsls r1, 2
- ldr r0, _080C22F8 @ =gLinkPlayers + 0x8
- adds r1, r0
- adds r0, r2, 0
- bl StringCopy
- b _080C230A
- .align 2, 0
-_080C22E8: .4byte gDisplayedStringBattle
-_080C22EC: .4byte gContestMons + 0x2
-_080C22F0: .4byte gUnknown_083D17E0
-_080C22F4: .4byte gIsLinkContest
-_080C22F8: .4byte gLinkPlayers + 0x8
-_080C22FC:
- adds r1, r7, 0
- adds r1, 0xB
- adds r1, r6, r1
- adds r0, r2, 0
- bl StringCopy
- lsls r4, r5, 3
-_080C230A:
- ldr r0, _080C2334 @ =gMenuWindow
- ldr r1, _080C2338 @ =gDisplayedStringBattle
- adds r2, r4, r5
- lsls r2, 18
- ldr r3, _080C233C @ =0x03020000
- adds r2, r3
- lsrs r2, 16
- lsls r3, r5, 1
- adds r3, r5
- adds r3, 0x4
- lsls r3, 24
- lsrs r3, 24
- str r3, [sp]
- movs r3, 0x7
- bl Text_InitWindowAndPrintText
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080C2334: .4byte gMenuWindow
-_080C2338: .4byte gDisplayedStringBattle
-_080C233C: .4byte 0x03020000
- thumb_func_end sub_80C226C
-
- thumb_func_start sub_80C2340
-sub_80C2340: @ 80C2340
- push {r4,lr}
- movs r4, 0
-_080C2344:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80C226C
- adds r4, 0x1
- cmp r4, 0x3
- ble _080C2344
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80C2340
-
thumb_func_start sub_80C2358
sub_80C2358: @ 80C2358
push {r4,r5,lr}
diff --git a/asm/contest_link_80C857C.s b/asm/contest_link_80C857C.s
index 6afcaec6d..a77721677 100644
--- a/asm/contest_link_80C857C.s
+++ b/asm/contest_link_80C857C.s
@@ -735,7 +735,7 @@ _080C88FC:
adds r1, r4, 0
movs r2, 0x4
bl memcpy
- ldr r0, _080C8934 @ =gUnknown_03005D28
+ ldr r0, _080C8934 @ =gContestRngValue
adds r1, r4, 0
movs r2, 0x4
bl memcpy
@@ -750,7 +750,7 @@ _080C8924:
.align 2, 0
_080C892C: .4byte gRngValue
_080C8930: .4byte gBlockRecvBuffer
-_080C8934: .4byte gUnknown_03005D28
+_080C8934: .4byte gContestRngValue
thumb_func_end sub_80C88AC
.ifdef ENGLISH
diff --git a/data/contest_link_80C2020.s b/data/contest_link_80C2020.s
index f0ad06a32..fe5398935 100644
--- a/data/contest_link_80C2020.s
+++ b/data/contest_link_80C2020.s
@@ -73,6 +73,3 @@ gUnknown_083D17E0:: @ 83D17E0
gUnknown_083D17E2:: @ 83D17E2
.string "{SIZE 3}{COLOR_HIGHLIGHT_SHADOW WHITE2 DARK_GREY LIGHT_BLUE}$"
-
- .align 2
- .incbin "graphics/unknown/unknown_3D17EC.gbapal"
diff --git a/include/battle.h b/include/battle.h
index fd60ced79..7d8878018 100644
--- a/include/battle.h
+++ b/include/battle.h
@@ -721,6 +721,8 @@ extern u16 gBattle_WIN0V;
extern u16 gBattle_WIN1H;
extern u16 gBattle_WIN1V;
+extern u8 gDisplayedStringBattle[];
+
// asm/battle_1.o
void sub_800D6D4();
void sub_800D74C();
diff --git a/include/contest.h b/include/contest.h
index 6b1f1f520..b0bdd7f61 100644
--- a/include/contest.h
+++ b/include/contest.h
@@ -271,4 +271,16 @@ struct UnknownContestStruct6
#define shared19338 ((struct UnknownContestStruct4 *)(gSharedMem + 0x19338))
#define shared19348 (*(struct UnknownContestStruct8 *)(gSharedMem + 0x19348))
+extern u8 gContestPlayerMonIndex;
+extern u8 gIsLinkContest;
+extern u32 gContestRngValue;
+extern u8 gUnknown_02038696[4];
+extern s16 gUnknown_02038670[4];
+extern s16 gUnknown_02038678[4];
+extern s16 gUnknown_02038680[4];
+extern u16 gUnknown_02038688[4];
+extern u8 gContestFinalStandings[4];
+extern u8 gUnknown_02038696[4];
+extern u8 gUnknown_0203869B;
+
#endif // GUARD_CONTEST_H
diff --git a/src/battle/contest_link_80C2020.c b/src/battle/contest_link_80C2020.c
index 5e3cc3cce..27f3f8ea3 100644
--- a/src/battle/contest_link_80C2020.c
+++ b/src/battle/contest_link_80C2020.c
@@ -3,6 +3,7 @@
#include "palette.h"
#include "graphics.h"
#include "text.h"
+#include "string_util.h"
#include "menu.h"
#include "battle.h"
#include "contest.h"
@@ -14,6 +15,9 @@ void sub_80C37E4(void);
u8 sub_80C3990(u8 a0, u8 a5);
s8 sub_80C39E4(u8 a0, u8 a5);
+extern const u8 gUnknown_083D17DC[];
+extern const u8 gUnknown_083D17E0[];
+
void sub_80C2020(void)
{
REG_DISPCNT = DISPCNT_OBJ_1D_MAP;
@@ -95,3 +99,36 @@ void sub_80C2144(void)
}
}
}
+
+void sub_80C226C(u8 a0)
+{
+ u8 *strbuf;
+
+ if (a0 == gContestPlayerMonIndex)
+ strbuf = StringCopy(gDisplayedStringBattle, gUnknown_083D17DC);
+ else
+ strbuf = gDisplayedStringBattle;
+ strbuf[0] = EXT_CTRL_CODE_BEGIN;
+ strbuf[1] = 0x06;
+ strbuf[2] = 0x04;
+ strbuf += 3;
+ strbuf = StringCopy(strbuf, gContestMons[a0].nickname);
+ strbuf[0] = EXT_CTRL_CODE_BEGIN;
+ strbuf[1] = 0x13;
+ strbuf[2] = 0x32;
+ strbuf += 3;
+ strbuf = StringCopy(strbuf, gUnknown_083D17E0);
+ if (gIsLinkContest & 1)
+ StringCopy(strbuf, gLinkPlayers[a0].name);
+ else
+ StringCopy(strbuf, gContestMons[a0].trainerName);
+ Text_InitWindowAndPrintText(&gMenuWindow, gDisplayedStringBattle, a0 * 36 + 770, 7, a0 * 3 + 4);
+}
+
+void sub_80C2340(void)
+{
+ int i;
+
+ for (i = 0; i < 4; i++)
+ sub_80C226C(i);
+}
diff --git a/src/contest.c b/src/contest.c
index e690488fb..9c115840e 100644
--- a/src/contest.c
+++ b/src/contest.c
@@ -47,7 +47,7 @@ extern u8 gBankTarget;
extern u8 gBanksBySide[];
extern u8 gObjectBankIDs[];
extern struct Window gUnknown_03004210;
-extern u32 gUnknown_03005D28; // saved RNG value
+extern u32 gContestRngValue; // saved RNG value
extern struct SpriteTemplate gUnknown_02024E8C;
@@ -483,7 +483,7 @@ void sub_80AB6B4(u8 taskId)
GetMultiplayerId(); // unused return value
DestroyTask(taskId);
gTasks[sContest.mainTaskId].func = sub_80AB960;
- gRngValue = gUnknown_03005D28;
+ gRngValue = gContestRngValue;
}
}
@@ -1799,7 +1799,7 @@ void sub_80ADDA4(u8 taskId)
sub_80AF668();
sub_80AF138();
sub_80BE23C(sContestantStatus[gContestPlayerMonIndex].prevMove);
- gUnknown_03005D28 = gRngValue;
+ gContestRngValue = gRngValue;
StringExpandPlaceholders(gStringVar4, gUnknown_083CB02C);
Text_InitWindow8002EB0(&gMenuWindow, gStringVar4, 776, 1, 15);
gTasks[taskId].data[2] = 0;
diff --git a/src/contest_ai.c b/src/contest_ai.c
index 66b387270..932f9fb8a 100644
--- a/src/contest_ai.c
+++ b/src/contest_ai.c
@@ -8,7 +8,6 @@ extern u8 AreMovesContestCombo(u16, u16);
extern bool8 sub_80B214C(u8);
extern bool8 Contest_IsMonsTurnDisabled(u8);
-extern s16 gUnknown_02038670[];
extern u16 gSpecialVar_ContestCategory;
extern u8 *gAIScriptPtr;
@@ -1119,7 +1118,7 @@ static void ContestAICmd_check_would_finish_combo(void)
if(sContestantStatus[eContestAI->unk41].prevMove)
result = AreMovesContestCombo(sContestantStatus[eContestAI->unk41].prevMove, move);
-
+
if(result)
result = 1;
@@ -1727,7 +1726,7 @@ static void ContestAICmd_unk_85(void)
int result = 0;
int i;
u16 arg = T1_READ_16(gAIScriptPtr + 1);
-
+
for(i = 0; i < 4; i++)
{
u16 move = gContestMons[eContestAI->unk41].moves[i];
diff --git a/src/debug/matsuda_debug_menu.c b/src/debug/matsuda_debug_menu.c
index da1937adb..62d49fc62 100644
--- a/src/debug/matsuda_debug_menu.c
+++ b/src/debug/matsuda_debug_menu.c
@@ -1,5 +1,6 @@
#include "global.h"
#include "matsuda_debug_menu.h"
+#include "battle.h"
#include "contest.h"
#include "contest_link_80C2020.h"
#include "contest_link_80C857C.h"
@@ -18,30 +19,12 @@
#include "ewram.h"
extern u8 gUnknown_0203856C;
-extern s16 gUnknown_02038670[];
-extern s16 gUnknown_02038678[];
-extern s16 gUnknown_02038680[];
-extern u8 gContestFinalStandings[];
extern u8 gUnknown_02038694;
-extern u8 gIsLinkContest;
-extern u8 gUnknown_0203869B;
-extern u8 gContestPlayerMonIndex;
extern u16 gSpecialVar_ContestCategory;
extern u16 gSpecialVar_ContestRank;
-extern u16 gBattle_BG0_X;
-extern u16 gBattle_BG0_Y;
-extern u16 gBattle_BG1_X;
-extern u16 gBattle_BG1_Y;
-extern u16 gBattle_BG2_X;
-extern u16 gBattle_BG2_Y;
-extern u16 gBattle_BG3_X;
-extern u16 gBattle_BG3_Y;
-
extern u8 (*gMenuCallback)(void);
-extern bool8 gReceivedRemoteLinkPlayers;
-
static bool8 sub_80A9B78(void);
static void sub_80A9BE4(u8 taskId);
static void sub_80A9C98(u8);
diff --git a/src/pokemon/pokemon_size_record.c b/src/pokemon/pokemon_size_record.c
index f92a95bfb..2ba4e57cc 100644
--- a/src/pokemon/pokemon_size_record.c
+++ b/src/pokemon/pokemon_size_record.c
@@ -8,6 +8,8 @@
#include "strings2.h"
#include "text.h"
+const u16 Unknown_083D17EC[] = INCBIN_U16("graphics/unknown/unknown_3D17EC.gbapal");
+
struct UnknownStruct
{
u16 unk0;
diff --git a/src/script_pokemon_util_80C4BF0.c b/src/script_pokemon_util_80C4BF0.c
index f991297ab..22fce174a 100644
--- a/src/script_pokemon_util_80C4BF0.c
+++ b/src/script_pokemon_util_80C4BF0.c
@@ -32,26 +32,14 @@ extern void sub_80C4698(u8 *, u8);
extern struct SpriteTemplate gUnknown_02024E8C;
-extern u8 gContestPlayerMonIndex;
-extern u8 gIsLinkContest;
-extern u8 gPlayerPartyCount;
extern u8 gSelectedOrderFromParty[];
-extern u16 gSpecialVar_0x8004;
-extern u16 gSpecialVar_0x8005;
-extern u16 gSpecialVar_0x8006;
extern u16 gSpecialVar_ContestCategory;
extern u16 gSpecialVar_ContestRank;
-extern u16 gSpecialVar_Result;
-
-extern u32 gUnknown_03005D28;
extern u8 gUnknown_02038694;
extern u8 gUnknown_0203856C;
-extern u8 gContestFinalStandings[];
-extern s16 gUnknown_02038670[];
-extern s16 gUnknown_02038678[];
void SetContestTrainerGfxIds(void)
{
@@ -373,8 +361,8 @@ void ScriptRandom(void)
if(gIsLinkContest & 1)
{
- gUnknown_03005D28 = 1103515245 * gUnknown_03005D28 + 24691;
- random = gUnknown_03005D28 >> 16;
+ gContestRngValue = 1103515245 * gContestRngValue + 24691;
+ random = gContestRngValue >> 16;
scriptPtr = &gSpecialVar_Result;
}
else
diff --git a/sym_common.txt b/sym_common.txt
index 64e87c046..0bc9fd80c 100644
--- a/sym_common.txt
+++ b/sym_common.txt
@@ -213,7 +213,7 @@ gFieldItemUseCallback = .;
gBagPocketScrollStates = .;
. += 0x14;
SYMBOL(gCurrentBagPocketItemSlots, 4)
-SYMBOL(gUnknown_03005D28, 4)
+SYMBOL(gContestRngValue, 4)
// record_mixing.c
SYMBOL(gUnknown_03005D2C, 4)