Do you have any ideas that you can create some retro games, such as Super Mario Bros, Mr. Pacman etc with a little bit help from the color m16-based AVR?
Before you start the project, there is something important that you must know about it! For your information, this AVGA has two different structures, which as:
Video.c – Video sync signal generator
Driver.s – Video graphics driver
Sound.c – Sound driver
Window.c – vertical screen mapping utility
Overlay.c – floating image rendering engine
Background.c – the based image rendering engine
Since the AVR doesn’t offer enough RAM for direct video memory, some real-time compression must be used in this project. One of the most common ways to overcome this problem is a TILE-based driver. In this kind of systems, screen is divided into X*Y tiles. Each tile will be addressed by reference table located in RAM and the true tile graphics is stored somewhere else, such as in ROM or RAM.
Basically, AVGA is strictly TILE-based AVR interrupt driven audio-video driver for a single-chip game console. Remember that you cannot use interrupts in the game design, as it will cause serious errors in sync pattern and pixel stream!