diff --git a/src/core/hle/libraries/libsystemservice/system_service.cpp b/src/core/hle/libraries/libsystemservice/system_service.cpp index 850236066..314dae47f 100644 --- a/src/core/hle/libraries/libsystemservice/system_service.cpp +++ b/src/core/hle/libraries/libsystemservice/system_service.cpp @@ -1,7 +1,8 @@ +#include "core/hle/libraries/libsystemservice/system_service.h" + #include "common/log.h" #include "core/hle/error_codes.h" #include "core/hle/libraries/libs.h" -#include "core/hle/libraries/libsystemservice/system_service.h" namespace Core::Libraries::LibSystemService { @@ -10,9 +11,21 @@ s32 PS4_SYSV_ABI sceSystemServiceHideSplashScreen() { return SCE_OK; } -void systemServiceSymbolsRegister(Loader::SymbolsResolver* sym) { - LIB_FUNCTION("Vo5V8KAwCmk", "libSceSystemService", 1, "libSceSystemService", 1, 1, - sceSystemServiceHideSplashScreen); +s32 PS4_SYSV_ABI sceSystemServiceGetStatus(SceSystemServiceStatus* status) { + SceSystemServiceStatus st = {}; + st.eventNum = 0; + st.isSystemUiOverlaid = false; + st.isInBackgroundExecution = false; + st.isCpuMode7CpuNormal = true; + st.isGameLiveStreamingOnAir = false; + st.isOutOfVrPlayArea = false; + *status = st; + return SCE_OK; } -}; // namespace Core::Libraries::LibSystemService +void systemServiceSymbolsRegister(Loader::SymbolsResolver* sym) { + LIB_FUNCTION("Vo5V8KAwCmk", "libSceSystemService", 1, "libSceSystemService", 1, 1, sceSystemServiceHideSplashScreen); + LIB_FUNCTION("rPo6tV8D9bM", "libSceSystemService", 1, "libSceSystemService", 1, 1, sceSystemServiceGetStatus); +} + +}; // namespace Core::Libraries::LibSystemService diff --git a/src/core/hle/libraries/libsystemservice/system_service.h b/src/core/hle/libraries/libsystemservice/system_service.h index 1b31cab3f..af2e358df 100644 --- a/src/core/hle/libraries/libsystemservice/system_service.h +++ b/src/core/hle/libraries/libsystemservice/system_service.h @@ -8,8 +8,19 @@ class SymbolsResolver; namespace Core::Libraries::LibSystemService { +struct SceSystemServiceStatus { + s32 eventNum; + bool isSystemUiOverlaid; + bool isInBackgroundExecution; + bool isCpuMode7CpuNormal; + bool isGameLiveStreamingOnAir; + bool isOutOfVrPlayArea; + u08 reserved[]; +}; + s32 PS4_SYSV_ABI sceSystemServiceHideSplashScreen(); +s32 PS4_SYSV_ABI sceSystemServiceGetStatus(SceSystemServiceStatus* status); void systemServiceSymbolsRegister(Loader::SymbolsResolver* sym); -}; // namespace Core::Libraries::LibSystemService +}; // namespace Core::Libraries::LibSystemService