Editing Iso module

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
= Explanation =
[[Category:Software]]
 
= Explaination =
Isolated modules are used for de-/encryption, rehashing etc.
Isolated modules are used for de-/encryption, rehashing etc.


Commonly found in [[CoreOS]], [[Talk:Files_on_the_PS3#dev_flash|dev_flash]], embedded sony selfs and service packages like [[Remarry Bluray Drive]].
Commonly found in [[CoreOS]], [[Talk:Files_on_the_PS3#dev_flash|dev_flash]], embedded sony selfs and service packages like [[Remarry Bluray Drive]].


They are SPU .self binaries which can be called whenever needed: e.g. decrypting and hashcheck [[Flash#EID0_-_Section_0|EID0]] for [[Product Code]] inside [[IDPS]] when called upon by lv1 (HyperVisor) to set up restrictions for Retail/CEX or Debug/DEX etc.
They are SPU .self binaries which can be called whenever needed: e.g. decrypting and hashcheck [[Flash#EID0_-_Section_0|EID0]] for [[Target ID]] inside [[IDPS]] when called upon by lv1 (HyperVisor) to set up restrictions for Retail/CEX or Debug/DEX etc.


''Note: This page lists all isolated modules, except bootldr, metldr and other loaders from [[CoreOS]], see also [[Boot Order]]''
''Note: This page lists all isolated modules, except bootldr, metldr and other loaders from [[CoreOS]], see also [[Boot Order]]''


== Known isolated modules ==
== Known isolated modules ==
{| class="wikitable"
{| class="wikitable"
|-
|-
! Module !! Usage !! Location !! Remarks
! Module !! Usage !! Location !! Remarks
|-
|-
| AacsModule.spu.isoself || [[Flash:Encrypted_Individual_Data_-_eEID#EID3|EID3]] and theoretically [[Flash#FF_Filled_with_OCRL0200_section|OCRL]] || /dev_flash/bdplayer ||
| AacsModule.spu.isoself || [[Flash#EID3_-_Section_3|EID3]] and theoretically [[Flash#FF_Filled_with_OCRL0200_section|OCRL]] || /dev_flash/bdplayer ||
|-
|-
| aim_spu_module.self  || [[Flash:Encrypted_Individual_Data_-_eEID#EID0|EID0]] (section 0x00 and 0x0A) || [[CoreOS]] ||  
| aim_spu_module.self  || [[Flash#EID0_-_Section_0|EID0]] (section 0x00 and 0x0A) || [[CoreOS]] ||  
|-
|-
| CprmModule.spu.isoself || [[Flash:Encrypted_Individual_Data_-_eEID#EID3|EID3]] || /dev_flash/bdplayer ||  
| CprmModule.spu.isoself || [[Flash#EID3_-_Section_3|EID3]] || /dev_flash/bdplayer ||  
|-
|-
| CssModule.spu.isoself ||  || /dev_flash/bdplayer ||  
| CssModule.spu.isoself ||  || /dev_flash/bdplayer ||  
|-
|-
| fdm_spu_module || [[Flash:Encrypted_Individual_Data_-_eEID#EID2|EID2]], [[Remarry Bluray Drive]] || [[2.43_CEX|2.43 JIG PUP]] ||  
| fdm_spu_module || [[Flash#EID2_-_Section_2|EID2]], [[Remarry Bluray Drive]] || [http://www.ps3devwiki.com/files/firmware/MFW-CEX/JIG/2.43/ 2.43 JIG PUP] ||  
|-
|-
| manu_info_spu_module.self ||  || [[CoreOS]] (since FW 3.50) ||  
| manu_info_spu_module.self ||  || [[CoreOS]] (since FW 3.50) ||  
Line 29: Line 28:
| mc_iso_spu_module.self || PS2 || [[CoreOS]] ||  
| mc_iso_spu_module.self || PS2 || [[CoreOS]] ||  
|-
|-
| me_iso_for_ps2emu.self || PS2 || [[CoreOS]] (since FW 3.70) ||  
| me_iso_for_ps2emu.self || PS2 || [[CoreOS]] (since FW 3.60) ||  
|-
|-
| me_iso_spu_module.self || PS2 || [[CoreOS]] ||  
| me_iso_spu_module.self || PS2 || [[CoreOS]] ||  
|-
|-
| SacModule.spu.isoself || [[Flash:Encrypted_Individual_Data_-_eEID#EID3|EID3]], SuperAudioCD || /dev_flash/vsh/module ||  
| SacModule.spu.isoself || [[Flash#EID3_-_Section_3|EID3]], SuperAudioCD || /dev_flash/vsh/module ||  
|-
|-
| sb_iso_spu_module.self || [[South Bridge]] || [[CoreOS]] ||  
| sb_iso_spu_module.self || [[South Bridge]] || [[CoreOS]] ||  
Line 39: Line 38:
| sc_iso.self || [[Syscon Hardware|syscon]] || [[CoreOS]] ||  
| sc_iso.self || [[Syscon Hardware|syscon]] || [[CoreOS]] ||  
|-
|-
| sc_iso_factory.self || [[Syscon Hardware|syscon]] || [[2.43_CEX|2.43 JIG PUP]] ||
| sc_iso_factory.self || [[Syscon Hardware|syscon]] || [http://www.ps3devwiki.com/files/firmware/MFW-CEX/JIG/2.43/ 2.43 JIG PUP] ||  
|-
| spu_handler.isoself || PSP Savegames || self inside /dev_flash/sys/internal/libchnnlsv.sprx ||  
|-
|-
| spu_handler.isoself || PSP || self inside /dev_flash/pspemu/release/emulator_drm.sprx mself (since FW 3.15) ||  
| spu_handler.isoself || PSP || self inside /dev_flash/pspemu/release/emulator_drm.sprx mself (since FW 3.15) ||  
|-
|-
| spu_mode_auth.self ||  || [[2.43_CEX|2.43 JIG PUP]] ||  
| spu_mode_auth.self ||  || [http://www.ps3devwiki.com/files/firmware/MFW-CEX/JIG/2.43/ 2.43 JIG PUP] ||  
|-
|-
| spu_pkg_rvk_verifier.self ||  || [[CoreOS]] ||  
| spu_pkg_rvk_verifier.self ||  || [[CoreOS]] ||  
Line 53: Line 50:
| spu_utoken_processor.self || usertokens || [[CoreOS]] (since FW 2.40) ||  
| spu_utoken_processor.self || usertokens || [[CoreOS]] (since FW 2.40) ||  
|-
|-
| ss_sc_init.self || [[Syscon Hardware|syscon]] || [[2.43_CEX|2.43 JIG PUP]] ||  
| ss_sc_init.self || || [http://www.ps3devwiki.com/files/firmware/MFW-CEX/JIG/2.43/ 2.43 JIG PUP] ||  
|-
|-
| sv_iso_for_ps2emu.self || [[Flash:Encrypted_Individual_Data_-_eEID#EID4|EID4]], PS2 || [[CoreOS]] (since FW 3.70) ||  
| sv_iso_for_ps2emu.self || PS2 || [[CoreOS]] (since FW 3.60) ||  
|-
|-
| sv_iso_spu_module.self || [[Flash:Encrypted_Individual_Data_-_eEID#EID0|EID0]], [[Flash:Encrypted_Individual_Data_-_eEID#EID4|EID4]], PS2, bluray || [[CoreOS]] ||  
| sv_iso_spu_module.self || [[Flash#EID4_-_Section_4|EID4]], PS2, bluray || [[CoreOS]] ||  
|-
|-
|}
|}


=== sc_iso.self ===
=== sc_iso.self ===
sc_iso.self is used by the system to handle communications to/from syscon. Once debug printing is enabled after you load it, you can see some of the internal workings including error codes for when you are trying to use the module on your own.
sc_iso.self is used by the system to handle communications to/from syscon. Once debug printing is enabled after you load it, you can see some of the internal workings including error codes for when you are trying to use the module on your own.


Line 103: Line 99:
|-
|-
|}
|}
== Iso module main arguments ==
{| class="wikitable"
|-
! Register !! Value
|-
| r3 || uint64_t iso_module_arg0
|-
| r4 || uint64_t iso_module_arg1
|-
| r5 || uint64_t iso_module_arg2
|-
| r6 || uint64_t iso_module_arg3
|-
| r7 || uint128_t indiv_data0_part0
|-
| r8 || uint128_t indiv_data0_part1
|-
| r9 || uint128_t indiv_data0_part2
|-
| r10 || uint128_t indiv_data0_part3
|-
| r11 || uint128_t indiv_data1_part0
|-
| r12 || uint128_t indiv_data1_part1
|-
| r13 || uint128_t indiv_data1_part2
|-
| r14 || uint128_t indiv_data1_part3
|-
| r15 || uint128_t indiv_data2_part0
|-
| r16 || uint128_t indiv_data2_part1
|-
| r17 || uint128_t indiv_data2_part2
|-
| r18 || uint128_t indiv_data2_part3
|-
| r19 || uint128_t indiv_data3_part0
|-
| r20 || uint128_t indiv_data3_part1 (EID0_KEY_first_part for sv_iso_module only)
|-
| r21 || uint128_t indiv_data3_part2 (EID0_KEY_second_part for sv_iso_module only)
|-
| r22 || uint128_t indiv_data3_part3 (EID0_IV for sv_iso_module only)
|-
| r23 || uint32_t entry_point
|-
| r24 || uint64_t forced_sdk_minver (passed from metldr)
|-
|}
{{Development}}<noinclude>[[Category:Main]]</noinclude>
Please note that all contributions to PS3 Developer wiki are considered to be released under the GNU Free Documentation License 1.2 (see PS3 Developer wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)