A one-trick pony is someone or something that is good at doing only one thing. Accordingly, a one-sprite pony can display only one sprite, and that's exactly what this design does:
This Verilog design produces SVGA 800x600 60Hz output with a background and one sprite. Internally, the resolution is reduced to 100x75, thus one pixel of the sprite is actually 8x8 pixels. The design can operate at either a 40 MHz pixel clock or a 10 MHz pixel clock by setting a configuration bit.
The sprite is 12x12 pixel in size and is initialized at startup with a pixelated version of the Tiny Tapeout logo.
An SPI receiver accepts various commands, e.g. to replace the sprite data, change the colors or set the background.
Connect a Tiny VGA to the output Pmod connector. By default, you should see the TinyTapeout logo moving around the screen. By sending commands over SPI via the bidirectional Pmod you can change the sprite and the background, set the sprite position and much more. See the longer documentation for all commands.
Tiny VGA PMOD
# | Input | Output | Bidirectional |
---|---|---|---|
0 | R1 | CS | |
1 | G1 | MOSI | |
2 | B1 | MISO | |
3 | VS | SCK | |
4 | R0 | Vertical Pulse | |
5 | G0 | Horizontal Pulse | |
6 | B0 | ||
7 | HS |