Defines control values
Resets the Envelop generator
Sets the frequency of the operator
Attack time control (between 0 and 127)
Decay time control (between 0 and 127)
The envelop generator of the operator.
Feedback level (between 0.0 and 1.0)
Feedback level controller assignment Index notation: 0: velocity 1: modulation wheel 2: Amplitude LFO 3: Extra envelop generator
Feedback register. Either out_0[n-1] or out[n-1] multiplied by feedback amount. The amount which the oscillator will be offsetted. Negative if inverted.
Input register. The amount which the oscillator will be offsetted.
Control flags and Wavetable selector
Output level (between 0.0 and 1.0)
Output level controller assignment Index notation: 0: velocity 1: modulation wheel 2: Amplitude LFO 3: unused
Output register. Not affected by either level or EG
Output affected by EEG and level. Either used for audible output, or to modulate other operators
The current position of the oscillator, including fractions.
Release time control (between 0 and 127)
ADSR shaping parameter (for the attack phase)
Live calculated out of shpA
Assigns velocity to shpA
ADSR shaping parameter (for the decay/release phase)
Live calculated out of shpR
Assigns velocity to shpR
The amount the oscillator must be stepped forward each cycle, including fractions.
Sustain curve control (between 0 and 127) 0: Percussive mode 1 - 63: Descending over time 64: Constant 65 - 127: Ascending over time
Operator tuning Bit 31-25: Coarse detuning (-24 to +103 seminotes) Bit 24-0: Fine detuning (-100 to 100 cents), 0x1_00_00_00 is center If fixed mode is being used, then top 7 bits are the note, the rest are fine tuning.
Implements a single operator.
Contains an oscillator, an ADSR envelop generator, and locals.