feat(libSceVrTracker): declare 9 callable exports

This commit is contained in:
Kyon committed 2026-10-30 07:18:32 +00:00
1 parent f7f03daf52
commit 19d0401c51
4 files changed
+85

No files matched your search

+51
View File
@@ -1,3 +1,5 @@
#include "prx/libc/include/general/ExportMacros.hpp"
#include "prx/libSceVrTracker/include/InventoryExports.hpp"
#include "prx/libSceVrTracker/include/Api.hpp"
#include <atomic>
#include <mutex>
@@ -228,3 +230,52 @@ int APS5_VABI sceVrTrackerUpdateMotionSensorData(const void* param) {
}
}
extern "C" {
int APS5_VABI libSceVrTrackerUnknown_5ucmy8hcSPk_nid_no_patch() {
NotImplemented_nid_no_patch(__func__);
}
APS5_EXPORT("5ucmy8hcSPk", libSceVrTrackerUnknown_5ucmy8hcSPk_nid_no_patch);
int APS5_VABI libSceVrTrackerUnknown_9kB_plus_RsZt84M_nid_no_patch() {
NotImplemented_nid_no_patch(__func__);
}
APS5_EXPORT("9kB+RsZt84M", libSceVrTrackerUnknown_9kB_plus_RsZt84M_nid_no_patch);
int APS5_VABI libSceVrTrackerUnknown_D6TJSfjTAk4_nid_no_patch() {
NotImplemented_nid_no_patch(__func__);
}
APS5_EXPORT("D6TJSfjTAk4", libSceVrTrackerUnknown_D6TJSfjTAk4_nid_no_patch);
int APS5_VABI libSceVrTrackerUnknown_ERmwvjmfN_plus_c_nid_no_patch() {
NotImplemented_nid_no_patch(__func__);
}
APS5_EXPORT("ERmwvjmfN+c", libSceVrTrackerUnknown_ERmwvjmfN_plus_c_nid_no_patch);
int APS5_VABI libSceVrTrackerUnknown_KFxq_minus_AnEL34_nid_no_patch() {
NotImplemented_nid_no_patch(__func__);
}
APS5_EXPORT("KFxq-AnEL34", libSceVrTrackerUnknown_KFxq_minus_AnEL34_nid_no_patch);
int APS5_VABI libSceVrTrackerUnknown_SSi0OBa8RA0_nid_no_patch() {
NotImplemented_nid_no_patch(__func__);
}
APS5_EXPORT("SSi0OBa8RA0", libSceVrTrackerUnknown_SSi0OBa8RA0_nid_no_patch);
int APS5_VABI libSceVrTrackerUnknown_hj7zLvyw_plus_pw_nid_no_patch() {
NotImplemented_nid_no_patch(__func__);
}
APS5_EXPORT("hj7zLvyw+pw", libSceVrTrackerUnknown_hj7zLvyw_plus_pw_nid_no_patch);
int APS5_VABI libSceVrTrackerUnknown_mmzbIQNmT4o_nid_no_patch() {
NotImplemented_nid_no_patch(__func__);
}
APS5_EXPORT("mmzbIQNmT4o", libSceVrTrackerUnknown_mmzbIQNmT4o_nid_no_patch);
int APS5_VABI libSceVrTrackerUnknown_tNJrfYsY3wY_nid_no_patch() {
NotImplemented_nid_no_patch(__func__);
}
APS5_EXPORT("tNJrfYsY3wY", libSceVrTrackerUnknown_tNJrfYsY3wY_nid_no_patch);
}
@@ -0,0 +1,17 @@
#pragma once
#include "SceTypes.hpp"
extern "C" {
int APS5_VABI libSceVrTrackerUnknown_5ucmy8hcSPk_nid_no_patch();
int APS5_VABI libSceVrTrackerUnknown_9kB_plus_RsZt84M_nid_no_patch();
int APS5_VABI libSceVrTrackerUnknown_D6TJSfjTAk4_nid_no_patch();
int APS5_VABI libSceVrTrackerUnknown_ERmwvjmfN_plus_c_nid_no_patch();
int APS5_VABI libSceVrTrackerUnknown_KFxq_minus_AnEL34_nid_no_patch();
int APS5_VABI libSceVrTrackerUnknown_SSi0OBa8RA0_nid_no_patch();
int APS5_VABI libSceVrTrackerUnknown_hj7zLvyw_plus_pw_nid_no_patch();
int APS5_VABI libSceVrTrackerUnknown_mmzbIQNmT4o_nid_no_patch();
int APS5_VABI libSceVrTrackerUnknown_tNJrfYsY3wY_nid_no_patch();
}
@@ -1,3 +1,4 @@
#pragma once
#include "prx/libSceVrTracker/include/Api.hpp"
#include "prx/libSceVrTracker/include/InventoryExports.hpp"
+16
View File
@@ -11,3 +11,19 @@
### Functional
- [tracker lifecycle and devices](../../../core/libs/prx/libSceVrTracker/Export.cpp) (libSceVrTracker) - `sceVrTrackerQueryMemory`, `sceVrTrackerInit`, `sceVrTrackerTerm`, the three `sceVrTrackerRegisterDevice*` calls, `sceVrTrackerUnregisterDevice`, `sceVrTrackerRecalibrate`, `sceVrTrackerSetDurationUntilStatusNotTracking` and `sceVrTrackerGpuWaitAndCpuProcess` follow [shadPS4](https://github.com/shadps4-emu/shadPS4/blob/a808e76/src/core/libraries/vr_tracker/vr_tracker.cpp), a PS4 implementation: its struct layouts, memory sizes, argument checks, one handle per device type and `DEVICE_NOT_REGISTERED` for an HMD recalibration. Only the 128-byte init parameter is read; the 144-byte one throws. Unlike shadPS4, the init memory ranges are not looked up, a null init parameter and negative device types are refused. Terminating keeps the registered handles, as there. With no camera there is no GPU submission, so the GPU wait returns `NOT_EXECUTE_GPU_SUBMIT`. Not measured on a PS5
### Additional callable exports
- [Additional callable exports](../../../core/libs/prx/libSceVrTracker/Export.cpp) - 9 entries present in both version-labelled images are import-resolution declarations only. All belong to module `libSceVrTracker`; four have logical library `libSceVrTracker` and five have logical library `libSceVrTrackerGpuTest`. Neither label independently authenticates retail firmware provenance. Parameter lists, return types and behavior are unverified; parameterless `int` declarations are placeholders, not verified ABI contracts. Every entry throws through `NotImplemented_nid_no_patch`. Unidentified names use literal NID aliases. No runtime functionality is implemented. Identified candidate names match their NIDs in the [public symbol database](https://github.com/zecoxao/sce_symbols/blob/2883963a0a514ba6e77407a08ef4730a65e88254/aerolib.csv) or [supplemental catalog](https://github.com/claimore22/ps5rs/blob/2304be5131221bae0dac24b9767cabffda33f747/data/nids.csv).
| Name | NID |
| --- | --- |
| `Unknown` | `5ucmy8hcSPk` |
| `Unknown` | `9kB+RsZt84M` |
| `Unknown` | `D6TJSfjTAk4` |
| `Unknown` | `ERmwvjmfN+c` |
| `Unknown` | `KFxq-AnEL34` |
| `Unknown` | `SSi0OBa8RA0` |
| `Unknown` | `hj7zLvyw+pw` |
| `Unknown` | `mmzbIQNmT4o` |
| `Unknown` | `tNJrfYsY3wY` |