Stream Byter - SIEL DK70

stream byter - binary logic math - midi messages - midi designer pro - dk70

SIEL DK70 Request Patch

MIDI OUT - Request SysEx Patch Dump for SIEL DK70.
SND F0 21 00 xx F7 # xx = Patch Number

DK70 SysEx to CC conversion table

The first nibble of the SysEx data that contain the Patch data for the DK70 is always 0, so all CC-values above F get split into 2 seperate SysEx data bytes.

SysEx Byte M index Range Function Comment   CC dec CC hex Range Comment
Header: 1 00 F0 SysEx Start            
  2 01 21 SIEL ID            
  3 02 04 Patch Dump            
  4 03 00-63 Patch Nr - 0-39 [00-27] are internal patches
- 40-49 [28-31] are user patches
- 50-99 [32-63] is the ROM cartridge
         
  5 04 02 DK70 ID            
Data: 6 05 00-0F DCO Square 16"     53 35 0-F  
  7 06 00-0F DCO Square 8"     54 36 0-F  
  8 07 00-0F DCO Square 4"     55 37 0-F  
  9 08 00-0F DCO Square 2"     56 38 0-F  
  10 09 00-0F LFO 1 Frequency     46 2E 0-F  
  11 0A 00-0F LFO 2 Frequency     40 28 0-F  
  12 0B 00-0F DEG VCA-A Slope     15 0F 0-F  
  13 0C 00-0F DEG VCA-A Release     17 11 0-F  
  14 0D 00-0F DEG VCA-A Attack     12 0C 0-F  
  15 0E 00-0F DEG VCA-A Decay     13 0D 0-F  
  16 0F 00-0F DEG VCA-B Slope     24 18 0-F  
  17 10 00-0F DEG VCA-B Release     26 1A 0-F  
  18 11 00-0F DEG VCA-B Attack     21 15 0-F  
  19 12 00-0F DEG VCA-B Decay     22 16 0-F  
  20 13 00-0F DEG VCF Slope     36 24 0-F  
  21 14 00-0F DEG VCF Release     38 26 0-F  
  22 15 00-0F DEG VCF Attack     33 21 0-F  
  23 16 00-0F DEG VCF Decay     34 22 0-F  
  24 17 00-0F DEG VCA-A Sustain     16 10 0-F  
  25 18 00-0F DEG VCA-A Break Point     14 0E 0-F  
  26 19 00-0F DEG VCA-B Sustain     25 19 0-F  
  27 1A 00-0F DEG VCA-B Break Point     23 17 0-F  
  28 1B 00-0F DEG VCF Sustain     37 25 0-F  
  29 1C 00-0F DEG VCF Break Point     35 23 0-F  
  30 1D 00-0F Noise Level     31 1F 0-F  
  31 1E 00-0F VCF DEG Level     61 3D 0-F  
  32 1F 00-0F Detune Interval MSB only
total range: 00-3D (0-61 dec)
0="00", 60="0C", 61="0D"
  29 1D 0-$61  
  33 20 00-03 Detune Interval LSB only
0-15="00", 16-31="01", 32-47="02", 48-61="03"
Math for CC value: (LSB * 16) + MSB
 
  34 21 00-0F VCF Resonance     58 3A 0-F  
  35 22 00-0F Volume Level     63 3F 0-F  
  36 23 00-0F LFO 2 Initial Level     42 2A 0-F  
  37 24 00-0F LFO 1 Initial Level     48 30 0-F  
  38 25 00-0F LFO 2 Final Level     41 29 0-F  
  39 26 00-0F LFO 1 Final Level     47 2F 0-F  
  40 27 00-0F LFO 2 Delay Time     43 2B 0-F  
  41 28 00-0F LFO 1 Delay Time     49 31 0-F  
  42 29 00-0F VCF Cutoff MSB only   59 3B 0-63  
  43 2A 00-0F VCF Cutoff LSB only
