A lot of people want to make 8-bit games, but not many people know the exact limitations and it can be hard to find them. Not only will I go into the limitations of 8-bit consoles, but also some ways of coping with the limitations so that your game doesn't come out looking like an Atari 2600 game and sounding like a dying cat.
Limitations/ specs (Note: these are the limitations/specs for the NES)
Graphical
Screen size: 256x240
Active Limit: 64
Backdrop Limit: 960
Color Limit: 56
COlors per sprite: 4 (including transparent color)
Backdrop size:8x8 or 16x16
Sprite Size: 16x16 or 24x24
No more than 16 colors can be on-screen at once
Nes Palette: http://fc01.deviantart.net/fs31/f/2008/221/3/c/the_NES_palette_by_erik_red.png
Audio
Uses .nsf files
No more than 5 channels
Mono sound only
Not sure about the Instrument max...
Memory/ Storage/ CPU (not that important when making fan-games, but I thought I would put them in anyway...)
2kb onboard work RAM
2kb video RAM
256 bytes of OAM (56 color palette)
32kb Program ROM
Can have internal battery-backed memory, but early games usually uses passwords
And here are the Master System's limitations
Graphical
Up to 32 colors at a time (16 for sprites, 16 for background)
resolution: 256 x 192 or 256 x 224
Max background size: 8x8
Max background tiles at a time: 463
Sprite size: 8x8 or 8x16
Max sprites at a time: 64
Master System Palette: http://segaretro.org/images/1/11/Master_System_Palette.png
Audio
4 channel mono sound
3 Tone generators (10 octave each) and a White Noise Generator
Memory/ Storage/ CPU (not that important when making fan-games, but I thought I would put them in anyway...)
64 kbit Boot ROM
64 kbit Main RAM
128 kbit Video RAM
Supports internal battery backed memory
So with what you can and can't do out of the way, I would like to share some tricks many of the programmers from the 8-bit era used to get around certain limitations for making graphics. The main obstacle pixel artists run into with these 8-bit games is the 4-color limit. There are, however, two very clevel ways of overcoming this. The more common of these methods is a process called dithering, which though I'm sure many people already know about, I will still go into it. Dithering is the use of a checker pattern ingraphics to not only give the effect of more colors, but also give texture to an otherwise bland sprite. One somewhat famous example is that of bricks. Observe:
Considerable difference, right? Dithering give a depth to backgrounds that would otherwize be unreachable. The other method does not use illusion to give the sense of more color, but ACTUALLY give more color. Seems impossible? While it is impossible to have more than four colors, there is no problem with having overlapping sprites. This other method is using a sprite that is always set to a different sprite's (0,0) which has transparent sections to show the original sprite's colors. This picture says it all. (Please excuse how bad the sprite is,I made itin literally 5 seconds)
I do not think I need to go into audio TOO much, since there is no real instrument limit, 5 channels is more than enough (for those who I asked, at least), and I'm not that great a musician. Sadly, all I can do for you as far as music goes is post these links:
8-bit audio (NES, anyways) uses four note polyphony; At any given time, only four notes can be played. I think it's hardware was also limited to only one note per channel, but don't quote me on that. Anyways, the limited polyphony is why you hear a lot of arpeggios in 8-bit music! (Also, because chords sounded terrible. Your ears could actually start bleeding because of chords.)
Regarding channels, I think the NES had these channels (or better called instruments): square wave, triangle wave, 1/8 pulse wave, 1/4 pulse wave, and noise. In a lot of NES music (such as Megaman), the triangle wave is used as the bass, of all things, and noise is used as either a snare or high hat (or both, depending on the frequency of the signal).
Chords... sound terrible? Let's not be assumptious.
The NES / Famicom's 2A03 sound chip offered 2 square wave channels, with duty cycles 50%, 25%, and 13%. The Triangle channel has a fixed volume and one tone and is an octave lower making it great for bass. The noise channel is exactly that, noise. The DPCM channel allows for simplistic wave playback, for drums, or in some cases simple low-pitch instruments.
There were sound extensions in some Famicom cartridges too (Like CastleVania 3 for FC and Gimmick!)
The MMC5 offered two additional wave channels identical to that of the internal 2A03.
The VRC6 extension allowed for two square channels, with 8 different tones instead of the 2A03's 3, as well as a Saw wave channel.
The VRC7 used FM synthesis, like the Sega Genesis's Ym2612 did, which is a completely different beast altogether.
Isn't 8-bit more than just NES? The interesting part of this article are the sounds and graphics which gives it the 8-bit look and tune.
I would like to add a note to the 4 color sprite limit: The human eye perceives colors as relative ones instead of absolute ones. See Adleson's Checker Shadow Illusion for an example of this: http://en.wikipedia.org/wiki/Same_color_illusion
@Jenswa yes, there were more 8-bit consoles than just the NES, but to my knowledge NES is the most famous 8-bit console and so I used it as the example.
I have to agree with Jenswa, I had a Master System when I was a kid and it was an 8-bit console also. It could have twice as many colours on screen and per sprite and could run twice as fast.
@disthron well, I thought the Master System did poorly and the Genesis was Sega's big hit, but I don't know much about Sega as I've been a Nintendo fanboy my whole life. But I could do some research and post the limitations of the Master System in here, and probably will eventually.
If you look into British home computers you'll see just how many 8 bitters there were!
<br />
<br />
As for NES music, combining volume spikes in the triangle wave channel and noise you can get pretty beefy drums.
<br />
<br />
as in this example.
<br />
<br />
<A HREF="http://www.youtube.com/watch?v=g5ctRrsPexs&feature=related">http://www.youtube.com/watch?v=g5ctRrsPexs&feature=related</A> Comment edited by AndyUK on 2/2/2011
Wasn't the Commodore 64 an 8Bit machine? I remember some of the system data:
SPECIFICATIONS
* 16 colours
* 8x8 pixel sprites, using 4 colours, including transparent(you could put sprites together to make a bigger sprite. For ex. a Boss)
* Resolution: 320x200
* 3 voices FM syntheziser