Grid grammar:
- a base-36 glyph above a column's top operator tags it with a MIDI channel;
'>' right of the tag makes the channel mono-legato (60 ms slide)
- operators below a '!' form the stereo master chain: Z delay, W chorus,
plus any filter/shaper
- X: phase modulation by the cell to the left (and above), index from the right
- K: control envelope; left of an operator it drives that operator's left
param (2KL5 = 303 filter sweep)
- per-note params: @ velocity, ^ key tracking, ? random; registers now read
on the digit scale, so MIDI CC and UDP registers have full range
I/O:
- MIDI keeps the channel nibble
- UDP (orca's ';', port 49161): k7 register, *3 bang a column, @34O write
a glyph, #name load a patch
- --stems n: one mono PipeWire node per channel tag (galdr.ch<tag>),
sample-aligned with the master; separate nodes because a playback
stream's AUX ports deliver no data in PipeWire 1.6
- the audio thread reconnects when PipeWire restarts; status line shows it
- patches: ~/hometaping/<date>.galdr by default, .galdr extension, Ctrl+S,
GALDR_DEBUG=<file> logs events
Examples with render tests: drums, orchestra, acid.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>