diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2019-10-06 20:04:37 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2019-10-06 20:04:37 -0400 |
commit | 76fd98fffee901012c1e41580aff23d70a977330 (patch) | |
tree | 46aa6bc48bae06330e04ec42fd19095e31733a23 /include/link.h | |
parent | 736b89ae3d4ffb335ef9e073556bc630c5541b70 (diff) |
link through CheckErrorStatus
Diffstat (limited to 'include/link.h')
-rw-r--r-- | include/link.h | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/include/link.h b/include/link.h index 220465046..1360ce8cc 100644 --- a/include/link.h +++ b/include/link.h @@ -19,6 +19,20 @@ #define LINK_STAT_RECEIVED_NOTHING 0x00000100 #define LINK_STAT_RECEIVED_NOTHING_SHIFT 8 #define LINK_STAT_ERRORS 0x0007F000 +#define LINK_STAT_ERRORS_SHIFT 12 + +#define LINK_STAT_ERROR_HARDWARE 0x00001000 +#define LINK_STAT_ERROR_HARDWARE_SHIFT 12 +#define LINK_STAT_ERROR_CHECKSUM 0x00002000 +#define LINK_STAT_ERROR_CHECKSUM_SHIFT 13 +#define LINK_STAT_ERROR_QUEUE_FULL 0x00004000 +#define LINK_STAT_ERROR_QUEUE_FULL_SHIFT 14 +#define LINK_STAT_ERROR_LAG_MASTER 0x00010000 +#define LINK_STAT_ERROR_LAG_MASTER_SHIFT 16 +#define LINK_STAT_ERROR_INVALID_ID 0x00020000 +#define LINK_STAT_ERROR_INVALID_ID_SHIFT 17 +#define LINK_STAT_ERROR_LAG_SLAVE 0x00040000 +#define LINK_STAT_ERROR_LAG_SLAVE_SHIFT 18 #define EXTRACT_PLAYER_COUNT(status) \ (((status) & LINK_STAT_PLAYER_COUNT) >> LINK_STAT_PLAYER_COUNT_SHIFT) @@ -28,6 +42,8 @@ (((status) >> LINK_STAT_CONN_ESTABLISHED_SHIFT) & 1) #define EXTRACT_RECEIVED_NOTHING(status) \ (((status) >> LINK_STAT_RECEIVED_NOTHING_SHIFT) & 1) +#define EXTRACT_LINK_ERRORS(status) \ +(((status) & LINK_STAT_ERRORS) >> LINK_STAT_ERRORS_SHIFT) #define LINKCMD_SEND_LINK_TYPE 0x2222 #define LINKCMD_0x2FFE 0x2FFE @@ -62,6 +78,10 @@ enum EXCHANGE_COMPLETE, EXCHANGE_TIMED_OUT, EXCHANGE_IN_PROGRESS, + EXCHANGE_STAT_4, + EXCHANGE_STAT_5, + EXCHANGE_STAT_6, + EXCHANGE_STAT_7 }; enum @@ -174,7 +194,7 @@ void ClearLinkCallback(void); void ClearLinkCallback_2(void); u8 GetLinkPlayerCount(void); void OpenLinkTimed(void); -u8 GetLinkPlayerDataExchangeStatusTimed(void); +u8 GetLinkPlayerDataExchangeStatusTimed(int lower, int higher); bool8 IsLinkPlayerDataExchangeComplete(void); u32 GetLinkPlayerTrainerId(u8); void ResetLinkPlayers(void); @@ -217,7 +237,7 @@ void sub_800AAC0(void); void OpenLink(void); bool8 IsLinkMaster(void); void CheckShouldAdvanceLinkState(void); -void sub_800AA80(u8); +void sub_800AA80(u16 a0); void sub_80098D8(void); void CloseLink(void); bool8 IsLinkTaskFinished(void); @@ -228,6 +248,7 @@ void sub_800B1F4(void); void LoadWirelessStatusIndicatorSpriteGfx(void); void CreateWirelessStatusIndicatorSprite(u8, u8); void sub_8009FE8(void); -void sub_800A068(void); +void ClearLinkCallback_2(void); +void sub_80FA42C(void); #endif // GUARD_LINK_H |