IDPS

From Vita Dev Wiki
Jump to: navigation, search


The IDPS (called ConsoleId on PSVita) is a 16 bytes value that contains console specific information like Region or Model Type. Exactly what information this stores is not yet completely known. We are able to derive exact PSCode from ConsoleId.

Structure

                             Chassis Check  
                                   ⇓                      
00000000  00 00 00 01 01 03 00 10 0C 1C EF DD CA 25 52 66  ..........ïÝÊ%Rf
                       ⇑ ⇑   ⇑ ⇑
                  Target ID  Vita Model Type
    (Internal: Product Code) (Internal: Product Sub Code)
  • Bytes 0-3 represent the ConsoleId magic
  • 5th and 6th bytes represent the Product Code (wrongly called TargetId)
  • 7th and 8th bytes represent the Product Sub Code (wrongly called Vita SKU Model)
  • 9th byte represent the chassis check

Where to find the IDPS of a PSVita ?

With HENkaku (3.60) or h-encore (3.63-3.65-3.67-3.68)

Install VitaCID by Major_Tom (aka tomtomdu80): [link]

Follow the instructions.

A file CID.bin is created on the path: ux0:CID.bin.

The IDPS of your PSVita is the 16 first bytes of CID.bin.

NOTE: MajorTom did a mistake thinking that the function returned a 32 bytes buffer...

or

Install PSV IDPS Dumper by Yoti (aka RealYoti): [link]

With an ePSP CFW (<=3.63)

The PSVita and its PSP Emulator share the same IDPS. You can grab the IDPS directly from the PSP Emulator using PSP homebrew which reads PSP IDPS (requires an ePSP kexploit) like psp_idpsdump.

This homebrew reads an IdStorage key which embeds the IDPS like key 0x121 at Offset 0x60.

This method doesn't work on 3.65+ because on latest firmwares there is no found ePSP kexploit to launch TN-V or ARK.