add per-oscillator coarse tune (ctune1/ctune2); add blueprint image

This commit is contained in:
Armin 2026-09-16 14:54:58 +02:00
commit 21aac2d355
8 changed files with 35 additions and 10 deletions

View file

@ -7,8 +7,17 @@ state-variable filter, dual envelopes, an LFO, a built-in FX unit (chorus /
delay / space), and a factory patch bank - all edited and browsed through the
on-screen LCD instead of a conventional panel of knobs.
## Screenshot
![RMX-19 screenshot](shot.png)
---
## Blueprint
![RMX-19 blueprint](blueprint.png)
---
## What it is at a glance
@ -126,7 +135,7 @@ The interface is a small nested menu system:
| Screen | Parameters |
|--------|------------|
| **VOICE** | OSC1 WAVE, OSC2 WAVE, DETUNE, OSC BAL |
| **VOICE** | OSC1 WAVE, OSC2 WAVE, COARSE TUNE 1, COARSE TUNE 2, DETUNE 1, DETUNE 2, OSC BAL |
| **FILTER** | FILTER TYPE, CUTOFF, RESONANCE, FILT ENV, KEY TRACK |
| **ENVELOPE** | AMP ATTACK, AMP DECAY, AMP SUSTAIN, AMP RELEASE, FENV ATTACK, FENV DECAY, FENV SUSTAIN, FENV RELEASE |
| **LFO** | LFO RATE, LFO SHAPE, LFO DEPTH, LFO TARGET |
@ -174,7 +183,9 @@ the host map onto the factory bank.
- **Voice engine** - each voice is a classic two-osc → mix → SVF filter →
amp-envelope chain. The oscillator mix is a crossfade between OSC1 and
OSC2, and detune offsets OSC2's frequency (OSC1 × `2^(detune/1200)`).
OSC2, and each oscillator has its own tuning: a coarse tune in semitones
(`2^(ctune/12)`) plus a fine detune in cents (`2^(detuneN/1200)`, DETUNE 1 →
OSC1, DETUNE 2 → OSC2).
- **Filter** - a stable Chamberlin state-variable filter; cutoff is modulated
by the filter envelope, key tracking, the LFO, and the mod wheel, with a
smoothed control signal to suppress zipper noise.