=                               78888888888888889
=                               4  MIDI Output  6
=                               12222222222222223
|
| MIDI output causes MIDI data to be sent to all enabled output ports on the
| MIDI configuration page (Shift-F1) whenever the player sees an event.
|
| The data actually sent is the result of a macro configuration on the MIDI
| Output page.
|
| Each event is described below:
|
|     MIDI Start  - Player begins
|      MIDI Stop  - Player stops playing
|      MIDI Tick  - Every tick
|        Note On  - Every note recorded
|       Note Off  - Every note off (including NNA note-off)
|  Change Volume  - Volume change (more like aftertouch)
|    Bank Select  - Bank change
| Program Change  - Program change
|      SF0 - SFF  - When a Z00-Z7F is seen in the same IT-channel
|      Z80 - Z8F  - When played
|
| These events are written in UPPERCASE hexadecimal, with LOWERCASE variable
| substitution. The variables are:
|
|              a  - Coarse bank/change (only available on Bank Select)
|              b  - Fine bank/change (only available on Bank Select)
|              c  - Selected MIDI channel
|              n  - Selected MIDI note (Note On events only)
|              p  - Program setting (Program Change events only)
|              v  - Velocity (initial volume)
|              u  - Current volume
|              x  - Set Panning
|              y  - Calculated Panning (includes panning envelope)
|              z  - MIDI Macro (Z00-Z7F commands)
|
| MIDI messages are normally three bytes (except for System Exclusive
| messages). A new "message" begins with a byte having its high bit set.
| This means that the first byte is going to be between 0x80 and 0xFF.
|
| System Exclusive (SysEx) messages begin with a 0xF0 and end with a 0xF7
| byte. Schism/Impulse Tracker use the following SysEx messages internally:
|
| F0 F0 00 x F7  - Set the current filter cutoff point to be "x"
| F0 F0 01 x F7  - Set the current filter resonance to be "x"
|
| You'll generally need the programming guide for your MIDI synthesizers to
| come up with useful values. You do not have to include the F7 as Schism
| Tracker will automatically terminate SysEx messages.
|
| Other MIDI messages include:
|         8c n v  - Note-off for channel "c", note "n"
|         9c n v  - Note-on for channel "c", note "n", velocity "v"
|         Ac n v  - Aftertouch (adjust velocity)
|         Bc q z  - Set MIDI controller "q" on channel "c", to value "z"
|         Cc p    - Program change channel "c" to "p"
|         Dc z    - Set total key pressure to "z"
|         Ec q q  - Pitch Wheel; q q is a 14-bit value.
|         F8      - MIDI "Clock" operation
|         FA      - Start MIDI
|         FB      - Continue MIDI
|         FC      - Stop MIDI
|         FF      - Reset
|
| There are other MIDI messages, but they are unlikely to be useful with
| Impulse or Schism Tracker.
|
| Nevertheless, your programming guide will be authoritative.
|
|
| Controllers (Bc q z) are reasonably common. They generally come in two
| flavors: a "coarse" or "high byte" setting, and "fine" or "low byte"
| setting. If a listed controller only comes in one kind, the values will be
| listed only for coarse adjustment.
|
| The names listed below are likely to be similar to the names on your
| synthesizer.
|
| Coarse  Fine   Description
|
|  00      20    Bank Select
|  01      21    Modulation Wheel (MOD Wheel)
|  02      22    Breath Controller
|  04      24    Foot Pedal
|  05      25    Portamento Time
|  06      26    Data Entry/Slider
|  07      27    Volume
|  08      28    Balance/Panning
|  0A      2A    Panning Position
|  0B      2B    (Volume) Expression
|  0C      2C    Effect Control 1
|  0D      2D    Effect Control 2
|  10            General Purpose Slider 1
|  11            General Purpose Slider 2
|  12            General Purpose Slider 3
|  13            General Purpose Slider 4
|  40            Hold Pedal
|  41            Portamento On/Off
|  42            Sustenuto
|  43            Soft Pedal
|  44            Legato Pedal
|  45            Hold 2 Pedal
|  46            Sound Variation
|  47            Sound Timbre
|  48            Sound Release Time
|  49            Sound Attack Time
|  4A            Sound Brightness
|  4B            Sound Control 6
|  4C            Sound Control 7
|  4D            Sound Control 8
|  4E            Sound Control 9
|  4F            Sound Control 10
|  50            General Purpose Button 1
|  51            General Purpose Button 2
|  52            General Purpose Button 3
|  53            General Purpose Button 4
|  5B            Effects Level
|  5C            Tremulo Level
|  5D            Chorus Level
|  5E            Celeste Level
|  5F            Phaser Level
|  60            Data Button Increment
|  61            Data Button Descrement
|  63      62    Non-Registered Parameter Number (NRPN)
|  65      64    Registered Parameter Number (RPN)
|  78            All Sound Off
|  79            All Controllers Off
|  7A            Local Keyboard On/Off
|  7B            All Notes Off
|  7C            Omni Mode Off
|  7D            Omni Mode On
|  7E            Monophonic Operation
|  7F            Polyphonic Operation
