Skip to content

Channel Mapping

Robert Hargreaves edited this page Jul 27, 2024 · 13 revisions

You can re-configure the MIDI mappings manually by sending the appropriate SysEx messages.

Auto (default)

The interface starts in static mode, but a General MIDI reset will switch the mapping to dynamic mode.

Static

By default, MIDI channels are assigned in a static, one-to-one arrangement to FM or PSG channels as follows:

Channels Assignment
1 - 6 FM Channels 1 - 6
7 - 9 PSG Square Wave Tones 1 - 3
10 PSG Noise Channel
11 - 13 FM Ch. 3 Special Mode Operator Pitches

Each channel implements a last note played note priority algorithm; keeping track of up to 10 concurrent notes. Additional notes are dropped. Take special care to ensure note off events are sent to the interface to release notes to prevent channels from jamming up.

Dynamic

When dynamic mapping mode is enabled (SysEx 00 22 77 03 01), MIDI channel note-on/off events are dynamically routed to free FM and PSG channels. That is, MIDI channels no-longer map directly onto device channels but are virtualised and note-on/off events and MIDI program data is set on the next available channel. This mode is best suited for playback of General MIDI files and makes full use of available YM2612/PSG capacity.

The following rules are used to determine which device channel receives the MIDI event:

  1. FM channels 1 - 6 and PSG channels 1 - 3 (device channels) are included in the pool of available channels. The first available channel is assigned the first MIDI note on event. Future events are sent to this channel.
  2. On subsequent events, if the note is already playing on that channel, the next available device channel is used.
  3. The following MIDI parameters are automatically set on any mapped device channels:
    • Program
    • Volume
    • Pan

The following features are unavailable in dynamic mode:

  • Ch. 3 "Special Mode" individual operator pitch
  • Portamento

Polyphonic

When polyphonic mode is enabled (CC 84), dynamic mapping mode is enabled and MIDI channel 1 is mapped to FM channels 1-6. This allows for polyphony within a single MIDI channel. In addition, any FM parameter change made will be sent to all FM channels. If all channels are busy, the note on event is dropped.

Device Select (CC 86)

The interface groups all the device channels available into 3 distinct devices:

  • FM
  • PSG Tone
  • PSG Noise

You can use CC 86 to restrict the device channels selected to play notes for a specific MIDI channel:

CC Value Description
0 - 31 FM or PSG tone channels (default)
32 - 63 FM channels only
64 - 95 PSG tone channels only
96 - 127 PSG noise channel only