Math conversion for CC value:
- for CC cutoff values 0,1,2...75 [4B],
  data = 0,2,4...150 [96] (steps of 2)
- for CC cutoff values 76,77,78...99 [63],
  data = 154,158,162...246 [F6] (steps of 4)
 
  44 2B 0000-x--
0000---x
Noise Destination
Chorus Mode
0=vca, 1=vcf
0=on, 1=off (!!)
  32
62
20
3E
1-2
0-1
1=VCA, 2=VCF (Noise > VCA > VCF)
0=Off, 1=On not registered
  45 2C 00-0F Detune Fine     30 1E 0-F  
  46 2D 0000xx--
0000--xx
DCO Waveform
VCF Keyboard Track
00=(0)off, 01=(1)square, 10=(2)saw
00=(0)off, 01=(1)half, 10=(2)full
  51
59
33
3B
0, 1, 2
0, 1, 2
0=Off, 1=Square, 2=Saw
0=Off, 1=Half, 2=Full
  47 2E 0000x---
0000-x--
0000--xx
LFO 2 Waveform
VCF DEG Trigger
DCO Saw Octave
0=(1)triangle, 1=(2)square
0=(1)single, 1=(2)multi
00=16', 01=8', 10=4'
  ** if pos 46: 10--
  ** (62 dco waves=(2)saw)
  45
60
52
2D
3C
34
1, 2
1, 2
1, 2, 3
1=Triangle, 2=Square
1=Single, 2=Multi
1=16', 2=8', 3=4'
  48 2F 0000x---
0000--x-
0000---x
DEG VCA DCO Mode
LFO 2 Delay Mode
LFO 1 Delay Mode
0=single, 1=double
0=manual, 1=auto
0=manual, 1=auto
  20
44
50
14
2C
32
1-2
1-2
1-2
1=Whole, 2=Double
1=Manual, 2=Auto
1=Manual, 2=Auto
  49 30 0000--x-
0000---x
DEG VCA-B Damper Pedal
DEG VCA-A Damper Peda
0=off, 1=on
0=off, 1=on
  28
19
1C
13
0-1
0-1
0=Off, 1=On
0=Off, 1=On
System: 50 31 FF SysEx End            

SIEL DK70 Send Patch to Control Surface

MIDI OUT - Send Patch xx from internal Library, loopback to MIDI IN (+F flag)
MD Variablelized, just in case we ever want to send sysex

SND F0 21 04 28 02 +F # SysEx Header, 4th byte is patch number
SND K$06 K$07 K$08 K$09 +F # DCO Waves
SND K$10 K$11 +F # LFO1 & 2 Frequency
SND K$12 K$13 K$14 K$15 +F # VCA-A E.G. slope/release/attack/decay
SND K$16 K$17 K$18 K$19 +F # VCA-B E.G. slope/release/attack/decay
SND K$20 K$21 K$22 K$23 +F # VCF E.G. slope/release/attack/decay
SND K$24 K$25 +F # VCA-A E.G. sustain/breakpoint
SND K$26 K$27 +F # VCA-B E.G. sustain/breakpoint
SND K$28 K$29 +F # VCF E.G. sustain/breakpoint
SND K$30 K$31 +F # Noise Lvl & VCF E.G. Level
SND K$32 K$33 +F # Detune interval (needs math)
SND K$34 K$35 +F # VCF Resonance & Volume Level
SND K$36 K$37 K$38 K$39 K$40 K$41 +F # LFO1 & 2 Initial/Final/Delay Level/Time
SND K$42 K$43 +F # VCF Cutoff (needs math)
SND K$44 +F # Noise & Chorus
SND K$45 +F # Detune Fine
SND K$46 +F # DCO Waves & VCF Kb Track
SND K$47 +F # LFO2 Waves & VCF Trigger & DCO Saw Octave
SND K$48 +F # DCO Mode & LFO 1 & 2 Delay Mode
SND K$49 +F # VCA-A & B Damper Pedal
SND F7
+F # End of SysEx

 

copyright: tinyloops.com - contact