Skip to content

Channel Mapping

Robert Hargreaves edited this page Jun 25, 2024 · 14 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 YM2612 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

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

Note that in dynamic mode, you will be unable to set operator pitches using MIDI channels when FM Ch. 3 special mode is enabled.

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

Clone this wiki locally