1. ## Manipulation of Numbers?

I've been reading up on an archaic assembly language used on the original Nintendo and early Super Nintendo games and gotten the basics down. I've found a emulator that lets me test scripts, and written some basic functions like loading a number to A, loading a number to B, multiplying A by B and saving the result to X, etc. etc.

what I'm wondering is, can someone explain to me in layman's terms how games were written entirely in this assembly language for the NES? So far what I'm seeing is an entire language that's more or less designed to edit, move, save, load and perform functions on numbers, and I don't understand how they used this language to produce things like music, graphics, text, and all the other things that make a game a game.

2. Text is just numbers (look up ASCII).

Graphics is basically just numbers (think HTML color codes; think coordinates for drawing; motion is doing math on coordinates).

Music (especially eight-bit music) is just numbers (frequency and duration).

3. Originally Posted by Sickjin
what I'm wondering is, can someone explain to me in layman's terms how games were written entirely in this assembly language for the NES? So far what I'm seeing is an entire language that's more or less designed to edit, move, save, load and perform functions on numbers, and I don't understand how they used this language to produce things like music, graphics, text, and all the other things that make a game a game.
What do you think the native language of all computers and consoles is? That's right, binary. Anything else is just an abstraction layer added by humans to allow us to interact with computers better. As tabstop pointed out, it is all numbers. Whether you are talking about the the NES and 8-bit graphics or the PS3 with HD.

4. Maybe they made a higher level compiler with the assembly language to make things easier.

5. Originally Posted by manasij7479
Maybe they made a higher level compiler with the assembly language to make things easier.
What?

@OP:Also I think the big thing you are missing is the concept in general. The 6502 is just the central processor for the NES, all it does is operations. To say, display the image on screen you would trigger an interrupt which would activate the video processing circuitry which would then actually write the image to the screen based on the numbers in the CPU (which could be a pointer to the place in memory the sprite image is stored).

Again, it all just comes down to binary though.

6. @Andrew, your second post answered my question. I understand that all things come from numbers, what I didn't understand was how you would use a number manipulating machine to create something like, say, a world map in an RPG without doing it pixel by pixel, or creating music without doing it note by note. I didn't know that the NES had any sort of storage capacity for sprites and music and text.

7. That's the beauty of low-level programming - everything is pixel by pixel and note by note.

It doesn't appear that way when using higher level languages, but as Andrew said: "Anything else is just an abstraction layer added by humans to allow us to interact with computers better." With SDL, for example, you can appear to load a bitmap as a whole piece at once, but the underlying mechanisms are still handling it bit by bit (literally) for you.

(Side note to OP: Love your pic!)

8. Yes, the NES is a computer; it contains memory, a CPU, I/O hardware, ect. You can read on the specs here.

9. what I'm wondering is, can someone explain to me in layman's terms how games were written entirely in this assembly language for the NES?
Huge amounts of self-esteem. And coffee.

10. Originally Posted by AndrewHunter
Yes, the NES is a computer; it contains memory, a CPU, I/O hardware, ect. You can read on the specs here.
That's why it was called the Famicom.
Originally Posted by wiki
In most of Asia, including Japan (where it was first launched in 1983), China, Vietnam, Singapore, the Middle East and Hong Kong, it was released as the Family Computer (ファミリーコンピュータ Famirī Konpyūta?), commonly abbreviated as Famicom (ファミコン Famikon}, or FC for short?)

Quzah.