Das MOD-VGA und das MOD-VGA-32MB Shield ist ein Klon des bekannten Gameduino Shield der von Olimex angeboten wird. Das Board ist ein Grafik Adapter für den Arduino auf Basis eines Xilinx FPGA (Spartan 3A). Es bietet VGA mit Sprites und einen Coprocessor.
Die Unterschiede zu Gameduino sind gering. Das Shield ist kompatibel und läuft mit jedem Arduino. Aber es gibt durchaus erwähnenswerte Verbesserungen zur originalen Hardware:
Aus Controller Sicht ist das Gameduino einfach ein 32K SRAM
Das SRAM wird einfach per SPI beschrieben und gelesen
Es gibt eine Arduino Bibliothek, mit der die Programmierung stark abstrahiert und dadurch vereinfacht wird.
Neben den 2 bekannten Planes (Char Plane, Sprite Plane) gibt es nun eine dritte: ein Hintergrund (eine Farbe pro Rasterzeile)
Interessant ist auch, im FPGA ist eine eigene CPU integriert worden! Die kann man in Forth programmieren und damit zb. Rasterinterrupts oder Farbwechsel bei bestimmten Rasterzeilen programmieren.
Für die bekannten Screenshots auf der GameDuino Seite kann man den zugehörigen Arduino Sourcecode herunter laden.
Der FPGA selbst kann mit eigenem Design neu programmiert werden, wenn man es kann ...
Specifications
video output is 400x300 pixels in 512 colors
all color processed internally at 15-bit precision
compatible with any standard VGA monitor (800x600 @ 72Hz)
background graphics
512x512 pixel character background
256 characters, each with independent 4 color palette
pixel-smooth X-Y wraparound scroll
foreground graphics
each sprite is 16x16 pixels with per-pixel transparency
each sprite can use 256, 16 or 4 colors
four-way rotate and flip
96 sprites per scan-line, 1536 texels per line
pixel-perfect sprite collision detection
audio output is a stereo 12-bit frequency synthesizer