draw_metronome() renders the screen for any parsed track: track name + big BPM, play/stop transport, and the polymeter lane grid — per-lane beat cells coloured by level (accent amber / normal cyan / ghost purple / rest dark), playhead highlight, beat gridlines, poly (~) marker. Pure no_std view over borrowed data (LaneView/ Screen) so the firmware build stays allocator-free. uisim now parses a real track (track-format) and renders draw_metronome to PNG — iterate the UI on the host, no bench. Firmware still draws the bring-up diagnostic. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
15 lines
499 B
TOML
15 lines
499 B
TOML
[package]
|
|
name = "uisim"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
description = "Host renderer for pm-ui: draws the firmware UI to a framebuffer and exports a PNG (no hardware)."
|
|
default-run = "uisim"
|
|
|
|
[dependencies]
|
|
pm-ui = { path = "../pm-ui" }
|
|
track-format = { path = "../track-format" }
|
|
embedded-graphics = "0.8"
|
|
image = { version = "0.25", default-features = false, features = ["png"] }
|
|
# initdump binary: capture mipidsi's ST7796 init command sequence on the host
|
|
mipidsi = "0.9"
|
|
embedded-hal = "1"
|