Talk:IDPS

From PS3 Developer wiki
Revision as of 12:41, 22 September 2011 by Euss (talk | contribs)
Jump to navigation Jump to search
 00 00 00 01 00 81 00 01 03 FF FF FF 18 43 C1 4D
 00 00 00 01 00 85 00 0A 14 05 67 A0 79 37 DC 17
 00 00 00 01 00 84 00 08 14 0B 80 7A 2E 4F AA C7
 00 00 00 01 00 89 00 08 14 01 01 06 1B 91 1C 5C
 00 00 00 01 00 89 00 0B 14 00 EF DD CA 25 52 66


You’re probably wondering: “What the hell is this sequence of bytes?”. This is the IDPS, a sequence of bytes which determine console type. This structure is relatively undocumented until now, anyway. The IDPS is contained in EID0. EID0 is on the console internal flash as the file eEID and has multiple sections. I had made a splitter application to make your life easier a long time ago. Now, EID is decrypted by metldr, and is passed over to the isolated loader, which may pass it to a self. We can see this in graf_chokolo’s original payload. The IDPS is also used in various other parts of the system which could be of interest to you, but I will not discuss those right now. The IDPS itself, isn’t decrypted.

The IDPS contains your target ID, motherboard? and BD? revision. The IDPS shown at the beginning of this article is the dummy IDPS, the one that’s used when your IDPS fails to be decrypted. That IDPS belongs to a DECR-1000A. The one below belongs to a European PS3, and the one below that belongs to a Australian/NZ PS3.

Source: http://rms.grafchokolo.com/?p=116


Note: The Reference Tool IDPS from above is static. aim_iso uses it. Retail/3.55 doesn't have it.


other examples:

 00 00 00 01 00 87 00 08 14 00 EF DD CA 25 52 66
 00 00 00 01 00 85 00 08 10 05 52 88 e8 af 75 0d
 00 00 00 01 00 85 00 08 f4 01 aa 02 51 ee 33 7b
 00 00 00 01 00 85 00 09 10 1b 69 bd ca cc be 85
 00 00 00 01 00 85 00 0b 10 18 ec 96 e4 a8 be ef
 00 00 00 01 00 87 00 08 14 01 b7 a7 1f c8 3a ea
 00 00 00 01 00 87 00 07 10 00 a3 15 8f 61 36 85
 00 00 00 01 00 87 00 0b 14 0c 84 81 81 33 fa 68

Theory: If you give a slim console a fat IDPS, would that console have 3.15 OtherOS functionality?

I would say it would, because most likely the check is done in firmware to either en/disable that option. However, it would still require a console that can be downgraded to that version (only CECH-20../DYN-001, because CECH-21../SUR-001 are known to have a lowvercheck of 3.20). So classic OtherOS on a CellBE 45nm/RSX 40nm would be impossible (ofcourse you can use OtherOS++).