summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-11-22 00:16:00 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2017-11-22 00:16:00 -0500
commit73b0f9eb5358b839bfa5f3d1b4c4163fe893d428 (patch)
treed59956b32da1fd5d49bff20a016db28a848e27d2 /src
parent7a38a43f81e4aa5d6b9001d31b47e1a000786e3e (diff)
sub_800CEB0
Diffstat (limited to 'src')
-rw-r--r--src/link_rfu.c41
1 files changed, 40 insertions, 1 deletions
diff --git a/src/link_rfu.c b/src/link_rfu.c
index 12ec3e708..5beb7c88b 100644
--- a/src/link_rfu.c
+++ b/src/link_rfu.c
@@ -84,7 +84,7 @@ void rfu_REQ_sendData_wrapper(u8 r2)
rfu_REQ_sendData(r2);
}
-int sub_800BF4C(void (*func1)(u8), void (*func2)(void))
+int sub_800BF4C(void (*func1)(u8), void (*func2)(u16))
{
if (func1 == NULL)
{
@@ -976,3 +976,42 @@ void sub_800C7B4(u16 r8, u16 r6)
sub_800D610();
}
}
+
+void sub_800CEB0(u16 r6)
+{
+ u8 r7;
+ u8 sp0;
+
+ r7 = gUnknown_03004140.unk_0e;
+ gUnknown_03004140.unk_0e = 0;
+ gUnknown_03004140.unk_0f = 1;
+ if (gUnknown_03007890->unk_00 == 0)
+ {
+ sub_800C36C(r6);
+ if (gUnknown_03004140.unk_02 != 1)
+ {
+ sub_800D610();
+ gUnknown_03004140.unk_0f = 0;
+ gUnknown_03004140.unk_0e = r7;
+ return;
+ }
+ }
+ else
+ {
+ if (!rfu_UNI_PARENT_getDRAC_ACK(&sp0))
+ {
+ gUnknown_03004140.unk_03 |= sp0;
+ }
+ }
+ if (gUnknown_03004140.unk_44 != NULL)
+ {
+ gUnknown_03004140.unk_44(r6);
+ rfu_waitREQComplete();
+ if (gUnknown_03004140.unk_02 == 2)
+ {
+ sub_800D610();
+ }
+ }
+ gUnknown_03004140.unk_0f = 0;
+ gUnknown_03004140.unk_0e = r7;
+}