SceFios2Kernel: Difference between revisions
CelesteBlue (talk | contribs) No edit summary |
|||
(14 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 | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || Non-secure || Kernel | ||
|} | |} | ||
Line 19: | Line 27: | ||
! Version !! Name !! World !! Visibility !! NID | ! Version !! Name !! World !! Visibility !! NID | ||
|- | |- | ||
| 1.69 || [[SceFios2Kernel#SceFios2KernelForDriver|SceFios2KernelForDriver]] || Non-secure || Kernel || 0x54D6B9EB | | 1.69-3.60 || [[SceFios2Kernel#SceFios2KernelForDriver|SceFios2KernelForDriver]] || Non-secure || Kernel || 0x54D6B9EB | ||
|- | |- | ||
| 3.60 || [[SceFios2Kernel# | | 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"> | <source lang="c"> | ||
Line 64: | Line 86: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayGetInfo </code> | derived from <code>_sceFiosKernelOverlayGetInfo</code> | ||
=== sceFiosKernelOverlayGetInfoForProcessForDriver === | === sceFiosKernelOverlayGetInfoForProcessForDriver === | ||
Line 74: | Line 96: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayGetInfoForProcess </code> | derived from <code>_sceFiosKernelOverlayGetInfoForProcess</code> | ||
<source lang="c"> | <source lang="c"> | ||
Line 88: | Line 110: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayGetList </code> | derived from <code>_sceFiosKernelOverlayGetList</code> | ||
<source lang="c"> | <source lang="c"> | ||
Line 102: | Line 124: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayGetRecommendedScheduler </code> | derived from <code>_sceFiosKernelOverlayGetRecommendedScheduler</code> | ||
<source lang="c"> | <source lang="c"> | ||
Line 116: | Line 138: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayModify </code> | derived from <code>_sceFiosKernelOverlayModify</code> | ||
=== sceFiosKernelOverlayModifyForProcessForDriver === | === sceFiosKernelOverlayModifyForProcessForDriver === | ||
Line 126: | Line 148: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayModifyForProcess </code> | derived from <code>_sceFiosKernelOverlayModifyForProcess</code> | ||
<source lang="c"> | <source lang="c"> | ||
Line 140: | Line 162: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayRemove </code> | derived from <code>_sceFiosKernelOverlayRemove</code> | ||
=== sceFiosKernelOverlayRemoveForProcessForDriver === | === sceFiosKernelOverlayRemoveForProcessForDriver === | ||
Line 150: | Line 172: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayRemoveForProcess </code> | derived from <code>_sceFiosKernelOverlayRemoveForProcess</code> | ||
<source lang="c"> | <source lang="c"> | ||
Line 166: | 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 176: | 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 186: | Line 214: | ||
|} | |} | ||
derived from <code>_sceFiosKernelOverlayThreadIsDisabled </code> | derived from <code>_sceFiosKernelOverlayThreadIsDisabled</code> | ||
<source lang="c"> | |||
int sceFiosKernelOverlayThreadIsDisabledForDriver(); | |||
</source> | |||
=== sceFiosKernelOverlayThreadSetDisabledForDriver === | === sceFiosKernelOverlayThreadSetDisabledForDriver === | ||
Line 196: | 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 253: | 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 265: | 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 280: | Line 320: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayAddForProcess </code> | derived from <code> _sceFiosKernelOverlayAddForProcess</code> | ||
<source lang="C"> | <source lang="C"> | ||
Line 294: | Line 334: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayGetInfoForProcess </code> | derived from <code> _sceFiosKernelOverlayGetInfoForProcess</code> | ||
<source lang="C"> | <source lang="C"> | ||
Line 308: | Line 348: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayGetList </code> | derived from <code> _sceFiosKernelOverlayGetList</code> | ||
<source lang="C"> | <source lang="C"> | ||
//size is 0x18 | typedef struct sceFiosKernelOverlayGetList02_opt { // size is 0x18 | ||
SceFiosOverlayID *outIDs; | SceFiosOverlayID *outIDs; | ||
size_t maxIDs; | size_t maxIDs; | ||
Line 320: | Line 358: | ||
int reserved1; | int reserved1; | ||
int reserved2; | int reserved2; | ||
}; | } sceFiosKernelOverlayGetList02_opt; | ||
int sceFiosKernelOverlayGetList02(SceUID pid, char loOrderFilter, char hiOrderFilter, | int sceFiosKernelOverlayGetList02(SceUID pid, char loOrderFilter, char hiOrderFilter, sceFiosKernelOverlayGetList02_opt *opt); | ||
</source> | </source> | ||
Line 333: | Line 371: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayGetRecommendedScheduler </code> | derived from <code> _sceFiosKernelOverlayGetRecommendedScheduler</code> | ||
<source lang="C"> | <source lang="C"> | ||
//size is | typedef struct sceFiosKernelOverlayGetRecommendedScheduler02_opt { // size is 8 | ||
int reserved1; | int reserved1; | ||
int reserved2; | int reserved2; | ||
}; | } sceFiosKernelOverlayGetRecommendedScheduler02_opt; | ||
int sceFiosKernelOverlayGetRecommendedScheduler02(int some_index, char *path, | int sceFiosKernelOverlayGetRecommendedScheduler02(int some_index, char *path, sceFiosKernelOverlayGetRecommendedScheduler02_opt *opt); | ||
</source> | </source> | ||
Line 354: | Line 390: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayModifyForProcess </code> | derived from <code> _sceFiosKernelOverlayModifyForProcess</code> | ||
<source lang="C"> | <source lang="C"> | ||
Line 368: | Line 404: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayRemoveForProcess </code> | derived from <code> _sceFiosKernelOverlayRemoveForProcess</code> | ||
<source lang="C"> | <source lang="C"> | ||
Line 382: | Line 418: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayResolveSync </code> | derived from <code> _sceFiosKernelOverlayResolveSync</code> | ||
<source lang="C"> | <source lang="C"> | ||
//size is 0x18 | typedef struct sceFiosKernelOverlayResolveSync02_opt { // size is 0x18 | ||
char *outPath; | char *outPath; | ||
size_t maxPath; | size_t maxPath; | ||
Line 394: | Line 428: | ||
int reserved3; | int reserved3; | ||
int reserved4; | int reserved4; | ||
}; | } sceFiosKernelOverlayResolveSync02_opt; | ||
int sceFiosKernelOverlayResolveSync02(SceUID pid, int resolveFlag, const char *inPath, | int sceFiosKernelOverlayResolveSync02(SceUID pid, int resolveFlag, const char *inPath, sceFiosKernelOverlayResolveSync02_opt *opt); | ||
</source> | </source> | ||
Line 407: | Line 441: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayResolveWithRangeSync </code> | derived from <code> _sceFiosKernelOverlayResolveWithRangeSync</code> | ||
<source lang="C"> | <source lang="C"> | ||
//size is 0x1C | typedef struct sceFiosKernelOverlayResolveWithRangeSync02_opt { // size is 0x1C | ||
char *outPath; | char *outPath; | ||
size_t maxPath; | size_t maxPath; | ||
Line 423: | Line 455: | ||
int reserved5; | int reserved5; | ||
int reserved6; | int reserved6; | ||
}; | } sceFiosKernelOverlayResolveWithRangeSync02_opt; | ||
int sceFiosKernelOverlayResolveWithRangeSync02(SceUID pid, int resolveFlag, const char *inPath, | int sceFiosKernelOverlayResolveWithRangeSync02(SceUID pid, int resolveFlag, const char *inPath, sceFiosKernelOverlayResolveWithRangeSync02_opt *opt); | ||
</source> | </source> | ||
Line 436: | Line 468: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayThreadIsDisabled </code> | derived from <code> _sceFiosKernelOverlayThreadIsDisabled</code> | ||
<source lang="C"> | <source lang="C"> | ||
int sceFiosKernelOverlayThreadIsDisabled02(); | int sceFiosKernelOverlayThreadIsDisabled02(void); | ||
</source> | </source> | ||
Line 450: | Line 482: | ||
|} | |} | ||
derived from <code> _sceFiosKernelOverlayThreadSetDisabled </code> | derived from <code> _sceFiosKernelOverlayThreadSetDisabled</code> | ||
<source lang="C"> | <source lang="C"> | ||
Line 463: | Line 495: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x2A381357 | ||
|} | |} | ||
Line 473: | Line 503: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x6DBCF0B2 | ||
|} | |} | ||
Line 483: | Line 511: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xF6A3E335 | ||
|} | |} | ||
Line 495: | Line 521: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x021B4AF7 | ||
|} | |} | ||
Line 507: | Line 531: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x5D6A1CCE | ||
|} | |} | ||
Line 519: | Line 541: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x2F06ADC6 | ||
|} | |} | ||
Line 531: | Line 551: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x759EBEE6 | ||
|} | |} | ||
Line 543: | Line 561: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x2A9724C9 | ||
|} | |} | ||
Line 555: | Line 571: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xBC6B3CC5 | ||
|} | |} | ||
Line 565: | Line 579: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xF44F3505 | ||
|} | |} | ||
Line 575: | Line 587: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x9379E2D5 | ||
|} | |} | ||
Line 585: | Line 595: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xB02E0B26 | ||
|} | |} | ||
Line 595: | Line 603: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x6DF2FC05 | ||
|} | |} | ||
Line 605: | Line 611: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x6D6CDE05 | ||
|} | |} | ||
Line 615: | Line 619: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xF8277E07 | ||
|} | |} | ||
Line 625: | Line 627: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xB4927173 | ||
|} | |} | ||
Line 635: | Line 635: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0xE9AE60FB | ||
|} | |} | ||
Line 645: | Line 643: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x8CCA471A | ||
|} | |} | ||
Line 655: | Line 651: | ||
! Version !! NID | ! Version !! NID | ||
|- | |- | ||
| 1.69 | | 1.69-3.60 || 0x629F4FE4 | ||
|} | |} | ||
Line 665: | 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 |