Back to main page...


User Manual --- Bassline Engine

In this chapter it is assumed that you are already familar with the Lead and Multi Engine, so that only the differences need to be explained in detail.

The bassline engine is optimized - as the name says - for bass sounds and sequences. It provides two instruments, the first is always assigned to the left audio channel, the second to the right audio channel. They can be controlled independent from each other over different MIDI channels and/or keyboard zones assignments in the Ensemble menu. Alternatively, they can be controlled with the same keys by assigning them to the same MIDI channel and keyboard zone - this allows to play layered/stereo sounds or combined sequences.

Following use cases have been considered:

  • Direct MIDI Control: active when sequencer mode within the SQC menu not enabled. The bassline can be directly played from a MIDI keyboard. Accent is activated with velocity >= 64, slide is activated when more than one key is played the same time (Sus-Key, sometimes also called "fingered" mode).
  • Sequencer Mode: can be activated within the SQC menu. One of 8 sequences can be selected by playing a note on a MIDI keyboard. Note C selects sequence 1, Note C# selects sequence 2, ... Note G Sequence 8. With Note G#, A, A# and B the current sequence is deselected (not played). The octave doesn't matter (no transpose).
    Bassline L and R (left and right channel) share the same sequence memory. Different sequences can be selected for these basslines by assigning the instruments to different MIDI channels and/or keyboard zones within the Ensemble
    While bassline sequences are selected over the defined MIDI channel and keyboard zone of ensemble instrument #1 and #2, they can be transposed with the settings of instrument #3 and #4. This strict seperation allows several usecases (e.g. no, same or separate transpose for L/R bassline, or transposing from a different MIDI channel which is also used for other MIDI devices, e.g. MIDIbox SEQ)
    In order to ensure, that both basslines are in sync, they are always started together. It is possible to start with a single bassline by disabling the second one in the preselection (Seq=-- in SQC menu)
    The sequencer continues to play when the MIDI key has been released (hold function). This allows you to tweak sound parameters with both hands - whenever you want to select a new sequence, play a new note. Whenever you want to stop the sequence, play G#/A/A# or B.
    Optionally the sequence can be preselected before the next measure (16 steps) is reached (S16 flag in SQC menu). Personally I prefer not to use this feature, as switching between different sequences in between a measure results into great variations (preferred configuration for jam sessions! :)
  • Arpeggiator Mode: is available as well and provides the same parameters like known from the Lead and Multi Engine.
    Note that it isn't possible to combine the sequencer with the arpeggiator - arpeggios have to be played from an external keyboard (or external sequencer...).

The bassline sequencer works like known from Roland TB-303. Up to 16 steps can be played. Each step consists of Note/Gate/Accent/Slide/Octave and an additional, free assignable sound parameter. Each patch contains 8 sequences, which can be selected from a MIDI keyboard, within the SQC menu, or from the modulation matrix buttons of the control surface.

Sound Demos

Here a MP3 sample from my first spontaneous jam session with the completely overworked MBSID V2 bassline engine - note that this recording is the work of 30 minutes and not more (no optimisations, no MIDI automation). Sequences are played internally, they are selected from a MIDI keyboard. Parameters are tweaked from the Control Surface. The MIDIbox is synchronized via external MIDI clock to Logic Audio. Drums are played from a Spectrasonics Stylus RMX VST.

The second jam session, where one SID used a feedbacked audio out (see also this forum posting).
Warning: >8 MB, very repetive stuff!

Another jam session, which is also documented on video > YouTube, Vimeo (better audio quality).
This package contains the two patches which have been used in this demo + a "HowTo"

During this session, two SSM2044 via AOUT_NG module were used to filter the outputs of two SIDs. mbsidv2_bassline_demo4.mp3
Forum Article

The 5th demo, played on a MBSID V2 in MB-6582 case -> YouTube, Vimeo (better audio quality).

Another bassline demo - the patches can be downloaded from from this forum thread.

The second part of this demo created some years later - the bank is part of the release package meanwhile ("presets/bank2_tk2_soundbank.syx")

Root Menu

This is the root menu of the bassline engine. In difference to the Lead Engine, you will miss the MOD (Modulation Matrix), TRG (Trigger Matrix) and WTC/WTE (Wavetable) entries. Instead, you will notice a new SEQ and SQC (Sequencer/Configuration menu)


The root menu gives you quick access the submenus, which are described below.

"Shift" Menu

To initialise a Bassline Patch, press the SHIFT (formerly LINK) button, and press the second select button below the LCD to change to the Bs (Bassline) engine:


SEQuencer menu

As the TB303-style sequencer is the most important feature of the bassline engine, the appr. page can be entered with the first item of the root menu.


A sequence pattern consists of 16 steps, and 8 patterns are embedded within a patch. The pattern memory is shared between the two basslines.

