PS3 Does real DECR / DEX have any merit?

NiQ

Senior Member
Hello,
I hope this isn't a dupe but I've searched the forum and couldn't find a clear answer...

I'd like to ask whether a real devkit or a test unit has any extra functionality over a retail CEX with Rebug CFW. I've searched and so far the only difference I could find is that DECR has some extra memory and allows disabling HDCP, and couldn't find any difference between CEX and DEX other than firmware. Does it mean that they're completely unneeded for homebrew dev? Does the retail unit with CFW support all the dev / debugging functions?
 
Well if you are asking there is no real use for you. It is aimed at devs but the only feature some use is the ability to use any game save. DEX you can debug games or some other things but unless you are a dev there isn't any real benefit for normal end user.
 
Well if you are asking there is no real use for you. It is aimed at devs but the only feature some use is the ability to use any game save. DEX you can debug games or some other things but unless you are a dev there isn't any real benefit for normal end user.
Yes, I was asking from a homebrew dev point of view. I'm trying to start learning homebrew dev, was using my old PS2 but I'm considering switching to PS3 since it seems a lot easier to develop for.... except that I don't have one, so before I go and buy a 2nd hand one I wanted to know whether there's any point spending ~$600 for a DECR or DEX rather than just using a CFW.

Thanks for the reply.
 
Yes, I was asking from a homebrew dev point of view. I'm trying to start learning homebrew dev, was using my old PS2 but I'm considering switching to PS3 since it seems a lot easier to develop for.... except that I don't have one, so before I go and buy a 2nd hand one I wanted to know whether there's any point spending ~$600 for a DECR or DEX rather than just using a CFW.

Thanks for the reply.
There are a few advantages with development consoles, some features can be useful for debugging such as memory access traps, footswitch etc..
But there are some disadvantages too, among other things, the restricted availability of customised firmwares and payloads as well as recent official firmwares.

If the aim of the game is purely homebrew development, a regular CFW compatible console is probably your best option on top of being the cheapest. You can install Rebug REX 4.84.2 and switch mode (cex/dex) as you require for debugging and testing.
 
  • Like
Reactions: NiQ
Keep in mind the motherboards used in debug PS3 models (DEX) are identical to retail PS3 models (CEX), the only difference is some configuration bytes that enables the "magic", and we know how to switch them, so one thing is clear... dont buy a official DEX because you can achieve exactly the same result by doing an unnoffical CEX2DEX conversion

With Reference Tool PS3 models (DECR) is a bit different story, because the motherboard is very different, and is imposible to do an unnofficial conversion from CEX2DECR
I dont know how many differences there are in the practise, but as example... the hypervisor (software) of the DECR firmwares is designed to map that extra RAM capacitity exclusive from DECR and as far i know is imposible to patch that.. so is imposible to run a DECR firmware on a CEX or DEX PS3 model... and yeah that extra RAM of the DECR is intended to be used for debugging and running apps/tools at the background

Think in it this way... every game company was buying a bunch of DEX PS3 models for the team (one for each member of the team + a few more for easy replacements incase some of them had a failure)... but only a couple of DECR models because most of the times is not needed

If you are interested in development i think you will be fine with a converted CEX2DEX, is going to be a lot easyer to find it and cheaper, and if at some point you regret you can revert to CEX and sell it
 
Keep in mind the motherboards used in debug PS3 models (DEX) are identical to retail PS3 models (CEX), the only difference is some configuration bytes that enables the "magic", and we know how to switch them, so one thing is clear... dont buy a official DEX because you can achieve exactly the same result by doing an unnoffical CEX2DEX conversion

With Reference Tool PS3 models (DECR) is a bit different story, because the motherboard is very different, and is imposible to do an unnofficial conversion from CEX2DECR
I dont know how many differences there are in the practise, but as example... the hypervisor (software) of the DECR firmwares is designed to map that extra RAM capacitity exclusive from DECR and as far i know is imposible to patch that.. so is imposible to run a DECR firmware on a CEX or DEX PS3 model... and yeah that extra RAM of the DECR is intended to be used for debugging and running apps/tools at the background

Think in it this way... every game company was buying a bunch of DEX PS3 models for the team (one for each member of the team + a few more for easy replacements incase some of them had a failure)... but only a couple of DECR models because most of the times is not needed

If you are interested in development i think you will be fine with a converted CEX2DEX, is going to be a lot easyer to find it and cheaper, and if at some point you regret you can revert to CEX and sell it

Just making sure that I understand correctly - You mean that extra RAM in DECR is mainly for cases where the game itself uses almost the entire memory of a standard unit so without extra RAM you wouldn't be able to load a debugger right? or is there another use?
Also it means that if the game is not that resource heavy all development including debugging can be done on DEX? On PS2 I remember TEST units were just regular units except that they could run master DVD-Rs, but otherwise lacked any dev and debug functionality.
 
