Skip to content

MIDI Implementation

miotislucifugis edited this page May 8, 2022 · 18 revisions

MiniDexed recognises the following MIDI commands (taken from the source file: https://github.com/probonopd/MiniDexed/blob/main/src/mididevice.cpp).

MIDI Channel Voice Messages

All channel voice messages will act on a specific MIDI channel and will thus apply to any Tone Generators (TGs) listening on that specific MIDI channel and any TGs in MIDI OMNI Mode.

MIDI Command Hex Values Notes
Note Off 0x80 0..127
Note On 0x90 0..127
Control Change 0xB0 Various See table below
Program Change 0xC0 0..127 Only if MIDIRXProgramChange=1 in minidexed.ini
Pitch Bend 0xE0 tbd

MIDI Channel Control Change Messages

All channel control change messages will act on a specific MIDI channel and will thus apply to any Tone Generators (TGs) listening on that specific MIDI channel and any TGs in MIDI OMNI Mode.

MIDI CC Decimal Hex Values Notes
Bank Select (MSB) 00 0x00 0..127 Recognised, but not used
Modulation 01 0x01 0..127
Channel Volume 07 0x07 0..127 Local volume for a specific MIDI channel
Pan 10 0x0A 0..127
Bank Select (LSB) 20 0x20 0..127 Changes the voice bank in use. Currently up to 128 banks are supported (see Voice Data Syx Files)
Sustain 40 0x40 0..127 <=63 = OFF; >=64 = ON
Sound Controller 2 113 0x71 0..127 Filter resonance
Sound Controller 5 74 0x4A 0..127 Filter cut-off
Effects 1 Depth 91 0x5B 0..127 Reverb level
Effects 4 Depth 94 0x5E 0..127 Detune
All sound off 120 0x78 0
All notes off 123 0x7B 0

MIDI System Messages

tbd

MIDI System Real-time Messages

tbd

Clone this wiki locally