
This project uses the VGA PMOD to generate video and the GamePad PMOD to provide player control, only single control is supported.
There's a set of 3 missiles and 4 bombs existing and paint only according to the game dynamics, that is, missiles paint only when the game activate 1, 2 or 3, the explosions show when the user presses button A and can fire 1-4 simultaneous explosions.
The game starts at level 0 with maximum missiles movement delay, each level comprises at least 10 missiles in waves of 1, 2, or 3, the missiles direction is mostly targeting the fortress. If the fortress receives 3 impacts in the same level the game ends, the impacts resets on every level change.
The circuit relies on several modules that generate video bits for particular images based either on formulas or predefined data matrixes, then, according to the coordinates x and y of the sync generator (current pixel position) and the position defined for the image/sprite it outputs video data. The top level module multiplexes the video signals to output either the currenyly active module or the blue background. The following modules generate game components:
The priority is: Explosions (back most), missiles, fortress, level banne and crosshair (front most) when the game is active, the game over and start banner show only when the game isn't active.
Just connect the PMODs to the TT Dev kit voard, then connect the monitor and the controller to the corresponding PMODs and play!
| # | Input | Output | Bidirectional |
|---|---|---|---|
| 0 | r7 | ||
| 1 | g7 | ||
| 2 | b7 | ||
| 3 | vsync | ||
| 4 | gamepad | r6 | |
| 5 | gamepad | g6 | |
| 6 | gamepad | b6 | |
| 7 | hsync |