Following functions are available in the SEQ page:

  • SEQ: selects 1 of 8 patterns, which should be edited
  • Pos: the step number. It can also be changed with the Page Up/Down button (preferred usage)
  • Nte: the note which should be played by the step
  • Oct: the octave (Down/-/Up). Additional (fixed) transposing is possible within the OSC menu
  • S/G: slide and gate flag. With activated slide, the note will be stretched to the next step, and the portamento function will be activated when the next step is played.
    The note will only be played if the gate flag is set.
  • Acc: the accent flag causes following changes:
    • Note will be played with maximum sustain value
    • LFO and envelope depth will be increased by the "Accent value", which can be specified within the LFO/ENV menu.
    • the envelope generator will select a special Decay value (DcA), which is normaly shorter than the "normal" decay, so that the envelope will reach the sustain phase faster.
  • Par: allows to control a specific sound parameter in addition to the note (2nd parameter track, see also SQC menu)
  • Cpy: copies the current pattern into a buffer
  • Pst: paste: copies the buffer content into the current pattern
  • Clr: clears the current pattern
  • SQC: shortcut to the SQC page

The sequencer configuration page contains following items:

Sequencer Configuration

  • ACh: audio channel (Left/Right) - selects the bassline. Changes will be done for both basslines (LR), for the left one only (L-) or for the right one only (-R)
  • On: enables/disables the sequencer function. If disabled, the bassline can be directly played via MIDI!
  • Seq: selects the initial pattern after a patch change. A pattern is normaly started and selected by pressing a note on a keyboard. So, this value is only relevant if you are using an alternative start method (e.g. MIDI start event if MBSID Clock generator in slave mode)
  • Spd: the sequence speed, derived from the global BPM rate (Ensemble->Clk menu). Since the BPM generator is running at quadrupled clock rate, the frequency should be divided by 4 in order to get back the "normal" BPM rate.
  • Len: the track length (1..16 steps)
  • S16: if active, pattern changes (e.g. via MIDI keyboard) won't take place immediately, but once the next bar is played. This allows you to synchronize pattern changes to a 4/4 measure.
  • Par: specifies the sound parameter which is controlled by the "parameter track" (Par value within the SEQ menu). All available parameters are listed here. Due to the special coding, it is possible to control both, the current, or a specific (L/R) bassline from the parameter track ("Current" means for this case not the LR selection on the control surface, but the bassline which plays the sequence)
  • SEQ: shortcut to the SEQ page

OSCillator menu


All parameters have the same purpose like described for the Lead engine. Instead of the OSC (oscillator), the Audio Channel has to be selected (LR/L-/-R).

Note that this page only controls a single ("master") oscillator. The remaining two ("slave") oscillators of each SID are configured from the O23 page.

O23 menu


Oscillator 2 and 3 of the SID are used as "slave oscillators" in bassline mode. This means, that their pitch and gate follow OSC1. This option is nice for fat unisono effects, but also for sync/ringmodulation, or layered waveforms - the resulting sound is less TB303-like, but much more "SIDish".
Yessss, we want this!!! :-)

  • ACh: audio channel (Left/Right) - selects the bassline. Changes will be done for both basslines (LR), for the left one only (L-) or for the right one only (-R)
  • Wv2 and Wv3: selects the waveforms of the slave oscillators. If disabled ("---"), the gate of the oscillators won't be triggered. Recommentation: use different waveforms to create SIDish timbres.
  • SR2 and SR3: activates Sync/Ringmodulation for oscillator 2 and 3.
  • Oc2 and Oc3: transposes the slave oscillators octave-wise.
  • PW2 and PW3: sets the width of the pulse waveform (800: 1:1 duty cycle).
  • Nt2 and Nt3: decouples the pitch of a slave oscillator from the master oscillator. Allows to play a slave oscillator at a specific pitch (e.g. C-3), especially useful for nice sync and ringmod effects.
  • Phs (Oscillator Phase Offset): this function allows you to synchronize the phases of all three oscillators.
    With Phs=0 they are freerunning - this is the preferred option for "analog" sounds. With Phs=1, they will be started at the same moment, whereas with Phs>1 the phase offset between the oscillators will be controlled in 0.4% steps (!).
  • Det (Detune): detunes all oscillators by increasing (OSC2)/decreasing (OSC3) the pitch. This allows you to create fat sounds with a single encoder turn!
  • DtM (Detune Mode): switches between normal (legacy) and SuperSaw +/- mode, which has been created by Lis0r based on the research from this paper

FILter menu


LFO menu


