{*********************************************** Kontakt 4 Factory Library Urban Beats Loops View Author: Native Instruments Written by: Adam Hanley, Nicki Marinic & Josef Natterer Modified: September 10, 2009 *************************************************} on init message("") set_script_title("Loops (C3-B3)") set_ui_height_px(318) make_perfview _set_skin_offset(411) declare const $MAX_VOLUME := 630957 {630957 -> 0dB; 500000 -> -6dB} declare const $sat_slot := 0 declare const $eq_slot := 1 declare const $FONT_ID := 13 declare const $FONT_ID2 := 12 declare const $CREATE_AUTOMATION_ID := 0 declare $new_events declare %wurzel_zweidrittel[128] := (... 0,1000,1587,2080,2520,2924,3302,3659,4000,4327,... 4642,4946,5241,5529,5809,6082,6350,6611,6868,7120,... 7368,7612,7851,8088,8320,8549,8776,9000,9221,9439,... 9655,9868,10079,10288,10495,10700,10903,11103,11303,11500,... 11696,11890,12083,12274,12463,12651,12838,13024,13208,13391,... 13572,13752,13932,14110,14287,14462,14637,14811,14984,15155,... 15326,15496,15664,15833,16000,16166,16332,16496,16660,16823,... 16984,17146,17307,17467,17626,17784,17942,18099,18256,18411,... 18566,18720,18875,19028,19180,19332,19483,19634,19784,19934,... 20083,20231,20379,20527,20674,20820,20966,21111,21256,21400,... 21544,21688,21831,21973,22115,22256,22397,22538,22679,22818,... 22958,23097,23235,23373,23511,23648,23785,23921,24058,24193,... 24329,24463,24598,24733,24866,25000,25133,25266) declare $cur_volume := ($MAX_VOLUME*1000)/21544 declare $count declare !note_class[12] !note_class[0] := "C" !note_class[1] := "Db" !note_class[2] := "D" !note_class[3] := "Eb" !note_class[4] := "E" !note_class[5] := "F" !note_class[6] := "Gb" !note_class[7] := "G" !note_class[8] := "Ab" !note_class[9] := "A" !note_class[10] := "Bb" !note_class[11] := "B" declare !note_names [128] $count := 0 while ($count < 128) !note_names[$count] := !note_class[$count mod 12] & (($count/12)-2) inc ($count) end while {Track Names} declare ui_label $name_track1 (1,1) declare ui_label $name_track2 (1,1) declare ui_label $name_track3 (1,1) declare ui_label $name_track4 (1,1) declare ui_label $name_track5 (1,1) declare ui_label $name_track6 (1,1) declare ui_label $name_track7 (1,1) declare ui_label $name_track8 (1,1) declare %tracklabel_id[8] %tracklabel_id[0] := get_ui_id($name_track1) %tracklabel_id[1] := get_ui_id($name_track2) %tracklabel_id[2] := get_ui_id($name_track3) %tracklabel_id[3] := get_ui_id($name_track4) %tracklabel_id[4] := get_ui_id($name_track5) %tracklabel_id[5] := get_ui_id($name_track6) %tracklabel_id[6] := get_ui_id($name_track7) %tracklabel_id[7] := get_ui_id($name_track8) $count := 0 while ($count < 8) set_control_par_str(%tracklabel_id[$count],$CONTROL_PAR_TEXT,group_name($count+24)) set_control_par(%tracklabel_id[$count],$CONTROL_PAR_WIDTH,58) set_control_par(%tracklabel_id[$count],$CONTROL_PAR_TEXT_ALIGNMENT,1) set_control_par(%tracklabel_id[$count],$CONTROL_PAR_FONT_TYPE,$FONT_ID2) set_control_par(%tracklabel_id[$count],$CONTROL_PAR_POS_X,113+($count*59)) set_control_par(%tracklabel_id[$count],$CONTROL_PAR_POS_Y,38) set_control_par(%tracklabel_id[$count],$CONTROL_PAR_HIDE,$HIDE_PART_BG) inc($count) end while declare ui_label $preset_txt (1,1) move_control_px($preset_txt,36,38) set_text($preset_txt,"PRESET") set_control_par(get_ui_id($preset_txt),$CONTROL_PAR_FONT_TYPE,$FONT_ID2) set_control_par(get_ui_id($preset_txt),$CONTROL_PAR_TEXT_ALIGNMENT,1) set_control_par(get_ui_id($preset_txt),$CONTROL_PAR_HIDE,$HIDE_PART_BG) {Volume Preset Knob} declare ui_slider $preset (60,71) declare ui_label $lb_preset (1,1) set_control_help($preset,"Preset: Select a volume mixer preset setting. Presets are automatically overwritten when you move a volume slider.") set_control_par_str(get_ui_id($preset),$CONTROL_PAR_PICTURE,"pv_urban_knob_orange") set_control_par(get_ui_id($preset),$CONTROL_PAR_MOUSE_BEHAVIOUR,-500) move_control_px($preset,61,71) $preset := 60 set_control_par_str(get_ui_id($preset),$CONTROL_PAR_AUTOMATION_NAME,"Preset") if ($CREATE_AUTOMATION_ID = 1) set_control_par(get_ui_id($preset),$CONTROL_PAR_AUTOMATION_ID,29) end if set_control_par_str(get_ui_id($preset),$CONTROL_PAR_LABEL,!note_names[$preset]) set_control_par(get_ui_id($lb_preset),$CONTROL_PAR_HIDE,$HIDE_PART_BG) set_control_par(get_ui_id($lb_preset),$CONTROL_PAR_FONT_TYPE,$FONT_ID) set_control_par(get_ui_id($lb_preset),$CONTROL_PAR_TEXT_ALIGNMENT,1) set_text($lb_preset,!note_names[$preset]) move_control_px($lb_preset,get_control_par(get_ui_id($preset),$CONTROL_PAR_POS_X)-26,... get_control_par(get_ui_id($preset),$CONTROL_PAR_POS_Y)-15) declare %volume_store[8*12] := (... { 0} 100, 100, 100, 100, 100, 100, 100, 100, ... { 1} 100, 100, 100, 100, 100, 100, 100, 100, ... { 2} 100, 100, 100, 100, 100, 100, 100, 100, ... { 3} 100, 100, 100, 100, 100, 100, 100, 100, ... { 4} 100, 100, 100, 100, 100, 100, 100, 100, ... { 5} 100, 100, 100, 100, 100, 100, 100, 100, ... { 6} 100, 100, 100, 100, 100, 100, 100, 100, ... { 7} 100, 100, 100, 100, 100, 100, 100, 100, ... { 8} 100, 100, 100, 100, 100, 100, 100, 100, ... { 9} 100, 100, 100, 100, 100, 100, 100, 100, ... {10} 100, 100, 100, 100, 100, 100, 100, 100, ... {11} 100, 100, 100, 100, 100, 100, 100, 100) make_persistent (%volume_store) {Mixer Levels} declare ui_slider $volume_track1 (0,100) declare ui_slider $volume_track2 (0,100) declare ui_slider $volume_track3 (0,100) declare ui_slider $volume_track4 (0,100) declare ui_slider $volume_track5 (0,100) declare ui_slider $volume_track6 (0,100) declare ui_slider $volume_track7 (0,100) declare ui_slider $volume_track8 (0,100) declare %trackvol_id[8] %trackvol_id[0] := get_ui_id($volume_track1) %trackvol_id[1] := get_ui_id($volume_track2) %trackvol_id[2] := get_ui_id($volume_track3) %trackvol_id[3] := get_ui_id($volume_track4) %trackvol_id[4] := get_ui_id($volume_track5) %trackvol_id[5] := get_ui_id($volume_track6) %trackvol_id[6] := get_ui_id($volume_track7) %trackvol_id[7] := get_ui_id($volume_track8) _read_persistent_var (%volume_store) $count := 0 while ($count<8) set_control_par_str(%trackvol_id[$count],$CONTROL_PAR_PICTURE,"pv_urban_loops_fader") set_control_par_str(%trackvol_id[$count],$CONTROL_PAR_TEXT,"") set_control_par(%trackvol_id[$count],$CONTROL_PAR_POS_X,128 + ($count*59)) set_control_par(%trackvol_id[$count],$CONTROL_PAR_POS_Y,54) set_control_par(%trackvol_id[$count],$CONTROL_PAR_MOUSE_BEHAVIOUR,-1000) set_control_par(%trackvol_id[$count],$CONTROL_PAR_DEFAULT_VALUE, 100) set_control_par(%trackvol_id[$count],$CONTROL_PAR_VALUE,%volume_store[($preset-60)+$count]) set_control_par_str(%trackvol_id[$count],$CONTROL_PAR_AUTOMATION_NAME,"Vol " & $count+1) set_control_par_str(%trackvol_id[$count],$CONTROL_PAR_LABEL,%volume_store[($preset-60)+$count] & " %") if ($CREATE_AUTOMATION_ID = 1) set_control_par(%trackvol_id[$count],$CONTROL_PAR_AUTOMATION_ID,$count+30) end if inc($count) end while {Solo Buttons} declare ui_switch $solo_track1 declare ui_switch $solo_track2 declare ui_switch $solo_track3 declare ui_switch $solo_track4 declare ui_switch $solo_track5 declare ui_switch $solo_track6 declare ui_switch $solo_track7 declare ui_switch $solo_track8 declare %solo_id[8] %solo_id[0] := get_ui_id($solo_track1) %solo_id[1] := get_ui_id($solo_track2) %solo_id[2] := get_ui_id($solo_track3) %solo_id[3] := get_ui_id($solo_track4) %solo_id[4] := get_ui_id($solo_track5) %solo_id[5] := get_ui_id($solo_track6) %solo_id[6] := get_ui_id($solo_track7) %solo_id[7] := get_ui_id($solo_track8) declare %solo_state[8] := (1,1,1,1,1,1,1,1) make_persistent(%solo_state) _read_persistent_var(%solo_state) $count := 0 while ($count < 8) set_control_par_str(%solo_id[$count],$CONTROL_PAR_PICTURE,"pv_urban_loops_solo_btn") set_control_par_str(%solo_id[$count],$CONTROL_PAR_TEXT,"") set_control_par(%solo_id[$count],$CONTROL_PAR_POS_X,121+($count*59)) set_control_par(%solo_id[$count],$CONTROL_PAR_POS_Y,159) set_control_par(%solo_id[$count],$CONTROL_PAR_HEIGHT,20) set_control_par(%solo_id[$count],$CONTROL_PAR_WIDTH,20) set_control_par_str(%solo_id[$count],$CONTROL_PAR_AUTOMATION_NAME,"Solo " & $count+1) if ($CREATE_AUTOMATION_ID = 1) set_control_par(%solo_id[$count],$CONTROL_PAR_AUTOMATION_ID,$count+38) end if inc($count) end while make_persistent ($solo_track1) make_persistent ($solo_track2) make_persistent ($solo_track3) make_persistent ($solo_track4) make_persistent ($solo_track5) make_persistent ($solo_track6) make_persistent ($solo_track7) make_persistent ($solo_track8) {Mute Buttons} declare ui_switch $mute_track1 declare ui_switch $mute_track2 declare ui_switch $mute_track3 declare ui_switch $mute_track4 declare ui_switch $mute_track5 declare ui_switch $mute_track6 declare ui_switch $mute_track7 declare ui_switch $mute_track8 declare %mute_id[8] %mute_id[0] := get_ui_id($mute_track1) %mute_id[1] := get_ui_id($mute_track2) %mute_id[2] := get_ui_id($mute_track3) %mute_id[3] := get_ui_id($mute_track4) %mute_id[4] := get_ui_id($mute_track5) %mute_id[5] := get_ui_id($mute_track6) %mute_id[6] := get_ui_id($mute_track7) %mute_id[7] := get_ui_id($mute_track8) declare %mute_state[8] := (1,1,1,1,1,1,1,1) make_persistent(%mute_state) _read_persistent_var(%mute_state) $count := 0 while ($count < 8) set_control_par_str(%mute_id[$count],$CONTROL_PAR_PICTURE,"pv_urban_loops_mute_btn") set_control_par_str(%mute_id[$count],$CONTROL_PAR_TEXT,"") set_control_par(%mute_id[$count],$CONTROL_PAR_POS_X,145+($count*59)) set_control_par(%mute_id[$count],$CONTROL_PAR_POS_Y,159) set_control_par(%mute_id[$count],$CONTROL_PAR_HEIGHT,20) set_control_par(%mute_id[$count],$CONTROL_PAR_WIDTH,20) set_control_par(%mute_id[$count],$CONTROL_PAR_VALUE,(%mute_state[$count]+1) mod 2) set_control_par_str(%mute_id[$count],$CONTROL_PAR_AUTOMATION_NAME,"Mute " & $count+1) if ($CREATE_AUTOMATION_ID = 1) set_control_par(%mute_id[$count],$CONTROL_PAR_AUTOMATION_ID,$count+46) end if inc($count) end while {Set track volumes} $count := 0 while ($count < 8) _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),... $count+24,-1,-1) inc($count) end while {Declare legato control variables} declare $id declare $start_id declare %track_id[12] declare %pressed_id[12] declare $max declare $max_nr declare $last_id {Sound Knobs} declare ui_slider $sound_track1 (0,100) declare ui_slider $sound_track2 (0,100) declare ui_slider $sound_track3 (0,100) declare ui_slider $sound_track4 (0,100) declare ui_slider $sound_track5 (0,100) declare ui_slider $sound_track6 (0,100) declare ui_slider $sound_track7 (0,100) declare ui_slider $sound_track8 (0,100) declare %sound_id[8] %sound_id[0] := get_ui_id($sound_track1) %sound_id[1] := get_ui_id($sound_track2) %sound_id[2] := get_ui_id($sound_track3) %sound_id[3] := get_ui_id($sound_track4) %sound_id[4] := get_ui_id($sound_track5) %sound_id[5] := get_ui_id($sound_track6) %sound_id[6] := get_ui_id($sound_track7) %sound_id[7] := get_ui_id($sound_track8) $count := 0 while ($count<8) set_control_par_str(%sound_id[$count],$CONTROL_PAR_PICTURE,"pv_urban_knob_blue") set_control_par_str(%sound_id[$count],$CONTROL_PAR_TEXT,"") set_control_par(%sound_id[$count],$CONTROL_PAR_POS_X,125+($count*59)) set_control_par(%sound_id[$count],$CONTROL_PAR_POS_Y,199) set_control_par(%sound_id[$count],$CONTROL_PAR_MOUSE_BEHAVIOUR,-400) set_control_par_str(%sound_id[$count],$CONTROL_PAR_AUTOMATION_NAME,"Snd " & $count+1) if ($CREATE_AUTOMATION_ID = 1) set_control_par(%sound_id[$count],$CONTROL_PAR_AUTOMATION_ID,$count+54) end if inc($count) end while make_persistent ($sound_track1) make_persistent ($sound_track2) make_persistent ($sound_track3) make_persistent ($sound_track4) make_persistent ($sound_track5) make_persistent ($sound_track6) make_persistent ($sound_track7) make_persistent ($sound_track8) declare %savearr[10*10] := (... {0 } 500000,500000,500000, 500000,500000,500000, 500000, 500000,500000,... {1 } 365637, 62500,700000, 620113, 62500,500000, 1000000,1000000, 0,... {2 } 83984,326172,200195, 405273,128906,589844, 1000000,1000000,181641,... {3 } 245117,416016,266602, 632813,207031,625977, 862305, 173828,661133,... {4 } 515625, 0,704102, 447266, 0,169922, 706055, 0,714844,... {5 } 870117,586914,715820, 333008,360352,272461, 856445, 0,192383,... {6 } 648438,586914,757813, 266602,360352,165039, 670898, 0,132813,... {7 } 376953, 0, 39062, 555664, 0,578125, 796875, 144531,623047,... {8 } 172852,660156, 0, 699219, 6836,692383, 407227, 0,778320,... {9 } 233398,219727,583984, 533203,250000,355469, 633789, 639648,601563,... {10 } 137695,357422,362305, 491211,250000,571289, 832031, 417969,463867) declare %engine_par[9] := (... $ENGINE_PAR_FREQ1,$ENGINE_PAR_BW1,$ENGINE_PAR_GAIN1,... $ENGINE_PAR_FREQ2,$ENGINE_PAR_BW2,$ENGINE_PAR_GAIN2,... $ENGINE_PAR_FREQ3,$ENGINE_PAR_BW3,$ENGINE_PAR_GAIN3) declare $helper declare $a declare $knob declare $index_1 declare $index_2 declare %sound_pos[128] make_persistent(%sound_pos) read_persistent_var ($sound_track1) read_persistent_var ($sound_track2) read_persistent_var ($sound_track3) read_persistent_var ($sound_track4) read_persistent_var ($sound_track5) read_persistent_var ($sound_track6) read_persistent_var ($sound_track7) read_persistent_var ($sound_track8) set_control_par_str(get_ui_id($sound_track1),$CONTROL_PAR_LABEL,$sound_track1 & " %") set_control_par_str(get_ui_id($sound_track2),$CONTROL_PAR_LABEL,$sound_track2 & " %") set_control_par_str(get_ui_id($sound_track3),$CONTROL_PAR_LABEL,$sound_track3 & " %") set_control_par_str(get_ui_id($sound_track4),$CONTROL_PAR_LABEL,$sound_track4 & " %") set_control_par_str(get_ui_id($sound_track5),$CONTROL_PAR_LABEL,$sound_track5 & " %") set_control_par_str(get_ui_id($sound_track6),$CONTROL_PAR_LABEL,$sound_track6 & " %") set_control_par_str(get_ui_id($sound_track7),$CONTROL_PAR_LABEL,$sound_track7 & " %") set_control_par_str(get_ui_id($sound_track8),$CONTROL_PAR_LABEL,$sound_track8 & " %") {Saturation Controls} declare ui_slider $sat_track1 (500000,1000000) declare ui_slider $sat_track2 (500000,1000000) declare ui_slider $sat_track3 (500000,1000000) declare ui_slider $sat_track4 (500000,1000000) declare ui_slider $sat_track5 (500000,1000000) declare ui_slider $sat_track6 (500000,1000000) declare ui_slider $sat_track7 (500000,1000000) declare ui_slider $sat_track8 (500000,1000000) declare %saturation_id[8] %saturation_id[0] := get_ui_id($sat_track1) %saturation_id[1] := get_ui_id($sat_track2) %saturation_id[2] := get_ui_id($sat_track3) %saturation_id[3] := get_ui_id($sat_track4) %saturation_id[4] := get_ui_id($sat_track5) %saturation_id[5] := get_ui_id($sat_track6) %saturation_id[6] := get_ui_id($sat_track7) %saturation_id[7] := get_ui_id($sat_track8) $count := 0 while ($count<8) set_control_par_str(%saturation_id[$count],$CONTROL_PAR_PICTURE,"pv_urban_knob_blue") set_control_par_str(%saturation_id[$count],$CONTROL_PAR_TEXT,"") set_control_par(%saturation_id[$count],$CONTROL_PAR_POS_X,125+($count*59)) set_control_par(%saturation_id[$count],$CONTROL_PAR_POS_Y,256) set_control_par(%saturation_id[$count],$CONTROL_PAR_MOUSE_BEHAVIOUR,-400) set_control_par(%saturation_id[$count],$CONTROL_PAR_VALUE,_get_engine_par... ($ENGINE_PAR_SHAPE,$count+24,$sat_slot,-1)) set_control_par_str(%saturation_id[$count],$CONTROL_PAR_AUTOMATION_NAME,"Sat " & $count+1) set_control_par_str(%saturation_id[$count],$CONTROL_PAR_LABEL,get_engine_par_disp... ($ENGINE_PAR_SHAPE,$count+24,$sat_slot,-1) & " %") if ($CREATE_AUTOMATION_ID = 1) set_control_par(%saturation_id[$count],$CONTROL_PAR_AUTOMATION_ID,$count+62) end if inc($count) end while {Sends} declare ui_slider $rev_send_track1 (0,1000000) declare ui_slider $rev_send_track2 (0,1000000) declare ui_slider $rev_send_track3 (0,1000000) declare ui_slider $rev_send_track4 (0,1000000) declare ui_slider $rev_send_track5 (0,1000000) declare ui_slider $rev_send_track6 (0,1000000) declare ui_slider $rev_send_track7 (0,1000000) declare ui_slider $rev_send_track8 (0,1000000) declare ui_slider $delay_send_track1 (0,1000000) declare ui_slider $delay_send_track2 (0,1000000) declare ui_slider $delay_send_track3 (0,1000000) declare ui_slider $delay_send_track4 (0,1000000) declare ui_slider $delay_send_track5 (0,1000000) declare ui_slider $delay_send_track6 (0,1000000) declare ui_slider $delay_send_track7 (0,1000000) declare ui_slider $delay_send_track8 (0,1000000) declare %send_id[16] %send_id[0] := get_ui_id($rev_send_track1) %send_id[1] := get_ui_id($rev_send_track2) %send_id[2] := get_ui_id($rev_send_track3) %send_id[3] := get_ui_id($rev_send_track4) %send_id[4] := get_ui_id($rev_send_track5) %send_id[5] := get_ui_id($rev_send_track6) %send_id[6] := get_ui_id($rev_send_track7) %send_id[7] := get_ui_id($rev_send_track8) %send_id[8] := get_ui_id($delay_send_track1) %send_id[9] := get_ui_id($delay_send_track2) %send_id[10] := get_ui_id($delay_send_track3) %send_id[11] := get_ui_id($delay_send_track4) %send_id[12] := get_ui_id($delay_send_track5) %send_id[13] := get_ui_id($delay_send_track6) %send_id[14] := get_ui_id($delay_send_track7) %send_id[15] := get_ui_id($delay_send_track8) $count := 0 while ($count < 16) set_control_par_str(%send_id[$count],$CONTROL_PAR_PICTURE,"pv_urban_knob_light_blue") set_control_par_str(%send_id[$count],$CONTROL_PAR_TEXT,"") if ($count < 8) set_control_par(%send_id[$count],$CONTROL_PAR_POS_Y,199) set_control_par(%send_id[$count],$CONTROL_PAR_POS_X,125+($count*59)) set_control_par(%send_id[$count],$CONTROL_PAR_VALUE,_get_engine_par($ENGINE_PAR_SENDLEVEL_0,... $count+24,7,-1)) set_control_par_str(%send_id[$count],$CONTROL_PAR_AUTOMATION_NAME,"Rev Sd " & $count+1) else set_control_par(%send_id[$count],$CONTROL_PAR_POS_Y,256) set_control_par(%send_id[$count],$CONTROL_PAR_POS_X,125+(($count-8)*59)) set_control_par(%send_id[$count],$CONTROL_PAR_VALUE,_get_engine_par($ENGINE_PAR_SENDLEVEL_1,... $count-8+24,7,-1)) set_control_par_str(%send_id[$count],$CONTROL_PAR_AUTOMATION_NAME,"Del Sd " & $count+1-8) end if set_control_par(%send_id[$count],$CONTROL_PAR_HIDE,$HIDE_WHOLE_CONTROL) set_control_par(%send_id[$count],$CONTROL_PAR_MOUSE_BEHAVIOUR,-400) inc($count) end while {Insert/Send Display Buttons} declare ui_button $insertsend_disp set_text ($insertsend_disp,"") set_control_help ($insertsend_disp, "Insert/Send Display: Changes the view of the mix control to display either insert or send effects. Inserts include a Sound knob (SND) and Saturation knob (SAT). Send effects include a Reverb send (REV) and Delay send (DEL).") move_control_px ($insertsend_disp,53,260) set_control_par (get_ui_id($insertsend_disp),$CONTROL_PAR_HEIGHT,35) set_control_par (get_ui_id($insertsend_disp),$CONTROL_PAR_WIDTH,55) set_control_par_str(get_ui_id($insertsend_disp),$CONTROL_PAR_PICTURE,"pv_urban_loops_ins-send_btn") $insertsend_disp := 0 {Track FX Labels} declare ui_label $lb_fx_row1_track1 (1,1) declare ui_label $lb_fx_row1_track2 (1,1) declare ui_label $lb_fx_row1_track3 (1,1) declare ui_label $lb_fx_row1_track4 (1,1) declare ui_label $lb_fx_row1_track5 (1,1) declare ui_label $lb_fx_row1_track6 (1,1) declare ui_label $lb_fx_row1_track7 (1,1) declare ui_label $lb_fx_row1_track8 (1,1) declare ui_label $lb_fx_row2_track1 (1,1) declare ui_label $lb_fx_row2_track2 (1,1) declare ui_label $lb_fx_row2_track3 (1,1) declare ui_label $lb_fx_row2_track4 (1,1) declare ui_label $lb_fx_row2_track5 (1,1) declare ui_label $lb_fx_row2_track6 (1,1) declare ui_label $lb_fx_row2_track7 (1,1) declare ui_label $lb_fx_row2_track8 (1,1) declare %lb_fx_id[16] %lb_fx_id[0] := get_ui_id($lb_fx_row1_track1) %lb_fx_id[1] := get_ui_id($lb_fx_row1_track2) %lb_fx_id[2] := get_ui_id($lb_fx_row1_track3) %lb_fx_id[3] := get_ui_id($lb_fx_row1_track4) %lb_fx_id[4] := get_ui_id($lb_fx_row1_track5) %lb_fx_id[5] := get_ui_id($lb_fx_row1_track6) %lb_fx_id[6] := get_ui_id($lb_fx_row1_track7) %lb_fx_id[7] := get_ui_id($lb_fx_row1_track8) %lb_fx_id[8] := get_ui_id($lb_fx_row2_track1) %lb_fx_id[9] := get_ui_id($lb_fx_row2_track2) %lb_fx_id[10] := get_ui_id($lb_fx_row2_track3) %lb_fx_id[11] := get_ui_id($lb_fx_row2_track4) %lb_fx_id[12] := get_ui_id($lb_fx_row2_track5) %lb_fx_id[13] := get_ui_id($lb_fx_row2_track6) %lb_fx_id[14] := get_ui_id($lb_fx_row2_track7) %lb_fx_id[15] := get_ui_id($lb_fx_row2_track8) $count := 0 while ($count < 16) set_control_par(%lb_fx_id[$count],$CONTROL_PAR_HIDE,$HIDE_PART_BG) set_control_par(%lb_fx_id[$count],$CONTROL_PAR_TEXT_ALIGNMENT,1) set_control_par(%lb_fx_id[$count],$CONTROL_PAR_FONT_TYPE,$FONT_ID) if ($count < 8) set_control_par_str(%lb_fx_id[$count],$CONTROL_PAR_TEXT,"SAT") set_control_par(%lb_fx_id[$count],$CONTROL_PAR_POS_X,... get_control_par(%saturation_id[$count],$CONTROL_PAR_POS_X)-26) set_control_par(%lb_fx_id[$count],$CONTROL_PAR_POS_Y,... get_control_par(%saturation_id[$count],$CONTROL_PAR_POS_Y)-15) else set_control_par_str(%lb_fx_id[$count],$CONTROL_PAR_TEXT,"SND") set_control_par(%lb_fx_id[$count],$CONTROL_PAR_POS_X,... get_control_par(%sound_id[$count-8],$CONTROL_PAR_POS_X)-26) set_control_par(%lb_fx_id[$count],$CONTROL_PAR_POS_Y,... get_control_par(%sound_id[$count-8],$CONTROL_PAR_POS_Y)-15) end if inc($count) end while end on {FX View Callbacks} on ui_control ($insertsend_disp) if ($insertsend_disp = 0) $count := 0 while($count < 8) set_control_par_str(%lb_fx_id[$count],$CONTROL_PAR_TEXT,"SAT") set_control_par_str(%lb_fx_id[$count+8],$CONTROL_PAR_TEXT,"SND") set_control_par(%send_id[$count],$CONTROL_PAR_HIDE,$HIDE_WHOLE_CONTROL) set_control_par(%send_id[$count+8],$CONTROL_PAR_HIDE,$HIDE_WHOLE_CONTROL) set_control_par(%sound_id[$count],$CONTROL_PAR_HIDE,$HIDE_PART_NOTHING) set_control_par(%saturation_id[$count],$CONTROL_PAR_HIDE,$HIDE_PART_NOTHING) inc($count) end while else $count := 0 while($count < 8) set_control_par_str(%lb_fx_id[$count],$CONTROL_PAR_TEXT,"DEL") set_control_par_str(%lb_fx_id[$count+8],$CONTROL_PAR_TEXT,"REV") set_control_par(%send_id[$count],$CONTROL_PAR_HIDE,$HIDE_PART_NOTHING) set_control_par(%send_id[$count+8],$CONTROL_PAR_HIDE,$HIDE_PART_NOTHING) set_control_par(%sound_id[$count],$CONTROL_PAR_HIDE,$HIDE_WHOLE_CONTROL) set_control_par(%saturation_id[$count],$CONTROL_PAR_HIDE,$HIDE_WHOLE_CONTROL) inc($count) end while end if end on {Start Track 1 Controls} on ui_control ($mute_track1) %mute_state[0] := ($mute_track1 + 1) mod 2 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[0]*%solo_state[0]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 0]] * $cur_volume)/1000), 24, -1, -1) end on on ui_control ($solo_track1) if($solo_track1 = 1) $count := 0 while ($count < 8) if($count # 0) %solo_state[$count] := 0 set_control_par(%solo_id[$count],$CONTROL_PAR_VALUE,0) else %solo_state[$count] := 1 end if _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 0]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while else $count := 0 while ($count < 8) %solo_state[$count] := 1 _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 0]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while end if end on on ui_control ($volume_track1) %volume_store[($preset-60)*8 + 0] := $volume_track1 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[0]*%solo_state[0]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 0]] * $cur_volume)/1000), 24, -1, -1) set_control_par_str(get_ui_id($volume_track1),$CONTROL_PAR_LABEL,$volume_track1 & " %") end on on ui_control ($rev_send_track1) _set_engine_par($ENGINE_PAR_SENDLEVEL_0,$rev_send_track1,24,7,-1) end on on ui_control ($delay_send_track1) _set_engine_par($ENGINE_PAR_SENDLEVEL_1,$delay_send_track1,24,7,-1) end on on ui_control ($sat_track1) set_engine_par($ENGINE_PAR_SHAPE,$sat_track1,24,$sat_slot,-1) set_control_par_str(get_ui_id($sat_track1),$CONTROL_PAR_LABEL,get_engine_par_disp... ($ENGINE_PAR_SHAPE,24,$sat_slot,-1) & " %") if($sat_track1 = 500000) _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,1,24,$sat_slot,-1) else _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,0,24,$sat_slot,-1) end if end on on ui_control ($sound_track1) $index_1 := $sound_track1/10 $index_2 := $sound_track1/10 +1 $knob := $sound_track1*10 if ($index_2 > 10) $index_2 := 10 end if $a := 0 while($a < 9) $helper := ((%savearr[($index_2*9) + $a] - %savearr[($index_1*9) + $a]) *... ($knob mod 100))/100 + %savearr[($index_1*9) + $a] _set_engine_par(%engine_par[$a],$helper,24,$eq_slot,-1) inc($a) end while set_control_par_str(get_ui_id($sound_track1),$CONTROL_PAR_LABEL,$sound_track1 & " %") end on {End track 1 controls} {Start Track 2 Controls} on ui_control ($mute_track2) %mute_state[1] := ($mute_track2 + 1) mod 2 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[1]*%solo_state[1]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 1]] * $cur_volume)/1000), 25, -1, -1) end on on ui_control ($solo_track2) if($solo_track2 = 1) $count := 0 while ($count < 8) if($count # 1) %solo_state[$count] := 0 set_control_par(%solo_id[$count],$CONTROL_PAR_VALUE,0) else %solo_state[$count] := 1 end if _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while else $count := 0 while ($count < 8) %solo_state[$count] := 1 _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while end if end on on ui_control ($volume_track2) %volume_store[(($preset-60)*8) + 1] := $volume_track2 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[1]*%solo_state[1]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 1]] * $cur_volume)/1000), 25, -1, -1) set_control_par_str(get_ui_id($volume_track2),$CONTROL_PAR_LABEL,$volume_track2 & " %") end on on ui_control ($rev_send_track2) _set_engine_par($ENGINE_PAR_SENDLEVEL_0,$rev_send_track2,25,7,-1) end on on ui_control ($delay_send_track2) _set_engine_par($ENGINE_PAR_SENDLEVEL_1,$delay_send_track2,25,7,-1) end on on ui_control ($sat_track2) _set_engine_par($ENGINE_PAR_SHAPE,$sat_track2,25,$sat_slot,-1) set_control_par_str(get_ui_id($sat_track2),$CONTROL_PAR_LABEL,get_engine_par_disp... ($ENGINE_PAR_SHAPE,25,$sat_slot,-1) & " %") if($sat_track2 = 500000) _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,1,25,$sat_slot,-1) else _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,0,25,$sat_slot,-1) end if end on on ui_control ($sound_track2) $index_1 := $sound_track2/10 $index_2 := $sound_track2/10 +1 $knob := $sound_track2*10 if ($index_2 > 10) $index_2 := 10 end if $a := 0 while($a < 9) $helper := ((%savearr[($index_2*9) + $a] - %savearr[($index_1*9) + $a]) *... ($knob mod 100))/100 + %savearr[($index_1*9) + $a] _set_engine_par(%engine_par[$a],$helper,25,$eq_slot,-1) inc($a) end while set_control_par_str(get_ui_id($sound_track2),$CONTROL_PAR_LABEL,$sound_track2 & " %") end on {End track 2 controls} {Start Track 3 Controls} on ui_control ($mute_track3) %mute_state[2] := ($mute_track3 + 1) mod 2 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[2]*%solo_state[2]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 2]] * $cur_volume)/1000), 26, -1, -1) end on on ui_control ($solo_track3) if($solo_track3 = 1) $count := 0 while ($count < 8) if($count # 2) %solo_state[$count] := 0 set_control_par(%solo_id[$count],$CONTROL_PAR_VALUE,0) else %solo_state[$count] := 1 end if _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while else $count := 0 while ($count < 8) %solo_state[$count] := 1 _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while end if end on on ui_control ($volume_track3) %volume_store[(($preset-60)*8) + 2] := $volume_track3 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[2]*%solo_state[2]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 2]] * $cur_volume)/1000), 26, -1, -1) set_control_par_str(get_ui_id($volume_track3),$CONTROL_PAR_LABEL,$volume_track3 & " %") end on on ui_control ($rev_send_track3) _set_engine_par($ENGINE_PAR_SENDLEVEL_0,$rev_send_track3,26,7,-1) end on on ui_control ($delay_send_track3) _set_engine_par($ENGINE_PAR_SENDLEVEL_1,$delay_send_track3,26,7,-1) end on on ui_control ($sat_track3) _set_engine_par($ENGINE_PAR_SHAPE,$sat_track3,26,$sat_slot,-1) set_control_par_str(get_ui_id($sat_track3),$CONTROL_PAR_LABEL,get_engine_par_disp... ($ENGINE_PAR_SHAPE,26,$sat_slot,-1) & " %") if($sat_track3 = 500000) _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,1,26,$sat_slot,-1) else _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,0,26,$sat_slot,-1) end if end on on ui_control ($sound_track3) $index_1 := $sound_track3/10 $index_2 := $sound_track3/10 +1 $knob := $sound_track3*10 if ($index_2 > 10) $index_2 := 10 end if $a := 0 while($a < 9) $helper := ((%savearr[($index_2*9) + $a] - %savearr[($index_1*9) + $a]) *... ($knob mod 100))/100 + %savearr[($index_1*9) + $a] _set_engine_par(%engine_par[$a],$helper,26,$eq_slot,-1) inc($a) end while set_control_par_str(get_ui_id($sound_track3),$CONTROL_PAR_LABEL,$sound_track3 & " %") end on {End track 3 controls} {Start Track 4 Controls} on ui_control ($mute_track4) %mute_state[3] := ($mute_track4 + 1) mod 2 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[3]*%solo_state[3]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 3]] * $cur_volume)/1000), 27, -1, -1) end on on ui_control ($solo_track4) if($solo_track4 = 1) $count := 0 while ($count < 8) if($count # 3) %solo_state[$count] := 0 set_control_par(%solo_id[$count],$CONTROL_PAR_VALUE,0) else %solo_state[$count] := 1 end if _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while else $count := 0 while ($count < 8) %solo_state[$count] := 1 _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while end if end on on ui_control ($volume_track4) %volume_store[(($preset-60)*8) + 3] := $volume_track4 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[3]*%solo_state[3]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 3]] * $cur_volume)/1000), 27, -1, -1) set_control_par_str(get_ui_id($volume_track4),$CONTROL_PAR_LABEL,$volume_track4 & " %") end on on ui_control ($rev_send_track4) _set_engine_par($ENGINE_PAR_SENDLEVEL_0,$rev_send_track4,27,7,-1) end on on ui_control ($delay_send_track4) _set_engine_par($ENGINE_PAR_SENDLEVEL_1,$delay_send_track4,27,7,-1) end on on ui_control ($sat_track4) _set_engine_par($ENGINE_PAR_SHAPE,$sat_track4,27,$sat_slot,-1) set_control_par_str(get_ui_id($sat_track4),$CONTROL_PAR_LABEL,get_engine_par_disp... ($ENGINE_PAR_SHAPE,27,$sat_slot,-1) & " %") if($sat_track4 = 500000) _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,1,27,$sat_slot,-1) else _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,0,27,$sat_slot,-1) end if end on on ui_control ($sound_track4) $index_1 := $sound_track4/10 $index_2 := $sound_track4/10 +1 $knob := $sound_track4*10 if ($index_2 > 10) $index_2 := 10 end if $a := 0 while($a < 9) $helper := ((%savearr[($index_2*9) + $a] - %savearr[($index_1*9) + $a]) *... ($knob mod 100))/100 + %savearr[($index_1*9) + $a] _set_engine_par(%engine_par[$a],$helper,27,$eq_slot,-1) inc($a) end while set_control_par_str(get_ui_id($sound_track4),$CONTROL_PAR_LABEL,$sound_track4 & " %") end on {End track 4 controls} {Start Track 5 Controls} on ui_control ($mute_track5) %mute_state[4] := ($mute_track5 + 1) mod 2 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[4]*%solo_state[4]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 4]] * $cur_volume)/1000), 28, -1, -1) end on on ui_control ($solo_track5) if($solo_track5 = 1) $count := 0 while ($count < 8) if($count # 4) %solo_state[$count] := 0 set_control_par(%solo_id[$count],$CONTROL_PAR_VALUE,0) else %solo_state[$count] := 1 end if _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while else $count := 0 while ($count < 8) %solo_state[$count] := 1 _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while end if end on on ui_control ($volume_track5) %volume_store[(($preset-60)*8) + 4] := $volume_track5 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[4]*%solo_state[4]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 4]] * $cur_volume)/1000), 28, -1, -1) set_control_par_str(get_ui_id($volume_track5),$CONTROL_PAR_LABEL,$volume_track5 & " %") end on on ui_control ($rev_send_track5) _set_engine_par($ENGINE_PAR_SENDLEVEL_0,$rev_send_track5,28,7,-1) end on on ui_control ($delay_send_track5) _set_engine_par($ENGINE_PAR_SENDLEVEL_1,$delay_send_track5,28,7,-1) end on on ui_control ($sat_track5) _set_engine_par($ENGINE_PAR_SHAPE,$sat_track5,28,$sat_slot,-1) set_control_par_str(get_ui_id($sat_track5),$CONTROL_PAR_LABEL,get_engine_par_disp... ($ENGINE_PAR_SHAPE,28,$sat_slot,-1) & " %") if($sat_track5 = 500000) _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,1,28,$sat_slot,-1) else _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,0,28,$sat_slot,-1) end if end on on ui_control ($sound_track5) $index_1 := $sound_track5/10 $index_2 := $sound_track5/10 +1 $knob := $sound_track5*10 if ($index_2 > 10) $index_2 := 10 end if $a := 0 while($a < 9) $helper := ((%savearr[($index_2*9) + $a] - %savearr[($index_1*9) + $a]) *... ($knob mod 100))/100 + %savearr[($index_1*9) + $a] _set_engine_par(%engine_par[$a],$helper,28,$eq_slot,-1) inc($a) end while set_control_par_str(get_ui_id($sound_track5),$CONTROL_PAR_LABEL,$sound_track5 & " %") end on {End track 5 controls} {Start Track 6 Controls} on ui_control ($mute_track6) %mute_state[5] := ($mute_track6 + 1) mod 2 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[5]*%solo_state[5]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 5]] * $cur_volume)/1000), 29, -1, -1) end on on ui_control ($solo_track6) if($solo_track6 = 1) $count := 0 while ($count < 8) if($count # 5) %solo_state[$count] := 0 set_control_par(%solo_id[$count],$CONTROL_PAR_VALUE,0) else %solo_state[$count] := 1 end if _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while else $count := 0 while ($count < 8) %solo_state[$count] := 1 _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while end if end on on ui_control ($volume_track6) %volume_store[(($preset-60)*8) + 5] := $volume_track6 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[5]*%solo_state[5]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 5]] * $cur_volume)/1000), 29, -1, -1) set_control_par_str(get_ui_id($volume_track6),$CONTROL_PAR_LABEL,$volume_track6 & " %") end on on ui_control ($rev_send_track6) _set_engine_par($ENGINE_PAR_SENDLEVEL_0,$rev_send_track6,29,7,-1) end on on ui_control ($delay_send_track6) _set_engine_par($ENGINE_PAR_SENDLEVEL_1,$delay_send_track6,29,7,-1) end on on ui_control ($sat_track6) _set_engine_par($ENGINE_PAR_SHAPE,$sat_track6,29,$sat_slot,-1) set_control_par_str(get_ui_id($sat_track6),$CONTROL_PAR_LABEL,get_engine_par_disp... ($ENGINE_PAR_SHAPE,29,$sat_slot,-1) & " %") if($sat_track6 = 500000) _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,1,29,$sat_slot,-1) else _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,0,29,$sat_slot,-1) end if end on on ui_control ($sound_track6) $index_1 := $sound_track6/10 $index_2 := $sound_track6/10 +1 $knob := $sound_track6*10 if ($index_2 > 10) $index_2 := 10 end if $a := 0 while($a < 9) $helper := ((%savearr[($index_2*9) + $a] - %savearr[($index_1*9) + $a]) *... ($knob mod 100))/100 + %savearr[($index_1*9) + $a] _set_engine_par(%engine_par[$a],$helper,29,$eq_slot,-1) inc($a) end while set_control_par_str(get_ui_id($sound_track6),$CONTROL_PAR_LABEL,$sound_track6 & " %") end on {End track 6 controls} {Start Track 7 Controls} on ui_control ($mute_track7) %mute_state[6] := ($mute_track7 + 1) mod 2 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[6]*%solo_state[6]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 6]] * $cur_volume)/1000), 30, -1, -1) end on on ui_control ($solo_track7) if($solo_track7 = 1) $count := 0 while ($count < 8) if($count # 6) %solo_state[$count] := 0 set_control_par(%solo_id[$count],$CONTROL_PAR_VALUE,0) else %solo_state[$count] := 1 end if _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while else $count := 0 while ($count < 8) %solo_state[$count] := 1 _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while end if end on on ui_control ($volume_track7) %volume_store[(($preset-60)*8) + 6] := $volume_track7 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[6]*%solo_state[6]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 6]] * $cur_volume)/1000), 30, -1, -1) set_control_par_str(get_ui_id($volume_track7),$CONTROL_PAR_LABEL,$volume_track7 & " %") end on on ui_control ($rev_send_track7) _set_engine_par($ENGINE_PAR_SENDLEVEL_0,$rev_send_track7,30,7,-1) end on on ui_control ($delay_send_track7) _set_engine_par($ENGINE_PAR_SENDLEVEL_1,$delay_send_track7,30,7,-1) end on on ui_control ($sat_track7) _set_engine_par($ENGINE_PAR_SHAPE,$sat_track7,30,$sat_slot,-1) set_control_par_str(get_ui_id($sat_track7),$CONTROL_PAR_LABEL,get_engine_par_disp... ($ENGINE_PAR_SHAPE,30,$sat_slot,-1) & " %") if($sat_track7 = 500000) _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,1,30,$sat_slot,-1) else _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,0,30,$sat_slot,-1) end if end on on ui_control ($sound_track7) $index_1 := $sound_track7/10 $index_2 := $sound_track7/10 +1 $knob := $sound_track7*10 if ($index_2 > 10) $index_2 := 10 end if $a := 0 while($a < 9) $helper := ((%savearr[($index_2*9) + $a] - %savearr[($index_1*9) + $a]) *... ($knob mod 100))/100 + %savearr[($index_1*9) + $a] _set_engine_par(%engine_par[$a],$helper,30,$eq_slot,-1) inc($a) end while set_control_par_str(get_ui_id($sound_track7),$CONTROL_PAR_LABEL,$sound_track7 & " %") end on {End track 7 controls} {Start Track 8 Controls} on ui_control ($mute_track8) %mute_state[7] := ($mute_track8 + 1) mod 2 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[7]*%solo_state[7]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 7]] * $cur_volume)/1000), 31, -1, -1) end on on ui_control ($solo_track8) if($solo_track8 = 1) $count := 0 while ($count < 8) if($count # 7) %solo_state[$count] := 0 set_control_par(%solo_id[$count],$CONTROL_PAR_VALUE,0) else %solo_state[$count] := 1 end if _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while else $count := 0 while ($count < 8) %solo_state[$count] := 1 _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + $count]] * $cur_volume)/1000),$count+24,-1,-1) inc($count) end while end if end on on ui_control ($volume_track8) %volume_store[(($preset-60)*8) + 7] := $volume_track8 _set_engine_par($ENGINE_PAR_VOLUME, %mute_state[7]*%solo_state[7]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8) + 7]] * $cur_volume)/1000), 31, -1, -1) set_control_par_str(get_ui_id($volume_track8),$CONTROL_PAR_LABEL,$volume_track8 & " %") end on on ui_control ($rev_send_track8) _set_engine_par($ENGINE_PAR_SENDLEVEL_0,$rev_send_track8,31,7,-1) end on on ui_control ($delay_send_track8) _set_engine_par($ENGINE_PAR_SENDLEVEL_1,$delay_send_track8,31,7,-1) end on on ui_control ($sat_track8) _set_engine_par($ENGINE_PAR_SHAPE,$sat_track8,31,$sat_slot,-1) set_control_par_str(get_ui_id($sat_track8),$CONTROL_PAR_LABEL,get_engine_par_disp... ($ENGINE_PAR_SHAPE,31,$sat_slot,-1) & " %") if($sat_track8 = 500000) _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,1,31,$sat_slot,-1) else _set_engine_par($ENGINE_PAR_EFFECT_BYPASS,0,31,$sat_slot,-1) end if end on on ui_control ($sound_track8) $index_1 := $sound_track8/10 $index_2 := $sound_track8/10 +1 $knob := $sound_track8*10 if ($index_2 > 10) $index_2 := 10 end if $a := 0 while($a < 9) $helper := ((%savearr[($index_2*9) + $a] - %savearr[($index_1*9) + $a]) *... ($knob mod 100))/100 + %savearr[($index_1*9) + $a] _set_engine_par(%engine_par[$a],$helper,31,$eq_slot,-1) inc($a) end while set_control_par_str(get_ui_id($sound_track8),$CONTROL_PAR_LABEL,$sound_track8 & " %") end on {End track 8 controls} {Start Preset Callback} on ui_control ($preset) $count := 0 set_text($lb_preset,!note_names[$preset]) while ($count < 8) _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[(($preset-60)*8)+$count]] * $cur_volume)/1000),$count+24,-1,-1) set_control_par(%trackvol_id[$count],$CONTROL_PAR_VALUE,%volume_store[(($preset-60)*8)+$count]) inc($count) end while set_control_par_str(get_ui_id($preset),$CONTROL_PAR_LABEL,!note_names[$preset]) end on {End Preset Callback} {Start note callbacks} on note if (in_range($EVENT_NOTE,60,71)) $last_id := $EVENT_ID $preset := $EVENT_NOTE set_text($lb_preset,!note_names[$preset]) $count := 0 while ($count < 8) _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[($preset-60)*8 + $count]] * $cur_volume)/1000),$count+24,-1,-1) set_control_par(%trackvol_id[$count],$CONTROL_PAR_VALUE,%volume_store[($preset-60)*8+$count]) inc($count) end while ignore_event ($EVENT_ID) %pressed_id[$preset-60] := $EVENT_ID if ($start_id = 0) $start_id := $EVENT_ID $count := 0 while ($count < 8) %track_id[$count] := play_note (60+$count,127,0,0) inc ($count) end while end if end if end on on release $count := 0 while($count < 12) if (%pressed_id[$count] = $EVENT_ID) %pressed_id[$count] := 0 end if inc($count) end while if ($EVENT_ID = $last_id) $count := 0 $max := 0 $max_nr := 0 while($count < 12) if (%pressed_id[$count] > $max) $max := %pressed_id[$count] $max_nr := $count end if inc($count) end while $start_id := $max $last_id := $max if ($start_id = 0) $count := 0 while($count < 12) note_off(%track_id[$count]) inc($count) end while else $preset := $max_nr + 60 set_text($lb_preset,!note_names[$preset]) $count := 0 while ($count < 8) _set_engine_par($ENGINE_PAR_VOLUME,%mute_state[$count]*%solo_state[$count]*... ((%wurzel_zweidrittel[%volume_store[($preset-60)*8 + $count]] * $cur_volume)/1000),$count+24,-1,-1) set_control_par(%trackvol_id[$count],$CONTROL_PAR_VALUE,%volume_store[($preset-60)*8+$count]) inc($count) end while end if end if end on