on init make_perfview declare $count declare %RRwidth[4096] declare ui_label $label(1,1) declare ui_menu $group_menu declare ui_knob $Volume(0,1000000,1) declare ui_knob $Pan(0,1000000,1) declare ui_knob $Tune(0,1000000,1) declare ui_knob $RR (1,16,1) declare ui_button $ResetSel declare ui_button $ResetAll while ($count < $NUM_GROUPS) add_menu_item ($group_menu,"#" & $count + 1 & " - " & group_name($count),$count) %RRwidth[$count] := 1 inc($count) end while move_control($label,1,1) move_control($group_menu,1,2) move_control($Volume,2,1) move_control($Pan,3,1) move_control($Tune,4,1) move_control($ResetSel,6,1) move_control($ResetAll,6,2) make_persistent(%RRwidth) _read_persistent_var(%RRwidth) set_knob_unit($Volume,$KNOB_UNIT_DB) set_knob_unit($Tune,$KNOB_UNIT_ST) set_knob_defval($Volume,631000) set_knob_defval($Pan,500000) set_knob_defval($Tune,500000) $Volume := _get_engine_par($ENGINE_PAR_VOLUME,$group_menu,-1,-1) $Pan := _get_engine_par($ENGINE_PAR_PAN,$group_menu,-1,-1) $Tune := _get_engine_par($ENGINE_PAR_TUNE,$group_menu,-1,-1) set_knob_label($Volume,_get_engine_par_disp($ENGINE_PAR_VOLUME,$group_menu,-1,-1)) set_knob_label($Pan,_get_engine_par_disp($ENGINE_PAR_PAN,$group_menu,-1,-1)) set_knob_label($Tune,_get_engine_par_disp($ENGINE_PAR_TUNE,$group_menu,-1,-1)) set_text($label,"Select Group:") set_text($ResetSel,"Reset Selected") set_text($ResetAll,"Reset All Groups") set_text($RR,"RR Width") if (%RRwidth[$group_menu] = -1) set_knob_label($RR," RR") $RR := %RRwidth[$group_menu] else $RR := %RRwidth[$group_menu] set_knob_label($RR," " & %RRwidth[$group_menu]) end if message("") end on on ui_control($Volume) if (%RRwidth[$group_menu] # -1) $count := $group_menu while ($count < $group_menu + %RRwidth[$group_menu]) _set_engine_par($ENGINE_PAR_VOLUME,$Volume,$count,-1,-1) set_knob_label($Volume,_get_engine_par_disp($ENGINE_PAR_VOLUME,$count,-1,-1)) inc($count) end while else _set_engine_par($ENGINE_PAR_VOLUME,$Volume,$group_menu,-1,-1) set_knob_label($Volume,_get_engine_par_disp($ENGINE_PAR_VOLUME,$group_menu,-1,-1)) end if end on on ui_control($Pan) if (%RRwidth[$group_menu] # -1) $count := $group_menu while ($count < $group_menu + %RRwidth[$group_menu]) _set_engine_par($ENGINE_PAR_PAN,$Pan,$count,-1,-1) set_knob_label($Pan,_get_engine_par_disp($ENGINE_PAR_PAN,$count,-1,-1)) inc($count) end while else _set_engine_par($ENGINE_PAR_PAN,$Pan,$group_menu,-1,-1) set_knob_label($Pan,_get_engine_par_disp($ENGINE_PAR_PAN,$group_menu,-1,-1)) end if end on on ui_control($Tune) if (%RRwidth[$group_menu] # -1) $count := $group_menu while ($count < $group_menu + %RRwidth[$group_menu]) _set_engine_par($ENGINE_PAR_TUNE,$Tune,$count,-1,-1) set_knob_label($Tune,_get_engine_par_disp($ENGINE_PAR_TUNE,$count,-1,-1)) inc($count) end while else _set_engine_par($ENGINE_PAR_TUNE,$Tune,$group_menu,-1,-1) set_knob_label($Tune,_get_engine_par_disp($ENGINE_PAR_TUNE,$group_menu,-1,-1)) end if end on on ui_control($RR) if (%RRwidth[$group_menu] = -1) set_knob_label($RR," RR") $RR := %RRwidth[$group_menu] else set_knob_label($RR," " & $RR) %RRwidth[$group_menu] := $RR $count := $group_menu + 1 while ($count < 4096) if ($count < $group_menu + $RR) %RRwidth[$count] := -1 else %RRwidth[$count] := 1 end if inc($count) end while end if message("") end on on ui_control($group_menu) $Volume := _get_engine_par($ENGINE_PAR_VOLUME,$group_menu,-1,-1) $Pan := _get_engine_par($ENGINE_PAR_PAN,$group_menu,-1,-1) $Tune := _get_engine_par($ENGINE_PAR_TUNE,$group_menu,-1,-1) set_knob_label($Volume,_get_engine_par_disp($ENGINE_PAR_VOLUME,$group_menu,-1,-1)) set_knob_label($Pan,_get_engine_par_disp($ENGINE_PAR_PAN,$group_menu,-1,-1)) set_knob_label($Tune,_get_engine_par_disp($ENGINE_PAR_TUNE,$group_menu,-1,-1)) if (%RRwidth[$group_menu] = -1) set_knob_label($RR," RR") $RR := %RRwidth[$group_menu] else $RR := %RRwidth[$group_menu] set_knob_label($RR," " & %RRwidth[$group_menu]) end if message("") end on on ui_control($ResetSel) _set_engine_par($ENGINE_PAR_VOLUME,631000,$group_menu,-1,-1) _set_engine_par($ENGINE_PAR_PAN,500000,$group_menu,-1,-1) _set_engine_par($ENGINE_PAR_TUNE,500000,$group_menu,-1,-1) $Volume := _get_engine_par($ENGINE_PAR_VOLUME,$group_menu,-1,-1) $Pan := _get_engine_par($ENGINE_PAR_PAN,$group_menu,-1,-1) $Tune := _get_engine_par($ENGINE_PAR_TUNE,$group_menu,-1,-1) set_knob_label($Volume,_get_engine_par_disp($ENGINE_PAR_VOLUME,$group_menu,-1,-1)) set_knob_label($Pan,_get_engine_par_disp($ENGINE_PAR_PAN,$group_menu,-1,-1)) set_knob_label($Tune,_get_engine_par_disp($ENGINE_PAR_TUNE,$group_menu,-1,-1)) wait(200000) $ResetSel := 0 end on on ui_control($ResetAll) $count := 0 while ($count < $NUM_GROUPS) _set_engine_par($ENGINE_PAR_VOLUME,631000,$count,-1,-1) _set_engine_par($ENGINE_PAR_PAN,500000,$count,-1,-1) _set_engine_par($ENGINE_PAR_TUNE,500000,$count,-1,-1) inc($count) end while $group_menu := 0 $Volume := _get_engine_par($ENGINE_PAR_VOLUME,$group_menu,-1,-1) $Pan := _get_engine_par($ENGINE_PAR_PAN,$group_menu,-1,-1) $Tune := _get_engine_par($ENGINE_PAR_TUNE,$group_menu,-1,-1) set_knob_label($Volume,_get_engine_par_disp($ENGINE_PAR_VOLUME,$group_menu,-1,-1)) set_knob_label($Pan,_get_engine_par_disp($ENGINE_PAR_PAN,$group_menu,-1,-1)) set_knob_label($Tune,_get_engine_par_disp($ENGINE_PAR_TUNE,$group_menu,-1,-1)) wait(200000) $ResetAll := 0 end on