SceExfatfs: Difference between revisions
Jump to navigation
Jump to search
Line 24: | Line 24: | ||
! Address !! Size !! Description | ! Address !! Size !! Description | ||
|- | |- | ||
| 0x0000 || 0x4 || mutex | | 0x0000 || 0x4 || mutex to lock mempool | ||
|- | |- | ||
| 0x0004 || | | 0x0004 || 0x4 || SceUID mempool uid | ||
|- | |||
| 0x0008 || 0x4 || unknown | |||
|- | |- | ||
| 0x000C || 0x20 || [[SceIofilemgr#sceVfsAddVfs|vfs_add_data]] <code>exfat</code> node | | 0x000C || 0x20 || [[SceIofilemgr#sceVfsAddVfs|vfs_add_data]] <code>exfat</code> node |
Revision as of 03:14, 3 March 2017
Module
Known NIDs
Version | Name | World | Privilege | NID |
---|---|---|---|---|
1.69 | SceExfatfs | Non-secure | Kernel | 0x228933E8 |
Libraries
Known NIDs
Version | Name | World | Visibility | NID |
---|
Data segment layout
Address | Size | Description |
---|---|---|
0x0000 | 0x4 | mutex to lock mempool |
0x0004 | 0x4 | SceUID mempool uid |
0x0008 | 0x4 | unknown |
0x000C | 0x20 | vfs_add_data exfat node
|
0x002C | 0x54 | unknown |
0x0080 | 0x29E0 | 10 elements of type exfat_ctx
|
0x2A60 | 0x14F0 | unknown |
0x3F50 | 0x200 | fat16 MBR |
0x4150 | 0x200 | fat16 MBR |
0x4350 | 0x200 | fat16 MBR |
0x4550 | 0x200 | fat16 MBR |
0x4750 | 0x200 | fat16 MBR |
0x4950 | 0x200 | fat16 MBR |
0x4B50 | 0x200 | exfat MBR |
0x4D50 | 0x200 | exfat MBR |
0x4F50 | 0x200 | exfat MBR |
0x5150 | 0x200 | exfat MBR |
0x5350 | 0xA00 | unknown (zeros) |
0x5D50 | 0x47450 | 445 elements of type file_entry
|
0x4D1A0 | 0x5CBB0 | 579 elements of size 0x290 |
0xA9D50 | 0x1EC080 | unknown (zeros) |
0x295DD0 | 0x14 | unknown |
0x295DE4 | 0x4 | SceExfatfsSharedResource fast mutex
|
0x295DE8 | 0x40 | unknown |
Types
typedef struct exfat_ctx //size is 0x430 bytes { uint32_t unk_0; uint32_t unk_4; uint32_t unk_8; uint32_t unk_C; uint32_t unk_10; uint32_t unk_14; file_entry* unk_18; uint32_t unk_1C; uint32_t unk_20; uint32_t unk_24; uint32_t unk_28; uint32_t unk_2C; char data1[0x3B0]; uint32_t fast_mutex_SceExfatfsRoot; //offset 0x3E0 char data2[0x4C]; } exfat_ctx; typedef struct file_entry //size is 0x290 bytes { uint32_t unk_0; uint32_t unk_4; char path[0x208]; //in unicode char data1[0x80]; }file_entry;