Sponsored Links

Sponsored Links

Guide to Reversing on PS3 Linux Using the GNU Toolchain


Sponsored Links
210w ago - Today Disane has made available a guide to reversing on PS3 Linux using the GNU Toolchain.

Prerequisites for it include computer science, assembly and C knowledge along with having available the GNU toolchain for the Cell Processor installed on PS3 Linux.

PPC32-64 assembly:

[Register or Login to view links]
[Register or Login to view links]
[Register or Login to view links]
[Register or Login to view links]
[Register or Login to view links]
[Register or Login to view links]
[Register or Login to view links]
[Register or Login to view links]

Official PPC32-64 Docs:

[Register or Login to view links]
[Register or Login to view links]

Cell Processor SPU assembly:

[Register or Login to view links]
[Register or Login to view links]
[Register or Login to view links]
[Register or Login to view links]

We are also going to use the following documentations when we are reversing SPU code:

[Register or Login to view links]
[Register or Login to view links]

So now that we are through the introduction. Let's get down and dirty. The first thing we need is an application we can reverse. Well, we could try and reverse existing applications compiled on our PPC64 Linux but that would take too much time and besides this is not a book. So we are going to start with something very basic.

The application we are going to reverse today is the all times classic "Guessing Game" written in C. The idea is simple. The computer generates a number between 1 and 10 and the player has to guess which number has the computer generated. Simple, right? In C probably yes but in PPC and SPU assembly this could be a real challenge even for experienced programmers.

Well we are not going to write the game in PPC and SPU assembly simply because of two reasons. The first one is that C is portable code. We can compile our C code to run on the PPU or on the SPU. Cool, what's the other reason? Well the other reason is that this is a tutorial on reversing SPU and PPU code and not an assembly tutorial.

About the sample code I'm going to show you. We are not going to use classes or anything fancy this is a classic C (sequential programming 101) so no Object Oriented Programming introduced. No exceptions to invoke or anything fancy. We are going to use one single Game Loop to keep the game going until the player wins (yeah you can't lose in this game, but you can modify it if you want, the possibilities are endless).

Alright so let's fire up Linux on our PS3 and open up the Terminal. I don't know about you, but I've got Ubuntu 10.4 on my machine. Locate a nice spot like ~/Projects/Reversing/guessing_game/ (use cd command to get to you home directory then mkdir to create the directories you need) and here we can create a text document using gedit or nano (type in gedit or nano).

The rest of the Guide to Reversing on PS3 Linux Using the GNU Toolchain can be found HERE or linked above!



Stay tuned for more PS3 Hacks and PS3 CFW news, follow us on Twitter and be sure to drop by the PS3 Hacks and PS3 Custom Firmware Forums for the latest PlayStation 3 scene updates and homebrew releases!

Comments 4 Comments - Go to Forum Thread »

• Please Register at PS3News.com or Login to make comments on Site News articles. Thanks!

duventj's Avatar
#4 - duventj - 210w ago
Interesting and very nice post...

Merci beaucoup !!

red8316's Avatar
#3 - red8316 - 210w ago
Wowza, lots of information, very comprehensive post. Looks like a useful contribution. Nice work.

PS3 News's Avatar
#2 - PS3 News - 210w ago
Honestly, it's just for budding Devs who wish to learn how to reverse-engineer... most end-users probably won't ever use it.

tjay17's Avatar
#1 - tjay17 - 210w ago
What can you do with this?

Sponsored Links

Sponsored Links
Sponsored Links

Sponsored Links







Affiliates - Contact Us - PS3 Downloads - Privacy Statement - Site Rules - Top - © 2014 PlayStation 3 News