Skip to main content

SID instrument

The SID instrument drives one oscillator of NullPerator's emulated SID chip. Any of the 64 instrument slots can hold a SID preset, but all SID presets share the same three oscillators. More presets do not create more SID voices.

NullPerator SID instrument settings

Voice settings and the shared SID filter live in one scrollable list.

Parameters​

FieldValuesDefaultBehaviour
OSCILLATOR0–20SID voice used by this instrument.
PULSEWIDTH000–FFF800Duty cycle of pulse-containing waveforms.
WAVEFORMNine choicesTriangleOff, triangle, saw, triangle+saw, pulse, triangle+pulse, saw+pulse, triangle+saw+pulse, or noise.
OSC SYNCNO, YESNOHard-syncs the oscillator to the preceding SID oscillator.
RING MODNO, YESNOEnables ring modulation.
ENV ADSRFour cells, each 0–F2 2 8 2ATK, DEC, SUS, and REL: attack, decay, sustain, and release.
FILTERNO, YESNORoutes this oscillator through the SID filter.
CUTOFF000–7FF1FFShared SID filter cutoff.
RESONANCE0–F0Shared filter resonance.
MODELP, BP, HP, NOTCHLPShared filter response.
VOLUME0–FFShared SID chip output volume.

The list is grouped into Oscillator, Envelope, and Filter & Output. The Envelope divider carries ATK / DEC / SUS / REL column headers, with four value cells on the ENV ADSR row below it.

On ENV ADSR, use Left / Right without a modifier to choose a cell, as on Drum's grid. Hold Enter and press Left / Right for a small change, or Up / Down for a large change. Each cell clamps to 0–F; the bottom bar shows the hexadecimal steps ±1 / ±10.

Shared state​

CUTOFF, RESONANCE, MODE, and VOLUME represent chip-wide registers. Changing any of them on one SID instrument changes the value seen by the other SID instruments. FILTER remains per oscillator because it controls whether that voice is routed into the shared filter.

Assign three instruments different OSCILLATOR values when you want a conventional three-voice patch. Two instruments targeting the same oscillator overwrite the same SID voice state. Additional presets can provide alternate settings for those oscillators.

Note range​

The emulated SID frequency table accepts the displayed range C2–B9 (stored notes 24–119). Notes outside that range are rejected rather than wrapped. Older builds labelled the same stored notes C0–B7; playback pitch is unchanged.