================================================
MusE loadable Midi Instrument Definitions
(valid from around MusE 0.8.1, Edited by Tim APR.25.2010, at MusE 2.0alpha)
================================================
- File Extension ".idf"
- searched in Subdirectory "instruments"
(/usr/share/muse/instruments on my system)
- Can be viewed, created or edited with menu 'Midi -> Edit Instrument'
All found instrument definitions are presented by MusE
in Config->MidiPorts in Pulldown in column "Instrument".
-------------------------------------------------
Example of Instrument Definition File:
-------------------------------------------------
...MusE event list which initializes instrument
...
...
...
-------------------------------------------------
Notes
-------------------------------------------------
(1) PatchGroups are not mandatory; its valid to write:
...
(2) An "Instrument Definition File" can define more than on
Instrument, but it is recommended to use one file for
one instrument
(3) the "prog" parameter in a "Patch" is mandatory. Missing
"hbank" or "lbank" are treated as "don't care".
Missing "drum" is treated as drum="0".
A XG-Patch looks like:
(5) A patch can be associated with a "mode" with one of
1 - GM
2 - GS
4 - XG
Example:
Mode id's can be ore'd together for patches which are valid
for more than one mode:
(4) example for MusE event (Sysex "XG-On"):
43 10 4c 00 00 7e 00
(5) ... part can be omitted
(6) Controller have the following porperties:
name: arbitrary unique (short) string describing the controller
type: Controller7 regular 7-bit controller
Controller14 14-bit controller
RPN registered parameter 7-bit
NRPN non registered parameter 7-bit
RPN14 registered parameter 14-bit
NRPN14 non registered parameter 14-bit
Pitch pitch mod wheel
Program program
Default Controller7 if omitted.
Pitch and Program are convenience controllers which
wrap pitch or program functionality in one controller.
h: controller number MSB. Default 0 if omitted.
l: controller number LSB. Default 0 if omitted.
For drum controllers, this can also be "pitch" indicating
each drum 'note' has its own controller.
min: minimum value for controller
max: maximum value for controller
init: reset value for controller; when controller value is
undefined after instrument reset, use the ''undefined''
value 0x10000
The min/max/init values can be omitted
Auto-biasing feature: If min is less than zero, such as with
pan = -64 -> 63, MusE automatically displays this range,
yet uses the true range of 0-127 'behind the scenes'.