From 1bc750c88f6b0227810c2a35e7069a5e1c640d66 Mon Sep 17 00:00:00 2001 From: georgemoralis Date: Mon, 20 Nov 2023 08:51:31 +0200 Subject: [PATCH] initial sceSystemServiceParamGetInt --- .../libraries/libsystemservice/system_service.cpp | 13 +++++++++++++ .../hle/libraries/libsystemservice/system_service.h | 2 ++ 2 files changed, 15 insertions(+) diff --git a/src/core/hle/libraries/libsystemservice/system_service.cpp b/src/core/hle/libraries/libsystemservice/system_service.cpp index 314dae47f..3ff99782e 100644 --- a/src/core/hle/libraries/libsystemservice/system_service.cpp +++ b/src/core/hle/libraries/libsystemservice/system_service.cpp @@ -3,6 +3,7 @@ #include "common/log.h" #include "core/hle/error_codes.h" #include "core/hle/libraries/libs.h" +#include namespace Core::Libraries::LibSystemService { @@ -23,9 +24,21 @@ s32 PS4_SYSV_ABI sceSystemServiceGetStatus(SceSystemServiceStatus* status) { return SCE_OK; } +s32 PS4_SYSV_ABI sceSystemServiceParamGetInt(SceSystemServiceParamId paramId, s32* value) { + if (paramId == 1) { + *value = 1; // english + } else if (paramId == 1000) { + *value = 1; // button assing cross + } else { + BREAKPOINT(); + } + return SCE_OK; +} + void systemServiceSymbolsRegister(Loader::SymbolsResolver* sym) { LIB_FUNCTION("Vo5V8KAwCmk", "libSceSystemService", 1, "libSceSystemService", 1, 1, sceSystemServiceHideSplashScreen); LIB_FUNCTION("rPo6tV8D9bM", "libSceSystemService", 1, "libSceSystemService", 1, 1, sceSystemServiceGetStatus); + LIB_FUNCTION("fZo48un7LK4", "libSceSystemService", 1, "libSceSystemService", 1, 1, sceSystemServiceParamGetInt); } }; // 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 af2e358df..e24b48711 100644 --- a/src/core/hle/libraries/libsystemservice/system_service.h +++ b/src/core/hle/libraries/libsystemservice/system_service.h @@ -8,6 +8,8 @@ class SymbolsResolver; namespace Core::Libraries::LibSystemService { +using SceSystemServiceParamId = s32; + struct SceSystemServiceStatus { s32 eventNum; bool isSystemUiOverlaid;