Hacking How likely/doable is it to decompile a DS game in 2021? And has any DS game been partly/fully decompiled before?

SureCandle

Member
OP
Newcomer
Joined
Nov 24, 2021
Messages
10
Trophies
0
Age
25
XP
115
Country
Netherlands
How likely/doable is it to decompile a DS game in 2021? What's such a process like and are there tools that make it easier? I suppose you first have to disassemble it and then "convert" it back to C/C++.

Also has any DS game ever been partially or fully decompiled?
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,375
Country
United Kingdom
Technically there are some Lua games on the DS you could decompile (it uses an odd bytecode format in the stuff I saw). However that is semantic and not really what you asked.

The gigaleaks saw some source code leaked, including for pokemon, and build tools to match.

One of the Princess Maker games accidentally left source code in.

As far as anything else. A few people speculated on the functions/approach a dev might have gone in for when trying to fix a bug, and anti piracy finding tools occasionally went in for similar methods. For something like the N64 stuff, or even the Diablo stuff where there are options to move sideways from other code... nothing I am aware of in progress much less seen in public.
There are some decompilers aimed at older ARM gear (which this is -- it does not even have floating point support), the DS commercial library tends to use precompiled header things over more conventional approaches and it should mostly still be C rather than C++, while it is technically a multi CPU system then the ARM7 binaries are basically libraries as well (to the point you can swap them between ROMs of similar vintage), if you are really good then as noted above the libraries and build tools are available as well so you could train a decompiler. I don't know what the official tools do as far as optimisations that will trouble the decompiler, and the source code available is limited as far as guessing to what extent the library as a whole, or specific games in it (think simple puzzle game vs 3d showpiece), use inline assembly.

As far as you being able to bust out Ghidra, Radare2 or whatever the IDA folks are doing and have it spit out vaguely sensible code for starting a project... actually I have not tried it.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    AncientBoi @ AncientBoi: Ahhhh ok