SceFios2Kernel: Difference between revisions
CelesteBlue (talk | contribs) |
CelesteBlue (talk | contribs) No edit summary |
||
(40 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
FIOS sits on top of filesystem and provides the following functionality: | |||
* Schedule I/O requests - queue I/O operations, prioritize I/O operations, delayed (scheduled for specific time) async I/O operations, parallelized I/O operations. | |||
* Overlays - remap I/O operations to different location. Good example is patches or localization. | |||
* Caching - caching layer for I/O operations. I/O operations are split into chunks. Chunks can be cached in RAM. Performance can increase. | |||
* Dearchiving - transparent filter for I/O operations that dearchives data. Good usage would be for psarc files. | |||
Most of these functionalities are implemented in usermode in the <code>fios2.suprx</code> module. | |||
This kernel module is only used for overlays, so that the kernel, especially [[SceIofilemgr]], is aware of FIOS2 remapping. | |||
== Module == | == Module == | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Version | ! Version !! World !! Privilege | ||
|- | |- | ||
| 3.60 || | | 1.69-3.60 || Non-secure || Kernel | ||
|} | |} | ||
Line 19: | Line 27: | ||
! Version !! Name !! World !! Visibility !! NID | ! Version !! Name !! World !! Visibility !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || [[SceFios2Kernel#SceFios2KernelForDriver|SceFios2KernelForDriver]] || Non-secure || Kernel || 0x54D6B9EB | ||
|- | |- | ||
| 1.69 || [[SceFios2Kernel#SceFios2Kernel|SceFios2Kernel]] || Non-secure || User || 0x8757B742 | | 1.69-3.60 || [[SceFios2Kernel#SceFios2Kernel|SceFios2Kernel]] || Non-secure || User || 0x8757B742 | ||
|- | |- | ||
| 3.60 || [[SceFios2Kernel#SceFios2Kernel02|SceFios2Kernel02]] || Non-secure || ? || 0xE83E40A6 | |||
| 3.60 || [[SceFios2Kernel#SceFios2Kernel02|SceFios2Kernel02]] || | |||
|} | |} | ||
== Types == | |||
<source lang="C"> | |||
typedef int32_t SceFiosOverlayID; | |||
typedef struct SceFiosOverlay { | |||
uint8_t type; | |||
uint8_t order; | |||
uint16_t dst_len; | |||
uint16_t src_len; | |||
uint16_t unk2; | |||
SceUID pid; | |||
SceFiosOverlayID id; | |||
char dst[292]; | |||
char src[292]; // src path replaces dst path based on type policy | |||
} SceFiosOverlay; | |||
</source> | |||
== SceFios2KernelForDriver == | == SceFios2KernelForDriver == | ||
Line 40: | Line 62: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayAdd </code> | derived from <code>_sceFiosKernelOverlayAdd</code> | ||
=== sceFiosKernelOverlayAddForProcessForDriver === | === sceFiosKernelOverlayAddForProcessForDriver === | ||
Line 50: | Line 72: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayAddForProcess </code> | derived from <code>_sceFiosKernelOverlayAddForProcess</code> | ||
<source lang="c">int sceFiosKernelOverlayAddForProcessForDriver( | <source lang="c"> | ||
int sceFiosKernelOverlayAddForProcessForDriver(SceUID pid, SceFiosOverlay *overlay, SceFiosOverlayID *outID); | |||
</source> | |||
=== sceFiosKernelOverlayGetInfoForDriver === | === sceFiosKernelOverlayGetInfoForDriver === | ||
Line 62: | Line 86: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayGetInfo </code> | derived from <code>_sceFiosKernelOverlayGetInfo</code> | ||
=== sceFiosKernelOverlayGetInfoForProcessForDriver === | === sceFiosKernelOverlayGetInfoForProcessForDriver === | ||
Line 72: | Line 96: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayGetInfoForProcess </code> | derived from <code>_sceFiosKernelOverlayGetInfoForProcess</code> | ||
<source lang="c"> | |||
int sceFiosKernelOverlayGetInfoForProcessForDriver(SceUID pid, SceFiosOverlayID id, SceFiosOverlay *overla); | |||
</source> | |||
=== sceFiosKernelOverlayGetListForDriver === | === sceFiosKernelOverlayGetListForDriver === | ||
Line 82: | Line 110: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayGetList </code> | derived from <code>_sceFiosKernelOverlayGetList</code> | ||
<source lang="c"> | |||
int sceFiosKernelOverlayGetListForDriver(SceUID pid, char loOrderFilter, char hiOrderFilter, SceFiosOverlayID *outIDs, size_t maxIDs, size_t *actualIDs); | |||
</source> | |||
=== sceFiosKernelOverlayGetRecommendedSchedulerForDriver === | === sceFiosKernelOverlayGetRecommendedSchedulerForDriver === | ||
Line 92: | Line 124: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayGetRecommendedScheduler </code> | derived from <code>_sceFiosKernelOverlayGetRecommendedScheduler</code> | ||
<source lang="c"> | |||
int sceFiosKernelOverlayGetRecommendedSchedulerForDriver(int some_index, char *path); | |||
</source> | |||
=== sceFiosKernelOverlayModifyForDriver === | === sceFiosKernelOverlayModifyForDriver === | ||
Line 102: | Line 138: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayModify </code> | derived from <code>_sceFiosKernelOverlayModify</code> | ||
=== sceFiosKernelOverlayModifyForProcessForDriver === | === sceFiosKernelOverlayModifyForProcessForDriver === | ||
Line 112: | Line 148: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayModifyForProcess </code> | derived from <code>_sceFiosKernelOverlayModifyForProcess</code> | ||
<source lang="c"> | |||
int sceFiosKernelOverlayModifyForProcessForDriver(SceUID pid, SceFiosOverlayID id, const SceFiosOverlay *newValue); | |||
</source> | |||
=== sceFiosKernelOverlayRemoveForDriver === | === sceFiosKernelOverlayRemoveForDriver === | ||
Line 122: | Line 162: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayRemove </code> | derived from <code>_sceFiosKernelOverlayRemove</code> | ||
=== sceFiosKernelOverlayRemoveForProcessForDriver === | === sceFiosKernelOverlayRemoveForProcessForDriver === | ||
Line 132: | Line 172: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayRemoveForProcess </code> | derived from <code>_sceFiosKernelOverlayRemoveForProcess</code> | ||
<source lang="c">int sceFiosKernelOverlayRemoveForProcessForDriver( | <source lang="c"> | ||
int sceFiosKernelOverlayRemoveForProcessForDriver(SceUID pid, SceFiosOverlayID id); | |||
</source> | |||
=== sceFiosKernelOverlayResolveSyncForDriver === | === sceFiosKernelOverlayResolveSyncForDriver === | ||
Line 146: | Line 188: | ||
derived from <code>_sceFiosKernelOverlayResolveSync</code> | derived from <code>_sceFiosKernelOverlayResolveSync</code> | ||
<source lang="c">int sceFiosKernelOverlayResolveSyncForDriver(SceUID pid, int resolveFlag, const char * | <source lang="c"> | ||
int sceFiosKernelOverlayResolveSyncForDriver(SceUID pid, int resolveFlag, const char *inPath, char *outPath, size_t maxPath); | |||
</source> | |||
=== sceFiosKernelOverlayResolveWithRangeSyncForDriver === | === sceFiosKernelOverlayResolveWithRangeSyncForDriver === | ||
Line 156: | Line 200: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayResolveWithRangeSync </code> | derived from <code>_sceFiosKernelOverlayResolveWithRangeSync</code> | ||
<source lang="c"> | |||
int sceFiosKernelOverlayResolveWithRangeSyncForDriver(SceUID pid, int resolveFlag, const char *inPath, char *outPath, size_t maxPath, char loOrderFilter, char hiOrderFilter); | |||
</source> | |||
=== sceFiosKernelOverlayThreadIsDisabledForDriver === | === sceFiosKernelOverlayThreadIsDisabledForDriver === | ||
Line 166: | Line 214: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayThreadIsDisabled </code> | derived from <code>_sceFiosKernelOverlayThreadIsDisabled</code> | ||
<source lang="c"> | |||
int sceFiosKernelOverlayThreadIsDisabledForDriver(); | |||
</source> | |||
=== sceFiosKernelOverlayThreadSetDisabledForDriver === | === sceFiosKernelOverlayThreadSetDisabledForDriver === | ||
Line 176: | Line 228: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayThreadSetDisabled </code> | derived from <code>_sceFiosKernelOverlayThreadSetDisabled</code> | ||
<source lang="c"> | |||
int sceFiosKernelOverlayThreadSetDisabledForDriver(int value); | |||
</source> | |||
=== SceFios2KernelForDriver_unk_2649408B === | === SceFios2KernelForDriver_unk_2649408B === | ||
Line 233: | Line 289: | ||
| 3.60 || 0x990F46A5 | | 3.60 || 0x990F46A5 | ||
|} | |} | ||
Sync fd with param. | |||
should map to one of six functions that return <code>0x80820000</code> | should map to one of six functions that return <code>0x80820000</code> | ||
Line 245: | Line 303: | ||
| 3.60 || 0xDD7627EC | | 3.60 || 0xDD7627EC | ||
|} | |} | ||
Close dir fd and free param memory. | |||
should map to one of six functions that return <code>0x80820000</code> | should map to one of six functions that return <code>0x80820000</code> | ||
Line 260: | Line 320: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayAddForProcess </code> | derived from <code> _sceFiosKernelOverlayAddForProcess</code> | ||
<source lang="C"> | |||
int sceFiosKernelOverlayAddForProcess02(SceUID pid, SceFiosOverlay *overlay, SceFiosOverlayID *outID); | |||
</source> | |||
=== sceFiosKernelOverlayGetInfoForProcess02 === | === sceFiosKernelOverlayGetInfoForProcess02 === | ||
Line 270: | Line 334: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayGetInfoForProcess </code> | derived from <code> _sceFiosKernelOverlayGetInfoForProcess</code> | ||
<source lang="C"> | |||
int sceFiosKernelOverlayGetInfoForProcess02(SceUID pid, SceFiosOverlayID id, SceFiosOverlay *overlay); | |||
</source> | |||
=== sceFiosKernelOverlayGetList02 === | === sceFiosKernelOverlayGetList02 === | ||
Line 280: | Line 348: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayGetList </code> | derived from <code> _sceFiosKernelOverlayGetList</code> | ||
<source lang="C"> | |||
typedef struct sceFiosKernelOverlayGetList02_opt { // size is 0x18 | |||
SceFiosOverlayID *outIDs; | |||
size_t maxIDs; | |||
size_t *actualIDs; | |||
int buffer_size; | |||
int reserved1; | |||
int reserved2; | |||
} sceFiosKernelOverlayGetList02_opt; | |||
int sceFiosKernelOverlayGetList02(SceUID pid, char loOrderFilter, char hiOrderFilter, sceFiosKernelOverlayGetList02_opt *opt); | |||
</source> | |||
=== sceFiosKernelOverlayGetRecommendedScheduler02 === | === sceFiosKernelOverlayGetRecommendedScheduler02 === | ||
Line 290: | Line 371: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayGetRecommendedScheduler </code> | derived from <code> _sceFiosKernelOverlayGetRecommendedScheduler</code> | ||
<source lang="C"> | |||
typedef struct sceFiosKernelOverlayGetRecommendedScheduler02_opt { // size is 8 | |||
int reserved1; | |||
int reserved2; | |||
} sceFiosKernelOverlayGetRecommendedScheduler02_opt; | |||
int sceFiosKernelOverlayGetRecommendedScheduler02(int some_index, char *path, sceFiosKernelOverlayGetRecommendedScheduler02_opt *opt); | |||
</source> | |||
=== sceFiosKernelOverlayModifyForProcess02 === | === sceFiosKernelOverlayModifyForProcess02 === | ||
Line 300: | Line 390: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayModifyForProcess </code> | derived from <code> _sceFiosKernelOverlayModifyForProcess</code> | ||
<source lang="C"> | |||
int sceFiosKernelOverlayModifyForProcess02(SceUID pid, SceFiosOverlayID id, const SceFiosOverlay *newValue); | |||
</source> | |||
=== sceFiosKernelOverlayRemoveForProcess02 === | === sceFiosKernelOverlayRemoveForProcess02 === | ||
Line 310: | Line 404: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayRemoveForProcess </code> | derived from <code> _sceFiosKernelOverlayRemoveForProcess</code> | ||
<source lang="C"> | |||
int sceFiosKernelOverlayRemoveForProcess02(SceUID pid, SceFiosOverlayID id); | |||
</source> | |||
=== sceFiosKernelOverlayResolveSync02 === | === sceFiosKernelOverlayResolveSync02 === | ||
Line 320: | Line 418: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayResolveSync </code> | derived from <code> _sceFiosKernelOverlayResolveSync</code> | ||
<source lang="C"> | |||
typedef struct sceFiosKernelOverlayResolveSync02_opt { // size is 0x18 | |||
char *outPath; | |||
size_t maxPath; | |||
int reserved1; | |||
int reserved2; | |||
int reserved3; | |||
int reserved4; | |||
} sceFiosKernelOverlayResolveSync02_opt; | |||
int sceFiosKernelOverlayResolveSync02(SceUID pid, int resolveFlag, const char *inPath, sceFiosKernelOverlayResolveSync02_opt *opt); | |||
</source> | |||
=== sceFiosKernelOverlayResolveWithRangeSync02 === | === sceFiosKernelOverlayResolveWithRangeSync02 === | ||
Line 330: | Line 441: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayResolveWithRangeSync </code> | derived from <code> _sceFiosKernelOverlayResolveWithRangeSync</code> | ||
<source lang="C"> | |||
typedef struct sceFiosKernelOverlayResolveWithRangeSync02_opt { // size is 0x1C | |||
char *outPath; | |||
size_t maxPath; | |||
char loOrderFilter; | |||
char hiOrderFilter; | |||
char reserved1; | |||
char reserved2; | |||
int reserved3; | |||
int reserved4; | |||
int reserved5; | |||
int reserved6; | |||
} sceFiosKernelOverlayResolveWithRangeSync02_opt; | |||
int sceFiosKernelOverlayResolveWithRangeSync02(SceUID pid, int resolveFlag, const char *inPath, sceFiosKernelOverlayResolveWithRangeSync02_opt *opt); | |||
</source> | |||
=== sceFiosKernelOverlayThreadIsDisabled02 === | === sceFiosKernelOverlayThreadIsDisabled02 === | ||
Line 340: | Line 468: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayThreadIsDisabled </code> | derived from <code> _sceFiosKernelOverlayThreadIsDisabled</code> | ||
<source lang="C"> | |||
int sceFiosKernelOverlayThreadIsDisabled02(void); | |||
</source> | |||
=== sceFiosKernelOverlayThreadSetDisabled02 === | === sceFiosKernelOverlayThreadSetDisabled02 === | ||
Line 350: | Line 482: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayThreadSetDisabled </code> | derived from <code> _sceFiosKernelOverlayThreadSetDisabled</code> | ||
<source lang="C"> | |||
int sceFiosKernelOverlayThreadSetDisabled02(int value); | |||
</source> | |||
== SceFios2Kernel == | == SceFios2Kernel == | ||
Line 359: | Line 495: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x2A381357 | ||
|} | |} | ||
Line 369: | Line 503: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x6DBCF0B2 | ||
|} | |} | ||
Line 379: | Line 511: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xF6A3E335 | ||
|} | |} | ||
Line 391: | Line 521: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x021B4AF7 | ||
|} | |} | ||
Line 403: | Line 531: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x5D6A1CCE | ||
|} | |} | ||
Line 415: | Line 541: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x2F06ADC6 | ||
|} | |} | ||
Line 427: | Line 551: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x759EBEE6 | ||
|} | |} | ||
Line 439: | Line 561: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x2A9724C9 | ||
|} | |} | ||
Line 451: | Line 571: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xBC6B3CC5 | ||
|} | |} | ||
Line 461: | Line 579: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xF44F3505 | ||
|} | |} | ||
Line 471: | Line 587: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x9379E2D5 | ||
|} | |} | ||
Line 481: | Line 595: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xB02E0B26 | ||
|} | |} | ||
Line 491: | Line 603: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x6DF2FC05 | ||
|} | |} | ||
Line 501: | Line 611: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x6D6CDE05 | ||
|} | |} | ||
Line 511: | Line 619: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xF8277E07 | ||
|} | |} | ||
Line 521: | Line 627: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xB4927173 | ||
|} | |} | ||
Line 531: | Line 635: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xE9AE60FB | ||
|} | |} | ||
Line 541: | Line 643: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x8CCA471A | ||
|} | |} | ||
Line 551: | Line 651: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x629F4FE4 | ||
|} | |} | ||
Line 561: | Line 659: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x3E9172EA | ||
|} | |} | ||
[[Category:ARM]] | |||
[[Category:Kernel]] | |||
[[Category:Modules]] | [[Category:Modules]] | ||
[[Category: | [[Category:Library]] |
Latest revision as of 08:59, 25 May 2023
FIOS sits on top of filesystem and provides the following functionality:
- Schedule I/O requests - queue I/O operations, prioritize I/O operations, delayed (scheduled for specific time) async I/O operations, parallelized I/O operations.
- Overlays - remap I/O operations to different location. Good example is patches or localization.
- Caching - caching layer for I/O operations. I/O operations are split into chunks. Chunks can be cached in RAM. Performance can increase.
- Dearchiving - transparent filter for I/O operations that dearchives data. Good usage would be for psarc files.
Most of these functionalities are implemented in usermode in the fios2.suprx
module.
This kernel module is only used for overlays, so that the kernel, especially SceIofilemgr, is aware of FIOS2 remapping.
Module
Version | World | Privilege |
---|---|---|
1.69-3.60 | Non-secure | Kernel |
Libraries
Known NIDs
Version | Name | World | Visibility | NID |
---|---|---|---|---|
1.69-3.60 | SceFios2KernelForDriver | Non-secure | Kernel | 0x54D6B9EB |
1.69-3.60 | SceFios2Kernel | Non-secure | User | 0x8757B742 |
3.60 | SceFios2Kernel02 | Non-secure | ? | 0xE83E40A6 |
Types
typedef int32_t SceFiosOverlayID; typedef struct SceFiosOverlay { uint8_t type; uint8_t order; uint16_t dst_len; uint16_t src_len; uint16_t unk2; SceUID pid; SceFiosOverlayID id; char dst[292]; char src[292]; // src path replaces dst path based on type policy } SceFiosOverlay;
SceFios2KernelForDriver
sceFiosKernelOverlayAddForDriver
Version | NID |
---|---|
3.60 | 0x2607EE4C |
derived from _sceFiosKernelOverlayAdd
sceFiosKernelOverlayAddForProcessForDriver
Version | NID |
---|---|
3.60 | 0x17E65A1C |
derived from _sceFiosKernelOverlayAddForProcess
int sceFiosKernelOverlayAddForProcessForDriver(SceUID pid, SceFiosOverlay *overlay, SceFiosOverlayID *outID);
sceFiosKernelOverlayGetInfoForDriver
Version | NID |
---|---|
3.60 | 0x725E6817 |
derived from _sceFiosKernelOverlayGetInfo
sceFiosKernelOverlayGetInfoForProcessForDriver
Version | NID |
---|---|
3.60 | 0xF1762BC2 |
derived from _sceFiosKernelOverlayGetInfoForProcess
int sceFiosKernelOverlayGetInfoForProcessForDriver(SceUID pid, SceFiosOverlayID id, SceFiosOverlay *overla);
sceFiosKernelOverlayGetListForDriver
Version | NID |
---|---|
3.60 | 0xFF42AAF0 |
derived from _sceFiosKernelOverlayGetList
int sceFiosKernelOverlayGetListForDriver(SceUID pid, char loOrderFilter, char hiOrderFilter, SceFiosOverlayID *outIDs, size_t maxIDs, size_t *actualIDs);
sceFiosKernelOverlayGetRecommendedSchedulerForDriver
Version | NID |
---|---|
3.60 | 0x241BF0D6 |
derived from _sceFiosKernelOverlayGetRecommendedScheduler
int sceFiosKernelOverlayGetRecommendedSchedulerForDriver(int some_index, char *path);
sceFiosKernelOverlayModifyForDriver
Version | NID |
---|---|
3.60 | 0x7F8B960C |
derived from _sceFiosKernelOverlayModify
sceFiosKernelOverlayModifyForProcessForDriver
Version | NID |
---|---|
3.60 | 0x853EA82A |
derived from _sceFiosKernelOverlayModifyForProcess
int sceFiosKernelOverlayModifyForProcessForDriver(SceUID pid, SceFiosOverlayID id, const SceFiosOverlay *newValue);
sceFiosKernelOverlayRemoveForDriver
Version | NID |
---|---|
3.60 | 0x2368FEB5 |
derived from _sceFiosKernelOverlayRemove
sceFiosKernelOverlayRemoveForProcessForDriver
Version | NID |
---|---|
3.60 | 0x23247EFB |
derived from _sceFiosKernelOverlayRemoveForProcess
int sceFiosKernelOverlayRemoveForProcessForDriver(SceUID pid, SceFiosOverlayID id);
sceFiosKernelOverlayResolveSyncForDriver
Version | NID |
---|---|
3.60 | 0x0F456345 |
derived from _sceFiosKernelOverlayResolveSync
int sceFiosKernelOverlayResolveSyncForDriver(SceUID pid, int resolveFlag, const char *inPath, char *outPath, size_t maxPath);
sceFiosKernelOverlayResolveWithRangeSyncForDriver
Version | NID |
---|---|
3.60 | 0xD3D968FC |
derived from _sceFiosKernelOverlayResolveWithRangeSync
int sceFiosKernelOverlayResolveWithRangeSyncForDriver(SceUID pid, int resolveFlag, const char *inPath, char *outPath, size_t maxPath, char loOrderFilter, char hiOrderFilter);
sceFiosKernelOverlayThreadIsDisabledForDriver
Version | NID |
---|---|
3.60 | 0xE71192C5 |
derived from _sceFiosKernelOverlayThreadIsDisabled
int sceFiosKernelOverlayThreadIsDisabledForDriver();
sceFiosKernelOverlayThreadSetDisabledForDriver
Version | NID |
---|---|
3.60 | 0x03727E5E |
derived from _sceFiosKernelOverlayThreadSetDisabled
int sceFiosKernelOverlayThreadSetDisabledForDriver(int value);
SceFios2KernelForDriver_unk_2649408B
Version | NID |
---|---|
3.60 | 0x2649408B |
should map to one of six functions that return 0x80820000
used by SceIofilemgr
so probably can be derived
SceFios2KernelForDriver_unk_28E28A58
Version | NID |
---|---|
3.60 | 0x28E28A58 |
should map to one of six functions that return 0x80820000
used by SceIofilemgr
so probably can be derived
SceFios2KernelForDriver_unk_35E7E75C
Version | NID |
---|---|
3.60 | 0x35E7E75C |
should map to one of six functions that return 0x80820000
used by SceIofilemgr
so probably can be derived
SceFios2KernelForDriver_unk_3B329E86
Version | NID |
---|---|
3.60 | 0x3B329E86 |
should map to one of six functions that return 0x80820000
used by SceIofilemgr
so probably can be derived
SceFios2KernelForDriver_unk_990F46A5
Version | NID |
---|---|
3.60 | 0x990F46A5 |
Sync fd with param.
should map to one of six functions that return 0x80820000
used by SceIofilemgr
so probably can be derived
SceFios2KernelForDriver_unk_DD7627EC
Version | NID |
---|---|
3.60 | 0xDD7627EC |
Close dir fd and free param memory.
should map to one of six functions that return 0x80820000
used by SceIofilemgr
so probably can be derived
SceFios2Kernel02
sceFiosKernelOverlayAddForProcess02
Version | NID |
---|---|
3.60 | 0xB77C366D |
derived from _sceFiosKernelOverlayAddForProcess
int sceFiosKernelOverlayAddForProcess02(SceUID pid, SceFiosOverlay *overlay, SceFiosOverlayID *outID);
sceFiosKernelOverlayGetInfoForProcess02
Version | NID |
---|---|
3.60 | 0x111DCCFA |
derived from _sceFiosKernelOverlayGetInfoForProcess
int sceFiosKernelOverlayGetInfoForProcess02(SceUID pid, SceFiosOverlayID id, SceFiosOverlay *overlay);
sceFiosKernelOverlayGetList02
Version | NID |
---|---|
3.60 | 0xD90FC293 |
derived from _sceFiosKernelOverlayGetList
typedef struct sceFiosKernelOverlayGetList02_opt { // size is 0x18 SceFiosOverlayID *outIDs; size_t maxIDs; size_t *actualIDs; int buffer_size; int reserved1; int reserved2; } sceFiosKernelOverlayGetList02_opt; int sceFiosKernelOverlayGetList02(SceUID pid, char loOrderFilter, char hiOrderFilter, sceFiosKernelOverlayGetList02_opt *opt);
sceFiosKernelOverlayGetRecommendedScheduler02
Version | NID |
---|---|
3.60 | 0x26B9D08A |
derived from _sceFiosKernelOverlayGetRecommendedScheduler
typedef struct sceFiosKernelOverlayGetRecommendedScheduler02_opt { // size is 8 int reserved1; int reserved2; } sceFiosKernelOverlayGetRecommendedScheduler02_opt; int sceFiosKernelOverlayGetRecommendedScheduler02(int some_index, char *path, sceFiosKernelOverlayGetRecommendedScheduler02_opt *opt);
sceFiosKernelOverlayModifyForProcess02
Version | NID |
---|---|
3.60 | 0x6A976528 |
derived from _sceFiosKernelOverlayModifyForProcess
int sceFiosKernelOverlayModifyForProcess02(SceUID pid, SceFiosOverlayID id, const SceFiosOverlay *newValue);
sceFiosKernelOverlayRemoveForProcess02
Version | NID |
---|---|
3.60 | 0x50A7167C |
derived from _sceFiosKernelOverlayRemoveForProcess
int sceFiosKernelOverlayRemoveForProcess02(SceUID pid, SceFiosOverlayID id);
sceFiosKernelOverlayResolveSync02
Version | NID |
---|---|
3.60 | 0xD76F046A |
derived from _sceFiosKernelOverlayResolveSync
typedef struct sceFiosKernelOverlayResolveSync02_opt { // size is 0x18 char *outPath; size_t maxPath; int reserved1; int reserved2; int reserved3; int reserved4; } sceFiosKernelOverlayResolveSync02_opt; int sceFiosKernelOverlayResolveSync02(SceUID pid, int resolveFlag, const char *inPath, sceFiosKernelOverlayResolveSync02_opt *opt);
sceFiosKernelOverlayResolveWithRangeSync02
Version | NID |
---|---|
3.60 | 0x8DAD1FED |
derived from _sceFiosKernelOverlayResolveWithRangeSync
typedef struct sceFiosKernelOverlayResolveWithRangeSync02_opt { // size is 0x1C char *outPath; size_t maxPath; char loOrderFilter; char hiOrderFilter; char reserved1; char reserved2; int reserved3; int reserved4; int reserved5; int reserved6; } sceFiosKernelOverlayResolveWithRangeSync02_opt; int sceFiosKernelOverlayResolveWithRangeSync02(SceUID pid, int resolveFlag, const char *inPath, sceFiosKernelOverlayResolveWithRangeSync02_opt *opt);
sceFiosKernelOverlayThreadIsDisabled02
Version | NID |
---|---|
3.60 | 0xD6A4FDD6 |
derived from _sceFiosKernelOverlayThreadIsDisabled
int sceFiosKernelOverlayThreadIsDisabled02(void);
sceFiosKernelOverlayThreadSetDisabled02
Version | NID |
---|---|
3.60 | 0x7F26D4DD |
derived from _sceFiosKernelOverlayThreadSetDisabled
int sceFiosKernelOverlayThreadSetDisabled02(int value);
SceFios2Kernel
_sceFiosKernelOverlayAddForProcess
Version | NID |
---|---|
1.69-3.60 | 0x2A381357 |
_sceFiosKernelOverlayAdd
Version | NID |
---|---|
1.69-3.60 | 0x6DBCF0B2 |
_sceFiosKernelOverlayDHChstatSync
Version | NID |
---|---|
1.69-3.60 | 0xF6A3E335 |
returns 0x80820000
? is it not callable from userspace?
_sceFiosKernelOverlayDHCloseSync
Version | NID |
---|---|
1.69-3.60 | 0x021B4AF7 |
returns 0x80820000
? is it not callable from userspace?
_sceFiosKernelOverlayDHOpenSync
Version | NID |
---|---|
1.69-3.60 | 0x5D6A1CCE |
returns 0x80820000
? is it not callable from userspace?
_sceFiosKernelOverlayDHReadSync
Version | NID |
---|---|
1.69-3.60 | 0x2F06ADC6 |
returns 0x80820000
? is it not callable from userspace?
_sceFiosKernelOverlayDHStatSync
Version | NID |
---|---|
1.69-3.60 | 0x759EBEE6 |
returns 0x80820000
? is it not callable from userspace?
_sceFiosKernelOverlayDHSyncSync
Version | NID |
---|---|
1.69-3.60 | 0x2A9724C9 |
returns 0x80820000
? is it not callable from userspace?
_sceFiosKernelOverlayGetInfoForProcess
Version | NID |
---|---|
1.69-3.60 | 0xBC6B3CC5 |
_sceFiosKernelOverlayGetInfo
Version | NID |
---|---|
1.69-3.60 | 0xF44F3505 |
_sceFiosKernelOverlayGetList
Version | NID |
---|---|
1.69-3.60 | 0x9379E2D5 |
_sceFiosKernelOverlayGetRecommendedScheduler
Version | NID |
---|---|
1.69-3.60 | 0xB02E0B26 |
_sceFiosKernelOverlayModifyForProcess
Version | NID |
---|---|
1.69-3.60 | 0x6DF2FC05 |
_sceFiosKernelOverlayModify
Version | NID |
---|---|
1.69-3.60 | 0x6D6CDE05 |
_sceFiosKernelOverlayRemoveForProcess
Version | NID |
---|---|
1.69-3.60 | 0xF8277E07 |
_sceFiosKernelOverlayRemove
Version | NID |
---|---|
1.69-3.60 | 0xB4927173 |
_sceFiosKernelOverlayResolveSync
Version | NID |
---|---|
1.69-3.60 | 0xE9AE60FB |
_sceFiosKernelOverlayResolveWithRangeSync
Version | NID |
---|---|
1.69-3.60 | 0x8CCA471A |
_sceFiosKernelOverlayThreadIsDisabled
Version | NID |
---|---|
1.69-3.60 | 0x629F4FE4 |
_sceFiosKernelOverlayThreadSetDisabled
Version | NID |
---|---|
1.69-3.60 | 0x3E9172EA |