mirror of
https://codeberg.org/armin/sm-26.git
synced 2026-10-11 17:01:53 +02:00
Persist engine state in DAW projects, black monochrome panel, expand preset bank
- Save/load the engine's full parameter set alongside the preset index so knob and menu tweaks survive relaunching a song project - Make the plugin panel black: top/surround laser border and bottom deck (rotary + nav keys) are now #000000 - Extend factory bank to 320 categorized presets and add LCD click-to-open preset category browser
This commit is contained in:
parent
78e8ee80ad
commit
bdd3b38cee
7 changed files with 943 additions and 56 deletions
12
README.md
12
README.md
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
A self-contained **subtractive synthesizer** written in modern C++ on top of
|
||||
[JUCE](https://juce.com). It ships as a **VST3** on macOS and Linux plus a
|
||||
macOS **Audio Unit**, with a hand-rolled DSP core, 52 factory presets and an
|
||||
macOS **Audio Unit**, with a hand-rolled DSP core, 320 factory presets and an
|
||||
embedded 4x80 HD44780-style LCD driven by a cascaded on-screen menu.
|
||||
|
||||
## Why this is pretty good
|
||||
|
|
@ -29,7 +29,10 @@ embedded 4x80 HD44780-style LCD driven by a cascaded on-screen menu.
|
|||
## Features
|
||||
|
||||
* 12-voice polyphonic engine with voice stealing and glide
|
||||
* 52 factory presets across Bass / Lead / Pad / Keys / Pluck / FX / Stab / Arp
|
||||
* 320 factory presets across Bass / Lead / Pad / Keys / Pluck / String / Organ /
|
||||
Bell / Stab / Arp / FX / Wind / Brass / Voice / Perc / SFX / Grit / Retro /
|
||||
Ambient
|
||||
* Click the patch line on the LCD to open a categorized preset browser
|
||||
* Dual-waveform oscillator section (sine / tri / saw / square / noise …)
|
||||
* SVF low-pass filter with resonance **and** drive
|
||||
* ADSR with a per-voice envelope and cutoff modulation
|
||||
|
|
@ -79,6 +82,9 @@ sudo killall -HUP coreaudiod
|
|||
* The LCD shows the active preset, knob mappings with live values, host BPM
|
||||
and voice count. The delay's SYNC mode locks to the host tempo and lets you
|
||||
pick rhythmic subdivisions.
|
||||
* **Click the patch line** on the LCD to browse presets by category: a
|
||||
"SELECT PATCH CATEGORY" menu opens, ENTER drills into a category, and
|
||||
confirming a patch loads it and returns you home.
|
||||
|
||||
## Layout
|
||||
|
||||
|
|
@ -87,7 +93,7 @@ Build: Makefile -> CMake -> JUCE (fetched into build/juce, never committed)
|
|||
Source/
|
||||
PluginProcessor.* audio processor + DSP shell
|
||||
SynthEngine.* osc/filter/ADSR/delay voice engine (12 voices)
|
||||
Presets.* 52 preset definitions + per-preset knob routings
|
||||
Presets.* 320 preset definitions + per-preset knob routings
|
||||
SynthParams.* parameter model + formatting
|
||||
PluginEditor.* panel, knobs, nav diamond, status footer
|
||||
LcdDisplay.* 4x80 HD44780-style display renderer
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue