Merge pull request #13048 from Celegans12/feat/mbus-inventory-exports-20261029

feat(mbus): add missing device inventory exports
This commit is contained in:
Adrià authored and GitHub committed 2026-10-30 11:42:41 +01:00
commit 2f2fbf3bfa
3 files changed
+57

No files matched your search

@@ -584,4 +584,48 @@ int APS5_VABI sceMbusUserLogout(std::int32_t userId) {
return 0;
}
int APS5_VABI sceMbusGetCurrentChatBalanceId() {
NotImplemented_nid_no_patch(__func__);
}
int APS5_VABI sceMbusGetInitialUser() {
NotImplemented_nid_no_patch(__func__);
}
int APS5_VABI sceMbusGetSimulatedBusUsableStatusByBusType2() {
NotImplemented_nid_no_patch(__func__);
}
int APS5_VABI sceMbusSetChatBalance() {
NotImplemented_nid_no_patch(__func__);
}
int APS5_VABI sceMbusSetCronosOutputMode() {
NotImplemented_nid_no_patch(__func__);
}
int APS5_VABI sceMbusSetCronosPrimaryUser() {
NotImplemented_nid_no_patch(__func__);
}
int APS5_VABI sceMbusSetHmd2SocialScreenAudioMode() {
NotImplemented_nid_no_patch(__func__);
}
int APS5_VABI sceMbusSetVibrationTriggerEffectWeakWhileEmbeddedMicInUse() {
NotImplemented_nid_no_patch(__func__);
}
int APS5_VABI sceMbusSetVolumeDownForDiscPlayerFG() {
NotImplemented_nid_no_patch(__func__);
}
int APS5_VABI sceMbusStartAudioOutScreenShare() {
NotImplemented_nid_no_patch(__func__);
}
int APS5_VABI sceMbusStopAudioOutScreenShare() {
NotImplemented_nid_no_patch(__func__);
}
}
+11
View File
@@ -188,5 +188,16 @@ int APS5_VABI sceMbusTerm();
int APS5_VABI sceMbusUnregisterDriver(std::int32_t driverId);
int APS5_VABI sceMbusUserLogin(std::int32_t userId);
int APS5_VABI sceMbusUserLogout(std::int32_t userId);
int APS5_VABI sceMbusGetCurrentChatBalanceId();
int APS5_VABI sceMbusGetInitialUser();
int APS5_VABI sceMbusGetSimulatedBusUsableStatusByBusType2();
int APS5_VABI sceMbusSetChatBalance();
int APS5_VABI sceMbusSetCronosOutputMode();
int APS5_VABI sceMbusSetCronosPrimaryUser();
int APS5_VABI sceMbusSetHmd2SocialScreenAudioMode();
int APS5_VABI sceMbusSetVibrationTriggerEffectWeakWhileEmbeddedMicInUse();
int APS5_VABI sceMbusSetVolumeDownForDiscPlayerFG();
int APS5_VABI sceMbusStartAudioOutScreenShare();
int APS5_VABI sceMbusStopAudioOutScreenShare();
}
+2
View File
@@ -6,6 +6,8 @@
### Unknown function info
- [sceMbusGetCurrentChatBalanceId, sceMbusGetInitialUser, sceMbusGetSimulatedBusUsableStatusByBusType2, sceMbusSetChatBalance, sceMbusSetCronosOutputMode, sceMbusSetCronosPrimaryUser, sceMbusSetHmd2SocialScreenAudioMode, sceMbusSetVibrationTriggerEffectWeakWhileEmbeddedMicInUse, sceMbusSetVolumeDownForDiscPlayerFG, sceMbusStartAudioOutScreenShare and sceMbusStopAudioOutScreenShare](../../../core/libs/prx/libSceMbus/PendingExports.cpp) have unknown signatures and behaviour. The parameterless `int` declarations are import-resolution placeholders, not confirmed ABI signatures, and every call throws through `NotImplemented_nid_no_patch`. Only the names and NIDs are established by the [13.60 export inventory](https://github.com/xdCloudy/PS5-13.60-Function-Stub-Library/blob/bfec40deb4c47a17d7603ee2bc79aa6862c0c56b/data/firmware-13.60/libscembus-c03d5277f5.jsonl); not measured on a console.
- [sceDeviceServiceQueryDeviceInfo_](../../../core/libs/prx/libSceMbus/Export.cpp): the 112-byte device-info layout and the third argument's meaning remain unresolved. The second argument is a six-byte HID usage filter pointer, not an integer. Initialization takes an optional 16-byte parameter structure with an optional thread configuration; custom scheduling throws because the host has no event worker. `sceDeviceServiceGetEventState` takes a clear flag, not a device type.
- [sceMbus remaining declarations](../../../core/libs/prx/libSceMbus/PendingExports.cpp): SetDeviceFunctionState takes a 64-bit device identifier and a 180-byte aggregate by value on the stack. Its service-side fields and source alignment remain unresolved; the declaration preserves the observed stack ABI with opaque storage. AcquireControlList and Term return constants without reading incoming arguments, so their original parameter lists cannot be established from the callees.