Each instrument features two LFOs with fixed modulation routing to Pitch, Pulsewidth and Filter. The modulation depth for these targets can be changed individually (D.P (Depth Pitch), DPW (Depth Pulsewidth), D.F (Depth Filter).

The Accent parameter at the end of the page specifies, how much the depth values will be increased when a note is played "accented" (SEQ: accent flag, MIDI: velocity >= 64).

ENVelope menu


Each instrument provides one envelope with fixed modulation routing to Pitch, Pulsewidth and Filter. The modulation depth for these targets can be changed individually (D.P (Depth Pitch), DPW (Depth Pulsewidth), D.F (Depth Filter).

In difference to the Lead Engine, only Attack, Decay, Sustain and Release phase is available. The curve parameter affects all ramps.

The Accent parameter at the end of the page specifies, how much the depth values will be increased when a note is played "accented" (SEQ: accent flag, MIDI: velocity >= 64).

In addition, a special decay value will be selected on accented notes (DcA), which should be shorter than the "normal" decay, so that the envelope will reach the sustain phase faster.

ConFiGuration menu

Some basic settings for the MBSID Bassline engine are collected here. They have the same function like known from the Lead Engine

ARPeggiator menu


The arpeggiator works exactly like for the Lead Engine

Note that the sequencer and arpeggiator functions are handled mutually exclusive - they cannot be used the same time.

KNoBs menu


Knob assignments are available as well. The special coding of the parameter table (see MIDIbox SID V2 parameter chart) allows to control sound parameters individually for a specific bassline, for the currently selected, or for both basslines.

The typical TB303 parameters CutOff/Resonance/EnvMod/Decay/Accent are assigned to the 5 knob functions by default. This generic approach allows you to control either both basslines, the currently selected (first, second or both), or a dedicated (first or second) bassline depending on the parameter assignment numbers. It's possible to assign a second parameter to the same knob, a min/max range can be specified, values can be received from MIDI, and they are sent to MIDI if the CC function of the Control Surface is activated for easy recording of parameter changes (MIDI automation). Last but not least, knob values can be controlled from analog inputs. This means, that you could also control them with pots or joysticks.

EXTernal menu


In difference to the Lead Engine, CV outputs are not available as modulation target. The static voltage levels and switch states can be changed here.

The only way to modulate analog outputs within multi patches is the use of the F2A (Filter-to-Analog) option, which can be activated in the Ensemble menu.

SAVe menu available as well of course! :)



RaNDom Generator menu


Note/Gate/Slide/Accent and the sound parameter track can be randomized separately.

Special Control Surface Handling

The OSC and ENV selection buttons behave different: they select the bassline (LR/L-/-R).

The modulation matrix displays the selected sequence as horizontal (left channel) and vertical (right channel) bar. The sequence can be changed with the appr. modulation matrix button - this is an alternative solution if you don't want to select a sequence with a MIDI keyboard.

Once the sequencer is playing, the LED matrix turns into a step display with flashing LEDs. Since there are only 8 LEDs in a column/row, two steps have to share the same LED. Anyhow, you will like the effect, it looks nice! :) Due to implementation reasons, the special step display works only when basslines are played on the master core.
If you built your MIDIbox SID based on the old Frontpanel, the 8th row will be missing, accordingly the 8th sequence cannot be selected/displayed for the left channel bassline - sorry!

Sequences can be started from the control surface with the Play button. If this button isn't available on your frontpanel, just hold the SID1/SID2/SID3 and/or SID4 button and press menu. The sequence will stop with the Note Off function, which is available within the Shift page.

If all these buttons are not part of your frontpanel, sequences can only be started/stopped via MIDI.

Recommented Ensemble Configuration

For easiest usage of the sequence selection feature, it is recommended to create a special Ensemble configuration, in which the two basslines are assigned to the same MIDI channel. By creating split points at C-3 and C-4, it is possible to control the transposer with the lower keyboard range, the "left" bassline with a middle keyboard range, and the "right" bassline with the upper keyboard range.

Ensemble->Ins Configuration for Bassline L:


Ensemble->Ins Configuration for Bassline R:


Ensemble->Ins Configuration for Transposer of Bassline L. "Trn +12" is required in this setup to compensate the octave range of the transposer (base note C-3 is outside the selected keyboard zone c-2..B-2):


Ensemble->Ins Configuration for Transposer of Bassline R (here: controlled from same keyboard zone as L bassline):


If more than two basslines should be controlled from the same keyboard (played on the slave SIDs), the ranges need to be reduced to dedicated octaves.

If the basslines should be synchronized to an external MIDI clock master, just select Slave mode within the Ensemble->Clk menu:


Only in slave mode, sequences will be started and stopped via MIDI Start/Stop events - in Master mode such events are ignored.

Note that using the slave mode is currently the only way to keep basslines played on multiple cores in synch. An inter-core synchronisation hasn't been implemented yet (see also this page).

Last update: 2024-05-08

Copyright 1998-2023, Thorsten Klose. All rights reserved.