notepat: volume + drive FX sliders with X/Y trackpad bindings
Adds two new rows to the FX stack (below echo/pitch/crush) wired into
the C-side master_volume + drive_mix DSP landed in ea57b7b77:
vol — green slider, 0..200% master output gain. 50% tick marks
unity so the default (0.5) sounds identical to pre-slider
builds. Unity tick rendered vertically inside the slider for
visual reference.
drive — orange slider, 0..100% tanh-saturation dry/wet. Subtle warmth
in the 10-30% range; obvious distortion past 60%.
Both rows inherit the existing pattern:
* X/Y axis toggle boxes on the right (same 10px squares as echo etc.)
* Drag on the bar to set mix directly
* Trackpad X/Y delta scaling (3× sensitivity like echo/crush) when
bound via the toggle + trackpadFX active
* Throttled setMix commits on every 3rd frame during trackpad drags
(same zipper avoidance as the other sliders)
Wave-type button row shifts from sliderH*4 down to sliderH*6 so the
two new rows fit above it. Pads stay anchored 30% from screen bottom
so they don't move. Boot sets the C-side targets to match the JS
defaults (volume=unity, drive=clean); leave() resets both.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>