Talk:Dev Tools: Difference between revisions

From PS3 Developer wiki
Jump to navigation Jump to search
mNo edit summary
(added Q for tool build process)
 
(33 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== sputnik - Cell/SPU Pipeline viewer==
==Playstation Noob Dev(s)==
http://www.ps3hax.net/2011/08/sputnik-build-3-cellspu-pipeline-viewer/
* [http://dl.dropbox.com/u/334837/Sputnik.exe.zip Windows] (will also need [http://qt.nokia.com/downloads QT runtime files])
* [http://dl.dropbox.com/u/334837/Sputnik.dmg MAC OSX]


== netrpc ==
Q1).  getting the tools to work, compile ? can someone please provide a link / recommended repo for
toolchain
libs
devtools.


git://gist.github.com/1041214.git <br />https://gist.github.com/1041214
as i work out whats what i will add to this page, "soz if this is wrong, but i cant seam to find the right way"


Merge needed (?) : https://webcache.googleusercontent.com/search?q=cache:http%3A%2F%2Fwiki.gitbrew.org%2Fwikibrew%2FPS3%3ATools


== Objdump ==
==Playstation fonts==
Playstation buttons:
*http://lettertype.net/lettertype-PlayStation_Buttons.ttf.html  -or-
*http://www.dingbatdepot.com/details/PlaystationButtons  -or-
*http://www.dafont.com/playstation-buttons.font


If you, for whatever reason, need to disassemble non-x86 binary files, you usually look out for a disassembler. If there's nothing free available for your platform (e.g.: ARM) one of the few solutions may be buying something like IDA Pro.
D/L mirror: [http://www.multiupload.com/ABIRF4VDQJ playstation_buttons.zip (4.78 KB)]


But wait, if you only need to "analyze" a small portion (boot-sector, single routine, ...) and someone already ported GNUs GCC and bintools to your platform, using OBJDUMP may do the trick...


If "raw.bin" is your binary file, just typing
Playstation:
<pre>  objdump -d raw.bin
*http://ff.untoldhorror.com/playstation.zip
  objdump: raw.bin: File format not recognized</pre>


will not work. Objdump needs a file system object or file.
D/L mirror: [http://www.multiupload.com/9E2T9DOE57 playstation.zip (22.33 KB)]


Just do it like this:
== Example of crashreport (and list of SPRX's loaded by VSH)==
<pre>  # create an empty file
http://pastie.org/private/7xngkxa0siozrjzh8obuq (caused by bug in ethdebug and vsh) @ slim cech-2101a
  touch empty.c


  # compile this empty file
PRX Info: 46 PRX in process
  gcc -c -o empty.o empty.c
/dev_flash/sys/internal/sys_audio.sprx
 
/dev_flash/sys/external/libsre.sprx
  # add binary as a raw section
/dev_flash/sys/external/libadec.sprx
  objcopy --add-section raw=raw.bin empty.o
/dev_flash/sys/external/libac3dec.sprx
/dev_flash/vsh/module/paf_ext.sprx
  # remove ".comment" section to join
/dev_flash/vsh/module/qglbase.sprx
  objcopy -R .comment empty.o
/dev_flash/vsh/module/vshmain_ext.sprx
 
/dev_flash/vsh/module/basic_plugins.sprx
  # now run objdump on it
/dev_flash/sys/internal/libfs_utility_full.sprx
  objdump -d empty.o</pre>
/dev_flash/vsh/module/paf_web.sprx
Source: http://askrprojects.net/software/objdump.html
  /dev_flash/vsh/module/custom_render_plugin.sprx
 
/dev_flash/sys/external/libjpgdec.sprx
== Several handy scripts ==
  /dev_flash/sys/external/libvdec.sprx
Most of the scripts are using graf's ps3dm-utils, so make sure you have them in your /bin directory.
  /dev_flash/sys/external/libdmux.sprx
Also make sure you are using graf's kernel (graf_chokolo kernel 2.6.39).
  /dev_flash/sys/external/libdmuxpamf.sprx
 
  /dev_flash/sys/external/libpamf.sprx
===panic1.sh===
  /dev_flash/sys/external/libatxdec.sprx
This script will panic lv1 and get you back to petitboot, without exiting to GameOS.
  /dev_flash/sys/external/libat3dec.sprx
  ps3hvc_hvcall /dev/ps3hvc panic 1
  /dev_flash/sys/external/libavcdec.sprx
 
  /dev_flash/sys/external/libatrac3plus.sprx
===usb_dongle_auth.sh===
  /dev_flash/sys/external/libsmvd4.sprx
This script will get you into Factory/Service mode, without using dongle:
/dev_flash/sys/internal/libasfparser2.sprx
  echo Generating a challenge
  /dev_flash/vsh/module/msmw1.sprx
  ps3dm_usb_dongle_auth /dev/ps3dmproxy gen_challenge
  /dev_flash/vsh/module/msmw2.sprx
  echo Generating a response '(0xAAAA)'
/dev_flash/vsh/module/sacd.sprx
  ps3dm_usb_dongle_auth /dev/ps3dmproxy gen_resp 0xAAAA
/dev_flash/vsh/module/mms.sprx
  echo Verifying response '(0xAAAA)'
  /dev_flash/vsh/module/mms_db_full.sprx
  ps3dm_usb_dongle_auth /dev/ps3dmproxy verify_resp 0xAAAA
  /dev_flash/vsh/module/mms_ext_full.sprx
  echo Checking if 'Product Mode is enabled
/dev_flash/vsh/module/x3_mdimp3.sprx
  The returned value shouldn't be 0xff
/dev_flash/vsh/module/x3_mdimp4.sprx
  ps3dm_um /dev/ps3dmproxy read_eprom 0x48C07
  /dev_flash/vsh/module/x3_mdimp6.sprx
 
  /dev_flash/vsh/module/x3_mdimp9.sprx
===dump_EID0.sh===
/dev_flash/vsh/module/x3_mdimp1.sprx
This script will dump your EID0.
  /dev_flash/vsh/module/x3_mdimp2.sprx
  echo Dumping EID0
  /dev_flash/vsh/module/x3_amgsdk.sprx
  ps3dm_iim /dev/ps3dmproxy get_data 0x0 > EID0.bin
/dev_flash/vsh/module/x3_mdimp8.sprx
 
  /dev_flash/vsh/module/x3_mdimp11.sprx
===dump_EID4.sh===
  /dev_flash/vsh/module/x3_mdimp5.sprx
This script will dump your EID4.
  /dev_flash/vsh/module/mintx_client.sprx
  echo Dumping EID4
  /dev_flash/vsh/module/soundvisualizer_plugin.sprx
  ps3dm_iim /dev/ps3dmproxy get_data 0x4 > EID4.bin
/dev_flash/vsh/module/xmb_plugin.sprx
 
/dev_flash/sys/external/libgifdec.sprx
===get_EID0_size.sh===
  /dev_flash/sys/internal/libtiffdec.sprx
This script will get the size of your EID0.
  /dev_flash/vsh/module/game_ext_plugin.sprx
  echo EID0 size:
/dev_flash/vsh/module/eseidle.sprx
  ps3dm_iim /dev/ps3dmproxy get_data_size 0x0
/dev_flash/vsh/module/explore_plugin.sprx
 
===get_EID4_size.sh===
This script will get the size of your EID4.
  echo EID4 size:
  ps3dm_iim /dev/ps3dmproxy get_data_size 0x4
 
===get_metldr_size.sh===
This script will get the size of metldr.
  echo metldr size:
  ps3dm_iim /dev/ps3dmproxy get_data_size 0x1000
 
===nor_dump.sh===
  echo Dumping nor
  dd if=/dev/ps3nflasha of=nor.bin
 
===dump_ram.sh===
This script will dump your ram.
  echo Dumping ram
dd if=/dev/ps3ram of=ps3ram.bin
 
===dump_vram.sh===
This script will dump your vram.
  echo Dumping vram
dd if=/dev/ps3vram of=ps3vram.bin
 
 
 
== Payloader3 ==
http://git.dashhacks.com/payloader3/payloader3/trees/master
 
Howto:
# Set firmware version in Makefile
# Compile with "./build.sh"
# Copy pkg file to usb stick
# Install pkg on PS3
 
Notes:
# Loading ps3load after the payload will execute the appropriate ps3load.self, after your self exits you will be returned to the XMB.
# Loading 'ethdebug' will load ArielX's Kammy self, after it executes you will be returned to the XMB.
# Loading 'ethdebug/ps3load' will load ethdebug, then ps3load.
 
Limitations:
* ps3load will '''not''' work on 3.55 (¨sysProcessExitSpawn2¨ won't work proper), use 3.41 instead.

Latest revision as of 14:28, 6 January 2014

Playstation Noob Dev(s)[edit source]

Q1). getting the tools to work, compile ? can someone please provide a link / recommended repo for toolchain libs devtools.

as i work out whats what i will add to this page, "soz if this is wrong, but i cant seam to find the right way"

Merge needed (?) : https://webcache.googleusercontent.com/search?q=cache:http%3A%2F%2Fwiki.gitbrew.org%2Fwikibrew%2FPS3%3ATools

Playstation fonts[edit source]

Playstation buttons:

D/L mirror: playstation_buttons.zip (4.78 KB)


Playstation:

D/L mirror: playstation.zip (22.33 KB)

Example of crashreport (and list of SPRX's loaded by VSH)[edit source]

http://pastie.org/private/7xngkxa0siozrjzh8obuq (caused by bug in ethdebug and vsh) @ slim cech-2101a

PRX Info: 46 PRX in process
/dev_flash/sys/internal/sys_audio.sprx
/dev_flash/sys/external/libsre.sprx
/dev_flash/sys/external/libadec.sprx
/dev_flash/sys/external/libac3dec.sprx
/dev_flash/vsh/module/paf_ext.sprx
/dev_flash/vsh/module/qglbase.sprx
/dev_flash/vsh/module/vshmain_ext.sprx
/dev_flash/vsh/module/basic_plugins.sprx
/dev_flash/sys/internal/libfs_utility_full.sprx
/dev_flash/vsh/module/paf_web.sprx
/dev_flash/vsh/module/custom_render_plugin.sprx
/dev_flash/sys/external/libjpgdec.sprx
/dev_flash/sys/external/libvdec.sprx
/dev_flash/sys/external/libdmux.sprx
/dev_flash/sys/external/libdmuxpamf.sprx
/dev_flash/sys/external/libpamf.sprx
/dev_flash/sys/external/libatxdec.sprx
/dev_flash/sys/external/libat3dec.sprx
/dev_flash/sys/external/libavcdec.sprx
/dev_flash/sys/external/libatrac3plus.sprx
/dev_flash/sys/external/libsmvd4.sprx
/dev_flash/sys/internal/libasfparser2.sprx
/dev_flash/vsh/module/msmw1.sprx
/dev_flash/vsh/module/msmw2.sprx
/dev_flash/vsh/module/sacd.sprx
/dev_flash/vsh/module/mms.sprx
/dev_flash/vsh/module/mms_db_full.sprx
/dev_flash/vsh/module/mms_ext_full.sprx
/dev_flash/vsh/module/x3_mdimp3.sprx
/dev_flash/vsh/module/x3_mdimp4.sprx
/dev_flash/vsh/module/x3_mdimp6.sprx
/dev_flash/vsh/module/x3_mdimp9.sprx
/dev_flash/vsh/module/x3_mdimp1.sprx
/dev_flash/vsh/module/x3_mdimp2.sprx
/dev_flash/vsh/module/x3_amgsdk.sprx
/dev_flash/vsh/module/x3_mdimp8.sprx
/dev_flash/vsh/module/x3_mdimp11.sprx
/dev_flash/vsh/module/x3_mdimp5.sprx
/dev_flash/vsh/module/mintx_client.sprx
/dev_flash/vsh/module/soundvisualizer_plugin.sprx
/dev_flash/vsh/module/xmb_plugin.sprx
/dev_flash/sys/external/libgifdec.sprx
/dev_flash/sys/internal/libtiffdec.sprx
/dev_flash/vsh/module/game_ext_plugin.sprx
/dev_flash/vsh/module/eseidle.sprx
/dev_flash/vsh/module/explore_plugin.sprx