Editing PS3MFW Builder
Jump to navigation
Jump to search
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: | ||
[[Category:Software]] | |||
== Main description == | == Main description == | ||
== Tasks == | == Tasks == | ||
<div style="float:right">[[File:Mfwbuilder.png|200px|thumb|left|PS3MFW Builder v0.2]]<br />[[File:Mfw-otherosplusplus.png|200px|thumb|left|PS3MFW Builder v0.2 OtherOS++]]<br />[[File:Mfw-rebug.png|200px|thumb|left|PS3MFW Builder v0.2 Rebug OtherOS++]]</div> | |||
=== PS3MFW === | === PS3MFW === | ||
Line 11: | Line 11: | ||
**add_license_msg.tcl (0.1) - Add a custom message to the 'New Features' installation screen. Modifies PUP license.xml --license-auto-add-features : Automatically generate the enabled features of PS3MFW --license-features-message : Prefix message to the generated features list --license-message : New Features message (Appears after the license agreement) | **add_license_msg.tcl (0.1) - Add a custom message to the 'New Features' installation screen. Modifies PUP license.xml --license-auto-add-features : Automatically generate the enabled features of PS3MFW --license-features-message : Prefix message to the generated features list --license-message : New Features message (Appears after the license agreement) | ||
**broken_bluray.tcl (0.2) – Allows you to remove Blu-Ray firmware installation so that the MFW can be installed without a working Blu-Ray drive. This is potentially dangerous if used on a PS3 with a working drive, and should only be used if the drive is broken. | **broken_bluray.tcl (0.2) – Allows you to remove Blu-Ray firmware installation so that the MFW can be installed without a working Blu-Ray drive. This is potentially dangerous if used on a PS3 with a working drive, and should only be used if the drive is broken. | ||
**change_coldboot_files.tcl (0.2) – Advanced users only: Allows changing the sound played and image shown during the boot process. Caution: If improper files are used, this can cause a “brick” | **change_coldboot_files.tcl (0.2) – Advanced users only: Allows changing the sound played and image shown during the boot process. Caution: If improper files are used, this can cause a “brick”. | ||
**change_devflash_files.tcl | **change_devflash_files.tcl | ||
**change_ssl_cer.tcl (0.2) – Allows changing of SSL certificates. | **change_ssl_cer.tcl (0.2) – Allows changing of SSL certificates. | ||
Line 35: | Line 35: | ||
**patch_xmb_plugin.tcl | **patch_xmb_plugin.tcl | ||
**spoof_version.tcl (0.2) – Allows changing the firmware version the PS3 appears to be on, similar to the rebug spoofer. | **spoof_version.tcl (0.2) – Allows changing the firmware version the PS3 appears to be on, similar to the rebug spoofer. | ||
=== Gitbrew OtherOS++ === | === Gitbrew OtherOS++ === | ||
* Gitbrew OtherOS++ [http://git.gitbrew.org/repos/?p=ps3/ps3mfw/tasks.git;a=tree *] | * Gitbrew OtherOS++ [http://git.gitbrew.org/repos/?p=ps3/ps3mfw/tasks.git;a=tree *] | ||
** add_license_msg.tcl | |||
** broken_bluray.tcl | |||
** change_coldboot_files.tcl | |||
** change_devflash_files.tcl | |||
** change_ssl_cer.tcl | |||
** change_theme.tcl | |||
** change_version.tcl | |||
** clean_friends.tcl | |||
** clean_game.tcl | |||
** clean_music.tcl | |||
** clean_network.tcl | |||
** clean_photo.tcl | |||
** clean_psn.tcl | |||
** clean_sysconf.tcl | |||
** clean_tv.tcl | |||
** clean_video.tcl | |||
** patch_category_game.tcl | |||
** patch_emer_init.tcl | |||
** patch_lv1.tcl | |||
** patch_lv2.tcl | |||
** patch_nas_plugin.tcl | |||
** patch_privacy.tcl | |||
** patch_profile.tcl | |||
** patch_shop.tcl | |||
** patch_translations.tcl | |||
** patch_vsh.tcl | |||
** patch_xmb_plugin.tcl | |||
** spoof_version.tcl | |||
=== Rebug OtherOS++ === | === Rebug OtherOS++ === | ||
Line 73: | Line 77: | ||
=== | === PSheb project === | ||
* | * PSheb project 0.1 (Hebrew translation of PS3 XMB) | ||
** Task: [ | ** Task: [http://git.dashhacks.com/~danyl/ps3mfw/danyls-tasks/blobs/master/language_pack.tcl language_pack.tcl] | ||
** | ** Languagepack: [http://git.dashhacks.com/psheb/psheb git.dashhacks.com/psheb] | ||
** Newsitem including screenshots for reference: http://www.ps3hax.net/2011/08/psheb-project-v0-1-hebrew-language-on-ps3/ | ** Newsitem including screenshots for reference: http://www.ps3hax.net/2011/08/psheb-project-v0-1-hebrew-language-on-ps3/ | ||
==== Guide for adding other translations / building languagepacks ==== | ==== Guide for adding other translations / building languagepacks ==== | ||
This guide will explain you how to translate the XMB and use [ | This guide will explain you how to translate the XMB and use [http://git.dashhacks.com/~danyl/ps3mfw/danyls-tasks/blobs/master/language_pack.tcl language_pack.tcl] PS3MFW task. | ||
LP structure: | LP structure: | ||
Line 126: | Line 127: | ||
source: http://www.ps3hax.net/2011/08/xmb-translation-guide/ (thanks to DanyL for this fine explaination :) ) | source: http://www.ps3hax.net/2011/08/xmb-translation-guide/ (thanks to DanyL for this fine explaination :) ) | ||
=== more Spoof === | === more Spoof === | ||
Copypaste and save as spoof_version.tcl in tasks folder | Copypaste and save as spoof_version.tcl in tasks folder: | ||
<pre> | |||
#!/usr/bin/tclsh | #!/usr/bin/tclsh | ||
# | # | ||
Line 146: | Line 146: | ||
# Option --spoof: Select firmware version to spoof | # Option --spoof: Select firmware version to spoof | ||
# Type --spoof: combobox { {1.02 1788 001:CEX-ww 20061021 | # Type --spoof: combobox { {1.02 1788 001:CEX-ww 20061021} {3.00 34641 001:CEX-ww 20090829} {3.01 35108 001:CEX-ww 20090910} {3.10 37233 001:CEX-ww 20091113} {3.15 38031 001:CEX-ww 20091206} {3.20 39999 001:CEX-ww 20100128} {3.21 41486 001:CEX-ww 20100320} {3.30 42164 001:CEX-ww 20100414} {3.40 44261 001:CEX-ww 20100623} {3.41 45039 001:CEX-ww 20100721} {3.42 45831 001:CEX-ww 20100901} {3.50 46135 001:CEX-ww 20100913} {3.55 47516 001:CEX-ww 20101127} {3.56 48246 001:CEX-ww 20110129} {3.60 48686 001:CEX-ww 20110304} {3.61 49561 001:CEX-ww 20110428} {3.65 49764 001:CEX-ww 20110513} {3.66 50527 001:CEX-ww 20110616} {3.70 51968 001:CEX-ww 20110805} } | ||
namespace eval ::spoof_version { | namespace eval ::spoof_version { | ||
array set ::spoof_version::options { | array set ::spoof_version::options { | ||
--spoof " | --spoof "3.70 51968 001:CEX-ww 20110805" | ||
} | } | ||
Line 205: | Line 205: | ||
catch_die {::patch_elf $elf $search 0 $replace} "Unable to patch self [file tail $elf] with [::hexify $replace]" | catch_die {::patch_elf $elf $search 0 $replace} "Unable to patch self [file tail $elf] with [::hexify $replace]" | ||
# debug "Patching 0x31a7c0" | # debug "Patching 0x31a7c0" | ||
# set search "\x48\x00\x00\x38\xa0\x7f\x00\x04\x39\x60\x00\x01" | # set search "\x48\x00\x00\x38\xa0\x7f\x00\x04\x39\x60\x00\x01" | ||
# set replace "\x38\x60\x00\x82" | # set replace "\x38\x60\x00\x82" | ||
# catch_die {::patch_elf $elf $search 4 $replace} "Unable to patch self [file tail $elf]" | # catch_die {::patch_elf $elf $search 4 $replace} "Unable to patch self [file tail $elf]" | ||
# debug "Patching ..." | # debug "Patching ..." | ||
# set search "\x4b\xff\xfe\x80\xf8\x21\xff\x81\x7c\x08\x02\xa6\x38\x61\x00\x70" | # set search "\x4b\xff\xfe\x80\xf8\x21\xff\x81\x7c\x08\x02\xa6\x38\x61\x00\x70" | ||
# set replace "\x38\x60\x00\x01\x4e\x80\x00\x20" | # set replace "\x38\x60\x00\x01\x4e\x80\x00\x20" | ||
# catch_die {::patch_elf $elf $search 4 $replace} "Unable to patch self [file tail $elf]" | # catch_die {::patch_elf $elf $search 4 $replace} "Unable to patch self [file tail $elf]" | ||
debug "Patching 0x48d030" | debug "Patching 0x48d030" | ||
set search "\xeb\xe1\x00\x80\x38\x21\x00\x90\x7c\x08\x03\xa6\x4e\x80\x00\x20" | set search "\xeb\xe1\x00\x80\x38\x21\x00\x90\x7c\x08\x03\xa6\x4e\x80\x00\x20" | ||
append search "\xf8\x21\xff\x61\x7c\x08\x02\xa6\xfb\xe1\x00\x98\xf8\x01\x00\xb0" | append search "\xf8\x21\xff\x61\x7c\x08\x02\xa6\xfb\xe1\x00\x98\xf8\x01\x00\xb0" | ||
append search "\x7c\x7f\x1b\x78\x38\x00\x00\x00\x38\x61\x00\x74\xfb\x81\x00\x80" | append search "\x7c\x7f\x1b\x78\x38\x00\x00\x00\x38\x61\x00\x74\xfb\x81\x00\x80" | ||
Line 333: | Line 333: | ||
} | } | ||
} | } | ||
</ | </pre> | ||
== Using console / shellscript == | == Using console / shellscript == | ||
Line 1,519: | Line 341: | ||
By using commandline switches you can preset every task there is, plus the source PUP, destination PUP and debug settings. | By using commandline switches you can preset every task there is, plus the source PUP, destination PUP and debug settings. | ||
Example of PS3MFW Builder 0.2 tasks: | |||
ps3mfw.exe %1 "Y:\PS3-Firmwares" "Z:/PS3MFW-out/test.pup" --change_version --add_license_msg --patch_lv1 --patch_lv2 --patch_nas_plugin --patch_privacy --patch_vsh --patch_category_game --spoof_version --debug true | |||
ps3mfw.exe %1 "Y:\PS3-Firmwares" "Z:/PS3MFW-out/test.pup" --change_version --add_license_msg --patch_lv1 --patch_lv2 --patch_nas_plugin --patch_privacy --patch_vsh --patch_category_game --spoof_version --debug true | |||
Example of PS3MFW Builder with OtherOS++ tasks (in this case tasks that fail with FW 3.15 are disabled/not selected): | |||
ps3mfw.exe %1 "Y:\PS3-Firmwares\" "Z:/MFWOtherOS-out/test.pup" --change_version --add_license_msg --patch_lv1 --patch-lv1-dispmgr-access false --patch-lv1-otheros-plus-plus false --patch_lv2 --patch-emer-init --patch_category_game --patch-package-files true --patch-app-home true --patch_nas_plugin --allow-pseudoretail-pkg true --allow-debug-pkg true --patch_vsh --allow-unsigned-app true --patch_privacy --debug true | |||
ps3mfw.exe %1 "Y:\PS3-Firmwares\ | |||
== Reference == | == Reference == | ||
Line 1,562: | Line 358: | ||
== Downloads / precompiled & source == | == Downloads / precompiled & source == | ||
*Ubuntu precompiled build: [http://www.megaupload.com/?d=R2MHUZ2S ps3mfw.gibrew.8-11-11.ubuntu.zip] (by nevik) | |||
* | *Windows precompiled build of release v0.2 with ps3keys and tools: [http://www.multiupload.com/QSFVE64T72 ps3mfw-w32_portable.rar (4.4 MB)] (pretested Windows 7 / XP) | ||
*Old Windows precompiled build of release v0.1: [http://www.multiupload.com/RPC4L254H7 PS3MFW_0.1-win.rar (4.34 MB)] | |||
*Old Windows precompiled build of release v0.1: | |||
* Apple MAC OSX v0.2: | * Apple MAC OSX v0.2: | ||
** | **[http://www.multiupload.com/9G6FAH46DC PS3mfw.V.02.gitbrew.8-1-11.tasks.zip (4.15 MB)] (Intel) | ||
** | **[http://www.multiupload.com/MMK3TGS0CV PS3mfwV.02.ppc.OsX.gitbrew.8-1-11.tasks.zip (4.14 MB)] (PPC) | ||
* Gitbrew ps3tools (dd aug 18 2011): | * Gitbrew ps3tools (dd aug 18 2011): | ||
** for Linux and MACOSX (Intel&PPC) : | ** for Linux and MACOSX (Intel&PPC) : [http://www.multiupload.com/JWLFSBHVCO Mac-Linux-tools.zip (6.8 MB)] (thanks to nevik :) ) | ||
** for Win7-x64 (needs Cygwin 1.7.x) : | ** for Win7-x64 (needs Cygwin 1.7.x) : [http://www.multiupload.com/SKXTCK85YV Win7-x64-tools.zip (1.05 MB)] (thanks to nevik :) ) | ||
** for Windows x86 and x64 (contains cygwin DLL and other files needed) : | ** for Windows x86 and x64 (contains cygwin DLL and other files needed) : [http://www.multiupload.com/LX5K5TEHZS Windows-x86-x64-ps3tools.rar (2.01 MB)] | ||
*Old MAC OSX precompiled build of release v0.1: | *Old MAC OSX precompiled build of release v0.1: [http://www.multiupload.com/HIX10I5KRL PS3MFW_0.1.dmg (9.04 MB)] | ||
*Quick build scripts: | |||
**For Debian/Ubuntu: http://www.pastie.org/2117364 | |||
**For Debian/Archlinux/RHEL: http://pastie.org/private/6qd9gvzohdm7ivnxuibsg | |||
*Git source : http://git-hacks.com/ps3mfw |