🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

How was the original Zelda created anyway?

Started by
17 comments, last by Apollo 24 years, 7 months ago
Actually, you are all wrong. Opcode commands are the native language of the computer, binary is how its stored, machine code is a visual representation of binary opcodes, and assembly is just a little bit above machine code in terms of direct translation.

For example, assembly code can use labels, macros, and other assembler directives that let the assembler know, for example, where your data assumes it starts in memory (for branching). This is done with the .ORG directive - that is NOT machine code NOR is directly translated into the executable code.

But, for all real purposes, no one writes in machine code because assembly has enhancements that make programming easier with NO loss of control. So all of you are correct in a sense. Its not really worth arguing about.

- Splat

[This message has been edited by Splat (edited November 17, 1999).]

Advertisement
Hmmm, had a friend that would write some (parts of) programs in binary on x86 architecture. Scary, really. =| Beats me what he used to enter it.
Just to add my two cents to this whole conversation...

Assembly Code is basically a system for making it easier to work with what is sometimes called Machine Language. Assembly Code uses what are called mneumonics (look the word up if you don't know what it means). These are instructions that have somewhat easy to use names (like ADD, MOV, etc.).

Machine Language is basically the sequence of instructions usually represented in binary or hex.

Assemblers can do a lot of other things for you too. Macro Assemblers can basically add extra language constructs to assembly to make life a little easier.

To make things even more complicated, the Machine Language is broken down into Microcode on a lot of processors. This means that the most basic instructions that we can send to a processor (Machine Language) are broken down just a little bit further before the processor does the actual work. You don't need to worry about Microcode, but it's cool to know that it takes place...

------------------

-Kentamanos

-Kentamanos
That's how you have to write the first assembler (at least before cross/compilers, assemblers). Anyone remember writing an assembler for the C64 that consisted of a for... next loop, a poke and 500 lines of DATA statements?

Back to apollo's query:
To make matters worse for systems like the NES, they didn't have an operating system like we think of today. The processor doesn't realize periphiral chips are attached to the motherboard, so it just treats it like memory, and doesn't even realize you're setting/checking a graphics or sound chip. The system just provides BIOS-like routines to simplify the process.

Those systems had to use assembly becuase they were slow(NES was about 2-3 Mhz) and ROM chips are expensive (that's why N64 games are $20 more than PS)

Assembly code isn't portable, you can't run NES on windows so just forget about that for your game.

Visual Basic by itself might not be the best either (I'm not going to say M$ VB sux, if you're learning, continue, you'll learn a little more about computers) because it's designed to make Windows-like programs.

I suggest you look for some VB library that gives you the routines to simplify development, or look for a RPG "construction set" which is a program that lets you make your own art, characters, monsters, etc. without worrying about the 'programming' while working on your programming skill on the side. You'll get a better idea of how the games are generally built and if it's really something you want to do. It's not worth spending years to become a good programmer only to find out you don't really like making games.

I think www.demonews.com has a list of engines (some VB) and construction sets

good luck.

(P.S. I write JVM bytecode with a hex editor, MS j++ is for squares )

-the logistical one-http://members.bellatlantic.net/~olsongt
Splat is right, but what I was talking about was true assembly, not Assembler specific keywords...(try picking up an old copy of MASM 4, not to user friendly as far as assembler directives goes). When you Disassemble a program-there's no variables referenced there (by name at least), no directives or any of that good stuff.

Kentamanos is right too (I was trying to give an example of microcode above, but I guess it didn't come accross too well).
Like Splat said, nothing to "argue" about...I'm just interested in sharing knowledge and answering questions.

And you obviously can't run nintendo games on x86, but I'm sure you've heard of Nesticle...so you could write nintendo roms if you wanted to.

HAHAHA APALLO. this thread has gone on so long i almost forgot your name while reading it o these guys have hopefully answered your questions as to what assemmbly is. And YES it is really the native language of the sspecifice console chip set your using.. E.I.
intel has its intel ASM the PowerPC has its on ASM instructions ect. well im not gonna get into that the other guys did a great job.

Bascialy as for the actuall design of Zelda for the NES it used a "Linear Tile" engine that can be coded in most of your computer
languages including Virtual basic.. if your the kinda guy that can.. no will make a VB game. So basically i recommend looking for some tile based game articals. The concept is the same no matter what language your looking at using. If you want detailed help just Email me.. in case i didnt click the show email option when i rushed through registration here antix1@hotmail.com.

hopefully your still reading all this babbling were doing

asmLOCK.. how come you can say "Assembly" but not "assembly" ?????? isnt that weird?
I want to know, what language was it created in? Does anyone here know?

------------------
"Apollo is the kind of guy who can...no, will create a video game in Visual Basic."

"Apollo is the kind of guy who can...no, will create a video game in Visual Basic."
Damn, talk about overkill. I believe the type of answer he was looking for in the original post (remember that one?) was Zelda is a 2D Tile Based game. GDNet has several articles on Tile Based games in the Reference->Programming section. These games can be written in any language.

I'm closing this one down.

Kevin

Admin for GameDev.net.

This topic is closed to new replies.

Advertisement