summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-11-16 23:37:09 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2017-11-16 23:37:09 -0500
commit3c20c54b83d00724b5b724f25eaa294e6afb8f3e (patch)
tree471ac4c219160bd35936f6c05687ce56b9efddd1 /src
parentcc37d7e15b5d5b23bc56bb8fc3787198db934757 (diff)
sub_800BEC0
Diffstat (limited to 'src')
-rw-r--r--src/link.c31
-rw-r--r--src/link_rfu.c4
2 files changed, 35 insertions, 0 deletions
diff --git a/src/link.c b/src/link.c
index aa9e0a65d..645fcc182 100644
--- a/src/link.c
+++ b/src/link.c
@@ -143,12 +143,14 @@ static u16 LinkTestCalcBlockChecksum(const u16 *src, u16 size);
static void LinkTest_prnthex(u32 pos, u8 a0, u8 a1, u8 a2);
static void LinkCB_RequestPlayerDataExchange(void);
static void Task_PrintTestData(u8 taskId);
+
static void sub_800AC80(void);
static void sub_800ACAC(void);
static void sub_800AD5C(void);
static void sub_800AD88(void);
static void sub_800AE30(void);
static void sub_800AE5C(void);
+
static void CheckErrorStatus(void);
static void CB2_PrintErrorMessage(void);
static bool8 IsSioMultiMaster(void);
@@ -159,6 +161,7 @@ static void CheckMasterOrSlave(void);
static void InitTimer(void);
static void EnqueueSendCmd(u16 *sendCmd);
static void DequeueRecvCmds(u16 (*recvCmds)[CMD_LENGTH]);
+
static void StartTransfer(void);
static bool8 DoHandshake(void);
static void DoRecv(void);
@@ -166,6 +169,8 @@ static void DoSend(void);
static void StopTimer(void);
static void SendRecvDone(void);
+void sub_800D610(void);
+
// .rodata
ALIGNED(4) const u16 gWirelessLinkDisplayPal[] = INCBIN_U16("graphics/interface/wireless_link_display.gbapal");
@@ -2436,3 +2441,29 @@ void ResetRecvBuffer(void)
}
}
}
+
+// rfu
+
+u32 sub_800BEC0(void)
+{
+ u32 r4;
+ u8 r2;
+
+ r4 = rfu_REQBN_softReset_and_checkID();
+ if (r4 == 0x8001)
+ {
+ gUnknown_03004140.unk_08 = 1;
+ }
+ if (gUnknown_03004140.unk_04 != 0x17 && gUnknown_03004140.unk_04 != 0x01)
+ {
+ gUnknown_03004140.unk_05 = 0;
+ gUnknown_03004140.unk_04 = 0;
+ }
+ gUnknown_03004140.unk_07 = 0;
+ gUnknown_03004140.unk_0d = 0;
+ gUnknown_03004140.unk_01 = 0;
+ gUnknown_03004140.unk_00 = 0;
+ gUnknown_03004140.unk_06 = -1;
+ sub_800D610();
+ return r4;
+}
diff --git a/src/link_rfu.c b/src/link_rfu.c
index 43169a275..f654b9430 100644
--- a/src/link_rfu.c
+++ b/src/link_rfu.c
@@ -1,9 +1,13 @@
// Includes
#include "global.h"
+#include "link.h"
+#include "link_rfu.h"
// Static type declarations
+struct UnkRfuStruct_1 gUnknown_03004140;
+
// Static RAM declarations
IWRAM_DATA u8 gUnknown_03000D78[8];
IWRAM_DATA u8 gUnknown_03000D80[16];