diff --git a/src/mruby-zest/example/ZynAddGlobal.qml b/src/mruby-zest/example/ZynAddGlobal.qml index b238e974..caa98d36 100644 --- a/src/mruby-zest/example/ZynAddGlobal.qml +++ b/src/mruby-zest/example/ZynAddGlobal.qml @@ -53,13 +53,14 @@ Widget { function setTab(id) { - (0..2).each do |ch_id| + (0..3).each do |ch_id| children[ch_id].value = (ch_id == id) children[ch_id].damage_self end mapping = {0 => :amplitude, 1 => :frequency, - 2 => :filter} + 2 => :filter, + 3 => :generic} root.set_view_pos(:subsubview, mapping[id]) root.change_view #db.update_values @@ -68,12 +69,13 @@ Widget { TabButton { label: "amplitude"; whenClick: lambda {footer.setTab(0)}; highlight_pos: :top} TabButton { label: "frequency"; whenClick: lambda {footer.setTab(1)}; highlight_pos: :top} TabButton { label: "filter"; whenClick: lambda {footer.setTab(2)}; highlight_pos: :top} + TabButton { label: "generic"; whenClick: lambda {footer.setTab(3)}; highlight_pos: :top} } function set_view() { subsubview = root.get_view_pos(:subsubview) - types = [:amplitude, :frequency, :filter] + types = [:amplitude, :frequency, :filter, :generic] if(!types.include?(subsubview)) subsubview = :amplitude root.set_view_pos(:subsubview, subsubview) @@ -91,6 +93,8 @@ Widget { set_freq(self.extern) elsif(subsubview == :filter) set_filter(self.extern) + elsif(subsubview == :generic) + set_generic(self.extern) end if(vis == :lfo) @@ -109,7 +113,8 @@ Widget { { e_ = {:filter => "FilterLfo/", :amplitude => "AmpLfo/", - :frequency => "FreqLfo/"}[tab] + :frequency => "FreqLfo/", + :generic => "GenericLfo/"}[tab] return if e_.nil? row1.extern = ext + e_ row1.content = Qml::LfoVis @@ -120,7 +125,8 @@ Widget { { e_ = {:filter => "FilterEnvelope/", :amplitude => "AmpEnvelope/", - :frequency => "FreqEnvelope/"}[tab] + :frequency => "FreqEnvelope/", + :generic => "GenericEnvelope/"}[tab] return if e_.nil? row1.extern = ext + e_ row1.content = Qml::ZynEnvEdit @@ -185,6 +191,19 @@ Widget { amp_lfo.children[0].whenClick = lambda {row1.setDataVis(:lfo, :filter)} } + function set_generic(base) + { + footer.children[3].value = true + amp_env.extern = base + "GenericEnvelope/" + amp_lfo.extern = base + "GenericLfo/" + amp_env.content = Qml::ZynFilterEnv + amp_lfo.content = Qml::ZynLFO + amp_env.children[0].whenClick = lambda {row1.setDataVis(:env, :generic)} + amp_lfo.children[0].whenClick = lambda {row1.setDataVis(:lfo, :generic)} + amp_env.children[0].toggleable = base + "PGenEnvelopeEnabled" + amp_lfo.children[0].toggleable = base + "PGenLfoEnabled" + } + function set_vis_oscilloscope() { row1.content = Qml::ZynAddOscilloscope diff --git a/src/mruby-zest/example/ZynAutomationMidiChan.qml b/src/mruby-zest/example/ZynAutomationMidiChan.qml index 283abe58..b35be99b 100644 --- a/src/mruby-zest/example/ZynAutomationMidiChan.qml +++ b/src/mruby-zest/example/ZynAutomationMidiChan.qml @@ -1,28 +1,66 @@ -TextBox { +Widget { id: midi_chan onExtern: { ext = midi_chan.extern learn_ref = OSC::RemoteParam.new($remote, ext + "learning") midi_ref = OSC::RemoteParam.new($remote, ext + "midi-cc") + nrpn_ref = OSC::RemoteParam.new($remote, ext + "midi-nrpn") + internal_ref = OSC::RemoteParam.new($remote, ext + "internal") midi_ref.mode = true + nrpn_ref.mode = true + internal_ref.mode = true learn_ref.mode = true learn_ref.callback = lambda {|x| midi_chan.learning = x; update_text()} midi_ref.callback = lambda {|x| midi_chan.cc = x; update_text()} + nrpn_ref.callback = lambda {|x| midi_chan.nrpn = x; update_text()} + internal_ref.callback = lambda {|x| midi_chan.internal = x; update_text()} + midi_chan.valueRef = [learn_ref, midi_ref, nrpn_ref, internal_ref] + } + + //Workaround due to buggy nested properties + function valueRef=(value_ref) + { + @value_ref = value_ref + } - midi_chan.valueRef = [learn_ref, midi_ref] + function valueRef() + { + @value_ref } + function onSetup(old=nil) { + @cc = nil + @nrpn = nil + @internal = nil + @learning = nil + } + + function cc=(x) {@cc = x} + function nrpn=(x) {@nrpn = x} + function internal=(x) {@internal = x} + function learning=(x) {@learning = x} + function update_text() { @cc = nil if(@cc.nil? || @cc < 0) + @nrpn = nil if(@nrpn.nil? || @nrpn < 0) + @internal = nil if(@internal.nil? || @internal < 1) @learning = nil if(@learning.nil? || @learning < 0) - new_label = self.label; - if(@cc && !@learning) + new_label = text.label; + if(@internal && !@learning) + if(@internal==1) + new_label = "generic modulator ENV" + elsif(@internal==2) + new_label = "generic modulator LFO" + end + elsif(@cc && !@learning) new_label = "MIDI CC #{@cc}" + elsif(@nrpn && !@learning) + new_label = "MIDI NRPN #{@nrpn}" elsif(!@cc && @learning) new_label = "Learning Queue #{@learning}" elsif(@cc && @learning) @@ -31,18 +69,30 @@ TextBox { new_label = "Unbound" end + intcc.extern = extern + "internal" + midicc.extern = extern + "midi-cc" + midinrpn.extern = extern + "midi-nrpn" + if(new_label != self.label) - self.label = new_label + text.label = new_label damage_self end + } - function onSetup(old=nil) { - @cc = nil - @learning = nil + TextBox { + id: text } - function cc=(x) {@cc = x} - function learning=(x) {@learning = x} + Selector { + id: intcc + extern: midi_chan.extern + "internal" + } + NumEntry {id: midicc; extern: midi_chan.extern + "midi-cc"; label: "CC"} + NumEntry {id: midinrpn; extern: midi_chan.extern + "midi-nrpn"; label: "NRPN"} + + function layout(l, selfBox) { + Draw::Layout::hfill(l, selfBox, children, [0.7,0.1,0.1,0.1,0.1]) + } } diff --git a/src/mruby-zest/example/ZynLFO.qml b/src/mruby-zest/example/ZynLFO.qml index 8f7f7e8d..e3e88122 100644 --- a/src/mruby-zest/example/ZynLFO.qml +++ b/src/mruby-zest/example/ZynLFO.qml @@ -8,7 +8,7 @@ Group { function layout(l, selfBox) { Draw::Layout::hfill(l, selfBox, children, [0.72, 0.28]) } - + Col { ParModuleRow { id: top @@ -31,10 +31,11 @@ Group { Col { Selector {extern: box.extern+"PLFOtype"} ToggleButton { label: "sync"; extern: box.extern+"Pcontinous"} + ToggleButton { label: "midi"; extern: box.extern+"Psync"} TextBox {} NumEntry { id: numerator - extern: box.extern + "numerator"; + extern: box.extern + "numerator"; label: "Numerator" whenValue: lambda { freq.active = true if numerator.value == 0 diff --git a/src/osc-bridge/schema/test.json b/src/osc-bridge/schema/test.json index 31ff7da2..28d0b72f 100644 --- a/src/osc-bridge/schema/test.json +++ b/src/osc-bridge/schema/test.json @@ -634,7 +634,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -664,7 +664,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -800,7 +800,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -830,7 +830,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -966,7 +966,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -996,7 +996,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -2308,7 +2308,7 @@ }, { "id" : 1, - "value" : "Rectanglar" + "value" : "Rectangular" }, { "id" : 2, @@ -2397,7 +2397,7 @@ "path" : "/part[0,15]/kit[0,15]/padpars/Php.amp.type", "shortname": "mult", "name" : "Php.amp.type", - "tooltip" : "Type of amplitude multipler", + "tooltip" : "Type of amplitude multiplier", "type" : "i", "default" : "Off" , @@ -4647,7 +4647,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -4677,7 +4677,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -4813,7 +4813,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -4843,7 +4843,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -4979,7 +4979,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -5009,7 +5009,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -5145,7 +5145,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -5175,7 +5175,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -5311,7 +5311,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -5341,7 +5341,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -6912,6 +6912,188 @@ "range" : [0,127], "default" : "4" + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/freq", + "shortname": "freq", + "name" : "freq", + "tooltip" : "frequency of LFO\nlfo frequency = Pfreq * stretch\ntrue frequency is [0,85.25] Hz", + "units" : "HZ", + "scale" : "logarithmic", + "type" : "f", + "range" : [0.0775679,85.25] + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/Pintensity", + "shortname": "depth", + "name" : "Pintensity", + "tooltip" : "Intensity of LFO", + "type" : "i", + "range" : [0,127], + "default" : "0" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/Pstartphase", + "shortname": "start", + "name" : "Pstartphase", + "tooltip" : "Starting Phase", + "type" : "i", + "range" : [0,127], + "default" : "64" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/Pcutoff", + "shortname": "lp", + "name" : "Pcutoff", + "tooltip" : "RND/SQR lp-filter freq", + "type" : "i", + "range" : [0,127], + "default" : "127" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/PLFOtype", + "shortname": "type", + "name" : "PLFOtype", + "tooltip" : "Shape of LFO", + "scale" : "linear", + "type" : "i", + "range" : [0,127], + "default" : "sine" +, + "options" : [ + { + "id" : 0, + "value" : "sine" + }, + { + "id" : 1, + "value" : "triangle" + }, + { + "id" : 2, + "value" : "square" + }, + { + "id" : 3, + "value" : "up" + }, + { + "id" : 4, + "value" : "down" + }, + { + "id" : 5, + "value" : "exp1" + }, + { + "id" : 6, + "value" : "exp2" + }, + { + "id" : 7, + "value" : "random" + } + ] + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/Prandomness", + "shortname": "a.r.", + "name" : "Prandomness", + "tooltip" : "Amplitude Randomness (calculated uniformly at each cycle)", + "type" : "i", + "range" : [0,127], + "default" : "0" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/Pfreqrand", + "shortname": "f.r.", + "name" : "Pfreqrand", + "tooltip" : "Frequency Randomness (calculated uniformly at each cycle)", + "type" : "i", + "range" : [0,127], + "default" : "0" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/delay", + "shortname": "delay", + "name" : "delay", + "tooltip" : "Delay before LFO start\n0..4 second delay", + "units" : "S", + "scale" : "linear", + "type" : "f", + "range" : [0.0,4.0], + "default" : "0" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/fadein", + "shortname": "f.in", + "name" : "fadein", + "tooltip" : "Time to ramp up LFO amplitude\n 0..10 seconds", + "units" : "S", + "scale" : "linear", + "type" : "f", + "range" : [0.0,10.0f], + "default" : "0.0f" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/fadeout", + "shortname": "f.out", + "name" : "fadeout", + "tooltip" : "Time to ramp down LFO amplitude on key release\n 0..10 seconds, 10=off (default)", + "units" : "S", + "scale" : "linear", + "type" : "f", + "range" : [0.001,10.0f], + "default" : "10.0f" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/Pcontinous", + "shortname": "c", + "name" : "Pcontinous", + "tooltip" : "Enable for global operation", + "type" : "t", + "default" : "false" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/Pstretch", + "shortname": "str", + "name" : "Pstretch", + "tooltip" : "Note frequency stretch", + "type" : "i", + "range" : [0,127], + "default" : "64" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/numerator", + "shortname": "num", + "name" : "numerator", + "tooltip" : "Numerator of ratio to bpm", + "scale" : "linear", + "type" : "i", + "range" : [0,127], + "default" : "0" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericLfo/denominator", + "shortname": "dem", + "name" : "denominator", + "tooltip" : "Denominator of ratio to bpm", + "scale" : "linear", + "type" : "i", + "range" : [0,127], + "default" : "4" + }, { "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/FreqEnvelope/Pfreemode", @@ -6995,7 +7177,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -7025,7 +7207,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -7161,7 +7343,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -7191,7 +7373,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -7327,7 +7509,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -7357,7 +7539,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -7410,6 +7592,172 @@ "range" : [0,127], "default" : "64" + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/Pfreemode", + "name" : "Pfreemode", + "tooltip" : "Complex Envelope Definitions", + "type" : "t", + "default" : "false" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/Penvsustain", + "name" : "Penvsustain", + "tooltip" : "Location of the sustain point", + "type" : "i", + "range" : [0,127], + "default" : "2" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/Penvdt[0,39]", + "name" : "Penvdt#40", + "tooltip" : "Envelope Delay Times", + "type" : "i" + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/Penvval[0,39]", + "name" : "Penvval#40", + "tooltip" : "Envelope Values", + "type" : "i" + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/Penvstretch", + "shortname": "stretch", + "name" : "Penvstretch", + "tooltip" : "Stretch with respect to frequency", + "type" : "i", + "range" : [0,127], + "default" : "64" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/Pforcedrelease", + "shortname": "frcr", + "name" : "Pforcedrelease", + "tooltip" : "Force Envelope to fully evaluate", + "type" : "t", + "default" : "false" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/Plinearenvelope", + "shortname": "lin/log", + "name" : "Plinearenvelope", + "tooltip" : "Linear or Logarithmic Envelopes", + "type" : "t", + "default" : "false" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/Prepeating", + "shortname": "repeat", + "name" : "Prepeating", + "tooltip" : "Repeat the Envelope", + "type" : "t", + "default" : "false" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/PA_dt", + "shortname": "a.dt", + "name" : "PA_dt", + "tooltip" : "Attack Time", + "scale" : "linear", + "type" : "i", + "range" : [0,127] + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/A_dt", + "shortname": "a.dt", + "name" : "A_dt", + "tooltip" : "Attack Time", + "scale" : "logarithmic", + "type" : "f", + "range" : [0.0001f,41.0f], + "default" : "0.0f" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/PA_val", + "shortname": "a.val", + "name" : "PA_val", + "tooltip" : "Attack Value", + "type" : "i", + "range" : [0,127], + "default" : "64" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/PD_dt", + "shortname": "d.dt", + "name" : "PD_dt", + "tooltip" : "Decay Time", + "scale" : "linear", + "type" : "i", + "range" : [0,127] + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/D_dt", + "shortname": "d.dt", + "name" : "D_dt", + "tooltip" : "Decay Time", + "scale" : "logarithmic", + "type" : "f", + "range" : [0.0001f,41.0f], + "default" : "0.009f" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/PD_val", + "shortname": "d.val", + "name" : "PD_val", + "tooltip" : "Decay Value", + "type" : "i", + "range" : [0,127], + "default" : "64" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/PS_val", + "shortname": "s.val", + "name" : "PS_val", + "tooltip" : "Sustain Value", + "type" : "i", + "range" : [0,127], + "default" : "64" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/PR_dt", + "shortname": "r.dt", + "name" : "PR_dt", + "tooltip" : "Release Time", + "scale" : "linear", + "type" : "i", + "range" : [0,127] + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/R_dt", + "shortname": "r.dt", + "name" : "R_dt", + "tooltip" : "Release Time", + "scale" : "logarithmic", + "type" : "f", + "range" : [0.009f,41.0f], + "default" : "0.499f" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GenericEnvelope/PR_val", + "shortname": "r.val", + "name" : "PR_val", + "tooltip" : "Release Value", + "type" : "i", + "range" : [0,127], + "default" : "64" + }, { "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/GlobalFilter/Pcategory", @@ -7728,6 +8076,24 @@ "type" : "t", "default" : "true" + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/PGenEnvelopeEnabled", + "shortname": "Env enable", + "name" : "PGenEnvelopeEnabled", + "tooltip" : "Generic Envelope Enable", + "type" : "t", + "default" : "false" + + }, + { + "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/PGenLfoEnabled", + "shortname": "Lfo enable", + "name" : "PGenLfoEnabled", + "tooltip" : "Generic LFO Enable", + "type" : "t", + "default" : "false" + }, { "path" : "/part[0,15]/kit[0,15]/adpars/GlobalPar/PDetune", @@ -8332,7 +8698,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -8362,7 +8728,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -8498,7 +8864,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -8528,7 +8894,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -8664,7 +9030,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -8694,7 +9060,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -8830,7 +9196,7 @@ "tooltip" : "Attack Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.0f" }, @@ -8860,7 +9226,7 @@ "tooltip" : "Decay Time", "scale" : "logarithmic", "type" : "f", - "range" : [0.0f,41.0f], + "range" : [0.0001f,41.0f], "default" : "0.009f" }, @@ -11174,7 +11540,7 @@ "name" : "portamento.automode", "tooltip" : "Portamento Auto mode", "type" : "t", - "default" : "false" + "default" : "true" }, { @@ -11578,7 +11944,7 @@ { "path" : "/part[0,15]/polyType", "name" : "polyType", - "tooltip" : "Synthesis polyphony type\nPolyphonic - Each note is played independently\nMonophonic - A single note is played at a time with envelopes resetting between notes\nLegato - A single note is played at a time without envelopes resetting between notes\nLatch - Notes are released when a new one is hit after key release\n", + "tooltip" : "Synthesis polyphony type\n", "type" : "i", "options" : [ { @@ -15227,6 +15593,14 @@ "type" : "t", "default" : "false" + }, + { + "path" : "/ctl/portamento.automode", + "name" : "portamento.automode", + "tooltip" : "Portamento Auto mode", + "type" : "t", + "default" : "true" + }, { "path" : "/ctl/portamento.time", @@ -15516,6 +15890,28 @@ "default" : "-1" }, + { + "path" : "/automate/slot[0,15]/internal", + "name" : "internal", + "tooltip" : "Access assigned internal mod type \n 0=NONE 1=ENV 2=LFO", + "type" : "i", + "default" : "NONE" +, + "options" : [ + { + "id" : 0, + "value" : "NONE" + }, + { + "id" : 1, + "value" : "ENV" + }, + { + "id" : 2, + "value" : "LFO" + } + ] + }, { "path" : "/automate/slot[0,15]/active", "name" : "active", @@ -15661,4 +16057,4 @@ ], "actions" : [ ] -} +} \ No newline at end of file