2013-09-07 00:55:42 +02:00
|
|
|
// Copyright (c) 2013- PPSSPP Project.
|
|
|
|
|
|
|
|
// This program is free software: you can redistribute it and/or modify
|
|
|
|
// it under the terms of the GNU General Public License as published by
|
|
|
|
// the Free Software Foundation, version 2.0 or later versions.
|
|
|
|
|
|
|
|
// This program is distributed in the hope that it will be useful,
|
|
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
// GNU General Public License 2.0 for more details.
|
|
|
|
|
|
|
|
// A copy of the GPL 2.0 should have been included with the program.
|
|
|
|
// If not, see http://www.gnu.org/licenses/
|
|
|
|
|
|
|
|
// Official git repository and contact information can be found at
|
|
|
|
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
2019-12-24 00:04:03 +07:00
|
|
|
#include "Core/HLE/proAdhoc.h"
|
|
|
|
|
2019-12-25 22:30:39 +07:00
|
|
|
#ifdef _MSC_VER
|
|
|
|
#pragma pack(push,1)
|
|
|
|
#endif
|
2019-11-13 12:56:29 +07:00
|
|
|
typedef struct MatchingArgs {
|
|
|
|
u32_le data[6]; //ContextID, Opcode, bufAddr[ to MAC], OptLen, OptAddr[, EntryPoint]
|
2019-12-25 22:30:39 +07:00
|
|
|
} PACK MatchingArgs;
|
|
|
|
#ifdef _MSC_VER
|
|
|
|
#pragma pack(pop)
|
|
|
|
#endif
|
2019-11-13 12:56:29 +07:00
|
|
|
|
2014-03-15 11:32:57 -07:00
|
|
|
class PointerWrap;
|
2013-09-07 00:55:42 +02:00
|
|
|
|
|
|
|
void Register_sceNetAdhoc();
|
|
|
|
|
2019-12-24 00:04:03 +07:00
|
|
|
u32_le __CreateHLELoop(u32_le* loopAddr, const char* sceFuncName, const char* hleFuncName, const char* tagName = NULL);
|
2013-09-07 00:55:42 +02:00
|
|
|
void __NetAdhocInit();
|
|
|
|
void __NetAdhocShutdown();
|
|
|
|
void __NetAdhocDoState(PointerWrap &p);
|
2015-01-04 14:07:44 +01:00
|
|
|
void __UpdateAdhocctlHandlers(u32 flags, u32 error);
|
2019-11-13 12:56:29 +07:00
|
|
|
void __UpdateMatchingHandler(MatchingArgs params);
|
2013-10-26 23:08:21 +01:00
|
|
|
|
|
|
|
// I have to call this from netdialog
|
|
|
|
int sceNetAdhocctlCreate(const char * groupName);
|
2014-06-24 23:43:03 +07:00
|
|
|
|
|
|
|
// May need to use these from sceNet.cpp
|
|
|
|
extern bool netAdhocInited;
|
|
|
|
extern bool netAdhocctlInited;
|
2019-12-24 00:04:03 +07:00
|
|
|
extern int adhocDefaultTimeout;
|
|
|
|
extern int adhocEventPollDelayMS;
|
|
|
|
extern int adhocMatchingEventDelayMS;
|
2020-03-19 13:46:02 +07:00
|
|
|
extern int adhocEventDelayMS; // This will affect the duration of "Connecting..." dialog/message box in .Hack//Link and Naruto Ultimate Ninja Heroes 3
|
2019-12-24 00:04:03 +07:00
|
|
|
extern std::recursive_mutex adhocEvtMtx;
|
|
|
|
extern int IsAdhocctlInCB;
|
|
|
|
|
2020-03-26 16:10:50 +07:00
|
|
|
int NetAdhocMatching_Term();
|
|
|
|
int NetAdhocctl_Term();
|
|
|
|
int NetAdhoc_Term();
|