Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Geek Culture / Source Code for Metroid (8-Bit NES)

Author
Message
Toby Quan
21
Years of Service
User Offline
Joined: 16th Oct 2003
Location: U S A
Posted: 15th Sep 2005 01:24 Edited at: 15th Sep 2005 20:21
I just discovered that the Assembly Language Source Code for the classic 1986 Nintendo Game Metroid is available online:

http://www.classicgaming.com/mdb/m1/m1source.txt

You can see all sorts of amazing things in this nicely documented source code:

* Samus can only lay down 3 bombs at a time, but did you know that same limitation applies to bullets?
* To make her flicker as she lands, they only drew her sprite every other frame.
* There is a variable for Samus' Age. This is used to determine what ending to show the player. The faster you beat the game, the better of an ending you will see.

I understood very little of the Assembly Language source code (except for the comments), but it sure is nice to take a look at!

I'm actually playing this game right now as well. Classic.

RegenProZ
19
Years of Service
User Offline
Joined: 20th Aug 2005
Location:
Posted: 15th Sep 2005 01:31
WoW, that looks pretty awesom.


MGSolids Messenger - WIP Forum
Foxy
19
Years of Service
User Offline
Joined: 4th Jan 2005
Location: The Dale, South Australia
Posted: 15th Sep 2005 07:22
Hot damn that is a lot of code.

I think I've got that game on GBC somewhere (not sure as I can't find my GB and stuff).

Deep Thought 42
19
Years of Service
User Offline
Joined: 31st Jul 2005
Location: New Jersey, USA
Posted: 15th Sep 2005 23:52
What do you compile it with?

"Winners never quit and quitters never win. But those who never win and never quit are idiots."
PiratSS
22
Years of Service
User Offline
Joined: 18th Oct 2002
Location:
Posted: 16th Sep 2005 01:18
Quote: "What do you compile it with?"

Read 15th line of the source code.

Deep Thought 42
19
Years of Service
User Offline
Joined: 31st Jul 2005
Location: New Jersey, USA
Posted: 16th Sep 2005 02:07
oh. . .

"Winners never quit and quitters never win. But those who never win and never quit are idiots."
Kangaroo2 BETA2
21
Years of Service
User Offline
Joined: 23rd Aug 2003
Location: Somerset / UK
Posted: 16th Sep 2005 22:24
hmm interesting source, amazing what they could fit into such small amounts of memory in the old days - Iloved lots of the original nes & master system games - they often looked so impressive compared to the spectrum / commodore / amstrad games that came about the same time - really felt "next gen" at the time lol

Jeku
Moderator
21
Years of Service
User Offline
Joined: 4th Jul 2003
Location: Vancouver, British Columbia, Canada
Posted: 16th Sep 2005 22:44
Those aren't the original comments and variable names, are they? I mean, they're all Japanese programmers--- I highly doubt they code in Engrish :-P

TKF15H
21
Years of Service
User Offline
Joined: 20th Jul 2003
Location: Rio de Janeiro
Posted: 16th Sep 2005 22:48
it's a commented disassembly, not the original source. They must have come up with all the names and stuff trying to guess what those japanese guys did. So much so that the don't know what some of the code does.

WarBasic Scripting engine for DarkBasicPro
DC emulator code size: 14.3MB, 553,214 lines
JoelJ
21
Years of Service
User Offline
Joined: 8th Sep 2003
Location: UTAH
Posted: 16th Sep 2005 23:08
Quote: "Those aren't the original comments and variable names, are they?"

Quote: "; Disassembled, reconstructed and commented
; by SnowBro [Kent Hansen] <kentmhan@online.no>"



Eat some of dat cheese
Jeku
Moderator
21
Years of Service
User Offline
Joined: 4th Jul 2003
Location: Vancouver, British Columbia, Canada
Posted: 17th Sep 2005 00:02
Doh! I shouldn't have waited so long to tell you guys, but I'm illiterate!

Megaton Cat
21
Years of Service
User Offline
Joined: 24th Aug 2003
Location: Toronto, Canada
Posted: 17th Sep 2005 00:28
God how I hated that original Metroid game.


The future is here, and I can't afford it.
Pickle of Death
19
Years of Service
User Offline
Joined: 14th Aug 2005
Location: Thankfully, not in hurricane country
Posted: 17th Sep 2005 04:37
So does anyone know what programming language this is? Or did the developers just up and write their own language specifically for Metroid?
Megaton Cat
21
Years of Service
User Offline
Joined: 24th Aug 2003
Location: Toronto, Canada
Posted: 17th Sep 2005 04:42
Quote: "So does anyone know what programming language this is? Or did the developers just up and write their own language specifically for Metroid?"


Read first post, first bloody sentance.


The future is here, and I can't afford it.
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 17th Sep 2005 04:44 Edited at: 15th Mar 2022 10:43
Looks like 6502 or perhaps 6809. Dunno whats was in the Nes off the top of my head, knowing Nintendo it prolly a custom version though. Like the 6510 found in C64's.

>>Edit, after a quick search, it's appears to be custom version of 6502.
http://en.wikipedia.org/wiki/Nintendo_Entertainment_System#Technical_specifications

Interesting spec actually.

PlayBASIC To HTML5/WEB - Convert PlayBASIC To Machine Code
Pickle of Death
19
Years of Service
User Offline
Joined: 14th Aug 2005
Location: Thankfully, not in hurricane country
Posted: 17th Sep 2005 04:48
Oops. Don't know how I missed that, sorry. (I'm not the sharpest kife in the box.)

Login to post a reply

Server time is: 2024-11-15 20:29:01
Your offset time is: 2024-11-15 20:29:01