From f2f1b1978ba3423a519df66d4f382dd68ac8b185 Mon Sep 17 00:00:00 2001 From: Phlosioneer Date: Sun, 10 Feb 2019 03:54:50 -0500 Subject: Done documenting link code in overworld.c --- src/link.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'src/link.c') diff --git a/src/link.c b/src/link.c index bec9dddc6..1550d8783 100644 --- a/src/link.c +++ b/src/link.c @@ -28,7 +28,7 @@ #include "link.h" #include "link_rfu.h" -extern u16 gUnknown_03005DA8; +extern u16 gHeldKeyCodeToSend; // Static type declarations @@ -695,12 +695,12 @@ static void BuildSendCmd(u16 command) gSendCmd[0] = LINKCMD_0x5566; break; case LINKCMD_SEND_HELD_KEYS_2: - if (gUnknown_03005DA8 == 0 || gLinkTransferringData) + if (gHeldKeyCodeToSend == 0 || gLinkTransferringData) { break; } gSendCmd[0] = LINKCMD_SEND_HELD_KEYS_2; - gSendCmd[1] = gUnknown_03005DA8; + gSendCmd[1] = gHeldKeyCodeToSend; break; } } @@ -714,11 +714,11 @@ void sub_8009F18(void) gLinkCallback = sub_8009F70; } -bool32 sub_8009F3C(void) +bool32 IsSendingKeysToLink(void) { if (gWirelessCommType) { - return sub_800F7E4(); + return IsSendingKeysToRfu(); } if (gLinkCallback == sub_8009F70) { @@ -1849,7 +1849,7 @@ bool8 HandleLinkConnection(void) r5 = sub_8010F1C(); if (sub_808766C() == TRUE) { - if (r4 == TRUE || sub_800F0B8() || r5) + if (r4 == TRUE || IsRfuRecvQueueEmpty() || r5) { return TRUE; } @@ -1882,18 +1882,18 @@ void sub_800B4C0(void) } } -u32 sub_800B4DC(void) +u32 GetLinkRecvQueueLength(void) { if (gWirelessCommType != 0) { - return sub_80124D4(); + return GetRfuRecvQueueLength(); } return gLink.recvQueue.count; } bool8 sub_800B504(void) { - if (sub_800B4DC() > 2) + if (GetLinkRecvQueueLength() > 2) { return TRUE; } -- cgit v1.2.3 From e75f45dbcfcd65901035fbc7e3793332670eb306 Mon Sep 17 00:00:00 2001 From: Phlosioneer Date: Sun, 10 Feb 2019 20:42:50 -0500 Subject: Reverse engineered many of the multiplayer events Some corrections to the way events are handled and identified. --- src/link.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/link.c') diff --git a/src/link.c b/src/link.c index 1550d8783..72ac3e878 100644 --- a/src/link.c +++ b/src/link.c @@ -302,9 +302,9 @@ void LinkTestScreen(void) SetMainCallback2(CB2_LinkTest); } -void sub_8009628(u8 a0) +void SetLocalLinkPlayerId(u8 playerId) { - gLocalLinkPlayer.id = a0; + gLocalLinkPlayer.id = playerId; } static void InitLocalLinkPlayer(void) @@ -1142,7 +1142,7 @@ void ResetBlockReceivedFlag(u8 who) } } -void sub_800A620(void) +void CheckShouldAdvanceLinkState(void) { if ((gLinkStatus & LINK_STAT_MASTER) && EXTRACT_PLAYER_COUNT(gLinkStatus) > 1) { @@ -1327,7 +1327,9 @@ void sub_800AA04(u8 a0) } } -u8 sub_800AA48(void) +// The number of players when trading began. This is frequently compared against the +// current number of connected players to check if anyone dropped out. +u8 GetSavedPlayerCount(void) { return gSavedLinkPlayerCount; } -- cgit v1.2.3 From accea672f16cb74b0ec16e0e740cf9f67a651dfb Mon Sep 17 00:00:00 2001 From: Phlosioneer Date: Tue, 26 Feb 2019 22:04:44 -0500 Subject: Incorporate feedback --- src/link.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/link.c') diff --git a/src/link.c b/src/link.c index 72ac3e878..cf06e4958 100644 --- a/src/link.c +++ b/src/link.c @@ -302,7 +302,7 @@ void LinkTestScreen(void) SetMainCallback2(CB2_LinkTest); } -void SetLocalLinkPlayerId(u8 playerId) +void SetgLocalLinkPlayerId(u8 playerId) { gLocalLinkPlayer.id = playerId; } -- cgit v1.2.3 From 459fd93b59795c0c9c888584d38e82577e07c056 Mon Sep 17 00:00:00 2001 From: Phlosioneer Date: Fri, 1 Mar 2019 01:18:58 -0500 Subject: Fix minor errors --- src/link.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/link.c') diff --git a/src/link.c b/src/link.c index cf06e4958..72ac3e878 100644 --- a/src/link.c +++ b/src/link.c @@ -302,7 +302,7 @@ void LinkTestScreen(void) SetMainCallback2(CB2_LinkTest); } -void SetgLocalLinkPlayerId(u8 playerId) +void SetLocalLinkPlayerId(u8 playerId) { gLocalLinkPlayer.id = playerId; } -- cgit v1.2.3