IdStorage: Difference between revisions

From Vita Development Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
See also [https://playstationdev.wiki/pspdevwiki/index.php?title=IDStorage].
= Description =
Region of the PSVita eMMC where perconsole info is stored.
= Location =
= Location =


Line 5: Line 11:
= Structure =
= Structure =


First 0x20 * 0x200 bytes of the partition is the index table, an array of 2-byte integers, which maps idstorage leaf to idstorage index. To find the index of a leaf, go through the array and note index of the element with the value of the desired leaf. Then, seek to <code>512 * index</code> and read out the leaf data.
On PSVita, 128 leaves exist. Some are empty, others are unique, and there are others which are duplicated. All leaves are of size 512 bytes.


All leafs are of size 512 bytes.
First 0x20 * 0x200 bytes of the IDStorage eMMC partition is the index table, an array of 2-byte integers, which maps idstorage leaf to idstorage index. To find the index of a leaf, go through the array and note index of the element with the value of the desired leaf. Then, seek to <code>512 * index</code> and read out the leaf data.


= Content =
= Content =
== Table of leaves ==


{| class="wikitable"
{| class="wikitable"
|-
|-
! Leaf           !! Description
! Leaf Index !! Empty? !! Unique? !! Notes
|-
| 00 || No || No || 0x20 is equal to 0x00
|-
| 01 || No || No || 0x21 is equal to 0x01
|-
| 02 || No || No || 0x22 is equal to 0x02
|-
| 03 || No || No || 0x23 is equal to 0x03
|-
| 04 || No || No || 0x24 is equal to 0x04
|-
| 05 || No || No || 0x25 is equal to 0x05
|-
| 06 || No || No || 0x26 is equal to 0x06
|-
| 07 || No || No || 0x27 is equal to 0x07
|-
| 08->1F || Yes || No ||
|-
| 28->3F || Yes || No ||
|-
| 40 || No || Yes ||
|-
| 41 || No || Yes ||
|-
| 42 || No || Yes ||
|-
| 43 || No || Yes ||
|-
| 44 || No || Yes ||
|-
| 45 || No || Yes ||
|-
| 46 || No || Yes ||
|-
| 47 || No || Yes ||
|-
| 48 || No || Yes ||
|-
| 49 || No || Yes ||
|-
| 4A || No || Yes ||
|-
| 4B->7D || Yes || No ||
|-
| 7E || No || Yes ||
|-
| 7F || Yes || No ||
|-
| 80 || No || Yes || Special leaf with "SMI" header. SMI data: factory firmware encrypted and signed
|-
|-
| 0x80            || SMI data: factory firmware encrypted and signed
|}
|}

Revision as of 22:49, 15 February 2020

See also [1].

Description

Region of the PSVita eMMC where perconsole info is stored.

Location

Idstorage data is stored at first raw partition (code 0x1). Use [2] to extract.

Structure

On PSVita, 128 leaves exist. Some are empty, others are unique, and there are others which are duplicated. All leaves are of size 512 bytes.

First 0x20 * 0x200 bytes of the IDStorage eMMC partition is the index table, an array of 2-byte integers, which maps idstorage leaf to idstorage index. To find the index of a leaf, go through the array and note index of the element with the value of the desired leaf. Then, seek to 512 * index and read out the leaf data.

Content

Table of leaves

Leaf Index Empty? Unique? Notes
00 No No 0x20 is equal to 0x00
01 No No 0x21 is equal to 0x01
02 No No 0x22 is equal to 0x02
03 No No 0x23 is equal to 0x03
04 No No 0x24 is equal to 0x04
05 No No 0x25 is equal to 0x05
06 No No 0x26 is equal to 0x06
07 No No 0x27 is equal to 0x07
08->1F Yes No
28->3F Yes No
40 No Yes
41 No Yes
42 No Yes
43 No Yes
44 No Yes
45 No Yes
46 No Yes
47 No Yes
48 No Yes
49 No Yes
4A No Yes
4B->7D Yes No
7E No Yes
7F Yes No
80 No Yes Special leaf with "SMI" header. SMI data: factory firmware encrypted and signed