mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-10-27 00:28:14 +00:00
fix(libSceVoiceChat): declare the handler registration arguments a title passes
This commit is contained in:
1 parent
b2c7a38840
commit
8f8ecc7ef7
4 files changed
+7
-6
No files matched your search
@@ -31,8 +31,8 @@ extern "C" {
|
||||
|
||||
int APS5_VABI sceVoiceChatInitialize(void* param) { (void)param; return 0; }
|
||||
int APS5_VABI sceVoiceChatTerminate(void) { return 0; }
|
||||
int APS5_VABI sceVoiceChatRegisterHandlers(void* a) { (void)a; return 0; }
|
||||
int APS5_VABI sceVoiceChatRegisterMicEventHandler(void* a, void* b) { (void)a; (void)b; return 0; }
|
||||
int APS5_VABI sceVoiceChatRegisterHandlers(void* handlers, void* userArg) { (void)handlers; (void)userArg; return 0; }
|
||||
int APS5_VABI sceVoiceChatRegisterMicEventHandler(std::int32_t userId, void* handler, void* userArg) { (void)userId; (void)handler; (void)userArg; return 0; }
|
||||
int APS5_VABI sceVoiceChatProcessEvent(void) { return 0; }
|
||||
int APS5_VABI sceVoiceChatDeleteRequest(int requestId) { (void)requestId; return 0; }
|
||||
|
||||
|
||||
@@ -6,8 +6,8 @@ extern "C" {
|
||||
|
||||
int APS5_VABI sceVoiceChatInitialize(void* param);
|
||||
int APS5_VABI sceVoiceChatTerminate(void);
|
||||
int APS5_VABI sceVoiceChatRegisterHandlers(void* a);
|
||||
int APS5_VABI sceVoiceChatRegisterMicEventHandler(void* a, void* b);
|
||||
int APS5_VABI sceVoiceChatRegisterHandlers(void* handlers, void* userArg);
|
||||
int APS5_VABI sceVoiceChatRegisterMicEventHandler(std::int32_t userId, void* handler, void* userArg);
|
||||
int APS5_VABI sceVoiceChatProcessEvent(void);
|
||||
int APS5_VABI sceVoiceChatDeleteRequest(int requestId);
|
||||
int APS5_VABI sceVoiceChatCreateRequest(void* a, void* b);
|
||||
|
||||
@@ -22,8 +22,8 @@ int main() {
|
||||
|
||||
Require(sceVoiceChatInitialize(nullptr) == 0, "initialization failed");
|
||||
Require(sceVoiceChatProcessEvent() == 0, "event processing failed");
|
||||
Require(sceVoiceChatRegisterHandlers(nullptr) == 0, "register handlers failed");
|
||||
Require(sceVoiceChatRegisterMicEventHandler(nullptr, nullptr) == 0, "register mic event handler failed");
|
||||
Require(sceVoiceChatRegisterHandlers(nullptr, nullptr) == 0, "register handlers failed");
|
||||
Require(sceVoiceChatRegisterMicEventHandler(0, nullptr, nullptr) == 0, "register mic event handler failed");
|
||||
Require(sceVoiceChatRegisterChannelEventHandler(nullptr, nullptr) == 0, "register channel event handler failed");
|
||||
Require(sceVoiceChatUnregisterMicEventHandler(nullptr) == 0, "unregister mic event handler failed");
|
||||
Require(sceVoiceChatStartChannelEvent(nullptr) == 0, "start channel event failed");
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
### Silent stubs
|
||||
|
||||
- [sceVoiceChatAbortRequest, sceVoiceChatRegisterChannelEventHandler, sceVoiceChatRegisterDaemonEventHandler, sceVoiceChatRegisterMemberEventHandler, sceVoiceChatRegisterPartyUserStateChangedHandler, sceVoiceChatRegisterVoiceEventHandler, sceVoiceChatStartAccessibilityEvent, sceVoiceChatStartChannelEvent, sceVoiceChatStartDaemonEvent, sceVoiceChatStartMemberEvent, sceVoiceChatStartRangedMemberEvent, sceVoiceChatStartVoiceEvent, sceVoiceChatStopAccessibilityEvent, sceVoiceChatStopChannelEvent, sceVoiceChatStopDaemonEvent, sceVoiceChatStopMemberEvent, sceVoiceChatStopRangedMemberEvent, sceVoiceChatStopVoiceEvent, sceVoiceChatUnregisterAccessibilityEventHandler, sceVoiceChatUnregisterChannelEventHandler, sceVoiceChatUnregisterDaemonEventHandler, sceVoiceChatUnregisterMemberEventHandler, sceVoiceChatUnregisterMicEventHandler, sceVoiceChatUnregisterPartyUserStateChangedHandler, sceVoiceChatUnregisterRangedMemberEventHandler, sceVoiceChatUnregisterVoiceEventHandler](../../../core/libs/prx/libSceVoiceChat/Export.cpp) (libSceVoiceChat) - offline handler registration and event controls return 0 without connecting to a voice chat daemon, because the host environment does not run a PSN voice chat service; titles that register event listeners or start/stop audio capture events proceed safely without throwing
|
||||
- [sceVoiceChatRegisterHandlers and sceVoiceChatRegisterMicEventHandler](../../../core/libs/prx/libSceVoiceChat/Export.cpp) (libSceVoiceChat) - they keep no handler and return 0 without connecting to a voice chat daemon, so no handler is ever called; the handler table's layout and the handlers' prototypes are not identified. The signatures come from one disassembled title (PPSA21564 01.007.000), not from a console: it calls `sceVoiceChatRegisterHandlers` (0x2e473c) with a 0x30-byte structure of six function addresses and a user argument, then `sceVoiceChatRegisterMicEventHandler` (0x2e4751) with the 32-bit value it also passes as the user id of `sceNpWebApi2CreateUserContext`, a function address and the same user argument, and treats a negative result from either as failure
|
||||
|
||||
### Unknown function info
|
||||
|
||||
|
||||
Reference in new issue
Block a user