Super Mario 64 has been decompiled
gbatemp.net
gbatemp.net
His explanations are mind-blowing as well and fun to watch :)
This is a good way to turn kids into hackers!
You just need one :)
Can't forget that trailing slash :)
Also theres a cool project archiving all Flash and Shockwave games called BlueMaximas Flashpoint. The people working on preserving these old games are amazing.
I do fear the death of some of those awesome NewGrounds games.
I hope we get the same with Waverace one day, nothing since has matched the feel of the wave physics in that one, it would be interesting to see what they did.
What on earth do you mean?
https://en.m.wikipedia.org/wiki/Chronology_of_Nintendo_64_ga...
I vaguely remember it was a launch title.
I try to assume that such things are genuine questions unless facetiousness is obvious.
Makes for a more pleasant place that way.
I had never heard of the guy before watching that video, but I gleaned from the comments that there was something about it turning into a meme, and turning the guy off from making more commentated vidoes? If so, that's a real shame, because I could watch content from him all day long.
Reverse engineering a reproducible build is quite a bit more than "just" output.
These guys were capable of figuring out and naming what every function did and then rewriting each of them over and over and over to get the original tool chain to output bit for bit the exact same binary as they started with.
Something like taking x-rays of an unknown machine and being able to recreate perfect pixel replicas of the engineering drawings or listening to a piece of music and being able to exactly write out the score.
Mario 64 is more recent so might be a magnitude more complex.
There are also other approaches, like a total re-implementation, not a decompile/re-source. ScummVM engine for Blade Runner, the adventure game from 90's is a recent very impressive example of that
[1] https://github.com/scummvm/scummvm/tree/master/engines
[2] https://wiki.scummvm.org/index.php?title=HOWTO-Reverse_Engin...
I think by then it would have already been pretty mature.
People are passionate about this game and there is a good chance of a PC port of the game now (as well as more substantial mods) because of that.
There's no way we're letting this slip. If anybody can't find a copy PM me and I'll help you track one down.
I imagine it'll get taken down eventually, but I don't see a problem with letting as many people get their eyes on it in the meantime.
In situations like this I highly recommend anyone with a spare 15.2MB of disk space to download this just to help preserve it.
Otherwise, you are right: the majority of the work left is to document the functions, to organize the code so that it's easy to mod and play around with, and to provide high level documentation on the systems/how the decomp was made. You wouldn't want anyone to think that all you have to do to decomp something is to run a binary through IDA, right?
Plus, there are more released versions of SM64, and who knows what's in there?
OpenTTD, OpenRCT2, and OpenMW all come to mind, not to mention the many ports of Id games.
I also wonder if you could add stuff like raytracing given the original source. (Obv not on the Pi)
You guys remember mario.com on MS-DOS? A full clone of Super Mario running fullspeed on DOS?
Can you guys imagine mario64.exe? ^^
I had to run it in Windows NT5 beta though, it stuttered in Windows 95.
Technically, yes, you could use a decompiled game code to port the game to another platform, but the legalities are not in your favor.