
This project generates a 640×480 VGA signal and renders a small demo scene. Three 128×128 monochrome logos bounce around the screen with per‑frame physics, changing direction on screen edges and swapping motion parameters on collisions. A parallax checkerboard background scrolls at multiple speeds, and an optional ripple effect warps the background and tints alternating rings. Color cycling on bounces is also optional.
Key blocks:
hvsync_generator.v: VGA timing + pixel coordinatesbitmap_rom.v: 128×128 logo sprite ROMpalette.v: 3‑bit color index → 2‑bit-per‑channel RGBproject.v: compositing, effects, and logo motionRun the cocotb testbench to render a few frames and (optionally) compare against reference images:
cd /Users/macbook/chip_dev/sharc/sharc_ip/tiny-demoscene/test
make -B
VGA monitor connected to the Tiny Tapeout VGA-compatible outputs.
| # | Input | Output | Bidirectional |
|---|---|---|---|
| 0 | BACKGROUND_EN | VGA | |
| 1 | |||
| 2 | |||
| 3 | |||
| 4 | |||
| 5 | |||
| 6 | |||
| 7 |