From c7fde88baf6fb7adde6c484b640b25c61a1adb62 Mon Sep 17 00:00:00 2001 From: saji Date: Thu, 23 May 2024 06:21:48 +0000 Subject: [PATCH] Update README.md --- README.md | 33 +++++++++++++++++++++++++-------- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 63399e0..a6390ad 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,28 @@ -# ECP5 OSS Flow Template +# Groovylight -This repo contains a basic setup for ECP5 development. -It's designed to serve as a modest baseline, more can be added easily -to adapt to each project. +A GroovyMiSTer to HUB75 display platform. Play retro games in pixel-perfection! -Features: -- Nix flake for toolchains and dependencies -- Test infra -- Github Actions Workflow +(This project is incomplete. More documentation and screenshots will be added as it is developed) +## Features + +- Networked display reciever compatible with Groovy-based protocols for low-latency graphics. +- Supports 5 "strings" of HUB75 panels, enabling 320x256 maximum display resolution when using 128x64 panels. +- Supports complex display transforms, such as rotation. + + +## Building your Groovylight + +The hardware involved in making a groovylight is simple: It uses the Colorlight 5A-75B Receiver board as the driver and supports various HUB75 +displays. When thinking about displays, consider target size, display resolution, and panel layout. Due to RAM limitations, +it required that the total number of pixels per-row does not exceed 256. This means that if you use a 128x64 panel, you can have +up to 2 of them in series. If you're using a 64x64 panel (not recommended for most setups), you can have 4. +A total of 5 strings of HUB75 panels are supported, *but they must be the same size*. + +You can see the setup of a 240p-size display below. It uses 10 128x64 P2.5 panels. One string (2 panels) is rotated on the edge +to get 320 pixels, and there are 8 extra pixels on the top and bottom. + +## Simulator + +A Verilator-based simulator is used for behavioral testing but can also be used to experiment with display layouts. +The sources can be found in `sim/`. \ No newline at end of file