I just played a game of RBI Baseball in a browser window.
That in and of itself strikes me as simply amazing. When I was young, the NES was a magical box, capable of providing hours of enjoyment to young kids throughout the world.
Now, decades later, I'm a programmer. And I can appreciate the programming that went into games that were developed with more primitive hardware just a couple of decades ago. In fact someday, I fully expect that code from some of these games will be enshrined in the Smithsonian.
My Programming Question:
Have any classic NES games (like RBI Baseball) been open-sourced, and if so, where can I find code to study?
Failing that, are there any NES games for which source code is available to study?
I think it would be worthwhile to learn from their example.
For instance:
A total of 716 known licensed games (715 cartridges, including compilations of previously released games) were released for the Nintendo Entertainment System (NES) during its lifespan; 678 of these games were released in North America plus 2 championship games, with 36 games released outside North America.
These tiny systems won't be available forever. Nintendo announced last year that it would stop production on the NES Classic and SNES Classic in 2019. We're well into 2019 now, and listings for the retro systems have been disappearing from all the major retailers.
To avoid consumer confusion, Nintendo pulled all copies of Stadium Events from shelves and had them destroyed, but not before approximately 200 carts had already been sold. Of those 200, collectors believe that only 10 to 20 complete copies of the game exist today, making them a real rarity.
No. At least none that I know of (and I've been searching).
NES appeared right after the 1983 video-game crash, the main reason why the market crashed was the flood of bad games, triggering the customers to not buy a single game, because there was no way to know what game was good.
So Nintendo when introducing NES (and all other consoles from the time, like Master System from SEGA), decided that only approved games would ever get released, AND making anything open source ever being a breach of contract with heavy fines, the reason for that is that by not releasing a public API, it would make "homebrews" harder to flood the market.
Today Nintendo is much more easy on the part of allowing the games, see the flood of crappy games on the Wii, but still no console allow you to use their "true" API, to avoid the flooding, there are even a issue when someone used a GPL engine (ScummVM) on Wii, causing trouble, because releasing the source of a game for a Nintendo system is a breach of contract, and GPL demands the source to be released, in that particular case the games were pulled of the shelves.
And no, XNA and PS3 Linux are not really console APIs, both impose severe limitations on what you can do with the console.
Maybe you can find homebrew, or reverse engineered games. But I guess that this is not what you asked.
Also the source of remakes and ports sometimes can be found, but these don't use the console API.
Maybe you have since found this, but Metroid (the original, for NES/Famicom) has been disassembled and the code (in beautiful ASM) posted on Romhacking.net.
Direct link.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With