diff --git a/core/libs/prx/libSceAudioOut/src/AudioOut2System.cpp b/core/libs/prx/libSceAudioOut/src/AudioOut2System.cpp index cc3fdc2ea..754cb5382 100644 --- a/core/libs/prx/libSceAudioOut/src/AudioOut2System.cpp +++ b/core/libs/prx/libSceAudioOut/src/AudioOut2System.cpp @@ -29,4 +29,10 @@ int APS5_VABI sceAudioOut2SetSystemDebugState(const AudioOut2SystemDebugStatePar return 0; } +APS5_EXPORT("iE8trxPKnAg", sceAudioOut2Unknown_iE8trxPKnAg); +int APS5_VABI sceAudioOut2Unknown_iE8trxPKnAg(void) { + NotImplemented_nid_no_patch("iE8trxPKnAg"); + return 0; +} + } diff --git a/core/libs/prx/libSceConvertKeycode/Export.cpp b/core/libs/prx/libSceConvertKeycode/Export.cpp index b643fcbb6..cc99aa240 100644 --- a/core/libs/prx/libSceConvertKeycode/Export.cpp +++ b/core/libs/prx/libSceConvertKeycode/Export.cpp @@ -21,4 +21,11 @@ int APS5_VABI sceConvertKeycodeGetVirtualKeycode(std::uint64_t a0, std::uint64_t static_cast(a0), static_cast(a1), static_cast(a2), static_cast(a3)); return kErrInvalidAddress; } + +APS5_EXPORT("S-Gni2KIJRY", sceConvertKeycodeUnknown_S_MGni2KIJRY); +int APS5_VABI sceConvertKeycodeUnknown_S_MGni2KIJRY(void) { + NotImplemented_nid_no_patch("S-Gni2KIJRY"); + return 0; +} + } diff --git a/core/libs/prx/libSceHttp/Export.cpp b/core/libs/prx/libSceHttp/Export.cpp index 1d10d5348..673332c18 100644 --- a/core/libs/prx/libSceHttp/Export.cpp +++ b/core/libs/prx/libSceHttp/Export.cpp @@ -369,4 +369,29 @@ int APS5_VABI sceHttpGetLastErrno(int request_id, int* errno_out) { *errno_out = 0; return 0; } + +APS5_EXPORT("JBN6N-EY+3M", sceHttpUnknown_JBN6N_MEY_P3M); +int APS5_VABI sceHttpUnknown_JBN6N_MEY_P3M(void) { + NotImplemented_nid_no_patch("JBN6N-EY+3M"); + return 0; +} + +APS5_EXPORT("Kh6bS2HQKbo", sceHttpUnknown_Kh6bS2HQKbo); +int APS5_VABI sceHttpUnknown_Kh6bS2HQKbo(void) { + NotImplemented_nid_no_patch("Kh6bS2HQKbo"); + return 0; +} + +APS5_EXPORT("U5ExQGyyx9s", sceHttpUnknown_U5ExQGyyx9s); +int APS5_VABI sceHttpUnknown_U5ExQGyyx9s(void) { + NotImplemented_nid_no_patch("U5ExQGyyx9s"); + return 0; +} + +APS5_EXPORT("h9wmFZX4i-4", sceHttpUnknown_h9wmFZX4i_M4); +int APS5_VABI sceHttpUnknown_h9wmFZX4i_M4(void) { + NotImplemented_nid_no_patch("h9wmFZX4i-4"); + return 0; +} + } diff --git a/core/libs/prx/libSceJson2/Export.cpp b/core/libs/prx/libSceJson2/Export.cpp index 363c59cde..24b692819 100644 --- a/core/libs/prx/libSceJson2/Export.cpp +++ b/core/libs/prx/libSceJson2/Export.cpp @@ -803,4 +803,16 @@ int APS5_VABI _ZN3sce4Json11Initializer10initializeEPKNS0_14InitParameter2E(void return 0; } +APS5_EXPORT("FIjXN2TkuTs", sceJsonUnknown_FIjXN2TkuTs); +int APS5_VABI sceJsonUnknown_FIjXN2TkuTs(void) { + NotImplemented_nid_no_patch("FIjXN2TkuTs"); + return 0; +} + +APS5_EXPORT("i-XwZjw0OOY", sceJsonUnknown_i_MXwZjw0OOY); +int APS5_VABI sceJsonUnknown_i_MXwZjw0OOY(void) { + NotImplemented_nid_no_patch("i-XwZjw0OOY"); + return 0; +} + } diff --git a/core/libs/prx/libSceNet/Export.cpp b/core/libs/prx/libSceNet/Export.cpp index bd02f7958..86fdaaf97 100644 --- a/core/libs/prx/libSceNet/Export.cpp +++ b/core/libs/prx/libSceNet/Export.cpp @@ -1048,4 +1048,10 @@ int APS5_VABI sceNetResolverGetError(int rid, int* status) { return 0; } +APS5_EXPORT("AzqoBha7js4", sceNetUnknown_AzqoBha7js4); +int APS5_VABI sceNetUnknown_AzqoBha7js4(void) { + NotImplemented_nid_no_patch("AzqoBha7js4"); + return 0; +} + } diff --git a/core/libs/prx/libSceNpCommerce/Export.cpp b/core/libs/prx/libSceNpCommerce/Export.cpp index 6b2bd01d9..ef3fe2cfd 100644 --- a/core/libs/prx/libSceNpCommerce/Export.cpp +++ b/core/libs/prx/libSceNpCommerce/Export.cpp @@ -79,4 +79,10 @@ int APS5_VABI sceNpCommerceSetPsStoreIconLayout(int layout) { return 0; } +APS5_EXPORT("IXmfUaze9So", sceNpCommerceUnknown_IXmfUaze9So); +int APS5_VABI sceNpCommerceUnknown_IXmfUaze9So(void) { + NotImplemented_nid_no_patch("IXmfUaze9So"); + return 0; +} + } diff --git a/core/libs/prx/libSceNpEntitlementAccess/Export.cpp b/core/libs/prx/libSceNpEntitlementAccess/Export.cpp index 31fa46049..b8f84d100 100644 --- a/core/libs/prx/libSceNpEntitlementAccess/Export.cpp +++ b/core/libs/prx/libSceNpEntitlementAccess/Export.cpp @@ -144,4 +144,10 @@ int APS5_VABI sceNpEntitlementAccessRequestUnifiedEntitlementInfo(void) { return 0; } +APS5_EXPORT("eDXKe9FndlE", sceNpEntitlementAccessPftUnknown_eDXKe9FndlE); +int APS5_VABI sceNpEntitlementAccessPftUnknown_eDXKe9FndlE(void) { + NotImplemented_nid_no_patch("eDXKe9FndlE"); + return 0; +} + } diff --git a/core/libs/prx/libSceNpPartner001/Export.cpp b/core/libs/prx/libSceNpPartner001/Export.cpp new file mode 100644 index 000000000..ef5b77a1f --- /dev/null +++ b/core/libs/prx/libSceNpPartner001/Export.cpp @@ -0,0 +1,17 @@ +#include "prx/libc/include/General.hpp" + +extern "C" { + +APS5_EXPORT("7CxI50-xlCk", sceNpPartnerUnknown_7CxI50_MxlCk); +int APS5_VABI sceNpPartnerUnknown_7CxI50_MxlCk(void) { + NotImplemented_nid_no_patch("7CxI50-xlCk"); + return 0; +} + +APS5_EXPORT("pMxXhNozUX8", sceNpPartnerUnknown_pMxXhNozUX8); +int APS5_VABI sceNpPartnerUnknown_pMxXhNozUX8(void) { + NotImplemented_nid_no_patch("pMxXhNozUX8"); + return 0; +} + +} diff --git a/core/libs/prx/libSceProprietaryVoiceChatHelperPrx/Export.cpp b/core/libs/prx/libSceProprietaryVoiceChatHelperPrx/Export.cpp new file mode 100644 index 000000000..49b35a64f --- /dev/null +++ b/core/libs/prx/libSceProprietaryVoiceChatHelperPrx/Export.cpp @@ -0,0 +1,29 @@ +#include "prx/libc/include/General.hpp" + +extern "C" { + +APS5_EXPORT("Asuucx2vvaE", sceProprietaryVoiceChatHelperUnknown_Asuucx2vvaE); +int APS5_VABI sceProprietaryVoiceChatHelperUnknown_Asuucx2vvaE(void) { + NotImplemented_nid_no_patch("Asuucx2vvaE"); + return 0; +} + +APS5_EXPORT("LDjk9ULlN34", sceProprietaryVoiceChatHelperUnknown_LDjk9ULlN34); +int APS5_VABI sceProprietaryVoiceChatHelperUnknown_LDjk9ULlN34(void) { + NotImplemented_nid_no_patch("LDjk9ULlN34"); + return 0; +} + +APS5_EXPORT("QJy6V9QAXXE", sceProprietaryVoiceChatHelperUnknown_QJy6V9QAXXE); +int APS5_VABI sceProprietaryVoiceChatHelperUnknown_QJy6V9QAXXE(void) { + NotImplemented_nid_no_patch("QJy6V9QAXXE"); + return 0; +} + +APS5_EXPORT("lrswogWNZyM", sceProprietaryVoiceChatHelperUnknown_lrswogWNZyM); +int APS5_VABI sceProprietaryVoiceChatHelperUnknown_lrswogWNZyM(void) { + NotImplemented_nid_no_patch("lrswogWNZyM"); + return 0; +} + +} diff --git a/core/libs/prx/libScePsml_debug/Export.cpp b/core/libs/prx/libScePsml_debug/Export.cpp index 2e8ee6e64..dcace7377 100644 --- a/core/libs/prx/libScePsml_debug/Export.cpp +++ b/core/libs/prx/libScePsml_debug/Export.cpp @@ -105,4 +105,58 @@ int APS5_VABI scePsmlUnknown_jEevBXmagOQ() { return 0; } +APS5_EXPORT("0GAw7SmkwII", scePsmlMfsr2Unknown_0GAw7SmkwII); +int APS5_VABI scePsmlMfsr2Unknown_0GAw7SmkwII(void) { + NotImplemented_nid_no_patch("0GAw7SmkwII"); + return 0; +} + +APS5_EXPORT("1ic5q-kdOsc", scePsmlMfsr2Unknown_1ic5q_MkdOsc); +int APS5_VABI scePsmlMfsr2Unknown_1ic5q_MkdOsc(void) { + NotImplemented_nid_no_patch("1ic5q-kdOsc"); + return 0; +} + +APS5_EXPORT("5z2gBlqxJ+0", scePsmlMfsr2Unknown_5z2gBlqxJ_P0); +int APS5_VABI scePsmlMfsr2Unknown_5z2gBlqxJ_P0(void) { + NotImplemented_nid_no_patch("5z2gBlqxJ+0"); + return 0; +} + +APS5_EXPORT("Kyy1baXgaVU", scePsmlMfsr2Unknown_Kyy1baXgaVU); +int APS5_VABI scePsmlMfsr2Unknown_Kyy1baXgaVU(void) { + NotImplemented_nid_no_patch("Kyy1baXgaVU"); + return 0; +} + +APS5_EXPORT("ZLL31lzzxr4", scePsmlMfsr2Unknown_ZLL31lzzxr4); +int APS5_VABI scePsmlMfsr2Unknown_ZLL31lzzxr4(void) { + NotImplemented_nid_no_patch("ZLL31lzzxr4"); + return 0; +} + +APS5_EXPORT("gMduXCLYrNg", scePsmlMfsr2Unknown_gMduXCLYrNg); +int APS5_VABI scePsmlMfsr2Unknown_gMduXCLYrNg(void) { + NotImplemented_nid_no_patch("gMduXCLYrNg"); + return 0; +} + +APS5_EXPORT("lrJwpLjKXRc", scePsmlMfsr2Unknown_lrJwpLjKXRc); +int APS5_VABI scePsmlMfsr2Unknown_lrJwpLjKXRc(void) { + NotImplemented_nid_no_patch("lrJwpLjKXRc"); + return 0; +} + +APS5_EXPORT("m9JLPc3wOQw", scePsmlMfsr2Unknown_m9JLPc3wOQw); +int APS5_VABI scePsmlMfsr2Unknown_m9JLPc3wOQw(void) { + NotImplemented_nid_no_patch("m9JLPc3wOQw"); + return 0; +} + +APS5_EXPORT("o+NM86gEwFE", scePsmlMfsr2Unknown_o_PNM86gEwFE); +int APS5_VABI scePsmlMfsr2Unknown_o_PNM86gEwFE(void) { + NotImplemented_nid_no_patch("o+NM86gEwFE"); + return 0; +} + } diff --git a/core/libs/prx/libSceVoice/Export.cpp b/core/libs/prx/libSceVoice/Export.cpp index 0f824d139..f689bd624 100644 --- a/core/libs/prx/libSceVoice/Export.cpp +++ b/core/libs/prx/libSceVoice/Export.cpp @@ -209,4 +209,28 @@ int APS5_VABI sceVoiceSetMuteFlag() { return 0; } +APS5_EXPORT("Z6QV6j7igvE", sceVoiceUnknown_Z6QV6j7igvE); +int APS5_VABI sceVoiceUnknown_Z6QV6j7igvE(void) { + NotImplemented_nid_no_patch("Z6QV6j7igvE"); + return 0; +} + +APS5_EXPORT("lLkJVewQK68", sceVoiceUnknown_lLkJVewQK68); +int APS5_VABI sceVoiceUnknown_lLkJVewQK68(void) { + NotImplemented_nid_no_patch("lLkJVewQK68"); + return 0; +} + +APS5_EXPORT("udAxvCePkUs", sceVoiceUnknown_udAxvCePkUs); +int APS5_VABI sceVoiceUnknown_udAxvCePkUs(void) { + NotImplemented_nid_no_patch("udAxvCePkUs"); + return 0; +} + +APS5_EXPORT("xHSNCLrQq3A", sceVoiceUnknown_xHSNCLrQq3A); +int APS5_VABI sceVoiceUnknown_xHSNCLrQq3A(void) { + NotImplemented_nid_no_patch("xHSNCLrQq3A"); + return 0; +} + } diff --git a/core/libs/prx/libkernel/Pthread/Posix/Thread.cpp b/core/libs/prx/libkernel/Pthread/Posix/Thread.cpp index b2281ac47..ca9308012 100644 --- a/core/libs/prx/libkernel/Pthread/Posix/Thread.cpp +++ b/core/libs/prx/libkernel/Pthread/Posix/Thread.cpp @@ -97,4 +97,10 @@ void APS5_VABI pthread_yield_nid_postfix(void) { std::this_thread::yield(); } +APS5_EXPORT("0wu33hunNdE", posixUnknown_0wu33hunNdE); +int APS5_VABI posixUnknown_0wu33hunNdE(void) { + NotImplemented_nid_no_patch("0wu33hunNdE"); + return 0; +} + } diff --git a/docs/dev/TechnicalDebt.md b/docs/dev/TechnicalDebt.md index 99abb9b7e..732e31113 100644 --- a/docs/dev/TechnicalDebt.md +++ b/docs/dev/TechnicalDebt.md @@ -30,6 +30,18 @@ Throughout the project, every function at every stage either **does exactly what ### Unknown function info +- [iE8trxPKnAg](../../core/libs/prx/libSceAudioOut/src/AudioOut2System.cpp) (libSceAudioOut2) - unknown names and signatures, imported by PPSA23566; declared without parameters +- [S-Gni2KIJRY](../../core/libs/prx/libSceConvertKeycode/Export.cpp) (libSceConvertKeycode) - unknown names and signatures, imported by PPSA23566; declared without parameters +- [JBN6N-EY+3M, Kh6bS2HQKbo, U5ExQGyyx9s, h9wmFZX4i-4](../../core/libs/prx/libSceHttp/Export.cpp) (libSceHttp) - unknown names and signatures, imported by PPSA23566; declared without parameters +- [FIjXN2TkuTs, i-XwZjw0OOY](../../core/libs/prx/libSceJson2/Export.cpp) (libSceJson2) - unknown names and signatures, imported by PPSA23566; declared without parameters +- [AzqoBha7js4](../../core/libs/prx/libSceNet/Export.cpp) (libSceNet) - unknown names and signatures, imported by PPSA23566; declared without parameters +- [IXmfUaze9So](../../core/libs/prx/libSceNpCommerce/Export.cpp) (libSceNpCommerce) - unknown names and signatures, imported by PPSA23566; declared without parameters +- [eDXKe9FndlE](../../core/libs/prx/libSceNpEntitlementAccess/Export.cpp) (libSceNpEntitlementAccessPft) - unknown names and signatures, imported by PPSA23566; declared without parameters +- [7CxI50-xlCk, pMxXhNozUX8](../../core/libs/prx/libSceNpPartner001/Export.cpp) (libSceNpPartner001) - unknown names and signatures, imported by PPSA23566; declared without parameters +- [Asuucx2vvaE, LDjk9ULlN34, QJy6V9QAXXE, lrswogWNZyM](../../core/libs/prx/libSceProprietaryVoiceChatHelperPrx/Export.cpp) (libSceProprietaryVoiceChatHelper) - unknown names and signatures, imported by PPSA23566; declared without parameters +- [0GAw7SmkwII, 1ic5q-kdOsc, 5z2gBlqxJ+0, Kyy1baXgaVU, ZLL31lzzxr4, gMduXCLYrNg, lrJwpLjKXRc, m9JLPc3wOQw, o+NM86gEwFE](../../core/libs/prx/libScePsml_debug/Export.cpp) (libScePsml_mfsr2) - unknown names and signatures, imported by PPSA23566; declared without parameters +- [Z6QV6j7igvE, lLkJVewQK68, udAxvCePkUs, xHSNCLrQq3A](../../core/libs/prx/libSceVoice/Export.cpp) (libSceVoice) - unknown names and signatures, imported by PPSA23566; declared without parameters +- [0wu33hunNdE](../../core/libs/prx/libkernel/Pthread/Posix/Thread.cpp) (libScePosix) - unknown names and signatures, imported by PPSA23566; declared without parameters - [sceAvPlayerAddSource](../../core/libs/prx/libSceAvPlayer/src/Source.cpp) (libSceAvPlayer) - requests up to 4 additional decode-ahead video framebuffers from the memory replacement beyond `num_output_video_framebuffers` when memory is available; the console's internal buffering behaviour is unknown - [sceVideoOutRegisterBuffers2](../../core/libs/prx/libSceVideoOut/src/Buffer.cpp) (libSceVideoOut) - buffer option 8 (STRICT_COLORIMETRY) is presented as option 0, with the stored values unchanged; what the console changes for it is unknown. Only options 0 and 8 are accepted - [sceVideoOutRegisterBuffers2](../../core/libs/prx/libSceVideoOut/src/Buffer.cpp) (libSceVideoOut) - DCC buffers (category 1): `dcc_control` is taken as the CB_DCC_CONTROL block layout, only bits 0x10026c are accepted; `dcc_cb_register_clear_color` as the register-clear texel, only 32-bit values are presented