memlnaut-nisps/nisps/modes
monkey-w1n5t0n 5d3785a6a8 feat(firmware): ExternalSynthMIDIMode + 6 device variants
Joystick -> MLP -> MIDI CC for an external hardware synth, using the
compile-time device templates from nisps/midi/generated. ExternalSynthMIDIMode
<const MidiDevice&, NOut> mirrors SoundAnalysisMIDIMode (NoOpEngine,
kRouteOutputsToEngine=false, pushes ControlChange events). A consteval
pick_cc_slots curates which NOut params fill the output slots (prefers musical
params over Bank Select/global). Adds six flashable variants
(MEMLNautModeExtSynth{Sub37,SubPhatty,Pro12,AnalogKeys,Hydrasynth,JD800}) wired
into mode_select.hpp + the .ino variant list + NISPS_ST guards, and a src/nisps/
midi symlink so the sketch tree can reach nisps/midi.

Host-compile-verified under C++20 (incl. via the sketch include path) and
lint-clean; full arduino-cli build + flash is on the hardware (no toolchain here.
2026-06-28 20:13:08 +02:00
..
generated fix: wire generated C++ schemas to nisps::Curve from core/math.hpp 2026-04-29 15:43:42 +03:00
base.hpp feat(nisps/modes): scaffolding for platform-agnostic mode layer (meml-beb) 2026-04-29 16:26:33 +03:00
breakor.hpp feat(nisps/modes): all 8 concrete mode bindings (meml-beb) 2026-04-29 16:26:49 +03:00
channel_strip.hpp feat(nisps/modes): all 8 concrete mode bindings (meml-beb) 2026-04-29 16:26:49 +03:00
elysiamorf.hpp feat(nisps/modes): all 8 concrete mode bindings (meml-beb) 2026-04-29 16:26:49 +03:00
external_synth_midi.hpp feat(firmware): ExternalSynthMIDIMode + 6 device variants 2026-06-28 20:13:08 +02:00
memlcelium.hpp feat(nisps/modes): all 8 concrete mode bindings (meml-beb) 2026-04-29 16:26:49 +03:00
paf_synth.hpp feat(nisps/modes): all 8 concrete mode bindings (meml-beb) 2026-04-29 16:26:49 +03:00
sound_analysis_midi.hpp feat(nisps/modes): all 8 concrete mode bindings (meml-beb) 2026-04-29 16:26:49 +03:00
verb_fx.hpp feat(nisps/modes): all 8 concrete mode bindings (meml-beb) 2026-04-29 16:26:49 +03:00
voice_space.hpp feat(nisps/modes): scaffolding for platform-agnostic mode layer (meml-beb) 2026-04-29 16:26:33 +03:00
xiasri.hpp feat(nisps/modes): all 8 concrete mode bindings (meml-beb) 2026-04-29 16:26:49 +03:00