summaryrefslogtreecommitdiff
path: root/src/link_rfu.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/link_rfu.c')
-rw-r--r--src/link_rfu.c74
1 files changed, 13 insertions, 61 deletions
diff --git a/src/link_rfu.c b/src/link_rfu.c
index 9732e9889..1f3ae4f3c 100644
--- a/src/link_rfu.c
+++ b/src/link_rfu.c
@@ -24,10 +24,10 @@ extern u16 gHeldKeyCodeToSend;
struct UnkRfuStruct_1 gUnknown_03004140;
struct UnkRfuStruct_2 gUnknown_03005000;
-IWRAM_DATA u8 gUnknown_03000D74;
-ALIGNED(4) IWRAM_DATA u8 gUnknown_03000D78[8];
-IWRAM_DATA u8 gUnknown_03000D80[16];
-IWRAM_DATA u16 gUnknown_03000D90[8];
+BSS_DATA u8 gUnknown_03000D74;
+ALIGNED(4) BSS_DATA u8 gUnknown_03000D78[8];
+BSS_DATA u8 gUnknown_03000D80[16];
+BSS_DATA u16 gUnknown_03000D90[8];
EWRAM_DATA u8 gWirelessStatusIndicatorSpriteId = 0;
EWRAM_DATA ALIGNED(4) struct UnkLinkRfuStruct_02022B14 gUnknown_02022B14 = {};
@@ -2021,6 +2021,8 @@ void sub_800DBF8(u8 *q1, u8 mode)
}
}
+// File boundary here maybe?
+
void PkmnStrToASCII(u8 *q1, const u8 *q2)
{
s32 i;
@@ -2413,7 +2415,7 @@ void RecordMixTrainerNames(void)
}
}
}
-
+
// Save the connected trainers first, at the top of the list.
nextSpace = 0;
for (i = 0; i < GetLinkPlayerCount(); i++)
@@ -2444,7 +2446,7 @@ void RecordMixTrainerNames(void)
}
}
}
-
+
// Finalize the new list, and clean up.
memcpy(gSaveBlock1Ptr->trainerNameRecords, newRecords, 20 * sizeof(struct TrainerNameRecord));
free(newRecords);
@@ -2914,70 +2916,21 @@ void sub_800EF88(u8 a0)
}
}
-#ifdef NONMATCHING
-// FIXME: gUnknown_03005000.unk_c87 should be in r5
-// FIXME: gRecvCmds should be in r6 and r7
void sub_800EFB0(void)
{
s32 i, j;
+
for (i = 0; i < 5; i++)
{
+ struct UnkRfuStruct_2 *ptr = &gUnknown_03005000;
for (j = 0; j < 7; j++)
{
- gUnknown_03005000.unk_c87[i][j][1] = gRecvCmds[i][j] >> 8;
- gUnknown_03005000.unk_c87[i][j][0] = gRecvCmds[i][j];
+ ptr->unk_c87[i][j][1] = gRecvCmds[i][j] >> 8;
+ ptr->unk_c87[i][j][0] = gRecvCmds[i][j];
}
}
CpuFill16(0, gRecvCmds, sizeof gRecvCmds);
}
-#else
-NAKED void sub_800EFB0(void)
-{
- asm_unified("\tpush {r4-r7,lr}\n"
- "\tsub sp, 0x4\n"
- "\tmovs r2, 0\n"
- "\tldr r7, =gRecvCmds\n"
- "\tldr r0, =gUnknown_03005000\n"
- "\tadds r6, r7, 0\n"
- "\tldr r1, =0x00000c87\n"
- "\tadds r5, r0, r1\n"
- "_0800EFC0:\n"
- "\tmovs r3, 0\n"
- "\tlsls r0, r2, 3\n"
- "\tlsls r1, r2, 4\n"
- "\tadds r4, r2, 0x1\n"
- "\tsubs r0, r2\n"
- "\tlsls r0, 1\n"
- "\tadds r2, r0, r5\n"
- "\tadds r1, r6\n"
- "_0800EFD0:\n"
- "\tldrh r0, [r1]\n"
- "\tlsrs r0, 8\n"
- "\tstrb r0, [r2, 0x1]\n"
- "\tldrh r0, [r1]\n"
- "\tstrb r0, [r2]\n"
- "\tadds r2, 0x2\n"
- "\tadds r1, 0x2\n"
- "\tadds r3, 0x1\n"
- "\tcmp r3, 0x6\n"
- "\tble _0800EFD0\n"
- "\tadds r2, r4, 0\n"
- "\tcmp r2, 0x4\n"
- "\tble _0800EFC0\n"
- "\tmovs r0, 0\n"
- "\tmov r1, sp\n"
- "\tstrh r0, [r1]\n"
- "\tldr r2, =0x01000028\n"
- "\tmov r0, sp\n"
- "\tadds r1, r7, 0\n"
- "\tbl CpuSet\n"
- "\tadd sp, 0x4\n"
- "\tpop {r4-r7}\n"
- "\tpop {r0}\n"
- "\tbx r0\n"
- "\t.pool");
-}
-#endif
void sub_800F014(void)
{
@@ -3542,7 +3495,7 @@ void sub_800FD14(u16 command)
}
}
-void sub_800FE50(u16 *a0)
+void sub_800FE50(void *a0)
{
if (gSendCmd[0] == 0 && !sub_8011A80())
{
@@ -5191,4 +5144,3 @@ u32 GetRfuRecvQueueLength(void)
{
return gUnknown_03005000.unk_124.unk_8c2;
}
-