summaryrefslogtreecommitdiff
path: root/src/record_mixing.c
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-11-04 12:03:50 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2017-11-04 12:03:50 -0400
commitfb9e5cb3a411a1186a029e089ee63a3f9928457b (patch)
tree0e83624fa044e5117f38b07faa2cc9028544e871 /src/record_mixing.c
parentcd4aa5efe5e3ca9ad96ceee0462ff69c99d3fc92 (diff)
sub_80E7830
Diffstat (limited to 'src/record_mixing.c')
-rw-r--r--src/record_mixing.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/record_mixing.c b/src/record_mixing.c
index 01b19cbb3..14afd57ce 100644
--- a/src/record_mixing.c
+++ b/src/record_mixing.c
@@ -94,6 +94,10 @@ void TaskDummy4(void *src);
// .rodata
+extern const u8 gUnknown_0858CF8C[];
+extern const u8 gUnknown_0858CF8E[][3];
+extern const u8 gUnknown_0858CF94[][4];
+
// .text
void sub_80E6BE8(void)
@@ -541,3 +545,33 @@ static void *sub_80E7820(u8 id)
{
return gBlockRecvBuffer[id];
}
+
+void sub_80E7830(u32 *data)
+{
+ u32 i;
+ u32 linkTrainerId;
+
+ switch ((u32)GetLinkPlayerCount())
+ {
+ case 2:
+ for (i = 0; i < 2; i ++)
+ {
+ data[i] = gUnknown_0858CF8C[i];
+ }
+ break;
+ case 3:
+ linkTrainerId = GetLinkPlayerTrainerId(0) % 2;
+ for (i = 0; i < 3; i ++)
+ {
+ data[i] = gUnknown_0858CF8E[linkTrainerId][i];
+ }
+ break;
+ case 4:
+ linkTrainerId = GetLinkPlayerTrainerId(0) % 9;
+ for (i = 0; i < 4; i ++)
+ {
+ data[i] = gUnknown_0858CF94[linkTrainerId][i];
+ }
+ break;
+ }
+}