mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-06-11 13:13:15 +00:00
Network libs fixes , stubs and more (#1324)
* some rework on netctl calls * added libs stubs using from RE6 * added ORBIS_NET_CTL_INFO_IP_ADDRESS case in sceNetCtlGetInfo * added sceNetInetPton * some dummy functions and change some functions to debug level * clang format fix * fix for sceNetInetPton * posix OS fix? * linux + macOS fixes? * fix? * sceSharePlayGetCurrentConnectionInfo
This commit is contained in:
parent
dc99d3ebfc
commit
dbdbb40c0b
21 changed files with 1599 additions and 73 deletions
309
src/core/libraries/remote_play/remoteplay.cpp
Normal file
309
src/core/libraries/remote_play/remoteplay.cpp
Normal file
|
@ -0,0 +1,309 @@
|
|||
// SPDX-FileCopyrightText: Copyright 2024 shadPS4 Emulator Project
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include "remoteplay.h"
|
||||
|
||||
#include "common/logging/log.h"
|
||||
#include "core/libraries/error_codes.h"
|
||||
#include "core/libraries/libs.h"
|
||||
|
||||
namespace Libraries::Remoteplay {
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayApprove() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayChangeEnterKey() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayClearAllRegistData() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayClearConnectHistory() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayConfirmDeviceRegist() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayDisconnect() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayGeneratePinCode() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayGetApMode() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayGetConnectHistory() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayGetConnectionStatus(s32 userId, int* pStatus) {
|
||||
*pStatus = ORBIS_REMOTEPLAY_CONNECTION_STATUS_DISCONNECT;
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayGetConnectUserId() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayGetMbusDeviceInfo() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayGetOperationStatus() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayGetRemoteplayStatus() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayGetRpMode() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayImeClose() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayImeFilterResult() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayImeGetEvent() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayImeNotify() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayImeNotifyEventResult() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayImeOpen() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayImeSetCaret() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayImeSetText() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayInitialize() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayIsRemoteOskReady() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayIsRemotePlaying() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayNotifyMbusDeviceRegistComplete() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayNotifyNpPushWakeup() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayNotifyPinCodeError() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayNotifyUserDelete() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayPrintAllRegistData() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayProhibit() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayProhibitStreaming() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayServerLock() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayServerUnLock() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplaySetApMode() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplaySetLogLevel() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplaySetProhibition() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplaySetProhibitionForVsh() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplaySetRpMode() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayTerminate() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
int PS4_SYSV_ABI Func_1D5EE365ED5FADB3() {
|
||||
LOG_ERROR(Lib_Remoteplay, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
void RegisterlibSceRemoteplay(Core::Loader::SymbolsResolver* sym) {
|
||||
LIB_FUNCTION("xQeIryTX7dY", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayApprove);
|
||||
LIB_FUNCTION("IYZ+Mu+8tPo", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayChangeEnterKey);
|
||||
LIB_FUNCTION("ZYUsJtcAnqA", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayClearAllRegistData);
|
||||
LIB_FUNCTION("cCheyCbF7qw", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayClearConnectHistory);
|
||||
LIB_FUNCTION("tPYT-kGbZh8", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayConfirmDeviceRegist);
|
||||
LIB_FUNCTION("6Lg4BNleJWc", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayDisconnect);
|
||||
LIB_FUNCTION("j98LdSGy4eY", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayGeneratePinCode);
|
||||
LIB_FUNCTION("L+cL-M-DP3w", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayGetApMode);
|
||||
LIB_FUNCTION("g4K51cY+PEw", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayGetConnectHistory);
|
||||
LIB_FUNCTION("g3PNjYKWqnQ", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayGetConnectionStatus);
|
||||
LIB_FUNCTION("3eBNV9A0BUM", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayGetConnectUserId);
|
||||
LIB_FUNCTION("ufesWMVX6iU", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayGetMbusDeviceInfo);
|
||||
LIB_FUNCTION("DxU4JGh4S2k", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayGetOperationStatus);
|
||||
LIB_FUNCTION("n5OxFJEvPlc", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayGetRemoteplayStatus);
|
||||
LIB_FUNCTION("Cekhs6LSHC0", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayGetRpMode);
|
||||
LIB_FUNCTION("ig1ocbR7Ptw", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayImeClose);
|
||||
LIB_FUNCTION("gV9-8cJPM3I", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayImeFilterResult);
|
||||
LIB_FUNCTION("cMk57DZXe6c", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayImeGetEvent);
|
||||
LIB_FUNCTION("-gwkQpOCl68", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayImeNotify);
|
||||
LIB_FUNCTION("58v9tSlRxc8", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayImeNotifyEventResult);
|
||||
LIB_FUNCTION("C3r2zT5ebMg", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayImeOpen);
|
||||
LIB_FUNCTION("oB730zwoz0s", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayImeSetCaret);
|
||||
LIB_FUNCTION("rOTg1Nljp8w", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayImeSetText);
|
||||
LIB_FUNCTION("k1SwgkMSOM8", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayInitialize);
|
||||
LIB_FUNCTION("R8RZC1ZIkzU", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayIsRemoteOskReady);
|
||||
LIB_FUNCTION("uYhiELUtLgA", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayIsRemotePlaying);
|
||||
LIB_FUNCTION("d-BBSEq1nfc", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayNotifyMbusDeviceRegistComplete);
|
||||
LIB_FUNCTION("Yytq7NE38R8", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayNotifyNpPushWakeup);
|
||||
LIB_FUNCTION("Wg-w8xjMZA4", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayNotifyPinCodeError);
|
||||
LIB_FUNCTION("yheulqylKwI", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayNotifyUserDelete);
|
||||
LIB_FUNCTION("t5ZvUiZ1hpE", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayPrintAllRegistData);
|
||||
LIB_FUNCTION("mrNh78tBpmg", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayProhibit);
|
||||
LIB_FUNCTION("7QLrixwVHcU", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayProhibitStreaming);
|
||||
LIB_FUNCTION("-ThIlThsN80", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayServerLock);
|
||||
LIB_FUNCTION("0Z-Pm5rZJOI", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayServerUnLock);
|
||||
LIB_FUNCTION("xSrhtSLIjOc", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplaySetApMode);
|
||||
LIB_FUNCTION("5-2agAeaE+c", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplaySetLogLevel);
|
||||
LIB_FUNCTION("Rf0XMVR7xPw", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplaySetProhibition);
|
||||
LIB_FUNCTION("n4l3FTZtNQM", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplaySetProhibitionForVsh);
|
||||
LIB_FUNCTION("-BPcEQ1w8xc", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplaySetRpMode);
|
||||
LIB_FUNCTION("BOwybKVa3Do", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
sceRemoteplayTerminate);
|
||||
LIB_FUNCTION("HV7jZe1frbM", "libSceRemoteplay", 1, "libSceRemoteplay", 0, 0,
|
||||
Func_1D5EE365ED5FADB3);
|
||||
};
|
||||
|
||||
} // namespace Libraries::Remoteplay
|
62
src/core/libraries/remote_play/remoteplay.h
Normal file
62
src/core/libraries/remote_play/remoteplay.h
Normal file
|
@ -0,0 +1,62 @@
|
|||
// SPDX-FileCopyrightText: Copyright 2024 shadPS4 Emulator Project
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "common/types.h"
|
||||
|
||||
namespace Core::Loader {
|
||||
class SymbolsResolver;
|
||||
}
|
||||
|
||||
// returning codes in sceRemoteplayGetConnectionStatus pstatus
|
||||
constexpr int ORBIS_REMOTEPLAY_CONNECTION_STATUS_DISCONNECT = 0;
|
||||
constexpr int ORBIS_REMOTEPLAY_CONNECTION_STATUS_CONNECT = 1;
|
||||
|
||||
namespace Libraries::Remoteplay {
|
||||
|
||||
int PS4_SYSV_ABI sceRemoteplayApprove();
|
||||
int PS4_SYSV_ABI sceRemoteplayChangeEnterKey();
|
||||
int PS4_SYSV_ABI sceRemoteplayClearAllRegistData();
|
||||
int PS4_SYSV_ABI sceRemoteplayClearConnectHistory();
|
||||
int PS4_SYSV_ABI sceRemoteplayConfirmDeviceRegist();
|
||||
int PS4_SYSV_ABI sceRemoteplayDisconnect();
|
||||
int PS4_SYSV_ABI sceRemoteplayGeneratePinCode();
|
||||
int PS4_SYSV_ABI sceRemoteplayGetApMode();
|
||||
int PS4_SYSV_ABI sceRemoteplayGetConnectHistory();
|
||||
int PS4_SYSV_ABI sceRemoteplayGetConnectionStatus(s32 userId, int* pStatus);
|
||||
int PS4_SYSV_ABI sceRemoteplayGetConnectUserId();
|
||||
int PS4_SYSV_ABI sceRemoteplayGetMbusDeviceInfo();
|
||||
int PS4_SYSV_ABI sceRemoteplayGetOperationStatus();
|
||||
int PS4_SYSV_ABI sceRemoteplayGetRemoteplayStatus();
|
||||
int PS4_SYSV_ABI sceRemoteplayGetRpMode();
|
||||
int PS4_SYSV_ABI sceRemoteplayImeClose();
|
||||
int PS4_SYSV_ABI sceRemoteplayImeFilterResult();
|
||||
int PS4_SYSV_ABI sceRemoteplayImeGetEvent();
|
||||
int PS4_SYSV_ABI sceRemoteplayImeNotify();
|
||||
int PS4_SYSV_ABI sceRemoteplayImeNotifyEventResult();
|
||||
int PS4_SYSV_ABI sceRemoteplayImeOpen();
|
||||
int PS4_SYSV_ABI sceRemoteplayImeSetCaret();
|
||||
int PS4_SYSV_ABI sceRemoteplayImeSetText();
|
||||
int PS4_SYSV_ABI sceRemoteplayInitialize();
|
||||
int PS4_SYSV_ABI sceRemoteplayIsRemoteOskReady();
|
||||
int PS4_SYSV_ABI sceRemoteplayIsRemotePlaying();
|
||||
int PS4_SYSV_ABI sceRemoteplayNotifyMbusDeviceRegistComplete();
|
||||
int PS4_SYSV_ABI sceRemoteplayNotifyNpPushWakeup();
|
||||
int PS4_SYSV_ABI sceRemoteplayNotifyPinCodeError();
|
||||
int PS4_SYSV_ABI sceRemoteplayNotifyUserDelete();
|
||||
int PS4_SYSV_ABI sceRemoteplayPrintAllRegistData();
|
||||
int PS4_SYSV_ABI sceRemoteplayProhibit();
|
||||
int PS4_SYSV_ABI sceRemoteplayProhibitStreaming();
|
||||
int PS4_SYSV_ABI sceRemoteplayServerLock();
|
||||
int PS4_SYSV_ABI sceRemoteplayServerUnLock();
|
||||
int PS4_SYSV_ABI sceRemoteplaySetApMode();
|
||||
int PS4_SYSV_ABI sceRemoteplaySetLogLevel();
|
||||
int PS4_SYSV_ABI sceRemoteplaySetProhibition();
|
||||
int PS4_SYSV_ABI sceRemoteplaySetProhibitionForVsh();
|
||||
int PS4_SYSV_ABI sceRemoteplaySetRpMode();
|
||||
int PS4_SYSV_ABI sceRemoteplayTerminate();
|
||||
int PS4_SYSV_ABI Func_1D5EE365ED5FADB3();
|
||||
|
||||
void RegisterlibSceRemoteplay(Core::Loader::SymbolsResolver* sym);
|
||||
} // namespace Libraries::Remoteplay
|
Loading…
Add table
Add a link
Reference in a new issue