SceIdStorage

From Vita Development Wiki
Revision as of 12:02, 29 January 2020 by CelesteBlue (talk | contribs)
Jump to navigation Jump to search

Module

Known NIDs

Version Name World Privilege NID
0.931-3.60 SceIdStorage Non-secure Kernel ?

Libraries

Known NIDs

Version Name World Visibility NID
0.931-3.60 SceIdStorageForDriver Non-secure Kernel 0xE1AC6D7C

SceIdStorageForDriver

Reference: [1]

sceIdStorageCreateAtomicLeavesForDriver

Version NID
0.931-3.60 0x99ACCB71
int sceIdStorageCreateAtomicLeavesForDriver(int a1, int a2);

sceIdStorageCreateLeafForDriver

Version NID
0.931-3.60 0x08A471A6
int sceIdStorageCreateLeafForDriver(SceUInt32 key);

sceIdStorageDeleteLeafForDriver

Version NID
0.931-3.60 0x2C97AB36
int sceIdStorageDeleteLeafForDriver(SceUInt32 key);

sceIdStorageEnumIdForDriver

Version NID
0.931-3.60 0x31E08AFB

Locks then unlocks the IDStorage enumerator mutex.

Returns 0 on success.

int sceIdStorageEnumIdForDriver(void);

sceIdStorageGetFreeLeavesForDriver

Version NID
0.931-3.60 0x37833CB8
int sceIdStorageGetFreeLeavesForDriver(void);

sceIdStorageGetLeafSizeForDriver

Version NID
0.931-3.60 0xEB830733
SceSize sceIdStorageGetLeafSizeForDriver(void);

sceIdStorageLookupForDriver

Version NID
0.931-3.60 0x6FE062D1

Retrieves the value associated with a key.

Returns 0x80230000 if offset + size > 512, 0x80230001 if key > 0xFFEF, 0x80230003 if IDStorage is not formatted, 0x80230005 for enumerator issue.

// key - idstorage key
// offset - offset within the 512 byte leaf
// buf - buffer with enough storage
// len - amount of data to retrieve (offset + len must be <= 512 bytes)
int sceIdStorageLookupForDriver(SceUInt32 key, SceUInt32 offset, void *buf, SceSize size);

sceIdStorageReadLeafForDriver

Version NID
0.931-3.60 0xEB00C509

Reads the whole 512 byte container for the idstorage key.

// key - idstorage key
// buf - buffer with at last 512 bytes of storage
int sceIdStorageReadLeafForDriver(SceUInt32 key, void *buf);

sceIdStorageWriteLeafForDriver

Version NID
0.931-3.60 0x1FA4D135

Writes 512-bytes to the idstorage key.

Returns 0xffffffff if IDStorage is read-only, 0x80230003 if IDStorage is not formatted, 0x80230001 if key > 0xFFEF, 0x80230005 for enumerator issue.

// key - idstorage key
// buf - buffer of at least 512 bytes
int sceIdStorageWriteLeafForDriver(SceUInt32 key, const void *buf);

sceIdStorageFlushForDriver

Version NID
0.931-3.60 0x3AD32523

Finalizes a write.

int sceIdStorageFlushForDriver(void);

sceIdStorageIsFormattedForDriver

Version NID
0.931-3.60 0xFEFA40C2
char sceIdStorageIsFormattedForDriver(void);

sceIdStorageIsDirtyForDriver

Version NID
0.931-3.60 0xB9069BAD
char sceIdStorageIsDirtyForDriver(void);

sceIdStorageIsReadOnlyForDriver

Version NID
0.931-3.60 0x2D633688

Checks idstorage for readonly status.

char sceIdStorageIsReadOnlyForDriver(void);

sceIdStorageFormatForDriver

Version NID
0.931-3.60 0x958089DB
// Returns 0 on success, 0x80230000 if PSVita is not in manufacturing mode.
int sceIdStorageFormatForDriver(void);

sceIdStorageUnformatForDriver

Version NID
0.931-3.60 0xF4BCB3EE
// Returns 0 on success, 0x80230000 if PSVita is not in manufacturing mode.
int sceIdStorageUnformatForDriver(void);

sceIdStorageUpdateForDriver

Version NID
0.931-3.60 0x683AAC10
// Returns 0 on success.
// Returns 0x80230000 if PSVita is not in manufacturing mode, 0xffffffff if IDStorage is read-only.
// Returns 0x80230000 if offset + size > 512, 0x80230001 if key > 0xFFEF.
// Returns 0x80230003 if IDStorage is not formatted, 0x80230005 for enumerator issue.
// key - idstorage key
// offset - offset within the 512 byte leaf
// buf - buffer with enough storage
// size - amount of data to write (offset + size must be <= 512 bytes)
int sceIdStorageUpdateForDriver(SceUInt32 key, SceUInt32 offset, void *buf, SceSize size);

sceIdStorageRestartForDriver

Version NID
0.931-3.60 0x60B647A5
// Returns 0 on success.
// Returns 0x80230000 if PSVita is not in manufacturing mode.
// flush: set to true to call sceIdStorageFlushForDriver
int sceIdStorageRestartForDriver(SceBool flush);