summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2020-02-10 12:20:55 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2020-02-10 12:20:55 -0500
commit371f9fda6e16291eb2f7b99ab078b6a0efd60bd8 (patch)
treebda63fc77add0f17fff73292f177e20de568b74f /src
parentb9f1132aa65c8f79d6c2c93ad372146b0bbda094 (diff)
Annotate AgbRfu_LinkManager.c with local defines
Diffstat (limited to 'src')
-rw-r--r--src/AgbRfu_LinkManager.c107
1 files changed, 64 insertions, 43 deletions
diff --git a/src/AgbRfu_LinkManager.c b/src/AgbRfu_LinkManager.c
index 2a65978e7..16f006136 100644
--- a/src/AgbRfu_LinkManager.c
+++ b/src/AgbRfu_LinkManager.c
@@ -2,6 +2,21 @@
#include "librfu.h"
#include "link_rfu.h"
+// Constant used by rfu_LMAN_checkRecvChildName
+#define RN_ACCEPT 0x01 // Child device acceptance OK flag
+#define RN_NAME_TIMER_CLEAR 0x02 // Name receive timer clear flag
+#define RN_DISCONNECT 0x04 // Child device disconnect flag
+
+// Constant used by lman.linkRecovery_start_flag in rfu_LMAN_linkWatcher
+#define LINK_RECOVERY_OFF 0x00 // Link recovery OFF
+#define LINK_RECOVERY_START 0x01 // Link recovery start
+#define LINK_RECOVERY_EXE 0x02 // Link recovery running
+#define LINK_RECOVERY_IMPOSSIBLE 0x04 // Link recovery not possible
+
+// value of lman.fastSearchParent_flag
+#define FSP_ON 0x01
+#define FSP_START 0x02
+
LINK_MANAGER lman;
static void rfu_LMAN_clearVariables(void);
@@ -83,7 +98,7 @@ void rfu_LMAN_initializeRFU(INIT_PARAM *init_parameters)
lman.NI_failCounter_limit = init_parameters->NI_failCounter_limit;
if (init_parameters->fastSearchParent_flag)
{
- lman.fastSearchParent_flag = 1;
+ lman.fastSearchParent_flag = FSP_ON;
}
}
@@ -142,7 +157,7 @@ u8 rfu_LMAN_establishConnection(u8 parent_child, u16 connect_period, u16 name_ac
}
if (parent_child > 1)
{
- lman.pcswitch_flag = 1;
+ lman.pcswitch_flag = PCSWITCH_1ST_SC_START;
parent_child = MODE_PARENT;
connect_period = 0;
}
@@ -159,7 +174,7 @@ u8 rfu_LMAN_establishConnection(u8 parent_child, u16 connect_period, u16 name_ac
lman.state = LMAN_STATE_START_SEARCH_PARENT;
if (lman.fastSearchParent_flag)
{
- lman.fastSearchParent_flag = 2;
+ lman.fastSearchParent_flag = FSP_START;
}
}
lman.parent_child = parent_child;
@@ -212,7 +227,7 @@ u8 rfu_LMAN_CHILD_connectParent(u16 parentId, u16 connect_period)
lman.connect_period = connect_period;
if (lman.pcswitch_flag != 0)
{
- lman.pcswitch_flag = 7;
+ lman.pcswitch_flag = PCSWITCH_CP;
}
return 0;
}
@@ -543,21 +558,21 @@ void rfu_LMAN_manager_entity(u32 rand)
static void rfu_LMAN_settingPCSWITCH(u32 rand)
{
- if (lman.pcswitch_flag == 5)
+ if (lman.pcswitch_flag == PCSWITCH_3RD_SC_START)
{
lman.parent_child = MODE_PARENT;
lman.state = LMAN_STATE_START_SEARCH_CHILD;
lman.connect_period = lman.pcswitch_period_bak;
if (lman.connect_period)
{
- lman.pcswitch_flag = 6;
+ lman.pcswitch_flag = PCSWITCH_3RD_SC;
}
else
{
- lman.pcswitch_flag = 1;
+ lman.pcswitch_flag = PCSWITCH_1ST_SC_START;
}
}
- if (lman.pcswitch_flag == 1)
+ if (lman.pcswitch_flag == PCSWITCH_1ST_SC_START)
{
lman.parent_child = MODE_PARENT;
lman.state = LMAN_STATE_START_SEARCH_CHILD;
@@ -565,18 +580,18 @@ static void rfu_LMAN_settingPCSWITCH(u32 rand)
lman.pcswitch_period_bak = 140 - lman.connect_period;
if (lman.connect_period)
{
- lman.pcswitch_flag = 2;
+ lman.pcswitch_flag = PCSWITCH_1ST_SC;
}
else
{
- lman.pcswitch_flag = 3;
+ lman.pcswitch_flag = PCSWITCH_2ND_SP_START;
}
}
- if (lman.pcswitch_flag == 3)
+ if (lman.pcswitch_flag == PCSWITCH_2ND_SP_START)
{
lman.parent_child = MODE_CHILD;
- lman.connect_period = 40;
- lman.pcswitch_flag = 4;
+ lman.connect_period = PCSWITCH_SP_PERIOD;
+ lman.pcswitch_flag = PCSWITCH_2ND_SP;
lman.state = LMAN_STATE_START_SEARCH_PARENT;
}
}
@@ -640,9 +655,12 @@ static void rfu_LMAN_REQ_callback(u16 reqCommandId, u16 reqResult)
case ID_SP_START_REQ:
if (reqResult == 0)
{
- if (lman.fastSearchParent_flag == 1 && lman.connect_period > 1)
+ if (lman.fastSearchParent_flag == FSP_ON)
{
- lman.connect_period--;
+ if (lman.connect_period > 1)
+ {
+ lman.connect_period--;
+ }
}
lman.state = lman.next_state = LMAN_STATE_POLL_SEARCH_PARENT;
}
@@ -661,7 +679,7 @@ static void rfu_LMAN_REQ_callback(u16 reqCommandId, u16 reqResult)
rfu_REQ_endSearchParent();
rfu_waitREQComplete();
lman.state = LMAN_STATE_START_SEARCH_PARENT;
- lman.fastSearchParent_flag = 1;
+ lman.fastSearchParent_flag = FSP_ON;
}
}
if (lman.connect_period && --lman.connect_period == 0)
@@ -681,10 +699,10 @@ static void rfu_LMAN_REQ_callback(u16 reqCommandId, u16 reqResult)
rfu_LMAN_occureCallback(LMAN_MSG_SEARCH_PARENT_PERIOD_EXPIRED, 0);
}
}
- else if (lman.pcswitch_flag != 7)
+ else if (lman.pcswitch_flag != PCSWITCH_CP)
{
lman.state = LMAN_STATE_START_SEARCH_CHILD;
- lman.pcswitch_flag = 5;
+ lman.pcswitch_flag = PCSWITCH_3RD_SC_START;
}
}
break;
@@ -721,7 +739,7 @@ static void rfu_LMAN_REQ_callback(u16 reqCommandId, u16 reqResult)
lman.param[0] = status;
if (lman.pcswitch_flag)
{
- lman.pcswitch_flag = 3;
+ lman.pcswitch_flag = PCSWITCH_2ND_SP_START;
lman.state = LMAN_STATE_START_SEARCH_PARENT;
}
}
@@ -864,15 +882,15 @@ static void rfu_LMAN_REQ_callback(u16 reqCommandId, u16 reqResult)
{
if (gRfuLinkStatus->parentChild == MODE_NEUTRAL)
{
- if (lman.pcswitch_flag == 8)
+ if (lman.pcswitch_flag == PCSWITCH_SC_LOCK)
{
lman.connect_period = lman.pcswitch_period_bak;
- lman.pcswitch_flag = 6;
+ lman.pcswitch_flag = PCSWITCH_3RD_SC;
lman.state = LMAN_STATE_POLL_SEARCH_CHILD;
}
else if (lman.state != LMAN_STATE_POLL_SEARCH_CHILD && lman.state != LMAN_STATE_END_SEARCH_CHILD)
{
- lman.pcswitch_flag = 1;
+ lman.pcswitch_flag = PCSWITCH_1ST_SC_START;
lman.state = LMAN_STATE_START_SEARCH_CHILD;
}
}
@@ -915,7 +933,7 @@ static void rfu_LMAN_REQ_callback(u16 reqCommandId, u16 reqResult)
}
if (reqResult != 0)
{
- if (reqCommandId == ID_SP_START_REQ && reqResult != 0 && lman.pcswitch_flag == 4)
+ if (reqCommandId == ID_SP_START_REQ && reqResult != 0 && lman.pcswitch_flag == PCSWITCH_2ND_SP)
{
gRfuLinkStatus->parentChild = MODE_PARENT;
gRfuLinkStatus->connSlotFlag = 0xF;
@@ -1015,7 +1033,7 @@ static void rfu_LMAN_PARENT_checkRecvChildName(void)
{
if (gRfuSlotStatusNI[i]->recv.dataType == 1) // Game identification information
{
- flags = 0x02;
+ flags = RN_NAME_TIMER_CLEAR;
for (ptr = lman.acceptable_serialNo_list; *ptr != 0xFFFF; ptr++)
{
if (gRfuLinkStatus->partner[i].serialNo == *ptr)
@@ -1023,27 +1041,27 @@ static void rfu_LMAN_PARENT_checkRecvChildName(void)
lman.acceptSlot_flag |= tgtSlot;
lman.acceptCount++;
newAcceptSlot |= tgtSlot;
- flags |= 0x01;
+ flags |= RN_ACCEPT;
break;
}
}
- if (!(flags & 0x01))
+ if (!(flags & RN_ACCEPT))
{
- flags |= 0x04;
+ flags |= RN_DISCONNECT;
}
}
}
else if (--lman.nameAcceptTimer.count[i] == 0)
{
- flags = 0x06;
+ flags = RN_NAME_TIMER_CLEAR | RN_DISCONNECT;
}
- if (flags & 0x02)
+ if (flags & RN_NAME_TIMER_CLEAR)
{
lman.nameAcceptTimer.active &= ~tgtSlot;
lman.nameAcceptTimer.count[i] = 0;
rfu_clearSlot(TYPE_NI_RECV, i);
}
- if (flags & 0x04)
+ if (flags & RN_DISCONNECT)
{
lman.reserveDisconnectSlot_flag |= tgtSlot;
}
@@ -1056,10 +1074,13 @@ static void rfu_LMAN_PARENT_checkRecvChildName(void)
}
if (lman.reserveDisconnectSlot_flag)
{
- flags = 0x01;
- if (gRfuLinkStatus->sendSlotUNIFlag && ((lman.parentAck_flag & lman.acceptSlot_flag) != lman.acceptSlot_flag))
+ flags = 1;
+ if (gRfuLinkStatus->sendSlotUNIFlag)
{
- flags = 0x00;
+ if (((lman.parentAck_flag & lman.acceptSlot_flag) != lman.acceptSlot_flag))
+ {
+ flags = 0;
+ }
}
if (flags)
{
@@ -1078,20 +1099,20 @@ static void rfu_LMAN_PARENT_checkRecvChildName(void)
}
else
{
- if (lman.pcswitch_flag == 2)
+ if (lman.pcswitch_flag == PCSWITCH_1ST_SC)
{
- lman.pcswitch_flag = 3;
+ lman.pcswitch_flag = PCSWITCH_2ND_SP_START;
lman.state = LMAN_STATE_START_SEARCH_PARENT;
}
else
{
- lman.pcswitch_flag = 1;
+ lman.pcswitch_flag = PCSWITCH_1ST_SC_START;
lman.state = LMAN_STATE_START_SEARCH_CHILD;
}
if (lman.acceptSlot_flag)
{
lman.connect_period = 0;
- lman.pcswitch_flag = 8;
+ lman.pcswitch_flag = PCSWITCH_SC_LOCK;
lman.state = LMAN_STATE_START_SEARCH_CHILD;
}
}
@@ -1319,7 +1340,7 @@ static u8 rfu_LMAN_setFastSearchParent(u8 enable_flag)
}
if (enable_flag)
{
- lman.fastSearchParent_flag = 1;
+ lman.fastSearchParent_flag = FSP_ON;
}
else
{
@@ -1356,23 +1377,23 @@ void rfu_LMAN_forceChangeSP(void)
switch (lman.state)
{
case LMAN_STATE_START_SEARCH_CHILD:
- lman.pcswitch_flag = 3;
+ lman.pcswitch_flag = PCSWITCH_2ND_SP_START;
lman.state = LMAN_STATE_START_SEARCH_PARENT;
break;
case LMAN_STATE_POLL_SEARCH_CHILD:
- lman.pcswitch_flag = 2;
+ lman.pcswitch_flag = PCSWITCH_1ST_SC;
lman.connect_period = 1;
break;
case LMAN_STATE_END_SEARCH_CHILD:
case LMAN_STATE_WAIT_RECV_CHILD_NAME:
- lman.pcswitch_flag = 2;
+ lman.pcswitch_flag = PCSWITCH_1ST_SC;
break;
case LMAN_STATE_START_SEARCH_PARENT:
case LMAN_STATE_POLL_SEARCH_PARENT:
- lman.connect_period = 40;
+ lman.connect_period = PCSWITCH_SP_PERIOD;
break;
case LMAN_STATE_END_SEARCH_PARENT:
- lman.connect_period = 40;
+ lman.connect_period = PCSWITCH_SP_PERIOD;
lman.state = LMAN_STATE_POLL_SEARCH_PARENT;
break;
}