Thanks for such a comprehensive reply.
To answer your question about what kind of game I would like to make. My long-term goal might be a rpg game in the style of Earthbound or something like Zelda. For a short-term goal, I was thinking about a a simple side-scroller. However as you stated, I will need to start with the very basics, especially as I don't have any experience in writing games (or graphics for that matter).
Also I'm unclear how far the platform can be pushed graphically. The tetris clone looks quite nice and this super mario world demo looks promising, although it's buggy and slow. Do you have any idea how far the graphics could be pushed (Atari 2600/NES/SNES)?
Now please forgive my ignorance, as I said I'm new to game development
. This is how I understand it so far: the TV (NTSC) uses a frequency of 60 Hz to update the screen. That means a frame rate of ~30 (2 fields interlaced). Each field is composed of 262 number of horizontal scan lines.
The total time to draw one field consists of the time needed to draw each scan line and the hblank of each line times the number of lines used, plus the vblank (including non used scan lines).
So you have the hblank and the vblank times to do everything else. This includes game logic (collision detection, input processing), audio generation and other things.
Now I'm not really clear on video modes. The atmega644 runs at ~28Mhz, which means 28M cycles for 60 fields. This means you have 28M/60 cycles for each field. How much of these cycles you'll need for displaying graphics depends on how complex your calculations are going to be. And this is then somehow (certain "operations" needed for certain types of games?) divided in video modes I guess. As you pointed out, most video modes don't use all the scan lines, thus freeing cycles for other calculations.
Sorry for the long rant, hope any of this makes sense
.