Video Games That Have Been Fully Disassembled?
Moderator: Moderators
- Drew Sebastino
- Formerly Espozo
- Posts: 3496
- Joined: Mon Sep 15, 2014 4:35 pm
- Location: Richmond, Virginia
Video Games That Have Been Fully Disassembled?
I randomly got to thinking about how the entirety of Super Mario World has disassembled and even had equivalent C code written, and I began to wonder about how many other games where people bothered to go to this sort of level of reverse engineering. I know the original Super Mario Bros. has as well, but with the tremendous amount of work involved, I can't imagine there's much more than that.
Re: Video Games That Have Been Fully Disassembled?
Final Fantasy has been fully disassembled by Dish. Although it's possible large parts of the code aren't commented yet.
Re: Video Games That Have Been Fully Disassembled?
Pokemon Red/Blue. And the original Zelda too.
Re: Video Games That Have Been Fully Disassembled?
http://www.romhacking.net/?page=documen ... csearch=Go
There are many games there. Have fun!
ps.: I have in the process of rom hacking experimented with disassembling NES ghostbusters and super pitfall. I have managed to make files that are reassemblable but I think both probably have a considerable amout of code treated as data. Meaning I didn't go far in that process as I didn't see much use in doing that for the task at hand (rom hacking). I prefered to reverse engineer the code using fceux debugger's labels and comments.
There are many games there. Have fun!
ps.: I have in the process of rom hacking experimented with disassembling NES ghostbusters and super pitfall. I have managed to make files that are reassemblable but I think both probably have a considerable amout of code treated as data. Meaning I didn't go far in that process as I didn't see much use in doing that for the task at hand (rom hacking). I prefered to reverse engineer the code using fceux debugger's labels and comments.
https://twitter.com/bitinkstudios <- Follow me on twitter! Thanks!
https://www.patreon.com/bitinkstudios <- Support me on Patreon!
https://www.patreon.com/bitinkstudios <- Support me on Patreon!
Re: Video Games That Have Been Fully Disassembled?
I have fully disassembled Tecmo super bowl with tons and tons of comments. I've almost fully re-worked it into nicely buildable asm6 format. However its currently not available for the public.
This is a tiny example. A lot of the comments are excessive now that I have labels and variable names for most everything.
This is a tiny example. A lot of the comments are excessive now that I have labels and variable names for most everything.
- Drew Sebastino
- Formerly Espozo
- Posts: 3496
- Joined: Mon Sep 15, 2014 4:35 pm
- Location: Richmond, Virginia
Re: Video Games That Have Been Fully Disassembled?
Wanting to clean it up before releasing it?hackfresh wrote:I have fully disassembled Tecmo super bowl with tons and tons of comments. I've almost fully re-worked it into nicely buildable asm6 format. However its currently not available for the public.
This is a tiny example. A lot of the comments are excessive now that I have labels and variable names for most everything.
I was most impressed to see a disassembly of Gunstar Heroes; there were actually a fair number of Genesis games on there. I wasn't surprised to see there wasn't a single game from the 5th console generation or beyond that has been dissasembled; I wonder how the assembly of code generated by a compiler looks... Ironically, it might be easier to disassemble a PS2 game than a PS1 game with how the games are divided into files, with all executable code having its own file.nesrocks wrote:http://www.romhacking.net/?page=documen ... csearch=Go
There are many games there. Have fun!
Re: Video Games That Have Been Fully Disassembled?
People have been using disassemblies to hack Sonic games for years: http://info.sonicretro.org/Disassemblies
I guess that if you look into different niche communities about specific games/franchises you're gonna find that a lot of effort has been put into reverse engineering stuff.
I guess that if you look into different niche communities about specific games/franchises you're gonna find that a lot of effort has been put into reverse engineering stuff.
Re: Video Games That Have Been Fully Disassembled?
https://github.com/g0me3/bfs_nes_cd2 Chip and Dale 2 disasm (with scripts)
https://github.com/g0me3/bfs_nes_rc3 Robocop 3 disasm
https://github.com/g0me3/bfs_nes_akira Akira disasm
https://github.com/g0me3/bfs_nes_ngb2 New Ghostbusters II disasm (with scripts)
https://github.com/zeromus/DragonWarrior3 Dragon Warrior 3 disasm
as a bonus
https://www.youtube.com/watch?v=Lz6_5ZEqDNU&t=6592s disasm process for gb
https://www.youtube.com/watch?v=wHsT9a_RKtU&t=191s … for nes (more than one video), Russian only sorry
enjoy
also if you interested, I have full disasms for Contra Force, Double Dragon 1/3, Darkwing Duck, Duck Hunt, Battley City, Contra Spirits (Pirate, unprotected), Dancing Block (Sachen, unprotected), Galaxian, Metal Force (Open Corp), Mickey Mania 7 (Pirate, unprotected), Terminator 2 (Prototype), Takeshi no Chousenjou.
https://github.com/g0me3/bfs_nes_rc3 Robocop 3 disasm
https://github.com/g0me3/bfs_nes_akira Akira disasm
https://github.com/g0me3/bfs_nes_ngb2 New Ghostbusters II disasm (with scripts)
https://github.com/zeromus/DragonWarrior3 Dragon Warrior 3 disasm
as a bonus
https://www.youtube.com/watch?v=Lz6_5ZEqDNU&t=6592s disasm process for gb
https://www.youtube.com/watch?v=wHsT9a_RKtU&t=191s … for nes (more than one video), Russian only sorry
enjoy
also if you interested, I have full disasms for Contra Force, Double Dragon 1/3, Darkwing Duck, Duck Hunt, Battley City, Contra Spirits (Pirate, unprotected), Dancing Block (Sachen, unprotected), Galaxian, Metal Force (Open Corp), Mickey Mania 7 (Pirate, unprotected), Terminator 2 (Prototype), Takeshi no Chousenjou.
Re: Video Games That Have Been Fully Disassembled?
Way back in 2002 (I think) I started a disassembly of Megaman1 that revealed the magic of one of my favorites childhood games. This was after getting a bit disappointed that the "prolific hacker" glorified in http://nesdev.com/megm1rom.txt hadn't actually written anything but basic descriptions of each 6502 instruction, when my Spanish friend translated his comments.
Some of Capcom's code felt really modern for its time, almost "object-oriented". Other things left me shaking my head at the hacks, such as the setting of the background priority (used in just two places of the game) being a sequence of conditionals which check stage number, room number and coordinates of the sprite.... and with all its slow-downs, Megaman1 is one of the games that really deserves a hack just to make the thing lag less.
Never really finished that disassembly to a satisfactory level though, so it sadly ended up being one of those incomplete projects of mine. But years later I was happy to discover that Bisqwit got hold of the disassembly and greatly expanded on what I never finished: https://bisqwit.iki.fi/jutut/megamansource/maincode.txt
(and I'm just a teeny-weeny-bit disappointed with getting no credit for my part of it... )
Some of Capcom's code felt really modern for its time, almost "object-oriented". Other things left me shaking my head at the hacks, such as the setting of the background priority (used in just two places of the game) being a sequence of conditionals which check stage number, room number and coordinates of the sprite.... and with all its slow-downs, Megaman1 is one of the games that really deserves a hack just to make the thing lag less.
Never really finished that disassembly to a satisfactory level though, so it sadly ended up being one of those incomplete projects of mine. But years later I was happy to discover that Bisqwit got hold of the disassembly and greatly expanded on what I never finished: https://bisqwit.iki.fi/jutut/megamansource/maincode.txt
(and I'm just a teeny-weeny-bit disappointed with getting no credit for my part of it... )
- Drew Sebastino
- Formerly Espozo
- Posts: 3496
- Joined: Mon Sep 15, 2014 4:35 pm
- Location: Richmond, Virginia
Re: Video Games That Have Been Fully Disassembled?
True. The number actually suprises me though, even if most of these games are fairly simplistic. I'm a bit surprised there aren't more high profile rom hacks for many of these games though; if you've just about got the source code, you should be able to do whatever you want, I would think. For example, I haven't seen a Super Mario World hack where it was noticeable that they modified the game engine, not that I've been looking though.tokumaru wrote:I guess that if you look into different niche communities about specific games/franchises you're gonna find that a lot of effort has been put into reverse engineering stuff.
@CaH4e3 Wait, you didn't do all of that by yourself, did you?
Does that explain the aforementioned lag? And I would definitely be upset too for not being credited. I would think starting the disassembly would be the most difficult part.Bananmos wrote:Some of Capcom's code felt really modern for its time, almost "object-oriented".
- rainwarrior
- Posts: 8735
- Joined: Sun Jan 22, 2012 12:03 pm
- Location: Canada
- Contact:
Re: Video Games That Have Been Fully Disassembled?
Even the original developers who had their own source code to work with could not do whatever they want. Disassembly is just a step to aid comprehension, it doesn't solve any of the software engineering problems for you.Drew Sebastino wrote:if you've just about got the source code, you should be able to do whatever you want, I would think.
Not sure what your concept of "object oriented" is, but it is not at all a synonym for "slow".Drew Sebastino wrote:Does that explain the aforementioned lag?Bananmos wrote:Some of Capcom's code felt really modern for its time, almost "object-oriented".
Re: Video Games That Have Been Fully Disassembled?
This site is pretty interesting:
http://computerarcheology.com/
A while back I was wondering what the code in Moon Patrol (arcade) looked like, and the disassembly there thoroughly satisfied my curiosity. Lots of other stuff on there too, I haven't looked through very much of it though.
http://computerarcheology.com/
A while back I was wondering what the code in Moon Patrol (arcade) looked like, and the disassembly there thoroughly satisfied my curiosity. Lots of other stuff on there too, I haven't looked through very much of it though.
Re: Video Games That Have Been Fully Disassembled?
Agreed. Said that, excessive use of instancing of objects that have fixed cost can indeed cause slow code. One of the main slow-downs in MM1 is how they instanced the big explosions (used for example in Bombman's bombs) as loads of small ones, when a dedicated "big explosion particle object" would likely have fared better.Not sure what your concept of "object oriented" is, but it is not at all a synonym for "slow".
Later MM games did rectify those awful slow-downs though, although none have the exact same explosion particle object for an apples-to-apples comparison...
Another gem I encountered when disassembling the Megaman1 ROM: I never would have guessed that two such distinct enemies as "Flea" and "Bigeye" actually execute exactly the same AI code, with just a parameter tweaked to make one of them speedy and the other one slow. After learning this, I couldn't really play the game meeting one of those enemies without seeing the ghost image of the other one...
Re: Video Games That Have Been Fully Disassembled?
yes i did it by myselfDrew Sebastino wrote: @CaH4e3 Wait, you didn't do all of that by yourself, did you?