From b39686f030af58105afe7f6daa8a38a3e023d7b9 Mon Sep 17 00:00:00 2001 From: Kyon Date: Thu, 29 Oct 2026 16:22:30 +0000 Subject: [PATCH 1/2] feat(libSceCdlgUtilServer): declare 32 callable exports --- core/libs/prx/libSceCdlgUtilServer/Export.cpp | 166 ++++++++++++++++++ .../include/InventoryExports.hpp | 40 +++++ .../libSceCdlgUtilServer.hpp | 1 + docs/dev/debt/libSceCdlgUtilServer.md | 39 ++++ 4 files changed, 246 insertions(+) create mode 100644 core/libs/prx/libSceCdlgUtilServer/include/InventoryExports.hpp diff --git a/core/libs/prx/libSceCdlgUtilServer/Export.cpp b/core/libs/prx/libSceCdlgUtilServer/Export.cpp index 25cb1446d7..75b7d8a7dc 100644 --- a/core/libs/prx/libSceCdlgUtilServer/Export.cpp +++ b/core/libs/prx/libSceCdlgUtilServer/Export.cpp @@ -1,3 +1,5 @@ +#include "prx/libc/include/general/ExportMacros.hpp" +#include "prx/libSceCdlgUtilServer/include/InventoryExports.hpp" #include "prx/libSceCdlgUtilServer/include/Api.hpp" #include #include @@ -62,3 +64,167 @@ int APS5_VABI _ZNK3sce16CommonDialogUtil6Server14getServerStateEv() { } } + +extern "C" { + +int APS5_VABI libSceCdlgUtilServerUnknown_1IzIqsh2lVE_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("1IzIqsh2lVE", libSceCdlgUtilServerUnknown_1IzIqsh2lVE_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_2pswOa0ZQoQ_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("2pswOa0ZQoQ", libSceCdlgUtilServerUnknown_2pswOa0ZQoQ_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_33zrWSbHxcI_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("33zrWSbHxcI", libSceCdlgUtilServerUnknown_33zrWSbHxcI_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_56KPLy5Uc_minus_w_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("56KPLy5Uc-w", libSceCdlgUtilServerUnknown_56KPLy5Uc_minus_w_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_CK_minus_7W3zhCjk_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("CK-7W3zhCjk", libSceCdlgUtilServerUnknown_CK_minus_7W3zhCjk_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_Dv1KWHTwGeM_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("Dv1KWHTwGeM", libSceCdlgUtilServerUnknown_Dv1KWHTwGeM_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_KaTogANOP6U_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("KaTogANOP6U", libSceCdlgUtilServerUnknown_KaTogANOP6U_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_MQDTRLwdnrU_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("MQDTRLwdnrU", libSceCdlgUtilServerUnknown_MQDTRLwdnrU_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_NKhtpQTUjpY_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("NKhtpQTUjpY", libSceCdlgUtilServerUnknown_NKhtpQTUjpY_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_Pl1B1_plus_pzwLM_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("Pl1B1+pzwLM", libSceCdlgUtilServerUnknown_Pl1B1_plus_pzwLM_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_RiJYtG8H1Yk_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("RiJYtG8H1Yk", libSceCdlgUtilServerUnknown_RiJYtG8H1Yk_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_VMUTkgazl40_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("VMUTkgazl40", libSceCdlgUtilServerUnknown_VMUTkgazl40_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_VrN0lR_plus_BJyc_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("VrN0lR+BJyc", libSceCdlgUtilServerUnknown_VrN0lR_plus_BJyc_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_W4zcizD4i3I_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("W4zcizD4i3I", libSceCdlgUtilServerUnknown_W4zcizD4i3I_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_WlSxsADNweU_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("WlSxsADNweU", libSceCdlgUtilServerUnknown_WlSxsADNweU_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_YNi5ipH59bE_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("YNi5ipH59bE", libSceCdlgUtilServerUnknown_YNi5ipH59bE_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_ZRy0WQp2COs_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("ZRy0WQp2COs", libSceCdlgUtilServerUnknown_ZRy0WQp2COs_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_aFrwE9W9faU_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("aFrwE9W9faU", libSceCdlgUtilServerUnknown_aFrwE9W9faU_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_aX1ZGnOo9vg_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("aX1ZGnOo9vg", libSceCdlgUtilServerUnknown_aX1ZGnOo9vg_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_aztojjv0xT0_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("aztojjv0xT0", libSceCdlgUtilServerUnknown_aztojjv0xT0_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_dQte4n_minus_nQlg_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("dQte4n-nQlg", libSceCdlgUtilServerUnknown_dQte4n_minus_nQlg_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_e3l9WkmIjyw_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("e3l9WkmIjyw", libSceCdlgUtilServerUnknown_e3l9WkmIjyw_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_ht7qLD4xIAU_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("ht7qLD4xIAU", libSceCdlgUtilServerUnknown_ht7qLD4xIAU_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_j6vGxXgVnCQ_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("j6vGxXgVnCQ", libSceCdlgUtilServerUnknown_j6vGxXgVnCQ_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_k9wR_plus_1LoaoU_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("k9wR+1LoaoU", libSceCdlgUtilServerUnknown_k9wR_plus_1LoaoU_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_lhSjnuF2bzg_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("lhSjnuF2bzg", libSceCdlgUtilServerUnknown_lhSjnuF2bzg_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_mCWvwveN2gM_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("mCWvwveN2gM", libSceCdlgUtilServerUnknown_mCWvwveN2gM_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_qFygU3yA0HE_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("qFygU3yA0HE", libSceCdlgUtilServerUnknown_qFygU3yA0HE_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_ucY3L5rXqjs_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("ucY3L5rXqjs", libSceCdlgUtilServerUnknown_ucY3L5rXqjs_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_vfUweaM01gw_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("vfUweaM01gw", libSceCdlgUtilServerUnknown_vfUweaM01gw_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_yPspG9QpJK4_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("yPspG9QpJK4", libSceCdlgUtilServerUnknown_yPspG9QpJK4_nid_no_patch); + +int APS5_VABI libSceCdlgUtilServerUnknown_zjj3moy7KpM_nid_no_patch() { + NotImplemented_nid_no_patch(__func__); +} +APS5_EXPORT("zjj3moy7KpM", libSceCdlgUtilServerUnknown_zjj3moy7KpM_nid_no_patch); + +} diff --git a/core/libs/prx/libSceCdlgUtilServer/include/InventoryExports.hpp b/core/libs/prx/libSceCdlgUtilServer/include/InventoryExports.hpp new file mode 100644 index 0000000000..950a09c447 --- /dev/null +++ b/core/libs/prx/libSceCdlgUtilServer/include/InventoryExports.hpp @@ -0,0 +1,40 @@ +#pragma once + +#include "SceTypes.hpp" + +extern "C" { + +int APS5_VABI libSceCdlgUtilServerUnknown_1IzIqsh2lVE_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_2pswOa0ZQoQ_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_33zrWSbHxcI_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_56KPLy5Uc_minus_w_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_CK_minus_7W3zhCjk_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_Dv1KWHTwGeM_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_KaTogANOP6U_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_MQDTRLwdnrU_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_NKhtpQTUjpY_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_Pl1B1_plus_pzwLM_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_RiJYtG8H1Yk_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_VMUTkgazl40_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_VrN0lR_plus_BJyc_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_W4zcizD4i3I_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_WlSxsADNweU_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_YNi5ipH59bE_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_ZRy0WQp2COs_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_aFrwE9W9faU_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_aX1ZGnOo9vg_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_aztojjv0xT0_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_dQte4n_minus_nQlg_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_e3l9WkmIjyw_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_ht7qLD4xIAU_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_j6vGxXgVnCQ_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_k9wR_plus_1LoaoU_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_lhSjnuF2bzg_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_mCWvwveN2gM_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_qFygU3yA0HE_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_ucY3L5rXqjs_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_vfUweaM01gw_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_yPspG9QpJK4_nid_no_patch(); +int APS5_VABI libSceCdlgUtilServerUnknown_zjj3moy7KpM_nid_no_patch(); + +} diff --git a/core/libs/prx/libSceCdlgUtilServer/libSceCdlgUtilServer.hpp b/core/libs/prx/libSceCdlgUtilServer/libSceCdlgUtilServer.hpp index 29b94d8e37..93ed41ac0d 100644 --- a/core/libs/prx/libSceCdlgUtilServer/libSceCdlgUtilServer.hpp +++ b/core/libs/prx/libSceCdlgUtilServer/libSceCdlgUtilServer.hpp @@ -1,3 +1,4 @@ #pragma once #include "prx/libSceCdlgUtilServer/include/Api.hpp" +#include "prx/libSceCdlgUtilServer/include/InventoryExports.hpp" diff --git a/docs/dev/debt/libSceCdlgUtilServer.md b/docs/dev/debt/libSceCdlgUtilServer.md index c6a2a8990a..b607bcec5d 100644 --- a/docs/dev/debt/libSceCdlgUtilServer.md +++ b/docs/dev/debt/libSceCdlgUtilServer.md @@ -5,3 +5,42 @@ - [_ZN3sce16CommonDialogUtil6Server13setFinishDataEPvm, _ZN3sce16CommonDialogUtil6Server6setRunEPvm, _ZN3sce16CommonDialogUtil6Server9setFinishEv, _ZN3sce16CommonDialogUtil6Server9setResultEi, _ZN3sce16CommonDialogUtil6ServerC2EPKcmmis](../../../core/libs/prx/libSceCdlgUtilServer/Export.cpp) - names and NIDs match the [PS5 3.20 inventory](https://github.com/DNNDHH/PS5-3.20_Libs/blob/b2a77c09cd71c01f34c790cfbe98c751a13262ad/libSceCdlgUtilServer.c); signatures and behavior are unverified. No-parameter declarations resolve imports and throw through `NotImplemented_nid_no_patch` when called. - [_ZN3sce16CommonDialogUtil6ServerD0Ev, _ZN3sce16CommonDialogUtil6ServerD1Ev, _ZN3sce16CommonDialogUtil6ServerD2Ev, _ZNK3sce16CommonDialogUtil6Server10getVersionERj, _ZNK3sce16CommonDialogUtil6Server10isCloseReqEv](../../../core/libs/prx/libSceCdlgUtilServer/Export.cpp) - names and NIDs match the [PS5 3.20 inventory](https://github.com/DNNDHH/PS5-3.20_Libs/blob/b2a77c09cd71c01f34c790cfbe98c751a13262ad/libSceCdlgUtilServer.c); signatures and behavior are unverified. No-parameter declarations resolve imports and throw through `NotImplemented_nid_no_patch` when called. - [_ZNK3sce16CommonDialogUtil6Server14getServerStateEv](../../../core/libs/prx/libSceCdlgUtilServer/Export.cpp) - names and NIDs match the [PS5 3.20 inventory](https://github.com/DNNDHH/PS5-3.20_Libs/blob/b2a77c09cd71c01f34c790cfbe98c751a13262ad/libSceCdlgUtilServer.c); signatures and behavior are unverified. No-parameter declarations resolve imports and throw through `NotImplemented_nid_no_patch` when called. + +### Additional callable exports + +- [Additional callable exports](../../../core/libs/prx/libSceCdlgUtilServer/Export.cpp) - 32 entries observed in the 3.20 export inventory and present in the later 13.60-labelled inventory are import-resolution declarations only. The later inventory label does not authenticate a retail firmware version. 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. One data export is outside this callable inventory and requires separate layout and ownership analysis. 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` | `1IzIqsh2lVE` | +| `Unknown` | `2pswOa0ZQoQ` | +| `Unknown` | `33zrWSbHxcI` | +| `Unknown` | `56KPLy5Uc-w` | +| `Unknown` | `CK-7W3zhCjk` | +| `Unknown` | `Dv1KWHTwGeM` | +| `Unknown` | `KaTogANOP6U` | +| `Unknown` | `MQDTRLwdnrU` | +| `Unknown` | `NKhtpQTUjpY` | +| `Unknown` | `Pl1B1+pzwLM` | +| `Unknown` | `RiJYtG8H1Yk` | +| `Unknown` | `VMUTkgazl40` | +| `Unknown` | `VrN0lR+BJyc` | +| `Unknown` | `W4zcizD4i3I` | +| `Unknown` | `WlSxsADNweU` | +| `Unknown` | `YNi5ipH59bE` | +| `Unknown` | `ZRy0WQp2COs` | +| `Unknown` | `aFrwE9W9faU` | +| `Unknown` | `aX1ZGnOo9vg` | +| `Unknown` | `aztojjv0xT0` | +| `Unknown` | `dQte4n-nQlg` | +| `Unknown` | `e3l9WkmIjyw` | +| `Unknown` | `ht7qLD4xIAU` | +| `Unknown` | `j6vGxXgVnCQ` | +| `Unknown` | `k9wR+1LoaoU` | +| `Unknown` | `lhSjnuF2bzg` | +| `Unknown` | `mCWvwveN2gM` | +| `Unknown` | `qFygU3yA0HE` | +| `Unknown` | `ucY3L5rXqjs` | +| `Unknown` | `vfUweaM01gw` | +| `Unknown` | `yPspG9QpJK4` | +| `Unknown` | `zjj3moy7KpM` | From d3e101a54d8f8995a106d42bfbff5b0b36c5d931 Mon Sep 17 00:00:00 2001 From: Kyon Date: Fri, 30 Oct 2026 06:16:08 +0000 Subject: [PATCH 2/2] docs(libSceCdlgUtilServer): clarify export evidence --- docs/dev/debt/libSceCdlgUtilServer.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/dev/debt/libSceCdlgUtilServer.md b/docs/dev/debt/libSceCdlgUtilServer.md index b607bcec5d..ccff940e1c 100644 --- a/docs/dev/debt/libSceCdlgUtilServer.md +++ b/docs/dev/debt/libSceCdlgUtilServer.md @@ -8,7 +8,7 @@ ### Additional callable exports -- [Additional callable exports](../../../core/libs/prx/libSceCdlgUtilServer/Export.cpp) - 32 entries observed in the 3.20 export inventory and present in the later 13.60-labelled inventory are import-resolution declarations only. The later inventory label does not authenticate a retail firmware version. 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. One data export is outside this callable inventory and requires separate layout and ownership analysis. 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). +- [Additional callable exports](../../../core/libs/prx/libSceCdlgUtilServer/Export.cpp) - 32 entries present in both version-labelled images are import-resolution declarations only. None is listed in the pinned public 3.20 catalogue for this library. 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`. Unknown names use literal NID aliases. One data export is outside this callable inventory and requires separate layout and ownership analysis. 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 | | --- | --- |