Hi Tony,
> I understand. The point is the BCr's sysex is just weak.
> You would need to use a PC & some software like Midiox to map CC values into
> sysex streams to send to the M6R.
> It would be slow and kludgy, but would probably work.
What can't you do that makes the BCR not suitable?
Negative numbers are the only trick and I think that can be solved from the cursory glance I have had of the sysex spec
Multiple parameters in one byte is also a problem in early synths, but this doesn't seem to be the case here.
Have I missed something??
All the best
Royce
From
http://machines.hyperreal.org/manufacturers/Oberheim/Matrix-6-1000/info/Matrix-6.sysex.edit.txt
Is this correct sysex???
* sysex format:
0xF0 sysex start
0x10 Oberheim ID
dd Device ID: 0x02 for M-12 or Xpander, 0x06 for M-6.
opcode one byte.
(data)
0xF7 sysex end (EOX)
The high bit of each byte is reserved as the status bit, as usual.
Wait at least 20 ms between sysex operations.
* select quick patch edit
0x05 opcode
Send this before changing parameters through remote editing.
"This operation selects the Quick mode of the Patch Edit function.
The M-6 must be in Patch Edit mode in order to act upon parameter
change commands."
* change parameter
0x06 opcode
pp parameter number, 0-99.
vv value. may not be negative. (damn!)
If you want to set negative values, you have to send the whole patch,
breaking the sound. I can't imagine why they didn't just use bit 6
as a sign bit.
* single patch
0x01 opcode
pp patch number, 0-99.
xx yy data, sent nybblewise:
a data byte dd is sent as xx=dd&0x0F; yy=dd>>4
cc checksum:
the sum of the original data bytes dd, masked with 0x7F.
Here I don't see why they chop up the data bytes; none exceeds 7 bits.
========== patch-format
summarized from Matrix-6 / Matrix-6r MIDI spec, 5/87, for 2.13 ROM. -eub
read the sysex file first.
* patch data format
byte param bits description
0-7 n/a 6 each patch name: ASCII clipped to 6 bits.
8 48 2 kbd mode (0) (reassign, rotate, unison, rob) (3)
9 0 6 dco1 freq
10 5 6 saw shape
11 3 6 pulse width
12 7 2 modulation (bit 1) (vibrato | bend) (bit 0)
13 6 2 waveforms (wave | pulse)
14 10 6 dco2 freq
15 15 6 saw shape
16 13 6 pulse width
17 17 2 modulation
18 16 3 waveforms (noise | wave | pulse)
19 12 6 +/- detune
20 20 6 mix
21 8 2 dco1 keyboard (unused | portamento)
22 9 1 click
23 18 2 dco2 keyboard (kbd track | portamento)
24 19 1 click
25 2 2 sync mode
26 21 7 vcf freq
27 24 6 q
28 25 2 modulation (vibrato | bend)
29 26 2 keyboard (keyboard | portamento)
30 30 6 fm
31 27 6 vca1 level
32 44 6 portamento rate
33 46 2 mode (speed, time, exp1, exp2)
34 47 1 legato
35 80 6 lfo1 speed
36 86 2 trigger (none, single, multi, extern)
37 87 1 lag
38 82 3 waveform (tri, up, dn, sqr, rnd, noiz, s/h)
39 83 5 retrigger
40 88 5 sample source
41 84 6 amplitude
42-48 lfo2 params
49 57 3 env1 trigger (external | multi | reset)
50 50 6 delay
51 51 6 attack
52 52 6 decay
53 53 6 sustain
54 54 6 release
55 55 6 amplitude
56 59 2 lfo trigger (lfo trig | gated)
57 58 2 mode (free-run | DADR)
58-66 env2 params
67-75 env3 params
76 33 5 tracker source
77 34 6 pt1
78 35 6 pt2
79 36 6 pt3
80 37 6 pt4
81 38 6 pt5
82 40 6 ramp1 rate
83 41 2 mode (strig, mtrig, xtrig, xgate)
84-85 ramp2 params
86 1 7 +/- dco1 freq by lfo1
87 4 7 +/- p.w. by lfo2
88 11 7 +/- dco2 freq by lfo1
89 14 7 +/- p.w. by lfo2
90 22 7 +/- vcf freq by env1
91 23 7 +/- vcf freq by pressure
92 28 7 +/- vca1 by velocity
93 29 7 +/- vca2 by env2
94 56 7 +/- env1 ampl by velocity
95 66 7 +/- env2 ampl by velocity
96 76 7 +/- env3 ampl by velocity
97 85 7 +/- lfo1 ampl by ramp1
98 95 7 +/- lfo2 ampl by ramp2
99 45 7 +/- port rate by velocity
100 31 7 +/- vcf fm by env3
101 32 7 +/- vcf fm by pressure
102 81 7 +/- lfo1 rate by pressure
103 91 7 +/- lfo2 rate by keyboard
104 5 mod0 source
105 7 +/- amount
106 5 target
107-133 mod1 through mod9Message
Re: Oberheim Matrix 6
2010-03-17 by Royce
Attachments
- No local attachments were found for this message.