bool32 sub_800F1E0(void)
{
u16 i;
u16 flags;
u8 r0;
u16 j;
u8 retval;
if (gUnknown_03005000.unk_04 >= 20 && gUnknown_03005000.unk_0e == 1)
{
rfu_waitREQComplete();
while (gUnknown_03005000.unk_cdb == 0)
{
if (gUnknown_03005000.unk_ee != 0)
{
return FALSE;
}
}
rfu_REQ_recvData();
rfu_waitREQComplete();
if ((gUnknown_03005000.unk_ce2 & gUnknown_03004140.unk_03) == gUnknown_03005000.unk_ce2)
{
gUnknown_03005000.unk_cdc = 0;
gUnknown_02022B44.unk_06++;
flags = gUnknown_03004140.unk_00;
for (i = 0; i < 4; i++)
{
if (flags & 1)
{
if (gUnknown_03005000.unk_14[i][1])
{
if (gUnknown_03005000.unk_cee[i] != 0xff && (gUnknown_03005000.unk_14[i][0] + 1) & 7)
{
if (++gUnknown_03005000.unk_cea[i] > 4)
sub_8011170(0x8100);
}
else
{
gUnknown_03005000.unk_cee[i] = gUnknown_03005000.unk_14[i][0] / 32;
gUnknown_03005000.unk_cea[i] = 0;
gUnknown_03005000.unk_14[i][0] %= 32;
r0 = gUnknown_03005000.unk_cde[i];
for (j = 0; j < 7; j++)
{
gRecvCmds[r0][j] = (gUnknown_03005000.unk_14[i][1] << 8) | gUnknown_03005000.unk_14[i][0];
gUnknown_03005000.unk_14[i][1] = 0;
gUnknown_03005000.unk_14[i][0] = 0;
}
}
rfu_UNI_clearRecvNewDataFlag(i);
}
}
flags >>= 1;
}
sub_800F014();
sub_800F86C(0);
sub_8010528();
if (gUnknown_03005000.unk_ce5 && !gUnknown_03005000.unk_cd9)
{
gUnknown_02022B44.unk_0e = 0;
rfu_clearSlot(gUnknown_03005000.unk_cda, 3);
for (i = 0; i < 4; i++)
{
if ((gUnknown_03005000.unk_ce5 >> i) & 1)
{
rfu_setRecvBuffer(0x10, i, gUnknown_03005000.unk_14[i], 14);
}
}
sub_800E88C(gUnknown_03005000.unk_ce2, gUnknown_03005000.unk_ce2 | gUnknown_03005000.unk_ce5);
gUnknown_03005000.unk_ce9 = gUnknown_03005000.unk_ce5;
gUnknown_03005000.unk_ce2 |= gUnknown_03005000.unk_ce5;
gUnknown_03005000.unk_ce5 = 0;
rfu_UNI_setSendData(gUnknown_03005000.unk_ce2, gUnknown_03005000.unk_c87, 70);
gUnknown_03005000.unk_cda = sub_800E87C(gUnknown_03005000.unk_ce2);
CreateTask(sub_8010AAC, 0);
}
}
else
{
gUnknown_03005000.unk_cdc = 1;
gUnknown_03005000.unk_0e = 0;
}
gUnknown_03005000.unk_0e = 0;
}
retval = gUnknown_03005000.unk_cdc;
return gUnknown_03007890->unk_06 ? retval & 1 : FALSE;
}
Comments