The user app debugging capabilities are included in the DEX kernel, you don't need extra stuff on the PS3 side.
DEX consoles only have 256Mb just like retail consoles and that's what most game developers used.
Standard homebrew debugging should always work just fine with 256Mb, especially as homebrew devs don't usually debug projects as big as AAA games anyway.

DECR is only useful for very specific features that 99% of homebrew devs don't need or use.
 
hello, I think it's a silly question maybe but I'm curious and I'm going to take advantage of the fact that there are some dev's around here.
I'm starting in programming a few weeks ago, just the basics of course but I intend to go professionalizing little by little, and I want to get into this world of homebrew development and other things in the playstation scene in general, my doubt among several is:

To program a homebrew like webman and multiman, what programming language do you use? Is it something known as Java, JavaScript, Python or is it a Playstation 3 one? and on PS2?

I've always had this curiosity but never had the opportunity to ask.
 
hello, I think it's a silly question maybe but I'm curious and I'm going to take advantage of the fact that there are some dev's around here.
I'm starting in programming a few weeks ago, just the basics of course but I intend to go professionalizing little by little, and I want to get into this world of homebrew development and other things in the playstation scene in general, my doubt among several is:

To program a homebrew like webman and multiman, what programming language do you use? Is it something known as Java, JavaScript, Python or is it a Playstation 3 one? and on PS2?

I've always had this curiosity but never had the opportunity to ask.
In theory you could write some stuff in scripting languages supported by the PS3 such as Lua, J2ME, JavaScript.. but for all intent and purposes, you really need C or C++ skills and this is basically true for all PlayStation or Xbox environments, that's what all PS3 backup managers like multiman and custom plugins like webman or sman were developed with.
 
In theory you could write some stuff in scripting languages supported by the PS3 such as Lua, J2ME, JavaScript.. but for all intent and purposes, you really need C or C++ skills and this is basically true for all PlayStation or Xbox environments, that's what all PS3 backup managers like multiman and custom plugins like webman or sman were developed with.
I'm studying JavaScript at the moment, so it would work for some projects even but the best would still be C or C++ it? I understand...
I'm studying about just for my own use, I don't intend to work in the area, just to develop something for my own use or simply to understand why a certain thing can't be developed in a certain system, such as an "Open Ps1 Loader", because it's not possible to develop a com on PS2.
And of course, I'm not like some dreamers who think they'll start studying about programming, scripts etc and that they'll be "the guy" who discovered how to break meltdr.2 for example, just in one year of study, I know it's extremely difficult and discouraging, I am realistic and skeptical.
 
Last edited:
I'm studying JavaScript at the moment, so it would work for some projects even but the best would still be C or C++ it? I understand...
JavaScript can ONLY be used as embedded code, that stuff must be run in the PS3 browser or any other app that includes a JavaScript engine. It's the same thing for Actionscript, the scripting language used in Flash swf movie clips.
You cannot develop a fully fledged ps3 homebrew self/sprx executable with JavaScript.
 
JavaScript can ONLY be used as embedded code, that stuff must be run in the PS3 browser or any other app that includes a JavaScript engine. It's the same thing for Actionscript, the scripting language used in Flash swf movie clips.
You cannot develop a fully fledged ps3 homebrew self/sprx executable with JavaScript.
so JavaScript in the PS3 scene is only used to run scripts through the browser?
If I want to make a homebrew, no matter how simple the scene appears in the XMB, should I use C or C++?
 
so JavaScript in the PS3 scene is only used to run scripts through the browser?
If I want to make a homebrew, no matter how simple the scene appears in the XMB, should I use C or C++?
JS runs mostly through the browser.

To compile a homebrew executable, you can use either C or C++ with both the official PS3 SDK and the open source psl1ght SDK.

If you are a complete beginner in software development, you should probably start with C, otherwise if you have experience with other object oriented programming languages, you might feel more comfortable with C++.
 
JS runs mostly through the browser.

To compile a homebrew executable, you can use either C or C++ with both the official PS3 SDK and the open source psl1ght SDK.
.
I understood.
and the Homebrew code itself, do you write it in programs like Visual Studio Code, for example, organize it and convert it into PKG? more complicated, I believe.
If you are a complete beginner in software development, you should probably start with C, otherwise if you have experience with other object oriented programming languages, you might feel more comfortable with C++.
and for those who have already started with JavaScript like me, what would you recommend me, a tip for example, continue studying it in depth and its tools like HTML and CSS, and then go to C and later to C++, or maybe leave JS and go to the basics of C?
I'm in the new beginning, I don't mind changing, in fact I'm trying to hit something, I've already tried to go straight into HTML but obviously it didn't work, I started over with JS and I'm going, for now I just learned to write "hello world !" on google and a dialog box appears where you write your name, nothing much really.
 
