{*********************************************** Kontakt 4 Factory Libary - Instrument Electric Pianos Author: Native Instruments Written by: Nicki Marinic, Dinos Vallianatos Modified: September 2nd, 2009 *************************************************} on init make_perfview set_script_title("Instrument") set_ui_height_px(256) message("") declare $count declare $last_time declare $wait_time := 800 {Enter control label wait time} declare const $ROOT_X := 66 declare const $ROOT_Y := 2 declare const $GRID_X := 92 declare const $GRID_Y := 21 declare const $FONT_ID := 5 {the font id for all visible labels} declare const $FONT_ID_2 := 4 {the font id for menus} declare const $CREATE_AUTOMATION_ID := 0 declare const $meq_slot := 5 declare $rel_noise_grp_idx declare const $saturate_slot := 1 declare const $phaser_slot := 3 declare const $delay_slot := 1 declare const $reverb_slot := 0 declare const $cab_slot := 4 declare const $eq_slot := 0 declare const $sends_slot := 6 declare $duration $rel_noise_grp_idx := $NUM_GROUPS - 1 {*** CONTROL GROUP "INSTR"} {POSITIONING OF CONTROL GROUP} declare $x_grid_instr := 1 {X Position of Control Group in grid} declare $y_grid_instr := 1 {Y Position of Control Group in grid} declare $x_px_instr := 0 {X Position Offset Control Group in pixel} declare $y_px_instr := 0 {Y Position Offset Control Group in pixel} {DECLARATION AND UI_IDs} declare const $NUM_INSTR := 10 {number of elements in this control group} declare ui_label $lb_vib_ster_instr (1,1) declare ui_label $lb_vibrato_instr (1,1) declare ui_label $lb_speed_instr (1,1) declare ui_label $lb_noise_instr (1,1) declare ui_label $lb_sound_instr (1,1) declare ui_slider $vibrato_instr (0, 1000000) declare ui_slider $speed_instr (400000, 700000) declare ui_slider $noise_instr (0, 1000000) declare ui_slider $sound_instr (0, 5) declare ui_switch $vib_ster_instr declare %instr_id[$NUM_INSTR] %instr_id[0] := get_ui_id($lb_vib_ster_instr) %instr_id[1] := get_ui_id($lb_vibrato_instr) %instr_id[2] := get_ui_id($lb_speed_instr) %instr_id[3] := get_ui_id($lb_noise_instr) %instr_id[4] := get_ui_id($lb_sound_instr) %instr_id[5] := get_ui_id($vibrato_instr) %instr_id[6] := get_ui_id($speed_instr) %instr_id[7] := get_ui_id($noise_instr) %instr_id[8] := get_ui_id($sound_instr) %instr_id[9] := get_ui_id($vib_ster_instr) {POSITIONING OF INDIVIDUAL CONTROLS} move_control_px($lb_vib_ster_instr, ($GRID_X * 1) - 13, ($GRID_Y * 2) + 21) {possible to offset control in pixels} move_control_px($lb_vibrato_instr, ($GRID_X * 1) + 85, ($GRID_Y * 2) + 21) move_control_px($lb_speed_instr, ($GRID_X * 3) + 10, ($GRID_Y * 2) + 21) move_control_px($lb_noise_instr, ($GRID_X * 4) + 27, ($GRID_Y * 2) + 21) move_control_px($lb_sound_instr, ($GRID_X * 5) + 44, ($GRID_Y * 2) + 21) move_control_px($vibrato_instr, ($GRID_X * 2) + 14, ($GRID_Y * 3) + 11) move_control_px($speed_instr, ($GRID_X * 3) + 31, ($GRID_Y * 3) + 11) move_control_px($noise_instr, ($GRID_X * 4) + 49, ($GRID_Y * 3) + 11) move_control_px($sound_instr, ($GRID_X * 5) + 65, ($GRID_Y * 3) + 11) move_control_px($vib_ster_instr, ($GRID_X * 1) + 16, ($GRID_Y * 3) + 18) {VARIOUS ATTRIBUTES} make_persistent($sound_instr) make_persistent($vib_ster_instr) _read_persistent_var($vib_ster_instr) if ($vib_ster_instr = 1) $vibrato_instr := _get_engine_par($ENGINE_PAR_MOD_TARGET_INTENSITY, $count,find_mod($count, "LFO_SINE"),... find_target($count, find_mod($count, "LFO_SINE"), "LFO_SINE_PAN")) else $vibrato_instr := _get_engine_par($ENGINE_PAR_MOD_TARGET_INTENSITY, $count,find_mod($count, "LFO_TRI"),... find_target($count, find_mod($count, "LFO_TRI"), "LFO_TRI_VOLUME")) end if $noise_instr := _get_engine_par($ENGINE_PAR_VOLUME, $rel_noise_grp_idx, -1, -1) $speed_instr := _get_engine_par($ENGINE_PAR_INTMOD_FREQUENCY, $count, find_mod($count, "LFO_SINE"), -1) set_control_par_str(%instr_id[0], $CONTROL_PAR_TEXT, "VIB STEREO") set_control_par_str(%instr_id[1], $CONTROL_PAR_TEXT, "VIB AMT") set_control_par_str(%instr_id[2], $CONTROL_PAR_TEXT, "VIB SPEED") set_control_par_str(%instr_id[3], $CONTROL_PAR_TEXT, "NOISE") set_control_par_str(%instr_id[4], $CONTROL_PAR_TEXT, "SOUND") $count := 0 while ($count < 5) set_control_par(%instr_id[$count], $CONTROL_PAR_WIDTH, ($GRID_X * 1)) set_control_par(%instr_id[$count], $CONTROL_PAR_HEIGHT, ($GRID_Y * 1)) set_control_par(%instr_id[$count], $CONTROL_PAR_HIDE, $HIDE_PART_BG) set_control_par(%instr_id[$count], $CONTROL_PAR_TEXT_ALIGNMENT, 1) set_control_par(%instr_id[$count], $CONTROL_PAR_FONT_TYPE, $FONT_ID) inc($count) end while $count := 5 while ($count < 9) set_control_par_str(%instr_id[$count], $CONTROL_PAR_PICTURE, "pv_band_knob_big") set_control_par(%instr_id[$count], $CONTROL_PAR_MOUSE_BEHAVIOUR, -500) inc($count) end while set_control_par_str(%instr_id[9], $CONTROL_PAR_PICTURE, "pv_band_switch_ring_on_off") set_control_par(%instr_id[9], $CONTROL_PAR_WIDTH, 40) set_control_par(%instr_id[9], $CONTROL_PAR_HEIGHT, 50) set_control_par_str(%instr_id[9], $CONTROL_PAR_TEXT, "") {Other} $count := 0 while ($count < $NUM_INSTR) set_control_par (%instr_id[$count],$CONTROL_PAR_POS_X,get_control_par(%instr_id[$count],$CONTROL_PAR_POS_X)... +$ROOT_X + ($x_grid_instr - 2)*$GRID_X + $x_px_instr) set_control_par (%instr_id[$count],$CONTROL_PAR_POS_Y,get_control_par(%instr_id[$count],$CONTROL_PAR_POS_Y)... +$ROOT_Y + ($y_grid_instr - 2)*$GRID_Y + $y_px_instr) inc($count) end while {*** PICKUP KNOB FUNCTIONALITY START} declare %pickup_settings[66] := (... {0} 500000,500000,500000, 500000,500000,500000, 500000,500000,500000,... {1} 297858,152344,539063, 648856,195313,559570, 1000000,632813,277344,... {2} 203144,340820,641602, 797570,268555,606445, 1000000,632813,500000,... {3} 277287,340820,568359, 543000,272461,658203, 875715,632813,679688,... {4} 310287,173828,628906, 484287,0,696289, 819143,208008,633789,... {5} 279430,276367,602539, 483430,71289,436523, 835000,123047,765625) {*** END PICKUP KNOB FUNCIONALITY} set_control_par_str(get_ui_id($vib_ster_instr),$CONTROL_PAR_AUTOMATION_NAME,"Vib") set_control_par_str(get_ui_id($vibrato_instr),$CONTROL_PAR_AUTOMATION_NAME,"Vib Amt") set_control_par_str(get_ui_id($speed_instr),$CONTROL_PAR_AUTOMATION_NAME,"Vib Spd") set_control_par_str(get_ui_id($noise_instr),$CONTROL_PAR_AUTOMATION_NAME,"Noise") set_control_par_str(get_ui_id($sound_instr),$CONTROL_PAR_AUTOMATION_NAME,"Sound") set_control_par_str(get_ui_id($speed_instr),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_INTMOD_FREQUENCY, 0, find_mod(0, "LFO_SINE"), -1) & " Hz") set_control_par_str(get_ui_id($noise_instr),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_VOLUME, $rel_noise_grp_idx, -1, -1) & " dB") read_persistent_var($sound_instr) if ($sound_instr = 0) set_control_par_str(get_ui_id($sound_instr),$CONTROL_PAR_LABEL,"Off") else set_control_par_str(get_ui_id($sound_instr),$CONTROL_PAR_LABEL,$sound_instr) end if if ($vib_ster_instr = 1) set_control_par_str(get_ui_id($vibrato_instr),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_MOD_TARGET_INTENSITY, 0,find_mod(0,"LFO_SINE"),... find_target(0,find_mod(0,"LFO_SINE"), "LFO_SINE_PAN")) & " %") else set_control_par_str(get_ui_id($vibrato_instr),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_MOD_TARGET_INTENSITY, 0,find_mod(0,"LFO_TRI"),... find_target(0,find_mod(0,"LFO_TRI"), "LFO_TRI_VOLUME")) & " %") end if {*** END CONTROL GROUP "INSTR"} {*** CONTROL GROUP "FX"} {POSITIONING OF CONTROL GROUP} declare $x_grid_fx := 1 {X Position of Control Group in grid} declare $y_grid_fx := 7 {Y Position of Control Group in grid} declare $x_px_fx := 0 {X Position Offset Control Group in pixel} declare $y_px_fx := 0 {Y Position Offset Control Group in pixel} {DECLARATION AND UI_IDs} declare const $NUM_FX := 10 {number of elements in this control group} declare ui_label $backgr_fx (1,1) declare ui_label $title_fx (1,1) declare ui_label $lb_saturate_fx (1,1) declare ui_label $lb_phaser_fx (1,1) declare ui_label $lb_del_time_fx (1,1) declare ui_label $lb_del_amount_fx (1,1) declare ui_slider $saturate_fx (500000, 750000) declare ui_slider $phaser_fx (0, 430000) declare ui_slider $del_time_fx (0, 1000000) declare ui_slider $del_amount_fx (0, 600000) declare %fx_id[$NUM_FX] %fx_id[0] := get_ui_id($backgr_fx) %fx_id[1] := get_ui_id($title_fx) %fx_id[2] := get_ui_id($lb_saturate_fx) %fx_id[3] := get_ui_id($lb_phaser_fx) %fx_id[4] := get_ui_id($lb_del_time_fx) %fx_id[5] := get_ui_id($lb_del_amount_fx) %fx_id[6] := get_ui_id($saturate_fx) %fx_id[7] := get_ui_id($phaser_fx) %fx_id[8] := get_ui_id($del_time_fx) %fx_id[9] := get_ui_id($del_amount_fx) {POSITIONING OF INDIVIDUAL CONTROLS} move_control_px($backgr_fx,($GRID_X * 1) + 51, ($GRID_Y * 1) + 12) {possible to offset control in pixels} move_control_px($title_fx, ($GRID_X * 1) + 0, ($GRID_Y * 1) + 0) move_control_px($lb_saturate_fx, ($GRID_X * 1) - 52, ($GRID_Y * 2) + 9) move_control_px($lb_phaser_fx, ($GRID_X * 1) + 20, ($GRID_Y * 2) + 9) move_control_px($lb_del_time_fx, ($GRID_X * 2) + 0, ($GRID_Y * 2) + 9) move_control_px($lb_del_amount_fx, ($GRID_X * 2) + 70, ($GRID_Y * 2) + 9) move_control_px($saturate_fx, ($GRID_X * 1) - 23, ($GRID_Y * 3) + 5) move_control_px($phaser_fx, ($GRID_X * 1) + 48, ($GRID_Y * 3) + 5) move_control_px($del_time_fx, ($GRID_X * 2) + 27, ($GRID_Y * 3) + 5) move_control_px($del_amount_fx, ($GRID_X * 3) + 6, ($GRID_Y * 3) + 5) {VARIOUS ATTRIBUTES} $saturate_fx := _get_engine_par($ENGINE_PAR_SHAPE, -1, $saturate_slot, 1) $phaser_fx := _get_engine_par($ENGINE_PAR_SEND_EFFECT_OUTPUT_GAIN, -1, $phaser_slot, 1) $del_time_fx := _get_engine_par($ENGINE_PAR_DL_TIME, -1, $delay_slot, 0) $del_amount_fx := _get_engine_par ($ENGINE_PAR_SENDLEVEL_1, -1, $sends_slot, 1) set_control_par_str(%fx_id[0], $CONTROL_PAR_TEXT, "") set_control_par_str(%fx_id[1], $CONTROL_PAR_TEXT, "") set_control_par_str(%fx_id[2], $CONTROL_PAR_TEXT, "SATURATOR") set_control_par_str(%fx_id[3], $CONTROL_PAR_TEXT, "PHASER") set_control_par_str(%fx_id[4], $CONTROL_PAR_TEXT, "DEL TIME") set_control_par_str(%fx_id[5], $CONTROL_PAR_TEXT, "DEL AMT") $count := 1 while ($count < 6) set_control_par(%fx_id[$count], $CONTROL_PAR_WIDTH, ($GRID_X * 1)) set_control_par(%fx_id[$count], $CONTROL_PAR_HEIGHT, ($GRID_Y * 1)) set_control_par(%fx_id[$count], $CONTROL_PAR_HIDE, $HIDE_PART_BG) set_control_par(%fx_id[$count], $CONTROL_PAR_TEXT_ALIGNMENT, 1) set_control_par(%fx_id[$count], $CONTROL_PAR_FONT_TYPE, $FONT_ID) inc($count) end while set_control_par_str(%fx_id[0], $CONTROL_PAR_PICTURE, "pv_band_inst_perf_headline_animation") set_control_par(%fx_id[0], $CONTROL_PAR_PICTURE_STATE, 1) $count := 6 while ($count < 10) set_control_par_str(%fx_id[$count], $CONTROL_PAR_PICTURE, "pv_band_knob_small") set_control_par(%fx_id[$count], $CONTROL_PAR_MOUSE_BEHAVIOUR, -500) inc($count) end while {Other} $count := 0 while ($count < $NUM_FX) set_control_par (%fx_id[$count],$CONTROL_PAR_POS_X,get_control_par(%fx_id[$count],$CONTROL_PAR_POS_X)... +$ROOT_X + ($x_grid_fx - 2)*$GRID_X + $x_px_fx) set_control_par (%fx_id[$count],$CONTROL_PAR_POS_Y,get_control_par(%fx_id[$count],$CONTROL_PAR_POS_Y)... +$ROOT_Y + ($y_grid_fx - 2)*$GRID_Y + $y_px_fx) inc($count) end while set_control_par_str(get_ui_id($saturate_fx),$CONTROL_PAR_AUTOMATION_NAME,"Sat") set_control_par_str(get_ui_id($phaser_fx),$CONTROL_PAR_AUTOMATION_NAME,"Phaser") set_control_par_str(get_ui_id($del_time_fx),$CONTROL_PAR_AUTOMATION_NAME,"Del Time") set_control_par_str(get_ui_id($del_amount_fx),$CONTROL_PAR_AUTOMATION_NAME,"Delay") set_control_par_str(get_ui_id($saturate_fx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_SHAPE, -1, $saturate_slot, 1) & " %") set_control_par_str(get_ui_id($phaser_fx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_SEND_EFFECT_OUTPUT_GAIN, -1, $phaser_slot, 1) & " dB") set_control_par_str(get_ui_id($del_time_fx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_DL_TIME, -1, $delay_slot, 0) & " 16th") set_control_par_str(get_ui_id($del_amount_fx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_SENDLEVEL_1, -1, $sends_slot, 1) & " dB") {*** END CONTROL GROUP "FX"} {*** CONTROL GROUP "BANDFX"} {POSITIONING OF CONTROL GROUP} declare $x_grid_bandfx := 3 {X Position of Control Group in grid} declare $y_grid_bandfx := 7 {Y Position of Control Group in grid} declare $x_px_bandfx := 0 {X Position Offset Control Group in pixel} declare $y_px_bandfx := 0 {Y Position Offset Control Group in pixel} {DECLARATION AND UI_IDs} declare const $num_ir_samples := 10 {the number of ir samples used in this instrument group} declare const $NUM_BANDFX := 42 {number of elements in this control group} declare ui_label $backgr_bandfx (1,1) declare ui_label $title_bandfx (1,1) declare ui_label $lb_rev_bandfx (1,1) declare ui_label $lb_cab_bandfx(1,1) declare ui_label $lb_eq_bandfx(1,1) declare ui_label $lb_rev_onoff_bandfx (1,1) declare ui_label $lb_rev_room_bandfx (1,1) declare ui_label $lb_rev_mix_bandfx (1,1) declare ui_label $image_reverb (1,1) declare ui_label $lb_cab_onoff_bandfx (1,1) declare ui_label $lb_cab_type_bandfx (1,1) declare ui_label $lb_cab_air_bandfx (1,1) declare ui_label $lb_eq_onoff_bandfx (1,1) declare ui_label $lb_eq_lo_bandfx (1,1) declare ui_label $lb_eq_mid_bandfx (1,1) declare ui_label $lb_eq_hi_bandfx (1,1) declare ui_label $cab_image_bandfx (1,1) declare ui_slider $rev_amount_bandfx (0, 1000000) declare ui_slider $cab_air_bandfx (0, 1000000) declare ui_slider $eq_lo_bandfx (166666, 833333) declare ui_slider $eq_mid_bandfx (166666, 833333) declare ui_slider $eq_hi_bandfx (166666, 833333) declare ui_button $rev_bandfx declare ui_button $cab_bandfx declare ui_button $eq_bandfx declare ui_switch $rev_onoff_bandfx declare ui_switch $cab_onoff_bandfx declare ui_switch $eq_onoff_bandfx declare ui_menu $cab_type_bandfx declare ui_menu $category_reverb declare ui_label $eq_background_bandfx (1,1) declare ui_label $masterfx_bg_bandfx (1,1) {reverb functionality} declare ui_menu $hall_reverb declare ui_menu $cathedral_reverb declare ui_menu $club_reverb declare ui_menu $room_reverb declare ui_menu $l300_reverb declare ui_menu $quadstick_reverb declare ui_menu $brt7_reverb declare ui_menu $plate_reverb declare ui_menu $cabinet_reverb declare %subcat_menu_id[9] %subcat_menu_id[0] := get_ui_id($hall_reverb) %subcat_menu_id[1] := get_ui_id($cathedral_reverb) %subcat_menu_id[2] := get_ui_id($club_reverb) %subcat_menu_id[3] := get_ui_id($room_reverb) %subcat_menu_id[4] := get_ui_id($l300_reverb) %subcat_menu_id[6] := get_ui_id($quadstick_reverb) %subcat_menu_id[7] := get_ui_id($brt7_reverb) %subcat_menu_id[5] := get_ui_id($plate_reverb) %subcat_menu_id[8] := get_ui_id($cabinet_reverb) declare %offset_reverb[9] := (0,3,6,14,21,52,34,42,62) {Skin the subcategory menus} $count := 0 while($count < 9) set_control_par_str(%subcat_menu_id[$count],$CONTROL_PAR_PICTURE,"pv_band_master_fx_rev_dropdown_1") set_control_par(%subcat_menu_id[$count], $CONTROL_PAR_POS_X, ($GRID_X * 2) + 84) set_control_par(%subcat_menu_id[$count], $CONTROL_PAR_POS_Y, ($GRID_Y * 5) + 2) set_control_par(%subcat_menu_id[$count], $CONTROL_PAR_FONT_TYPE, $FONT_ID_2) inc($count) end while set_control_par_str(get_ui_id($image_reverb),$CONTROL_PAR_PICTURE,"pv_band_reverb_animation") {Fill the menus} add_menu_item($category_reverb, "CONCERT HALL", 0) add_menu_item($category_reverb, "CATHEDRAL", 1) add_menu_item($category_reverb, "CLUB", 2) add_menu_item($category_reverb, "ROOM", 3) add_menu_item($category_reverb, "L300", 4) add_menu_item($category_reverb, "QUADSTICK", 6) add_menu_item($category_reverb, "BRT 7", 7) add_menu_item($category_reverb, "PLATE", 5) add_menu_item($category_reverb, "CABINET", 8) declare !ir_path[68] !ir_path[0] := "presets/effects/convolution/<<>>/K4 IR Samples/Concert Hall A.wav" !ir_path[1] := "presets/effects/convolution/<<>>/K4 IR Samples/Concert Hall B.wav" !ir_path[2] := "presets/effects/convolution/<<>>/K4 IR Samples/Exhibition Hall.wav" !ir_path[3] := "presets/effects/convolution/<<>>/K4 IR Samples/Cathedral A.wav" !ir_path[4] := "presets/effects/convolution/<<>>/K4 IR Samples/Cathedral B.wav" !ir_path[5] := "presets/effects/convolution/10 Big Rooms/IR Samples/ndb_cathedral_ir_32bit.wav" !ir_path[6] := "presets/effects/convolution/<<>>/K4 IR Samples/Club A.wav" !ir_path[7] := "presets/effects/convolution/<<>>/K4 IR Samples/Club B.wav" !ir_path[8] := "presets/effects/convolution/<<>>/K4 IR Samples/Tavern Close.wav" !ir_path[9] := "presets/effects/convolution/<<>>/K4 IR Samples/Tavern Near.wav" !ir_path[10] := "presets/effects/convolution/<<>>/K4 IR Samples/Tavern Medium.wav" !ir_path[11] := "presets/effects/convolution/<<>>/K4 IR Samples/Tavern Far.wav" !ir_path[12] := "presets/effects/convolution/<<>>/K4 IR Samples/Auditorium A.wav" !ir_path[13] := "presets/effects/convolution/<<>>/K4 IR Samples/Auditorium B.wav" !ir_path[14] := "presets/effects/convolution/<<>>/K4 IR Samples/Chamber A.wav" !ir_path[15] := "presets/effects/convolution/<<>>/K4 IR Samples/Chamber B.wav" !ir_path[16] := "presets/effects/convolution/<<>>/K4 IR Samples/Rehearsal Room.wav" !ir_path[17] := "presets/effects/convolution/<<>>/K4 IR Samples/Hard Wood Room B.wav" !ir_path[18] := "presets/effects/convolution/<<>>/K4 IR Samples/Music Studio C.wav" !ir_path[19] := "presets/effects/convolution/<<>>/K4 IR Samples/Small Room A.wav" !ir_path[20] := "presets/effects/convolution/<<>>/K4 IR Samples/Small Room B.wav" !ir_path[21] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Large Hall.wav" !ir_path[22] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Gated Hall.wav" !ir_path[23] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Large Room.wav" !ir_path[24] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Large Chamber.wav" !ir_path[25] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Studio C.wav" !ir_path[26] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Contem-Plate.wav" !ir_path[27] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Space & Echoes.wav" !ir_path[28] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Medium Stop.wav" !ir_path[29] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Drum Cave.wav" !ir_path[30] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Large Ambience.wav" !ir_path[31] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Smooth Ambience.wav" !ir_path[32] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Ambience Wave.wav" !ir_path[33] := "presets/effects/convolution/<<>>/K4 IR Samples/L300 Le Gate.wav" !ir_path[34] := "presets/effects/convolution/<<>>/K4 IR Samples/Quadstick Small - Basic.wav" !ir_path[35] := "presets/effects/convolution/<<>>/K4 IR Samples/Quadstick Small - Disco.wav" !ir_path[36] := "presets/effects/convolution/<<>>/K4 IR Samples/Quadstick Small - Funk.wav" !ir_path[37] := "presets/effects/convolution/<<>>/K4 IR Samples/Quadstick Small - Funky Club.wav" !ir_path[38] := "presets/effects/convolution/<<>>/K4 IR Samples/Quadstick Small - Hip Hop.wav" !ir_path[39] := "presets/effects/convolution/<<>>/K4 IR Samples/Quadstick Small - Reggae Modern.wav" !ir_path[40] := "presets/effects/convolution/<<>>/K4 IR Samples/Quadstick Small - RnB Neptunes.wav" !ir_path[41] := "presets/effects/convolution/<<>>/K4 IR Samples/Quadstick Small - RnB Today 1.wav" !ir_path[42] := "presets/effects/convolution/<<>>/K4 IR Samples/BRT 7 Ambience Large A.wav" !ir_path[43] := "presets/effects/convolution/<<>>/K4 IR Samples/BRT 7 Ambience Small.wav" !ir_path[44] := "presets/effects/convolution/<<>>/K4 IR Samples/BRT 7 Chamber Small.wav" !ir_path[45] := "presets/effects/convolution/<<>>/K4 IR Samples/BRT 7 Chamber Vocal.wav" !ir_path[46] := "presets/effects/convolution/<<>>/K4 IR Samples/BRT 7 Hall Dense.wav" !ir_path[47] := "presets/effects/convolution/<<>>/K4 IR Samples/BRT 7 Location Chapel A.wav" !ir_path[48] := "presets/effects/convolution/<<>>/K4 IR Samples/BRT 7 Plate Snare.wav" !ir_path[49] := "presets/effects/convolution/<<>>/K4 IR Samples/BRT 7 Room Drum.wav" !ir_path[50] := "presets/effects/convolution/<<>>/K4 IR Samples/BRT 7 Room Wood.wav" !ir_path[51] := "presets/effects/convolution/<<>>/K4 IR Samples/BRT 7 Location Cineastic Room.wav" !ir_path[52] := "presets/effects/convolution/<<>>/K4 IR Samples/E245 0.5s A.wav" !ir_path[53] := "presets/effects/convolution/<<>>/K4 IR Samples/E245 1.0s A.wav" !ir_path[54] := "presets/effects/convolution/<<>>/K4 IR Samples/E245 1.4s A.wav" !ir_path[55] := "presets/effects/convolution/<<>>/K4 IR Samples/E245 2.1s A.wav" !ir_path[56] := "presets/effects/convolution/<<>>/K4 IR Samples/E245 4.5s A.wav" !ir_path[57] := "presets/effects/convolution/<<>>/K4 IR Samples/E252 0.6s.wav" !ir_path[58] := "presets/effects/convolution/<<>>/K4 IR Samples/E252 1.0s.wav" !ir_path[59] := "presets/effects/convolution/<<>>/K4 IR Samples/E252 1.8s.wav" !ir_path[60] := "presets/effects/convolution/<<>>/K4 IR Samples/E252 3.0s.wav" !ir_path[61] := "presets/effects/convolution/<<>>/K4 IR Samples/E252 4.5s.wav" !ir_path[62] := "presets/effects/convolution/17 Cabinets/Brit 212/IR Samples/Brit_212_Tube_Center.wav" !ir_path[63] := "presets/effects/convolution/17 Cabinets/Tweed 112/IR Samples/Tweed_112_Tube_Center.wav" !ir_path[64] := "presets/effects/convolution/17 Cabinets/Tweed 212/IR Samples/Tweed_212_Tube_Center.wav" !ir_path[65] := "presets/effects/convolution/17 Cabinets/Tweed 410/IR Samples/Tweed_410_Tube_Center.wav" !ir_path[66] := "presets/effects/convolution/17 Cabinets/Rock 412/IR Samples/Rock_412_Tube_Center.wav" !ir_path[67] := "presets/effects/convolution/17 Cabinets/Modern 412/IR Samples/Modern_412_Tube_Center.wav" declare !ir_type[68] !ir_type[0] := "HALL A" !ir_type[1] := "HALL B" !ir_type[2] := "EXHIBITION HALL" !ir_type[3] := "CATHEDRAL A" !ir_type[4] := "CATHEDRAL B" !ir_type[5] := "NDB" !ir_type[6] := "CLUB A" !ir_type[7] := "CLUB B" !ir_type[8] := "TAVERN CLOSE" !ir_type[9] := "TAVERN NEAR" !ir_type[10] := "TAVERN MID" !ir_type[11] := "TAVERN FAR" !ir_type[12] := "AUDITORIUM A" !ir_type[13] := "AUDITORIUM B" !ir_type[14] := "CHAMBER A" !ir_type[15] := "CHAMBER B" !ir_type[16] := "REHEARSAL" !ir_type[17] := "HARD WOOD" !ir_type[18] := "MUSIC STUDIO" !ir_type[19] := "SMALL ROOM A" !ir_type[20] := "SMALL ROOM B" !ir_type[21] := "LARGE HALL" !ir_type[22] := "GATED HALL" !ir_type[23] := "LARGE ROOM" !ir_type[24] := "LRG CHAMBER" !ir_type[25] := "STUDIO C" !ir_type[26] := "PLATE" !ir_type[27] := "ECHOES" !ir_type[28] := "MEDIUM STOP" !ir_type[29] := "DRUM CAVE" !ir_type[30] := "LARGE AMBI" !ir_type[31] := "SMOOTH AMBI" !ir_type[32] := "AMBI WAVE" !ir_type[33] := "LE GATE" !ir_type[34] := "BASIC" !ir_type[35] := "DISCO" !ir_type[36] := "FUNK" !ir_type[37] := "FUNKY CLUB" !ir_type[38] := "HIP HOP" !ir_type[39] := "REGGAE MOD" !ir_type[40] := "RNB NEPTUNES" !ir_type[41] := "RNB TODAY" !ir_type[42] := "LARGE AMBI" !ir_type[43] := "SMALL AMBI" !ir_type[44] := "SML CHAMBER" !ir_type[45] := "VOC CHAMBER" !ir_type[46] := "DENSE HALL" !ir_type[47] := "CHAPEL" !ir_type[48] := "SNARE PLATE" !ir_type[49] := "DRUM ROOM" !ir_type[50] := "WOOD ROOM" !ir_type[51] := "CINEASTIC" !ir_type[52] := "E245 0.5s" !ir_type[53] := "E245 1.0s" !ir_type[54] := "E245 1.4s" !ir_type[55] := "E245 2.1s" !ir_type[56] := "E245 4.5s" !ir_type[57] := "E252 0.6s" !ir_type[58] := "E252 1.0s" !ir_type[59] := "E252 1.8s" !ir_type[60] := "E252 3.0s" !ir_type[61] := "E252 4.5s" !ir_type[62] := "BRIT 2x12" !ir_type[63] := "TWEED 1x12" !ir_type[64] := "TWEED 2x12" !ir_type[65] := "TWEED 4x10" !ir_type[66] := "ROCK 4x12" !ir_type[67] := "MODERN 4x12" $count := 0 while ($count < 68) if ($count < 3) add_menu_item($hall_reverb,!ir_type[$count],$count) else if ($count < 6) add_menu_item($cathedral_reverb,!ir_type[$count],$count) else if ($count < 14) add_menu_item($club_reverb,!ir_type[$count],$count) else if ($count < 21) add_menu_item($room_reverb,!ir_type[$count],$count) else if ($count < 34) add_menu_item($l300_reverb,!ir_type[$count],$count) else if($count < 42) add_menu_item($quadstick_reverb,!ir_type[$count],$count) else if ($count < 52) add_menu_item($brt7_reverb,!ir_type[$count],$count) else if ($count < 62) add_menu_item($plate_reverb,!ir_type[$count],$count) else add_menu_item($cabinet_reverb,!ir_type[$count],$count) end if end if end if end if end if end if end if end if inc ($count) end while make_persistent($category_reverb) make_persistent($hall_reverb) make_persistent($cathedral_reverb) make_persistent($club_reverb) make_persistent($room_reverb) make_persistent($l300_reverb) make_persistent($quadstick_reverb) make_persistent($brt7_reverb) make_persistent($plate_reverb) make_persistent($cabinet_reverb) _read_persistent_var($category_reverb) _read_persistent_var($hall_reverb) _read_persistent_var($cathedral_reverb) _read_persistent_var($club_reverb) _read_persistent_var($room_reverb) _read_persistent_var($l300_reverb) _read_persistent_var($quadstick_reverb) _read_persistent_var($brt7_reverb) _read_persistent_var($plate_reverb) _read_persistent_var($cabinet_reverb) $count := 0 while ($count < 9) if ($count = $category_reverb) set_control_par(%subcat_menu_id[$count],$CONTROL_PAR_HIDE,$HIDE_PART_NOTHING) else set_control_par(%subcat_menu_id[$count],$CONTROL_PAR_HIDE,$HIDE_WHOLE_CONTROL) end if inc ($count) end while set_control_par(get_ui_id($image_reverb),$CONTROL_PAR_PICTURE_STATE,$category_reverb) {/reverb functionality} declare %bandfx_id[$NUM_BANDFX] %bandfx_id[0] := get_ui_id($backgr_bandfx) %bandfx_id[1] := get_ui_id($title_bandfx) %bandfx_id[2] := get_ui_id($lb_rev_bandfx) %bandfx_id[3] := get_ui_id($lb_cab_bandfx) %bandfx_id[4] := get_ui_id($lb_eq_bandfx) %bandfx_id[5] := get_ui_id($lb_rev_onoff_bandfx) %bandfx_id[6] := get_ui_id($lb_rev_room_bandfx) %bandfx_id[7] := get_ui_id($lb_rev_mix_bandfx) %bandfx_id[8] := get_ui_id($image_reverb) %bandfx_id[9] := get_ui_id($lb_cab_onoff_bandfx) %bandfx_id[10] := get_ui_id($lb_cab_type_bandfx) %bandfx_id[11] := get_ui_id($lb_cab_air_bandfx) %bandfx_id[12] := get_ui_id($cab_image_bandfx) %bandfx_id[13] := get_ui_id($lb_eq_onoff_bandfx) %bandfx_id[14] := get_ui_id($lb_eq_lo_bandfx) %bandfx_id[15] := get_ui_id($lb_eq_mid_bandfx) %bandfx_id[16] := get_ui_id($lb_eq_hi_bandfx) %bandfx_id[17] := get_ui_id($rev_amount_bandfx) %bandfx_id[18] := get_ui_id($cab_air_bandfx) %bandfx_id[19] := get_ui_id($eq_lo_bandfx) %bandfx_id[20] := get_ui_id($eq_mid_bandfx) %bandfx_id[21] := get_ui_id($eq_hi_bandfx) %bandfx_id[22] := get_ui_id($rev_bandfx) %bandfx_id[23] := get_ui_id($cab_bandfx) %bandfx_id[24] := get_ui_id($eq_bandfx) %bandfx_id[25] := get_ui_id($rev_onoff_bandfx) %bandfx_id[26] := get_ui_id($cab_onoff_bandfx) %bandfx_id[27] := get_ui_id($eq_onoff_bandfx) %bandfx_id[29] := get_ui_id($cab_type_bandfx) %bandfx_id[30] := get_ui_id($category_reverb) %bandfx_id[31] := get_ui_id($eq_background_bandfx) %bandfx_id[32] := get_ui_id($masterfx_bg_bandfx) %bandfx_id[33] := get_ui_id($hall_reverb) %bandfx_id[34] := get_ui_id($cathedral_reverb) %bandfx_id[35] := get_ui_id($club_reverb) %bandfx_id[36] := get_ui_id($room_reverb) %bandfx_id[37] := get_ui_id($l300_reverb) %bandfx_id[38] := get_ui_id($quadstick_reverb) %bandfx_id[39] := get_ui_id($brt7_reverb) %bandfx_id[40] := get_ui_id($plate_reverb) %bandfx_id[41] := get_ui_id($cabinet_reverb) {POSITIONING OF INDIVIDUAL CONTROLS} move_control_px($backgr_bandfx,($GRID_X * 1) + 77, ($GRID_Y * 1) + 16) {possible to offset control in pixels} move_control_px($title_bandfx, ($GRID_X * 1) + 0, ($GRID_Y * 1) + 0) move_control_px($lb_rev_bandfx, ($GRID_X * 1) + 0, ($GRID_Y * 2) + 0) move_control_px($lb_cab_bandfx, ($GRID_X * 1) + 46, ($GRID_Y * 2) + 0) move_control_px($lb_eq_bandfx, ($GRID_X * 2) + 0, ($GRID_Y * 2) + 0) move_control_px($lb_rev_onoff_bandfx, ($GRID_X * 2) + 46, ($GRID_Y * 2) + 0) move_control_px($lb_rev_room_bandfx, ($GRID_X * 3) + 46, ($GRID_Y * 2) + 0) move_control_px($lb_rev_mix_bandfx, ($GRID_X * 3) + 85, ($GRID_Y * 2) + 9) move_control_px($image_reverb, ($GRID_X * 2) + 86, ($GRID_Y * 2) + 20) move_control_px($lb_cab_onoff_bandfx, ($GRID_X * 2) + 46, ($GRID_Y * 2) + 0) move_control_px($lb_cab_type_bandfx, ($GRID_X * 2) + 46, ($GRID_Y * 4) + 0) move_control_px($lb_cab_air_bandfx, ($GRID_X * 3) + 85, ($GRID_Y * 2) + 9) move_control_px($cab_image_bandfx, ($GRID_X * 2) + 89, ($GRID_Y * 2) + 12) move_control_px($lb_eq_onoff_bandfx, ($GRID_X * 2) + 46, ($GRID_Y * 2) + 0) move_control_px($lb_eq_lo_bandfx, ($GRID_X * 2) + 87, ($GRID_Y * 5) + 0) move_control_px($lb_eq_mid_bandfx, ($GRID_X * 3) + 41, ($GRID_Y * 5) + 0) move_control_px($lb_eq_hi_bandfx, ($GRID_X * 3) + 86, ($GRID_Y * 5) + 0) move_control_px($rev_amount_bandfx, ($GRID_X * 4) + 21, ($GRID_Y * 3) + 5) move_control_px($cab_air_bandfx, ($GRID_X * 4) + 21, ($GRID_Y * 3) + 5) move_control_px($eq_lo_bandfx, ($GRID_X * 3) + 35, ($GRID_Y * 2) + 12) move_control_px($eq_mid_bandfx, ($GRID_X * 3) + 80, ($GRID_Y * 2) + 12) move_control_px($eq_hi_bandfx, ($GRID_X * 4) + 33, ($GRID_Y * 2) + 12) move_control_px($rev_bandfx, ($GRID_X * 2) + 7, ($GRID_Y * 1) + 16) move_control_px($cab_bandfx, ($GRID_X * 2) + 7, ($GRID_Y * 3) + 5) move_control_px($eq_bandfx, ($GRID_X * 2) + 7, ($GRID_Y * 4) + 16) move_control_px($rev_onoff_bandfx, ($GRID_X * 1) + 79, ($GRID_Y * 1) + 18) move_control_px($cab_onoff_bandfx, ($GRID_X * 1) + 79, ($GRID_Y * 3) + 8) move_control_px($eq_onoff_bandfx, ($GRID_X * 1) + 79, ($GRID_Y * 4) + 20) move_control_px($cab_type_bandfx, ($GRID_X * 2) + 84, ($GRID_Y * 5) + 2) move_control_px($category_reverb, ($GRID_X * 2) + 84, ($GRID_Y * 2) + 6) move_control_px($eq_background_bandfx, ($GRID_X * 2) + 79, ($GRID_Y * 2) + 2) move_control_px($masterfx_bg_bandfx, ($GRID_X * 2) + 85, ($GRID_Y * 2) + 6) {VARIOUS ATTRIBUTES} set_control_par(%bandfx_id[19], $CONTROL_PAR_DEFAULT_VALUE, 500000) set_control_par(%bandfx_id[20], $CONTROL_PAR_DEFAULT_VALUE, 500000) set_control_par(%bandfx_id[21], $CONTROL_PAR_DEFAULT_VALUE, 500000) $rev_amount_bandfx := _get_engine_par ($ENGINE_PAR_SENDLEVEL_0, -1, $sends_slot, 1) $cab_air_bandfx := _get_engine_par ($ENGINE_PAR_CB_AIR, -1, $cab_slot, 1) $eq_lo_bandfx := _get_engine_par($ENGINE_PAR_GAIN1, -1, $meq_slot, 1) $eq_mid_bandfx := _get_engine_par($ENGINE_PAR_GAIN2, -1, $meq_slot, 1) $eq_hi_bandfx := _get_engine_par($ENGINE_PAR_GAIN3, -1, $meq_slot, 1) $rev_onoff_bandfx := (_get_engine_par($ENGINE_PAR_SEND_EFFECT_BYPASS, -1, $reverb_slot, 0) + 1) mod 2 $cab_onoff_bandfx := (_get_engine_par($ENGINE_PAR_SEND_EFFECT_BYPASS, -1, $cab_slot, 1) + 1) mod 2 $eq_onoff_bandfx := (_get_engine_par($ENGINE_PAR_SEND_EFFECT_BYPASS, -1, $meq_slot, 1) + 1) mod 2 make_persistent($cab_type_bandfx) set_control_par_str(%bandfx_id[0], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[1], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[2], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[3], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[4], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[5], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[6], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[7], $CONTROL_PAR_TEXT, "AMOUNT") set_control_par_str(%bandfx_id[8], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[9], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[10], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[11], $CONTROL_PAR_TEXT, "AIR") set_control_par_str(%bandfx_id[12], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[13], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[14], $CONTROL_PAR_TEXT, "BASS") set_control_par_str(%bandfx_id[15], $CONTROL_PAR_TEXT, "MID") set_control_par_str(%bandfx_id[16], $CONTROL_PAR_TEXT, "TREBLE") set_control_par_str(%bandfx_id[31], $CONTROL_PAR_TEXT, "") set_control_par_str(%bandfx_id[32], $CONTROL_PAR_TEXT, "") add_menu_item ($cab_type_bandfx,"TWEED GREEN",0) add_menu_item ($cab_type_bandfx,"BRIT 60s",1) add_menu_item ($cab_type_bandfx,"CHIEF V-30",2) add_menu_item ($cab_type_bandfx,"CHIEF Back",3) add_menu_item ($cab_type_bandfx,"TWEED ALNICO",4) add_menu_item ($cab_type_bandfx,"TWEED FAR",5) add_menu_item ($cab_type_bandfx,"UK 70s",6) add_menu_item ($cab_type_bandfx,"UK 70s FAR",7) add_menu_item ($cab_type_bandfx,"BASS-WR",8) add_menu_item ($cab_type_bandfx,"BASS-WR HORN",9) add_menu_item ($cab_type_bandfx,"LESLIE",10) $count := 1 while ($count < 17) set_control_par(%bandfx_id[$count], $CONTROL_PAR_WIDTH, ($GRID_X * 1)) set_control_par(%bandfx_id[$count], $CONTROL_PAR_HEIGHT, ($GRID_Y * 1)) set_control_par(%bandfx_id[$count], $CONTROL_PAR_HIDE, $HIDE_PART_BG) set_control_par(%bandfx_id[$count], $CONTROL_PAR_TEXT_ALIGNMENT, 1) set_control_par(%bandfx_id[$count], $CONTROL_PAR_FONT_TYPE, $FONT_ID) inc($count) end while set_control_par(%bandfx_id[8], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par_str(%bandfx_id[0], $CONTROL_PAR_PICTURE, "pv_band_master_tab_animation") set_control_par_str(%bandfx_id[31], $CONTROL_PAR_PICTURE, "pv_band_master_fx_eq_bg") set_control_par_str(%bandfx_id[32], $CONTROL_PAR_PICTURE, "pv_band_master_fx_bg") $count := 17 while ($count < 19) set_control_par_str(%bandfx_id[$count], $CONTROL_PAR_PICTURE, "pv_band_knob_small") set_control_par(%bandfx_id[$count], $CONTROL_PAR_MOUSE_BEHAVIOUR, -500) inc($count) end while $count := 19 while ($count < 22) set_control_par_str(%bandfx_id[$count], $CONTROL_PAR_PICTURE, "pv_band_master_fx_eq_fader") set_control_par(%bandfx_id[$count], $CONTROL_PAR_MOUSE_BEHAVIOUR, -1000) inc($count) end while set_control_par(%bandfx_id[22], $CONTROL_PAR_VALUE, 1) $count := 22 while ($count < 25) set_control_par_str(%bandfx_id[$count], $CONTROL_PAR_PICTURE, "pv_vintage_drums_btn_trans") set_control_par(%bandfx_id[$count], $CONTROL_PAR_WIDTH, 51) set_control_par(%bandfx_id[$count], $CONTROL_PAR_HEIGHT, 31) set_control_par_str(%bandfx_id[$count], $CONTROL_PAR_TEXT, "") inc($count) end while $count := 25 while ($count < 28) set_control_par_str(%bandfx_id[$count], $CONTROL_PAR_PICTURE, "pv_synth_button_small") set_control_par(%bandfx_id[$count], $CONTROL_PAR_WIDTH, 25) set_control_par(%bandfx_id[$count], $CONTROL_PAR_HEIGHT, 25) set_control_par_str(%bandfx_id[$count], $CONTROL_PAR_TEXT, "") inc($count) end while set_control_par_str(%bandfx_id[29], $CONTROL_PAR_PICTURE, "pv_band_master_fx_rev_dropdown_1") set_control_par_str(%bandfx_id[30], $CONTROL_PAR_PICTURE, "pv_band_master_fx_rev_dropdown_2") set_control_par(%bandfx_id[29], $CONTROL_PAR_FONT_TYPE, $FONT_ID_2) set_control_par(%bandfx_id[30], $CONTROL_PAR_FONT_TYPE, $FONT_ID_2) _read_persistent_var($cab_type_bandfx) set_control_par_str(%bandfx_id[12], $CONTROL_PAR_PICTURE, "pv_global_cabinets") set_control_par(%bandfx_id[12], $CONTROL_PAR_PICTURE_STATE, $cab_type_bandfx) {Hide the Cabinet Elements} $count := 9 while ($count < 13) set_control_par(%bandfx_id[$count], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) inc($count) end while set_control_par(%bandfx_id[18], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[29], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) {Hide the EQ Elements} $count := 13 while ($count < 17) set_control_par(%bandfx_id[$count], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) inc($count) end while set_control_par(%bandfx_id[19], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[20], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[21], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[31], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) {Other} $count := 0 while ($count < $NUM_bandfx) if ($count # 28) set_control_par (%bandfx_id[$count],$CONTROL_PAR_POS_X,get_control_par(%bandfx_id[$count],$CONTROL_PAR_POS_X)... +$ROOT_X + ($x_grid_bandfx - 2)*$GRID_X + $x_px_bandfx) set_control_par (%bandfx_id[$count],$CONTROL_PAR_POS_Y,get_control_par(%bandfx_id[$count],$CONTROL_PAR_POS_Y)... +$ROOT_Y + ($y_grid_bandfx - 2)*$GRID_Y + $y_px_bandfx) end if inc($count) end while {Automation} set_control_par_str(get_ui_id($rev_onoff_bandfx),$CONTROL_PAR_AUTOMATION_NAME,"Reverb") set_control_par_str(get_ui_id($cab_onoff_bandfx),$CONTROL_PAR_AUTOMATION_NAME,"Cabinet") set_control_par_str(get_ui_id($eq_onoff_bandfx),$CONTROL_PAR_AUTOMATION_NAME,"EQ") set_control_par_str(get_ui_id($rev_amount_bandfx),$CONTROL_PAR_AUTOMATION_NAME,"Rv Amt") set_control_par_str(get_ui_id($cab_air_bandfx),$CONTROL_PAR_AUTOMATION_NAME,"Cb Air") set_control_par_str(get_ui_id($eq_lo_bandfx),$CONTROL_PAR_AUTOMATION_NAME,"Lo EQ") set_control_par_str(get_ui_id($eq_mid_bandfx),$CONTROL_PAR_AUTOMATION_NAME,"Mid EQ") set_control_par_str(get_ui_id($eq_hi_bandfx),$CONTROL_PAR_AUTOMATION_NAME,"Hi EQ") set_control_par_str(get_ui_id($rev_amount_bandfx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_SENDLEVEL_0, -1, $sends_slot, 1) & " dB") set_control_par_str(get_ui_id($cab_air_bandfx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_CB_AIR, -1, $cab_slot, 1) & " %") set_control_par_str(get_ui_id($eq_lo_bandfx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_GAIN1, -1, $meq_slot, 1) & " dB") set_control_par_str(get_ui_id($eq_mid_bandfx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_GAIN2, -1, $meq_slot, 1) & " dB") set_control_par_str(get_ui_id($eq_hi_bandfx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_GAIN3, -1, $meq_slot, 1) & " dB") {*** END CONTROL GROUP "BANDFX"} {Control Help} set_control_help($sound_instr,"Sound: Jumps through preset EQ settings specially tailored for each one of the four instrument types. Extreme left turns the EQ off.") set_control_help($vibrato_instr,"Vib Amt: Sets the vibrato amount (pre mapped to mod wheel).") set_control_help($speed_instr,"Vib Speed: Controls the vibrato speed.") set_control_help($vib_ster_instr,"Vib Stereo: Switches between volume (off) and pan (on) modulation.") set_control_help($noise_instr,"Noise: Adjusts the level of the release noise samples, i.e. the sound produced when releasing the keys.") set_control_help($saturate_fx,"Saturator: Controls the amount of saturation.") set_control_help($phaser_fx,"Phaser: Controls the level of the phaser signal.") set_control_help($del_time_fx,"Delay Time: Sets the amount of time between the original input and the delayed output signal.") set_control_help($del_amount_fx,"Delay Return: Sets the output volume of the delay send effect.") set_control_help($rev_bandfx, "Reverb: Displays the controls for the reverb effect.") set_control_help($cab_bandfx, "Cabinet: Displays the controls for the cabinet effect.") set_control_help($eq_bandfx, "EQ: Displays the controls for the master equalizer.") set_control_help($rev_onoff_bandfx, "Reverb On/Off: Turns the reverb effect on or off.") set_control_help($cab_onoff_bandfx, "Cabinet On/Off: Turns the cabinet effect on or off.") set_control_help($eq_onoff_bandfx, "EQ On/Off: Turns the master equalizer on or off.") set_control_help($rev_amount_bandfx, "Reverb Amount: Sets the send level of the reverb effect.") set_control_help($category_reverb, "Reverb IR Category: Select a category from which you can choose a specific impulse response from the second dropdown menu.") set_control_help($hall_reverb, "Concert Hall: Impulse responses in this category are capured from real spaces and represent a variety of large performance spaces.") set_control_help($cathedral_reverb, "Cathedral: A mix of real and modelled spaces that offer large and dense reverb tails.") set_control_help($club_reverb, "Club: Impulse responses in this category are capured from real spaces and represent a variety of small performance spaces.") set_control_help($room_reverb, "Room: Impulse responses in this category are capured from real spaces and cover a variety of smaller rooms.") set_control_help($l300_reverb, "L300: Impulse responses taken from the classic studio digital reverb.") set_control_help($plate_reverb, "Plate: Impulse responses from classic plate reverb effect units.") set_control_help($quadstick_reverb, "Quadstick: Impulse responses taken from the classic studio digital reverb.") set_control_help($brt7_reverb, "BRT 7: Impulse responses taken from the classic studio digital reverb.") set_control_help($cabinet_reverb, "Cabinet: Impulse responses of several cabinet types.") set_control_help($cab_air_bandfx,"Air: Controls the volume of the early reflections in the room response, adding space to the sound.") set_control_help($cab_type_bandfx,"Type: Selects the type of cabinet that is simulated.") set_control_help($eq_lo_bandfx, "Low EQ Gain: Controls the gain of the master output's lower frequencies.") set_control_help($eq_mid_bandfx, "Mid EQ Gain: Controls the gain of the master output's mid frequencies.") set_control_help($eq_hi_bandfx, "High EQ Gain: Controls the gain of the master output's higher frequencies.") if ($CREATE_AUTOMATION_ID = 1) set_control_par(get_ui_id($vib_ster_instr),$CONTROL_PAR_AUTOMATION_ID,8) set_control_par(get_ui_id($vibrato_instr),$CONTROL_PAR_AUTOMATION_ID,17) set_control_par(get_ui_id($speed_instr),$CONTROL_PAR_AUTOMATION_ID,18) set_control_par(get_ui_id($noise_instr),$CONTROL_PAR_AUTOMATION_ID,19) set_control_par(get_ui_id($sound_instr),$CONTROL_PAR_AUTOMATION_ID,0) set_control_par(get_ui_id($saturate_fx),$CONTROL_PAR_AUTOMATION_ID,1) set_control_par(get_ui_id($phaser_fx),$CONTROL_PAR_AUTOMATION_ID,2) set_control_par(get_ui_id($del_time_fx),$CONTROL_PAR_AUTOMATION_ID,20) set_control_par(get_ui_id($del_amount_fx),$CONTROL_PAR_AUTOMATION_ID,3) set_control_par(get_ui_id($rev_onoff_bandfx),$CONTROL_PAR_AUTOMATION_ID,12) set_control_par(get_ui_id($cab_onoff_bandfx),$CONTROL_PAR_AUTOMATION_ID,13) set_control_par(get_ui_id($eq_onoff_bandfx),$CONTROL_PAR_AUTOMATION_ID,14) set_control_par(get_ui_id($rev_amount_bandfx),$CONTROL_PAR_AUTOMATION_ID,4) set_control_par(get_ui_id($cab_air_bandfx),$CONTROL_PAR_AUTOMATION_ID,5) set_control_par(get_ui_id($eq_lo_bandfx),$CONTROL_PAR_AUTOMATION_ID,6) set_control_par(get_ui_id($eq_mid_bandfx),$CONTROL_PAR_AUTOMATION_ID,16) set_control_par(get_ui_id($eq_hi_bandfx),$CONTROL_PAR_AUTOMATION_ID,7) end if end on {*** CONTROL GROUP "INSTR" UI_CONTROL CALLBACKS} on ui_control ($vib_ster_instr) if ($vib_ster_instr = 1) $count := 0 while ($count < $NUM_GROUPS) _set_engine_par ($ENGINE_PAR_MOD_TARGET_INTENSITY, 0, $count, find_mod($count, "LFO_TRI"),... find_target($count, find_mod($count, "LFO_TRI"), "LFO_TRI_VOLUME")) _set_engine_par ($ENGINE_PAR_MOD_TARGET_INTENSITY, $vibrato_instr, $count, find_mod($count, "LFO_SINE"),... find_target($count, find_mod($count, "LFO_SINE"), "LFO_SINE_PAN")) inc($count) end while set_control_par_str(get_ui_id($vibrato_instr),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_MOD_TARGET_INTENSITY, 0,find_mod(0,"LFO_SINE"),... find_target(0,find_mod(0,"LFO_SINE"), "LFO_SINE_PAN")) & " %") else $count := 0 while ($count < $NUM_GROUPS) _set_engine_par ($ENGINE_PAR_MOD_TARGET_INTENSITY, $vibrato_instr, $count, find_mod($count, "LFO_TRI"),... find_target($count, find_mod($count, "LFO_TRI"), "LFO_TRI_VOLUME")) _set_engine_par ($ENGINE_PAR_MOD_TARGET_INTENSITY, 0, $count, find_mod($count, "LFO_SINE"),... find_target($count, find_mod($count, "LFO_SINE"), "LFO_SINE_PAN")) inc($count) end while set_control_par_str(get_ui_id($vibrato_instr),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_MOD_TARGET_INTENSITY, 0,find_mod(0,"LFO_TRI"),... find_target(0,find_mod(0,"LFO_TRI"), "LFO_TRI_VOLUME")) & " %") end if end on on ui_control ($vibrato_instr) if ($vib_ster_instr = 1) $count := 0 while ($count < $NUM_GROUPS) _set_engine_par ($ENGINE_PAR_MOD_TARGET_INTENSITY, 0, $count, find_mod($count, "LFO_TRI"),... find_target($count, find_mod($count, "LFO_TRI"), "LFO_TRI_VOLUME")) _set_engine_par ($ENGINE_PAR_MOD_TARGET_INTENSITY, $vibrato_instr, $count, find_mod($count, "LFO_SINE"),... find_target($count, find_mod($count, "LFO_SINE"), "LFO_SINE_PAN")) inc($count) end while else $count := 0 while ($count < $NUM_GROUPS) _set_engine_par ($ENGINE_PAR_MOD_TARGET_INTENSITY, $vibrato_instr, $count, find_mod($count, "LFO_TRI"),... find_target($count, find_mod($count, "LFO_TRI"), "LFO_TRI_VOLUME")) _set_engine_par ($ENGINE_PAR_MOD_TARGET_INTENSITY, 0, $count, find_mod($count, "LFO_SINE"),... find_target($count, find_mod($count, "LFO_SINE"), "LFO_SINE_PAN")) inc($count) end while end if end on on ui_control ($speed_instr) $count := 0 while ($count < $NUM_GROUPS) _set_engine_par ($ENGINE_PAR_INTMOD_FREQUENCY, $speed_instr, $count, find_mod($count, "LFO_SINE"), -1) _set_engine_par ($ENGINE_PAR_INTMOD_FREQUENCY, $speed_instr, $count, find_mod($count, "LFO_TRI"), -1) inc($count) end while set_control_par_str(get_ui_id($speed_instr),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_INTMOD_FREQUENCY, 0, find_mod(0, "LFO_SINE"), -1) & " Hz") end on on ui_control ($noise_instr) _set_engine_par($ENGINE_PAR_VOLUME, $noise_instr, $rel_noise_grp_idx, -1, -1) set_control_par_str(get_ui_id($noise_instr),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_VOLUME, $rel_noise_grp_idx, -1, -1) & " dB") end on on ui_control ($sound_instr) _set_engine_par ($ENGINE_PAR_FREQ1,%pickup_settings[$sound_instr*9],-1,$eq_slot,1) _set_engine_par ($ENGINE_PAR_BW1,%pickup_settings[$sound_instr*9+1],-1,$eq_slot,1) _set_engine_par ($ENGINE_PAR_GAIN1,%pickup_settings[$sound_instr*9+2],-1,$eq_slot,1) _set_engine_par ($ENGINE_PAR_FREQ2,%pickup_settings[$sound_instr*9+3],-1,$eq_slot,1) _set_engine_par ($ENGINE_PAR_BW2,%pickup_settings[$sound_instr*9+4],-1,$eq_slot,1) _set_engine_par ($ENGINE_PAR_GAIN2,%pickup_settings[$sound_instr*9+5],-1,$eq_slot,1) _set_engine_par ($ENGINE_PAR_FREQ3,%pickup_settings[$sound_instr*9+6],-1,$eq_slot,1) _set_engine_par ($ENGINE_PAR_BW3,%pickup_settings[$sound_instr*9+7],-1,$eq_slot,1) _set_engine_par ($ENGINE_PAR_GAIN3,%pickup_settings[$sound_instr*9+8],-1,$eq_slot,1) inc($count) if ($sound_instr = 0) set_text($lb_sound_instr, "OFF") set_control_par_str(get_ui_id($sound_instr),$CONTROL_PAR_LABEL,"Off") else set_text($lb_sound_instr, $sound_instr) set_control_par_str(get_ui_id($sound_instr),$CONTROL_PAR_LABEL,$sound_instr) end if $last_time := $ENGINE_UPTIME wait($wait_time * 1000) if($ENGINE_UPTIME - $last_time > $wait_time -5) set_text ($lb_sound_instr,"SOUND") end if end on {*** END CONTROL GROUP "INSTR" UI_CONTROL CALLBACKS} {*** CONTROL GROUP "FX" UI_CONTROL CALLBACKS} on ui_control ($saturate_fx) _set_engine_par ($ENGINE_PAR_SHAPE, $saturate_fx, -1, $saturate_slot, 1) _set_engine_par ($ENGINE_PAR_INSERT_EFFECT_OUTPUT_GAIN, 650000 - ($saturate_fx / 2), -1, $saturate_slot, 1) set_control_par_str(get_ui_id($saturate_fx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_SHAPE, -1, $saturate_slot, 1) & " %") end on on ui_control ($phaser_fx) _set_engine_par ($ENGINE_PAR_SEND_EFFECT_OUTPUT_GAIN, $phaser_fx, -1, $phaser_slot, 1) _set_engine_par ($ENGINE_PAR_SEND_EFFECT_DRY_LEVEL, 400000 - ($phaser_fx / 10), -1, $phaser_slot, 1) set_control_par_str(get_ui_id($phaser_fx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_SEND_EFFECT_OUTPUT_GAIN, -1, $phaser_slot, 1) & " dB") end on on ui_control ($del_time_fx) _set_engine_par ($ENGINE_PAR_DL_TIME, $del_time_fx, -1, $delay_slot, 0) set_control_par_str(get_ui_id($del_time_fx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_DL_TIME, -1, $delay_slot, 0) & " 16th") end on on ui_control ($del_amount_fx) _set_engine_par ($ENGINE_PAR_SENDLEVEL_1, $del_amount_fx, -1, $sends_slot, 1) set_control_par_str(get_ui_id($del_amount_fx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_SENDLEVEL_1, -1, $sends_slot, 1) & " dB") end on {*** END CONTROL GROUP "FX" UI_CONTROL CALLBACKS} {*** CONTROL GROUP "BANDFX" UI_CONTROL CALLBACKS} on ui_control ($rev_bandfx) if ($rev_bandfx = 0) $rev_bandfx := 1 else $cab_bandfx := 0 $eq_bandfx := 0 $count := 5 while ($count < 9) set_control_par(%bandfx_id[$count], $CONTROL_PAR_HIDE, $HIDE_PART_BG) set_control_par(%bandfx_id[$count+4], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[$count+8], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) inc($count) end while set_control_par(%bandfx_id[8], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par(%bandfx_id[17], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par(%bandfx_id[30], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par(%bandfx_id[32], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par(%bandfx_id[18], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[29], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[19], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[20], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[21], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[31], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[0], $CONTROL_PAR_PICTURE_STATE, 0) $count := 0 while ($count < 9) if ($count = $category_reverb) set_control_par(%subcat_menu_id[$count],$CONTROL_PAR_HIDE,$HIDE_PART_NOTHING) else set_control_par(%subcat_menu_id[$count],$CONTROL_PAR_HIDE,$HIDE_WHOLE_CONTROL) end if inc ($count) end while end if end on on ui_control ($cab_bandfx) if ($cab_bandfx = 0) $cab_bandfx := 1 else $rev_bandfx := 0 $eq_bandfx := 0 $count := 5 while ($count < 9) set_control_par(%bandfx_id[$count], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[$count+4], $CONTROL_PAR_HIDE, $HIDE_PART_BG) set_control_par(%bandfx_id[$count+8], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) inc($count) end while set_control_par(%bandfx_id[12], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par(%bandfx_id[17], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[30], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[32], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par(%bandfx_id[18], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par(%bandfx_id[29], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par(%bandfx_id[19], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[20], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[21], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[31], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[0], $CONTROL_PAR_PICTURE_STATE, 1) $count := 0 while ($count < 9) set_control_par(%subcat_menu_id[$count],$CONTROL_PAR_HIDE,$HIDE_WHOLE_CONTROL) inc ($count) end while end if end on on ui_control ($eq_bandfx) if ($eq_bandfx = 0) $eq_bandfx := 1 else $rev_bandfx := 0 $cab_bandfx := 0 $count := 5 while ($count < 9) set_control_par(%bandfx_id[$count], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[$count+4], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[$count+8], $CONTROL_PAR_HIDE, $HIDE_PART_BG) inc($count) end while set_control_par(%bandfx_id[17], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[30], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[32], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[18], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[29], $CONTROL_PAR_HIDE, $HIDE_WHOLE_CONTROL) set_control_par(%bandfx_id[19], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par(%bandfx_id[20], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par(%bandfx_id[21], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par(%bandfx_id[31], $CONTROL_PAR_HIDE, $HIDE_PART_NOTHING) set_control_par(%bandfx_id[0], $CONTROL_PAR_PICTURE_STATE, 2) $count := 0 while ($count < 9) set_control_par(%subcat_menu_id[$count],$CONTROL_PAR_HIDE,$HIDE_WHOLE_CONTROL) inc ($count) end while end if end on {reverb functionality} on ui_control ($rev_onoff_bandfx) _set_engine_par($ENGINE_PAR_SEND_EFFECT_BYPASS, (($rev_onoff_bandfx + 1) mod 2), -1, $reverb_slot, 0) end on on ui_control ($category_reverb) $count := 0 while ($count < 9) if ($count = $category_reverb) set_control_par(%subcat_menu_id[$count],$CONTROL_PAR_HIDE,$HIDE_PART_NOTHING) else set_control_par(%subcat_menu_id[$count],$CONTROL_PAR_HIDE,$HIDE_WHOLE_CONTROL) end if inc ($count) end while set_control_par(get_ui_id($image_reverb),$CONTROL_PAR_PICTURE_STATE,$category_reverb) _load_ir_sample(_get_folder($GET_FOLDER_FACTORY_DIR)&... !ir_path[%offset_reverb[$category_reverb]+get_control_par... (%subcat_menu_id[$category_reverb],$CONTROL_PAR_VALUE)],$reverb_slot,0) {change 0 to 1 if reverb is on insert effect} end on on ui_control ($hall_reverb) _load_ir_sample(_get_folder($GET_FOLDER_FACTORY_DIR)... & !ir_path[$hall_reverb],$reverb_slot,0) end on on ui_control ($cathedral_reverb) _load_ir_sample(_get_folder($GET_FOLDER_FACTORY_DIR)... & !ir_path[$cathedral_reverb],$reverb_slot,0) end on on ui_control ($club_reverb) _load_ir_sample(_get_folder($GET_FOLDER_FACTORY_DIR)... & !ir_path[$club_reverb],$reverb_slot,0) end on on ui_control ($room_reverb) _load_ir_sample(_get_folder($GET_FOLDER_FACTORY_DIR)... & !ir_path[$room_reverb],$reverb_slot,0) end on on ui_control ($l300_reverb) _load_ir_sample(_get_folder($GET_FOLDER_FACTORY_DIR)... & !ir_path[$l300_reverb],$reverb_slot,0) end on on ui_control ($quadstick_reverb) _load_ir_sample(_get_folder($GET_FOLDER_FACTORY_DIR)... & !ir_path[$quadstick_reverb],$reverb_slot,0) end on on ui_control ($brt7_reverb) _load_ir_sample(_get_folder($GET_FOLDER_FACTORY_DIR)... & !ir_path[$brt7_reverb],$reverb_slot,0) end on on ui_control ($plate_reverb) _load_ir_sample(_get_folder($GET_FOLDER_FACTORY_DIR)... & !ir_path[$plate_reverb],$reverb_slot,0) end on on ui_control ($cabinet_reverb) _load_ir_sample(_get_folder($GET_FOLDER_FACTORY_DIR)... & !ir_path[$cabinet_reverb],$reverb_slot,0) end on on ui_control ($rev_amount_bandfx) set_engine_par ($ENGINE_PAR_SENDLEVEL_0, $rev_amount_bandfx, -1, $sends_slot, 1) set_control_par_str(get_ui_id($rev_amount_bandfx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_SENDLEVEL_0, -1, $sends_slot, 1) & " dB") end on {cab functionality} on ui_control ($cab_onoff_bandfx) set_engine_par ($ENGINE_PAR_EFFECT_BYPASS, (($cab_onoff_bandfx + 1) mod 2), -1, $cab_slot, 1) end on on ui_control ($cab_type_bandfx) set_engine_par($ENGINE_PAR_CABINET_TYPE, $cab_type_bandfx, -1, $cab_slot, 1) set_control_par(%bandfx_id[12], $CONTROL_PAR_PICTURE_STATE, $cab_type_bandfx) end on on ui_control ($cab_air_bandfx) set_engine_par ($ENGINE_PAR_CB_AIR,$cab_air_bandfx,-1,$cab_slot,1) set_control_par_str(get_ui_id($cab_air_bandfx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_CB_AIR, -1, $cab_slot, 1) & " %") end on {eq functionality} on ui_control ($eq_onoff_bandfx) set_engine_par ($ENGINE_PAR_EFFECT_BYPASS, (($eq_onoff_bandfx + 1) mod 2), -1, $meq_slot, 1) end on on ui_control ($eq_lo_bandfx) set_engine_par($ENGINE_PAR_GAIN1, $eq_lo_bandfx, -1, $meq_slot, 1) set_control_par_str(get_ui_id($eq_lo_bandfx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_GAIN1, -1, $meq_slot, 1) & " dB") end on on ui_control ($eq_mid_bandfx) set_engine_par($ENGINE_PAR_GAIN2, $eq_mid_bandfx, -1, $meq_slot, 1) set_control_par_str(get_ui_id($eq_mid_bandfx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_GAIN2, -1, $meq_slot, 1) & " dB") end on on ui_control ($eq_hi_bandfx) set_engine_par($ENGINE_PAR_GAIN3, $eq_hi_bandfx, -1, $meq_slot, 1) set_control_par_str(get_ui_id($eq_hi_bandfx),$CONTROL_PAR_LABEL,get_engine_par_disp($ENGINE_PAR_GAIN3, -1, $meq_slot, 1) & " dB") end on {*** END CONTROL GROUP "BANDFX" UI_CONTROL CALLBACKS}