Want to Join Us ?

you'll be able to discuss, share and send private messages.

Release PPU Debugger oct0xor's

Discussion in 'Debuggers' started by storm shadow, May 30, 2014.

Share This Page

  1. storm shadow

    Techbliss Owner Admin Ida Pro Expert Developer

    deci3dbg - Ida Pro debugger module for Playstation 3

    Whoever used to debug on Playstation 3 knows that there is only one debugger available - SN Systems ProDG. It has some nice features (that I even miss in others debuggers) but overall... its not that good. There also was a gdb client but it was pulled around 1.xx sdk (specification changed, there is no more step cmd, etc). So after some time that I spent with ProDG I realized that it just dont works for me and decided to get host debugger to communicate with Ida. It would have allowed me to use all those nice features like scripts, plugins, tracing, leaving comments in place, interface and hotkeys to which I am used to over the years.
    Okay, I hear that someone of you is asking why I did Ida module and not some kind of gdb proxy instead, and reasons are simple:
    • I already have experience of making gdb proxys and hosts, but not had experience of making Ida debugger modules (actually not much who did this)
    • Ida's gdb client is not open source
    • ppc stub is buggy in 6.1. I do own the latest build of Ida Pro, but lets be honest here, most dont. So I was making this code around this version of Ida. Do not need to mention that Ida Pro 6.5 is backward compatible with 6.1, and even debugger module compiled with idasdk61 would work just fine (much better) with 6.5.
    [​IMG]
    So I did it and it works pretty well. Was testing it for months, catching bugs. At the last time fixed some remaining bugs around half year ago, so it should be much better, but not used it much since then.
    Features

    • PPU debugging
    • General and Float registers
    • Exceptions, Breakpoints, Step thru code
    • Hardware breakpoints (DABR)
    • Threads and Modules
    • Read/Write memory
    • Works with official Sony's Reference Tools and Debug Stations (DECR/DECH)
    • Also works with custom firmwares
    Notes

    It uses ProDG's TMAPI for communication over deci3 protocol with ps3. Its pretty good and even if deci3 specification docs are leaked its saved alot of time. Therefor, its supports only Windows platform.
    Compilation

    Copy content of "C:\Program Files (x86)\SN Systems\PS3\sdk" of your ProDG installation to project folder
    Installation

    Copy deci3dbg.plw and deci3dbg.p64 to plugins folder inside your Ida Pro installation.
    How to use

    1. Load PPC binary in Ida Pro
    2. Debugger -> Select debugger... -> DECI3 debugger plugin
    3. Debugger -> Attach to process...
    4. Select target and press OK (target may be showed as 'disconnected', bug of TMAPI)
    5. Select process
    Source / Build
     
    Rip Cord likes this.
  2. storm shadow

    Techbliss Owner Admin Ida Pro Expert Developer

    rebuild for ida 6.1 ;)
     

    Attached Files:

  3. storm shadow

    Techbliss Owner Admin Ida Pro Expert Developer

    i have made a new version that includes so that the debugger shows in SPU proccessor also,
    just extract in ida folder owerwrite the old ones.
    if you have spu.plw and spu.p64 in the plugins folder delete that and use this insteed.
    Python needed.
     

    Attached Files:

Top