macos: perc-kit waltz patterns + sustained notes + bachbeat demo master
Wire the real artery-tui WALTZ_PATTERNS (classic/dark/baroque/phonk/ viennese/drill/dreamy/minimal) through notepat's percussion kit, plus a bachbeat mode that plays the first N notes of Bach's Cello Suite No. 1 Prelude over a steady 4/4 groove. - scripts/waltz-seq.py: emits AC_INJECT_SEQUENCE from a chosen WALTZ style + BPM + bars. Maps kick/snare/hat/hatOpen to the correct perc-kit keys (left grid: c/d/g/a; right grid: h/i/l/m — via NOTE_TO_KEY for +c/+d/+g/+a). With --melody on, interleaves a 4-bar minor-pentatonic groove on the OTHER grid with sustained bass anchors (6 steps ≈ 750 ms at 120 bpm) and shorter arp holds. - scripts/bachbeat-seq.py: parses MIDI_EVENTS from artery/test-notepat-bach-prelude.mjs, converts note labels through the same LABEL_TO_KEY map notepat uses, and lays them over a simple kick/snare/hat beat on the other grid. - main.c sequencer: AC_INJECT_SEQUENCE now accepts an optional third field per entry (key,delay_ms,hold_ms). Non-zero hold queues the keyup for later; tap-style events keep the existing two-field form. Also added SDL mappings for pageup/pagedown/home/end/shift so the kit-toggle + arrow-key volume mix works headlessly. - demo.sh: new MODE=waltz|bachbeat|melody switch; KIT_MIXDOWN ticks down perc-kit volume via arrowright+arrowdown×N after the kit flip (default 3 = ~70%, stops drums overwhelming the melody); auto-computes AC_HEADLESS_MS from the selected body length. Demo recordings at ~/Desktop/ac-boot-shots/demo-<style>.mkv include boot animation → prompt typing 'notepat' → jump → drum-kit switch on right grid → volume mixdown → waltz or bachbeat over the pattern. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>