I understood.
and the Homebrew code itself, do you write it in programs like Visual Studio Code, for example, organize it and convert it into PKG? more complicated, I believe.

and for those who have already started with JavaScript like me, what would you recommend me, a tip for example, continue studying it in depth and its tools like HTML and CSS, and then go to C and later to C++, or maybe leave JS and go to the basics of C?
I'm in the new beginning, I don't mind changing, in fact I'm trying to hit something, I've already tried to go straight into HTML but obviously it didn't work, I started over with JS and I'm going, for now I just learned to write "hello world !" on google and a dialog box appears where you write your name, nothing much really.
Yes, you can use Visual Studio if you like, the official SDK offers a VS plugin (for vs 2013 in the latest available SDK iirc), and for the psl1ght SDK there is also a VS plugin you can install.
Compiling a PS3 project in visual studio will create an executable file but packing a project into a PKG for deployment requires other tools that are included with the SDKs

Like I said you cannot create executables with HTML/JS, you can only execute stuff within the browser.

The PS3 GameOS is basically a FreeBSD OS at its core so the OS runs more or less like a Linux OS, the same development concepts apply and the same kind of tools.

Forget html and js, get the psl1ght SDK, install it according to instructions, get the psl1ght plugin for Visual Studio and check its visual studio version requirement, install the appropriate visual studio version then install the psl1ght plugin.
From there you should be able to compile a simple self executable and run it on the PS3, when there's no added resources to a project (like in a Hello World sample), there's no need to make a PKG to test your work, the executable can be run directly, you can even send it to the PS3 through the network and make it execute automatically, there's a ps3loadX tool to do just that.

Psl1ght doesn't support sprx plugin projects like webman or xa_plugin, to create such files one must use the official SDK which unfortunately is under expensive licensing.
Included also in the official SDK is the Target Manager and the ProDG debugger which are extremely helpful respectively to manage the PS3 remotely and to debug code.
An alternative to ProDG exists with the IDA deci3 debugger plugin, it allows you to debug code with gdb (the debugger commonly used in Linux) but IDA is also under license.

Of course all those things under license (IDA or official SDK) are available out there if you look for them however we cannot help you find that stuff, please don't ask.

There's plenty of info in this forum about how to use ProDG and Target Manager, there should also be tutorials about debugging.
 
Last edited:
I'm downloading psl1ght, meanwhile I need to ask, SDK, sprx plugin, debug code with dgb, what do these acronyms mean and what are they? I'm not used to them in the topics I frequent.
 
I'm downloading psl1ght, meanwhile I need to ask, SDK, sprx plugin, debug code with dgb, what do these acronyms mean and what are they? I'm not used to them in the topics I frequent.
There's a lot for you to learn so the more details I give you the more questions you will have.
To keep things simple,
1. A SDK is a "software development kit", it's a suite of files including libraries, compiler, debugger and other tools required to create user applications for a target system.
There's an official SDK made by Sony for the PS2, for the PS3, for the Vita, for the PS4 etc..
Because of licensing issues, contributors put together equivalent open source SDKs for homebrew development.

2. There are roughly 2 types of executables, the self files which are like .exe files on Windows, and the sprx plugin files which are like .dll files on Windows.

A self executes in its own process, games and backup managers like multiman or Irisman are self.

A sprx is an executable library, it doesn't execute in its own process, it's always dependent on a self. For instance, webman and other such plugins are dependent on vsh.self which is basically the XMB application.

3. Debugging is a big topic, gdb is the name of one of the most commonly used debugger app on BSD and Linux systems, iirc it stands for something like "GNU debugger", it's a command line tool.
 
There's a lot for you to learn so the more details I give you the more questions you will have.
To keep things simple,
1. A SDK is a "software development kit", it's a suite of files including libraries, compiler, debugger and other tools required to create user applications for a target system.
There's an official SDK made by Sony for the PS2, for the PS3, for the Vita, for the PS4 etc..
Because of licensing issues, contributors put together equivalent open source SDKs for homebrew development.

2. There are roughly 2 types of executables, the self files which are like .exe files on Windows, and the sprx plugin files which are like .dll files on Windows.

A self executes in its own process, games and backup managers like multiman or Irisman are self.

A sprx is an executable library, it doesn't execute in its own process, it's always dependent on a self. For instance, webman and other such plugins are dependent on vsh.self which is basically the XMB application.

3. Debugging is a big topic, gdb is the name of one of the most commonly used debugger app on BSD and Linux systems, iirc it stands for something like "GNU debugger", it's a command line tool.
I think for now I understand what I need, the doubts will come with time and study but the answers too, but thank you for clarifying my doubts and showing me a new world that I will enter headfirst:D
You might be better off getting your stuff from the official psl1ght GitHub repos or from bucanero's GitHub repos.
yes, I will download the updated files tomorrow through github. Do you happen to have a link to them? if not, check with bucanero or look for the github repository
 

Similar threads

Back
Top