03-10-2016, 12:15 AM
|
Posts: 13
Threads: 1
Joined: Dec 2015
|
(03-10-2016, 12:12 AM)queueRAM Wrote: I really like the idea of this project. I had a similar idea of replacing some of the more interesting routines (such as behaviors and interactions) with C code to make them more easily customizable. I haven't spent too much time with it though since I've mostly been focused on decoding the remaining parts of the ROM for n64split.
I think it will take a lot of work to manually decompile to C. I've done a lot of the level scripts, some geo layout functions, and some cutscene code. I'm attaching what I have done to this post. Sometimes even the simplest routines take me an hour to decompile correctly though, so I worry about the scope of this project. I cannot allocate time for your decompilation project at present, but if there are any questions you have or anything I could add to n64split to make it easier on you, feel free to ask
You may also be interested in a lot of the disassembly and decompilation work that Celler Dweller did years ago that Skelux has archived on his site: https://sites.google.com/site/supermario64starroad/home/sm64-documents/cellar-dweller
Finally, there are some automated tools to help decompile or get insight into the code. If you aren't scared of command line tools, radare2 is a really nice open source framework for reverse engineering and supports MIPS. For decompilation, REC (Reverse Engineering Compiler) or RecDec (Retargetable Decompiler) are tools I've used in the past. Outputs are less than ideal though.
Never said it'd be easy, and thanks for the resources BTW! Anyways, yeah, it'll take a while, and I'm using the ASM I got from your n64split as the base.
|