diff --git a/core/libs/prx/libSceSysmodule/ModuleTable.hpp b/core/libs/prx/libSceSysmodule/ModuleTable.hpp index a3e804740..67003e4f3 100644 --- a/core/libs/prx/libSceSysmodule/ModuleTable.hpp +++ b/core/libs/prx/libSceSysmodule/ModuleTable.hpp @@ -153,6 +153,7 @@ inline const std::unordered_map kModuleTable = { {0x00000110, "libSceNpTrophy2"}, {0x00000112, "libSceNpSessionSignaling"}, {0x00000113, "libSceNpEntitlementAccess"}, + {0x00000114, "libSceVoiceChat"}, {0x00000115, "libSceNpCppWebApi"}, {0x00000116, "libSceHubAppUtil"}, {0x0000011a, "libSceNpPartner001"}, diff --git a/core/libs/tests/GuestSysmodule.cpp b/core/libs/tests/GuestSysmodule.cpp index 3435a5367..a5383a863 100644 --- a/core/libs/tests/GuestSysmodule.cpp +++ b/core/libs/tests/GuestSysmodule.cpp @@ -44,6 +44,7 @@ constexpr int kInvalidValue = static_cast(0x805A1000); constexpr int kModuleUnloaded = static_cast(0x805A1001); constexpr std::uint32_t kInternalFlag = 0x80000000u; constexpr std::uint16_t kTrophy2ModuleId = 0x0110; +constexpr std::uint16_t kVoiceChatModuleId = 0x0114; constexpr std::uint32_t kAgcModuleId = 0x80000094; #ifdef __linux__ @@ -148,6 +149,13 @@ int main() { Require(sceSysmoduleIsLoaded(kTrophy2ModuleId) == kModuleUnloaded); Require(sceSysmoduleUnloadModuleInternal(kTrophy2ModuleId) == kModuleUnloaded); + Require(sceSysmoduleIsLoaded(kVoiceChatModuleId) == kModuleUnloaded); + Require(sceSysmoduleUnloadModule(kVoiceChatModuleId) == kModuleUnloaded); + Require(sceSysmoduleLoadModule(kVoiceChatModuleId) == 0); + Require(sceSysmoduleIsLoaded(kVoiceChatModuleId) == 0); + Require(sceSysmoduleUnloadModule(kVoiceChatModuleId) == 0); + Require(sceSysmoduleIsLoaded(kVoiceChatModuleId) == kModuleUnloaded); + Require(sceSysmoduleUnloadModuleInternal(kAgcModuleId) == kModuleUnloaded); Require(sceSysmoduleLoadModuleInternal(kAgcModuleId) == 0); Require(sceSysmoduleLoadModuleInternal(kAgcModuleId) == 0);