SceSysLibTrace: Difference between revisions
Jump to navigation
Jump to search
CelesteBlue (talk | contribs) (This module is DevKit only hence 3.73 max for now.) |
|||
(7 intermediate revisions by 2 users not shown) | |||
Line 5: | Line 5: | ||
! Version !! World !! Privilege | ! Version !! World !! Privilege | ||
|- | |- | ||
| 0. | | 0.931.010-3.730.011 || Non-secure || Kernel | ||
|} | |} | ||
Line 18: | Line 18: | ||
| 0.940-0.990 || [[SceSysLibTrace#SceSyslibtrace|SceSyslibtrace]] || Non-secure || User || 0x696ED3DB | | 0.940-0.990 || [[SceSysLibTrace#SceSyslibtrace|SceSyslibtrace]] || Non-secure || User || 0x696ED3DB | ||
|- | |- | ||
| 0. | | 0.931.010-3.730.011 || [[SceSysLibTrace#SceSyslibtraceForKernel|SceSyslibtraceForKernel]] || Non-secure || Kernel || 0x9D33EE8D | ||
|- | |- | ||
| 0. | | 0.931.010-3.730.011 || [[SceSysLibTrace#SceNidsymtblForDriver|SceNidsymtblForDriver]] || Non-secure || Kernel || 0x3F9BEA99 | ||
|} | |} | ||
== Internal types == | |||
<source lang="C"> | |||
typedef struct SceSysLibTraceTable { // size is 0x18-bytes | |||
ScePVoid entry; | |||
SceNID libnid; | |||
SceNID entnid; | |||
SceUInt32 syscall_index; | |||
SceUInt32 data_0x10; // from LibEnt->data_0x24 | |||
SceUInt32 data_0x14; // from LibEnt->data_0x28 | |||
} SceSysLibTraceTable; | |||
</source> | |||
== SceSyslibtraceForKernel == | == SceSyslibtraceForKernel == | ||
Line 30: | Line 43: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.931- | | 0.931.010-3.730.011 || 0xAB6A0C53 | ||
|} | |} | ||
Line 40: | Line 53: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.931- | | 0.931.010-3.730.011 || 0x7E843A85 | ||
|} | |} | ||
Line 50: | Line 63: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.931- | | 0.931.010-3.730.011 || 0x5DEF9EDF | ||
|} | |} | ||
<source lang="C">int sceSyslibtraceStartSyscallTraceForKernel(void);</source> | |||
=== sceSyslibtraceStopSyscallTraceForKernel === | === sceSyslibtraceStopSyscallTraceForKernel === | ||
Line 58: | Line 73: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.931- | | 0.931.010-3.730.011 || 0xDD47649F | ||
|} | |} | ||
<source lang="C">int sceSyslibtraceStopSyscallTraceForKernel(void);</source> | |||
=== sceSyslibtraceCallbackRegisterLibsForKernel === | === sceSyslibtraceCallbackRegisterLibsForKernel === | ||
Line 66: | Line 83: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.931- | | 0.931.010-3.730.011 || 0x1EDA3691 | ||
|} | |} | ||
<source lang="C">int sceSyslibtraceCallbackRegisterLibsForKernel(int a1);</source> | |||
=== sceSyslibtraceCallbackDeregisterLibsForKernel === | === sceSyslibtraceCallbackDeregisterLibsForKernel === | ||
Line 74: | Line 93: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.931- | | 0.931.010-3.730.011 || 0xEA56BE7C | ||
|} | |} | ||
<source lang="C">int sceSyslibtraceCallbackDeregisterLibsForKernel(int a1);</source> | |||
=== sceSyslibtraceCreateSyscallTraceForKernel === | === sceSyslibtraceCreateSyscallTraceForKernel === | ||
Line 82: | Line 103: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.940 || 0xF9CB8BA9 | | 0.940-3.730.011 || 0xF9CB8BA9 | ||
|} | |} | ||
This is a guessed name. | This is a guessed name. | ||
<source lang="C">int sceSyslibtraceCreateSyscallTraceForKernel(void *param, int a2);</source> | |||
=== sceSyslibtraceDestroySyscallTraceForKernel === | === sceSyslibtraceDestroySyscallTraceForKernel === | ||
Line 92: | Line 115: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.940 || 0xBD326721 | | 0.940-3.730.011 || 0xBD326721 | ||
|} | |} | ||
This is a guessed name. | This is a guessed name. | ||
<source lang="C">int sceSyslibtraceDestroySyscallTraceForKernel(int a1);</source> | |||
=== sceSyslibtraceGetSyscallNIDForKernel === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.931.010-2.12 || not present | |||
|- | |||
| 2.500.071-3.730.011 || 0x7CC73CDA | |||
|} | |||
This is a guessed name. | |||
<source lang="C">int sceSyslibtraceGetSyscallNIDForKernel(SceUInt32 syscall, SceNID *dst);</source> | |||
== SceSyslibtrace == | == SceSyslibtrace == | ||
Line 165: | Line 201: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.940-3. | | 0.940-3.730.011 || 0x138A9106 | ||
|} | |} | ||
Line 181: | Line 217: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0.931- | | 0.931.010-1.692.000 || not present | ||
|- | |- | ||
| | | 1.800.071-3.730.011 || 0x985E2935 | ||
|} | |} | ||
Line 193: | Line 229: | ||
[[Category:ARM]] | |||
[[Category:Kernel]] | |||
[[Category:Modules]] | [[Category:Modules]] | ||
[[Category: | [[Category:Library]] |
Latest revision as of 19:03, 14 June 2023
Module
Version | World | Privilege |
---|---|---|
0.931.010-3.730.011 | Non-secure | Kernel |
Libraries
Known NIDs
Version | Name | World | Visibility | NID |
---|---|---|---|---|
0.940-0.990 | SceSyslibtrace | Non-secure | User | 0x696ED3DB |
0.931.010-3.730.011 | SceSyslibtraceForKernel | Non-secure | Kernel | 0x9D33EE8D |
0.931.010-3.730.011 | SceNidsymtblForDriver | Non-secure | Kernel | 0x3F9BEA99 |
Internal types
typedef struct SceSysLibTraceTable { // size is 0x18-bytes ScePVoid entry; SceNID libnid; SceNID entnid; SceUInt32 syscall_index; SceUInt32 data_0x10; // from LibEnt->data_0x24 SceUInt32 data_0x14; // from LibEnt->data_0x28 } SceSysLibTraceTable;
SceSyslibtraceForKernel
sceSyslibtraceSetTargetSyscallLibForKernel
Version | NID |
---|---|
0.931.010-3.730.011 | 0xAB6A0C53 |
int sceSyslibtraceSetTargetSyscallLibForKernel(SceNID libnid);
sceSyslibtraceClearTargetSyscallLibForKernel
Version | NID |
---|---|
0.931.010-3.730.011 | 0x7E843A85 |
int sceSyslibtraceClearTargetSyscallLibForKernel(SceNID libnid);
sceSyslibtraceStartSyscallTraceForKernel
Version | NID |
---|---|
0.931.010-3.730.011 | 0x5DEF9EDF |
int sceSyslibtraceStartSyscallTraceForKernel(void);
sceSyslibtraceStopSyscallTraceForKernel
Version | NID |
---|---|
0.931.010-3.730.011 | 0xDD47649F |
int sceSyslibtraceStopSyscallTraceForKernel(void);
sceSyslibtraceCallbackRegisterLibsForKernel
Version | NID |
---|---|
0.931.010-3.730.011 | 0x1EDA3691 |
int sceSyslibtraceCallbackRegisterLibsForKernel(int a1);
sceSyslibtraceCallbackDeregisterLibsForKernel
Version | NID |
---|---|
0.931.010-3.730.011 | 0xEA56BE7C |
int sceSyslibtraceCallbackDeregisterLibsForKernel(int a1);
sceSyslibtraceCreateSyscallTraceForKernel
Version | NID |
---|---|
0.940-3.730.011 | 0xF9CB8BA9 |
This is a guessed name.
int sceSyslibtraceCreateSyscallTraceForKernel(void *param, int a2);
sceSyslibtraceDestroySyscallTraceForKernel
Version | NID |
---|---|
0.940-3.730.011 | 0xBD326721 |
This is a guessed name.
int sceSyslibtraceDestroySyscallTraceForKernel(int a1);
sceSyslibtraceGetSyscallNIDForKernel
Version | NID |
---|---|
0.931.010-2.12 | not present |
2.500.071-3.730.011 | 0x7CC73CDA |
This is a guessed name.
int sceSyslibtraceGetSyscallNIDForKernel(SceUInt32 syscall, SceNID *dst);
SceSyslibtrace
_sceSyslibtraceClearInfo
Version | NID |
---|---|
0.940-0.990 | 0xA92D1FD0 |
_sceSyslibtraceClearTargetLib
Version | NID |
---|---|
0.940-0.990 | 0xC3A9F28D |
_sceSyslibtraceKttyWrite
Version | NID |
---|---|
0.940-0.990 | 0xE4458A16 |
_sceSyslibtraceRegisterInfo
Version | NID |
---|---|
0.940-0.990 | 0x96B1409F |
_sceSyslibtraceSetTargetLib
Version | NID |
---|---|
0.940-0.990 | 0x303152C8 |
_sceSyslibtraceStartTrace
Version | NID |
---|---|
0.940-0.990 | 0x61A80614 |
_sceSyslibtraceStopTrace
Version | NID |
---|---|
0.940-0.990 | 0x1D534834 |
SceNidsymtblForDriver
sceNidsymtblGetTableForDriver
Version | NID |
---|---|
0.940-3.730.011 | 0x138A9106 |
This is a guessed name.
// Returns the number of functions in the buffer // functions_table_addr is a pointer overwritten by a pointer to SceSysLibTrace nid_symbol_table SceUInt32 sceNidsymtblGetTableForDriver(const void **table_addr);
sceNidsymtblGetFunctionNameByNIDForDriver
Version | NID |
---|---|
0.931.010-1.692.000 | not present |
1.800.071-3.730.011 | 0x985E2935 |
This is a guessed name.
This function is registered using SceSysmem#sceKernelSysrootSetGetFunctionNameByNIDFuncForKernel.
int sceNidsymtblGetFunctionNameByNIDForDriver(SceNID funcnid, const char **name);