A synthesizer plugin emulating the Roland Juno-106, built with JUCE.
6-voice polyphonic with per-voice analog variance, TPT ladder filter with OTA saturation, BBD chorus emulation, arpeggiator, portamento/unison mode, and 211 factory presets.
Formats: AU, VST3, LV2, Standalone Platforms: macOS (13+), Windows, Linux
See docs/DSP_ARCHITECTURE.md for a detailed writeup of the signal chain and emulation techniques.
Requires CMake (3.22+) and Xcode (or Command Line Tools).
git clone --recursive https://github.com/kayrockscreenprinting/ultramaster_kr106.git
cd ultramaster_kr106
make build # AU, VST3, Standalone
make run # Build and launch StandaloneRequires CMake (3.22+) and Visual Studio 2022 (or Build Tools with C++ workload).
git clone --recursive https://github.com/kayrockscreenprinting/ultramaster_kr106.git
cd ultramaster_kr106
cmake -B build
cmake --build build --config ReleasePlugins are output to build/KR106_artefacts/Release/.
Requires CMake (3.22+) and a C++17 compiler.
git clone --recursive https://github.com/kayrockscreenprinting/ultramaster_kr106.git
cd ultramaster_kr106
make deps # Install ALSA, X11, freetype, etc. (apt)
make build # VST3, LV2, StandaloneFor a release build:
CONFIG=Release make buildRun make help for all available targets.
Source/
PluginProcessor.cpp/h Audio processor, parameter setup, preset management
PluginEditor.cpp/h Custom GUI layout
KR106_Presets_JUCE.h 211 factory presets
Controls/
KR106Knob.h Bitmap rotary knob (sprite sheet)
KR106Slider.h Pixel-perfect vertical fader
KR106Switch.h 3-way toggle switch (vertical/horizontal)
KR106Button.h Momentary button with LED
KR106Keyboard.h On-screen keyboard with transpose
KR106Scope.h Oscilloscope with clickable vertical zoom
KR106Bender.h Pitch bend lever
KR106Tooltip.h Parameter value tooltip overlay
DSP/
KR106_DSP.h Top-level DSP orchestrator, HPF, signal routing
KR106Voice.h Per-voice: VCF, ADSR, oscillator mixing, portamento
KR106Oscillators.h PolyBLEP saw, pulse, sub, noise generators
KR106Chorus.h MN3009 BBD chorus with Hermite interpolation
KR106LFO.h Global triangle LFO with delay envelope
KR106Arpeggiator.h Note sequencer (Up / Down / Up-Down)
docs/
DSP_ARCHITECTURE.md Detailed DSP design documentation
HOLD_ARP_FLOW.md Hold + arpeggiator interaction flow
tools/preset-gen/ Original patch files and conversion utilities
See CONTRIBUTING.md for guidelines on submitting issues and pull requests.
This project is licensed under the GNU General Public License v3.0. Third-party library licenses are listed in THIRD_PARTY_LICENSES.
