Subversion Repositories svn.mios

Compare Revisions

Ignore whitespace Rev 1221 → Rev 1222

/playground/Antichambre/midibox_tia/doc/tia_sysex_implementation.txt
New file
0,0 → 1,77
$Id: midibox_tia_sysex_implementation.txt 379 2008-07-06 23:17:18Z tk $
 
MIDIbox TIA SysEx Implementation
================================
 
Which Actions are implemented
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
a) F0 00 00 7E 46 <device-number> 01 <preset-type> <relative-bank-number> <preset-number> F7
Request a Dump of Preset :
<preset-type> -> 0x00-Patch / 0x01-Kit / 0x02-Wavetable.
<relative-bank-number> -> for patch: Absolute bank number,
for kit or wavetable Absolute bank number - (DEFAULT_BS_KBANK_ID*4)
<preset-number> 0-127 (63 if 32k)
Sends back:
valid:
F0 00 00 7E 46 <device-number> 01 <preset-type> <relative-bank-number> <preset-number> <128 bytes of dump data> <checksum> F7
valid:
F0 00 00 7E 46 <device-number> 01 <preset-type> <relative-bank-number> <preset-number> <error-number> F7
b) F0 00 00 7E 46 <device-number> 02 <preset-type> <relative-bank-number> <preset-number> <128 bytes of dump data> <checksum> F7
Write a Dump of Preset :
<preset-type> -> 0x00-Patch / 0x01-Kit / 0x02-Wavetable.
<relative-bank-number> -> for patch: Absolute bank number,
for kit or wavetable Absolute bank number - (DEFAULT_BS_KBANK_ID*4)
<preset-number> 0-127 (63 if 32k)
Sends back:
F0 00 00 7E 46 <device-number> 02 <preset-type> <relative-bank-number> <preset-number> <error-number> F7
 
c) F0 00 00 7E 46 <device-number> 03 F7
Request a Dump of the whole Bank (128 patches)
 
d) F0 00 00 7E 46 <device-number> 05 AH AL F7
Direct Read of parameter (AH = 0..1, AL = 0..7F)
 
e) F0 00 00 7E 46 <device-number> 06 AH AL <value> F7
Direct Write of parameter (AH = 0..1, AL = 0..7F)
 
f) F0 00 00 7E 46 <device-number> 0B <bank> F7
Change the BankStick (like CC#0)
Returns F0 00 00 7E 46 <device-number> 0F <bank> F7
if BankStick not available, bank remains unchanged
 
g) F0 00 00 7E 46 <device-number> 0D 02 00 <OSC1 channel> F7
F0 00 00 7E 46 <device-number> 0D 01 00 <OSC2 channel> F7
F0 00 00 7E 46 <device-number> 0D 00 00 <OSC3 channel> F7
Change the MIDI channel
Value 00 (for Channel #1) .. 0F (for Channel #16) is expected.
Note that the channels of the oscillators can be changed
separately. In normal cases, all channels should be set to the
same value.
 
The values are stored in EEPROM, accordingly there must be
a delay of at least 5 mS between each SysEx command, otherwise
data gets lost
 
The change will take place with the next Patch selection.
E.g., you could send a program change (e.g. C0 <patch>) after
the SysEx commands.
 
Example for configuring MIDI channel #16 on TIA1:
F0 00 00 7E 46 00 0D 02 00 0F F7
F0 00 00 7E 46 00 0D 01 00 0F F7
F0 00 00 7E 46 00 0D 00 00 0F F7
C0 00
 
h) F0 00 00 7E 46 <old device-number> 0D 03 00 <new device-number> F7
Change the device number
 
i) F0 00 00 7E 46 <device-number> 0E F7
Request CC Dump
 
j) F0 00 00 7E 46 <device number> 0F F7
Ping (just sends back the same SysEx string)
 
 
Thorsten.Klose@midibox.org