diff --git a/include/functypes/funcptr_020312B8.h b/include/functypes/funcptr_020312B8.h deleted file mode 100644 index ce70580fca..0000000000 --- a/include/functypes/funcptr_020312B8.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef POKEPLATINUM_FUNCPTR_020312B8_H -#define POKEPLATINUM_FUNCPTR_020312B8_H - -#include - -typedef void (*WirelessManagerScanFunc)(WMBssDesc *); - -#endif // POKEPLATINUM_FUNCPTR_020312B8_H diff --git a/include/functypes/funcptr_02031E6C.h b/include/functypes/funcptr_02031E6C.h deleted file mode 100644 index 69f5140e1c..0000000000 --- a/include/functypes/funcptr_02031E6C.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef POKEPLATINUM_FUNCPTR_02031E6C_H -#define POKEPLATINUM_FUNCPTR_02031E6C_H - -typedef void (*WirelessManagerRecvFunc)(u16, u16 *, u16); - -#endif // POKEPLATINUM_FUNCPTR_02031E6C_H diff --git a/include/functypes/funcptr_02031E9C.h b/include/functypes/funcptr_02031E9C.h deleted file mode 100644 index 67f783162e..0000000000 --- a/include/functypes/funcptr_02031E9C.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef POKEPLATINUM_FUNCPTR_02031E9C_H -#define POKEPLATINUM_FUNCPTR_02031E9C_H - -typedef void (*WirelessManagerSendFunc)(BOOL); - -#endif // POKEPLATINUM_FUNCPTR_02031E9C_H diff --git a/include/functypes/funcptr_020320FC.h b/include/functypes/funcptr_020320FC.h deleted file mode 100644 index d3769b04ce..0000000000 --- a/include/functypes/funcptr_020320FC.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef POKEPLATINUM_FUNCPTR_020320FC_H -#define POKEPLATINUM_FUNCPTR_020320FC_H - -typedef void (*UnkFuncPtr_020320FC)(u32, int); - -#endif // POKEPLATINUM_FUNCPTR_020320FC_H diff --git a/include/functypes/funcptr_02032110.h b/include/functypes/funcptr_02032110.h deleted file mode 100644 index 63e5a3d28c..0000000000 --- a/include/functypes/funcptr_02032110.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef POKEPLATINUM_FUNCPTR_02032110_H -#define POKEPLATINUM_FUNCPTR_02032110_H - -typedef void (*UnkFuncPtr_02032110)(int); - -#endif // POKEPLATINUM_FUNCPTR_02032110_H diff --git a/include/unk_02030EE0.h b/include/wireless_manager.h similarity index 54% rename from include/unk_02030EE0.h rename to include/wireless_manager.h index 5aa804af2a..35e65f896b 100644 --- a/include/unk_02030EE0.h +++ b/include/wireless_manager.h @@ -3,12 +3,6 @@ #include -#include "functypes/funcptr_020312B8.h" -#include "functypes/funcptr_02031E6C.h" -#include "functypes/funcptr_02031E9C.h" -#include "functypes/funcptr_020320FC.h" -#include "functypes/funcptr_02032110.h" - enum WirelessManagerState { WIRELESS_STATE_STOP, WIRELESS_STATE_IDLE, @@ -44,41 +38,47 @@ enum ExtendedWMErrCode { WM_ERRCODE_GF_MAX }; -BOOL WirelessManager_ConnectClientAuto(int param0, const u8 *param1, u16 param2); -BOOL WirelessManager_ConnectClientScanCallback(WirelessManagerScanFunc param0, const u8 *param1, u16 param2); +typedef void (*WirelessManagerScanFunc)(WMBssDesc *); +typedef void (*WirelessManagerRecvFunc)(u16, u16 *, u16); +typedef void (*WirelessManagerSendFunc)(BOOL); +typedef void (*WirelessManagerGGIDScanFunc)(u32, int); +typedef void (*WirelessManagerConnectFunc)(int); + +BOOL WirelessManager_ConnectClientAuto(int connectionType, const u8 *macAddress, u16 channel); +BOOL WirelessManager_ConnectClientScanCallback(WirelessManagerScanFunc scanCallback, const u8 *macAddress, u16 channel); BOOL WirelessManager_StopScan(void); -void WirelessManager_SetParentParamGGID(u32 param0); -void WirelessManager_SetParentParamGameInfoAndLength(u16 *param0, u16 param1); +void WirelessManager_SetParentParamGGID(u32 ggid); +void WirelessManager_SetParentParamGameInfoAndLength(u16 *userGameInfo, u16 size); u16 WirelessManager_GetConnectedBitmap(void); int WirelessManager_GetState(void); int WirelessManager_GetErrorCode(void); BOOL WirelessManager_StartMeasureChannel(void); u16 WirelessManager_GetMeasureChannel(void); -BOOL WirelessManager_Initialize(void *param0, BOOL param1); +BOOL WirelessManager_Initialize(void *heap, BOOL isNotListening); int WirelessManager_GetHeapSize(void); -BOOL WirelessManager_ConnectServer(int param0, u16 param1, u16 param2, u16 param3, u16 param4, BOOL param5); -BOOL WirelessManager_ConnectClient(int param0, WMBssDesc *param1); -void WirelessManager_SetRecvFunction(WirelessManagerRecvFunc param0, int param1); -BOOL WirelessManager_SendMessage(void *param0, u16 param1, int param2, WirelessManagerSendFunc param3); +BOOL WirelessManager_ConnectServer(int connectionType, u16 tgid, u16 channel, u16 maxEntry, u16 beaconPeriod, BOOL entryFlag); +BOOL WirelessManager_ConnectClient(int connectionType, WMBssDesc *bssDesc); +void WirelessManager_SetRecvFunction(WirelessManagerRecvFunc recvFunction, int port); +BOOL WirelessManager_SendMessage(void *message, u16 size, int port, WirelessManagerSendFunc callback); void WirelessManager_Reset(void); void WirelessManager_Finalize(void); BOOL WirelessManager_End(void); u16 WirelessManager_GetAID(void); -void WirelessManager_SetMaxNumConnections(int param0); +void WirelessManager_SetMaxNumConnections(int numConnectionsMax); BOOL WirelessManager_IsIdle(void); BOOL WirelessManager_IsBusy(void); BOOL WirelessManager_IsError(void); BOOL WirelessManager_IsScanning(void); -void WirelessManager_SetGameInfo(void *param0, int param1, int param2, int param3); -BOOL WirelessManager_SetEntry(BOOL param0); +void WirelessManager_SetGameInfo(void *buffer, int size, int ggid, int tgid); +BOOL WirelessManager_SetEntry(BOOL enable); BOOL WirelessManager_ServerSentAllBeacons(void); void WirelessManager_ResetBeaconSentCount(void); -void WirelessManager_SetGGIDScanCallback(UnkFuncPtr_020320FC param0); -void sub_SetDisconnectCallback(UnkFuncPtr_02032110 param0); -void WirelessManager_SetConnectCallback(UnkFuncPtr_02032110 param0); -void WirelessManager_SetPauseConnection(BOOL param0); +void WirelessManager_SetGGIDScanCallback(WirelessManagerGGIDScanFunc callback); +void sub_SetDisconnectCallback(WirelessManagerConnectFunc callback); +void WirelessManager_SetConnectCallback(WirelessManagerConnectFunc callback); +void WirelessManager_SetPauseConnection(BOOL pause); BOOL WirelessManager_GetPauseConnection(void); -void WirelessManager_SetPauseConnectionSystem(BOOL param0); -void WirelessManager_SetPauseClientConnection(BOOL param0); +void WirelessManager_SetPauseConnectionSystem(BOOL pause); +void WirelessManager_SetPauseClientConnection(BOOL pause); #endif // POKEPLATINUM_UNK_02030EE0_H diff --git a/platinum.us/main.lsf b/platinum.us/main.lsf index 0488144942..7ed803f327 100644 --- a/platinum.us/main.lsf +++ b/platinum.us/main.lsf @@ -151,7 +151,7 @@ Static main Object main.nef.p/src_unk_02030A80.c.o Object main.nef.p/src_unk_02030CE8.c.o Object main.nef.p/src_unk_02030EA4.c.o - Object main.nef.p/src_unk_02030EE0.c.o + Object main.nef.p/src_wireless_manager.c.o Object main.nef.p/src_comm_ring.c.o Object main.nef.p/src_unk_020322D8.c.o Object main.nef.p/src_unk_0203266C.c.o diff --git a/src/communication_system.c b/src/communication_system.c index 6d6c5b8518..43f9a197ae 100644 --- a/src/communication_system.c +++ b/src/communication_system.c @@ -19,7 +19,7 @@ #include "sys_task.h" #include "sys_task_manager.h" #include "system.h" -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include "unk_020322D8.h" #include "unk_0203266C.h" #include "unk_02032798.h" diff --git a/src/meson.build b/src/meson.build index 166c2f7268..ef43ffe8f4 100644 --- a/src/meson.build +++ b/src/meson.build @@ -140,7 +140,7 @@ pokeplatinum_c = files( 'unk_02030A80.c', 'unk_02030CE8.c', 'unk_02030EA4.c', - 'unk_02030EE0.c', + 'wireless_manager.c', 'comm_ring.c', 'unk_020322D8.c', 'unk_0203266C.c', diff --git a/src/overlay005/field_control.c b/src/overlay005/field_control.c index fea83f21df..2e1767bff7 100644 --- a/src/overlay005/field_control.c +++ b/src/overlay005/field_control.c @@ -60,7 +60,7 @@ #include "terrain_collision_manager.h" #include "trainer_info.h" #include "trainer_see.h" -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include "unk_020366A0.h" #include "unk_0203C954.h" #include "unk_02054884.h" diff --git a/src/overlay058/ov58_021D0D80.c b/src/overlay058/ov58_021D0D80.c index 747ca72147..1e20b08105 100644 --- a/src/overlay058/ov58_021D0D80.c +++ b/src/overlay058/ov58_021D0D80.c @@ -43,7 +43,7 @@ #include "touch_pad.h" #include "touch_screen.h" #include "trainer_info.h" -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include "unk_02033200.h" #include "unk_020363E8.h" #include "unk_020366A0.h" diff --git a/src/overlay059/ov59_021D0D80.c b/src/overlay059/ov59_021D0D80.c index b2072f7f2d..7e8861002b 100644 --- a/src/overlay059/ov59_021D0D80.c +++ b/src/overlay059/ov59_021D0D80.c @@ -49,7 +49,7 @@ #include "system.h" #include "text.h" #include "trainer_info.h" -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include "unk_020363E8.h" #include "unk_020366A0.h" #include "unk_02038ED4.h" diff --git a/src/overlay109/ov109_021D3D50.c b/src/overlay109/ov109_021D3D50.c index 948f841d68..40571b7241 100644 --- a/src/overlay109/ov109_021D3D50.c +++ b/src/overlay109/ov109_021D3D50.c @@ -50,7 +50,7 @@ #include "system.h" #include "text.h" #include "trainer_info.h" -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include "unk_020363E8.h" #include "unk_020366A0.h" #include "unk_02038ED4.h" diff --git a/src/underground/manager.c b/src/underground/manager.c index 1af6decc21..af977c5862 100644 --- a/src/underground/manager.c +++ b/src/underground/manager.c @@ -45,7 +45,7 @@ #include "terrain_collision_manager.h" #include "trainer_info.h" #include "underground.h" -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include "unk_020366A0.h" #include "vars_flags.h" diff --git a/src/underground/secret_bases.c b/src/underground/secret_bases.c index 95aad3ea6a..cc4c20ca0a 100644 --- a/src/underground/secret_bases.c +++ b/src/underground/secret_bases.c @@ -58,7 +58,7 @@ #include "terrain_collision_manager.h" #include "trainer_info.h" #include "underground.h" -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include "unk_02033200.h" #include "unk_020366A0.h" #include "unk_0205F180.h" diff --git a/src/unk_02033200.c b/src/unk_02033200.c index 223cc43bba..472ca88192 100644 --- a/src/unk_02033200.c +++ b/src/unk_02033200.c @@ -16,7 +16,7 @@ #include "system.h" #include "trainer_info.h" #include "unk_02014A84.h" -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include "unk_0203266C.h" #include "unk_020366A0.h" diff --git a/src/unk_020366A0.c b/src/unk_020366A0.c index 6391989f37..cc08451aba 100644 --- a/src/unk_020366A0.c +++ b/src/unk_020366A0.c @@ -19,7 +19,7 @@ #include "sound_playback.h" #include "system.h" #include "trainer_info.h" -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include "unk_0203266C.h" #include "unk_02032798.h" #include "unk_02033200.h" diff --git a/src/unk_02095E98.c b/src/unk_02095E98.c index 38fa0ad2b3..2779e6cb51 100644 --- a/src/unk_02095E98.c +++ b/src/unk_02095E98.c @@ -13,7 +13,7 @@ #include "bg_window.h" #include "communication_system.h" -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include "unk_02032798.h" #include "unk_020366A0.h" #include "unk_02099500.h" diff --git a/src/unk_020961E8.c b/src/unk_020961E8.c index 1f8b7c5c3a..fb988fe00c 100644 --- a/src/unk_020961E8.c +++ b/src/unk_020961E8.c @@ -13,7 +13,7 @@ #include "communication_system.h" #include "math_util.h" #include "sound_playback.h" -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include "unk_02032798.h" #include "unk_020366A0.h" #include "unk_02099500.h" diff --git a/src/unk_0209BDF8.c b/src/unk_0209BDF8.c index 6d6b369380..815b23e820 100644 --- a/src/unk_0209BDF8.c +++ b/src/unk_0209BDF8.c @@ -18,7 +18,7 @@ #include "communication_information.h" #include "communication_system.h" #include "heap.h" -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include "unk_02032798.h" #include "unk_020366A0.h" #include "unk_0205B33C.h" diff --git a/src/unk_02030EE0.c b/src/wireless_manager.c similarity index 95% rename from src/unk_02030EE0.c rename to src/wireless_manager.c index 41525aa102..7d74d48bfa 100644 --- a/src/unk_02030EE0.c +++ b/src/wireless_manager.c @@ -1,4 +1,4 @@ -#include "unk_02030EE0.h" +#include "wireless_manager.h" #include #include @@ -7,12 +7,6 @@ #include "struct_defs/struct_0203330C.h" -#include "functypes/funcptr_020312B8.h" -#include "functypes/funcptr_02031E6C.h" -#include "functypes/funcptr_02031E9C.h" -#include "functypes/funcptr_020320FC.h" -#include "functypes/funcptr_02032110.h" - #include "unk_0203266C.h" #include "unk_020366A0.h" @@ -44,9 +38,9 @@ typedef struct WirelessManager { BOOL (* unusedCallback_1390)(WMStartParentCallback *); // clang-format on - UnkFuncPtr_020320FC ggidScanCallback; - UnkFuncPtr_02032110 disconnectCallback; - UnkFuncPtr_02032110 connectCallback; + WirelessManagerGGIDScanFunc ggidScanCallback; + WirelessManagerConnectFunc disconnectCallback; + WirelessManagerConnectFunc connectCallback; u16 aid; //machine id. 0 for the server, 1~7 for clients u16 connectedBitmap; //bitmap of (1 << aid) for connected machines int errorCode; @@ -63,41 +57,41 @@ typedef struct WirelessManager { } WirelessManager; void include_unk_021C07A8(void); -static void WirelessManager_InidcateCallback(void *param0); -static BOOL WirelessManager_InitializeWM(BOOL param0); -static void WirelessManager_FinishInitializeWM(void *param0); -static u16 WirelessManager_MeasureChannel(u16 param0); -static void WirelessManager_FinishMeasureChannel(void *param0); -static WMErrCode WirelessManager_MeasureChannelInternal(WMCallbackFunc param0, u16 param1); -static s16 WirelessManager_GetRandomChannel(u16 param0); +static void WirelessManager_InidcateCallback(void *callback); +static BOOL WirelessManager_InitializeWM(BOOL isNotListening); +static void WirelessManager_FinishInitializeWM(void *callback); +static u16 WirelessManager_MeasureChannel(u16 chanel); +static void WirelessManager_FinishMeasureChannel(void *callback); +static WMErrCode WirelessManager_MeasureChannelInternal(WMCallbackFunc callback, u16 port); +static s16 WirelessManager_GetRandomChannel(u16 bitmap); static BOOL WirelessManager_SetParentParameter(void); -static void WirelessManager_FinishSetParentParameter(void *param0); +static void WirelessManager_FinishSetParentParameter(void *callback); static BOOL WirelessManager_StartServer(void); -static void WirelessManager_FinishStartServer(void *param0); +static void WirelessManager_FinishStartServer(void *callback); static BOOL WirelessManager_StartMPServer(void); -static void WirelessManager_FinishStartMPServer(void *param0); +static void WirelessManager_FinishStartMPServer(void *callback); static BOOL WirelessManager_StartScan(void); -static void WirelessManager_FinishStartScan(void *param0); +static void WirelessManager_FinishStartScan(void *callback); static BOOL WirelessManager_EndScan(void); -static void WirelessManager_FinishEndScan(void *param0); +static void WirelessManager_FinishEndScan(void *callback); static BOOL WirelessManager_StartClient(void); -static void WirelessManager_FinishStartClient(void *param0); +static void WirelessManager_FinishStartClient(void *callback); static BOOL WirelessManager_StartMPClient(void); -static void WirelessManager_FinishStartMPClient(void *param0); -static BOOL WirelessManager_SendMPMessage(void *param0, u16 param1, int param2, WirelessManagerSendFunc param3); -static void WirelessManager_FinishSendMPMessage(void *param0); -static void WirelessManager_RecvMessageCallback(void *param0); +static void WirelessManager_FinishStartMPClient(void *callback); +static BOOL WirelessManager_SendMPMessage(void *message, u16 size, int port, WirelessManagerSendFunc callback); +static void WirelessManager_FinishSendMPMessage(void *callback); +static void WirelessManager_RecvMessageCallback(void *callback); static BOOL WirelessManager_EndMPServer(void); -static void WirelessManager_FinishEndMPServer(void *param0); +static void WirelessManager_FinishEndMPServer(void *callback); static BOOL WirelessManager_EndServer(void); -static void WirelessManager_FinishEndServer(void *param0); +static void WirelessManager_FinishEndServer(void *callback); static BOOL WirelessManager_EndMPClient(void); -static void WirelessManager_FinishEndMPClient(void *param0); +static void WirelessManager_FinishEndMPClient(void *callback); static BOOL WirelessManager_DisconnectClient(void); -static void WirelessManager_FinishDisconnectClient(void *param0); -static void WirelessManager_FinishEnd(void *param0); +static void WirelessManager_FinishDisconnectClient(void *callback); +static void WirelessManager_FinishEnd(void *callback); static BOOL WirelessManager_ResetInternal(void); -static void WirelessManager_FinishResetInternal(void *param0); +static void WirelessManager_FinishResetInternal(void *callback); static u16 WirelessManager_GetNumConnected(void); static WirelessManager *sWirelessManager; @@ -1006,10 +1000,13 @@ void WirelessManager_SetParentParamGGID(u32 ggid) /** * @brief Sets the WirelessManager's parentParam userGameInfo and userGameInfoLength + * + * @param userGameInfo + * @param size */ -void WirelessManager_SetParentParamGameInfoAndLength(u16 *param0, u16 param1) +void WirelessManager_SetParentParamGameInfoAndLength(u16 *userGameInfo, u16 size) { - sWirelessManager->parentParam.userGameInfo = param0; + sWirelessManager->parentParam.userGameInfo = userGameInfo; sWirelessManager->parentParam.userGameInfoLength = param1; } @@ -1297,10 +1294,12 @@ int WirelessManager_GetHeapSize(void) /** * @brief WM indicator callback for WM_SetIndCallback + * + * @param wm_callback */ -static void WirelessManager_InidcateCallback(void *param0) +static void WirelessManager_InidcateCallback(void *wm_callback) { - WMindCallback *callback = (WMindCallback *)param0; + WMindCallback *callback = (WMindCallback *)wm_callback; if (callback->errcode == WM_ERRCODE_FIFO_ERROR) { WirelessManager_SetState(WIRELESS_STATE_ERROR); @@ -1729,7 +1728,7 @@ void WirelessManager_ResetBeaconSentCount(void) * * @param callback */ -void WirelessManager_SetGGIDScanCallback(UnkFuncPtr_020320FC callback) +void WirelessManager_SetGGIDScanCallback(WirelessManagerGGIDScanFunc callback) { sWirelessManager->ggidScanCallback = callback; } @@ -1739,7 +1738,7 @@ void WirelessManager_SetGGIDScanCallback(UnkFuncPtr_020320FC callback) * * @param callback */ -void sub_SetDisconnectCallback(UnkFuncPtr_02032110 callback) +void sub_SetDisconnectCallback(WirelessManagerConnectFunc callback) { sWirelessManager->disconnectCallback = callback; } @@ -1749,7 +1748,7 @@ void sub_SetDisconnectCallback(UnkFuncPtr_02032110 callback) * * @param callback */ -void WirelessManager_SetConnectCallback(UnkFuncPtr_02032110 callback) +void WirelessManager_SetConnectCallback(WirelessManagerConnectFunc callback) { sWirelessManager->connectCallback = callback; }