spikemtz wrote:
Unfortunately, I have no programming knowledge whatsoever
We know a couple of programmers that started learning NES programming without any prior programming knowledge and they turned out fine, but there were many others who couldn't do it.
So, even though you don't know how to program, do you have any interest in logic whatsoever? Do you like math (or at least don't hate it)? I guess you at least have to be inclined to technical stuff, otherwise it will be really hard to grasp the concepts of console programming.
Quote:
-What console would be best to start out on?
Starting straight with consoles might be a bit hardcore, it sure is much easier to learn game programming concepts on a PC. When you start learning about a console from the ground it can easily take you months, or even over a year to make something meaningful, like a controllable character.
However one thing that might be worth recommending is
batari Basic. It's a BASIC-like language that can be used to make Atari 2600 games. It abstracts from the programmer all the complicated stuff about rendering graphics so you can quickly make something playable. And there are lots of sources from other people's projects that you can study.
It's of course a limited tool, and it's not possible to make games as complex as the ones made directly in assembly language. But the good thing is that even though you'll not be messing directly with the lower-level details of the console, hopefully you'll learn something about them. And the 2600 uses the same CPU as the NES, so what you learn from it might even be useful for NES development in the future.
Quote:
-What programming language should I learn first?
Most old consoles are programmed in assembly, and each CPU has it's own assembly language (even though they all share some concepts they're still different languages). The NES uses a CPU that was also used in several other machines (such as the Atari 2600, Commodore 64, TurboGrafx-16/PC Engine...), the 6502. The Z80 is another very common CPU, it was used on the Sega Master System, Game Boy/GBC, ZX Spectrum, MSX... These 2 CPUs were probably the most used ones in the 80's, so it would be a good idea to look them up.
Quote:
-What tools will I need?
Basically an assembler for the CPU of your choice, but you'll soon need tools to draw graphics. Once you decide the machine you want to work with you can look for these specific tools.
Quote:
-What do I really need to know to make a video game?
You need to know some math, the hexadecimal and binary numeral systems, and analytic geometry (like tepples mentioned) should help you with the graphics side of things. That's enough to get started.