SceSysLibTrace: Difference between revisions
Jump to navigation
Jump to search
CelesteBlue (talk | contribs) (This module is DevKit only hence 3.73 max for now.) |
|||
(13 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
== Module == | == Module == | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Version | ! Version !! World !! Privilege | ||
|- | |- | ||
| 3. | | 0.931.010-3.730.011 || Non-secure || Kernel | ||
|} | |} | ||
Line 17: | Line 16: | ||
! Version !! Name !! World !! Visibility !! NID | ! Version !! Name !! World !! Visibility !! NID | ||
|- | |- | ||
| 0. | | 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 == | ||
=== sceSyslibtraceSetTargetSyscallLibForKernel === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.931.010-3.730.011 || 0xAB6A0C53 | |||
|} | |||
<source lang="C">int sceSyslibtraceSetTargetSyscallLibForKernel(SceNID libnid);</source> | |||
=== sceSyslibtraceClearTargetSyscallLibForKernel === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.931.010-3.730.011 || 0x7E843A85 | |||
|} | |||
<source lang="C">int sceSyslibtraceClearTargetSyscallLibForKernel(SceNID libnid);</source> | |||
=== sceSyslibtraceStartSyscallTraceForKernel === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.931.010-3.730.011 || 0x5DEF9EDF | |||
|} | |||
<source lang="C">int sceSyslibtraceStartSyscallTraceForKernel(void);</source> | |||
=== sceSyslibtraceStopSyscallTraceForKernel === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.931.010-3.730.011 || 0xDD47649F | |||
|} | |||
<source lang="C">int sceSyslibtraceStopSyscallTraceForKernel(void);</source> | |||
=== sceSyslibtraceCallbackRegisterLibsForKernel === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.931.010-3.730.011 || 0x1EDA3691 | |||
|} | |||
<source lang="C">int sceSyslibtraceCallbackRegisterLibsForKernel(int a1);</source> | |||
=== sceSyslibtraceCallbackDeregisterLibsForKernel === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.931.010-3.730.011 || 0xEA56BE7C | |||
|} | |||
<source lang="C">int sceSyslibtraceCallbackDeregisterLibsForKernel(int a1);</source> | |||
=== sceSyslibtraceCreateSyscallTraceForKernel === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.940-3.730.011 || 0xF9CB8BA9 | |||
|} | |||
This is a guessed name. | |||
<source lang="C">int sceSyslibtraceCreateSyscallTraceForKernel(void *param, int a2);</source> | |||
=== sceSyslibtraceDestroySyscallTraceForKernel === | |||
{| class="wikitable" | |||
|- | |||
! Version !! NID | |||
|- | |||
| 0.940-3.730.011 || 0xBD326721 | |||
|} | |||
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 106: | Line 196: | ||
== SceNidsymtblForDriver == | == SceNidsymtblForDriver == | ||
=== | === sceNidsymtblGetTableForDriver === | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 0. | | 0.940-3.730.011 || 0x138A9106 | ||
|} | |} | ||
This is a guessed name. | |||
<source lang="C"> | <source lang="C"> | ||
// | // Returns the number of functions in the buffer | ||
// functions_table_addr is a pointer overwritten by a pointer to SceSysLibTrace nid_symbol_table | // functions_table_addr is a pointer overwritten by a pointer to SceSysLibTrace nid_symbol_table | ||
SceUInt32 | SceUInt32 sceNidsymtblGetTableForDriver(const void **table_addr); | ||
</source> | </source> | ||
=== | === sceNidsymtblGetFunctionNameByNIDForDriver === | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Version !! NID | ! 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]]. | |||
<source lang="C">int sceNidsymtblGetFunctionNameByNIDForDriver(SceNID funcnid, const char **name);</source> | |||
[[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);