Interesting exercise. Why does 1/1 matching to original asm matter, though? Maintaining same timing as original game?
Show HN: Decomp Academy – Learn to decompile GameCube games into matching C
61–70 of 83 posts
Re: Show HN: Decomp Academy – Learn to decompile GameCube games into matching C
#62Interesting exercise. Why does 1/1 matching to original asm matter, though? Maintaining same timing as original game?
Re: Show HN: Decomp Academy – Learn to decompile GameCube games into matching C
#63Re: Show HN: Decomp Academy – Learn to decompile GameCube games into matching C
#64I recently heard that Super Mario 64 (N64) modding community reverse engineered the game enough to recreate more-or-less accurate C code that can be compiled in binaries to execute on many popular target architectures. Have you managed to get beloved games into modifiable C code? Or is it more common to invest a lot of work to document assembly language functions? I know some old assembly but no idea what is involved…
Mario 64 was byte for byte decompiled to C. It was helped by using the Debug symbols accidentally(?) compiled into the final version of the game. Otherwise they reference rips of the original game.
Don't think this was the case, what helped was it being compiled without optimizations.
Re: Show HN: Decomp Academy – Learn to decompile GameCube games into matching C
#65Feasible to have light theme?
Re: Show HN: Decomp Academy – Learn to decompile GameCube games into matching C
#66Hi OP, I would be careful if you profit from this project in anyway. Nintendo is not a company that takes reverse engineering of their hardware or games lightly. You will probably hear from their lawyers next week :(
Re: Show HN: Decomp Academy – Learn to decompile GameCube games into matching C
#67I'd enjoy having something like this but for x86/64 :)
Re: Show HN: Decomp Academy – Learn to decompile GameCube games into matching C
#68This was interesting, but actually trying to contribute to decomp.me was still really hard! I found a lot of code that seemed perfect except for instructions slightly out of order, or dead pop statements after the logical end of the function. I wasn't able to actually fix anything :( Also, I wish there were a guide about how to start from nothing on a new GC game. That's more interesting to me than putting the finish…
Re: Show HN: Decomp Academy – Learn to decompile GameCube games into matching C
#69Dumb question about reverse engineering binaries: is there a way to only do it piecemeal? I'm eventually waiting for LLMs and harnesses to get good enough to reverse engineer BFME (old Lord of the Rings game that still has an active modding community), but it's a multi GB sized game that would have to be done in bite-sized pieces. Basically; can you reverse engineer in bite sized pieces, and recompile/customize their…
Re: Show HN: Decomp Academy – Learn to decompile GameCube games into matching C
#70Earlier quoted context omitted.
Most decomp projects (that I know of) are Ship of Theseus style projects where the minimum unit is a function, give or take alignment requirements and quirks of the compiler. On the MIPS side, tools like Splat and SPIM can help identify function and even source file boundaries, generate inline ASM C files[0], and write linker scripts to build a matching binary. You can then go through and replace the ASM functions on…
Interesting when you mention Ship of Theseus, I never thought of that but I wonder if that is where the name “Ship of Harkinian” comes from?