SceSdstor: Difference between revisions
Jump to navigation
Jump to search
(→Types) |
|||
Line 42: | Line 42: | ||
uint8_t unk_60[0x1D8]; | uint8_t unk_60[0x1D8]; | ||
}sdstor_mbr_ctx; | }sdstor_mbr_ctx; | ||
//named after "SceSdStorDevice" mutex | |||
typedef struct sd_stor_device //size is 0x54 | |||
{ | |||
int unk_0; | |||
int unk_4; | |||
int unk_8; | |||
int unk_C; | |||
int unk_10; | |||
int unk_14; | |||
int unk_18; | |||
int unk_1C; | |||
int unk_20; | |||
int unk_24; | |||
int unk_28; | |||
int unk_2C; | |||
int unk_30; | |||
int unk_34; | |||
int unk_38; | |||
int unk_3C; | |||
char index1; // (0x00, 0x01, 0xFF, 0xFF, 0x03) | |||
char index2; // (0x00, 0x00, 0x02, 0x03, 0x01) | |||
char unk_42; | |||
char unk_43; | |||
int unk_44; | |||
int unk_48; | |||
int unk_4C; | |||
int unk_50; | |||
}sd_stor_device; | |||
</source> | </source> | ||
Revision as of 21:49, 12 February 2017
Module
SceSdstor module does not export any functions exсept module_start.
This module is responsible for initializing all storage devices. This includes:
- eMMC
- Game gard
- Memory card
- Usb Mass Storage (unknown SceUsbMassForDriver)
Known NIDs
Version | Name | World | Privilege | NID |
---|---|---|---|---|
1.69 | SceSdstor | Non-secure | Kernel | 0x5804A397 |
3.60 | SceSdstor | ? | Kernel | 0xD7FBAE7C |
Libraries
Known NIDs
Version | Name | World | Visibility | NID |
---|
Types
typedef struct sdstor_mbr_ctx //size is 0x238 { uint8_t unk_0[0x50]; uint32_t unk_50; void* mbr_ptr; //pointer to corresponding MBR record in array (offset 0x40) uint32_t unk_58; uint32_t unk_5C; uint8_t unk_60[0x1D8]; }sdstor_mbr_ctx; //named after "SceSdStorDevice" mutex typedef struct sd_stor_device //size is 0x54 { int unk_0; int unk_4; int unk_8; int unk_C; int unk_10; int unk_14; int unk_18; int unk_1C; int unk_20; int unk_24; int unk_28; int unk_2C; int unk_30; int unk_34; int unk_38; int unk_3C; char index1; // (0x00, 0x01, 0xFF, 0xFF, 0x03) char index2; // (0x00, 0x00, 0x02, 0x03, 0x01) char unk_42; char unk_43; int unk_44; int unk_48; int unk_4C; int unk_50; }sd_stor_device;
Data segment layout
Address | Size | Description |
---|---|---|
0x0000 | 0x40 | unknown |
0x0040 | 0x200 | MBR of eMMC |
0x0240 | 0x200 | MBR of Game gard |
0x0440 | 0x200 | MBR of Memory card |
0x0640 | 0x200 | unknown (most likely for MBR since there are 5 elements in all arrays) |
0x0840 | 0x200 | unknown (most likely for MBR since there are 5 elements in all arrays) |
0x0A40 | 0x238 | sdstor_mbr_ctx element 0 |
0x0C78 | 0x238 | sdstor_mbr_ctx element 1 |
0x0EB0 | 0x238 | sdstor_mbr_ctx element 2 |
0x10E8 | 0x238 | sdstor_mbr_ctx element 3 |
0x1320 | 0x238 | sdstor_mbr_ctx element 4 |
0x1558 | 0x54 | structure of size 0x54, element 0 |
0x15AC | 0x54 | structure of size 0x54, element 1 |
0x1600 | 0x54 | structure of size 0x54, element 2 |
0x1654 | 0x54 | structure of size 0x54, element 3 |
0x16A8 | 0x54 | structure of size 0x54, element 4 |
0x16FC | 0x20 | vfs_add_data |
0x171C | 0x04 | SceUID of mempool "SceSdStorVfs" of size 0x2000 |
0x1720 | 0x200 | unknown (gcd-lp-act-mediaid ?) |
0x1920 | 0x200 | unknown (mcd-lp-act-mediaid ?) |
0x1B20 | 0xB4 | array of 5 structures of size 0x24 |
0x1BD4 | 0x1C | unknown |
0x1BF0 | 0x3C | array of 5 structures of size 0xC |
0x1C2C | 0x8C | array of 5 structures of size 0x1C |
0x1CB8 | 0x8 | unknown |
0x1CC0 | 0x200 | MBR of Game gard |
SceSdstor
module_start
Version | NID |
---|---|
3.60 | 0x935cd196 |
int module_start();