What is the goal of a project like this? I'm absolutely not meaning that as a pejorative. I am just curious if there's an actual goal here. Is the goal to make a faithful reproduction, historical reference, a hacking challenge, or? Is it just curiosity? I see lots of links in the thread, many for different games. Curiosity is as valid a reason as any other, but is there some sort of end result trying to be had? The v…
A Comprehensive Super Mario Bros. Disassembly
61–70 of 87 posts
Re: A Comprehensive Super Mario Bros. Disassembly
#62What is the goal of a project like this? I'm absolutely not meaning that as a pejorative. I am just curious if there's an actual goal here. Is the goal to make a faithful reproduction, historical reference, a hacking challenge, or? Is it just curiosity? I see lots of links in the thread, many for different games. Curiosity is as valid a reason as any other, but is there some sort of end result trying to be had? The v…
It has many uses really. It's a nice resource for learning assembly, especially 6502 assembly; it's a good reference for creating NES games, whether those are original titles or simply romhacks; it's also a great reference for building an emulator for the platform or a level editor for the game. And of course, disassembling a game and documenting the source code is a great hacking challenge that will leave you confid…
Re: A Comprehensive Super Mario Bros. Disassembly
#63http://benfry.com/dismap/mario-large2.jpg
via: http://benfry.com/dismap/
I've always loved this as a visualization of machine code. It's simultaneously amazing how complex it is and yet how simple it is when you consider that it represents the entire game all in one graphic. This is from 2007 I believe. I love that 10 years later the machine code is now fully annotated and understood.
Re: A Comprehensive Super Mario Bros. Disassembly
#64Re: A Comprehensive Super Mario Bros. Disassembly
#65Ben Fry, the creator of Processing, created a beautiful visualization of the disassembled machine code of Super Mario Bros with arrows representing jump instructions: http://benfry.com/dismap/mario-large2.jpg via: http://benfry.com/dismap/ I've always loved this as a visualization of machine code. It's simultaneously amazing how complex it is and yet how simple it is when you consider that it represents the entire ga…
I tried to see if there was something very central, called from lots of places, but there doesn't seem to be any such place. There are a few, but not something singular that stands out as completely dominant.
Long jumps get a more dominant visual appearance than short jumps. Would be interesting to see what it would look like with the address printed in size proportional to eg how many places call it, or how CPU intensive that subroutine is, etc.
Re: A Comprehensive Super Mario Bros. Disassembly
#66Ben Fry, the creator of Processing, created a beautiful visualization of the disassembled machine code of Super Mario Bros with arrows representing jump instructions: http://benfry.com/dismap/mario-large2.jpg via: http://benfry.com/dismap/ I've always loved this as a visualization of machine code. It's simultaneously amazing how complex it is and yet how simple it is when you consider that it represents the entire ga…
Wow, that is amazingly complex! It's beautiful, in a way. I tried to see if there was something very central, called from lots of places, but there doesn't seem to be any such place. There are a few, but not something singular that stands out as completely dominant. Long jumps get a more dominant visual appearance than short jumps. Would be interesting to see what it would look like with the address printed in size p…
Re: A Comprehensive Super Mario Bros. Disassembly
#67Re: A Comprehensive Super Mario Bros. Disassembly
#68Re: A Comprehensive Super Mario Bros. Disassembly
#69I'm not familiar with the history of this work, so I'll just ask. Is this the assembler code that was written by the original dev team, or were the comments reverse-engineered from a dissassembly of the game's machine code?
Re: A Comprehensive Super Mario Bros. Disassembly
#70I'm not familiar with the history of this work, so I'll just ask. Is this the assembler code that was written by the original dev team, or were the comments reverse-engineered from a dissassembly of the game's machine code?
It's a "disassembly", so it's the work of somebody converting machine code back into assembler, and studying it long and hard to add comments, break out numbers into sensible-named constants, and choose decent names for loop labels. The original dev team was almost certainly not involved.