2 //To run the synth, click anywhere within the parenthesis above and press "ctrl - enter" or "cmd - return".
3 //A guide to using the instrument is available by clicking on the "i" button in the bottom right corner of the GUI.
4 //Several lines down, where it says "//VARIABLES YOU MAY WISH TO CHANGE", are variables that you can change for various things,
5 //including key codes for keyboard functions.
7 //It is recommended to reboot the interpreter in the "Language" toolbar, or by hightlighting - (thisProcess.platform.recompile);
8 //and pressing "ctrl - enter" or "cmd - return", before each server boot. Rebooting the interpreter is not needed to
9 //evaluate the code below if the server is booted.
11 //You can program/make a song by using the "timewavesynth8script.scd" file
13 //This synth is compatible with the Korg NanoKontrol 2
15 s.options.memSize = 2097152/2;
21 var point, w, view, view2,
22 vol = 0.02,mute1,mute2,mute3,mute4,mute5,mute6,mute7,mute8,muteall,unmuteall,
23 g1,g2,g6,g8,g33,g48,g64,g72,g88,gm,ngm1,ngm2,ngm6,set1,set2,menu1,menu2,
24 ts,sts,str,spaceb,b1,b2,b3,b4,button,button1,info,
25 n1,n2,n3,n4,n5,n6,n7,n8,keycodeb,
26 f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12;
29 //VARIABLES YOU MAY WISH TO CHANGE
32 //note A tuning frequency in hz
34 ~tuning_frequency = 432; //default 432 hz
36 ~freqmap = (i = ~tuning_frequency / (2 ** (69 / 12)); a = (-1); b = (-1); Array.fill(128, {i * (2 ** (((a=a+1) / 12).trunc)) * ( (2 ** (12.reciprocal)) ** ((b=b+1) % 12));}));/*~freqmap = (i = 8.0271480262684/*-0.0000000000024*/; ~stepratio = 1.0594630943593; Array.fill(128, { i = i*~stepratio;}));*/
39 //number of KW(King Wen) sequences in a timewave half-cycle (or amplitude x2)
41 ~synthdefnum = 12; //default 12
44 //timewave starting base (lowest) frequency
46 x = 432; y = 432; ~basefreqmap = Array.fill(32, {x=x/1.0835058821738}).reverse++[432]++Array.fill(25, {y=y*1.0835058821738}); //create basefreqmap array
48 ~base_frequency = ~basefreqmap.at(8); //default 8 (63.027950580203). replace "~basefreqmap.at(#)" for custom value.
51 //starting synthdef setting
53 if((~kws_setting == nil) or: (~ratio_setting == nil), {
55 ~kws_setting = 1; //default type of King Wen sequence interpretation
57 ~ratio_setting = "psine1"; //default ratio setting for synthdef
61 //low-pass filter settings
63 if(~low_pass_filter_on == nil, {~low_pass_filter_on = 1}); //set starting low-pass filter on/off. 1 means on - switch to 0 for off.
64 ~default_low_pass_filter_freq_limit = 1468;
65 if(~low_pass_filter_set_value == nil, {~low_pass_filter_freq_limit = ~default_low_pass_filter_freq_limit; //frequency limit for low-pass filter in synthdefs. default is 1468.
67 ~lpfilter_rq_ratio = 295.57086653808;
70 //default sendreply toggle
72 if(~sendreplysynthdef_on == nil, {~sendreplysynthdef_on = 0; //switch for mid-timewave sequence events. 0 is off, 1 is on. default is 0
74 if(~sendreplyfunc_choose == nil, {~sendreplyfunc_choose = 0; //switch for specific mid-timewave sequence events function. default is 0
76 if(~sendreplyfuncswitch == nil, {~sendreplyfuncswitch = 1; //1 is random western scale note change per timewave half-cycle, 2 is eastern scale. default is 1
78 if(~sendreply_period == nil, {~sendreply_period = 1; //default is 1. this determines when sendreply triggers for the "automate" function. 1 is in 1 full timewave cycle, 0.5 is in 1/2 timewave cycle, 1.5 is 1 1/2 cycles, 2 is in 2 cycles, etc.
84 ~vol_default = 0.012; //default 0.012
85 if(~vol == nil, {~vol = ~vol_default});
86 12.do(x = 0; {("vol"++(x=x+1)).asSymbol.envirPut(~vol)});
89 //Key codes for keyboard functions - either unicode or keycode. To find key codes, see below:
91 ~rightarrow_keycode = 65363; //next note change increase
92 ~leftarrow_keycode = 65361; //next note change decrease
93 ~uparrow_keycode = 65362; //change synth up
94 ~downarrow_keycode = 65364; //change synth down
96 ~rightarrow_keycode1 = 114; //next note change increase (old version - may not work)
97 ~leftarrow_keycode1 = 113; //next note change decrease (old version - may not work)
98 ~uparrow_keycode1 = 111; //change synth up (old version - may not work)
99 ~downarrow_keycode1 = 116; //change synth down (old version - may not work)
101 ~enter_unicode = 13; //
102 ~s_unicode = 115; //start synth
103 ~m_unicode = 109; //mute/unmute all synths
104 ~r_unicode = 114; //routine/loop function
106 ~t_unicode = 116; //timer function
107 ~c_unicode = 99; //copy function
108 ~i_unicode = 105; //change synth up
109 ~k_unicode = 107; //change synth down
110 ~j_unicode = 106; //next note change decrease
111 ~l_unicode = 108; //next note change increase
112 ~spacebar_unicode = 32; //pause all synths
113 ~one_unicode = 49; //choose synth 1
114 ~two_unicode = 50; //choose synth 2
115 ~three_unicode = 51; //choose synth 3
116 ~four_unicode = 52; //choose synth 4
117 ~five_unicode = 53; //choose synth 5
118 ~six_unicode = 54; //choose synth 6
119 ~seven_unicode = 55; //choose synth 7
120 ~eight_unicode = 56; //choose synth 8
121 ~nine_unicode = 57; //choose synth 9
122 ~ten_unicode = 48; //choose synth 10
123 ~eleven_unicode = 45; //choose synth 11
124 ~twelve_unicode = 61; //choose synth 12
125 ~escape_unicode = 27; //escape function
128 //To find key codes in post window... Hightlight the function and its parenthesis in red below,
129 //and press "ctrl - enter" or "cmd - return" - then a small window called "test" will pop up...
130 //Press the "type" button inside of the window, then press anywhere on the keyboard to find
131 //the key codes in the right-hand side post window. Layout: [unicode, keycode, modifiers]. It is either a unicode
132 //or a keycode. Do not delete the /* and */ characters, or else the
133 //program will not run.
138 var win = Window(\test, Rect(10, 100, 100, 50)),
139 btn = Button(win, Rect(5, 5, 90, 40)).states_([["type"]]);
141 { arg view, char, modifiers, unicode, keycode;
142 ["unicode:"+unicode, "keycode:"+keycode, "modifiers:"+modifiers].postln;
150 //gui set frequency ranges - currently set at the lowest and highest notes on a 128 key range using 432 hz A tuning
151 //you can change the tuning near top
152 //to insert custom ranges, replace "~freqmap.at()" with a hz frequency
154 ~outmin1 = ~freqmap.at(0); // 8.0271480262684 hz //base frequency of upper set
155 ~outmax1 = ~freqmap.at(127); // 12315.783879572 hz //high frequency of upper set
156 ~outmin2 = ~freqmap.at(0)*8; // (8.0271480262684)*8 hz //base frequency of lower set
157 ~outmax2 = ~freqmap.at(127)/8; // (12315.783879572)/8 hz; //high frequency of lower set
165 //increase or decrease magnitude of second and third harmonics for synthdefs and synth functions (not recommend changing if uncertain of effects)
169 ~first_harmonic = 1; //1
170 ~second_harmonic = 2; //2
171 ~third_harmonic = 6; //6
181 ~fth = 1.4142135623729; //default kws binary interval
182 ~bi = ~fth; //~bi = "binary interval" - intverval of key change to a hexagram line's opposite in King Wen sequence
183 ~stepratio = 1.0594630943593;
184 ~nval = 1.0355417528;
186 ~n9 = 1.080059789899;
187 ~n18 = 1.0392592260319;
188 ~n27 = 1.0260044847071;
189 ~n36 = 1.0194406437022;
190 ~n45 = 1.0155225125043;
191 ~n54 = 1.012918794725;
192 ~n63 = 1.0110630844869;
193 ~n72 = 1.0096735332285;
194 ~gm = 1.6180339887499; //phi (golden mean), scaled on 1 key change per King Wen sequence
195 ~gm2 = 1.2720196495141;
196 ~gm6 = 1.0835058821738;
197 ~ngm1 = 1.0549232131786; //phi (golden mean), scaled on 9 key changes per King Wen sequence
198 ~ngm2 = 1.0270945492887;
199 ~ngm6 = 1.0089511542031;
200 ~nngm1 = 1.0075472729363; //phi (golden mean), scaled on 64 key changes per King Wen sequence
201 ~nngm2 = 1.0037665430449;
202 ~nngm6 = 1.0012539413222;
203 ~h1 = 11.10101010101; //based on 19.47:360, scaled on 1 key change per King Wen sequence
204 ~h2 = 4.2999982083345;
205 ~h6 = 1.6261331058274;
206 ~nh1 = 1.3828361607663; //based on 19.47:360, scaled on 9 key changes per King Wen sequence
207 ~nh2 = 1.1759405430404;
208 ~nh6 = 1.0555086286213;
209 ~nnh1 = 1.0466365180627; //based on 19.47:360, scaled on 64 key changes per King Wen sequence
210 ~nnh2 = 1.0230525490231;
211 ~nnh6 = 1.0076258811195;
214 //edit SAVED s1-s8 frequencies/chords. Replace any "[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]" with desired frequencies.
215 //Example: [~f1=31.385685128991,~f2=86.222407114322,~f3=229.95963599755,~f4=841.97361403235,~f5=894.01606840275,~f6=38.068730542463,~f7=80.91428965114,~f8=554.92014995488]
216 //You can find frequencies in the "copy" section of GUI under "saved open/flow 1-8 frequencies:" or "saved slide 1-8 frequencies:".
217 //Remove both the "/*" and "*/" around the code to make evaluable. Put them back to make it unevaluable.
221 8.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ].at(x-1))});
222 8.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ].at(x-1))});
223 8.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ].at(x-1))});
224 8.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ].at(x-1))});
225 8.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ].at(x-1))});
226 8.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ].at(x-1))});
227 8.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ].at(x-1))});
228 8.do(x = 0; {("fp"++(x=x+1)++"h").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ].at(x-1))});
233 //edit STARTING frequencies/chord (not saved s1-s8 frequencies/chords). Replace "[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]" with starting frequencies.
234 //Example: [~f1=31.385685128991,~f2=86.222407114322,~f3=229.95963599755,~f4=841.97361403235,~f5=894.01606840275,~f6=38.068730542463,~f7=80.91428965114,~f8=554.92014995488]
235 //You can find frequencies in the "copy" section of GUI under "current chord/frequencies".
236 //Remove both the "/*" and "*/" around the code to make evaluable. Put them back to make it unevaluable again.
240 8.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut(
242 [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]
248 //^Imoprtant note: "edit STARTING frequencies/chord" must be placed after "edit SAVED frequencies/chords" in code in order for it to work correctly
251 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
254 //default starting notes
256 if(([f1,f2,f3,f4,f5,f6,f7,f8] == [nil,nil,nil,nil,nil,nil,nil,nil]), {
257 #f1,f2,f3,f4,f5,f6,f7,f8 = [
258 (~freqmap.at(127)/8).rand,
259 (~freqmap.at(127)/8).rand,
260 (~freqmap.at(127)/8).rand,
261 (~freqmap.at(127)/8).rand,
262 (~freqmap.at(127)/8).rand,
263 (~freqmap.at(127)/8).rand,
264 (~freqmap.at(127)/8).rand,
265 (~freqmap.at(127)/8).rand
269 if(([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil]), {8.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut([f1,f2,f3,f4,f5,f6,f7,f8].at(x-1))});});
271 if([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {12.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))});});
272 if([~fp1b,~fp2b,~fp3b,~fp4b,~fp5b,~fp6b,~fp7b,~fp8b,~fp9b,~fp10b,~fp11b,~fp12b] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {12.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))});});
273 if([~fp1c,~fp2c,~fp3c,~fp4c,~fp5c,~fp6c,~fp7c,~fp8c,~fp9c,~fp10c,~fp11c,~fp12c] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {12.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))});});
274 if([~fp1d,~fp2d,~fp3d,~fp4d,~fp5d,~fp6d,~fp7d,~fp8d,~fp9d,~fp10d,~fp11d,~fp12d] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {12.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))});});
275 if([~fp1e,~fp2e,~fp3e,~fp4e,~fp5e,~fp6e,~fp7e,~fp8e,~fp9e,~fp10e,~fp11e,~fp12e] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {12.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))});});
276 if([~fp1f,~fp2f,~fp3f,~fp4f,~fp5f,~fp6f,~fp7f,~fp8f,~fp9f,~fp10f,~fp11f,~fp12f] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {12.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))});});
277 if([~fp1g,~fp2g,~fp3g,~fp4g,~fp5g,~fp6g,~fp7g,~fp8g,~fp9g,~fp10g,~fp11g,~fp12g] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))});});
278 if([~fp1h,~fp2h,~fp3h,~fp4h,~fp5h,~fp6h,~fp7h,~fp8h,~fp9h,~fp10h,~fp11h,~fp12h] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {12.do(x = 0; {("fp"++(x=x+1)++"h").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))});});
280 12.do(x = 0; {("u"++(x=x+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(x-1))});
281 12.do(x = 0; {("u"++(x=x+1)++"b").asSymbol.envirPut([~fp1b,~fp2b,~fp3b,~fp4b,~fp5b,~fp6b,~fp7b,~fp8b,~fp9b,~fp10b,~fp11b,~fp12b].at(x-1))});
282 12.do(x = 0; {("u"++(x=x+1)++"c").asSymbol.envirPut([~fp1c,~fp2c,~fp3c,~fp4c,~fp5c,~fp6c,~fp7c,~fp8c,~fp9c,~fp10c,~fp11c,~fp12c].at(x-1))});
283 12.do(x = 0; {("u"++(x=x+1)++"d").asSymbol.envirPut([~fp1d,~fp2d,~fp3d,~fp4d,~fp5d,~fp6d,~fp7d,~fp8d,~fp9d,~fp10d,~fp11d,~fp12d].at(x-1))});
284 12.do(x = 0; {("u"++(x=x+1)++"e").asSymbol.envirPut([~fp1e,~fp2e,~fp3e,~fp4e,~fp5e,~fp6e,~fp7e,~fp8e,~fp9e,~fp10e,~fp11e,~fp12e].at(x-1))});
285 12.do(x = 0; {("u"++(x=x+1)++"f").asSymbol.envirPut([~fp1f,~fp2f,~fp3f,~fp4f,~fp5f,~fp6f,~fp7f,~fp8f,~fp9f,~fp10f,~fp11f,~fp12f].at(x-1))});
286 12.do(x = 0; {("u"++(x=x+1)++"g").asSymbol.envirPut([~fp1g,~fp2g,~fp3g,~fp4g,~fp5g,~fp6g,~fp7g,~fp8g,~fp9g,~fp10g,~fp11g,~fp12g].at(x-1))});
287 12.do(x = 0; {("u"++(x=x+1)++"h").asSymbol.envirPut([~fp1h,~fp2h,~fp3h,~fp4h,~fp5h,~fp6h,~fp7h,~fp8h,~fp9h,~fp10h,~fp11h,~fp12h].at(x-1))});
289 /*if(96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"a"++(z=z+1)).asSymbol.envirGet; if(z>=12, {x= x+1; y = 0; z = 0;});}).collect.every({arg item; item == nil;}), {96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"a"++(z=z+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(y=y+1)); if(z>=12, {x= x+1; y = 0; z = 0;});});});
290 if(96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"b"++(z=z+1)).asSymbol.envirGet; if(z>=12, {x= x+1; y = 0; z = 0;});}).collect.every({arg item; item == nil;}), {96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"a"++(z=z+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(y=y+1)); if(z>=12, {x= x+1; y = 0; z = 0;});});});
291 if(96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"c"++(z=z+1)).asSymbol.envirGet; if(z>=12, {x= x+1; y = 0; z = 0;});}).collect.every({arg item; item == nil;}), {96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"a"++(z=z+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(y=y+1)); if(z>=12, {x= x+1; y = 0; z = 0;});});});
292 if(96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"d"++(z=z+1)).asSymbol.envirGet; if(z>=12, {x= x+1; y = 0; z = 0;});}).collect.every({arg item; item == nil;}), {96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"a"++(z=z+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(y=y+1)); if(z>=12, {x= x+1; y = 0; z = 0;});});});
293 if(96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"e"++(z=z+1)).asSymbol.envirGet; if(z>=12, {x= x+1; y = 0; z = 0;});}).collect.every({arg item; item == nil;}), {96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"a"++(z=z+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(y=y+1)); if(z>=12, {x= x+1; y = 0; z = 0;});});});
294 if(96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"f"++(z=z+1)).asSymbol.envirGet; if(z>=12, {x= x+1; y = 0; z = 0;});}).collect.every({arg item; item == nil;}), {96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"a"++(z=z+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(y=y+1)); if(z>=12, {x= x+1; y = 0; z = 0;});});});
295 if(96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"g"++(z=z+1)).asSymbol.envirGet; if(z>=12, {x= x+1; y = 0; z = 0;});}).collect.every({arg item; item == nil;}), {96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"a"++(z=z+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(y=y+1)); if(z>=12, {x= x+1; y = 0; z = 0;});});});
296 if(96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"h"++(z=z+1)).asSymbol.envirGet; if(z>=12, {x= x+1; y = 0; z = 0;});}).collect.every({arg item; item == nil;}), {96.do(x = 1; y = (-1); z = 0; {("sg"++(x)++"a"++(z=z+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(y=y+1)); if(z>=12, {x= x+1; y = 0; z = 0;});});});
299 //set n1-n9 ratio values
302 {~ratio_setting == "psine1";}{~n_value1 = ~gm; ~n_value2 = ~gm2; ~n_value6 = ~gm6;}
303 {~ratio_setting == "psine2";}{~n_value1 = ~ngm1; ~n_value2 = ~ngm2; ~n_value6 = ~ngm6;}
304 {~ratio_setting == "psine3";}{~n_value1 = ~nngm1; ~n_value2 = ~nngm2; ~n_value6 = ~nngm6;}
305 {~ratio_setting == "hsine1";}{~n_value1 = ~h1; ~n_value2 = ~h2; ~n_value6 = ~h6;}
306 {~ratio_setting == "hsine2";}{~n_value1 = ~nh1; ~n_value2 = ~nh2; ~n_value6 = ~nh6;}
307 {~ratio_setting == "hsine3";}{~n_value1 = ~nnh1; ~n_value2 = ~nnh2; ~n_value6 = ~nnh6;};
310 //King Wen sequence interpretation settings 1-3 for synthdefs
312 ~kws_setting_1_a = {[/*1*/ #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f ],/*2*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d/~bi, e = e/~bi, f = f/~bi ],/*3*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f*~bi ],/*4*/ [ a = a*~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f/~bi ],/*5*/ [ a = a/~bi, b = b*~bi, c = c, d = d*~bi, e = e, f = f*~bi ],/*6*/ [ a = a*~bi, b = b, c = c*~bi, d = d/~bi, e = e, f = f/~bi ],/*7*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d, e = e, f = f ],/*8*/ [ a = a, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],/*9*/ [ a = a*~bi, b = b, c = c, d = d*~bi, e = e*~bi, f = f*~bi ],/*10*/ [ a = a, b = b, c = c*~bi, d = d/~bi, e = e, f = f ],/*11*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d*~bi, e = e, f = f ],/*12*/ [ a = a*~bi, b = b*~bi, c = c*~bi, d = d/~bi, e = e/~bi, f = f/~bi ],/*13*/ [ a = a, b = b, c = c, d = d*~bi, e = e, f = f*~bi ],/*14*/ [ a = a, b = b/~bi, c = c, d = d, e = e*~bi, f = f],/*15*/ [ a = a/~bi, b = b, c = c/~bi, d = d, e = e/~bi, f = f/~bi ],/*16*/ [ a = a, b = b, c = c*~bi, d = d/~bi, e = e, f = f ],/*17*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f*~bi],/*18*/ [ a = a*~bi, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f/~bi ],/*19*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e, f = f*~bi ],/*20*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e/~bi, f = f/~bi ],/*21*/ [ a = a, b = b/~bi, c = c*~bi, d = d, e = e, f = f*~bi ],/*22*/ [ a = a, b = b, c = c/~bi, d = d*~bi, e = e, f = f ],/*23*/ [ a = a, b = b, c = c, d = d/~bi, e = e, f = f/~bi ],/*24*/ [ a = a/~bi, b = b, c = c, d = d, e = e, f = f*~bi ],/*25*/ [ a = a*~bi, b = b*~bi, c = c*~bi, d = d, e = e, f = f ],/*26*/ [ a = a, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f ],/*27*/ [ a = a, b = b, c = c, d = d/~bi, e = e/~bi, f = f ],/*28*/ [ a = a/~bi, b = b*~bi, c = c*~bi, d = d*~bi, e = e*~bi, f = f/~bi ],/*29*/ [ a = a, b = b, c = c/~bi, d = d/~bi, e = e, f = f ],/*30*/ [ a = a*~bi, b = b/~bi, c = c*~bi, d = d*~bi, e = e/~bi, f = f*~bi ],/*31*/ [ a = a/~bi, b = b*~bi, c = c, d = d, e = e, f = f/~bi ],/*32*/ [ a = a, b = b/~bi, c = c, d = d, e = e*~bi, f = f ],/*33*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],/*34*/ [ a = a/~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f*~bi ],/*35*/ [ a = a*~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f/~bi ],/*36*/ [ a = a/~bi, b = b, c = c/~bi, d = d*~bi, e = e, f = f*~bi ],/*37*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e, f = f ],/*38*/ [ a = a, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f ],/*39*/ [ a = a/~bi, b = b*~bi, c = c/~bi, d = d*~bi, e = e/~bi, f = f/~bi ],/*40*/ [ a = a, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f ],/*41*/ [ a = a*~bi, b = b, c = c/~bi, d = d, e = e, f = f*~bi ],/*42*/ [ a = a, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],/*43*/ [ a = a/~bi, b = b, c = c*~bi, d = d*~bi, e = e*~bi, f = f ],/*44*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f/~bi ],/*45*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f ],/*46*/ [ a = a, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f ],/*47*/ [ a = a, b = b*~bi, c = c*~bi, d = d/~bi, e = e, f = f ],/*48*/ [ a = a, b = b, c = c/~bi, d = d*~bi, e = e, f = f ],/*49*/ [ a = a, b = b, c = c*~bi, d = d, e = e/~bi, f = f*~bi ],/*50*/ [ a = a*~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f/~bi ],/*51*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f*~bi ],/*52*/ [ a = a*~bi, b = b, c = c/~bi, d = d*~bi, e = e, f = f/~bi ],/*53*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f ],/*54*/ [ a = a/~bi, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f*~bi ],/*55*/ [ a = a, b = b, c = c, d = d*~bi, e = e/~bi, f = f ],/*56*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f/~bi ],/*57*/ [ a = a, b = b*~bi, c = c/~bi, d = d, e = e*~bi, f = f ],/*58*/ [ a = a/~bi, b = b, c = c*~bi, d = d/~bi, e = e, f = f*~bi ],/*59*/ [ a = a*~bi, b = b, c = c/~bi, d = d, e = e, f = f/~bi ],/*60*/ [ a = a/~bi, b = b, c = c, d = d, e = e, f = f*~bi ],/*61*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f ],/*62*/ [ a = a/~bi, b = b/~bi, c = c*~bi, d = d*~bi, e = e/~bi, f = f/~bi ],/*63*/ [ a = a, b = b*~bi, c = c/~bi, d = d, e = e, f = f*~bi ],/*64*/ [ a = a*~bi, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f/~bi ]]};
313 ~kws_setting_1_b = {[/*1*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],/*2*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d/~bi, e = e/~bi, f = f/~bi ],/*3*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f*~bi ],/*4*/ [ a = a*~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f/~bi ],/*5*/ [ a = a/~bi, b = b*~bi, c = c, d = d*~bi, e = e, f = f*~bi ],/*6*/ [ a = a*~bi, b = b, c = c*~bi, d = d/~bi, e = e, f = f/~bi ],/*7*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d, e = e, f = f ],/*8*/ [ a = a, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],/*9*/ [ a = a*~bi, b = b, c = c, d = d*~bi, e = e*~bi, f = f*~bi ],/*10*/ [ a = a, b = b, c = c*~bi, d = d/~bi, e = e, f = f ],/*11*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d*~bi, e = e, f = f ],/*12*/ [ a = a*~bi, b = b*~bi, c = c*~bi, d = d/~bi, e = e/~bi, f = f/~bi ],/*13*/ [ a = a, b = b, c = c, d = d*~bi, e = e, f = f*~bi ],/*14*/ [ a = a, b = b/~bi, c = c, d = d, e = e*~bi, f = f],/*15*/ [ a = a/~bi, b = b, c = c/~bi, d = d, e = e/~bi, f = f/~bi ],/*16*/ [ a = a, b = b, c = c*~bi, d = d/~bi, e = e, f = f ],/*17*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f*~bi],/*18*/ [ a = a*~bi, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f/~bi ],/*19*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e, f = f*~bi ],/*20*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e/~bi, f = f/~bi ],/*21*/ [ a = a, b = b/~bi, c = c*~bi, d = d, e = e, f = f*~bi ],/*22*/ [ a = a, b = b, c = c/~bi, d = d*~bi, e = e, f = f ],/*23*/ [ a = a, b = b, c = c, d = d/~bi, e = e, f = f/~bi ],/*24*/ [ a = a/~bi, b = b, c = c, d = d, e = e, f = f*~bi ],/*25*/ [ a = a*~bi, b = b*~bi, c = c*~bi, d = d, e = e, f = f ],/*26*/ [ a = a, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f ],/*27*/ [ a = a, b = b, c = c, d = d/~bi, e = e/~bi, f = f ],/*28*/ [ a = a/~bi, b = b*~bi, c = c*~bi, d = d*~bi, e = e*~bi, f = f/~bi ],/*29*/ [ a = a, b = b, c = c/~bi, d = d/~bi, e = e, f = f ],/*30*/ [ a = a*~bi, b = b/~bi, c = c*~bi, d = d*~bi, e = e/~bi, f = f*~bi ],/*31*/ [ a = a/~bi, b = b*~bi, c = c, d = d, e = e, f = f/~bi ],/*32*/ [ a = a, b = b/~bi, c = c, d = d, e = e*~bi, f = f ],/*33*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],/*34*/ [ a = a/~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f*~bi ],/*35*/ [ a = a*~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f/~bi ],/*36*/ [ a = a/~bi, b = b, c = c/~bi, d = d*~bi, e = e, f = f*~bi ],/*37*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e, f = f ],/*38*/ [ a = a, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f ],/*39*/ [ a = a/~bi, b = b*~bi, c = c/~bi, d = d*~bi, e = e/~bi, f = f/~bi ],/*40*/ [ a = a, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f ],/*41*/ [ a = a*~bi, b = b, c = c/~bi, d = d, e = e, f = f*~bi ],/*42*/ [ a = a, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],/*43*/ [ a = a/~bi, b = b, c = c*~bi, d = d*~bi, e = e*~bi, f = f ],/*44*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f/~bi ],/*45*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f ],/*46*/ [ a = a, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f ],/*47*/ [ a = a, b = b*~bi, c = c*~bi, d = d/~bi, e = e, f = f ],/*48*/ [ a = a, b = b, c = c/~bi, d = d*~bi, e = e, f = f ],/*49*/ [ a = a, b = b, c = c*~bi, d = d, e = e/~bi, f = f*~bi ],/*50*/ [ a = a*~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f/~bi ],/*51*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f*~bi ],/*52*/ [ a = a*~bi, b = b, c = c/~bi, d = d*~bi, e = e, f = f/~bi ],/*53*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f ],/*54*/ [ a = a/~bi, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f*~bi ],/*55*/ [ a = a, b = b, c = c, d = d*~bi, e = e/~bi, f = f ],/*56*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f/~bi ],/*57*/ [ a = a, b = b*~bi, c = c/~bi, d = d, e = e*~bi, f = f ],/*58*/ [ a = a/~bi, b = b, c = c*~bi, d = d/~bi, e = e, f = f*~bi ],/*59*/ [ a = a*~bi, b = b, c = c/~bi, d = d, e = e, f = f/~bi ],/*60*/ [ a = a/~bi, b = b, c = c, d = d, e = e, f = f*~bi ],/*61*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f ],/*62*/ [ a = a/~bi, b = b/~bi, c = c*~bi, d = d*~bi, e = e/~bi, f = f/~bi ],/*63*/ [ a = a, b = b*~bi, c = c/~bi, d = d, e = e, f = f*~bi ],/*64*/ [ a = a*~bi, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f/~bi ]]};
315 ~kws_setting_2_a = {[/*1*/ #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f ],/*2*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1/~bi ],/*3*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f*~bi ],/*4*/ [ a = a*~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f/~bi ],/*5*/ [ a = a/~bi, b = b*~bi, c = c, d = d*~bi, e = e, f = f*~bi ],/*6*/ [ a = a*~bi, b = b, c = c*~bi, d = d/~bi, e = e, f = f/~bi ],/*7*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d, e = e, f = f ],/*8*/ [ a = a, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],/*9*/ [ a = a*~bi, b = b, c = c, d = d*~bi, e = e*~bi, f = f*~bi ],/*10*/ [ a = a, b = b, c = c*~bi, d = d/~bi, e = e, f = f ],/*11*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d*~bi, e = e, f = f ],/*12*/ [ a = a*~n2*~bi, b = b*~n2*~bi, c = c*~n2*~bi, d = d*~n2/~bi, e = e*~n2/~bi, f = f*~n2/~bi ],/*13*/ [ a = a, b = b, c = c, d = d*~bi, e = e, f = f*~bi ],/*14*/ [ a = a, b = b/~bi, c = c, d = d, e = e*~bi, f = f ],/*15*/ [ a = a/~bi, b = b, c = c/~bi, d = d, e = e/~bi, f = f/~bi ],/*16*/ [ a = a, b = b, c = c*~bi, d = d/~bi, e = e, f = f ],/*17*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f*~bi ],/*18*/ [ a = a*~n3*~bi, b = b*~n3/~bi, c = c*~n3/~bi, d = d*~n3*~bi, e = e*~n3*~bi, f = f*~n3/~bi ],/*19*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e, f = f*~bi ],/*20*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e/~bi, f = f/~bi ],/*21*/ [ a = a, b = b/~bi, c = c*~bi, d = d, e = e, f = f*~bi ],/*22*/ [ a = a, b = b, c = c/~bi, d = d*~bi, e = e, f = f ],/*23*/ [ a = a, b = b, c = c, d = d/~bi, e = e, f = f/~bi ],/*24*/ [ a = a/~bi, b = b, c = c, d = d, e = e, f = f*~bi ],/*25*/ [ a = a*~bi, b = b*~bi, c = c*~bi, d = d, e = e, f = f ],/*26*/ [ a = a, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f ],/*27*/ [ a = a, b = b, c = c, d = d/~bi, e = e/~bi, f = f ],/*28*/ [ a = a*~n4/~bi, b = b*~n4*~bi, c = c*~n4*~bi, d = d*~n4*~bi, e = e*~n4*~bi, f = f*~n4/~bi ],/*29*/ [ a = a, b = b, c = c/~bi, d = d/~bi, e = e, f = f ],/*30*/ [ a = a*~n5*~bi, b = b*~n5/~bi, c = c*~n5*~bi, d = d*~n5*~bi, e = e*~n5/~bi, f = f*~n5*~bi ],/*31*/ [ a = a/~bi, b = b*~bi, c = c, d = d, e = e, f = f/~bi ],/*32*/ [ a = a, b = b/~bi, c = c, d = d, e = e*~bi, f = f ],/*33*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],/*34*/ [ a = a/~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f*~bi ],/*35*/ [ a = a*~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f/~bi ],/*36*/ [ a = a/~bi, b = b, c = c/~bi, d = d*~bi, e = e, f = f*~bi ],/*37*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e, f = f ],/*38*/ [ a = a, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f ],/*39*/ [ a = a*~n6/~bi, b = b*~n6*~bi, c = c*~n6/~bi, d = d*~n6*~bi, e = e*~n6/~bi, f = f*~n6/~bi ],/*40*/ [ a = a, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f ],/*41*/ [ a = a*~bi, b = b, c = c/~bi, d = d, e = e, f = f*~bi ],/*42*/ [ a = a, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],/*43*/ [ a = a/~bi, b = b, c = c*~bi, d = d*~bi, e = e*~bi, f = f ],/*44*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f/~bi ],/*45*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f ],/*46*/ [ a = a, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f ],/*47*/ [ a = a, b = b*~bi, c = c*~bi, d = d/~bi, e = e, f = f ],/*48*/ [ a = a, b = b, c = c/~bi, d = d*~bi, e = e, f = f ],/*49*/ [ a = a, b = b, c = c*~bi, d = d, e = e/~bi, f = f*~bi ],/*50*/ [ a = a*~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f/~bi ],/*51*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f*~bi ],/*52*/ [ a = a*~bi, b = b, c = c/~bi, d = d*~bi, e = e, f = f/~bi ],/*53*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f ],/*54*/ [ a = a*~n7/~bi, b = b*~n7/~bi, c = c*~n7*~bi, d = d*~n7/~bi, e = e*~n7*~bi, f = f*~n7*~bi ],/*55*/ [ a = a, b = b, c = c, d = d*~bi, e = e/~bi, f = f ],/*56*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f/~bi ],/*57*/ [ a = a, b = b*~bi, c = c/~bi, d = d, e = e*~bi, f = f ],/*58*/ [ a = a/~bi, b = b, c = c*~bi, d = d/~bi, e = e, f = f*~bi ],/*59*/ [ a = a*~bi, b = b, c = c/~bi, d = d, e = e, f = f/~bi ],/*60*/ [ a = a/~bi, b = b, c = c, d = d, e = e, f = f*~bi ],/*61*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f ],/*62*/ [ a = a*~n8/~bi, b = b*~n8/~bi, c = c*~n8*~bi, d = d*~n8*~bi, e = e*~n8/~bi, f = f*~n8/~bi ],/*63*/ [ a = a, b = b*~bi, c = c/~bi, d = d, e = e, f = f*~bi ],/*64*/ [ a = a*~n9*~bi, b = b*~n9/~bi, c = c*~n9*~bi, d = d*~n9/~bi, e = e*~n9*~bi, f = f*~n9/~bi ]]};
316 ~kws_setting_2_b = {[/*1*/ [ a = a, b = b*~bi, c = c, d = d*~bi, e = e, f = f*~bi ],/*2*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1/~bi ],/*3*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f*~bi ],/*4*/ [ a = a*~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f/~bi ],/*5*/ [ a = a/~bi, b = b*~bi, c = c, d = d*~bi, e = e, f = f*~bi ],/*6*/ [ a = a*~bi, b = b, c = c*~bi, d = d/~bi, e = e, f = f/~bi ],/*7*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d, e = e, f = f ],/*8*/ [ a = a, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],/*9*/ [ a = a*~bi, b = b, c = c, d = d*~bi, e = e*~bi, f = f*~bi ],/*10*/ [ a = a, b = b, c = c*~bi, d = d/~bi, e = e, f = f ],/*11*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d*~bi, e = e, f = f ],/*12*/ [ a = a*~n2*~bi, b = b*~n2*~bi, c = c*~n2*~bi, d = d*~n2/~bi, e = e*~n2/~bi, f = f*~n2/~bi ],/*13*/ [ a = a, b = b, c = c, d = d*~bi, e = e, f = f*~bi ],/*14*/ [ a = a, b = b/~bi, c = c, d = d, e = e*~bi, f = f ],/*15*/ [ a = a/~bi, b = b, c = c/~bi, d = d, e = e/~bi, f = f/~bi ],/*16*/ [ a = a, b = b, c = c*~bi, d = d/~bi, e = e, f = f ],/*17*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f*~bi ],/*18*/ [ a = a*~n3*~bi, b = b*~n3/~bi, c = c*~n3/~bi, d = d*~n3*~bi, e = e*~n3*~bi, f = f*~n3/~bi ],/*19*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e, f = f*~bi ],/*20*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e/~bi, f = f/~bi ],/*21*/ [ a = a, b = b/~bi, c = c*~bi, d = d, e = e, f = f*~bi ],/*22*/ [ a = a, b = b, c = c/~bi, d = d*~bi, e = e, f = f ],/*23*/ [ a = a, b = b, c = c, d = d/~bi, e = e, f = f/~bi ],/*24*/ [ a = a/~bi, b = b, c = c, d = d, e = e, f = f*~bi ],/*25*/ [ a = a*~bi, b = b*~bi, c = c*~bi, d = d, e = e, f = f ],/*26*/ [ a = a, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f ],/*27*/ [ a = a, b = b, c = c, d = d/~bi, e = e/~bi, f = f ],/*28*/ [ a = a*~n4/~bi, b = b*~n4*~bi, c = c*~n4*~bi, d = d*~n4*~bi, e = e*~n4*~bi, f = f*~n4/~bi ],/*29*/ [ a = a, b = b, c = c/~bi, d = d/~bi, e = e, f = f ],/*30*/ [ a = a*~n5*~bi, b = b*~n5/~bi, c = c*~n5*~bi, d = d*~n5*~bi, e = e*~n5/~bi, f = f*~n5*~bi ],/*31*/ [ a = a/~bi, b = b*~bi, c = c, d = d, e = e, f = f/~bi ],/*32*/ [ a = a, b = b/~bi, c = c, d = d, e = e*~bi, f = f ],/*33*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],/*34*/ [ a = a/~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f*~bi ],/*35*/ [ a = a*~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f/~bi ],/*36*/ [ a = a/~bi, b = b, c = c/~bi, d = d*~bi, e = e, f = f*~bi ],/*37*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e, f = f ],/*38*/ [ a = a, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f ],/*39*/ [ a = a*~n6/~bi, b = b*~n6*~bi, c = c*~n6/~bi, d = d*~n6*~bi, e = e*~n6/~bi, f = f*~n6/~bi ],/*40*/ [ a = a, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f ],/*41*/ [ a = a*~bi, b = b, c = c/~bi, d = d, e = e, f = f*~bi ],/*42*/ [ a = a, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],/*43*/ [ a = a/~bi, b = b, c = c*~bi, d = d*~bi, e = e*~bi, f = f ],/*44*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f/~bi ],/*45*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f ],/*46*/ [ a = a, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f ],/*47*/ [ a = a, b = b*~bi, c = c*~bi, d = d/~bi, e = e, f = f ],/*48*/ [ a = a, b = b, c = c/~bi, d = d*~bi, e = e, f = f ],/*49*/ [ a = a, b = b, c = c*~bi, d = d, e = e/~bi, f = f*~bi ],/*50*/ [ a = a*~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f/~bi ],/*51*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f*~bi ],/*52*/ [ a = a*~bi, b = b, c = c/~bi, d = d*~bi, e = e, f = f/~bi ],/*53*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f ],/*54*/ [ a = a*~n7/~bi, b = b*~n7/~bi, c = c*~n7*~bi, d = d*~n7/~bi, e = e*~n7*~bi, f = f*~n7*~bi ],/*55*/ [ a = a, b = b, c = c, d = d*~bi, e = e/~bi, f = f ],/*56*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f/~bi ],/*57*/ [ a = a, b = b*~bi, c = c/~bi, d = d, e = e*~bi, f = f ],/*58*/ [ a = a/~bi, b = b, c = c*~bi, d = d/~bi, e = e, f = f*~bi ],/*59*/ [ a = a*~bi, b = b, c = c/~bi, d = d, e = e, f = f/~bi ],/*60*/ [ a = a/~bi, b = b, c = c, d = d, e = e, f = f*~bi ],/*61*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f ],/*62*/ [ a = a*~n8/~bi, b = b*~n8/~bi, c = c*~n8*~bi, d = d*~n8*~bi, e = e*~n8/~bi, f = f*~n8/~bi ],/*63*/ [ a = a, b = b*~bi, c = c/~bi, d = d, e = e, f = f*~bi ],/*64*/ [ a = a*~n9*~bi, b = b*~n9/~bi, c = c*~n9*~bi, d = d*~n9/~bi, e = e*~n9*~bi, f = f*~n9/~bi ]]};
318 ~kws_setting_3_a = {[/*1*/ #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f ],/*2*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1/~bi ],/*3*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*4*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1/~bi ],/*5*/ [ a = a*~n1/~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],/*6*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1/~bi ],/*7*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1, e = e*~n1, f = f*~n1 ],/*8*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1/~bi, f = f*~n1 ],/*9*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1*~bi ],/*10*/ [ a = a*~n1, b = b*~n1, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1 ],/*11*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1 ],/*12*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1/~bi ],/*13*/ [ a = a*~n1, b = b*~n1, c = c*~n1, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],/*14*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1 ],/*15*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1, e = e*~n1/~bi, f = f*~n1/~bi ],/*16*/ [ a = a*~n1, b = b*~n1, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1 ],/*17*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*18*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1/~bi ],/*19*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1, f = f*~n1*~bi ],/*20*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1/~bi, f = f*~n1/~bi ],/*21*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*22*/ [ a = a*~n1, b = b*~n1, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1 ],/*23*/ [ a = a*~n1, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1, f = f*~n1/~bi ],/*24*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*25*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1*~bi, d = d*~n1, e = e*~n1, f = f*~n1 ],/*26*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1 ],/*27*/ [ a = a*~n1, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1 ],/*28*/ [ a = a*~n1/~bi, b = b*~n1*~bi, c = c*~n1*~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1/~bi ],/*29*/ [ a = a*~n1, b = b*~n1, c = c*~n1/~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1 ],/*30*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1*~bi, e = e*~n1/~bi, f = f*~n1*~bi ],/*31*/ [ a = a*~n1/~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1/~bi ],/*32*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1 ],/*33*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1/~bi, f = f*~n1 ],/*34*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1*~bi ],/*35*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1/~bi ],/*36*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],/*37*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1 ],/*38*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1*~bi, f = f*~n1 ],/*39*/ [ a = a*~n1/~bi, b = b*~n1*~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1/~bi, f = f*~n1/~bi ],/*40*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1*~bi, f = f*~n1 ],/*41*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*42*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1/~bi, f = f*~n1 ],/*43*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1*~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1 ],/*44*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1/~bi ],/*45*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1 ],/*46*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1 ],/*47*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1 ],/*48*/ [ a = a*~n1, b = b*~n1, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1 ],/*49*/ [ a = a*~n1, b = b*~n1, c = c*~n1*~bi, d = d*~n1, e = e*~n1/~bi, f = f*~n1*~bi ],/*50*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1/~bi ],/*51*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1*~bi ],/*52*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1/~bi ],/*53*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1 ],/*54*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1*~bi, f = f*~n1*~bi ],/*55*/ [ a = a*~n1, b = b*~n1, c = c*~n1, d = d*~n1*~bi, e = e*~n1/~bi, f = f*~n1 ],/*56*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1/~bi ],/*57*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1/~bi, d = d*~n1, e = e*~n1*~bi, f = f*~n1 ],/*58*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1*~bi ],/*59*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1, e = e*~n1, f = f*~n1/~bi ],/*60*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*61*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1 ],/*62*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1*~bi, e = e*~n1/~bi, f = f*~n1/~bi ],/*63*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1/~bi, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*64*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1*~bi, f = f*~n1/~bi ]]};
319 ~kws_setting_3_b = {[/*1*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],/*2*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1/~bi ],/*3*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*4*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1/~bi ],/*5*/ [ a = a*~n1/~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],/*6*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1/~bi ],/*7*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1, e = e*~n1, f = f*~n1 ],/*8*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1/~bi, f = f*~n1 ],/*9*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1*~bi ],/*10*/ [ a = a*~n1, b = b*~n1, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1 ],/*11*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1 ],/*12*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1/~bi ],/*13*/ [ a = a*~n1, b = b*~n1, c = c*~n1, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],/*14*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1 ],/*15*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1, e = e*~n1/~bi, f = f*~n1/~bi ],/*16*/ [ a = a*~n1, b = b*~n1, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1 ],/*17*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*18*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1/~bi ],/*19*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1, f = f*~n1*~bi ],/*20*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1/~bi, f = f*~n1/~bi ],/*21*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*22*/ [ a = a*~n1, b = b*~n1, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1 ],/*23*/ [ a = a*~n1, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1, f = f*~n1/~bi ],/*24*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*25*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1*~bi, d = d*~n1, e = e*~n1, f = f*~n1 ],/*26*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1 ],/*27*/ [ a = a*~n1, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1 ],/*28*/ [ a = a*~n1/~bi, b = b*~n1*~bi, c = c*~n1*~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1/~bi ],/*29*/ [ a = a*~n1, b = b*~n1, c = c*~n1/~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1 ],/*30*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1*~bi, e = e*~n1/~bi, f = f*~n1*~bi ],/*31*/ [ a = a*~n1/~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1/~bi ],/*32*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1 ],/*33*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1/~bi, f = f*~n1 ],/*34*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1*~bi ],/*35*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1/~bi ],/*36*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],/*37*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1 ],/*38*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1*~bi, f = f*~n1 ],/*39*/ [ a = a*~n1/~bi, b = b*~n1*~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1/~bi, f = f*~n1/~bi ],/*40*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1*~bi, f = f*~n1 ],/*41*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*42*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1/~bi, f = f*~n1 ],/*43*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1*~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1 ],/*44*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1/~bi ],/*45*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1 ],/*46*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1 ],/*47*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1 ],/*48*/ [ a = a*~n1, b = b*~n1, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1 ],/*49*/ [ a = a*~n1, b = b*~n1, c = c*~n1*~bi, d = d*~n1, e = e*~n1/~bi, f = f*~n1*~bi ],/*50*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1/~bi ],/*51*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1*~bi ],/*52*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1/~bi ],/*53*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1 ],/*54*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1*~bi, f = f*~n1*~bi ],/*55*/ [ a = a*~n1, b = b*~n1, c = c*~n1, d = d*~n1*~bi, e = e*~n1/~bi, f = f*~n1 ],/*56*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1/~bi ],/*57*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1/~bi, d = d*~n1, e = e*~n1*~bi, f = f*~n1 ],/*58*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1*~bi ],/*59*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1, e = e*~n1, f = f*~n1/~bi ],/*60*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*61*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1 ],/*62*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1*~bi, e = e*~n1/~bi, f = f*~n1/~bi ],/*63*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1/~bi, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],/*64*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1*~bi, f = f*~n1/~bi ]]};
326 SynthDef(\gsineicfld1, {arg graindur = 0.04, dur = 2000, atk = 0.007, rel = 0.01, gate = 1, amp = 1, i = 1, vol = ~vol, rate = 20, tune = 0,dseqval,
327 a, b, c, d, e, f, pan=0, fc = 1;
328 var s1, out, env1, s2, dseq;
329 9.do(x = 0; {("n"++(x=x+1)).asSymbol.envirPut(~n_value1)}); //for custom values replace "~n_value1" with "[a, b, c, d, etc...].at(x-1)" with the variable amount the same as the #.do value - for all synthdefs
332 {~kws_setting == 1}{~kws_setting_1_a.value;}
333 {~kws_setting == 2}{~kws_setting_2_a.value;}
334 {~kws_setting == 3}{~kws_setting_3_a.value;} ++ Array.fill((~gsinenum*~first_harmonic -1), {
336 {~kws_setting == 1}{~kws_setting_1_b.value;}
337 {~kws_setting == 2}{~kws_setting_2_b.value;}
338 {~kws_setting == 3}{~kws_setting_3_b.value;}}).flatten, inf);
339 s1 = GrainSin.ar(1, Impulse.ar(dur), 1/(dur),Demand.ar(Impulse.ar(dur), 0, dseq));
340 if(~low_pass_filter_on == 1, {s1 = BLowPass.ar(s1, ~low_pass_filter_freq_limit, ~low_pass_filter_freq_limit/~lpfilter_rq_ratio);}, {s1 = s1});
341 OffsetOut.ar(0, s1.dup*vol);
344 SynthDef(\gsineicrld1, {arg graindur = 0.04, dur = 2000, atk = 0.007, rel = 0.01, gate = 1, amp = 1, i = 1, vol = ~vol, rate = 20, tune = 0,dseqval,
345 a, b, c, d, e, f, pan=0, fc = 1, id = -1;
346 var s1, out, env1, s2, dseq;
347 9.do(x = 0; {("n"++(x=x+1)).asSymbol.envirPut(~n_value1)});
350 {~kws_setting == 1}{~kws_setting_1_a.value;}
351 {~kws_setting == 2}{~kws_setting_2_a.value;}
352 {~kws_setting == 3}{~kws_setting_3_a.value;} ++ Array.fill((~gsinenum*~first_harmonic -1), {
354 {~kws_setting == 1}{~kws_setting_1_b.value;}
355 {~kws_setting == 2}{~kws_setting_2_b.value;}
356 {~kws_setting == 3}{~kws_setting_3_b.value;}}).flatten].flatten.reverse, inf);
357 s1 = GrainSin.ar(1, Impulse.ar(dur), 1/(dur), Demand.ar(Impulse.ar(dur), 0, dseq));
358 if(~low_pass_filter_on == 1, {s1 = BLowPass.ar(s1, ~low_pass_filter_freq_limit, ~low_pass_filter_freq_limit/~lpfilter_rq_ratio);}, {s1 = s1});
359 OffsetOut.ar(0, s1.dup*vol);
362 SynthDef(\gsineicfld2, {arg graindur = 0.04, dur = 2000, atk = 0.007, rel = 0.01, gate = 1, amp = 1, i = 1, vol = ~vol, rate = 20, tune = 0,dseqval,
363 a, b, c, d, e, f, pan=0, fc = 1;
364 var s1, out, env1, s2, dseq;
365 9.do(x = 0; {("n"++(x=x+1)).asSymbol.envirPut(~n_value2)});
368 {~kws_setting == 1}{~kws_setting_1_a.value;}
369 {~kws_setting == 2}{~kws_setting_2_a.value;}
370 {~kws_setting == 3}{~kws_setting_3_a.value;} ++ Array.fill((~gsinenum*~second_harmonic -1), {
372 {~kws_setting == 1}{~kws_setting_1_b.value;}
373 {~kws_setting == 2}{~kws_setting_2_b.value;}
374 {~kws_setting == 3}{~kws_setting_3_b.value;}}).flatten, inf);
375 s1 = GrainSin.ar(1, Impulse.ar(dur), 1/(dur),Demand.ar(Impulse.ar(dur), 0, dseq));
376 if(~low_pass_filter_on == 1, {s1 = BLowPass.ar(s1, ~low_pass_filter_freq_limit, ~low_pass_filter_freq_limit/~lpfilter_rq_ratio);}, {s1 = s1});
377 OffsetOut.ar(0, s1.dup*vol);
380 SynthDef(\gsineicrld2, {arg graindur = 0.04, dur = 2000, atk = 0.007, rel = 0.01, gate = 1, amp = 1, i = 1, vol = ~vol, rate = 20, tune = 0,dseqval,
381 a, b, c, d, e, f, pan=0, fc = 1, id = -1;
382 var s1, out, env1, s2, dseq;
383 9.do(x = 0; {("n"++(x=x+1)).asSymbol.envirPut(~n_value2)});
386 {~kws_setting == 1}{~kws_setting_1_a.value;}
387 {~kws_setting == 2}{~kws_setting_2_a.value;}
388 {~kws_setting == 3}{~kws_setting_3_a.value;} ++ Array.fill((~gsinenum*~second_harmonic -1), {
390 {~kws_setting == 1}{~kws_setting_1_b.value;}
391 {~kws_setting == 2}{~kws_setting_2_b.value;}
392 {~kws_setting == 3}{~kws_setting_3_b.value;}}).flatten].flatten.reverse, inf);
393 s1 = GrainSin.ar(1, Impulse.ar(dur), 1/(dur), Demand.ar(Impulse.ar(dur), 0, dseq));
394 if(~low_pass_filter_on == 1, {s1 = BLowPass.ar(s1, ~low_pass_filter_freq_limit, ~low_pass_filter_freq_limit/~lpfilter_rq_ratio);}, {s1 = s1});
395 OffsetOut.ar(0, s1.dup*vol);
398 SynthDef(\gsineicfld6, {arg graindur = 0.04, dur = 2000, atk = 0.007, rel = 0.01, gate = 1, amp = 1, i = 1, vol = ~vol, rate = 20, tune = 0,dseqval,
399 a, b, c, d, e, f, pan=0, fc = 1;
400 var s1, out, env1, s2, dseq;
401 9.do(x = 0; {("n"++(x=x+1)).asSymbol.envirPut(~n_value6)});
404 {~kws_setting == 1}{~kws_setting_1_a.value;}
405 {~kws_setting == 2}{~kws_setting_2_a.value;}
406 {~kws_setting == 3}{~kws_setting_3_a.value;} ++ Array.fill((~gsinenum*~third_harmonic -1), {
408 {~kws_setting == 1}{~kws_setting_1_b.value;}
409 {~kws_setting == 2}{~kws_setting_2_b.value;}
410 {~kws_setting == 3}{~kws_setting_3_b.value;}}).flatten, inf);
411 s1 = GrainSin.ar(1, Impulse.ar(dur), 1/(dur),Demand.ar(Impulse.ar(dur), 0, dseq));
412 if(~low_pass_filter_on == 1, {s1 = BLowPass.ar(s1, ~low_pass_filter_freq_limit, ~low_pass_filter_freq_limit/~lpfilter_rq_ratio);}, {s1 = s1});
413 OffsetOut.ar(0, s1.dup*vol);
416 SynthDef(\gsineicrld6, {arg graindur = 0.04, dur = 2000, atk = 0.007, rel = 0.01, gate = 1, amp = 1, i = 1, vol = ~vol, rate = 20, tune = 0,dseqval,
417 a, b, c, d, e, f, pan=0, fc = 1;
418 var s1, out, env1, s2, dseq;
419 9.do(x = 0; {("n"++(x=x+1)).asSymbol.envirPut(~n_value6)});
422 {~kws_setting == 1}{~kws_setting_1_a.value;}
423 {~kws_setting == 2}{~kws_setting_2_a.value;}
424 {~kws_setting == 3}{~kws_setting_3_a.value;} ++ Array.fill((~gsinenum*~third_harmonic -1), {
426 {~kws_setting == 1}{~kws_setting_1_b.value;}
427 {~kws_setting == 2}{~kws_setting_2_b.value;}
428 {~kws_setting == 3}{~kws_setting_3_b.value;}}).flatten].flatten.reverse, inf);
429 s1 = GrainSin.ar(1, Impulse.ar(dur), 1/(dur), Demand.ar(Impulse.ar(dur), 0, dseq));
430 if(~low_pass_filter_on == 1, {s1 = BLowPass.ar(s1, ~low_pass_filter_freq_limit, ~low_pass_filter_freq_limit/~lpfilter_rq_ratio);}, {s1 = s1});
431 OffsetOut.ar(0, s1.dup*vol);
434 if(~sendreplysynthdef_on == 1, {
436 8.do(~sendreply_x = 0; {
438 ~sendreply_x=~sendreply_x+1;
440 SynthDef(\gsineicfld1_f++(~sendreply_x), {arg graindur = 0.04, dur = 2000, atk = 0.007, rel = 0.01, gate = 1, amp = 1, i = 1, vol = ~vol, rate = 20, tune = 0,dseqval,
441 a, b, c, d, e, f, pan=0, fc = 1;
442 var s1, out, env1, s2, dseq;
443 9.do(x = 0; {("n"++(x=x+1)).asSymbol.envirPut(~n_value1)});
446 {~kws_setting == 1}{~kws_setting_1_a.value;}
447 {~kws_setting == 2}{~kws_setting_2_a.value;}
448 {~kws_setting == 3}{~kws_setting_3_a.value;} ++ Array.fill((~gsinenum*~first_harmonic -1), {
450 {~kws_setting == 1}{~kws_setting_1_b.value;}
451 {~kws_setting == 2}{~kws_setting_2_b.value;}
452 {~kws_setting == 3}{~kws_setting_3_b.value;}}).flatten, inf);
453 s1 = GrainSin.ar(1, Impulse.ar(dur), 1/(dur),Demand.ar(Impulse.ar(dur), 0, dseq));
454 if(~low_pass_filter_on == 1, {s1 = BLowPass.ar(s1, ~low_pass_filter_freq_limit, ~low_pass_filter_freq_limit/~lpfilter_rq_ratio);}, {s1 = s1});
455 OffsetOut.ar(0, s1.dup*vol);
456 SendReply.ar(PulseDivider.ar(Impulse.ar(dur), (~kws_setting_1_a.value.size*(~gsinenum*~first_harmonic))*2*~sendreply_period),
458 {~sendreplyfunc_choose == 0}{("synthflow_gmf_sendreply_answer_f"++(~sendreply_x)).asSymbol.envirGet;}
459 {~sendreplyfunc_choose == 1}{("synthflow_random_sendreply_answer_f"++(~sendreply_x)).asSymbol.envirGet;};
468 //sendreply functions
470 ~sendreplyfunc_choose = 0;
472 ~send_reply_random_func_western = {~freqmap.at(rrand(60, 91));};
473 ~send_reply_random_func_eastern = {(rrand(~freqmap.at(60), ~freqmap.at(91);))};
475 if(~sendreply_gm_fth_y_1 == nil, {8.do(x = 0; {("sendreply_gm_fth_y_"++(x=x+1)).asSymbol.envirPut((-1);)});});
476 ~sendreply_gm_fth_func_1 = {if((x <= 1539.4729849465) and: (x >= 256.86873684059), {
477 x = x*[[a = 1.6842135623729, a = 0.5937489296732].choose, [a = 1.4142135623729, a = 0.70710678118665].choose].at(y=y+1); if(y>=1, {y=(-1)});
480 if(x > 1539.4729849465, {
482 {(a == 1.6842135623729) or: (a == 0.5937489296732)}{x = x/2; x = x*[a = 1.4142135623729, a = 0.70710678118665].choose; y=y+1; if(y>=1, {y=(-1)});}
483 {(a == 1.4142135623729) or: (a == 0.70710678118665)}{x = x/2; x = x*[a = 1.6842135623729, a = 0.5937489296732].choose; y=y+1; if(y>=1, {y=(-1)});};
486 {(a == 1.6842135623729) or: (a == 0.5937489296732)}{x = x*2; x = x*[a = 1.4142135623729, a = 0.70710678118665].choose; y=y+1; if(y>=1, {y=(-1)});}
487 {(a == 1.4142135623729) or: (a == 0.70710678118665)}{x = x*2; x = x*[a = 1.6842135623729, a = 0.5937489296732].choose; y=y+1; if(y>=1, {y=(-1)});};
491 ~sendreply_gm_fth_func_2 = {if((x <= 1539.4729849465) and: (x >= 256.86873684059), {
492 x = x*[a = 1.6842135623729, a = 0.5937489296732].choose;}, {
493 if(x > 1539.4729849465, {x = x/2; x = x*[1.6842135623729, 0.5937489296732].choose;}, {x = x*2; x = x*[1.6842135623729, 0.5937489296732].choose;});
496 if(~sendreply_gm_fth_func == nil, {~sendreply_gm_fth_func = ~sendreply_gm_fth_func_1});
499 {~sendreplyfuncswitch == 1;}{~send_reply_random_func = ~send_reply_random_func_western;}
500 {~sendreplyfuncswitch == 2;}{~send_reply_random_func = ~send_reply_random_func_eastern;};
502 ~synthflow_random_sendreply_answer_f1 = '/synthflow_random_sendreply_answer_f1';
503 ~synthflow_random_sendreply_answer_f2 = '/synthflow_random_sendreply_answer_f2';
504 ~synthflow_random_sendreply_answer_f3 = '/synthflow_random_sendreply_answer_f3';
505 ~synthflow_random_sendreply_answer_f4 = '/synthflow_random_sendreply_answer_f4';
506 ~synthflow_random_sendreply_answer_f5 = '/synthflow_random_sendreply_answer_f5';
507 ~synthflow_random_sendreply_answer_f6 = '/synthflow_random_sendreply_answer_f6';
508 ~synthflow_random_sendreply_answer_f7 = '/synthflow_random_sendreply_answer_f7';
509 ~synthflow_random_sendreply_answer_f8 = '/synthflow_random_sendreply_answer_f8';
511 ~synthflow_gmf_sendreply_answer_f1 = '/synthflow_gmf_sendreply_answer_f1';
512 ~synthflow_gmf_sendreply_answer_f2 = '/synthflow_gmf_sendreply_answer_f2';
513 ~synthflow_gmf_sendreply_answer_f3 = '/synthflow_gmf_sendreply_answer_f3';
514 ~synthflow_gmf_sendreply_answer_f4 = '/synthflow_gmf_sendreply_answer_f4';
515 ~synthflow_gmf_sendreply_answer_f5 = '/synthflow_gmf_sendreply_answer_f5';
516 ~synthflow_gmf_sendreply_answer_f6 = '/synthflow_gmf_sendreply_answer_f6';
517 ~synthflow_gmf_sendreply_answer_f7 = '/synthflow_gmf_sendreply_answer_f7';
518 ~synthflow_gmf_sendreply_answer_f8 = '/synthflow_gmf_sendreply_answer_f8';
520 ~sendreply_oscfunc_array = {
522 OSCFunc({~f1 = ~send_reply_random_func.value; AppClock.sched(0,{~synthflow.value;});}, '/synthflow_random_sendreply_answer_f1');
523 OSCFunc({~f2 = ~send_reply_random_func.value; AppClock.sched(0,{~synthflow.value;});}, '/synthflow_random_sendreply_answer_f2');
524 OSCFunc({~f3 = ~send_reply_random_func.value; AppClock.sched(0,{~synthflow.value;});}, '/synthflow_random_sendreply_answer_f3');
525 OSCFunc({~f4 = ~send_reply_random_func.value; AppClock.sched(0,{~synthflow.value;});}, '/synthflow_random_sendreply_answer_f4');
526 OSCFunc({~f5 = ~send_reply_random_func.value; AppClock.sched(0,{~synthflow.value;});}, '/synthflow_random_sendreply_answer_f5');
527 OSCFunc({~f6 = ~send_reply_random_func.value; AppClock.sched(0,{~synthflow.value;});}, '/synthflow_random_sendreply_answer_f6');
528 OSCFunc({~f7 = ~send_reply_random_func.value; AppClock.sched(0,{~synthflow.value;});}, '/synthflow_random_sendreply_answer_f7');
529 OSCFunc({~f8 = ~send_reply_random_func.value; AppClock.sched(0,{~synthflow.value;});}, '/synthflow_random_sendreply_answer_f8');
531 OSCFunc({x = ~f1; y = ~sendreply_gm_fth_y_1; ~sendreply_gm_fth_func.value; ~f1 = x; AppClock.sched(0,{~synthflow.value;}); ~sendreply_gm_fth_y_1 = y;}, '/synthflow_gmf_sendreply_answer_f1');
532 OSCFunc({x = ~f2; y = ~sendreply_gm_fth_y_2; ~sendreply_gm_fth_func.value; ~f2 = x; AppClock.sched(0,{~synthflow.value;}); ~sendreply_gm_fth_y_2 = y;}, '/synthflow_gmf_sendreply_answer_f2');
533 OSCFunc({x = ~f3; y = ~sendreply_gm_fth_y_3; ~sendreply_gm_fth_func.value; ~f3 = x; AppClock.sched(0,{~synthflow.value;}); ~sendreply_gm_fth_y_3 = y;}, '/synthflow_gmf_sendreply_answer_f3');
534 OSCFunc({x = ~f4; y = ~sendreply_gm_fth_y_4; ~sendreply_gm_fth_func.value; ~f4 = x; AppClock.sched(0,{~synthflow.value;}); ~sendreply_gm_fth_y_4 = y;}, '/synthflow_gmf_sendreply_answer_f4');
535 OSCFunc({x = ~f5; y = ~sendreply_gm_fth_y_5; ~sendreply_gm_fth_func.value; ~f5 = x; AppClock.sched(0,{~synthflow.value;}); ~sendreply_gm_fth_y_5 = y;}, '/synthflow_gmf_sendreply_answer_f5');
536 OSCFunc({x = ~f6; y = ~sendreply_gm_fth_y_6; ~sendreply_gm_fth_func.value; ~f6 = x; AppClock.sched(0,{~synthflow.value;}); ~sendreply_gm_fth_y_6 = y;}, '/synthflow_gmf_sendreply_answer_f6');
537 OSCFunc({x = ~f7; y = ~sendreply_gm_fth_y_7; ~sendreply_gm_fth_func.value; ~f7 = x; AppClock.sched(0,{~synthflow.value;}); ~sendreply_gm_fth_y_7 = y;}, '/synthflow_gmf_sendreply_answer_f7');
538 OSCFunc({x = ~f8; y = ~sendreply_gm_fth_y_8; ~sendreply_gm_fth_func.value; ~f8 = x; AppClock.sched(0,{~synthflow.value;}); ~sendreply_gm_fth_y_8 = y;}, '/synthflow_gmf_sendreply_answer_f8');
541 //set base (lowest) frequencies, set starting values for synthdef, and load synthdef on server boot
543 if((~gsinenum == nil) or: (~synthdef != "gsineicld"), {
545 if(~basefreq == nil, {~basefreq = ~base_frequency});
547 (#a,b,c,d,e,f = [ ~basefreq,~basefreq,~basefreq,~basefreq,~basefreq,~basefreq ];
548 ~a = a; ~b = b; ~c =c; ~d = d; ~e = e;~f=f;);
550 ~synthdef = "gsineicld"; ~gsinenum = ~synthdefnum;
557 //generate GUI window
559 w = Window("Timewave Synth", Rect(0,0,Window.screenBounds.width,Window.screenBounds.height), border:true);
561 view = UserView(w, Window.screenBounds);
562 view.clearOnRefresh = false;
563 view.background = Color.black;
565 //vertical grid (inactive)
567 /*~b1 = Window.screenBounds.width/(12*4) /*25.462962962963*/; ~btu = 31; ~btd = 375; ~bw = 0.5; ~bh = 80; ~bcolor = Color.grey;
568 View(w, Rect(~b1, ~btu, ~bw, ~bh)).background = ~bcolor;
569 View(w, Rect(~b1, ~btd, ~bw, ~bh)).background = ~bcolor;
570 54.do({View(w, Rect(~b1 = ~b1+(Window.screenBounds.width/(12*4)), ~btu, ~bw, ~bh)).background = ~bcolor;});
571 ~b1 = Window.screenBounds.width/(12*4);
572 54.do({View(w, Rect(~b1 = ~b1+(Window.screenBounds.width/(12*4)), ~btd, ~bw, ~bh)).background = ~bcolor;});*/
578 ~nw = ~nh*1.6180339887499;
581 ~bgrid = Window.screenBounds.height-(Window.screenBounds.height/1.6180339887499)+30;
583 ~dc1 = ~tgrid-5; ~dc2 = ~bgrid-5; ~dca = 10;
585 9.do(x=~tgrid-10; {View(w, Rect(1, x=x+10, Window.screenBounds.width, 0.5)).background = Color.new255(51, 51, 51)});
586 9.do(x=~bgrid-10; {View(w, Rect(1, x=x+10, Window.screenBounds.width, 0.5)).background = Color.new255(51, 51, 51)});
588 ~z1 = (View(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
589 ~z2 = (View(w, Rect((if(~f2 == nil, {f2.value},{~f2.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
590 ~z3 = (View(w, Rect((if(~f3 == nil, {f3.value},{~f3.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
591 ~z4 = (View(w, Rect((if(~f4 == nil, {f4.value},{~f4.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
592 ~z5 = (View(w, Rect((if(~f5 == nil, {f5.value},{~f5.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
593 ~z6 = (View(w, Rect((if(~f6 == nil, {f6.value},{~f6.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
594 ~z7 = (View(w, Rect((if(~f7 == nil, {f7.value},{~f7.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
595 ~z8 = (View(w, Rect((if(~f8 == nil, {f8.value},{~f8.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
596 ~zmid = (View(w, Rect(x, 280, ~nw, 2)).background = Color.clear;);
597 ~z25 = (View(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
598 ~z26 = (View(w, Rect((if(~f2 == nil, {f2.value},{~f2.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
599 ~z27 = (View(w, Rect((if(~f3 == nil, {f3.value},{~f3.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
600 ~z28 = (View(w, Rect((if(~f4 == nil, {f4.value},{~f4.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
601 ~z29 = (View(w, Rect((if(~f5 == nil, {f5.value},{~f5.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
602 ~z30 = (View(w, Rect((if(~f6 == nil, {f6.value},{~f6.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
603 ~z31 = (View(w, Rect((if(~f7 == nil, {f7.value},{~f7.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
604 ~z32 = (View(w, Rect((if(~f8 == nil, {f8.value},{~f8.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
607 ~dc1 = ~tgrid-5; ~dc2 = ~bgrid-5; ~dca = 10;
610 //synth functions (open, flow, slide, pause, free)
614 {((~l1a.isRunning == false) and: (~l1a1.isRunning == false)) or: ~l1a1.isRunning == true}{
615 if(~l1a1.isRunning == true, {
616 (1.do({var vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8;
617 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8];
618 #f1,f2,f3,f4,f5,f6,f7,f8 = [ 0,0,0,0,0,0,0,0 ];
620 ~l1a1.set(\dur, f1, \vol, vol1); ~l1b1.set(\dur, f1, \vol, vol1);
621 ~l1c1.set(\dur, f1/~icd3, \vol, vol1); ~l1d1.set(\dur, f1/~icd3, \vol, vol1);
622 ~l1e1.set(\dur, f1/~icd6, \vol, vol1); ~l1f1.set(\dur, f1/~icd6, \vol, vol1);
623 ~l2a1.set(\dur, f2, \vol, vol2); ~l2b1.set(\dur, f2, \vol, vol2);
624 ~l2c1.set(\dur, f2/~icd3, \vol, vol2); ~l2d1.set(\dur, f2/~icd3, \vol, vol2);
625 ~l2e1.set(\dur, f2/~icd6, \vol, vol2); ~l2f1.set(\dur, f2/~icd6, \vol, vol2);
626 ~l3a1.set(\dur, f3, \vol, vol3); ~l3b1.set(\dur, f3, \vol, vol3);
627 ~l3c1.set(\dur, f3/~icd3, \vol, vol3); ~l3d1.set(\dur, f3/~icd3, \vol, vol3);
628 ~l3e1.set(\dur, f3/~icd6, \vol, vol3); ~l3f1.set(\dur, f3/~icd6, \vol, vol3);
629 ~l4a1.set(\dur, f4, \vol, vol4); ~l4b1.set(\dur, f4, \vol, vol4);
630 ~l4c1.set(\dur, f4/~icd3, \vol, vol4); ~l4d1.set(\dur, f4/~icd3, \vol, vol4);
631 ~l4e1.set(\dur, f4/~icd6, \vol, vol4); ~l4f1.set(\dur, f4/~icd6, \vol, vol4);
632 ~l5a1.set(\dur, f5, \vol, vol5); ~l5b1.set(\dur, f5, \vol, vol5);
633 ~l5c1.set(\dur, f5/~icd3, \vol, vol5); ~l5d1.set(\dur, f5/~icd3, \vol, vol5);
634 ~l5e1.set(\dur, f5/~icd6, \vol, vol5); ~l5f1.set(\dur, f5/~icd6, \vol, vol5);
635 ~l6a1.set(\dur, f6, \vol, vol6); ~l6b1.set(\dur, f6, \vol, vol6);
636 ~l6c1.set(\dur, f6/~icd3, \vol, vol6); ~l6d1.set(\dur, f6/~icd3, \vol, vol6);
637 ~l6e1.set(\dur, f6/~icd6, \vol, vol6); ~l6f1.set(\dur, f6/~icd6, \vol, vol6);
638 ~l7a1.set(\dur, f7, \vol, vol7); ~l7b1.set(\dur, f7, \vol, vol7);
639 ~l7c1.set(\dur, f7/~icd3, \vol, vol7); ~l7d1.set(\dur, f7/~icd3, \vol, vol7);
640 ~l7e1.set(\dur, f7/~icd6, \vol, vol7); ~l7f1.set(\dur, f7/~icd6, \vol, vol7);
641 ~l8a1.set(\dur, f8, \vol, vol8); ~l8b1.set(\dur, f8, \vol, vol8);
642 ~l8c1.set(\dur, f8/~icd3, \vol, vol8); ~l8d1.set(\dur, f8/~icd3, \vol, vol8);
643 ~l8e1.set(\dur, f8/~icd6, \vol, vol8); ~l8f1.set(\dur, f8/~icd6, \vol, vol8);
649 1.do({var vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,s1,s2,s3,s4,s5,s6,s5_1,s5_2,s5_3,s5_4,s5_5,s5_6,s5_7,s5_8;
650 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8];
651 #s1,s2,s3,s4,s5,s6 = [\gsineicfld6, \gsineicrld6, \gsineicfld2, \gsineicrld2, \gsineicfld1, \gsineicrld1];
653 {~sendreplysynthdef_on == 0}{#s5_1,s5_2,s5_3,s5_4,s5_5,s5_6,s5_7,s5_8 = \gsineicfld1!8;}
654 {~sendreplysynthdef_on == 1}{#s5_1,s5_2,s5_3,s5_4,s5_5,s5_6,s5_7,s5_8 =
655 [\gsineicfld1_f1, \gsineicfld1_f2, \gsineicfld1_f3, \gsineicfld1_f4, \gsineicfld1_f5, \gsineicfld1_f6, \gsineicfld1_f7, \gsineicfld1_f8]; ~sendreply_oscfunc_array.value;};
657 ~l1a = Synth(s1, [\dur, ~f1, \vol, vol1]).register; ~l1b = Synth(s2, [\dur, ~f1, \vol, vol1]);
658 ~l1c = Synth(s3, [\dur, ~f1/~icd3, \vol, vol1]); ~l1d = Synth(s4, [\dur, ~f1/~icd3, \vol, vol1]);
659 ~l1e = Synth(s5_1, [\dur, ~f1/~icd6, \vol, vol1]); ~l1f = Synth(s6, [\dur, ~f1/~icd6, \vol, vol1]);
660 ~l2a = Synth(s1, [\dur, ~f2, \vol, vol2]); ~l2b = Synth(s2, [\dur, ~f2, \vol, vol2]);
661 ~l2c = Synth(s3, [\dur, ~f2/~icd3, \vol, vol2]); ~l2d = Synth(s4, [\dur, ~f2/~icd3, \vol, vol2]);
662 ~l2e = Synth(s5_2, [\dur, ~f2/~icd6, \vol, vol2]); ~l2f = Synth(s6, [\dur, ~f2/~icd6, \vol, vol2]);
663 ~l3a = Synth(s1, [\dur, ~f3, \vol, vol3]); ~l3b = Synth(s2, [\dur, ~f3, \vol, vol3]);
664 ~l3c = Synth(s3, [\dur, ~f3/~icd3, \vol, vol3]); ~l3d = Synth(s4, [\dur, ~f3/~icd3, \vol, vol3]);
665 ~l3e = Synth(s5_3, [\dur, ~f3/~icd6, \vol, vol3]); ~l3f = Synth(s6, [\dur, ~f3/~icd6, \vol, vol3]);
666 ~l4a = Synth(s1, [\dur, ~f4, \vol, vol4]); ~l4b = Synth(s2, [\dur, ~f4, \vol, vol4]);
667 ~l4c = Synth(s3, [\dur, ~f4/~icd3, \vol, vol4]); ~l4d = Synth(s4, [\dur, ~f4/~icd3, \vol, vol4]);
668 ~l4e = Synth(s5_4, [\dur, ~f4/~icd6, \vol, vol4]); ~l4f = Synth(s6, [\dur, ~f4/~icd6, \vol, vol4]);
669 ~l5a = Synth(s1, [\dur, ~f5, \vol, vol5]); ~l5b = Synth(s2, [\dur, ~f5, \vol, vol5]);
670 ~l5c = Synth(s3, [\dur, ~f5/~icd3, \vol, vol5]); ~l5d = Synth(s4, [\dur, ~f5/~icd3, \vol, vol5]);
671 ~l5e = Synth(s5_5, [\dur, ~f5/~icd6, \vol, vol5]); ~l5f = Synth(s6, [\dur, ~f5/~icd6, \vol, vol5]);
672 ~l6a = Synth(s1, [\dur, ~f6, \vol, vol6]); ~l6b = Synth(s2, [\dur, ~f6, \vol, vol6]);
673 ~l6c = Synth(s3, [\dur, ~f6/~icd3, \vol, vol6]); ~l6d = Synth(s4, [\dur, ~f6/~icd3, \vol, vol6]);
674 ~l6e = Synth(s5_6, [\dur, ~f6/~icd6, \vol, vol6]); ~l6f = Synth(s6, [\dur, ~f6/~icd6, \vol, vol6]);
675 ~l7a = Synth(s1, [\dur, ~f7, \vol, vol7]); ~l7b = Synth(s2, [\dur, ~f7, \vol, vol7]);
676 ~l7c = Synth(s3, [\dur, ~f7/~icd3, \vol, vol7]); ~l7d = Synth(s4, [\dur, ~f7/~icd3, \vol, vol7]);
677 ~l7e = Synth(s5_7, [\dur, ~f7/~icd6, \vol, vol7]); ~l7f = Synth(s6, [\dur, ~f7/~icd6, \vol, vol7]);
678 ~l8a = Synth(s1, [\dur, ~f8, \vol, vol8]); ~l8b = Synth(s2, [\dur, ~f8, \vol, vol8]);
679 ~l8c = Synth(s3, [\dur, ~f8/~icd3, \vol, vol8]); ~l8d = Synth(s4, [\dur, ~f8/~icd3, \vol, vol8]);
680 ~l8e = Synth(s5_8, [\dur, ~f8/~icd6, \vol, vol8]); ~l8f = Synth(s6, [\dur, ~f8/~icd6, \vol, vol8]);
684 if(~l1a1.isRunning == true, {
685 AppClock.sched(0.161803398875,{
686 ([~l1a1,~l1b1,~l1c1,~l1d1,~l1e1,~l1f1,~l2a1,~l2b1,~l2c1,~l2d1,~l2e1,~l2f1,~l3a1,~l3b1,~l3c1,~l3d1,~l3e1,~l3f1,~l4a1,~l4b1,~l4c1,~l4d1,~l4e1,~l4f1,~l5a1,~l5b1,~l5c1,~l5d1,~l5e1,~l5f1,~l6a1,~l6b1,~l6c1,~l6d1,~l6e1,~l6f1,~l7a1,~l7b1,~l7c1,~l7d1,~l7e1,~l7f1,~l8a1,~l8b1,~l8c1,~l8d1,~l8e1,~l8f1 ].do(_.free)); ~slideroutine.stop;
690 {~l1a.isRunning == true}{
691 (1.do({var vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8;
692 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8];
693 #f1,f2,f3,f4,f5,f6,f7,f8 = [ 0,0,0,0,0,0,0,0 ];
695 ~l1a.set(\dur, f1, \vol, vol1); ~l1b.set(\dur, f1, \vol, vol1);
696 ~l1c.set(\dur, f1/~icd3, \vol, vol1); ~l1d.set(\dur, f1/~icd3, \vol, vol1);
697 ~l1e.set(\dur, f1/~icd6, \vol, vol1); ~l1f.set(\dur, f1/~icd6, \vol, vol1);
698 ~l2a.set(\dur, f2, \vol, vol2); ~l2b.set(\dur, f2, \vol, vol2);
699 ~l2c.set(\dur, f2/~icd3, \vol, vol2); ~l2d.set(\dur, f2/~icd3, \vol, vol2);
700 ~l2e.set(\dur, f2/~icd6, \vol, vol2); ~l2f.set(\dur, f2/~icd6, \vol, vol2);
701 ~l3a.set(\dur, f3, \vol, vol3); ~l3b.set(\dur, f3, \vol, vol3);
702 ~l3c.set(\dur, f3/~icd3, \vol, vol3); ~l3d.set(\dur, f3/~icd3, \vol, vol3);
703 ~l3e.set(\dur, f3/~icd6, \vol, vol3); ~l3f.set(\dur, f3/~icd6, \vol, vol3);
704 ~l4a.set(\dur, f4, \vol, vol4); ~l4b.set(\dur, f4, \vol, vol4);
705 ~l4c.set(\dur, f4/~icd3, \vol, vol4); ~l4d.set(\dur, f4/~icd3, \vol, vol4);
706 ~l4e.set(\dur, f4/~icd6, \vol, vol4); ~l4f.set(\dur, f4/~icd6, \vol, vol4);
707 ~l5a.set(\dur, f5, \vol, vol5); ~l5b.set(\dur, f5, \vol, vol5);
708 ~l5c.set(\dur, f5/~icd3, \vol, vol5); ~l5d.set(\dur, f5/~icd3, \vol, vol5);
709 ~l5e.set(\dur, f5/~icd6, \vol, vol5); ~l5f.set(\dur, f5/~icd6, \vol, vol5);
710 ~l6a.set(\dur, f6, \vol, vol6); ~l6b.set(\dur, f6, \vol, vol6);
711 ~l6c.set(\dur, f6/~icd3, \vol, vol6); ~l6d.set(\dur, f6/~icd3, \vol, vol6);
712 ~l6e.set(\dur, f6/~icd6, \vol, vol6); ~l6f.set(\dur, f6/~icd6, \vol, vol6);
713 ~l7a.set(\dur, f7, \vol, vol7); ~l7b.set(\dur, f7, \vol, vol7);
714 ~l7c.set(\dur, f7/~icd3, \vol, vol7); ~l7d.set(\dur, f7/~icd3, \vol, vol7);
715 ~l7e.set(\dur, f7/~icd6, \vol, vol7); ~l7f.set(\dur, f7/~icd6, \vol, vol7);
716 ~l8a.set(\dur, f8, \vol, vol8); ~l8b.set(\dur, f8, \vol, vol8);
717 ~l8c.set(\dur, f8/~icd3, \vol, vol8); ~l8d.set(\dur, f8/~icd3, \vol, vol8);
718 ~l8e.set(\dur, f8/~icd6, \vol, vol8); ~l8f.set(\dur, f8/~icd6, \vol, vol8);
723 1.do({var vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,s1,s2,s3,s4,s5,s6,s5_1,s5_2,s5_3,s5_4,s5_5,s5_6,s5_7,s5_8;
724 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8];
725 #s1,s2,s3,s4,s5,s6 = [\gsineicfld6, \gsineicrld6, \gsineicfld2, \gsineicrld2, \gsineicfld1, \gsineicrld1];
727 {~sendreplysynthdef_on == 0}{#s5_1,s5_2,s5_3,s5_4,s5_5,s5_6,s5_7,s5_8 = \gsineicfld1!8;}
728 {~sendreplysynthdef_on == 1}{#s5_1,s5_2,s5_3,s5_4,s5_5,s5_6,s5_7,s5_8 =
729 [\gsineicfld1_f1, \gsineicfld1_f2, \gsineicfld1_f3, \gsineicfld1_f4, \gsineicfld1_f5, \gsineicfld1_f6, \gsineicfld1_f7, \gsineicfld1_f8]; ~sendreply_oscfunc_array.value;};
731 ~l1a1 = Synth(s1, [\dur, ~f1, \vol, vol1]).register; ~l1b1 = Synth(s2, [\dur, ~f1, \vol, vol1]);
732 ~l1c1 = Synth(s3, [\dur, ~f1/~icd3, \vol, vol1]); ~l1d1 = Synth(s4, [\dur, ~f1/~icd3, \vol, vol1]);
733 ~l1e1 = Synth(s5_1, [\dur, ~f1/~icd6, \vol, vol1]); ~l1f1 = Synth(s6, [\dur, ~f1/~icd6, \vol, vol1]);
734 ~l2a1 = Synth(s1, [\dur, ~f2, \vol, vol2]); ~l2b1 = Synth(s2, [\dur, ~f2, \vol, vol2]);
735 ~l2c1 = Synth(s3, [\dur, ~f2/~icd3, \vol, vol2]); ~l2d1 = Synth(s4, [\dur, ~f2/~icd3, \vol, vol2]);
736 ~l2e1 = Synth(s5_2, [\dur, ~f2/~icd6, \vol, vol2]); ~l2f1 = Synth(s6, [\dur, ~f2/~icd6, \vol, vol2]);
737 ~l3a1 = Synth(s1, [\dur, ~f3, \vol, vol3]); ~l3b1 = Synth(s2, [\dur, ~f3, \vol, vol3]);
738 ~l3c1 = Synth(s3, [\dur, ~f3/~icd3, \vol, vol3]); ~l3d1 = Synth(s4, [\dur, ~f3/~icd3, \vol, vol3]);
739 ~l3e1 = Synth(s5_3, [\dur, ~f3/~icd6, \vol, vol3]); ~l3f1 = Synth(s6, [\dur, ~f3/~icd6, \vol, vol3]);
740 ~l4a1 = Synth(s1, [\dur, ~f4, \vol, vol4]); ~l4b1 = Synth(s2, [\dur, ~f4, \vol, vol4]);
741 ~l4c1 = Synth(s3, [\dur, ~f4/~icd3, \vol, vol4]); ~l4d1 = Synth(s4, [\dur, ~f4/~icd3, \vol, vol4]);
742 ~l4e1 = Synth(s5_4, [\dur, ~f4/~icd6, \vol, vol4]); ~l4f1 = Synth(s6, [\dur, ~f4/~icd6, \vol, vol4]);
743 ~l5a1 = Synth(s1, [\dur, ~f5, \vol, vol5]); ~l5b1 = Synth(s2, [\dur, ~f5, \vol, vol5]);
744 ~l5c1 = Synth(s3, [\dur, ~f5/~icd3, \vol, vol5]); ~l5d1 = Synth(s4, [\dur, ~f5/~icd3, \vol, vol5]);
745 ~l5e1 = Synth(s5_5, [\dur, ~f5/~icd6, \vol, vol5]); ~l5f1 = Synth(s6, [\dur, ~f5/~icd6, \vol, vol5]);
746 ~l6a1 = Synth(s1, [\dur, ~f6, \vol, vol6]); ~l6b1 = Synth(s2, [\dur, ~f6, \vol, vol6]);
747 ~l6c1 = Synth(s3, [\dur, ~f6/~icd3, \vol, vol6]); ~l6d1 = Synth(s4, [\dur, ~f6/~icd3, \vol, vol6]);
748 ~l6e1 = Synth(s5_6, [\dur, ~f6/~icd6, \vol, vol6]); ~l6f1 = Synth(s6, [\dur, ~f6/~icd6, \vol, vol6]);
749 ~l7a1 = Synth(s1, [\dur, ~f7, \vol, vol7]); ~l7b1 = Synth(s2, [\dur, ~f7, \vol, vol7]);
750 ~l7c1 = Synth(s3, [\dur, ~f7/~icd3, \vol, vol7]); ~l7d1 = Synth(s4, [\dur, ~f7/~icd3, \vol, vol7]);
751 ~l7e1 = Synth(s5_7, [\dur, ~f7/~icd6, \vol, vol7]); ~l7f1 = Synth(s6, [\dur, ~f7/~icd6, \vol, vol7]);
752 ~l8a1 = Synth(s1, [\dur, ~f8, \vol, vol8]); ~l8b1 = Synth(s2, [\dur, ~f8, \vol, vol8]);
753 ~l8c1 = Synth(s3, [\dur, ~f8/~icd3, \vol, vol8]); ~l8d1 = Synth(s4, [\dur, ~f8/~icd3, \vol, vol8]);
754 ~l8e1 = Synth(s5_8, [\dur, ~f8/~icd6, \vol, vol8]); ~l8f1 = Synth(s6, [\dur, ~f8/~icd6, \vol, vol8]);
758 AppClock.sched(0.161803398875,{
759 ([~l1a,~l1b,~l1c,~l1d,~l1e,~l1f,~l2a,~l2b,~l2c,~l2d,~l2e,~l2f,~l3a,~l3b,~l3c,~l3d,~l3e,~l3f,~l4a,~l4b,~l4c,~l4d,~l4e,~l4f,~l5a,~l5b,~l5c,~l5d,~l5e,~l5f,~l6a,~l6b,~l6c,~l6d,~l6e,~l6f,~l7a,~l7b,~l7c,~l7d,~l7e,~l7f,~l8a,~l8b,~l8c,~l8d,~l8e,~l8f].do(_.free)); ~slideroutine.stop;
763 if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (View(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (View(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
764 if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (View(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (View(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
765 if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (View(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (View(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
766 if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (View(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (View(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
767 if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (View(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (View(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
768 if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (View(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (View(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
769 if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (View(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (View(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
770 if((~f8 > ~outmaxa) or: (~f8 < ~outmina), {~z32.close;~z8.close;~z32 = (View(w, Rect((~f8.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+80, ~nw, 2)).background = Color.white;);}, {~z8.close;~z32.close;~z8 = (View(w, Rect((~f8.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+80, ~nw, 2)).background = Color.white;);});
777 {~l1a1.isRunning == true}{
778 (1.do({var vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,s1,s2,s3,s4,s5,s6;
779 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8];
781 ~l1a1.set(\dur, ~f1, \vol, vol1); ~l1b1.set(\dur, ~f1, \vol, vol1);
782 ~l1c1.set(\dur, ~f1/~icd3, \vol, vol1); ~l1d1.set(\dur, ~f1/~icd3, \vol, vol1);
783 ~l1e1.set(\dur, ~f1/~icd6, \vol, vol1); ~l1f1.set(\dur, ~f1/~icd6, \vol, vol1);
784 ~l2a1.set(\dur, ~f2, \vol, vol2); ~l2b1.set(\dur, ~f2, \vol, vol2);
785 ~l2c1.set(\dur, ~f2/~icd3, \vol, vol2); ~l2d1.set(\dur, ~f2/~icd3, \vol, vol2);
786 ~l2e1.set(\dur, ~f2/~icd6, \vol, vol2); ~l2f1.set(\dur, ~f2/~icd6, \vol, vol2);
787 ~l3a1.set(\dur, ~f3, \vol, vol3); ~l3b1.set(\dur, ~f3, \vol, vol3);
788 ~l3c1.set(\dur, ~f3/~icd3, \vol, vol3); ~l3d1.set(\dur, ~f3/~icd3, \vol, vol3);
789 ~l3e1.set(\dur, ~f3/~icd6, \vol, vol3); ~l3f1.set(\dur, ~f3/~icd6, \vol, vol3);
790 ~l4a1.set(\dur, ~f4, \vol, vol4); ~l4b1.set(\dur, ~f4, \vol, vol4);
791 ~l4c1.set(\dur, ~f4/~icd3, \vol, vol4); ~l4d1.set(\dur, ~f4/~icd3, \vol, vol4);
792 ~l4e1.set(\dur, ~f4/~icd6, \vol, vol4); ~l4f1.set(\dur, ~f4/~icd6, \vol, vol4);
793 ~l5a1.set(\dur, ~f5, \vol, vol5); ~l5b1.set(\dur, ~f5, \vol, vol5);
794 ~l5c1.set(\dur, ~f5/~icd3, \vol, vol5); ~l5d1.set(\dur, ~f5/~icd3, \vol, vol5);
795 ~l5e1.set(\dur, ~f5/~icd6, \vol, vol5); ~l5f1.set(\dur, ~f5/~icd6, \vol, vol5);
796 ~l6a1.set(\dur, ~f6, \vol, vol6); ~l6b1.set(\dur, ~f6, \vol, vol6);
797 ~l6c1.set(\dur, ~f6/~icd3, \vol, vol6); ~l6d1.set(\dur, ~f6/~icd3, \vol, vol6);
798 ~l6e1.set(\dur, ~f6/~icd6, \vol, vol6); ~l6f1.set(\dur, ~f6/~icd6, \vol, vol6);
799 ~l7a1.set(\dur, ~f7, \vol, vol7); ~l7b1.set(\dur, ~f7, \vol, vol7);
800 ~l7c1.set(\dur, ~f7/~icd3, \vol, vol7); ~l7d1.set(\dur, ~f7/~icd3, \vol, vol7);
801 ~l7e1.set(\dur, ~f7/~icd6, \vol, vol7); ~l7f1.set(\dur, ~f7/~icd6, \vol, vol7);
802 ~l8a1.set(\dur, ~f8, \vol, vol8); ~l8b1.set(\dur, ~f8, \vol, vol8);
803 ~l8c1.set(\dur, ~f8/~icd3, \vol, vol8); ~l8d1.set(\dur, ~f8/~icd3, \vol, vol8);
804 ~l8e1.set(\dur, ~f8/~icd6, \vol, vol8); ~l8f1.set(\dur, ~f8/~icd6, \vol, vol8);
808 {~l1a.isRunning == true} {
809 (1.do({var vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,s1,s2,s3,s4,s5,s6;
810 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8];
811 ~l1a.set(\dur, ~f1, \vol, vol1); ~l1b.set(\dur, ~f1, \vol, vol1);
813 ~l1c.set(\dur, ~f1/~icd3, \vol, vol1); ~l1d.set(\dur, ~f1/~icd3, \vol, vol1);
814 ~l1e.set(\dur, ~f1/~icd6, \vol, vol1); ~l1f.set(\dur, ~f1/~icd6, \vol, vol1);
815 ~l2a.set(\dur, ~f2, \vol, vol2); ~l2b.set(\dur, ~f2, \vol, vol2);
816 ~l2c.set(\dur, ~f2/~icd3, \vol, vol2); ~l2d.set(\dur, ~f2/~icd3, \vol, vol2);
817 ~l2e.set(\dur, ~f2/~icd6, \vol, vol2); ~l2f.set(\dur, ~f2/~icd6, \vol, vol2);
818 ~l3a.set(\dur, ~f3, \vol, vol3); ~l3b.set(\dur, ~f3, \vol, vol3);
819 ~l3c.set(\dur, ~f3/~icd3, \vol, vol3); ~l3d.set(\dur, ~f3/~icd3, \vol, vol3);
820 ~l3e.set(\dur, ~f3/~icd6, \vol, vol3); ~l3f.set(\dur, ~f3/~icd6, \vol, vol3);
821 ~l4a.set(\dur, ~f4, \vol, vol4); ~l4b.set(\dur, ~f4, \vol, vol4);
822 ~l4c.set(\dur, ~f4/~icd3, \vol, vol4); ~l4d.set(\dur, ~f4/~icd3, \vol, vol4);
823 ~l4e.set(\dur, ~f4/~icd6, \vol, vol4); ~l4f.set(\dur, ~f4/~icd6, \vol, vol4);
824 ~l5a.set(\dur, ~f5, \vol, vol5); ~l5b.set(\dur, ~f5, \vol, vol5);
825 ~l5c.set(\dur, ~f5/~icd3, \vol, vol5); ~l5d.set(\dur, ~f5/~icd3, \vol, vol5);
826 ~l5e.set(\dur, ~f5/~icd6, \vol, vol5); ~l5f.set(\dur, ~f5/~icd6, \vol, vol5);
827 ~l6a.set(\dur, ~f6, \vol, vol6); ~l6b.set(\dur, ~f6, \vol, vol6);
828 ~l6c.set(\dur, ~f6/~icd3, \vol, vol6); ~l6d.set(\dur, ~f6/~icd3, \vol, vol6);
829 ~l6e.set(\dur, ~f6/~icd6, \vol, vol6); ~l6f.set(\dur, ~f6/~icd6, \vol, vol6);
830 ~l7a.set(\dur, ~f7, \vol, vol7); ~l7b.set(\dur, ~f7, \vol, vol7);
831 ~l7c.set(\dur, ~f7/~icd3, \vol, vol7); ~l7d.set(\dur, ~f7/~icd3, \vol, vol7);
832 ~l7e.set(\dur, ~f7/~icd6, \vol, vol7); ~l7f.set(\dur, ~f7/~icd6, \vol, vol7);
833 ~l8a.set(\dur, ~f8, \vol, vol8); ~l8b.set(\dur, ~f8, \vol, vol8);
834 ~l8c.set(\dur, ~f8/~icd3, \vol, vol8); ~l8d.set(\dur, ~f8/~icd3, \vol, vol8);
835 ~l8e.set(\dur, ~f8/~icd6, \vol, vol8); ~l8f.set(\dur, ~f8/~icd6, \vol, vol8);
840 if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (View(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (View(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
841 if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (View(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (View(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
842 if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (View(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (View(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
843 if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (View(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (View(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
844 if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (View(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (View(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
845 if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (View(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (View(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
846 if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (View(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (View(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
847 if((~f8 > ~outmaxa) or: (~f8 < ~outmina), {~z32.close;~z8.close;~z32 = (View(w, Rect((~f8.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+80, ~nw, 2)).background = Color.white;);}, {~z8.close;~z32.close;~z8 = (View(w, Rect((~f8.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+80, ~nw, 2)).background = Color.white;);});
853 {~l1a1.isRunning == true}{(//fprog
854 ~slideroutine = Routine({1.do({var vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,s1,s2,s3,s4,s5,s6;
855 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8];
856 ~slidedo.do({~slidecount=~slidecount-1;
858 [ ~f1=~f1+g,~f2=~f2+h,~f3=~f3+i,~f4=~f4+j,~f5=~f5+k,~f6=~f6+l,~f7=~f7+m,~f8=~f8+n ];
860 ~l1a1.set(\dur, ~f1, \vol, vol1); ~l1b1.set(\dur, ~f1, \vol, vol1);
861 ~l1c1.set(\dur, ~f1/~icd3, \vol, vol1); ~l1d1.set(\dur, ~f1/~icd3, \vol, vol1);
862 ~l1e1.set(\dur, ~f1/~icd6, \vol, vol1); ~l1f1.set(\dur, ~f1/~icd6, \vol, vol1);
863 ~l2a1.set(\dur, ~f2, \vol, vol2); ~l2b1.set(\dur, ~f2, \vol, vol2);
864 ~l2c1.set(\dur, ~f2/~icd3, \vol, vol2); ~l2d1.set(\dur, ~f2/~icd3, \vol, vol2);
865 ~l2e1.set(\dur, ~f2/~icd6, \vol, vol2); ~l2f1.set(\dur, ~f2/~icd6, \vol, vol2);
866 ~l3a1.set(\dur, ~f3, \vol, vol3); ~l3b1.set(\dur, ~f3, \vol, vol3);
867 ~l3c1.set(\dur, ~f3/~icd3, \vol, vol3); ~l3d1.set(\dur, ~f3/~icd3, \vol, vol3);
868 ~l3e1.set(\dur, ~f3/~icd6, \vol, vol3); ~l3f1.set(\dur, ~f3/~icd6, \vol, vol3);
869 ~l4a1.set(\dur, ~f4, \vol, vol4); ~l4b1.set(\dur, ~f4, \vol, vol4);
870 ~l4c1.set(\dur, ~f4/~icd3, \vol, vol4); ~l4d1.set(\dur, ~f4/~icd3, \vol, vol4);
871 ~l4e1.set(\dur, ~f4/~icd6, \vol, vol4); ~l4f1.set(\dur, ~f4/~icd6, \vol, vol4);
872 ~l5a1.set(\dur, ~f5, \vol, vol5); ~l5b1.set(\dur, ~f5, \vol, vol5);
873 ~l5c1.set(\dur, ~f5/~icd3, \vol, vol5); ~l5d1.set(\dur, ~f5/~icd3, \vol, vol5);
874 ~l5e1.set(\dur, ~f5/~icd6, \vol, vol5); ~l5f1.set(\dur, ~f5/~icd6, \vol, vol5);
875 ~l6a1.set(\dur, ~f6, \vol, vol6); ~l6b1.set(\dur, ~f6, \vol, vol6);
876 ~l6c1.set(\dur, ~f6/~icd3, \vol, vol6); ~l6d1.set(\dur, ~f6/~icd3, \vol, vol6);
877 ~l6e1.set(\dur, ~f6/~icd6, \vol, vol6); ~l6f1.set(\dur, ~f6/~icd6, \vol, vol6);
878 ~l7a1.set(\dur, ~f7, \vol, vol7); ~l7b1.set(\dur, ~f7, \vol, vol7);
879 ~l7c1.set(\dur, ~f7/~icd3, \vol, vol7); ~l7d1.set(\dur, ~f7/~icd3, \vol, vol7);
880 ~l7e1.set(\dur, ~f7/~icd6, \vol, vol7); ~l7f1.set(\dur, ~f7/~icd6, \vol, vol7);
881 ~l8a1.set(\dur, ~f8, \vol, vol8); ~l8b1.set(\dur, ~f8, \vol, vol8);
882 ~l8c1.set(\dur, ~f8/~icd3, \vol, vol8); ~l8d1.set(\dur, ~f8/~icd3, \vol, vol8);
883 ~l8e1.set(\dur, ~f8/~icd6, \vol, vol8); ~l8f1.set(\dur, ~f8/~icd6, \vol, vol8);
888 if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (View(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (View(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
889 if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (View(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (View(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
890 if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (View(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (View(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
891 if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (View(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (View(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
892 if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (View(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (View(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
893 if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (View(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (View(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
894 if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (View(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (View(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
895 if((~f8 > ~outmaxa) or: (~f8 < ~outmina), {~z32.close;~z8.close;~z32 = (View(w, Rect((~f8.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+80, ~nw, 2)).background = Color.white;);}, {~z8.close;~z32.close;~z8 = (View(w, Rect((~f8.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+80, ~nw, 2)).background = Color.white;);});
898 (~slidetime/~slidedo).wait;});});}).play;);}
899 {~l1a.isRunning == true} {(//fprog
900 ~slideroutine = Routine({1.do({var vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,s1,s2,s3,s4,s5,s6;
901 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8];
902 ~slidedo.do({~slidecount=~slidecount-1;
904 [ ~f1=~f1+g,~f2=~f2+h,~f3=~f3+i,~f4=~f4+j,~f5=~f5+k,~f6=~f6+l,~f7=~f7+m,~f8=~f8+n ];
906 ~l1a.set(\dur, ~f1, \vol, vol1); ~l1b.set(\dur, ~f1, \vol, vol1);
907 ~l1c.set(\dur, ~f1/~icd3, \vol, vol1); ~l1d.set(\dur, ~f1/~icd3, \vol, vol1);
908 ~l1e.set(\dur, ~f1/~icd6, \vol, vol1); ~l1f.set(\dur, ~f1/~icd6, \vol, vol1);
909 ~l2a.set(\dur, ~f2, \vol, vol2); ~l2b.set(\dur, ~f2, \vol, vol2);
910 ~l2c.set(\dur, ~f2/~icd3, \vol, vol2); ~l2d.set(\dur, ~f2/~icd3, \vol, vol2);
911 ~l2e.set(\dur, ~f2/~icd6, \vol, vol2); ~l2f.set(\dur, ~f2/~icd6, \vol, vol2);
912 ~l3a.set(\dur, ~f3, \vol, vol3); ~l3b.set(\dur, ~f3, \vol, vol3);
913 ~l3c.set(\dur, ~f3/~icd3, \vol, vol3); ~l3d.set(\dur, ~f3/~icd3, \vol, vol3);
914 ~l3e.set(\dur, ~f3/~icd6, \vol, vol3); ~l3f.set(\dur, ~f3/~icd6, \vol, vol3);
915 ~l4a.set(\dur, ~f4, \vol, vol4); ~l4b.set(\dur, ~f4, \vol, vol4);
916 ~l4c.set(\dur, ~f4/~icd3, \vol, vol4); ~l4d.set(\dur, ~f4/~icd3, \vol, vol4);
917 ~l4e.set(\dur, ~f4/~icd6, \vol, vol4); ~l4f.set(\dur, ~f4/~icd6, \vol, vol4);
918 ~l5a.set(\dur, ~f5, \vol, vol5); ~l5b.set(\dur, ~f5, \vol, vol5);
919 ~l5c.set(\dur, ~f5/~icd3, \vol, vol5); ~l5d.set(\dur, ~f5/~icd3, \vol, vol5);
920 ~l5e.set(\dur, ~f5/~icd6, \vol, vol5); ~l5f.set(\dur, ~f5/~icd6, \vol, vol5);
921 ~l6a.set(\dur, ~f6, \vol, vol6); ~l6b.set(\dur, ~f6, \vol, vol6);
922 ~l6c.set(\dur, ~f6/~icd3, \vol, vol6); ~l6d.set(\dur, ~f6/~icd3, \vol, vol6);
923 ~l6e.set(\dur, ~f6/~icd6, \vol, vol6); ~l6f.set(\dur, ~f6/~icd6, \vol, vol6);
924 ~l7a.set(\dur, ~f7, \vol, vol7); ~l7b.set(\dur, ~f7, \vol, vol7);
925 ~l7c.set(\dur, ~f7/~icd3, \vol, vol7); ~l7d.set(\dur, ~f7/~icd3, \vol, vol7);
926 ~l7e.set(\dur, ~f7/~icd6, \vol, vol7); ~l7f.set(\dur, ~f7/~icd6, \vol, vol7);
927 ~l8a.set(\dur, ~f8, \vol, vol8); ~l8b.set(\dur, ~f8, \vol, vol8);
928 ~l8c.set(\dur, ~f8/~icd3, \vol, vol8); ~l8d.set(\dur, ~f8/~icd3, \vol, vol8);
929 ~l8e.set(\dur, ~f8/~icd6, \vol, vol8); ~l8f.set(\dur, ~f8/~icd6, \vol, vol8);
934 {if(~slidecount==0,{if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (View(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (View(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
935 if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (View(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (View(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
936 if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (View(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (View(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
937 if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (View(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (View(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
938 if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (View(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (View(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
939 if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (View(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (View(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
940 if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (View(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (View(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
941 if((~f8 > ~outmaxa) or: (~f8 < ~outmina), {~z32.close;~z8.close;~z32 = (View(w, Rect((~f8.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+80, ~nw, 2)).background = Color.white;);}, {~z8.close;~z32.close;~z8 = (View(w, Rect((~f8.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+80, ~nw, 2)).background = Color.white;);});
944 (~slidetime/~slidedo).wait;});});}).play;);};
949 {~l1a1.isRunning == true}{
950 (1.do({var vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8;
951 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8];
952 #f1,f2,f3,f4,f5,f6,f7,f8 = [ 0,0,0,0,0,0,0,0 ];
954 ~l1a1.set(\dur, f1, \vol, vol1); ~l1b1.set(\dur, f1, \vol, vol1);
955 ~l1c1.set(\dur, f1/~icd3, \vol, vol1); ~l1d1.set(\dur, f1/~icd3, \vol, vol1);
956 ~l1e1.set(\dur, f1/~icd6, \vol, vol1); ~l1f1.set(\dur, f1/~icd6, \vol, vol1);
957 ~l2a1.set(\dur, f2, \vol, vol2); ~l2b1.set(\dur, f2, \vol, vol2);
958 ~l2c1.set(\dur, f2/~icd3, \vol, vol2); ~l2d1.set(\dur, f2/~icd3, \vol, vol2);
959 ~l2e1.set(\dur, f2/~icd6, \vol, vol2); ~l2f1.set(\dur, f2/~icd6, \vol, vol2);
960 ~l3a1.set(\dur, f3, \vol, vol3); ~l3b1.set(\dur, f3, \vol, vol3);
961 ~l3c1.set(\dur, f3/~icd3, \vol, vol3); ~l3d1.set(\dur, f3/~icd3, \vol, vol3);
962 ~l3e1.set(\dur, f3/~icd6, \vol, vol3); ~l3f1.set(\dur, f3/~icd6, \vol, vol3);
963 ~l4a1.set(\dur, f4, \vol, vol4); ~l4b1.set(\dur, f4, \vol, vol4);
964 ~l4c1.set(\dur, f4/~icd3, \vol, vol4); ~l4d1.set(\dur, f4/~icd3, \vol, vol4);
965 ~l4e1.set(\dur, f4/~icd6, \vol, vol4); ~l4f1.set(\dur, f4/~icd6, \vol, vol4);
966 ~l5a1.set(\dur, f5, \vol, vol5); ~l5b1.set(\dur, f5, \vol, vol5);
967 ~l5c1.set(\dur, f5/~icd3, \vol, vol5); ~l5d1.set(\dur, f5/~icd3, \vol, vol5);
968 ~l5e1.set(\dur, f5/~icd6, \vol, vol5); ~l5f1.set(\dur, f5/~icd6, \vol, vol5);
969 ~l6a1.set(\dur, f6, \vol, vol6); ~l6b1.set(\dur, f6, \vol, vol6);
970 ~l6c1.set(\dur, f6/~icd3, \vol, vol6); ~l6d1.set(\dur, f6/~icd3, \vol, vol6);
971 ~l6e1.set(\dur, f6/~icd6, \vol, vol6); ~l6f1.set(\dur, f6/~icd6, \vol, vol6);
972 ~l7a1.set(\dur, f7, \vol, vol7); ~l7b1.set(\dur, f7, \vol, vol7);
973 ~l7c1.set(\dur, f7/~icd3, \vol, vol7); ~l7d1.set(\dur, f7/~icd3, \vol, vol7);
974 ~l7e1.set(\dur, f7/~icd6, \vol, vol7); ~l7f1.set(\dur, f7/~icd6, \vol, vol7);
975 ~l8a1.set(\dur, f8, \vol, vol8); ~l8b1.set(\dur, f8, \vol, vol8);
976 ~l8c1.set(\dur, f8/~icd3, \vol, vol8); ~l8d1.set(\dur, f8/~icd3, \vol, vol8);
977 ~l8e1.set(\dur, f8/~icd6, \vol, vol8); ~l8f1.set(\dur, f8/~icd6, \vol, vol8);
981 {~l1a.isRunning == true} {
982 (1.do({var vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8;
983 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8];
984 #f1,f2,f3,f4,f5,f6,f7,f8 = [ 0,0,0,0,0,0,0,0 ];
986 ~l1a.set(\dur, f1, \vol, vol1); ~l1b.set(\dur, f1, \vol, vol1);
987 ~l1c.set(\dur, f1/~icd3, \vol, vol1); ~l1d.set(\dur, f1/~icd3, \vol, vol1);
988 ~l1e.set(\dur, f1/~icd6, \vol, vol1); ~l1f.set(\dur, f1/~icd6, \vol, vol1);
989 ~l2a.set(\dur, f2, \vol, vol2); ~l2b.set(\dur, f2, \vol, vol2);
990 ~l2c.set(\dur, f2/~icd3, \vol, vol2); ~l2d.set(\dur, f2/~icd3, \vol, vol2);
991 ~l2e.set(\dur, f2/~icd6, \vol, vol2); ~l2f.set(\dur, f2/~icd6, \vol, vol2);
992 ~l3a.set(\dur, f3, \vol, vol3); ~l3b.set(\dur, f3, \vol, vol3);
993 ~l3c.set(\dur, f3/~icd3, \vol, vol3); ~l3d.set(\dur, f3/~icd3, \vol, vol3);
994 ~l3e.set(\dur, f3/~icd6, \vol, vol3); ~l3f.set(\dur, f3/~icd6, \vol, vol3);
995 ~l4a.set(\dur, f4, \vol, vol4); ~l4b.set(\dur, f4, \vol, vol4);
996 ~l4c.set(\dur, f4/~icd3, \vol, vol4); ~l4d.set(\dur, f4/~icd3, \vol, vol4);
997 ~l4e.set(\dur, f4/~icd6, \vol, vol4); ~l4f.set(\dur, f4/~icd6, \vol, vol4);
998 ~l5a.set(\dur, f5, \vol, vol5); ~l5b.set(\dur, f5, \vol, vol5);
999 ~l5c.set(\dur, f5/~icd3, \vol, vol5); ~l5d.set(\dur, f5/~icd3, \vol, vol5);
1000 ~l5e.set(\dur, f5/~icd6, \vol, vol5); ~l5f.set(\dur, f5/~icd6, \vol, vol5);
1001 ~l6a.set(\dur, f6, \vol, vol6); ~l6b.set(\dur, f6, \vol, vol6);
1002 ~l6c.set(\dur, f6/~icd3, \vol, vol6); ~l6d.set(\dur, f6/~icd3, \vol, vol6);
1003 ~l6e.set(\dur, f6/~icd6, \vol, vol6); ~l6f.set(\dur, f6/~icd6, \vol, vol6);
1004 ~l7a.set(\dur, f7, \vol, vol7); ~l7b.set(\dur, f7, \vol, vol7);
1005 ~l7c.set(\dur, f7/~icd3, \vol, vol7); ~l7d.set(\dur, f7/~icd3, \vol, vol7);
1006 ~l7e.set(\dur, f7/~icd6, \vol, vol7); ~l7f.set(\dur, f7/~icd6, \vol, vol7);
1007 ~l8a.set(\dur, f8, \vol, vol8); ~l8b.set(\dur, f8, \vol, vol8);
1008 ~l8c.set(\dur, f8/~icd3, \vol, vol8); ~l8d.set(\dur, f8/~icd3, \vol, vol8);
1009 ~l8e.set(\dur, f8/~icd6, \vol, vol8); ~l8f.set(\dur, f8/~icd6, \vol, vol8);
1019 {~l1a1.isRunning == true}{
1020 (1.do({var vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8;
1021 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8];
1022 #f1,f2,f3,f4,f5,f6,f7,f8 = [ 0,0,0,0,0,0,0,0 ];
1024 ~l1a1.set(\dur, f1, \vol, vol1); ~l1b1.set(\dur, f1, \vol, vol1);
1025 ~l1c1.set(\dur, f1/~icd3, \vol, vol1); ~l1d1.set(\dur, f1/~icd3, \vol, vol1);
1026 ~l1e1.set(\dur, f1/~icd6, \vol, vol1); ~l1f1.set(\dur, f1/~icd6, \vol, vol1);
1027 ~l2a1.set(\dur, f2, \vol, vol2); ~l2b1.set(\dur, f2, \vol, vol2);
1028 ~l2c1.set(\dur, f2/~icd3, \vol, vol2); ~l2d1.set(\dur, f2/~icd3, \vol, vol2);
1029 ~l2e1.set(\dur, f2/~icd6, \vol, vol2); ~l2f1.set(\dur, f2/~icd6, \vol, vol2);
1030 ~l3a1.set(\dur, f3, \vol, vol3); ~l3b1.set(\dur, f3, \vol, vol3);
1031 ~l3c1.set(\dur, f3/~icd3, \vol, vol3); ~l3d1.set(\dur, f3/~icd3, \vol, vol3);
1032 ~l3e1.set(\dur, f3/~icd6, \vol, vol3); ~l3f1.set(\dur, f3/~icd6, \vol, vol3);
1033 ~l4a1.set(\dur, f4, \vol, vol4); ~l4b1.set(\dur, f4, \vol, vol4);
1034 ~l4c1.set(\dur, f4/~icd3, \vol, vol4); ~l4d1.set(\dur, f4/~icd3, \vol, vol4);
1035 ~l4e1.set(\dur, f4/~icd6, \vol, vol4); ~l4f1.set(\dur, f4/~icd6, \vol, vol4);
1036 ~l5a1.set(\dur, f5, \vol, vol5); ~l5b1.set(\dur, f5, \vol, vol5);
1037 ~l5c1.set(\dur, f5/~icd3, \vol, vol5); ~l5d1.set(\dur, f5/~icd3, \vol, vol5);
1038 ~l5e1.set(\dur, f5/~icd6, \vol, vol5); ~l5f1.set(\dur, f5/~icd6, \vol, vol5);
1039 ~l6a1.set(\dur, f6, \vol, vol6); ~l6b1.set(\dur, f6, \vol, vol6);
1040 ~l6c1.set(\dur, f6/~icd3, \vol, vol6); ~l6d1.set(\dur, f6/~icd3, \vol, vol6);
1041 ~l6e1.set(\dur, f6/~icd6, \vol, vol6); ~l6f1.set(\dur, f6/~icd6, \vol, vol6);
1042 ~l7a1.set(\dur, f7, \vol, vol7); ~l7b1.set(\dur, f7, \vol, vol7);
1043 ~l7c1.set(\dur, f7/~icd3, \vol, vol7); ~l7d1.set(\dur, f7/~icd3, \vol, vol7);
1044 ~l7e1.set(\dur, f7/~icd6, \vol, vol7); ~l7f1.set(\dur, f7/~icd6, \vol, vol7);
1045 ~l8a1.set(\dur, f8, \vol, vol8); ~l8b1.set(\dur, f8, \vol, vol8);
1046 ~l8c1.set(\dur, f8/~icd3, \vol, vol8); ~l8d1.set(\dur, f8/~icd3, \vol, vol8);
1047 ~l8e1.set(\dur, f8/~icd6, \vol, vol8); ~l8f1.set(\dur, f8/~icd6, \vol, vol8);
1050 AppClock.sched(0.161803398875,{
1051 ([~l1a1,~l1b1,~l1c1,~l1d1,~l1e1,~l1f1,~l2a1,~l2b1,~l2c1,~l2d1,~l2e1,~l2f1,~l3a1,~l3b1,~l3c1,~l3d1,~l3e1,~l3f1,~l4a1,~l4b1,~l4c1,~l4d1,~l4e1,~l4f1,~l5a1,~l5b1,~l5c1,~l5d1,~l5e1,~l5f1,~l6a1,~l6b1,~l6c1,~l6d1,~l6e1,~l6f1,~l7a1,~l7b1,~l7c1,~l7d1,~l7e1,~l7f1,~l8a1,~l8b1,~l8c1,~l8d1,~l8e1,~l8f1 ].do(_.free)); ~slideroutine.stop;
1054 {~l1a.isRunning == true}{
1055 (1.do({var vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8;
1056 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8];
1057 #f1,f2,f3,f4,f5,f6,f7,f8 = [ 0,0,0,0,0,0,0,0 ];
1059 ~l1a.set(\dur, f1, \vol, vol1); ~l1b.set(\dur, f1, \vol, vol1);
1060 ~l1c.set(\dur, f1/~icd3, \vol, vol1); ~l1d.set(\dur, f1/~icd3, \vol, vol1);
1061 ~l1e.set(\dur, f1/~icd6, \vol, vol1); ~l1f.set(\dur, f1/~icd6, \vol, vol1);
1062 ~l2a.set(\dur, f2, \vol, vol2); ~l2b.set(\dur, f2, \vol, vol2);
1063 ~l2c.set(\dur, f2/~icd3, \vol, vol2); ~l2d.set(\dur, f2/~icd3, \vol, vol2);
1064 ~l2e.set(\dur, f2/~icd6, \vol, vol2); ~l2f.set(\dur, f2/~icd6, \vol, vol2);
1065 ~l3a.set(\dur, f3, \vol, vol3); ~l3b.set(\dur, f3, \vol, vol3);
1066 ~l3c.set(\dur, f3/~icd3, \vol, vol3); ~l3d.set(\dur, f3/~icd3, \vol, vol3);
1067 ~l3e.set(\dur, f3/~icd6, \vol, vol3); ~l3f.set(\dur, f3/~icd6, \vol, vol3);
1068 ~l4a.set(\dur, f4, \vol, vol4); ~l4b.set(\dur, f4, \vol, vol4);
1069 ~l4c.set(\dur, f4/~icd3, \vol, vol4); ~l4d.set(\dur, f4/~icd3, \vol, vol4);
1070 ~l4e.set(\dur, f4/~icd6, \vol, vol4); ~l4f.set(\dur, f4/~icd6, \vol, vol4);
1071 ~l5a.set(\dur, f5, \vol, vol5); ~l5b.set(\dur, f5, \vol, vol5);
1072 ~l5c.set(\dur, f5/~icd3, \vol, vol5); ~l5d.set(\dur, f5/~icd3, \vol, vol5);
1073 ~l5e.set(\dur, f5/~icd6, \vol, vol5); ~l5f.set(\dur, f5/~icd6, \vol, vol5);
1074 ~l6a.set(\dur, f6, \vol, vol6); ~l6b.set(\dur, f6, \vol, vol6);
1075 ~l6c.set(\dur, f6/~icd3, \vol, vol6); ~l6d.set(\dur, f6/~icd3, \vol, vol6);
1076 ~l6e.set(\dur, f6/~icd6, \vol, vol6); ~l6f.set(\dur, f6/~icd6, \vol, vol6);
1077 ~l7a.set(\dur, f7, \vol, vol7); ~l7b.set(\dur, f7, \vol, vol7);
1078 ~l7c.set(\dur, f7/~icd3, \vol, vol7); ~l7d.set(\dur, f7/~icd3, \vol, vol7);
1079 ~l7e.set(\dur, f7/~icd6, \vol, vol7); ~l7f.set(\dur, f7/~icd6, \vol, vol7);
1080 ~l8a.set(\dur, f8, \vol, vol8); ~l8b.set(\dur, f8, \vol, vol8);
1081 ~l8c.set(\dur, f8/~icd3, \vol, vol8); ~l8d.set(\dur, f8/~icd3, \vol, vol8);
1082 ~l8e.set(\dur, f8/~icd6, \vol, vol8); ~l8f.set(\dur, f8/~icd6, \vol, vol8);
1085 AppClock.sched(0.161803398875,{
1086 ([~l1a,~l1b,~l1c,~l1d,~l1e,~l1f,~l2a,~l2b,~l2c,~l2d,~l2e,~l2f,~l3a,~l3b,~l3c,~l3d,~l3e,~l3f,~l4a,~l4b,~l4c,~l4d,~l4e,~l4f,~l5a,~l5b,~l5c,~l5d,~l5e,~l5f,~l6a,~l6b,~l6c,~l6d,~l6e,~l6f,~l7a,~l7b,~l7c,~l7d,~l7e,~l7f,~l8a,~l8b,~l8c,~l8d,~l8e,~l8f].do(_.free)); ~slideroutine.stop;
1103 {~slot8 == nil}{""};
1105 ~timevals = {(~tst = TextView(w, Rect(~tspl,~tspt, ~tspw, ~tsph)).background_(Color.black);
1107 "o1:_"++~time1o.value.asString++"_f1:_"++~time1f.value.asString++"_s1:_"++~time1s.value.asString++"\n" ++
1108 "o2:_"++~time2o.value.asString++"_f2:_"++~time2f.value.asString++"_s2:_"++~time2s.value.asString++"\n" ++
1109 "o3:_"++~time3o.value.asString++"_f3:_"++~time3f.value.asString++"_s3:_"++~time3s.value.asString++"\n" ++
1110 "o4:_"++~time4o.value.asString++"_f4:_"++~time4f.value.asString++"_s4:_"++~time4s.value.asString++"\n" ++
1111 "o5:_"++~time5o.value.asString++"_f5:_"++~time5f.value.asString++"_s5:_"++~time5s.value.asString++"\n" ++
1112 "o6:_"++~time6o.value.asString++"_f6:_"++~time6f.value.asString++"_s6:_"++~time6s.value.asString++"\n" ++
1113 "o7:_"++~time7o.value.asString++"_f7:_"++~time7f.value.asString++"_s7:_"++~time7s.value.asString++"\n" ++
1114 "o8:_"++~time8o.value.asString++"_f8:_"++~time8f.value.asString++"_s8:_"++~time8s.value.asString++"\n" ++"\n" ++
1115 if(~slot8 != ~slot, {
1116 (~slot1 = ~slot2).asString++"\n" ++
1117 (~slot2 = ~slot3).asString++"\n" ++
1118 (~slot3 = ~slot4).asString++"\n" ++
1119 (~slot4 = ~slot5).asString++"\n" ++
1120 (~slot5 = ~slot6).asString++"\n" ++
1121 (~slot6 = ~slot7).asString++"\n" ++
1122 (~slot7 = ~slot8).asString++"\n" ++
1123 (~slot8 = ~slot).asString;
1125 (~slot1).asString++"\n" ++
1126 (~slot2).asString++"\n" ++
1127 (~slot3).asString++"\n" ++
1128 (~slot4).asString++"\n" ++
1129 (~slot5).asString++"\n" ++
1130 (~slot6).asString++"\n" ++
1131 (~slot7).asString++"\n" ++
1136 ~tst.stringColor = Color.white;
1140 //monitoring number of synths function
1143 if((~numsynths != nil) or: (~numsynths.isPlaying == true), {~numsynths.stop;});
1144 ~numsynths = Routine({inf.do({if((s.numSynths > 49) and: (3.wait; s.numSynths > 49) and: (6.wait; s.numSynths > 49), {
1147 if(~numsynthmessage != nil, {~numsynthmessage.close;});
1148 ~numsynthmessage = View(w, Rect(Window.screenBounds.width-(340+46),Window.screenBounds.height-(340+46/1.6180339887499)-110,340+46,340+46/1.6180339887499)).background_(Color.black).front;
1149 ~numsynthmessagestring = StaticText(~numsynthmessage, Rect(0,0,340+46,340+46/1.6180339887499)).background_(Color.black);
1150 ~numsynthmessagestring.align = \topLeft;
1151 ~numsynthmessagestring.string ="Warning:"++"\n"++"\n"++"More than the normal amount of synths are currently running. It is recommended to free the server by pressing "+"ctrl/cmd - period".quote+" and then pressing the "+"ok".quote+" button. Otherwise, you can press the "+"cancel".quote+" button to allow the synths to keep running. If you press the "+"cancel".quote+" button this message will not show again unless "+"synth0".quote+" has been pressed.";
1152 ~numsynthmessagestring.stringColor = Color.white;
1153 ~numsynthmessagebutton1 = Button.new(~numsynthmessage,Rect(120-46,340/1.6180339887499-30,46,46/1.6180339887499)).states_([["ok",Color.white,Color.black]]).action_({AppClock.sched(0, {~numsynthmessage.close; ~numsynths.play; ~midifunc.value;});});
1154 ~numsynthmessagebutton2 = Button.new(~numsynthmessage,Rect(320+46-100,340/1.6180339887499-30,46,46/1.6180339887499)).states_([["cancel",Color.white,Color.black]]).action_({AppClock.sched(0, {~numsynths.stop; ~numsynthmessage.close;});});
1155 ~numsynthmessage.front;
1157 }); 1.wait;});}).play;
1160 ~numsynthsfunc.value;
1165 view.mouseDownAction = {
1166 |v, x, y, mod, butNum|
1168 if(butNum == 0, { v.refresh;
1170 //generate dots on mouse down action
1173 ~bgrid = Window.screenBounds.height-(Window.screenBounds.height/1.6180339887499)+30;
1177 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z1.close;~z1 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1178 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z2.close;~z2 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1179 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z3.close;~z3 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1180 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z4.close;~z4 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1181 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z5.close;~z5 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1182 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z6.close;~z6 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1183 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z7.close;~z7 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1184 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z8.close;~z8 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1185 {y>~tgrid and: y<~bgrid} {nil}
1186 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z1.close;~z1 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1187 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z2.close;~z2 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1188 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z3.close;~z3 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1189 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z4.close;~z4 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1190 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z5.close;~z5 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1191 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z6.close;~z6 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1192 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z7.close;~z7 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1193 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z8.close;~z8 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1197 ~bgrid = Window.screenBounds.height-(Window.screenBounds.height/1.6180339887499)+30;
1199 //set synth values on mouse down action
1202 {~l1a.isRunning == true}{
1205 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1206 ~l1a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1207 ~l1b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f1=q.value; ~undof1=~f1;
1208 ~l1c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1209 ~l1d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1210 ~l1e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1211 ~l1f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1212 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1213 ~l2a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1214 ~l2b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f2=q.value; ~undof2=~f2;
1215 ~l2c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1216 ~l2d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1217 ~l2e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1218 ~l2f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1219 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1220 ~l3a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1221 ~l3b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f3=q.value; ~undof3=~f3;
1222 ~l3c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1223 ~l3d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1224 ~l3e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1225 ~l3f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1226 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1227 ~l4a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1228 ~l4b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f4=q.value; ~undof4=~f4;
1229 ~l4c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1230 ~l4d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1231 ~l4e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1232 ~l4f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1233 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1234 ~l5a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1235 ~l5b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f5=q.value; ~undof5=~f5;
1236 ~l5c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1237 ~l5d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1238 ~l5e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1239 ~l5f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1240 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1241 ~l6a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1242 ~l6b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f6=q.value; ~undof6=~f6;
1243 ~l6c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1244 ~l6d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1245 ~l6e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1246 ~l6f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1247 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1248 ~l7a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1249 ~l7b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f7=q.value; ~undof7=~f7;
1250 ~l7c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1251 ~l7d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1252 ~l7e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1253 ~l7f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1254 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1255 ~l8a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1256 ~l8b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f8=q.value; ~undof8=~f8;
1257 ~l8c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1258 ~l8d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1259 ~l8e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1260 ~l8f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1261 {y>~tgrid and: y<~bgrid} {nil}
1262 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1263 ~l1a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1264 ~l1b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f1=q.value; ~undof1=~f1;
1265 ~l1c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1266 ~l1d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1267 ~l1e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1268 ~l1f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1269 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1270 ~l2a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1271 ~l2b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f2=q.value; ~undof2=~f2;
1272 ~l2c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1273 ~l2d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1274 ~l2e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1275 ~l2f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1276 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1277 ~l3a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1278 ~l3b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f3=q.value; ~undof3=~f3;
1279 ~l3c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1280 ~l3d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1281 ~l3e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1282 ~l3f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1283 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1284 ~l4a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1285 ~l4b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f4=q.value; ~undof4=~f4;
1286 ~l4c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1287 ~l4d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1288 ~l4e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1289 ~l4f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1290 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1291 ~l5a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1292 ~l5b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f5=q.value; ~undof5=~f5;
1293 ~l5c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1294 ~l5d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1295 ~l5e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1296 ~l5f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1297 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1298 ~l6a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1299 ~l6b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f6=q.value; ~undof6=~f6;
1300 ~l6c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1301 ~l6d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1302 ~l6e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1303 ~l6f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1304 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1305 ~l7a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1306 ~l7b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f7=q.value; ~undof7=~f7;
1307 ~l7c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1308 ~l7d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1309 ~l7e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1310 ~l7f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1311 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1312 ~l8a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1313 ~l8b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f8=q.value; ~undof8=~f8;
1314 ~l8c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1315 ~l8d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1316 ~l8e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1317 ~l8f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);};
1319 {~l1a1.isRunning == true}{
1322 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1323 ~l1a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1324 ~l1b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f1=q.value; ~undof1=~f1;
1325 ~l1c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1326 ~l1d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1327 ~l1e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1328 ~l1f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1329 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1330 ~l2a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1331 ~l2b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f2=q.value; ~undof2=~f2;
1332 ~l2c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1333 ~l2d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1334 ~l2e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1335 ~l2f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1336 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1337 ~l3a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1338 ~l3b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f3=q.value; ~undof3=~f3;
1339 ~l3c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1340 ~l3d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1341 ~l3e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1342 ~l3f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1343 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1344 ~l4a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1345 ~l4b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f4=q.value; ~undof4=~f4;
1346 ~l4c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1347 ~l4d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1348 ~l4e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1349 ~l4f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1350 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1351 ~l5a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1352 ~l5b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f5=q.value; ~undof5=~f5;
1353 ~l5c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1354 ~l5d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1355 ~l5e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1356 ~l5f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1357 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1358 ~l6a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1359 ~l6b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f6=q.value; ~undof6=~f6;
1360 ~l6c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1361 ~l6d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1362 ~l6e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1363 ~l6f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1364 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1365 ~l7a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1366 ~l7b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f7=q.value; ~undof7=~f7;
1367 ~l7c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1368 ~l7d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1369 ~l7e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1370 ~l7f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1371 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1372 ~l8a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1373 ~l8b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f8=q.value; ~undof8=~f8;
1374 ~l8c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1375 ~l8d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1376 ~l8e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1377 ~l8f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1378 {y>~tgrid and: y<~bgrid} {nil}
1379 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1380 ~l1a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1381 ~l1b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f1=q.value; ~undof1=~f1;
1382 ~l1c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1383 ~l1d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1384 ~l1e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1385 ~l1f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1386 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1387 ~l2a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1388 ~l2b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f2=q.value; ~undof2=~f2;
1389 ~l2c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1390 ~l2d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1391 ~l2e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1392 ~l2f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1393 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1394 ~l3a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1395 ~l3b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f3=q.value; ~undof3=~f3;
1396 ~l3c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1397 ~l3d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1398 ~l3e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1399 ~l3f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1400 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1401 ~l4a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1402 ~l4b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f4=q.value; ~undof4=~f4;
1403 ~l4c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1404 ~l4d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1405 ~l4e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1406 ~l4f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1407 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1408 ~l5a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1409 ~l5b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f5=q.value; ~undof5=~f5;
1410 ~l5c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1411 ~l5d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1412 ~l5e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1413 ~l5f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1414 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1415 ~l6a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1416 ~l6b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f6=q.value; ~undof6=~f6;
1417 ~l6c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1418 ~l6d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1419 ~l6e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1420 ~l6f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1421 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1422 ~l7a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1423 ~l7b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f7=q.value; ~undof7=~f7;
1424 ~l7c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1425 ~l7d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1426 ~l7e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1427 ~l7f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1428 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1429 ~l8a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1430 ~l8b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f8=q.value; ~undof8=~f8;
1431 ~l8c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1432 ~l8d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1433 ~l8e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1434 ~l8f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);};
1441 view.mouseMoveAction = {
1445 ~nw = ~nh*1.6180339887499;
1447 //generate dots on mouse move action
1450 ~bgrid = Window.screenBounds.height-(Window.screenBounds.height/1.6180339887499)+30;
1454 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z1.close;~z25.close;~z1 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1455 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z2.close;~z26.close;~z2 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1456 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z3.close;~z27.close;~z3 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1457 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z4.close;~z28.close;~z4 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1458 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z5.close;~z29.close;~z5 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1459 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z6.close;~z30.close;~z6 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1460 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z7.close;~z31.close;~z7 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1461 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z8.close;~z32.close;~z8 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1462 {y>~tgrid and: y<~bgrid} {nil}
1463 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z1.close;~z25.close;~z1 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1464 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z2.close;~z26.close;~z2 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1465 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z3.close;~z27.close;~z3 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1466 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z4.close;~z28.close;~z4 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1467 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z5.close;~z29.close;~z5 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1468 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z6.close;~z30.close;~z6 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1469 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z7.close;~z31.close;~z7 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
1470 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z8.close;~z32.close;~z8 = (View(w, Rect(x, y, ~nw, 2)).background = Color.white;)};
1474 ~bgrid = Window.screenBounds.height-(Window.screenBounds.height/1.6180339887499)+30;
1476 //set synth values on mouse move action
1479 {~l1a.isRunning == true}{
1482 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1483 ~l1a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1484 ~l1b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f1=q.value; ~undof1=~f1;
1485 ~l1c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1486 ~l1d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1487 ~l1e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1488 ~l1f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1489 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1490 ~l2a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1491 ~l2b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f2=q.value; ~undof2=~f2;
1492 ~l2c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1493 ~l2d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1494 ~l2e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1495 ~l2f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1496 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1497 ~l3a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1498 ~l3b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f3=q.value; ~undof3=~f3;
1499 ~l3c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1500 ~l3d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1501 ~l3e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1502 ~l3f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1503 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1504 ~l4a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1505 ~l4b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f4=q.value; ~undof4=~f4;
1506 ~l4c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1507 ~l4d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1508 ~l4e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1509 ~l4f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1510 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1511 ~l5a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1512 ~l5b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f5=q.value; ~undof5=~f5;
1513 ~l5c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1514 ~l5d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1515 ~l5e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1516 ~l5f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1517 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1518 ~l6a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1519 ~l6b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f6=q.value; ~undof6=~f6;
1520 ~l6c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1521 ~l6d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1522 ~l6e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1523 ~l6f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1524 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1525 ~l7a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1526 ~l7b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f7=q.value; ~undof7=~f7;
1527 ~l7c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1528 ~l7d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1529 ~l7e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1530 ~l7f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1531 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1532 ~l8a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1533 ~l8b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f8=q.value; ~undof8=~f8;
1534 ~l8c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1535 ~l8d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1536 ~l8e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1537 ~l8f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1538 {y>~tgrid and: y<~bgrid} {nil}
1539 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1540 ~l1a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1541 ~l1b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f1=q.value; ~undof1=~f1;
1542 ~l1c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1543 ~l1d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1544 ~l1e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1545 ~l1f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1546 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1547 ~l2a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1548 ~l2b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f2=q.value; ~undof2=~f2;
1549 ~l2c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1550 ~l2d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1551 ~l2e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1552 ~l2f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1553 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1554 ~l3a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1555 ~l3b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f3=q.value; ~undof3=~f3;
1556 ~l3c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1557 ~l3d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1558 ~l3e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1559 ~l3f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1560 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1561 ~l4a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1562 ~l4b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f4=q.value; ~undof4=~f4;
1563 ~l4c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1564 ~l4d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1565 ~l4e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1566 ~l4f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1567 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1568 ~l5a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1569 ~l5b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f5=q.value; ~undof5=~f5;
1570 ~l5c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1571 ~l5d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1572 ~l5e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1573 ~l5f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1574 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1575 ~l6a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1576 ~l6b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f6=q.value; ~undof6=~f6;
1577 ~l6c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1578 ~l6d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1579 ~l6e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1580 ~l6f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1581 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1582 ~l7a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1583 ~l7b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f7=q.value; ~undof7=~f7;
1584 ~l7c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1585 ~l7d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1586 ~l7e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1587 ~l7f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1588 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1589 ~l8a.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1590 ~l8b.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f8=q.value; ~undof8=~f8;
1591 ~l8c.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1592 ~l8d.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1593 ~l8e.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1594 ~l8f.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);};
1596 {~l1a1.isRunning == true}{
1599 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1600 ~l1a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1601 ~l1b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f1=q.value; ~undof1=~f1;
1602 ~l1c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1603 ~l1d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1604 ~l1e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1605 ~l1f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1606 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1607 ~l2a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1608 ~l2b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f2=q.value; ~undof2=~f2;
1609 ~l2c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1610 ~l2d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1611 ~l2e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1612 ~l2f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1613 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1614 ~l3a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1615 ~l3b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f3=q.value; ~undof3=~f3;
1616 ~l3c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1617 ~l3d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1618 ~l3e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1619 ~l3f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1620 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1621 ~l4a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1622 ~l4b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f4=q.value; ~undof4=~f4;
1623 ~l4c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1624 ~l4d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1625 ~l4e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1626 ~l4f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1627 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1628 ~l5a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1629 ~l5b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f5=q.value; ~undof5=~f5;
1630 ~l5c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1631 ~l5d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1632 ~l5e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1633 ~l5f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1634 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1635 ~l6a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1636 ~l6b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f6=q.value; ~undof6=~f6;
1637 ~l6c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1638 ~l6d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1639 ~l6e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1640 ~l6f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1641 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1642 ~l7a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1643 ~l7b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f7=q.value; ~undof7=~f7;
1644 ~l7c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1645 ~l7d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1646 ~l7e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1647 ~l7f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1648 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
1649 ~l8a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)));
1650 ~l8b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value); ~f8=q.value; ~undof8=~f8;
1651 ~l8c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd3);
1652 ~l8d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd3);
1653 ~l8e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1))/~icd6);
1654 ~l8f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value/~icd6);}
1655 {y>~tgrid and: y<~bgrid} {nil}
1656 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1657 ~l1a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1658 ~l1b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f1=q.value; ~undof1=~f1;
1659 ~l1c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1660 ~l1d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1661 ~l1e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1662 ~l1f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1663 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1664 ~l2a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1665 ~l2b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f2=q.value; ~undof2=~f2;
1666 ~l2c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1667 ~l2d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1668 ~l2e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1669 ~l2f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1670 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1671 ~l3a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1672 ~l3b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f3=q.value; ~undof3=~f3;
1673 ~l3c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1674 ~l3d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1675 ~l3e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1676 ~l3f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1677 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1678 ~l4a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1679 ~l4b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f4=q.value; ~undof4=~f4;
1680 ~l4c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1681 ~l4d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1682 ~l4e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1683 ~l4f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1684 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1685 ~l5a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1686 ~l5b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f5=q.value; ~undof5=~f5;
1687 ~l5c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1688 ~l5d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1689 ~l5e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1690 ~l5f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1691 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1692 ~l6a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1693 ~l6b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f6=q.value; ~undof6=~f6;
1694 ~l6c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1695 ~l6d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1696 ~l6e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1697 ~l6f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1698 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1699 ~l7a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1700 ~l7b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f7=q.value; ~undof7=~f7;
1701 ~l7c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1702 ~l7d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1703 ~l7e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1704 ~l7f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);}
1705 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
1706 ~l8a1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)));
1707 ~l8b1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value); ~f8=q.value; ~undof8=~f8;
1708 ~l8c1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd3);
1709 ~l8d1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd3);
1710 ~l8e1.set(\dur, ((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2))/~icd6);
1711 ~l8f1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value/~icd6);};
1716 ~bgrid = Window.screenBounds.height-(Window.screenBounds.height/1.6180339887499)+30;
1717 ~dc1 = ~tgrid-5; ~dc2 = ~bgrid-5; ~dca = 10;
1719 ~bpl = Window.screenBounds.width-340;
1720 ~bpt = Window.screenBounds.height-88;
1722 ~bpw = 40/1.6180339887499;
1727 b = Button.new(w,Rect(Window.screenBounds.width*0+80,Window.screenBounds.height-52,60,60/1.6180339887499)).states_([["copy",Color.white,Color.black],["copy",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1728 if(button.value == 1, {
1730 ~tsc = TextView(w, Rect(0,5, Window.screenBounds.width, 354)).background_(Color.black);
1732 "current chord/frequencies: "++"\n"++"\n"++
1734 "[~f1="++~f1.asString++",~f2="++~f2.asString++",~f3="++~f3.asString++",~f4="++~f4.asString++",~f5="++~f5.asString++",~f6="++~f6.asString++",~f7="++~f7.asString++",~f8="++~f8.asString++"]"++"\n"++"\n"++
1736 "saved open/flow 1-8 frequencies (in script format): "++"\n"++"\n"++
1738 "[~f1="++~fp1.asString++",~f2="++~fp2.asString++",~f3="++~fp3.asString++",~f4="++~fp4.asString++",~f5="++~fp5.asString++",~f6="++~fp6.asString++",~f7="++~fp7.asString++",~f8="++~fp8.asString++"];"++" "++"~synthopen.value; ~trace.value; (a).wait;"++"\n"++
1739 "[~f1="++~fp1b.asString++",~f2="++~fp2b.asString++",~f3="++~fp3b.asString++",~f4="++~fp4b.asString++",~f5="++~fp5b.asString++",~f6="++~fp6b.asString++",~f7="++~fp7b.asString++",~f8="++~fp8b.asString++"];"++" "++"~synthflow.value; ~trace.value; (a).wait;"++"\n"++
1740 "[~f1="++~fp1c.asString++",~f2="++~fp2c.asString++",~f3="++~fp3c.asString++",~f4="++~fp4c.asString++",~f5="++~fp5c.asString++",~f6="++~fp6c.asString++",~f7="++~fp7c.asString++",~f8="++~fp8c.asString++"];"++" "++"~synthflow.value; ~trace.value; (a).wait;"++"\n"++
1741 "[~f1="++~fp1d.asString++",~f2="++~fp2d.asString++",~f3="++~fp3d.asString++",~f4="++~fp4d.asString++",~f5="++~fp5d.asString++",~f6="++~fp6d.asString++",~f7="++~fp7d.asString++",~f8="++~fp8d.asString++"];"++" "++"~synthflow.value; ~trace.value; (a).wait;"++"\n"++
1742 "[~f1="++~fp1e.asString++",~f2="++~fp2e.asString++",~f3="++~fp3e.asString++",~f4="++~fp4e.asString++",~f5="++~fp5e.asString++",~f6="++~fp6e.asString++",~f7="++~fp7e.asString++",~f8="++~fp8e.asString++"];"++" "++"~synthflow.value; ~trace.value; (a).wait;"++"\n"++
1743 "[~f1="++~fp1f.asString++",~f2="++~fp2f.asString++",~f3="++~fp3f.asString++",~f4="++~fp4f.asString++",~f5="++~fp5f.asString++",~f6="++~fp6f.asString++",~f7="++~fp7f.asString++",~f8="++~fp8f.asString++"];"++" "++"~synthflow.value; ~trace.value; (a).wait;"++"\n"++
1744 "[~f1="++~fp1g.asString++",~f2="++~fp2g.asString++",~f3="++~fp3g.asString++",~f4="++~fp4g.asString++",~f5="++~fp5g.asString++",~f6="++~fp6g.asString++",~f7="++~fp7g.asString++",~f8="++~fp8g.asString++"];"++" "++"~synthflow.value; ~trace.value; (a).wait;"++"\n"++
1745 "[~f1="++~fp1h.asString++",~f2="++~fp2h.asString++",~f3="++~fp3h.asString++",~f4="++~fp4h.asString++",~f5="++~fp5h.asString++",~f6="++~fp6h.asString++",~f7="++~fp7h.asString++",~f8="++~fp8h.asString++"];"++" "++"~synthflow.value; ~trace.value; (a).wait;"++"\n"++"\n"++
1747 "saved slide 1-8 frequencies (in script format): "++"\n"++"\n"++
1749 "#s,t,u,v,w,x,y,z = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]; [~f1="++~fp1.asString++",~f2="++~fp2.asString++",~f3="++~fp3.asString++",~f4="++~fp4.asString++",~f5="++~fp5.asString++",~f6="++~fp6.asString++",~f7="++~fp7.asString++",~f8="++~fp8.asString++"];"++" "++"~slidetime = 1; ~slidedo = 432; ~synthslide.value; ~trace.value; (a).wait;"++"\n"++
1750 "#s,t,u,v,w,x,y,z = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]; [~f1="++~fp1b.asString++",~f2="++~fp2b.asString++",~f3="++~fp3b.asString++",~f4="++~fp4b.asString++",~f5="++~fp5b.asString++",~f6="++~fp6b.asString++",~f7="++~fp7b.asString++",~f8="++~fp8b.asString++"];"++" "++"~slidetime = 1; ~slidedo = 432; ~synthslide.value; ~trace.value; (a).wait;"++"\n"++
1751 "#s,t,u,v,w,x,y,z = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]; [~f1="++~fp1c.asString++",~f2="++~fp2c.asString++",~f3="++~fp3c.asString++",~f4="++~fp4c.asString++",~f5="++~fp5c.asString++",~f6="++~fp6c.asString++",~f7="++~fp7c.asString++",~f8="++~fp8c.asString++"];"++" "++"~slidetime = 1; ~slidedo = 432; ~synthslide.value; ~trace.value; (a).wait;"++"\n"++
1752 "#s,t,u,v,w,x,y,z = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]; [~f1="++~fp1d.asString++",~f2="++~fp2d.asString++",~f3="++~fp3d.asString++",~f4="++~fp4d.asString++",~f5="++~fp5d.asString++",~f6="++~fp6d.asString++",~f7="++~fp7d.asString++",~f8="++~fp8d.asString++"];"++" "++"~slidetime = 1; ~slidedo = 432; ~synthslide.value; ~trace.value; (a).wait;"++"\n"++
1753 "#s,t,u,v,w,x,y,z = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]; [~f1="++~fp1e.asString++",~f2="++~fp2e.asString++",~f3="++~fp3e.asString++",~f4="++~fp4e.asString++",~f5="++~fp5e.asString++",~f6="++~fp6e.asString++",~f7="++~fp7e.asString++",~f8="++~fp8e.asString++"];"++" "++"~slidetime = 1; ~slidedo = 432; ~synthslide.value; ~trace.value; (a).wait;"++"\n"++
1754 "#s,t,u,v,w,x,y,z = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]; [~f1="++~fp1f.asString++",~f2="++~fp2f.asString++",~f3="++~fp3f.asString++",~f4="++~fp4f.asString++",~f5="++~fp5f.asString++",~f6="++~fp6f.asString++",~f7="++~fp7f.asString++",~f8="++~fp8f.asString++"];"++" "++"~slidetime = 1; ~slidedo = 432; ~synthslide.value; ~trace.value; (a).wait;"++"\n"++
1755 "#s,t,u,v,w,x,y,z = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]; [~f1="++~fp1g.asString++",~f2="++~fp2g.asString++",~f3="++~fp3g.asString++",~f4="++~fp4g.asString++",~f5="++~fp5g.asString++",~f6="++~fp6g.asString++",~f7="++~fp7g.asString++",~f8="++~fp8g.asString++"];"++" "++"~slidetime = 1; ~slidedo = 432; ~synthslide.value; ~trace.value; (a).wait;"++"\n"++
1756 "#s,t,u,v,w,x,y,z = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]; [~f1="++~fp1h.asString++",~f2="++~fp2h.asString++",~f3="++~fp3h.asString++",~f4="++~fp4h.asString++",~f5="++~fp5h.asString++",~f6="++~fp6h.asString++",~f7="++~fp7h.asString++",~f8="++~fp8h.asString++"];"++" "++"~slidetime = 1; ~slidedo = 432; ~synthslide.value; ~trace.value; (a).wait;"
1758 ~tsc.stringColor = Color.white;
1759 [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8/*,~f9,~f10,~f11,~f12*/ ].postln;},
1764 /*//stop timer button
1766 sts = Button.new(w,Rect(Window.screenBounds.width-20-20-20-20,~bpt+69+5,20,20/1.6180339887499)).states_([["st",Color.white,Color.black],["st",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1767 if(~timer.isPlaying == true, {
1768 if(~tst.value == nil, {~timer.stop; ~systemclock.stop; ~systemclock.clear;},{~tst.close;
1770 ~timer.stop; ~systemclock.stop; ~systemclock.clear;});
1777 ~ts = Button.new(w,Rect(Window.screenBounds.width*0+20,Window.screenBounds.height-52,60,60/1.6180339887499)).states_([["tsynth0",Color.white,Color.black],["tsynth1",Color.white,Color.black]]).action_({arg synthbutton; synthbutton.value.postln}).action_({arg synthbutton; if(synthbutton.value == 1, {
1779 ~sts = Button.new(w,Rect(~bp01l-90,~bp01t,80,20)).states_([["stop timer",Color.white,Color.black],["stop timer",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1780 if(~timer.isPlaying == true, {
1781 if(~tst.value == nil, {~timer.stop; ~systemclock.stop; ~systemclock.clear;},{~tst.close;
1783 ~timer.stop; ~systemclock.stop; ~systemclock.clear;});
1787 if(~tst != nil, {~tst.close});
1789 ~timer.stop; ~systemclock.stop; ~systemclock.clear;},{if(~tst.value == nil, {~timer.stop; ~systemclock.stop; ~systemclock.clear;},{~timer.stop; ~systemclock.stop; ~systemclock.clear; ~tst.close; ~sts.close;})});
1794 //start/stop synth button
1796 b3 = Button.new(w,Rect(Window.screenBounds.width*0+20,Window.screenBounds.height-88,60,60/1.6180339887499)).states_([["synth0",Color.white,Color.black],["synth1",Color.white,Color.black]]).action_({arg synthbutton; synthbutton.value.postln}).action_({
1797 arg synthbutton; if(synthbutton.value == 1, {
1798 ~l1a = Synth(\gsineicfld, [\dur, 432]).register;~l1a1 = Synth(\gsineicfld, [\dur, 432]).register;[~l1a, ~l1a1].do(_.free);~l1a = Synth(\gsineicfld, [\dur, 432]).register;~l1a1 = Synth(\gsineicfld, [\dur, 432]).register;[~l1a, ~l1a1].do(_.free);
1800 ~numsynths.stop; ~numsynthsfunc.value;
1803 {~synthfree.value; b4.value = 0;})
1807 //pause/unpause button
1809 b4 = Button.new(w,Rect(Window.screenBounds.width*0+80,Window.screenBounds.height-88,60,60/1.6180339887499)).states_([["pause0",Color.white,Color.black],["pause1",Color.white,Color.black]]).action_({arg synthbutton; synthbutton.value.postln}).action_({
1810 arg synthbutton; if(synthbutton.value == 1, {~synthpause.value; if(~ts.value == 1, {~timer.stop;});},
1811 {~synthflow.value; if(~ts.value != 1, {nil}, {SystemClock.play(~timer);})})
1815 //generate values for number of KW(King Wen) sequences in a timewave half-cycle (or amplitude x2) pop-up menu
1817 if(~low_pass_filter_set_value == nil, {~low_pass_filter_set_value = ~low_pass_filter_freq_limit});
1818 if(~low_pass_filter_set_value != ~low_pass_filter_freq_limit, {~low_pass_filter_set_value = ~low_pass_filter_freq_limit});
1823 ~settingsbutton = Button.new(w,Rect(20+60*2+15+25,Window.screenBounds.height-88+(30/1.6180339887499*0),60,60/1.6180339887499)).states_([["settings",Color.white,Color.black],["settings",Color.white,Color.black]]).action_({arg button;
1825 if(button.value == 1, {
1828 arg top = 0,width=160, revertwidth=75, height = 25, heightbox = 25, lefttime = 0 , lefttimebox = width+5, widthbox=165, leftdo = lefttimebox+widthbox+5, leftdobox = leftdo+57, inc=0, lw = 0, uw = 0, numw = 40;
1829 var tall, stall, iall, siall, st1, st2, st3, st4, st5, st6, st7, st8, st9, st10, st11, st12, si1, si2, si3, si4, si5, si6, si7, si8, t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12;
1830 ~settingsview = View(w, Rect(20+60*2+15+25,Window.screenBounds.height-370,380,420/1.6180339887499)).front;
1831 /*w.view.decorator=FlowLayout(w.view.bounds);
1832 w.view.decorator.gap=2@2;*/
1836 t1 = StaticText(~settingsview, Rect(lefttime , top=top, width, height)).background_(Color.black).string_("KWS number").stringColor_(Color.white);
1837 t2 = StaticText(~settingsview, Rect(lefttime , top=top+height+5, width, height)).background_(Color.black).string_("base(lowest) freq(hz)").stringColor_(Color.white);
1838 t3 = StaticText(~settingsview, Rect(lefttime , top=top+height+5, width, height)).background_(Color.black).string_("synthdef type").stringColor_(Color.white);
1839 t4 = StaticText(~settingsview, Rect(lefttime , top=top+height+5, width, height)).background_(Color.black).string_("lp filter limit(hz)").stringColor_(Color.white);
1840 t5 = StaticText(~settingsview, Rect(lefttime , top=top+height+5, width, height)).background_(Color.black).string_("automate").stringColor_(Color.white);
1841 t6 = StaticText(~settingsview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("automate period").stringColor_(Color.white);
1842 t7 = StaticText(~settingsview, Rect(lefttime , top=top+height+5, width, height+10)).background_(Color.black).string_("volume(use small intervals)").stringColor_(Color.white);
1848 //number of KW(King Wen) sequences in a timewave half-cycle (or amplitude x2) pop-up menu
1850 ~menu2 = PopUpMenu(~settingsview,Rect(lefttimebox , top=top, widthbox, heightbox)).items_(x = 0; Array.fill(24, {(x=x+1).asString++" kws"});).background_(Color.black).stringColor_(Color.white).action_({arg button;
1852 if(~st != nil, {~st.close});
1853 ~st = StaticText(~settingsview, Rect(lefttime, top, 200, 20)).background_(Color.black);
1854 ~st.stringColor = Color.white;
1855 ~st.string = "# of kws in halfcycle selected";
1856 AppClock.sched(~gm,{~st.close;});
1859 ~menu2.value = ~gsinenum-1;
1862 //pop-menu for timewave base(lowest) frequency
1864 ~bfreq = PopUpMenu(~settingsview, Rect(lefttimebox , top=top+heightbox+5, widthbox, heightbox)).items_(~bfreqv = (-1); Array.fill(~basefreqmap.size, {~basefreqmap.at(~bfreqv=~bfreqv+1).asString})).background_(Color.black).stringColor_(Color.white).action_({arg button;
1866 if(~st != nil, {~st.close});
1867 ~st = StaticText(~settingsview, Rect(lefttime, top, 200, 20)).background_(Color.black);
1868 ~st.stringColor = Color.white;
1869 ~st.string = "basefreq selected";
1870 AppClock.sched(~gm,{~st.close;});
1873 if(~bfreqval != nil, {~bfreq.value = ~bfreqval}, {~bfreq.value = ~basefreqmap.indexOf(~base_frequency);});
1876 //synthdef pop-up menu
1878 ~gsinemenu = PopUpMenu(~settingsview, Rect(lefttimebox , top=top+heightbox+5, widthbox, heightbox)).items_(["psine1","psine2","psine3","hsine1","hsine2","hsine3","psineuf1","psineuf2","psineuf3","hsineuf1","hsineuf2","hsineuf3"]).background_(Color.black).stringColor_(Color.white).action_({arg button;
1880 if(~gsinemenu.value == 0, {~kws_setting = 1; ~ratio_setting = "psine1"; ~low_pass_filter_on = 1; ~gs = 0;});
1881 if(~gsinemenu.value == 1, {~kws_setting = 2; ~ratio_setting = "psine2"; ~low_pass_filter_on = 1; ~gs = 1;});
1882 if(~gsinemenu.value == 2, {~kws_setting = 3; ~ratio_setting = "psine3"; ~low_pass_filter_on = 1; ~gs = 2;});
1883 if(~gsinemenu.value == 3, {~kws_setting = 1; ~ratio_setting = "hsine1"; ~low_pass_filter_on = 1; ~gs = 3;});
1884 if(~gsinemenu.value == 4, {~kws_setting = 2; ~ratio_setting = "hsine2"; ~low_pass_filter_on = 1; ~gs = 4;});
1885 if(~gsinemenu.value == 5, {~kws_setting = 3; ~ratio_setting = "hsine3"; ~low_pass_filter_on = 1; ~gs = 5;});
1886 if(~gsinemenu.value == 6, {~kws_setting = 1; ~ratio_setting = "psine1"; ~low_pass_filter_on = 0; ~gs = 6;});
1887 if(~gsinemenu.value == 7, {~kws_setting = 2; ~ratio_setting = "psine2"; ~low_pass_filter_on = 0; ~gs = 7;});
1888 if(~gsinemenu.value == 8, {~kws_setting = 3; ~ratio_setting = "psine3"; ~low_pass_filter_on = 0; ~gs = 8;});
1889 if(~gsinemenu.value == 9, {~kws_setting = 1; ~ratio_setting = "hsine1"; ~low_pass_filter_on = 0; ~gs = 9;});
1890 if(~gsinemenu.value == 10, {~kws_setting = 2; ~ratio_setting = "hsine2"; ~low_pass_filter_on = 0; ~gs = 10;});
1891 if(~gsinemenu.value == 11, {~kws_setting = 3; ~ratio_setting = "hsine3"; ~low_pass_filter_on = 0; ~gs = 11;});
1893 if(~st != nil, {~st.close});
1894 ~st = StaticText(~settingsview, Rect(lefttime, top, 200, 20)).background_(Color.black);
1895 ~st.stringColor = Color.white;
1896 ~st.string = "synthdef setting selected";
1897 AppClock.sched(~gm,{~st.close;});
1900 if(~gs == nil, {~gs = 0;});
1903 {~gs == 0}{~gsinemenu.value = 0;}
1904 {~gs == 1}{~gsinemenu.value = 1;}
1905 {~gs == 2}{~gsinemenu.value = 2;}
1906 {~gs == 3}{~gsinemenu.value = 3;}
1907 {~gs == 4}{~gsinemenu.value = 4;}
1908 {~gs == 5}{~gsinemenu.value = 5;}
1909 {~gs == 0}{~gsinemenu.value = 6;}
1910 {~gs == 1}{~gsinemenu.value = 7;}
1911 {~gs == 2}{~gsinemenu.value = 8;}
1912 {~gs == 3}{~gsinemenu.value = 9;}
1913 {~gs == 4}{~gsinemenu.value = 10;}
1914 {~gs == 5}{~gsinemenu.value = 11;};
1917 //set low-pass filter frequency limit
1919 ~low_pass_filter_textfield = TextField(~settingsview, Rect(lefttimebox , top=top+heightbox+5, widthbox, heightbox));
1920 ~low_pass_filter_textfield.string = ~low_pass_filter_set_value.asString;
1921 ~low_pass_filter_textfield.background_(Color.black);
1922 ~low_pass_filter_textfield.stringColor_(Color.white);
1923 ~low_pass_filter_textfield.action = {arg value; ~freqsetvalue = value.value;
1925 ~freqset_textfield_func.value; //this function is found after line 2900
1927 ~low_pass_filter_set_value = ~freqsetvalue.value;
1929 ~low_pass_filter_textfield.string = ~low_pass_filter_set_value.asString; ~low_pass_filter_set_value = ~low_pass_filter_set_value.asFloat;
1931 if(~low_pass_filter_set_value != 0, {
1932 if(~st != nil, {~st.close});
1933 ~st = StaticText(~settingsview, Rect(lefttime, top, 240, 20)).background_(Color.black);
1934 ~st.stringColor = Color.white;
1935 ~st.string = "low-pass filter freq limit selected";
1936 AppClock.sched(~gm,{~st.close;});
1937 }, {~low_pass_filter_set_value = ~low_pass_filter_freq_limit; ~low_pass_filter_textfield.string = ~low_pass_filter_set_value.asString;});
1941 //switch to sendreply functions
1943 ~sendreplymenu = PopUpMenu(~settingsview,Rect(lefttimebox , top=top+heightbox+5, widthbox, heightbox)).items_(["off","phi/fth trans","phi trans","western scale","eastern scale"]).background_(Color.black).stringColor_(Color.white).action_({arg button;
1946 {button.value == 0;}{~sendreplymenu_value = 0;}
1947 {button.value == 1;}{~sendreplymenu_value = 1;}
1948 {button.value == 2;}{~sendreplymenu_value = 2;}
1949 {button.value == 3;}{~sendreplymenu_value = 3;}
1950 {button.value == 4;}{~sendreplymenu_value = 4;};
1952 if(~st != nil, {~st.close});
1953 ~st = StaticText(~settingsview, Rect(lefttime, top, 200, 20)).background_(Color.black);
1954 ~st.stringColor = Color.white;
1955 ~st.string = "automate setting selected";
1956 AppClock.sched(~gm,{~st.close;});
1959 if(~sendreplymenu_value == nil, {~sendreplymenu_value = 0;});
1962 {~sendreplymenu_value == 0}{~sendreplymenu.value = 0;}
1963 {~sendreplymenu_value == 1}{~sendreplymenu.value = 1;}
1964 {~sendreplymenu_value == 2}{~sendreplymenu.value = 2;}
1965 {~sendreplymenu_value == 3}{~sendreplymenu.value = 3;}
1966 {~sendreplymenu_value == 4}{~sendreplymenu.value = 4;};
1969 //set automate note-change period for sendreply
1971 ~sendreplyperiodtextfield = TextField(~settingsview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox));
1972 ~sendreplyperiodtextfield.string = ~sendreply_period.asString;
1973 ~sendreplyperiodtextfield.background_(Color.black);
1974 ~sendreplyperiodtextfield.stringColor_(Color.white);
1975 ~sendreplyperiodtextfield.action = {arg value; ~freqsetvalue = value.value;
1977 ~freqset_textfield_func.value; //this function is found after line 2900
1979 ~sendreply_period = ~freqsetvalue.value;
1981 ~sendreplyperiodtextfield.string = ~sendreply_period.asString; ~sendreply_period = ~sendreply_period.asFloat;
1983 if(~st != nil, {~st.close});
1984 ~st = StaticText(~settingsview, Rect(lefttime, top, 240, 35)).background_(Color.black);
1985 ~st.stringColor = Color.white;
1986 ~st.string = "automate note-change period selected";
1987 AppClock.sched(~gm,{~st.close;});
1993 ~volumetextfield = TextField(~settingsview, Rect(lefttimebox , top=top+heightbox+5, widthbox, heightbox));
1994 ~volumetextfield.string = ~vol.asString;
1995 ~volumetextfield.background_(Color.black);
1996 ~volumetextfield.stringColor_(Color.white);
1997 ~volumetextfield.action = {arg value; ~freqsetvalue = value.value;
1999 ~volumetextfield.value; //this function is found after line 2900
2001 ~vol = ~freqsetvalue.value;
2003 ~volumetextfield.string = ~vol.asString; ~vol = ~vol.asFloat;
2005 12.do(x = 0; {("vol"++(x=x+1)).asSymbol.envirPut(~vol)});
2007 if(~st != nil, {~st.close});
2008 ~st = StaticText(~settingsview, Rect(lefttime, top, 240, 35)).background_(Color.black);
2009 ~st.stringColor = Color.white;
2010 ~st.string = "volume selected";
2011 AppClock.sched(~gm,{~st.close;});
2015 //set button for all settings
2017 ~set1=Button(~settingsview,Rect(lefttimebox+widthbox-60, top=top+height+20, 60, 60/~gm)).states_([["set",Color.white,Color.black]]).mouseDownAction_({
2019 ~st1 = StaticText(~settingsview, Rect(lefttime, top, 200, 20)).background_(Color.black);
2020 ~st1.stringColor = Color.white;
2021 ~st1.string = "loading...";
2023 ~basefreq = ~basefreqmap.at(~bfreq.value;); ~bfreqval = ~bfreq.value;
2025 (#a,b,c,d,e,f = [ ~basefreq,~basefreq,~basefreq,~basefreq,~basefreq,~basefreq ]; ~a = a; ~b = b; ~c =c; ~d = d; ~e = e;~f=f;);
2027 ~low_pass_filter_freq_limit = ~low_pass_filter_set_value;
2033 {~ratio_setting == "psine1";}{~n_value1 = ~gm; ~n_value2 = ~gm2; ~n_value6 = ~gm6;}
2034 {~ratio_setting == "psine2";}{~n_value1 = ~ngm1; ~n_value2 = ~ngm2; ~n_value6 = ~ngm6;}
2035 {~ratio_setting == "psine3";}{~n_value1 = ~nngm1; ~n_value2 = ~nngm2; ~n_value6 = ~nngm6;}
2036 {~ratio_setting == "hsine1";}{~n_value1 = ~h1; ~n_value2 = ~h2; ~n_value6 = ~h6;}
2037 {~ratio_setting == "hsine2";}{~n_value1 = ~nh1; ~n_value2 = ~nh2; ~n_value6 = ~nh6;}
2038 {~ratio_setting == "hsine3";}{~n_value1 = ~nnh1; ~n_value2 = ~nnh2; ~n_value6 = ~nnh6;};
2044 {~sendreplymenu.value == 0}{~sendreplysynthdef_on = 0;}
2045 {~sendreplymenu.value == 1}{~sendreplysynthdef_on = 1; ~sendreplyfunc_choose = 0; ~sendreply_gm_fth_func = ~sendreply_gm_fth_func_1}
2046 {~sendreplymenu.value == 2}{~sendreplysynthdef_on = 1; ~sendreplyfunc_choose = 0; ~sendreply_gm_fth_func = ~sendreply_gm_fth_func_2}
2047 {~sendreplymenu.value == 3}{~sendreplysynthdef_on = 1; ~sendreplyfunc_choose = 1; ~send_reply_random_func = ~send_reply_random_func_western; ~sendreplyfuncswitch = 1;}
2048 {~sendreplymenu.value == 4}{~sendreplysynthdef_on = 1; ~sendreplyfunc_choose = 1; ~send_reply_random_func = ~send_reply_random_func_eastern; ~sendreplyfuncswitch = 2;};
2051 //evaluate synthdefs(gsine)
2053 AppClock.sched(~gm,{
2055 {~menu2.value == 0}{~gsinenum = 1; ~gsine.value;}
2056 {~menu2.value == 1}{~gsinenum = 2; ~gsine.value;}
2057 {~menu2.value == 2}{~gsinenum = 3; ~gsine.value;}
2058 {~menu2.value == 3}{~gsinenum = 4; ~gsine.value;}
2059 {~menu2.value == 4}{~gsinenum = 5; ~gsine.value;}
2060 {~menu2.value == 5}{~gsinenum = 6; ~gsine.value;}
2061 {~menu2.value == 6}{~gsinenum = 7; ~gsine.value;}
2062 {~menu2.value == 7}{~gsinenum = 8; ~gsine.value;}
2063 {~menu2.value == 8}{~gsinenum = 9; ~gsine.value;}
2064 {~menu2.value == 9}{~gsinenum = 10; ~gsine.value;}
2065 {~menu2.value == 10}{~gsinenum = 11; ~gsine.value;}
2066 {~menu2.value == 11}{~gsinenum = 12; ~gsine.value;}
2067 {~menu2.value == 12}{~gsinenum = 13; ~gsine.value;}
2068 {~menu2.value == 13}{~gsinenum = 14; ~gsine.value;}
2069 {~menu2.value == 14}{~gsinenum = 15; ~gsine.value;}
2070 {~menu2.value == 15}{~gsinenum = 16; ~gsine.value;}
2071 {~menu2.value == 16}{~gsinenum = 17; ~gsine.value;}
2072 {~menu2.value == 17}{~gsinenum = 18; ~gsine.value;}
2073 {~menu2.value == 18}{~gsinenum = 19; ~gsine.value;}
2074 {~menu2.value == 19}{~gsinenum = 20; ~gsine.value;}
2075 {~menu2.value == 20}{~gsinenum = 21; ~gsine.value;}
2076 {~menu2.value == 21}{~gsinenum = 22; ~gsine.value;}
2077 {~menu2.value == 22}{~gsinenum = 23; ~gsine.value;}
2078 {~menu2.value == 23}{~gsinenum = 24; ~gsine.value;};
2081 ~st_load = StaticText(~settingsview, Rect(lefttime, top, 200, 20)).background_(Color.black);
2082 ~st_load.stringColor = Color.white;
2083 ~st_load.string = "loaded.";
2084 AppClock.sched(~gm,{if(~st != nil, {~st.close}); ~st_load.close;});
2091 ~settingsview.background_(Color.black);
2093 /*~closessettingsbutton = Button.new(~settingsview,Rect(lefttimebox+widthbox-40, top, 40, 40/~gm)).states_([["close",Color.white,Color.black]]).action_({arg button;
2095 ~settingsview.close; ~settingsbutton.value = 0;
2101 ~settingsview.front;
2102 }, {~settingsview.close});
2106 //open/flow/slide buttons coordinate values
2109 ~bpw = 26/1.6180339887499;
2110 ~bpl = Window.screenBounds.width-(~bph*8)-20;
2111 ~bpt = Window.screenBounds.height-88;
2114 ~bp02l = ~bpl+(~bph*1);
2115 ~bp03l = ~bpl+(~bph*2);
2116 ~bp04l = ~bpl+(~bph*3);
2117 ~bp05l = ~bpl+(~bph*4);
2118 ~bp06l = ~bpl+(~bph*5);
2119 ~bp07l = ~bpl+(~bph*6);
2120 ~bp08l = ~bpl+(~bph*7);
2122 ~bpf2l = ~bpl+(~bph*1);
2123 ~bpf3l = ~bpl+(~bph*2);
2124 ~bpf4l = ~bpl+(~bph*3);
2125 ~bpf5l = ~bpl+(~bph*4);
2126 ~bpf6l = ~bpl+(~bph*5);
2127 ~bpf7l = ~bpl+(~bph*6);
2128 ~bpf8l = ~bpl+(~bph*7);
2183 ~tspl=Window.screenBounds.width-~tspw;
2187 //synthopen 1-8 buttons
2189 ~bplaceo1 = Button.new(w,Rect(~bp01l,~bp01t,~bp01h,~bp01w)).states_([["o1",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2191 [~f1=~fp1,~f2=~fp2,~f3=~fp3,~f4=~fp4,~f5=~fp5,~f6=~fp6,~f7=~fp7,~f8=~fp8];
2194 ~currentsynth = "o1"; ~synthmonitorfunc.value;
2197 {if(~tst == nil, {nil}, {~tst.close;});
2199 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time1o = 0;
2200 ~timer = Routine({inf.do({
2202 ~time1o+0.01; ~slot = "o1_"+~time1o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2206 ~bplaceo2 = Button.new(w,Rect(~bp02l,~bp02t,~bp02h,~bp02w)).states_([["o2",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2208 [~f1=~fp1b,~f2=~fp2b,~f3=~fp3b,~f4=~fp4b,~f5=~fp5b,~f6=~fp6b,~f7=~fp7b,~f8=~fp8b];
2211 ~currentsynth = "o2"; ~synthmonitorfunc.value;
2214 {if(~tst == nil, {nil}, {~tst.close;});
2216 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time2o = 0;
2217 ~timer = Routine({inf.do({
2219 ~time2o+0.01; ~slot = "o2_"+~time2o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2222 ~bplaceo3 = Button.new(w,Rect(~bp03l,~bp03t,~bp03h,~bp03w)).states_([["o3",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2224 [~f1=~fp1c,~f2=~fp2c,~f3=~fp3c,~f4=~fp4c,~f5=~fp5c,~f6=~fp6c,~f7=~fp7c,~f8=~fp8c];
2227 ~currentsynth = "o3"; ~synthmonitorfunc.value;
2230 {if(~tst == nil, {nil}, {~tst.close;});
2232 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time3o = 0;
2233 ~timer = Routine({inf.do({
2235 ~time3o+0.01; ~slot = "o3_"+~time3o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2238 ~bplaceo4 = Button.new(w,Rect(~bp04l,~bp04t,~bp04h,~bp04w)).states_([["o4",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2240 [~f1=~fp1d,~f2=~fp2d,~f3=~fp3d,~f4=~fp4d,~f5=~fp5d,~f6=~fp6d,~f7=~fp7d,~f8=~fp8d];
2243 ~currentsynth = "o4"; ~synthmonitorfunc.value;
2246 {if(~tst == nil, {nil}, {~tst.close;});
2248 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time4o = 0;
2249 ~timer = Routine({inf.do({
2251 ~time4o+0.01; ~slot = "o4_"+~time4o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2256 ~bplaceo5 = Button.new(w,Rect(~bp05l,~bp05t,~bp05h,~bp05w)).states_([["o5",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2258 [~f1=~fp1e,~f2=~fp2e,~f3=~fp3e,~f4=~fp4e,~f5=~fp5e,~f6=~fp6e,~f7=~fp7e,~f8=~fp8e];
2261 ~currentsynth = "o5"; ~synthmonitorfunc.value;
2264 {if(~tst == nil, {nil}, {~tst.close;});
2266 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time5o = 0;
2267 ~timer = Routine({inf.do({
2269 ~time5o+0.01; ~slot = "o5_"+~time5o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2273 ~bplaceo6 = Button.new(w,Rect(~bp06l,~bp06t,~bp06h,~bp06w)).states_([["o6",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2275 [~f1=~fp1f,~f2=~fp2f,~f3=~fp3f,~f4=~fp4f,~f5=~fp5f,~f6=~fp6f,~f7=~fp7f,~f8=~fp8f];
2278 ~currentsynth = "o6"; ~synthmonitorfunc.value;
2281 {if(~tst == nil, {nil}, {~tst.close;});
2283 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time6o = 0;
2284 ~timer = Routine({inf.do({
2286 ~time6o+0.01; ~slot = "o6_"+~time6o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2289 ~bplaceo7 = Button.new(w,Rect(~bp07l,~bp07t,~bp07h,~bp07w)).states_([["o7",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2291 [~f1=~fp1g,~f2=~fp2g,~f3=~fp3g,~f4=~fp4g,~f5=~fp5g,~f6=~fp6g,~f7=~fp7g,~f8=~fp8g];
2294 ~currentsynth = "o7"; ~synthmonitorfunc.value;
2297 {if(~tst == nil, {nil}, {~tst.close;});
2299 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time7o = 0;
2300 ~timer = Routine({inf.do({
2302 ~time7o+0.01; ~slot = "o7_"+~time7o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2305 ~bplaceo8 = Button.new(w,Rect(~bp08l,~bp08t,~bp08h,~bp08w)).states_([["o8",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2307 [~f1=~fp1h,~f2=~fp2h,~f3=~fp3h,~f4=~fp4h,~f5=~fp5h,~f6=~fp6h,~f7=~fp7h,~f8=~fp8h];
2310 ~currentsynth = "o8"; ~synthmonitorfunc.value;
2313 {if(~tst == nil, {nil}, {~tst.close;});
2315 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time8o = 0;
2316 ~timer = Routine({inf.do({
2318 ~time8o+0.01; ~slot = "o8_"+~time8o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2323 //synthflow 1-8 buttons
2325 ~bplacef1 = Button.new(w,Rect(~bpf1l,~bpf1t,~bpf1h,~bpf1w)).states_([["f1",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2327 [~f1=~fp1,~f2=~fp2,~f3=~fp3,~f4=~fp4,~f5=~fp5,~f6=~fp6,~f7=~fp7,~f8=~fp8];
2330 ~currentsynth = "f1"; ~synthmonitorfunc.value;
2333 {if(~tst == nil, {nil}, {~tst.close;});
2335 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time1f = 0;
2336 ~timer = Routine({inf.do({
2338 ~time1f+0.01; ~slot = "f1_"+~time1f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2341 ~bplacef2 = Button.new(w,Rect(~bpf2l,~bpf2t,~bpf2h,~bpf2w)).states_([["f2",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2343 [~f1=~fp1b,~f2=~fp2b,~f3=~fp3b,~f4=~fp4b,~f5=~fp5b,~f6=~fp6b,~f7=~fp7b,~f8=~fp8b];
2346 ~currentsynth = "f2"; ~synthmonitorfunc.value;
2349 {if(~tst == nil, {nil}, {~tst.close;});
2351 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time2f = 0;
2352 ~timer = Routine({inf.do({
2354 ~time2f+0.01; ~slot = "f2_"+~time2f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2358 ~bplacef3 = Button.new(w,Rect(~bpf3l,~bpf3t,~bpf3h,~bpf3w)).states_([["f3",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2360 [~f1=~fp1c,~f2=~fp2c,~f3=~fp3c,~f4=~fp4c,~f5=~fp5c,~f6=~fp6c,~f7=~fp7c,~f8=~fp8c];
2363 ~currentsynth = "f3"; ~synthmonitorfunc.value;
2366 {if(~tst == nil, {nil}, {~tst.close;});
2368 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time3f = 0;
2369 ~timer = Routine({inf.do({
2371 ~time3f+0.01; ~slot = "f3_"+~time3f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2374 ~bplacef4 = Button.new(w,Rect(~bpf4l,~bpf4t,~bpf4h,~bpf4w)).states_([["f4",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2376 [~f1=~fp1d,~f2=~fp2d,~f3=~fp3d,~f4=~fp4d,~f5=~fp5d,~f6=~fp6d,~f7=~fp7d,~f8=~fp8d];
2379 ~currentsynth = "f4"; ~synthmonitorfunc.value;
2382 {if(~tst == nil, {nil}, {~tst.close;});
2384 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time4f = 0;
2385 ~timer = Routine({inf.do({
2387 ~time4f+0.01; ~slot = "f4_"+~time4f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2391 ~bplacef5 = Button.new(w,Rect(~bpf5l,~bpf5t,~bpf5h,~bpf5w)).states_([["f5",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2393 [~f1=~fp1e,~f2=~fp2e,~f3=~fp3e,~f4=~fp4e,~f5=~fp5e,~f6=~fp6e,~f7=~fp7e,~f8=~fp8e];
2396 ~currentsynth = "f5"; ~synthmonitorfunc.value;
2399 {if(~tst == nil, {nil}, {~tst.close;});
2401 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time5f = 0;
2402 ~timer = Routine({inf.do({
2404 ~time5f+0.01; ~slot = "f5_"+~time5f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2408 ~bplacef6 = Button.new(w,Rect(~bpf6l,~bpf6t,~bpf6h,~bpf6w)).states_([["f6",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2410 [~f1=~fp1f,~f2=~fp2f,~f3=~fp3f,~f4=~fp4f,~f5=~fp5f,~f6=~fp6f,~f7=~fp7f,~f8=~fp8f];
2413 ~currentsynth = "f6"; ~synthmonitorfunc.value;
2416 {if(~tst == nil, {nil}, {~tst.close;});
2418 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time6f = 0;
2419 ~timer = Routine({inf.do({
2421 ~time6f+0.01; ~slot = "f6_"+~time6f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2426 ~bplacef7 = Button.new(w,Rect(~bpf7l,~bpf7t,~bpf7h,~bpf7w)).states_([["f7",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2428 [~f1=~fp1g,~f2=~fp2g,~f3=~fp3g,~f4=~fp4g,~f5=~fp5g,~f6=~fp6g,~f7=~fp7g,~f8=~fp8g];
2431 ~currentsynth = "f7"; ~synthmonitorfunc.value;
2434 {if(~tst == nil, {nil}, {~tst.close;});
2436 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time7f = 0;
2437 ~timer = Routine({inf.do({
2439 ~time7f+0.01; ~slot = "f7_"+~time7f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2442 ~bplacef8 = Button.new(w,Rect(~bpf8l,~bpf8t,~bpf8h,~bpf8w)).states_([["f8",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2444 [~f1=~fp1h,~f2=~fp2h,~f3=~fp3h,~f4=~fp4h,~f5=~fp5h,~f6=~fp6h,~f7=~fp7h,~f8=~fp8h];
2447 ~currentsynth = "f8"; ~synthmonitorfunc.value;
2450 {if(~tst == nil, {nil}, {~tst.close;});
2452 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time8f = 0;
2453 ~timer = Routine({inf.do({
2455 ~time8f+0.01; ~slot = "f8_"+~time8f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2460 //synthslide 1-8 buttons
2462 ~bplaces1 = Button.new(w,Rect(~bpf1l,~bpf1t+~bpf1w,~bpf1h,~bpf1w)).states_([["s1",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2464 if(~slidetime1 == nil, {~slidetime1 = 4}); if(~slidedo1 == nil, {~slidedo1 = 2000;}); ~slidecount = ~slidedo1;
2465 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]-
2466 [ ~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8 ])*(-1)/~slidedo1);
2468 ~slidetime =~slidetime1; ~slidedo = ~slidedo1;
2473 ~currentsynth = "s1"; ~synthmonitorfunc.value;
2476 {if(~tst == nil, {nil}, {~tst.close;});
2478 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time1s = 0;
2479 ~timer = Routine({inf.do({
2481 ~time1s+0.01; ~slot = "s1_"+~time1s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2485 ~bplaces2 = Button.new(w,Rect(~bpf2l,~bpf2t+~bpf2w,~bpf2h,~bpf2w)).states_([["s2",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2487 if(~slidetime2 == nil, {~slidetime2 = 4}); if(~slidedo2 == nil, {~slidedo2 = 2000;}); ~slidecount = ~slidedo2;
2488 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]-
2489 [ ~fp1b,~fp2b,~fp3b,~fp4b,~fp5b,~fp6b,~fp7b,~fp8b ])*(-1)/~slidedo2);
2491 ~slidetime = ~slidetime2; ~slidedo = ~slidedo2;
2496 ~currentsynth = "s2"; ~synthmonitorfunc.value;
2499 {if(~tst == nil, {nil}, {~tst.close;});
2501 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time2s = 0;
2502 ~timer = Routine({inf.do({
2504 ~time2s+0.01; ~slot = "s2_"+~time2s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2508 ~bplaces3 = Button.new(w,Rect(~bpf3l,~bpf3t+~bpf3w,~bpf3h,~bpf3w)).states_([["s3",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2510 if(~slidetime3 == nil, {~slidetime3 = 4}); if(~slidedo3 == nil, {~slidedo3 = 2000;}); ~slidecount = ~slidedo3;
2511 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]-
2512 [ ~fp1c,~fp2c,~fp3c,~fp4c,~fp5c,~fp6c,~fp7c,~fp8c ])*(-1)/~slidedo3);
2514 ~slidetime = ~slidetime3; ~slidedo = ~slidedo3;
2519 ~currentsynth = "s3"; ~synthmonitorfunc.value;
2522 {if(~tst == nil, {nil}, {~tst.close;});
2524 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time3s = 0;
2525 ~timer = Routine({inf.do({
2527 ~time3s+0.01; ~slot = "s3_"+~time3s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2531 ~bplaces4 = Button.new(w,Rect(~bpf4l,~bpf4t+~bpf4w,~bpf4h,~bpf4w)).states_([["s4",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2533 if(~slidetime4 == nil, {~slidetime4 = 4}); if(~slidedo4 == nil, {~slidedo4 = 2000;}); ~slidecount = ~slidedo4;
2534 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]-
2535 [ ~fp1d,~fp2d,~fp3d,~fp4d,~fp5d,~fp6d,~fp7d,~fp8d ])*(-1)/~slidedo4);
2537 ~slidetime = ~slidetime4; ~slidedo = ~slidedo4;
2542 ~currentsynth = "s4"; ~synthmonitorfunc.value;
2545 {if(~tst == nil, {nil}, {~tst.close;});
2547 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time4s = 0;
2548 ~timer = Routine({inf.do({
2550 ~time4s+0.01; ~slot = "s4_"+~time4s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2553 ~bplaces5 = Button.new(w,Rect(~bpf5l,~bpf5t+~bpf5w,~bpf5h,~bpf5w)).states_([["s5",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2555 if(~slidetime5 == nil, {~slidetime5 = 4}); if(~slidedo5 == nil, {~slidedo5 = 2000;}); ~slidecount = ~slidedo5;
2556 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]-
2557 [ ~fp1e,~fp2e,~fp3e,~fp4e,~fp5e,~fp6e,~fp7e,~fp8e ])*(-1)/~slidedo5);
2559 ~slidetime = ~slidetime5; ~slidedo = ~slidedo5;
2564 ~currentsynth = "s5"; ~synthmonitorfunc.value;
2567 {if(~tst == nil, {nil}, {~tst.close;});
2569 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time5s = 0;
2570 ~timer = Routine({inf.do({
2572 ~time5s+0.01; ~slot = "s5_"+~time5s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2576 ~bplaces6 = Button.new(w,Rect(~bpf6l,~bpf6t+~bpf6w,~bpf6h,~bpf6w)).states_([["s6",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2578 if(~slidetime6 == nil, {~slidetime6 = 4}); if(~slidedo6 == nil, {~slidedo6 = 2000;}); ~slidecount = ~slidedo6;
2579 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]-
2580 [ ~fp1f,~fp2f,~fp3f,~fp4f,~fp5f,~fp6f,~fp7f,~fp8f ])*(-1)/~slidedo6);
2582 ~slidetime = ~slidetime6; ~slidedo = ~slidedo6;
2586 ~currentsynth = "s6"; ~synthmonitorfunc.value;
2589 {if(~tst == nil, {nil}, {~tst.close;});
2591 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time6s = 0;
2592 ~timer = Routine({inf.do({
2594 ~time6s+0.01; ~slot = "s6_"+~time6s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2598 ~bplaces7 = Button.new(w,Rect(~bpf7l,~bpf7t+~bpf7w,~bpf7h,~bpf7w)).states_([["s7",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2600 if(~slidetime7 == nil, {~slidetime7 = 4}); if(~slidedo7 == nil, {~slidedo7 = 2000;}); ~slidecount = ~slidedo7;
2601 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]-
2602 [ ~fp1g,~fp2g,~fp3g,~fp4g,~fp5g,~fp6g,~fp7g,~fp8g ])*(-1)/~slidedo7);
2604 ~slidetime = ~slidetime7; ~slidedo = ~slidedo7;
2608 ~currentsynth = "s7"; ~synthmonitorfunc.value;
2611 {if(~tst == nil, {nil}, {~tst.close;});
2613 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time7s = 0;
2614 ~timer = Routine({inf.do({
2616 ~time7s+0.01; ~slot = "s7_"+~time7s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2620 ~bplaces8 = Button.new(w,Rect(~bpf8l,~bpf8t+~bpf8w,~bpf8h,~bpf8w)).states_([["s8",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2622 if(~slidetime8 == nil, {~slidetime8 = 4}); if(~slidedo8 == nil, {~slidedo8 = 2000;}); ~slidecount = ~slidedo8;
2623 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]-
2624 [ ~fp1h,~fp2h,~fp3h,~fp4h,~fp5h,~fp6h,~fp7h,~fp8h])*(-1)/~slidedo8);
2626 ~slidetime = ~slidetime8; ~slidedo = ~slidedo8;
2631 ~currentsynth = "s8"; ~synthmonitorfunc.value;
2634 {if(~tst == nil, {nil}, {~tst.close;});
2636 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time8s = 0;
2637 ~timer = Routine({inf.do({
2639 ~time8s+0.01; ~slot = "s8_"+~time8s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
2644 //if slidetime/slidedo is nil
2646 if(~slidetimeall == nil, {~slidetimeall = 1});
2647 if(~slidetime1 == nil, {~slidetime1 = 1});
2648 if(~slidetime2 == nil, {~slidetime2 = 1});
2649 if(~slidetime3 == nil, {~slidetime3 = 1});
2650 if(~slidetime4 == nil, {~slidetime4 = 1});
2651 if(~slidetime5 == nil, {~slidetime5 = 1});
2652 if(~slidetime6 == nil, {~slidetime6 = 1});
2653 if(~slidetime7 == nil, {~slidetime7 = 1});
2654 if(~slidetime8 == nil, {~slidetime8 = 1});
2656 if(~slidedoall == nil, {~slidedoall = 432});
2657 if(~slidedo1 == nil, {~slidedo1 = 432});
2658 if(~slidedo2 == nil, {~slidedo2 = 432});
2659 if(~slidedo3 == nil, {~slidedo3 = 432});
2660 if(~slidedo4 == nil, {~slidedo4 = 432});
2661 if(~slidedo5 == nil, {~slidedo5 = 432});
2662 if(~slidedo6 == nil, {~slidedo6 = 432});
2663 if(~slidedo7 == nil, {~slidedo7 = 432});
2664 if(~slidedo8 == nil, {~slidedo8 = 432});
2667 //frequency set function
2669 ~freqset_textfield_func = {
2670 ~freqsetvalue = ~freqsetvalue.asString;
2671 ~freqsetvalue = ~freqsetvalue.separate;
2672 ~freqsetvalue = ~freqsetvalue.reject{arg item;
2691 ~freqsetvalue = ~freqsetvalue.join.asString.interpret; ~freqsetvalue = ~freqsetvalue.asFloat;
2695 //extra options button
2697 ~extraoptions = Button.new(w,Rect(Window.screenBounds.width-20-20-20,~bpt+69+5,20,20/1.6180339887499)).states_([["eo",Color.white,Color.black],["eo",Color.white,Color.black]]).action_({arg button;
2699 if(button.value == 1, {
2701 ~extraoptionsview = View(w, Rect(Window.screenBounds.width-(540),Window.screenBounds.height-(340+46/1.6180339887499)-150,340+46,380+46/1.6180339887499)).front;
2702 ~extraoptionsview.background_(Color.black);
2704 //set slide values button
2706 ~slidevals = Button.new(~extraoptionsview,Rect(0,25,120,20)).states_([["slide values",Color.white,Color.black],["slide values",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2708 if(button.value == 1, {
2710 arg lefttime = 0 , lefttimebox = 52, leftdo = lefttimebox+widthbox+6, leftdobox = leftdo+57, top = 0,width=52, height = 16, widthbox=52, heightbox = 16, inc=0, lw = 0, uw = 0, numw = 40;
2711 var tall, stall, iall, siall, st1, st2, st3, st4, st5, st6, st7, st8, si1, si2, si3, si4, si5, si6, si7, si8, t1,t2,t3,t4,t5,t6,t7,t8,i1,i2,i3,i4,i5,i6,i7,i8;
2712 ~slideview = View(w, Rect(Window.screenBounds.width-(340+46),Window.screenBounds.height-(340+46/1.6180339887499)-150,340+46,380+46/1.6180339887499)).front;
2713 /*w.view.decorator=FlowLayout(w.view.bounds);
2714 w.view.decorator.gap=2@2;*/
2716 tall = StaticText(~slideview, Rect(lefttime , top=top, width, height)).background_(Color.black).string_("all time").stringColor_(Color.white);
2717 t1 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s1 time").stringColor_(Color.white);
2718 t2 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s2 time").stringColor_(Color.white);
2719 t3 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s3 time").stringColor_(Color.white);
2720 t4 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s4 time").stringColor_(Color.white);
2721 t5 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s5 time").stringColor_(Color.white);
2722 t6 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s6 time").stringColor_(Color.white);
2723 t7 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s7 time").stringColor_(Color.white);
2724 t8 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s8 time").stringColor_(Color.white);
2728 stall=NumberBox(~slideview, Rect(lefttimebox , top=top, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetimeall).maxDecimals_(9);
2729 st1=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime1).maxDecimals_(9);
2730 st2=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime2).maxDecimals_(9);
2731 st3=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime3).maxDecimals_(9);
2732 st4=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime4).maxDecimals_(9);
2733 st5=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime5).maxDecimals_(9);
2734 st6=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime6).maxDecimals_(9);
2735 st7=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime7).maxDecimals_(9);
2736 st8=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime8).maxDecimals_(9);
2740 iall = StaticText(~slideview, Rect(leftdo , top=top, width, height)).background_(Color.black).string_("all incr").stringColor_(Color.white);
2741 i1 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s1 incr").stringColor_(Color.white);
2742 i2 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s2 incr").stringColor_(Color.white);
2743 i3 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s3 incr").stringColor_(Color.white);
2744 i4 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s4 incr").stringColor_(Color.white);
2745 i5 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s5 incr").stringColor_(Color.white);
2746 i6 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s6 incr").stringColor_(Color.white);
2747 i7 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s7 incr").stringColor_(Color.white);
2748 i8 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s8 incr").stringColor_(Color.white);
2752 siall=NumberBox(~slideview, Rect(leftdobox , top=top, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedoall);
2753 si1=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo1);
2754 si2=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo2);
2755 si3=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo3);
2756 si4=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo4);
2757 si5=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo5);
2758 si6=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo6);
2759 si7=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo7);
2760 si8=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo8);
2762 stall.action_({arg val;
2763 ~slidetimeall = val.value;
2764 ~slidetime1 = val.value;
2765 ~slidetime2 = val.value;
2766 ~slidetime3 = val.value;
2767 ~slidetime4 = val.value;
2768 ~slidetime5 = val.value;
2769 ~slidetime6 = val.value;
2770 ~slidetime7 = val.value;
2771 ~slidetime8 = val.value;
2772 ~slideview.close; ~slidevals.valueAction_(1);
2774 st1.action_({arg val; ~slidetime1 = val.value;});
2775 st2.action_({arg val; ~slidetime2 = val.value;});
2776 st3.action_({arg val; ~slidetime3 = val.value;});
2777 st4.action_({arg val; ~slidetime4 = val.value;});
2778 st5.action_({arg val; ~slidetime5 = val.value;});
2779 st6.action_({arg val; ~slidetime6 = val.value;});
2780 st7.action_({arg val; ~slidetime7 = val.value;});
2781 st8.action_({arg val; ~slidetime8 = val.value;});
2783 siall.action_({arg val;
2784 ~slidedoall = val.value;
2785 ~slidedo1 = val.value;
2786 ~slidedo2 = val.value;
2787 ~slidedo3 = val.value;
2788 ~slidedo4 = val.value;
2789 ~slidedo5 = val.value;
2790 ~slidedo6 = val.value;
2791 ~slidedo7 = val.value;
2792 ~slidedo8 = val.value;
2793 ~slideview.close; ~slidevals.valueAction_(1);
2795 si1.action_({arg val; ~slidedo1 = val.value;});
2796 si2.action_({arg val; ~slidedo2 = val.value;});
2797 si3.action_({arg val; ~slidedo3 = val.value;});
2798 si4.action_({arg val; ~slidedo4 = val.value;});
2799 si5.action_({arg val; ~slidedo5 = val.value;});
2800 si6.action_({arg val; ~slidedo6 = val.value;});
2801 si7.action_({arg val; ~slidedo7 = val.value;});
2802 si8.action_({arg val; ~slidedo8 = val.value;});
2804 ~slideview.background_(Color.black);
2806 ~closeslidebutton = Button.new(~slideview,Rect(leftdobox+widthbox-40, top+40, 40, 40/~gm)).states_([["close",Color.white,Color.black]]).action_({arg button;
2808 ~slideview.close; ~slidevals.value = 0;
2814 }, {~slideview.close;});
2818 //set individual or all synth frequencies button
2820 ~beforefreqsetfreqs = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ];
2822 ~synthfreqset = Button.new(~extraoptionsview,Rect(0,0,120,20)).states_([["set frequencies",Color.white,Color.black],["set frequencies",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2824 if(button.value == 1, {
2826 arg top = 0,width=88, revertwidth=75, height = 16, heightbox = 16, lefttime = 0 , lefttimebox = width+5, widthbox=165, leftdo = lefttimebox+widthbox+5, leftdobox = leftdo+57, inc=0, lw = 0, uw = 0, numw = 40;
2827 var tall, stall, iall, siall, st1, st2, st3, st4, st5, st6, st7, st8, st9, st10, st11, st12, si1, si2, si3, si4, si5, si6, si7, si8, t1,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12;
2828 ~synthfreqsetview = View(w, Rect(Window.screenBounds.width-(340+46),Window.screenBounds.height-(340+46/1.6180339887499)-150,340+46,380+46/1.6180339887499)).front;
2829 /*w.view.decorator=FlowLayout(w.view.bounds);
2830 w.view.decorator.gap=2@2;*/
2832 t1 = StaticText(~synthfreqsetview, Rect(lefttime , top=top, width, height)).background_(Color.black).string_("freq 1 (f1)").stringColor_(Color.white);
2833 t2 = StaticText(~synthfreqsetview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("freq 2 (f2)").stringColor_(Color.white);
2834 t3 = StaticText(~synthfreqsetview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("freq 3 (f3)").stringColor_(Color.white);
2835 t4 = StaticText(~synthfreqsetview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("freq 4 (f4)").stringColor_(Color.white);
2836 t5 = StaticText(~synthfreqsetview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("freq 5 (f5)").stringColor_(Color.white);
2837 t6 = StaticText(~synthfreqsetview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("freq 6 (f6)").stringColor_(Color.white);
2838 t7 = StaticText(~synthfreqsetview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("freq 7 (f7)").stringColor_(Color.white);
2839 t8 = StaticText(~synthfreqsetview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("freq 8 (f8)").stringColor_(Color.white);
2840 tall = StaticText(~synthfreqsetview, Rect(lefttime , top=top+height+10, width, height)).background_(Color.black).string_("all freqs").stringColor_(Color.white);
2844 st1=TextField(~synthfreqsetview, Rect(lefttimebox , top=top, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~f1);
2845 st2=TextField(~synthfreqsetview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~f2);
2846 st3=TextField(~synthfreqsetview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~f3);
2847 st4=TextField(~synthfreqsetview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~f4);
2848 st5=TextField(~synthfreqsetview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~f5);
2849 st6=TextField(~synthfreqsetview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~f6);
2850 st7=TextField(~synthfreqsetview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~f7);
2851 st8=TextField(~synthfreqsetview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~f8);
2852 stall=TextField(~synthfreqsetview, Rect(lefttimebox , top=top+heightbox+10, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~f1);
2856 i1 = Button.new(~synthfreqsetview, Rect(leftdo , top=top, revertwidth, height)).states_([["f1 revert",Color.white,Color.black],["f1 revert",Color.white,Color.black]]).action_({arg button; if(~f1_revert != nil, {if(~f1 != ~f1_revert, {~f1_un_revert = ~f1; ~f1 = ~f1_revert;}, {if(~f1_un_revert != nil, {~f1 = ~f1_un_revert;});}); ~synthflow.value; st1.string = ~f1.asString;});});
2857 i2 = Button.new(~synthfreqsetview, Rect(leftdo , top=top+height, revertwidth, height)).states_([["f2 revert",Color.white,Color.black],["f2 revert",Color.white,Color.black]]).action_({arg button; if(~f2_revert != nil, {if(~f2 != ~f2_revert, {~f2_un_revert = ~f2; ~f2 = ~f2_revert;}, {if(~f2_un_revert != nil, {~f2 = ~f2_un_revert;});}); ~synthflow.value; st2.string = ~f2.asString;});});
2858 i3 = Button.new(~synthfreqsetview, Rect(leftdo , top=top+height, revertwidth, height)).states_([["f3 revert",Color.white,Color.black],["f3 revert",Color.white,Color.black]]).action_({arg button; if(~f3_revert != nil, {if(~f3 != ~f3_revert, {~f3_un_revert = ~f3; ~f3 = ~f3_revert;}, {if(~f3_un_revert != nil, {~f3 = ~f3_un_revert;});}); ~synthflow.value; st3.string = ~f3.asString;});});
2859 i4 = Button.new(~synthfreqsetview, Rect(leftdo , top=top+height, revertwidth, height)).states_([["f4 revert",Color.white,Color.black],["f4 revert",Color.white,Color.black]]).action_({arg button; if(~f4_revert != nil, {if(~f4 != ~f4_revert, {~f4_un_revert = ~f4; ~f4 = ~f4_revert;}, {if(~f4_un_revert != nil, {~f4 = ~f4_un_revert;});}); ~synthflow.value; st4.string = ~f4.asString;});});
2860 i5 = Button.new(~synthfreqsetview, Rect(leftdo , top=top+height, revertwidth, height)).states_([["f5 revert",Color.white,Color.black],["f5 revert",Color.white,Color.black]]).action_({arg button; if(~f5_revert != nil, {if(~f5 != ~f5_revert, {~f5_un_revert = ~f5; ~f5 = ~f5_revert;}, {if(~f5_un_revert != nil, {~f5 = ~f5_un_revert;});}); ~synthflow.value; st5.string = ~f5.asString;});});
2861 i6 = Button.new(~synthfreqsetview, Rect(leftdo , top=top+height, revertwidth, height)).states_([["f6 revert",Color.white,Color.black],["f6 revert",Color.white,Color.black]]).action_({arg button; if(~f6_revert != nil, {if(~f6 != ~f6_revert, {~f6_un_revert = ~f6; ~f6 = ~f6_revert;}, {if(~f6_un_revert != nil, {~f6 = ~f6_un_revert;});}); ~synthflow.value; st6.string = ~f6.asString;});});
2862 i7 = Button.new(~synthfreqsetview, Rect(leftdo , top=top+height, revertwidth, height)).states_([["f7 revert",Color.white,Color.black],["f7 revert",Color.white,Color.black]]).action_({arg button; if(~f7_revert != nil, {if(~f7 != ~f7_revert, {~f7_un_revert = ~f7; ~f7 = ~f7_revert;}, {if(~f7_un_revert != nil, {~f7 = ~f7_un_revert;});}); ~synthflow.value; st7.string = ~f7.asString;});});
2863 i8 = Button.new(~synthfreqsetview, Rect(leftdo , top=top+height, revertwidth, height)).states_([["f8 revert",Color.white,Color.black],["f8 revert",Color.white,Color.black]]).action_({arg button; if(~f8_revert != nil, {if(~f8 != ~f8_revert, {~f8_un_revert = ~f8; ~f8 = ~f8_revert;}, {if(~f8_un_revert != nil, {~f8 = ~f8_un_revert;});}); ~synthflow.value; st8.string = ~f8.asString;});});
2864 iall = Button.new(~synthfreqsetview, Rect(leftdo , top=top+height+10, revertwidth, height)).states_([["all revert",Color.white,Color.black],["all revert",Color.white,Color.black]]).action_({arg button; if(~f_all_revert != nil, {if([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ] != ~f_all_revert.flatten, {~f_all_un_revert = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ].flatten; 8.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut(~f_all_revert.flatten.at(x-1);)});}, {if(~f_all_un_revert != nil, {8.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut(~f_all_un_revert.flatten.at(x-1);)});});}); ~synthflow.value; stall.string = ~f1.asString;});});
2867 stall.action_({arg val; ~freqsetvalue = val.value; ~freqset_textfield_func.value; ~f_all_revert = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]; 8.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut(~freqsetvalue;)}); ~synthflow.value; stall.string = ~freqsetvalue.asString;});
2868 st1.action_({arg val; ~freqsetvalue = val.value; ~freqset_textfield_func.value; ~f1_revert = ~f1; ~f1 = ~freqsetvalue; ~synthflow.value; st1.string = ~freqsetvalue.asString;});
2869 st2.action_({arg val; ~freqsetvalue = val.value; ~freqset_textfield_func.value; ~f2_revert = ~f2; ~f2 = ~freqsetvalue; ~synthflow.value; st2.string = ~freqsetvalue.asString;});
2870 st3.action_({arg val; ~freqsetvalue = val.value; ~freqset_textfield_func.value; ~f3_revert = ~f3; ~f3 = ~freqsetvalue; ~synthflow.value; st3.string = ~freqsetvalue.asString;});
2871 st4.action_({arg val; ~freqsetvalue = val.value; ~freqset_textfield_func.value; ~f4_revert = ~f4; ~f4 = ~freqsetvalue; ~synthflow.value; st4.string = ~freqsetvalue.asString;});
2872 st5.action_({arg val; ~freqsetvalue = val.value; ~freqset_textfield_func.value; ~f5_revert = ~f5; ~f5 = ~freqsetvalue; ~synthflow.value; st5.string = ~freqsetvalue.asString;});
2873 st6.action_({arg val; ~freqsetvalue = val.value; ~freqset_textfield_func.value; ~f6_revert = ~f6; ~f6 = ~freqsetvalue; ~synthflow.value; st6.string = ~freqsetvalue.asString;});
2874 st7.action_({arg val; ~freqsetvalue = val.value; ~freqset_textfield_func.value; ~f7_revert = ~f7; ~f7 = ~freqsetvalue; ~synthflow.value; st7.string = ~freqsetvalue.asString;});
2875 st8.action_({arg val; ~freqsetvalue = val.value; ~freqset_textfield_func.value; ~f8_revert = ~f8; ~f8 = ~freqsetvalue; ~synthflow.value; st8.string = ~freqsetvalue.asString;});
2877 ~synthfreqsetview.background_(Color.black);
2879 ~closesfreqsetbutton = Button.new(~synthfreqsetview,Rect(leftdo+revertwidth-40, top=top+height+20, 40, 40/~gm)).states_([["close",Color.white,Color.black]]).action_({arg button;
2881 ~synthfreqsetview.close;
2884 ~beforefreqsetrevert = Button.new(~synthfreqsetview,Rect(lefttime, top+(40/~gm)-height, revertwidth+150, height)).states_([["restore freqs before opening eo",Color.white,Color.black],["revert",Color.white,Color.black]]).action_({arg button;
2886 if([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ] != ~beforefreqsetfreqs.flatten, {~beforefreqsetfreqs_unrestore = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8 ]; 8.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut(~beforefreqsetfreqs.flatten.at(x-1);)});}, {if(~beforefreqsetfreqs_unrestore != nil, {8.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut(~beforefreqsetfreqs_unrestore.flatten.at(x-1);)});});}); ~synthflow.value;
2892 ~synthfreqsetview.front;
2893 }, {~synthfreqsetview.close});
2897 Button.new(~extraoptionsview,Rect(0,80,120,20)).states_([["close eo",Color.white,Color.black],["close eo",Color.white,Color.black]]).action_({arg button;
2899 ~extraoptionsview.close; if(~slideview != nil, {~slideview.close;}); if(~synthfreqsetview != nil, {~synthfreqsetview.close;}); ~extraoptions.value = 0;
2903 }, {~extraoptionsview.close; if(~slideview != nil, {~slideview.close;}); if(~synthfreqsetview != nil, {~synthfreqsetview.close;});});
2907 //mute/unmute 1-8 buttons
2909 mute1 = Button.new(w,Rect(~bpl+(16*1),~bpt+69+5,16,16/1.6180339887499)).states_([["1",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2911 {~l1a1.isRunning == true}{
2912 if(button.value == 0, {
2915 ~l1a1.set(\vol, ~vol1); ~l1b1.set(\vol, ~vol1);
2916 ~l1c1.set(\vol, ~vol1); ~l1d1.set(\vol, ~vol1);
2917 ~l1e1.set(\vol, ~vol1); ~l1f1.set(\vol, ~vol1);
2922 ~l1a1.set(\vol, ~vol1); ~l1b1.set(\vol, ~vol1);
2923 ~l1c1.set(\vol, ~vol1); ~l1d1.set(\vol, ~vol1);
2924 ~l1e1.set(\vol, ~vol1); ~l1f1.set(\vol, ~vol1);
2929 {~l1a.isRunning == true}{
2930 if(button.value == 0, {
2933 ~l1a.set(\vol, ~vol1); ~l1b.set(\vol, ~vol1);
2934 ~l1c.set(\vol, ~vol1); ~l1d.set(\vol, ~vol1);
2935 ~l1e.set(\vol, ~vol1); ~l1f.set(\vol, ~vol1);
2940 ~l1a.set(\vol, ~vol1); ~l1b.set(\vol, ~vol1);
2941 ~l1c.set(\vol, ~vol1); ~l1d.set(\vol, ~vol1);
2942 ~l1e.set(\vol, ~vol1); ~l1f.set(\vol, ~vol1);
2949 mute2 = Button.new(w,Rect(~bpl+(16*2),~bpt+69+5,16,16/1.6180339887499)).states_([["2",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2951 {~l1a1.isRunning == true}{
2952 if(button.value == 0, {
2955 ~l2a1.set(\vol, ~vol2); ~l2b1.set(\vol, ~vol2);
2956 ~l2c1.set(\vol, ~vol2); ~l2d1.set(\vol, ~vol2);
2957 ~l2e1.set(\vol, ~vol2); ~l2f1.set(\vol, ~vol2);
2962 ~l2a1.set(\vol, ~vol2); ~l2b1.set(\vol, ~vol2);
2963 ~l2c1.set(\vol, ~vol2); ~l2d1.set(\vol, ~vol2);
2964 ~l2e1.set(\vol, ~vol2); ~l2f1.set(\vol, ~vol2);
2969 {~l1a.isRunning == true}{
2970 if(button.value == 0, {
2973 ~l2a.set(\vol, ~vol2); ~l2b.set(\vol, ~vol2);
2974 ~l2c.set(\vol, ~vol2); ~l2d.set(\vol, ~vol2);
2975 ~l2e.set(\vol, ~vol2); ~l2f.set(\vol, ~vol2);
2980 ~l2a.set(\vol, ~vol2); ~l2b.set(\vol, ~vol2);
2981 ~l2c.set(\vol, ~vol2); ~l2d.set(\vol, ~vol2);
2982 ~l2e.set(\vol, ~vol2); ~l2f.set(\vol, ~vol2);
2988 mute3 = Button.new(w,Rect(~bpl+(16*3),~bpt+69+5,16,16/1.6180339887499)).states_([["3",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2990 {~l1a1.isRunning == true}{
2991 if(button.value == 0, {
2994 ~l3a1.set(\vol, ~vol3); ~l3b1.set(\vol, ~vol3);
2995 ~l3c1.set(\vol, ~vol3); ~l3d1.set(\vol, ~vol3);
2996 ~l3e1.set(\vol, ~vol3); ~l3f1.set(\vol, ~vol3);
3001 ~l3a1.set(\vol, ~vol3); ~l3b1.set(\vol, ~vol3);
3002 ~l3c1.set(\vol, ~vol3); ~l3d1.set(\vol, ~vol3);
3003 ~l3e1.set(\vol, ~vol3); ~l3f1.set(\vol, ~vol3);
3008 {~l1a.isRunning == true}{
3009 if(button.value == 0, {
3012 ~l3a.set(\vol, ~vol3); ~l3b.set(\vol, ~vol3);
3013 ~l3c.set(\vol, ~vol3); ~l3d.set(\vol, ~vol3);
3014 ~l3e.set(\vol, ~vol3); ~l3f.set(\vol, ~vol3);
3019 ~l3a.set(\vol, ~vol3); ~l3b.set(\vol, ~vol3);
3020 ~l3c.set(\vol, ~vol3); ~l3d.set(\vol, ~vol3);
3021 ~l3e.set(\vol, ~vol3); ~l3f.set(\vol, ~vol3);
3027 mute4 = Button.new(w,Rect(~bpl+(16*4),~bpt+69+5,16,16/1.6180339887499)).states_([["4",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
3029 {~l1a1.isRunning == true}{
3030 if(button.value == 0, {
3033 ~l4a1.set(\vol, ~vol4); ~l4b1.set(\vol, ~vol4);
3034 ~l4c1.set(\vol, ~vol4); ~l4d1.set(\vol, ~vol4);
3035 ~l4e1.set(\vol, ~vol4); ~l4f1.set(\vol, ~vol4);
3040 ~l4a1.set(\vol, ~vol4); ~l4b1.set(\vol, ~vol4);
3041 ~l4c1.set(\vol, ~vol4); ~l4d1.set(\vol, ~vol4);
3042 ~l4e1.set(\vol, ~vol4); ~l4f1.set(\vol, ~vol4);
3047 {~l1a.isRunning == true}{
3048 if(button.value == 0, {
3051 ~l4a.set(\vol, ~vol4); ~l4b.set(\vol, ~vol4);
3052 ~l4c.set(\vol, ~vol4); ~l4d.set(\vol, ~vol4);
3053 ~l4e.set(\vol, ~vol4); ~l4f.set(\vol, ~vol4);
3058 ~l4a.set(\vol, ~vol4); ~l4b.set(\vol, ~vol4);
3059 ~l4c.set(\vol, ~vol4); ~l4d.set(\vol, ~vol4);
3060 ~l4e.set(\vol, ~vol4); ~l4f.set(\vol, ~vol4);
3066 mute5 = Button.new(w,Rect(~bpl+(16*5),~bpt+69+5,16,16/1.6180339887499)).states_([["5",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
3068 {~l1a1.isRunning == true}{
3069 if(button.value == 0, {
3072 ~l5a1.set(\vol, ~vol5); ~l5b1.set(\vol, ~vol5);
3073 ~l5c1.set(\vol, ~vol5); ~l5d1.set(\vol, ~vol5);
3074 ~l5e1.set(\vol, ~vol5); ~l5f1.set(\vol, ~vol5);
3079 ~l5a1.set(\vol, ~vol5); ~l5b1.set(\vol, ~vol5);
3080 ~l5c1.set(\vol, ~vol5); ~l5d1.set(\vol, ~vol5);
3081 ~l5e1.set(\vol, ~vol5); ~l5f1.set(\vol, ~vol5);
3086 {~l1a.isRunning == true}{
3087 if(button.value == 0, {
3090 ~l5a.set(\vol, ~vol5); ~l5b.set(\vol, ~vol5);
3091 ~l5c.set(\vol, ~vol5); ~l5d.set(\vol, ~vol5);
3092 ~l5e.set(\vol, ~vol5); ~l5f.set(\vol, ~vol5);
3097 ~l5a.set(\vol, ~vol5); ~l5b.set(\vol, ~vol5);
3098 ~l5c.set(\vol, ~vol5); ~l5d.set(\vol, ~vol5);
3099 ~l5e.set(\vol, ~vol5); ~l5f.set(\vol, ~vol5);
3105 mute6 = Button.new(w,Rect(~bpl+(16*6),~bpt+69+5,16,16/1.6180339887499)).states_([["6",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
3107 {~l1a1.isRunning == true}{
3108 if(button.value == 0, {
3111 ~l6a1.set(\vol, ~vol6); ~l6b1.set(\vol, ~vol6);
3112 ~l6c1.set(\vol, ~vol6); ~l6d1.set(\vol, ~vol6);
3113 ~l6e1.set(\vol, ~vol6); ~l6f1.set(\vol, ~vol6);
3118 ~l6a1.set(\vol, ~vol6); ~l6b1.set(\vol, ~vol6);
3119 ~l6c1.set(\vol, ~vol6); ~l6d1.set(\vol, ~vol6);
3120 ~l6e1.set(\vol, ~vol6); ~l6f1.set(\vol, ~vol6);
3125 {~l1a.isRunning == true}{
3126 if(button.value == 0, {
3129 ~l6a.set(\vol, ~vol6); ~l6b.set(\vol, ~vol6);
3130 ~l6c.set(\vol, ~vol6); ~l6d.set(\vol, ~vol6);
3131 ~l6e.set(\vol, ~vol6); ~l6f.set(\vol, ~vol6);
3136 ~l6a.set(\vol, ~vol6); ~l6b.set(\vol, ~vol6);
3137 ~l6c.set(\vol, ~vol6); ~l6d.set(\vol, ~vol6);
3138 ~l6e.set(\vol, ~vol6); ~l6f.set(\vol, ~vol6);
3145 mute7 = Button.new(w,Rect(~bpl+(16*7),~bpt+69+5,16,16/1.6180339887499)).states_([["7",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
3147 {~l1a1.isRunning == true}{
3148 if(button.value == 0, {
3151 ~l7a1.set(\vol, ~vol7); ~l7b1.set(\vol, ~vol7);
3152 ~l7c1.set(\vol, ~vol7); ~l7d1.set(\vol, ~vol7);
3153 ~l7e1.set(\vol, ~vol7); ~l7f1.set(\vol, ~vol7);
3158 ~l7a1.set(\vol, ~vol7); ~l7b1.set(\vol, ~vol7);
3159 ~l7c1.set(\vol, ~vol7); ~l7d1.set(\vol, ~vol7);
3160 ~l7e1.set(\vol, ~vol7); ~l7f1.set(\vol, ~vol7);
3165 {~l1a.isRunning == true}{
3166 if(button.value == 0, {
3169 ~l7a.set(\vol, ~vol7); ~l7b.set(\vol, ~vol7);
3170 ~l7c.set(\vol, ~vol7); ~l7d.set(\vol, ~vol7);
3171 ~l7e.set(\vol, ~vol7); ~l7f.set(\vol, ~vol7);
3176 ~l7a.set(\vol, ~vol7); ~l7b.set(\vol, ~vol7);
3177 ~l7c.set(\vol, ~vol7); ~l7d.set(\vol, ~vol7);
3178 ~l7e.set(\vol, ~vol7); ~l7f.set(\vol, ~vol7);
3184 mute8 = Button.new(w,Rect(~bpl+(16*8),~bpt+69+5,16,16/1.6180339887499)).states_([["8",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
3186 {~l1a1.isRunning == true}{
3187 if(button.value == 0, {
3190 ~l8a1.set(\vol, ~vol8); ~l8b1.set(\vol, ~vol8);
3191 ~l8c1.set(\vol, ~vol8); ~l8d1.set(\vol, ~vol8);
3192 ~l8e1.set(\vol, ~vol8); ~l8f1.set(\vol, ~vol8);
3197 ~l8a1.set(\vol, ~vol8); ~l8b1.set(\vol, ~vol8);
3198 ~l8c1.set(\vol, ~vol8); ~l8d1.set(\vol, ~vol8);
3199 ~l8e1.set(\vol, ~vol8); ~l8f1.set(\vol, ~vol8);
3204 {~l1a.isRunning == true}{
3205 if(button.value == 0, {
3208 ~l8a.set(\vol, ~vol8); ~l8b.set(\vol, ~vol8);
3209 ~l8c.set(\vol, ~vol8); ~l8d.set(\vol, ~vol8);
3210 ~l8e.set(\vol, ~vol8); ~l8f.set(\vol, ~vol8);
3215 ~l8a.set(\vol, ~vol8); ~l8b.set(\vol, ~vol8);
3216 ~l8c.set(\vol, ~vol8); ~l8d.set(\vol, ~vol8);
3217 ~l8e.set(\vol, ~vol8); ~l8f.set(\vol, ~vol8);
3225 //mute/unmute all button
3227 muteall = Button.new(w,Rect(~bpl+(0),~bpt+69+5,16,16/1.6180339887499)).states_([["m",Color.white,Color.black],["u",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
3229 if(button.value == 0, {
3273 //midi Korg NanoKontrol function
3277 /*~etemp = EqualTemperament(12, calibratefreq: 432, calibratenote: 69);*/
3280 //midi set frequency
3282 MIDIFunc.cc({if(~snb == 0, {~snb = 1},{~snb = 0});}, ccNum: 60);
3283 MIDIdef.cc('l1', { |val|
3285 {~l1a.isRunning == true}{
3286 ~l1a.set(\dur, ~f1 = \dur.asSpec.map(val / 127));
3287 ~l1b.set(\dur, \dur.asSpec.map(val / 127));
3288 ~l1c.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3289 ~l1d.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3290 ~l1e.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3291 ~l1f.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3292 }{~l1a1.isRunning == true}{
3293 ~l1a1.set(\dur, ~f1 = \dur.asSpec.map(val / 127));
3294 ~l1b1.set(\dur, \dur.asSpec.map(val / 127));
3295 ~l1c1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3296 ~l1d1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3297 ~l1e1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3298 ~l1f1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3300 ~tunefreq1 = ~f1; ~f1 = ~f1+~f1t;
3301 {if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (View(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (View(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
3304 MIDIdef.cc('l2', { |val|
3306 {~l1a.isRunning == true}{
3307 ~l2a.set(\dur, ~f2 = \dur.asSpec.map(val / 127));
3308 ~l2b.set(\dur, \dur.asSpec.map(val / 127));
3309 ~l2c.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3310 ~l2d.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3311 ~l2e.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3312 ~l2f.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3313 }{~l1a1.isRunning == true}{
3314 ~l2a1.set(\dur, ~f2 = \dur.asSpec.map(val / 127));
3315 ~l2b1.set(\dur, \dur.asSpec.map(val / 127));
3316 ~l2c1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3317 ~l2d1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3318 ~l2e1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3319 ~l2f1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3321 ~tunefreq2 = ~f2; ~f2 = ~f2+~f2t;
3322 {if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (View(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (View(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
3325 MIDIdef.cc('l3', { |val|
3327 {~l1a.isRunning == true}{
3328 ~l3a.set(\dur, ~f3 = \dur.asSpec.map(val / 127));
3329 ~l3b.set(\dur, \dur.asSpec.map(val / 127));
3330 ~l3c.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3331 ~l3d.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3332 ~l3e.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3333 ~l3f.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3334 }{~l1a1.isRunning == true}{
3335 ~l3a1.set(\dur, ~f3 = \dur.asSpec.map(val / 127));
3336 ~l3b1.set(\dur, \dur.asSpec.map(val / 127));
3337 ~l3c1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3338 ~l3d1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3339 ~l3e1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3340 ~l3f1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3342 ~tunefreq3 = ~f3; ~f3 = ~f3+~f3t;
3343 {if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (View(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (View(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
3346 MIDIdef.cc('l4', { |val|
3348 {~l1a.isRunning == true}{
3349 ~l4a.set(\dur, ~f4 = \dur.asSpec.map(val / 127));
3350 ~l4b.set(\dur, \dur.asSpec.map(val / 127));
3351 ~l4c.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3352 ~l4d.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3353 ~l4e.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3354 ~l4f.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3355 }{~l1a1.isRunning == true}{
3356 ~l4a1.set(\dur, ~f4 = \dur.asSpec.map(val / 127));
3357 ~l4b1.set(\dur, \dur.asSpec.map(val / 127));
3358 ~l4c1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3359 ~l4d1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3360 ~l4e1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3361 ~l4f1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3363 ~tunefreq4 = ~f4; ~f4 = ~f4+~f4t;
3364 {if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (View(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (View(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
3367 MIDIdef.cc('l5', { |val|
3369 {~l1a.isRunning == true}{
3370 ~l5a.set(\dur, ~f5 = \dur.asSpec.map(val / 127));
3371 ~l5b.set(\dur, \dur.asSpec.map(val / 127));
3372 ~l5c.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3373 ~l5d.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3374 ~l5e.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3375 ~l5f.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3376 }{~l1a1.isRunning == true}{
3377 ~l5a1.set(\dur, ~f5 = \dur.asSpec.map(val / 127));
3378 ~l5b1.set(\dur, \dur.asSpec.map(val / 127));
3379 ~l5c1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3380 ~l5d1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3381 ~l5e1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3382 ~l5f1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3384 ~tunefreq5 = ~f5; ~f5 = ~f5+~f5t;
3385 {if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (View(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (View(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
3388 MIDIdef.cc('l6', { |val|
3390 {~l1a.isRunning == true}{
3391 ~l6a.set(\dur, ~f6 = \dur.asSpec.map(val / 127));
3392 ~l6b.set(\dur, \dur.asSpec.map(val / 127));
3393 ~l6c.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3394 ~l6d.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3395 ~l6e.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3396 ~l6f.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3397 }{~l1a1.isRunning == true}{
3398 ~l6a1.set(\dur, ~f6 = \dur.asSpec.map(val / 127));
3399 ~l6b1.set(\dur, \dur.asSpec.map(val / 127));
3400 ~l6c1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3401 ~l6d1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3402 ~l6e1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3403 ~l6f1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3405 ~tunefreq6 = ~f6; ~f6 = ~f6+~f6t;
3406 {if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (View(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (View(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
3409 MIDIdef.cc('l7', { |val|
3411 {~l1a.isRunning == true}{
3412 ~l7a.set(\dur, ~f7 = \dur.asSpec.map(val / 127));
3413 ~l7b.set(\dur, \dur.asSpec.map(val / 127));
3414 ~l7c.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3415 ~l7d.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3416 ~l7e.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3417 ~l7f.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3418 }{~l1a1.isRunning == true}{
3419 ~l7a1.set(\dur, ~f7 = \dur.asSpec.map(val / 127));
3420 ~l7b1.set(\dur, \dur.asSpec.map(val / 127));
3421 ~l7c1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3422 ~l7d1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3423 ~l7e1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3424 ~l7f1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3426 ~tunefreq7 = ~f7; ~f7 = ~f7+~f7t;
3427 {if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (View(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (View(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
3430 MIDIdef.cc('l8', { |val|
3432 {~l1a.isRunning == true}{
3433 ~l8a.set(\dur, ~f8 = \dur.asSpec.map(val / 127));
3434 ~l8b.set(\dur, \dur.asSpec.map(val / 127));
3435 ~l8c.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3436 ~l8d.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3437 ~l8e.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3438 ~l8f.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3439 }{~l1a1.isRunning == true}{
3440 ~l8a1.set(\dur, ~f8 = \dur.asSpec.map(val / 127));
3441 ~l8b1.set(\dur, \dur.asSpec.map(val / 127));
3442 ~l8c1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3443 ~l8d1.set(\dur, \dur.asSpec.map(val / 127)/~icd3);
3444 ~l8e1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3445 ~l8f1.set(\dur, \dur.asSpec.map(val / 127)/~icd6);
3447 ~tunefreq8 = ~f8; ~f8 = ~f8+~f8t;
3448 {if((~f8 > ~outmaxa) or: (~f8 < ~outmina), {~z32.close;~z8.close;~z32 = (View(w, Rect((~f8.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+80, ~nw, 2)).background = Color.white;);}, {~z8.close;~z32.close;~z8 = (View(w, Rect((~f8.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+80, ~nw, 2)).background = Color.white;);});
3453 //if midi tuning frequency values are nil
3455 if(~f1t == nil, {~f1t = 0});
3456 if(~f2t == nil, {~f2t = 0});
3457 if(~f3t == nil, {~f3t = 0});
3458 if(~f4t == nil, {~f4t = 0});
3459 if(~f5t == nil, {~f5t = 0});
3460 if(~f6t == nil, {~f6t = 0});
3461 if(~f7t == nil, {~f7t = 0});
3462 if(~f8t == nil, {~f8t = 0});
3465 //midi set tuning frequency
3469 Spec.add(\tune, ([0, ~tunefreq1*~stepratio-~tunefreq1, \lin]));
3471 {~l1a.isRunning == true}{
3472 ~l1a.set(\tune, ~f1t = \tune.asSpec.map(val / 127));
3473 ~l1b.set(\tune, \tune.asSpec.map(val / 127));
3474 ~l1c.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3475 ~l1d.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3476 ~l1e.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3477 ~l1f.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3478 }{~l1a1.isRunning == true}{
3479 ~l1a1.set(\tune, ~f1t = \tune.asSpec.map(val / 127));
3480 ~l1b1.set(\tune, \tune.asSpec.map(val / 127));
3481 ~l1c1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3482 ~l1d1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3483 ~l1e1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3484 ~l1f1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3487 {if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (View(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (View(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
3492 Spec.add(\tune, ([0, ~tunefreq2*~stepratio-~tunefreq2, \lin]));
3494 {~l1a.isRunning == true}{
3495 ~l2a.set(\tune, ~f2t = \tune.asSpec.map(val / 127));
3496 ~l2b.set(\tune, \tune.asSpec.map(val / 127));
3497 ~l2c.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3498 ~l2d.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3499 ~l2e.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3500 ~l2f.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3501 }{~l1a1.isRunning == true}{
3502 ~l2a1.set(\tune, ~f2t = \tune.asSpec.map(val / 127));
3503 ~l2b1.set(\tune, \tune.asSpec.map(val / 127));
3504 ~l2c1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3505 ~l2d1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3506 ~l2e1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3507 ~l2f1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3510 {if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (View(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (View(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
3515 Spec.add(\tune, ([0, ~tunefreq3*~stepratio-~tunefreq3, \lin]));
3517 {~l1a.isRunning == true}{
3518 ~l3a.set(\tune, ~f3t = \tune.asSpec.map(val / 127));
3519 ~l3b.set(\tune, \tune.asSpec.map(val / 127));
3520 ~l3c.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3521 ~l3d.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3522 ~l3e.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3523 ~l3f.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3524 }{~l1a1.isRunning == true}{
3525 ~l3a1.set(\tune, ~f3t = \tune.asSpec.map(val / 127));
3526 ~l3b1.set(\tune, \tune.asSpec.map(val / 127));
3527 ~l3c1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3528 ~l3d1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3529 ~l3e1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3530 ~l3f1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3533 {if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (View(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (View(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
3538 Spec.add(\tune, ([0, ~tunefreq4*~stepratio-~tunefreq4, \lin]));
3540 {~l1a.isRunning == true}{
3541 ~l4a.set(\tune, ~f4t = \tune.asSpec.map(val / 127));
3542 ~l4b.set(\tune, \tune.asSpec.map(val / 127));
3543 ~l4c.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3544 ~l4d.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3545 ~l4e.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3546 ~l4f.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3547 }{~l1a1.isRunning == true}{
3548 ~l4a1.set(\tune, ~f4t = \tune.asSpec.map(val / 127));
3549 ~l4b1.set(\tune, \tune.asSpec.map(val / 127));
3550 ~l4c1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3551 ~l4d1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3552 ~l4e1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3553 ~l4f1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3556 {if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (View(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (View(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
3561 Spec.add(\tune, ([0, ~tunefreq5*~stepratio-~tunefreq5, \lin]));
3563 {~l1a.isRunning == true}{
3564 ~l5a.set(\tune, ~f5t = \tune.asSpec.map(val / 127));
3565 ~l5b.set(\tune, \tune.asSpec.map(val / 127));
3566 ~l5c.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3567 ~l5d.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3568 ~l5e.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3569 ~l5f.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3570 }{~l1a1.isRunning == true}{
3571 ~l5a1.set(\tune, ~f5t = \tune.asSpec.map(val / 127));
3572 ~l5b1.set(\tune, \tune.asSpec.map(val / 127));
3573 ~l5c1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3574 ~l5d1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3575 ~l5e1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3576 ~l5f1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3579 {if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (View(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (View(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
3584 Spec.add(\tune, ([0, ~tunefreq6*~stepratio-~tunefreq6, \lin]));
3586 {~l1a.isRunning == true}{
3587 ~l6a.set(\tune, ~f6t = \tune.asSpec.map(val / 127));
3588 ~l6b.set(\tune, \tune.asSpec.map(val / 127));
3589 ~l6c.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3590 ~l6d.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3591 ~l6e.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3592 ~l6f.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3593 }{~l1a1.isRunning == true}{
3594 ~l6a1.set(\tune, ~f6t = \tune.asSpec.map(val / 127));
3595 ~l6b1.set(\tune, \tune.asSpec.map(val / 127));
3596 ~l6c1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3597 ~l6d1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3598 ~l6e1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3599 ~l6f1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3602 {if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (View(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (View(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
3607 Spec.add(\tune, ([0, ~tunefreq7*~stepratio-~tunefreq7, \lin]));
3609 {~l1a.isRunning == true}{
3610 ~l7a.set(\tune, ~f7t = \tune.asSpec.map(val / 127));
3611 ~l7b.set(\tune, \tune.asSpec.map(val / 127));
3612 ~l7c.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3613 ~l7d.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3614 ~l7e.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3615 ~l7f.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3616 }{~l1a1.isRunning == true}{
3617 ~l7a1.set(\tune, ~f7t = \tune.asSpec.map(val / 127));
3618 ~l7b1.set(\tune, \tune.asSpec.map(val / 127));
3619 ~l7c1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3620 ~l7d1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3621 ~l7e1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3622 ~l7f1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3625 {if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (View(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (View(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
3630 Spec.add(\tune, ([0, ~tunefreq8*~stepratio-~tunefreq8, \lin]));
3632 {~l1a.isRunning == true}{
3633 ~l8a.set(\tune, ~f8t = \tune.asSpec.map(val / 127));
3634 ~l8b.set(\tune, \tune.asSpec.map(val / 127));
3635 ~l8c.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3636 ~l8d.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3637 ~l8e.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3638 ~l8f.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3639 }{~l1a1.isRunning == true}{
3640 ~l8a1.set(\tune, ~f7t = \tune.asSpec.map(val / 127));
3641 ~l8b1.set(\tune, \tune.asSpec.map(val / 127));
3642 ~l8c1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3643 ~l8d1.set(\tune, \tune.asSpec.map(val / 127)/~icd3);
3644 ~l8e1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3645 ~l8f1.set(\tune, \tune.asSpec.map(val / 127)/~icd6);
3648 {if((~f8 > ~outmaxa) or: (~f8 < ~outmina), {~z32.close;~z8.close;~z32 = (View(w, Rect((~f8.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+80, ~nw, 2)).background = Color.white;);}, {~z8.close;~z32.close;~z8 = (View(w, Rect((~f8.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+80, ~nw, 2)).background = Color.white;);});
3653 //Korg NanoKontrol button assignments
3656 //start/stop synth and pause/unpause synth buttons
3658 MIDIFunc.cc({|val| {case{b3.value == 0}{b3.valueAction = 1};}.defer;}, ccNum: 41);
3659 MIDIFunc.cc({|val| {case{b3.value == 1}{b3.valueAction = 0};}.defer;}, ccNum: 42);
3660 MIDIFunc.cc({|val| {case{b4.value == 0}{b4.valueAction = 1};}.defer;}, ccNum: 43);
3661 MIDIFunc.cc({|val| {case{b4.value == 1}{b4.valueAction = 0};}.defer;}, ccNum: 44);
3664 //open/flow/slide buttons (inactive)
3666 /*MIDIFunc.cc({|val| {~bplaceo1.valueAction=0}.defer;}, ccNum: 32);
3667 MIDIFunc.cc({|val| {~bplaceo2.valueAction=0}.defer;}, ccNum: 33);
3668 MIDIFunc.cc({|val| {~bplaceo3.valueAction=0}.defer;}, ccNum: 34);
3669 MIDIFunc.cc({|val| {~bplaceo4.valueAction=0}.defer;}, ccNum: 35);
3670 MIDIFunc.cc({|val| {~bplaceo5.valueAction=0}.defer;}, ccNum: 36);
3671 MIDIFunc.cc({|val| {~bplaceo6.valueAction=0}.defer;}, ccNum: 37);
3672 MIDIFunc.cc({|val| {~bplaceo7.valueAction=0}.defer;}, ccNum: 38);
3673 MIDIFunc.cc({|val| {~bplaceo8.valueAction=0}.defer;}, ccNum: 39);
3674 MIDIFunc.cc({|val| {~bplacef1.valueAction=0}.defer;}, ccNum: 48);
3675 MIDIFunc.cc({|val| {~bplacef2.valueAction=0}.defer;}, ccNum: 49);
3676 MIDIFunc.cc({|val| {~bplacef3.valueAction=0}.defer;}, ccNum: 50);
3677 MIDIFunc.cc({|val| {~bplacef4.valueAction=0}.defer;}, ccNum: 51);
3678 MIDIFunc.cc({|val| {~bplacef5.valueAction=0}.defer;}, ccNum: 52);
3679 MIDIFunc.cc({|val| {~bplacef6.valueAction=0}.defer;}, ccNum: 53);
3680 MIDIFunc.cc({|val| {~bplacef7.valueAction=0}.defer;}, ccNum: 54);
3681 MIDIFunc.cc({|val| {~bplacef8.valueAction=0}.defer;}, ccNum: 55);
3682 MIDIFunc.cc({|val| {~bplaces1.valueAction=0}.defer;}, ccNum: 64);
3683 MIDIFunc.cc({|val| {~bplaces2.valueAction=0}.defer;}, ccNum: 65);
3684 MIDIFunc.cc({|val| {~bplaces3.valueAction=0}.defer;}, ccNum: 66);
3685 MIDIFunc.cc({|val| {~bplaces4.valueAction=0}.defer;}, ccNum: 67);
3686 MIDIFunc.cc({|val| {~bplaces5.valueAction=0}.defer;}, ccNum: 68);
3687 MIDIFunc.cc({|val| {~bplaces6.valueAction=0}.defer;}, ccNum: 69);
3688 MIDIFunc.cc({|val| {~bplaces7.valueAction=0}.defer;}, ccNum: 70);
3689 MIDIFunc.cc({|val| {~bplaces8.valueAction=0}.defer;}, ccNum: 71);
3693 //mute/unmute buttons
3695 MIDIFunc.cc({|val| {mute1.valueAction = 1;}.defer;}, ccNum: 48);
3696 MIDIFunc.cc({|val| {mute2.valueAction = 1;}.defer;}, ccNum: 49);
3697 MIDIFunc.cc({|val| {mute3.valueAction = 1;}.defer;}, ccNum: 50);
3698 MIDIFunc.cc({|val| {mute4.valueAction = 1;}.defer;}, ccNum: 51);
3699 MIDIFunc.cc({|val| {mute5.valueAction = 1;}.defer;}, ccNum: 52);
3700 MIDIFunc.cc({|val| {mute6.valueAction = 1;}.defer;}, ccNum: 53);
3701 MIDIFunc.cc({|val| {mute7.valueAction = 1;}.defer;}, ccNum: 54);
3702 MIDIFunc.cc({|val| {mute8.valueAction = 1;}.defer;}, ccNum: 55);
3703 MIDIFunc.cc({|val| {mute1.valueAction = 1;mute2.valueAction = 1;mute3.valueAction = 1;mute4.valueAction = 1;mute5.valueAction = 1;mute6.valueAction = 1;mute7.valueAction = 1;mute8.valueAction = 1;}.defer;}, ccNum: 58);
3704 MIDIFunc.cc({|val| {mute1.valueAction = 0;}.defer;}, ccNum: 32);
3705 MIDIFunc.cc({|val| {mute2.valueAction = 0;}.defer;}, ccNum: 33);
3706 MIDIFunc.cc({|val| {mute3.valueAction = 0;}.defer;}, ccNum: 34);
3707 MIDIFunc.cc({|val| {mute4.valueAction = 0;}.defer;}, ccNum: 35);
3708 MIDIFunc.cc({|val| {mute5.valueAction = 0;}.defer;}, ccNum: 36);
3709 MIDIFunc.cc({|val| {mute6.valueAction = 0;}.defer;}, ccNum: 37);
3710 MIDIFunc.cc({|val| {mute7.valueAction = 0;}.defer;}, ccNum: 38);
3711 MIDIFunc.cc({|val| {mute8.valueAction = 0;}.defer;}, ccNum: 39);
3712 MIDIFunc.cc({|val| {mute1.valueAction = 0;mute2.valueAction = 0;mute3.valueAction = 0;mute4.valueAction = 0;mute5.valueAction = 0;mute6.valueAction = 0;mute7.valueAction = 0;mute8.valueAction = 1;}.defer;}, ccNum: 59);
3714 /*MIDIFunc.cc({ |val| ([~a2,~b2,~c2,~d2,~e2,~f2]).postln;}, ccNum: [0]);*/
3715 /*MIDIFunc.cc({ |val|~l1.set(\tune, 0);}, ccNum: [32]);*/
3716 /*MIDIFunc.cc({ |val| ([(~w),(~x),(~y),(~z),(~u),(~v),~r,~s]).postln;}, ccNum: [64]);*/
3717 /*~basefreq= 432.cpsmidi-69;*/
3718 /*Spec.add(\dur, ~etemp.cps([0, 127, \exp]));*/
3720 Spec.add(\dur, ([~freqmap.at(0), ~freqmap.at(127), \exp]));
3721 /*Spec.add(\tune, ([0, 128, \lin]));*/
3725 //evaluate midi function
3730 //keyboard number buttons to choose synth
3732 keycodeb = Button.new(w,Rect(Window.screenBounds.width-20-16,~bpt+160,16,16/1.6180339887499)).states_([
3733 ["1",Color.white,Color.black],
3734 ["2",Color.white,Color.black],
3735 ["3",Color.white,Color.black],
3736 ["4",Color.white,Color.black],
3737 ["5",Color.white,Color.black],
3738 ["6",Color.white,Color.black],
3739 ["7",Color.white,Color.black],
3740 ["8",Color.white,Color.black]]).action_({arg button;
3743 {button.value == 0}{
3744 ~z25.background = Color.green; ~z1.background = Color.green;
3745 ~z26.background = Color.white; ~z2.background = Color.white;
3746 ~z27.background = Color.white; ~z3.background = Color.white;
3747 ~z28.background = Color.white; ~z4.background = Color.white;
3748 ~z29.background = Color.white; ~z5.background = Color.white;
3749 ~z30.background = Color.white; ~z6.background = Color.white;
3750 ~z31.background = Color.white; ~z7.background = Color.white;
3751 ~z32.background = Color.white; ~z8.background = Color.white;
3753 {button.value == 1}{
3754 ~z25.background = Color.white; ~z1.background = Color.white;
3755 ~z26.background = Color.green; ~z2.background = Color.green;
3756 ~z27.background = Color.white; ~z3.background = Color.white;
3757 ~z28.background = Color.white; ~z4.background = Color.white;
3758 ~z29.background = Color.white; ~z5.background = Color.white;
3759 ~z30.background = Color.white; ~z6.background = Color.white;
3760 ~z31.background = Color.white; ~z7.background = Color.white;
3761 ~z32.background = Color.white; ~z8.background = Color.white;
3763 {button.value == 2}{
3764 ~z25.background = Color.white; ~z1.background = Color.white;
3765 ~z26.background = Color.white; ~z2.background = Color.white;
3766 ~z27.background = Color.green; ~z3.background = Color.green;
3767 ~z28.background = Color.white; ~z4.background = Color.white;
3768 ~z29.background = Color.white; ~z5.background = Color.white;
3769 ~z30.background = Color.white; ~z6.background = Color.white;
3770 ~z31.background = Color.white; ~z7.background = Color.white;
3771 ~z32.background = Color.white; ~z8.background = Color.white;
3773 {button.value == 3}{
3774 ~z25.background = Color.white; ~z1.background = Color.white;
3775 ~z26.background = Color.white; ~z2.background = Color.white;
3776 ~z27.background = Color.white; ~z3.background = Color.white;
3777 ~z28.background = Color.green; ~z4.background = Color.green;
3778 ~z29.background = Color.white; ~z5.background = Color.white;
3779 ~z30.background = Color.white; ~z6.background = Color.white;
3780 ~z31.background = Color.white; ~z7.background = Color.white;
3781 ~z32.background = Color.white; ~z8.background = Color.white;
3783 {button.value == 4}{
3784 ~z25.background = Color.white; ~z1.background = Color.white;
3785 ~z26.background = Color.white; ~z2.background = Color.white;
3786 ~z27.background = Color.white; ~z3.background = Color.white;
3787 ~z28.background = Color.white; ~z4.background = Color.white;
3788 ~z29.background = Color.green; ~z5.background = Color.green;
3789 ~z30.background = Color.white; ~z6.background = Color.white;
3790 ~z31.background = Color.white; ~z7.background = Color.white;
3791 ~z32.background = Color.white; ~z8.background = Color.white;
3793 {button.value == 5}{
3794 ~z25.background = Color.white; ~z1.background = Color.white;
3795 ~z26.background = Color.white; ~z2.background = Color.white;
3796 ~z27.background = Color.white; ~z3.background = Color.white;
3797 ~z28.background = Color.white; ~z4.background = Color.white;
3798 ~z29.background = Color.white; ~z5.background = Color.white;
3799 ~z30.background = Color.green; ~z6.background = Color.green;
3800 ~z31.background = Color.white; ~z7.background = Color.white;
3801 ~z32.background = Color.white; ~z8.background = Color.white;
3803 {button.value == 6}{
3804 ~z25.background = Color.white; ~z1.background = Color.white;
3805 ~z26.background = Color.white; ~z2.background = Color.white;
3806 ~z27.background = Color.white; ~z3.background = Color.white;
3807 ~z28.background = Color.white; ~z4.background = Color.white;
3808 ~z29.background = Color.white; ~z5.background = Color.white;
3809 ~z30.background = Color.white; ~z6.background = Color.white;
3810 ~z31.background = Color.green; ~z7.background = Color.green;
3811 ~z32.background = Color.white; ~z8.background = Color.white;
3813 {button.value == 7}{
3814 ~z25.background = Color.white; ~z1.background = Color.white;
3815 ~z26.background = Color.white; ~z2.background = Color.white;
3816 ~z27.background = Color.white; ~z3.background = Color.white;
3817 ~z28.background = Color.white; ~z4.background = Color.white;
3818 ~z29.background = Color.white; ~z5.background = Color.white;
3819 ~z30.background = Color.white; ~z6.background = Color.white;
3820 ~z31.background = Color.white; ~z7.background = Color.white;
3821 ~z32.background = Color.green; ~z8.background = Color.green;
3827 //misc. keyboard buttons
3829 w.view.keyDownAction = { arg view, char, modifiers, unicode, keycode;
3830 [char, modifiers, unicode, keycode];
3833 if(unicode == ~c_unicode, {
3835 {b.value == 0}{b.valueAction = 1}
3836 {b.value == 1}{b.valueAction = 0};
3840 if(unicode == ~s_unicode, {
3842 {b3.value == 0}{b3.valueAction = 1}
3843 {b3.value == 1}{b3.valueAction = 0};
3846 //pause/unpause synth
3847 if(unicode == ~spacebar_unicode, {
3849 {b4.value == 0}{b4.valueAction = 1}
3850 {b4.value == 1}{b4.valueAction = 0};
3854 if(unicode == ~t_unicode, {
3856 {~ts.value == 0}{~ts.valueAction = 1}
3857 {~ts.value == 1}{~ts.valueAction = 0};
3861 if(unicode == ~r_unicode, {
3863 {~rviewbutton.value == 0}{~rviewbutton.valueAction = 1}
3864 {~rviewbutton.value == 1}{~rviewbutton.valueAction = 0};
3867 //mute/unmute all synths
3868 if(unicode == ~m_unicode, {
3870 {muteall.value == 0}{muteall.valueAction = 1}
3871 {muteall.value == 1}{muteall.valueAction = 0};
3874 //minimize GUI window
3875 if(unicode == ~escape_unicode, {w.minimize;
3877 ~fullscreen_correct = {w.fullScreen};
3878 ~fscview = UserView(w, Rect(0,0, Window.screenBounds.width-100, Window.screenBounds.height;));
3879 ~fullscreen_button = Button.new(w,Rect(Window.screenBounds.width/2-35,Window.screenBounds.height/2+120,150,20)).states_([["re-adjust to fullscreen",Color.white,Color.black]]).action_({arg button; w.fullScreen; ~fullscreen_button.close; ~fullscreen_button = nil;});
3880 ~fscview.mouseEnterAction_{|v, x, y| ~fullscreen_correct.value; ~fullscreen_correct = nil; ~fscview.close; ~fscview = nil; ~fullscreen_button.close; ~fullscreen_button = nil;};
3883 /*if((unicode == ~escape_unicode) and: (info.isClosed == false), {info.close;});
3884 if((unicode == ~escape_unicode) and: (b.isClosed == false), {b.close;});
3886 //minimize GUI window
3887 if((unicode == ~escape_unicode) and: (((b.isClosed == true) and: (info.isClosed == true)) or: ((b.isClosed == true)) or: (info.isClosed == true)), {w.minimize;});
3889 /*if(unicode == ~escape_unicode , {
3890 if((b.isClosed == true) and: (info.isClosed == true), {~min.value});
3891 if(info.isClosed == false, {info.valueAction = 0;});
3892 if(b.isClosed == false, {b.valueAction = 0;});
3896 //keyboard number actions
3899 {unicode == ~one_unicode}{keycodeb.valueAction_(0)}
3900 {unicode == ~two_unicode}{keycodeb.valueAction_(1)}
3901 {unicode == ~three_unicode}{keycodeb.valueAction_(2)}
3902 {unicode == ~four_unicode}{keycodeb.valueAction_(3)}
3903 {unicode == ~five_unicode}{keycodeb.valueAction_(4)}
3904 {unicode == ~six_unicode}{keycodeb.valueAction_(5)}
3905 {unicode == ~seven_unicode}{keycodeb.valueAction_(6)}
3906 {unicode == ~eight_unicode}{keycodeb.valueAction_(7)}
3909 //keyboard up/down arrow actions
3911 {(keycode == ~uparrow_keycode) or: (unicode == ~i_unicode)}{keycodeb.valueAction_(keycodeb.value-1)}
3912 {(keycode == ~downarrow_keycode) or: (unicode == ~k_unicode)}{keycodeb.valueAction_(keycodeb.value+1)};
3915 //set synth frequency using left/right arrow keys or j/l keys
3917 if((~f1 >= ~freqmap.at(127)), {~freqmap.at(127)},
3918 {if((keycodeb.value == 0) and: (((keycode == ~rightarrow_keycode) or: (keycode == ~rightarrow_keycode1)) or: (unicode == ~l_unicode)), {
3919 ~freqmapval1 = ~f1.cpsmidi.round;
3921 {~l1a.isRunning == true}{
3922 ~l1a.set(\dur, ~f1 = ~freqmap.at(~freqmapval1 = ~freqmapval1.value+1));
3923 ~l1b.set(\dur, ~f1);
3924 ~l1c.set(\dur, ~f1/~icd3);
3925 ~l1d.set(\dur, ~f1/~icd3);
3926 ~l1e.set(\dur, ~f1/~icd6);
3927 ~l1f.set(\dur, ~f1/~icd6);
3929 {~l1a1.isRunning == true}{
3930 ~l1a1.set(\dur, ~f1 = ~freqmap.at(~freqmapval1 = ~freqmapval1.value+1));
3931 ~l1b1.set(\dur, ~f1);
3932 ~l1c1.set(\dur, ~f1/~icd3);
3933 ~l1d1.set(\dur, ~f1/~icd3);
3934 ~l1e1.set(\dur, ~f1/~icd6);
3935 ~l1f1.set(\dur, ~f1/~icd6);
3937 if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (View(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (View(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
3938 ~z25.background = Color.green; ~z1.background = Color.green;
3939 ~z26.background = Color.white; ~z2.background = Color.white;
3940 ~z27.background = Color.white; ~z3.background = Color.white;
3941 ~z28.background = Color.white; ~z4.background = Color.white;
3942 ~z29.background = Color.white; ~z5.background = Color.white;
3943 ~z30.background = Color.white; ~z6.background = Color.white;
3944 ~z31.background = Color.white; ~z7.background = Color.white;
3945 ~z32.background = Color.white; ~z8.background = Color.white;
3947 if((~f1 <= ~freqmap.at(0)), {~freqmap.at(0)},
3948 {if((keycodeb.value == 0) and: (((keycode == ~leftarrow_keycode) or: (keycode == ~leftarrow_keycode1)) or: (unicode == ~j_unicode)), {
3949 ~freqmapval1 = ~f1.cpsmidi.round;
3951 {~l1a.isRunning == true}{
3952 ~l1a.set(\dur, ~f1 = ~freqmap.at(~freqmapval1 = ~freqmapval1.value-1));
3953 ~l1b.set(\dur, ~f1);
3954 ~l1c.set(\dur, ~f1/~icd3);
3955 ~l1d.set(\dur, ~f1/~icd3);
3956 ~l1e.set(\dur, ~f1/~icd6);
3957 ~l1f.set(\dur, ~f1/~icd6);
3959 {~l1a1.isRunning == true}{
3960 ~l1a1.set(\dur, ~f1 = ~freqmap.at(~freqmapval1 = ~freqmapval1.value-1));
3961 ~l1b1.set(\dur, ~f1);
3962 ~l1c1.set(\dur, ~f1/~icd3);
3963 ~l1d1.set(\dur, ~f1/~icd3);
3964 ~l1e1.set(\dur, ~f1/~icd6);
3965 ~l1f1.set(\dur, ~f1/~icd6);
3967 if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (View(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (View(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
3969 ~z25.background = Color.green; ~z1.background = Color.green;
3970 ~z26.background = Color.white; ~z2.background = Color.white;
3971 ~z27.background = Color.white; ~z3.background = Color.white;
3972 ~z28.background = Color.white; ~z4.background = Color.white;
3973 ~z29.background = Color.white; ~z5.background = Color.white;
3974 ~z30.background = Color.white; ~z6.background = Color.white;
3975 ~z31.background = Color.white; ~z7.background = Color.white;
3976 ~z32.background = Color.white; ~z8.background = Color.white;
3979 if((~f2 >= ~freqmap.at(127)), {~freqmap.at(127)},
3980 {if((keycodeb.value == 1) and: (((keycode == ~rightarrow_keycode) or: (keycode == ~rightarrow_keycode1)) or: (unicode == ~l_unicode)), {
3981 ~freqmapval2 = ~f2.cpsmidi.round;
3983 {~l1a.isRunning == true}{
3984 ~l2a.set(\dur, ~f2 = ~freqmap.at(~freqmapval2 = ~freqmapval2.value+1));
3985 ~l2b.set(\dur, ~f2);
3986 ~l2c.set(\dur, ~f2/~icd3);
3987 ~l2d.set(\dur, ~f2/~icd3);
3988 ~l2e.set(\dur, ~f2/~icd6);
3989 ~l2f.set(\dur, ~f2/~icd6);
3991 {~l1a1.isRunning == true}{
3992 ~l2a1.set(\dur, ~f2 = ~freqmap.at(~freqmapval2 = ~freqmapval2.value+1));
3993 ~l2b1.set(\dur, ~f2);
3994 ~l2c1.set(\dur, ~f2/~icd3);
3995 ~l2d1.set(\dur, ~f2/~icd3);
3996 ~l2e1.set(\dur, ~f2/~icd6);
3997 ~l2f1.set(\dur, ~f2/~icd6);
3999 if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (View(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (View(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
4000 ~z25.background = Color.white; ~z1.background = Color.white;
4001 ~z26.background = Color.green; ~z2.background = Color.green;
4002 ~z27.background = Color.white; ~z3.background = Color.white;
4003 ~z28.background = Color.white; ~z4.background = Color.white;
4004 ~z29.background = Color.white; ~z5.background = Color.white;
4005 ~z30.background = Color.white; ~z6.background = Color.white;
4006 ~z31.background = Color.white; ~z7.background = Color.white;
4007 ~z32.background = Color.white; ~z8.background = Color.white;
4009 if((~f2 <= ~freqmap.at(0)), {~freqmap.at(0)},
4010 {if((keycodeb.value == 1) and: (((keycode == ~leftarrow_keycode) or: (keycode == ~leftarrow_keycode1)) or: (unicode == ~j_unicode)), {
4011 ~freqmapval2 = ~f2.cpsmidi.round;
4013 {~l1a.isRunning == true}{
4014 ~l2a.set(\dur, ~f2 = ~freqmap.at(~freqmapval2 = ~freqmapval2.value-1));
4015 ~l2b.set(\dur, ~f2);
4016 ~l2c.set(\dur, ~f2/~icd3);
4017 ~l2d.set(\dur, ~f2/~icd3);
4018 ~l2e.set(\dur, ~f2/~icd6);
4019 ~l2f.set(\dur, ~f2/~icd6);
4021 {~l1a1.isRunning == true}{
4022 ~l2a1.set(\dur, ~f2 = ~freqmap.at(~freqmapval2 = ~freqmapval2.value-1));
4023 ~l2b1.set(\dur, ~f2);
4024 ~l2c1.set(\dur, ~f2/~icd3);
4025 ~l2d1.set(\dur, ~f2/~icd3);
4026 ~l2e1.set(\dur, ~f2/~icd6);
4027 ~l2f1.set(\dur, ~f2/~icd6);
4029 if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (View(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (View(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
4031 ~z25.background = Color.white; ~z1.background = Color.white;
4032 ~z26.background = Color.green; ~z2.background = Color.green;
4033 ~z27.background = Color.white; ~z3.background = Color.white;
4034 ~z28.background = Color.white; ~z4.background = Color.white;
4035 ~z29.background = Color.white; ~z5.background = Color.white;
4036 ~z30.background = Color.white; ~z6.background = Color.white;
4037 ~z31.background = Color.white; ~z7.background = Color.white;
4038 ~z32.background = Color.white; ~z8.background = Color.white;
4041 if((~f3 >= ~freqmap.at(127)), {~freqmap.at(127)},
4042 {if((keycodeb.value == 2) and: (((keycode == ~rightarrow_keycode) or: (keycode == ~rightarrow_keycode1)) or: (unicode == ~l_unicode)), {
4043 ~freqmapval3 = ~f3.cpsmidi.round;
4045 {~l1a.isRunning == true}{
4046 ~l3a.set(\dur, ~f3 = ~freqmap.at(~freqmapval3 = ~freqmapval3.value+1));
4047 ~l3b.set(\dur, ~f3);
4048 ~l3c.set(\dur, ~f3/~icd3);
4049 ~l3d.set(\dur, ~f3/~icd3);
4050 ~l3e.set(\dur, ~f3/~icd6);
4051 ~l3f.set(\dur, ~f3/~icd6);
4053 {~l1a1.isRunning == true}{
4054 ~l3a1.set(\dur, ~f3 = ~freqmap.at(~freqmapval3 = ~freqmapval3.value+1));
4055 ~l3b1.set(\dur, ~f3);
4056 ~l3c1.set(\dur, ~f3/~icd3);
4057 ~l3d1.set(\dur, ~f3/~icd3);
4058 ~l3e1.set(\dur, ~f3/~icd6);
4059 ~l3f1.set(\dur, ~f3/~icd6);
4061 if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (View(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (View(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
4062 ~z25.background = Color.white; ~z1.background = Color.white;
4063 ~z26.background = Color.white; ~z2.background = Color.white;
4064 ~z27.background = Color.green; ~z3.background = Color.green;
4065 ~z28.background = Color.white; ~z4.background = Color.white;
4066 ~z29.background = Color.white; ~z5.background = Color.white;
4067 ~z30.background = Color.white; ~z6.background = Color.white;
4068 ~z31.background = Color.white; ~z7.background = Color.white;
4069 ~z32.background = Color.white; ~z8.background = Color.white;
4071 if((~f3 <= ~freqmap.at(0)), {~freqmap.at(0)},
4072 {if((keycodeb.value == 2) and: (((keycode == ~leftarrow_keycode) or: (keycode == ~leftarrow_keycode1)) or: (unicode == ~j_unicode)), {
4073 ~freqmapval3 = ~f3.cpsmidi.round;
4075 {~l1a.isRunning == true}{
4076 ~l3a.set(\dur, ~f3 = ~freqmap.at(~freqmapval3 = ~freqmapval3.value-1));
4077 ~l3b.set(\dur, ~f3);
4078 ~l3c.set(\dur, ~f3/~icd3);
4079 ~l3d.set(\dur, ~f3/~icd3);
4080 ~l3e.set(\dur, ~f3/~icd6);
4081 ~l3f.set(\dur, ~f3/~icd6);
4083 {~l1a1.isRunning == true}{
4084 ~l3a1.set(\dur, ~f3 = ~freqmap.at(~freqmapval3 = ~freqmapval3.value-1));
4085 ~l3b1.set(\dur, ~f3);
4086 ~l3c1.set(\dur, ~f3/~icd3);
4087 ~l3d1.set(\dur, ~f3/~icd3);
4088 ~l3e1.set(\dur, ~f3/~icd6);
4089 ~l3f1.set(\dur, ~f3/~icd6);
4091 if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (View(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (View(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
4093 ~z25.background = Color.white; ~z1.background = Color.white;
4094 ~z26.background = Color.white; ~z2.background = Color.white;
4095 ~z27.background = Color.green; ~z3.background = Color.green;
4096 ~z28.background = Color.white; ~z4.background = Color.white;
4097 ~z29.background = Color.white; ~z5.background = Color.white;
4098 ~z30.background = Color.white; ~z6.background = Color.white;
4099 ~z31.background = Color.white; ~z7.background = Color.white;
4100 ~z32.background = Color.white; ~z8.background = Color.white;
4103 if((~f4 >= ~freqmap.at(127)), {~freqmap.at(127)},
4104 {if((keycodeb.value == 3) and: (((keycode == ~rightarrow_keycode) or: (keycode == ~rightarrow_keycode1)) or: (unicode == ~l_unicode)), {
4105 ~freqmapval4 = ~f4.cpsmidi.round;
4107 {~l1a.isRunning == true}{
4108 ~l4a.set(\dur, ~f4 = ~freqmap.at(~freqmapval4 = ~freqmapval4.value+1));
4109 ~l4b.set(\dur, ~f4);
4110 ~l4c.set(\dur, ~f4/~icd3);
4111 ~l4d.set(\dur, ~f4/~icd3);
4112 ~l4e.set(\dur, ~f4/~icd6);
4113 ~l4f.set(\dur, ~f4/~icd6);
4115 {~l1a1.isRunning == true}{
4116 ~l4a1.set(\dur, ~f4 = ~freqmap.at(~freqmapval4 = ~freqmapval4.value+1));
4117 ~l4b1.set(\dur, ~f4);
4118 ~l4c1.set(\dur, ~f4/~icd3);
4119 ~l4d1.set(\dur, ~f4/~icd3);
4120 ~l4e1.set(\dur, ~f4/~icd6);
4121 ~l4f1.set(\dur, ~f4/~icd6);
4123 if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (View(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (View(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
4124 ~z25.background = Color.white; ~z1.background = Color.white;
4125 ~z26.background = Color.white; ~z2.background = Color.white;
4126 ~z27.background = Color.white; ~z3.background = Color.white;
4127 ~z28.background = Color.green; ~z4.background = Color.green;
4128 ~z29.background = Color.white; ~z5.background = Color.white;
4129 ~z30.background = Color.white; ~z6.background = Color.white;
4130 ~z31.background = Color.white; ~z7.background = Color.white;
4131 ~z32.background = Color.white; ~z8.background = Color.white;
4133 if((~f4 <= ~freqmap.at(0)), {~freqmap.at(0)},
4134 {if((keycodeb.value == 3) and: (((keycode == ~leftarrow_keycode) or: (keycode == ~leftarrow_keycode1)) or: (unicode == ~j_unicode)), {
4135 ~freqmapval4 = ~f4.cpsmidi.round;
4137 {~l1a.isRunning == true}{
4138 ~l4a.set(\dur, ~f4 = ~freqmap.at(~freqmapval4 = ~freqmapval4.value-1));
4139 ~l4b.set(\dur, ~f4);
4140 ~l4c.set(\dur, ~f4/~icd3);
4141 ~l4d.set(\dur, ~f4/~icd3);
4142 ~l4e.set(\dur, ~f4/~icd6);
4143 ~l4f.set(\dur, ~f4/~icd6);
4145 {~l1a1.isRunning == true}{
4146 ~l4a1.set(\dur, ~f4 = ~freqmap.at(~freqmapval4 = ~freqmapval4.value-1));
4147 ~l4b1.set(\dur, ~f4);
4148 ~l4c1.set(\dur, ~f4/~icd3);
4149 ~l4d1.set(\dur, ~f4/~icd3);
4150 ~l4e1.set(\dur, ~f4/~icd6);
4151 ~l4f1.set(\dur, ~f4/~icd6);
4153 if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (View(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (View(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
4155 ~z25.background = Color.white; ~z1.background = Color.white;
4156 ~z26.background = Color.white; ~z2.background = Color.white;
4157 ~z27.background = Color.white; ~z3.background = Color.white;
4158 ~z28.background = Color.green; ~z4.background = Color.green;
4159 ~z29.background = Color.white; ~z5.background = Color.white;
4160 ~z30.background = Color.white; ~z6.background = Color.white;
4161 ~z31.background = Color.white; ~z7.background = Color.white;
4162 ~z32.background = Color.white; ~z8.background = Color.white;
4165 if((~f5 >= ~freqmap.at(127)), {~freqmap.at(127)},
4166 {if((keycodeb.value == 4) and: (((keycode == ~rightarrow_keycode) or: (keycode == ~rightarrow_keycode1)) or: (unicode == ~l_unicode)), {
4167 ~freqmapval5 = ~f5.cpsmidi.round;
4169 {~l1a.isRunning == true}{
4170 ~l5a.set(\dur, ~f5 = ~freqmap.at(~freqmapval5 = ~freqmapval5.value+1));
4171 ~l5b.set(\dur, ~f5);
4172 ~l5c.set(\dur, ~f5/~icd3);
4173 ~l5d.set(\dur, ~f5/~icd3);
4174 ~l5e.set(\dur, ~f5/~icd6);
4175 ~l5f.set(\dur, ~f5/~icd6);
4177 {~l1a1.isRunning == true}{
4178 ~l5a1.set(\dur, ~f5 = ~freqmap.at(~freqmapval5 = ~freqmapval5.value+1));
4179 ~l5b1.set(\dur, ~f5);
4180 ~l5c1.set(\dur, ~f5/~icd3);
4181 ~l5d1.set(\dur, ~f5/~icd3);
4182 ~l5e1.set(\dur, ~f5/~icd6);
4183 ~l5f1.set(\dur, ~f5/~icd6);
4185 if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (View(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (View(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
4186 ~z25.background = Color.white; ~z1.background = Color.white;
4187 ~z26.background = Color.white; ~z2.background = Color.white;
4188 ~z27.background = Color.white; ~z3.background = Color.white;
4189 ~z28.background = Color.white; ~z4.background = Color.white;
4190 ~z29.background = Color.green; ~z5.background = Color.green;
4191 ~z30.background = Color.white; ~z6.background = Color.white;
4192 ~z31.background = Color.white; ~z7.background = Color.white;
4193 ~z32.background = Color.white; ~z8.background = Color.white;
4195 if((~f5 <= ~freqmap.at(0)), {~freqmap.at(0)},
4196 {if((keycodeb.value == 4) and: (((keycode == ~leftarrow_keycode) or: (keycode == ~leftarrow_keycode1)) or: (unicode == ~j_unicode)), {
4197 ~freqmapval5 = ~f5.cpsmidi.round;
4199 {~l1a.isRunning == true}{
4200 ~l5a.set(\dur, ~f5 = ~freqmap.at(~freqmapval5 = ~freqmapval5.value-1));
4201 ~l5b.set(\dur, ~f5);
4202 ~l5c.set(\dur, ~f5/~icd3);
4203 ~l5d.set(\dur, ~f5/~icd3);
4204 ~l5e.set(\dur, ~f5/~icd6);
4205 ~l5f.set(\dur, ~f5/~icd6);
4207 {~l1a1.isRunning == true}{
4208 ~l5a1.set(\dur, ~f5 = ~freqmap.at(~freqmapval5 = ~freqmapval5.value-1));
4209 ~l5b1.set(\dur, ~f5);
4210 ~l5c1.set(\dur, ~f5/~icd3);
4211 ~l5d1.set(\dur, ~f5/~icd3);
4212 ~l5e1.set(\dur, ~f5/~icd6);
4213 ~l5f1.set(\dur, ~f5/~icd6);
4215 if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (View(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (View(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
4217 ~z25.background = Color.white; ~z1.background = Color.white;
4218 ~z26.background = Color.white; ~z2.background = Color.white;
4219 ~z27.background = Color.white; ~z3.background = Color.white;
4220 ~z28.background = Color.white; ~z4.background = Color.white;
4221 ~z29.background = Color.green; ~z5.background = Color.green;
4222 ~z30.background = Color.white; ~z6.background = Color.white;
4223 ~z31.background = Color.white; ~z7.background = Color.white;
4224 ~z32.background = Color.white; ~z8.background = Color.white;
4227 if((~f6 >= ~freqmap.at(127)), {~freqmap.at(127)},
4228 {if((keycodeb.value == 5) and: (((keycode == ~rightarrow_keycode) or: (keycode == ~rightarrow_keycode1)) or: (unicode == ~l_unicode)), {
4229 ~freqmapval6 = ~f6.cpsmidi.round;
4231 {~l1a.isRunning == true}{
4232 ~l6a.set(\dur, ~f6 = ~freqmap.at(~freqmapval6 = ~freqmapval6.value+1));
4233 ~l6b.set(\dur, ~f6);
4234 ~l6c.set(\dur, ~f6/~icd3);
4235 ~l6d.set(\dur, ~f6/~icd3);
4236 ~l6e.set(\dur, ~f6/~icd6);
4237 ~l6f.set(\dur, ~f6/~icd6);
4239 {~l1a1.isRunning == true}{
4240 ~l6a1.set(\dur, ~f6 = ~freqmap.at(~freqmapval6 = ~freqmapval6.value+1));
4241 ~l6b1.set(\dur, ~f6);
4242 ~l6c1.set(\dur, ~f6/~icd3);
4243 ~l6d1.set(\dur, ~f6/~icd3);
4244 ~l6e1.set(\dur, ~f6/~icd6);
4245 ~l6f1.set(\dur, ~f6/~icd6);
4247 if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (View(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (View(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
4248 ~z25.background = Color.white; ~z1.background = Color.white;
4249 ~z26.background = Color.white; ~z2.background = Color.white;
4250 ~z27.background = Color.white; ~z3.background = Color.white;
4251 ~z28.background = Color.white; ~z4.background = Color.white;
4252 ~z29.background = Color.white; ~z5.background = Color.white;
4253 ~z30.background = Color.green; ~z6.background = Color.green;
4254 ~z31.background = Color.white; ~z7.background = Color.white;
4255 ~z32.background = Color.white; ~z8.background = Color.white;
4257 if((~f6 <= ~freqmap.at(0)), {~freqmap.at(0)},
4258 {if((keycodeb.value == 5) and: (((keycode == ~leftarrow_keycode) or: (keycode == ~leftarrow_keycode1)) or: (unicode == ~j_unicode)), {
4259 ~freqmapval6 = ~f6.cpsmidi.round;
4261 {~l1a.isRunning == true}{
4262 ~l6a.set(\dur, ~f6 = ~freqmap.at(~freqmapval6 = ~freqmapval6.value-1));
4263 ~l6b.set(\dur, ~f6);
4264 ~l6c.set(\dur, ~f6/~icd3);
4265 ~l6d.set(\dur, ~f6/~icd3);
4266 ~l6e.set(\dur, ~f6/~icd6);
4267 ~l6f.set(\dur, ~f6/~icd6);
4269 {~l1a1.isRunning == true}{
4270 ~l6a1.set(\dur, ~f6 = ~freqmap.at(~freqmapval6 = ~freqmapval6.value-1));
4271 ~l6b1.set(\dur, ~f6);
4272 ~l6c1.set(\dur, ~f6/~icd3);
4273 ~l6d1.set(\dur, ~f6/~icd3);
4274 ~l6e1.set(\dur, ~f6/~icd6);
4275 ~l6f1.set(\dur, ~f6/~icd6);
4277 if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (View(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (View(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
4279 ~z25.background = Color.white; ~z1.background = Color.white;
4280 ~z26.background = Color.white; ~z2.background = Color.white;
4281 ~z27.background = Color.white; ~z3.background = Color.white;
4282 ~z28.background = Color.white; ~z4.background = Color.white;
4283 ~z29.background = Color.white; ~z5.background = Color.white;
4284 ~z30.background = Color.green; ~z6.background = Color.green;
4285 ~z31.background = Color.white; ~z7.background = Color.white;
4286 ~z32.background = Color.white; ~z8.background = Color.white;
4289 if((~f7 >= ~freqmap.at(127)), {~freqmap.at(127)},
4290 {if((keycodeb.value == 6) and: (((keycode == ~rightarrow_keycode) or: (keycode == ~rightarrow_keycode1)) or: (unicode == ~l_unicode)), {
4291 ~freqmapval7 = ~f7.cpsmidi.round;
4293 {~l1a.isRunning == true}{
4294 ~l7a.set(\dur, ~f7 = ~freqmap.at(~freqmapval7 = ~freqmapval7.value+1));
4295 ~l7b.set(\dur, ~f7);
4296 ~l7c.set(\dur, ~f7/~icd3);
4297 ~l7d.set(\dur, ~f7/~icd3);
4298 ~l7e.set(\dur, ~f7/~icd6);
4299 ~l7f.set(\dur, ~f7/~icd6);
4301 {~l1a1.isRunning == true}{
4302 ~l7a1.set(\dur, ~f7 = ~freqmap.at(~freqmapval7 = ~freqmapval7.value+1));
4303 ~l7b1.set(\dur, ~f7);
4304 ~l7c1.set(\dur, ~f7/~icd3);
4305 ~l7d1.set(\dur, ~f7/~icd3);
4306 ~l7e1.set(\dur, ~f7/~icd6);
4307 ~l7f1.set(\dur, ~f7/~icd6);
4309 if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (View(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (View(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
4310 ~z25.background = Color.white; ~z1.background = Color.white;
4311 ~z26.background = Color.white; ~z2.background = Color.white;
4312 ~z27.background = Color.white; ~z3.background = Color.white;
4313 ~z28.background = Color.white; ~z4.background = Color.white;
4314 ~z29.background = Color.white; ~z5.background = Color.white;
4315 ~z30.background = Color.white; ~z6.background = Color.white;
4316 ~z31.background = Color.green; ~z7.background = Color.green;
4317 ~z32.background = Color.white; ~z8.background = Color.white;
4319 if((~f7 <= ~freqmap.at(0)), {~freqmap.at(0)},
4320 {if((keycodeb.value == 6) and: (((keycode == ~leftarrow_keycode) or: (keycode == ~leftarrow_keycode1)) or: (unicode == ~j_unicode)), {
4321 ~freqmapval7 = ~f7.cpsmidi.round;
4323 {~l1a.isRunning == true}{
4324 ~l7a.set(\dur, ~f7 = ~freqmap.at(~freqmapval7 = ~freqmapval7.value-1));
4325 ~l7b.set(\dur, ~f7);
4326 ~l7c.set(\dur, ~f7/~icd3);
4327 ~l7d.set(\dur, ~f7/~icd3);
4328 ~l7e.set(\dur, ~f7/~icd6);
4329 ~l7f.set(\dur, ~f7/~icd6);
4331 {~l1a1.isRunning == true}{
4332 ~l7a1.set(\dur, ~f7 = ~freqmap.at(~freqmapval7 = ~freqmapval7.value-1));
4333 ~l7b1.set(\dur, ~f7);
4334 ~l7c1.set(\dur, ~f7/~icd3);
4335 ~l7d1.set(\dur, ~f7/~icd3);
4336 ~l7e1.set(\dur, ~f7/~icd6);
4337 ~l7f1.set(\dur, ~f7/~icd6);
4339 if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (View(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (View(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
4341 ~z25.background = Color.white; ~z1.background = Color.white;
4342 ~z26.background = Color.white; ~z2.background = Color.white;
4343 ~z27.background = Color.white; ~z3.background = Color.white;
4344 ~z28.background = Color.white; ~z4.background = Color.white;
4345 ~z29.background = Color.white; ~z5.background = Color.white;
4346 ~z30.background = Color.white; ~z6.background = Color.white;
4347 ~z31.background = Color.green; ~z7.background = Color.green;
4348 ~z32.background = Color.white; ~z8.background = Color.white;
4351 if((~f8 >= ~freqmap.at(127)), {~freqmap.at(127)},
4352 {if((keycodeb.value == 7) and: (((keycode == ~rightarrow_keycode) or: (keycode == ~rightarrow_keycode1)) or: (unicode == ~l_unicode)), {
4353 ~freqmapval8 = ~f8.cpsmidi.round;
4355 {~l1a.isRunning == true}{
4356 ~l8a.set(\dur, ~f8 = ~freqmap.at(~freqmapval8 = ~freqmapval8.value+1));
4357 ~l8b.set(\dur, ~f8);
4358 ~l8c.set(\dur, ~f8/~icd3);
4359 ~l8d.set(\dur, ~f8/~icd3);
4360 ~l8e.set(\dur, ~f8/~icd6);
4361 ~l8f.set(\dur, ~f8/~icd6);
4363 {~l1a1.isRunning == true}{
4364 ~l8a1.set(\dur, ~f8 = ~freqmap.at(~freqmapval8 = ~freqmapval8.value+1));
4365 ~l8b1.set(\dur, ~f8);
4366 ~l8c1.set(\dur, ~f8/~icd3);
4367 ~l8d1.set(\dur, ~f8/~icd3);
4368 ~l8e1.set(\dur, ~f8/~icd6);
4369 ~l8f1.set(\dur, ~f8/~icd6);
4371 if((~f8 > ~outmaxa) or: (~f8 < ~outmina), {~z32.close;~z8.close;~z32 = (View(w, Rect((~f8.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+80, ~nw, 2)).background = Color.white;);}, {~z8.close;~z32.close;~z8 = (View(w, Rect((~f8.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+80, ~nw, 2)).background = Color.white;);});
4372 ~z25.background = Color.white; ~z1.background = Color.white;
4373 ~z26.background = Color.white; ~z2.background = Color.white;
4374 ~z27.background = Color.white; ~z3.background = Color.white;
4375 ~z28.background = Color.white; ~z4.background = Color.white;
4376 ~z29.background = Color.white; ~z5.background = Color.white;
4377 ~z30.background = Color.white; ~z6.background = Color.white;
4378 ~z31.background = Color.white; ~z7.background = Color.white;
4379 ~z32.background = Color.green; ~z8.background = Color.green;
4381 if((~f8 <= ~freqmap.at(0)), {~freqmap.at(0)},
4382 {if((keycodeb.value == 7) and: (((keycode == ~leftarrow_keycode) or: (keycode == ~leftarrow_keycode1)) or: (unicode == ~j_unicode)), {
4383 ~freqmapval8 = ~f8.cpsmidi.round;
4385 {~l1a.isRunning == true}{
4386 ~l8a.set(\dur, ~f8 = ~freqmap.at(~freqmapval8 = ~freqmapval8.value-1));
4387 ~l8b.set(\dur, ~f8);
4388 ~l8c.set(\dur, ~f8/~icd3);
4389 ~l8d.set(\dur, ~f8/~icd3);
4390 ~l8e.set(\dur, ~f8/~icd6);
4391 ~l8f.set(\dur, ~f8/~icd6);
4393 {~l1a1.isRunning == true}{
4394 ~l8a1.set(\dur, ~f8 = ~freqmap.at(~freqmapval8 = ~freqmapval8.value-1));
4395 ~l8b1.set(\dur, ~f8);
4396 ~l8c1.set(\dur, ~f8/~icd3);
4397 ~l8d1.set(\dur, ~f8/~icd3);
4398 ~l8e1.set(\dur, ~f8/~icd6);
4399 ~l8f1.set(\dur, ~f8/~icd6);
4401 if((~f8 > ~outmaxa) or: (~f8 < ~outmina), {~z32.close;~z8.close;~z32 = (View(w, Rect((~f8.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+80, ~nw, 2)).background = Color.white;);}, {~z8.close;~z32.close;~z8 = (View(w, Rect((~f8.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+80, ~nw, 2)).background = Color.white;);});
4403 ~z25.background = Color.white; ~z1.background = Color.white;
4404 ~z26.background = Color.white; ~z2.background = Color.white;
4405 ~z27.background = Color.white; ~z3.background = Color.white;
4406 ~z28.background = Color.white; ~z4.background = Color.white;
4407 ~z29.background = Color.white; ~z5.background = Color.white;
4408 ~z30.background = Color.white; ~z6.background = Color.white;
4409 ~z31.background = Color.white; ~z7.background = Color.white;
4410 ~z32.background = Color.green; ~z8.background = Color.green;
4417 //if routine function values are nil
4419 if(~rslot1a == nil, {~rslot1a = ~bplaceo1;}); if(~rslot1b == nil, {~rslot1b = ~bplacef1;});
4420 if(~rslot2 == nil, {~rslot2 = ~bplacef2;});
4421 if(~rslot3 == nil, {~rslot3 = ~bplacef3;});
4422 if(~rslot4 == nil, {~rslot4 = ~bplacef4;});
4423 if(~rslot5 == nil, {~rslot5 = ~bplacef5;});
4424 if(~rslot6 == nil, {~rslot6 = ~bplacef6;});
4425 if(~rslot7 == nil, {~rslot7 = ~bplacef7;});
4426 if(~rslot8 == nil, {~rslot8 = ~bplacef8;});
4427 if(~rtimeall == nil, {~rtimeall = 4;});
4428 if(~rtime1 == nil, {~rtime1 = 4;});
4429 if(~rtime2 == nil, {~rtime2 = 4;});
4430 if(~rtime3 == nil, {~rtime3 = 4;});
4431 if(~rtime4 == nil, {~rtime4 = 4;});
4432 if(~rtime5 == nil, {~rtime5 = 4;});
4433 if(~rtime6 == nil, {~rtime6 = 4;});
4434 if(~rtime7 == nil, {~rtime7 = 4;});
4435 if(~rtime8 == nil, {~rtime8 = 4;});
4436 if(~rdoall == nil, {~rdoall = 1;});
4437 if(~rdo1a == nil, {~rdo1a = "o1";}); if(~rdo1b == nil, {~rdo1b = "f1";});
4438 if(~rdo2 == nil, {~rdo2 = "f2";});
4439 if(~rdo3 == nil, {~rdo3 = "f3";});
4440 if(~rdo4 == nil, {~rdo4 = "f4";});
4441 if(~rdo5 == nil, {~rdo5 = "f5";});
4442 if(~rdo6 == nil, {~rdo6 = "f6";});
4443 if(~rdo7 == nil, {~rdo7 = "f7";});
4444 if(~rdo8 == nil, {~rdo8 = "f8";});
4447 //misc. routine button functions (see below)
4450 if(~si1a.value == "o1", {~rslot1a = ~bplaceo1; ~rdo1a = ~si1a.value;});
4451 if(~si1a.value == "f1", {~rslot1a = ~bplacef1; ~rdo1a = ~si1a.value;});
4452 if(~si1a.value == "s1", {~rslot1a = ~bplaces1; ~rdo1a = ~si1a.value;});
4453 if(~si1a.value == "o2", {~rslot1a = ~bplaceo2; ~rdo1a = ~si1a.value;});
4454 if(~si1a.value == "f2", {~rslot1a = ~bplacef2; ~rdo1a = ~si1a.value;});
4455 if(~si1a.value == "s2", {~rslot1a = ~bplaces2; ~rdo1a = ~si1a.value;});
4456 if(~si1a.value == "o3", {~rslot1a = ~bplaceo3; ~rdo1a = ~si1a.value;});
4457 if(~si1a.value == "f3", {~rslot1a = ~bplacef3; ~rdo1a = ~si1a.value;});
4458 if(~si1a.value == "s3", {~rslot1a = ~bplaces3; ~rdo1a = ~si1a.value;});
4459 if(~si1a.value == "o4", {~rslot1a = ~bplaceo4; ~rdo1a = ~si1a.value;});
4460 if(~si1a.value == "f4", {~rslot1a = ~bplacef4; ~rdo1a = ~si1a.value;});
4461 if(~si1a.value == "s4", {~rslot1a = ~bplaces4; ~rdo1a = ~si1a.value;});
4462 if(~si1a.value == "o5", {~rslot1a = ~bplaceo5; ~rdo1a = ~si1a.value;});
4463 if(~si1a.value == "f5", {~rslot1a = ~bplacef5; ~rdo1a = ~si1a.value;});
4464 if(~si1a.value == "s5", {~rslot1a = ~bplaces5; ~rdo1a = ~si1a.value;});
4465 if(~si1a.value == "o6", {~rslot1a = ~bplaceo6; ~rdo1a = ~si1a.value;});
4466 if(~si1a.value == "f6", {~rslot1a = ~bplacef6; ~rdo1a = ~si1a.value;});
4467 if(~si1a.value == "s6", {~rslot1a = ~bplaces6; ~rdo1a = ~si1a.value;});
4468 if(~si1a.value == "o7", {~rslot1a = ~bplaceo7; ~rdo1a = ~si1a.value;});
4469 if(~si1a.value == "f7", {~rslot1a = ~bplacef7; ~rdo1a = ~si1a.value;});
4470 if(~si1a.value == "s7", {~rslot1a = ~bplaces7; ~rdo1a = ~si1a.value;});
4471 if(~si1a.value == "o8", {~rslot1a = ~bplaceo8; ~rdo1a = ~si1a.value;});
4472 if(~si1a.value == "f8", {~rslot1a = ~bplacef8; ~rdo1a = ~si1a.value;});
4473 if(~si1a.value == "s8", {~rslot1a = ~bplaces8; ~rdo1a = ~si1a.value;});
4476 if(~si1b.value == "o1", {~rslot1b = ~bplaceo1; ~rdo1b = ~si1b.value;});
4477 if(~si1b.value == "f1", {~rslot1b = ~bplacef1; ~rdo1b = ~si1b.value;});
4478 if(~si1b.value == "s1", {~rslot1b = ~bplaces1; ~rdo1b = ~si1b.value;});
4479 if(~si1b.value == "o2", {~rslot1b = ~bplaceo2; ~rdo1b = ~si1b.value;});
4480 if(~si1b.value == "f2", {~rslot1b = ~bplacef2; ~rdo1b = ~si1b.value;});
4481 if(~si1b.value == "s2", {~rslot1b = ~bplaces2; ~rdo1b = ~si1b.value;});
4482 if(~si1b.value == "o3", {~rslot1b = ~bplaceo3; ~rdo1b = ~si1b.value;});
4483 if(~si1b.value == "f3", {~rslot1b = ~bplacef3; ~rdo1b = ~si1b.value;});
4484 if(~si1b.value == "s3", {~rslot1b = ~bplaces3; ~rdo1b = ~si1b.value;});
4485 if(~si1b.value == "o4", {~rslot1b = ~bplaceo4; ~rdo1b = ~si1b.value;});
4486 if(~si1b.value == "f4", {~rslot1b = ~bplacef4; ~rdo1b = ~si1b.value;});
4487 if(~si1b.value == "s4", {~rslot1b = ~bplaces4; ~rdo1b = ~si1b.value;});
4488 if(~si1b.value == "o5", {~rslot1b = ~bplaceo5; ~rdo1b = ~si1b.value;});
4489 if(~si1b.value == "f5", {~rslot1b = ~bplacef5; ~rdo1b = ~si1b.value;});
4490 if(~si1b.value == "s5", {~rslot1b = ~bplaces5; ~rdo1b = ~si1b.value;});
4491 if(~si1b.value == "o6", {~rslot1b = ~bplaceo6; ~rdo1b = ~si1b.value;});
4492 if(~si1b.value == "f6", {~rslot1b = ~bplacef6; ~rdo1b = ~si1b.value;});
4493 if(~si1b.value == "s6", {~rslot1b = ~bplaces6; ~rdo1b = ~si1b.value;});
4494 if(~si1b.value == "o7", {~rslot1b = ~bplaceo7; ~rdo1b = ~si1b.value;});
4495 if(~si1b.value == "f7", {~rslot1b = ~bplacef7; ~rdo1b = ~si1b.value;});
4496 if(~si1b.value == "s7", {~rslot1b = ~bplaces7; ~rdo1b = ~si1b.value;});
4497 if(~si1b.value == "o8", {~rslot1b = ~bplaceo8; ~rdo1b = ~si1b.value;});
4498 if(~si1b.value == "f8", {~rslot1b = ~bplacef8; ~rdo1b = ~si1b.value;});
4499 if(~si1b.value == "s8", {~rslot1b = ~bplaces8; ~rdo1b = ~si1b.value;});
4502 if(~si2.value == "o1", {~rslot2 = ~bplaceo1; ~rdo2 = ~si2.value;});
4503 if(~si2.value == "f1", {~rslot2 = ~bplacef1; ~rdo2 = ~si2.value;});
4504 if(~si2.value == "s1", {~rslot2 = ~bplaces1; ~rdo2 = ~si2.value;});
4505 if(~si2.value == "o2", {~rslot2 = ~bplaceo2; ~rdo2 = ~si2.value;});
4506 if(~si2.value == "f2", {~rslot2 = ~bplacef2; ~rdo2 = ~si2.value;});
4507 if(~si2.value == "s2", {~rslot2 = ~bplaces2; ~rdo2 = ~si2.value;});
4508 if(~si2.value == "o3", {~rslot2 = ~bplaceo3; ~rdo2 = ~si2.value;});
4509 if(~si2.value == "f3", {~rslot2 = ~bplacef3; ~rdo2 = ~si2.value;});
4510 if(~si2.value == "s3", {~rslot2 = ~bplaces3; ~rdo2 = ~si2.value;});
4511 if(~si2.value == "o4", {~rslot2 = ~bplaceo4; ~rdo2 = ~si2.value;});
4512 if(~si2.value == "f4", {~rslot2 = ~bplacef4; ~rdo2 = ~si2.value;});
4513 if(~si2.value == "s4", {~rslot2 = ~bplaces4; ~rdo2 = ~si2.value;});
4514 if(~si2.value == "o5", {~rslot2 = ~bplaceo5; ~rdo2 = ~si2.value;});
4515 if(~si2.value == "f5", {~rslot2 = ~bplacef5; ~rdo2 = ~si2.value;});
4516 if(~si2.value == "s5", {~rslot2 = ~bplaces5; ~rdo2 = ~si2.value;});
4517 if(~si2.value == "o6", {~rslot2 = ~bplaceo6; ~rdo2 = ~si2.value;});
4518 if(~si2.value == "f6", {~rslot2 = ~bplacef6; ~rdo2 = ~si2.value;});
4519 if(~si2.value == "s6", {~rslot2 = ~bplaces6; ~rdo2 = ~si2.value;});
4520 if(~si2.value == "o7", {~rslot2 = ~bplaceo7; ~rdo2 = ~si2.value;});
4521 if(~si2.value == "f7", {~rslot2 = ~bplacef7; ~rdo2 = ~si2.value;});
4522 if(~si2.value == "s7", {~rslot2 = ~bplaces7; ~rdo2 = ~si2.value;});
4523 if(~si2.value == "o8", {~rslot2 = ~bplaceo8; ~rdo2 = ~si2.value;});
4524 if(~si2.value == "f8", {~rslot2 = ~bplacef8; ~rdo2 = ~si2.value;});
4525 if(~si2.value == "s8", {~rslot2 = ~bplaces8; ~rdo2 = ~si2.value;});
4528 if(~si3.value == "o1", {~rslot3 = ~bplaceo1; ~rdo3 = ~si3.value;});
4529 if(~si3.value == "f1", {~rslot3 = ~bplacef1; ~rdo3 = ~si3.value;});
4530 if(~si3.value == "s1", {~rslot3 = ~bplaces1; ~rdo3 = ~si3.value;});
4531 if(~si3.value == "o2", {~rslot3 = ~bplaceo2; ~rdo3 = ~si3.value;});
4532 if(~si3.value == "f2", {~rslot3 = ~bplacef2; ~rdo3 = ~si3.value;});
4533 if(~si3.value == "s2", {~rslot3 = ~bplaces2; ~rdo3 = ~si3.value;});
4534 if(~si3.value == "o3", {~rslot3 = ~bplaceo3; ~rdo3 = ~si3.value;});
4535 if(~si3.value == "f3", {~rslot3 = ~bplacef3; ~rdo3 = ~si3.value;});
4536 if(~si3.value == "s3", {~rslot3 = ~bplaces3; ~rdo3 = ~si3.value;});
4537 if(~si3.value == "o4", {~rslot3 = ~bplaceo4; ~rdo3 = ~si3.value;});
4538 if(~si3.value == "f4", {~rslot3 = ~bplacef4; ~rdo3 = ~si3.value;});
4539 if(~si3.value == "s4", {~rslot3 = ~bplaces4; ~rdo3 = ~si3.value;});
4540 if(~si3.value == "o5", {~rslot3 = ~bplaceo5; ~rdo3 = ~si3.value;});
4541 if(~si3.value == "f5", {~rslot3 = ~bplacef5; ~rdo3 = ~si3.value;});
4542 if(~si3.value == "s5", {~rslot3 = ~bplaces5; ~rdo3 = ~si3.value;});
4543 if(~si3.value == "o6", {~rslot3 = ~bplaceo6; ~rdo3 = ~si3.value;});
4544 if(~si3.value == "f6", {~rslot3 = ~bplacef6; ~rdo3 = ~si3.value;});
4545 if(~si3.value == "s6", {~rslot3 = ~bplaces6; ~rdo3 = ~si3.value;});
4546 if(~si3.value == "o7", {~rslot3 = ~bplaceo7; ~rdo3 = ~si3.value;});
4547 if(~si3.value == "f7", {~rslot3 = ~bplacef7; ~rdo3 = ~si3.value;});
4548 if(~si3.value == "s7", {~rslot3 = ~bplaces7; ~rdo3 = ~si3.value;});
4549 if(~si3.value == "o8", {~rslot3 = ~bplaceo8; ~rdo3 = ~si3.value;});
4550 if(~si3.value == "f8", {~rslot3 = ~bplacef8; ~rdo3 = ~si3.value;});
4551 if(~si3.value == "s8", {~rslot3 = ~bplaces8; ~rdo3 = ~si3.value;});
4554 if(~si4.value == "o1", {~rslot4 = ~bplaceo1; ~rdo4 = ~si4.value;});
4555 if(~si4.value == "f1", {~rslot4 = ~bplacef1; ~rdo4 = ~si4.value;});
4556 if(~si4.value == "s1", {~rslot4 = ~bplaces1; ~rdo4 = ~si4.value;});
4557 if(~si4.value == "o2", {~rslot4 = ~bplaceo2; ~rdo4 = ~si4.value;});
4558 if(~si4.value == "f2", {~rslot4 = ~bplacef2; ~rdo4 = ~si4.value;});
4559 if(~si4.value == "s2", {~rslot4 = ~bplaces2; ~rdo4 = ~si4.value;});
4560 if(~si4.value == "o3", {~rslot4 = ~bplaceo3; ~rdo4 = ~si4.value;});
4561 if(~si4.value == "f3", {~rslot4 = ~bplacef3; ~rdo4 = ~si4.value;});
4562 if(~si4.value == "s3", {~rslot4 = ~bplaces3; ~rdo4 = ~si4.value;});
4563 if(~si4.value == "o4", {~rslot4 = ~bplaceo4; ~rdo4 = ~si4.value;});
4564 if(~si4.value == "f4", {~rslot4 = ~bplacef4; ~rdo4 = ~si4.value;});
4565 if(~si4.value == "s4", {~rslot4 = ~bplaces4; ~rdo4 = ~si4.value;});
4566 if(~si4.value == "o5", {~rslot4 = ~bplaceo5; ~rdo4 = ~si4.value;});
4567 if(~si4.value == "f5", {~rslot4 = ~bplacef5; ~rdo4 = ~si4.value;});
4568 if(~si4.value == "s5", {~rslot4 = ~bplaces5; ~rdo4 = ~si4.value;});
4569 if(~si4.value == "o6", {~rslot4 = ~bplaceo6; ~rdo4 = ~si4.value;});
4570 if(~si4.value == "f6", {~rslot4 = ~bplacef6; ~rdo4 = ~si4.value;});
4571 if(~si4.value == "s6", {~rslot4 = ~bplaces6; ~rdo4 = ~si4.value;});
4572 if(~si4.value == "o7", {~rslot4 = ~bplaceo7; ~rdo4 = ~si4.value;});
4573 if(~si4.value == "f7", {~rslot4 = ~bplacef7; ~rdo4 = ~si4.value;});
4574 if(~si4.value == "s7", {~rslot4 = ~bplaces7; ~rdo4 = ~si4.value;});
4575 if(~si4.value == "o8", {~rslot4 = ~bplaceo8; ~rdo4 = ~si4.value;});
4576 if(~si4.value == "f8", {~rslot4 = ~bplacef8; ~rdo4 = ~si4.value;});
4577 if(~si4.value == "s8", {~rslot4 = ~bplaces8; ~rdo4 = ~si4.value;});
4580 if(~si5.value == "o1", {~rslot5 = ~bplaceo1; ~rdo5 = ~si5.value;});
4581 if(~si5.value == "f1", {~rslot5 = ~bplacef1; ~rdo5 = ~si5.value;});
4582 if(~si5.value == "s1", {~rslot5 = ~bplaces1; ~rdo5 = ~si5.value;});
4583 if(~si5.value == "o2", {~rslot5 = ~bplaceo2; ~rdo5 = ~si5.value;});
4584 if(~si5.value == "f2", {~rslot5 = ~bplacef2; ~rdo5 = ~si5.value;});
4585 if(~si5.value == "s2", {~rslot5 = ~bplaces2; ~rdo5 = ~si5.value;});
4586 if(~si5.value == "o3", {~rslot5 = ~bplaceo3; ~rdo5 = ~si5.value;});
4587 if(~si5.value == "f3", {~rslot5 = ~bplacef3; ~rdo5 = ~si5.value;});
4588 if(~si5.value == "s3", {~rslot5 = ~bplaces3; ~rdo5 = ~si5.value;});
4589 if(~si5.value == "o4", {~rslot5 = ~bplaceo4; ~rdo5 = ~si5.value;});
4590 if(~si5.value == "f4", {~rslot5 = ~bplacef4; ~rdo5 = ~si5.value;});
4591 if(~si5.value == "s4", {~rslot5 = ~bplaces4; ~rdo5 = ~si5.value;});
4592 if(~si5.value == "o5", {~rslot5 = ~bplaceo5; ~rdo5 = ~si5.value;});
4593 if(~si5.value == "f5", {~rslot5 = ~bplacef5; ~rdo5 = ~si5.value;});
4594 if(~si5.value == "s5", {~rslot5 = ~bplaces5; ~rdo5 = ~si5.value;});
4595 if(~si5.value == "o6", {~rslot5 = ~bplaceo6; ~rdo5 = ~si5.value;});
4596 if(~si5.value == "f6", {~rslot5 = ~bplacef6; ~rdo5 = ~si5.value;});
4597 if(~si5.value == "s6", {~rslot5 = ~bplaces6; ~rdo5 = ~si5.value;});
4598 if(~si5.value == "o7", {~rslot5 = ~bplaceo7; ~rdo5 = ~si5.value;});
4599 if(~si5.value == "f7", {~rslot5 = ~bplacef7; ~rdo5 = ~si5.value;});
4600 if(~si5.value == "s7", {~rslot5 = ~bplaces7; ~rdo5 = ~si5.value;});
4601 if(~si5.value == "o8", {~rslot5 = ~bplaceo8; ~rdo5 = ~si5.value;});
4602 if(~si5.value == "f8", {~rslot5 = ~bplacef8; ~rdo5 = ~si5.value;});
4603 if(~si5.value == "s8", {~rslot5 = ~bplaces8; ~rdo5 = ~si5.value;});
4606 if(~si6.value == "o1", {~rslot6 = ~bplaceo1; ~rdo6 = ~si6.value;});
4607 if(~si6.value == "f1", {~rslot6 = ~bplacef1; ~rdo6 = ~si6.value;});
4608 if(~si6.value == "s1", {~rslot6 = ~bplaces1; ~rdo6 = ~si6.value;});
4609 if(~si6.value == "o2", {~rslot6 = ~bplaceo2; ~rdo6 = ~si6.value;});
4610 if(~si6.value == "f2", {~rslot6 = ~bplacef2; ~rdo6 = ~si6.value;});
4611 if(~si6.value == "s2", {~rslot6 = ~bplaces2; ~rdo6 = ~si6.value;});
4612 if(~si6.value == "o3", {~rslot6 = ~bplaceo3; ~rdo6 = ~si6.value;});
4613 if(~si6.value == "f3", {~rslot6 = ~bplacef3; ~rdo6 = ~si6.value;});
4614 if(~si6.value == "s3", {~rslot6 = ~bplaces3; ~rdo6 = ~si6.value;});
4615 if(~si6.value == "o4", {~rslot6 = ~bplaceo4; ~rdo6 = ~si6.value;});
4616 if(~si6.value == "f4", {~rslot6 = ~bplacef4; ~rdo6 = ~si6.value;});
4617 if(~si6.value == "s4", {~rslot6 = ~bplaces4; ~rdo6 = ~si6.value;});
4618 if(~si6.value == "o5", {~rslot6 = ~bplaceo5; ~rdo6 = ~si6.value;});
4619 if(~si6.value == "f5", {~rslot6 = ~bplacef5; ~rdo6 = ~si6.value;});
4620 if(~si6.value == "s5", {~rslot6 = ~bplaces5; ~rdo6 = ~si6.value;});
4621 if(~si6.value == "o6", {~rslot6 = ~bplaceo6; ~rdo6 = ~si6.value;});
4622 if(~si6.value == "f6", {~rslot6 = ~bplacef6; ~rdo6 = ~si6.value;});
4623 if(~si6.value == "s6", {~rslot6 = ~bplaces6; ~rdo6 = ~si6.value;});
4624 if(~si6.value == "o7", {~rslot6 = ~bplaceo7; ~rdo6 = ~si6.value;});
4625 if(~si6.value == "f7", {~rslot6 = ~bplacef7; ~rdo6 = ~si6.value;});
4626 if(~si6.value == "s7", {~rslot6 = ~bplaces7; ~rdo6 = ~si6.value;});
4627 if(~si6.value == "o8", {~rslot6 = ~bplaceo8; ~rdo6 = ~si6.value;});
4628 if(~si6.value == "f8", {~rslot6 = ~bplacef8; ~rdo6 = ~si6.value;});
4629 if(~si6.value == "s8", {~rslot6 = ~bplaces8; ~rdo6 = ~si6.value;});
4632 if(~si7.value == "o1", {~rslot7 = ~bplaceo1; ~rdo7 = ~si7.value;});
4633 if(~si7.value == "f1", {~rslot7 = ~bplacef1; ~rdo7 = ~si7.value;});
4634 if(~si7.value == "s1", {~rslot7 = ~bplaces1; ~rdo7 = ~si7.value;});
4635 if(~si7.value == "o2", {~rslot7 = ~bplaceo2; ~rdo7 = ~si7.value;});
4636 if(~si7.value == "f2", {~rslot7 = ~bplacef2; ~rdo7 = ~si7.value;});
4637 if(~si7.value == "s2", {~rslot7 = ~bplaces2; ~rdo7 = ~si7.value;});
4638 if(~si7.value == "o3", {~rslot7 = ~bplaceo3; ~rdo7 = ~si7.value;});
4639 if(~si7.value == "f3", {~rslot7 = ~bplacef3; ~rdo7 = ~si7.value;});
4640 if(~si7.value == "s3", {~rslot7 = ~bplaces3; ~rdo7 = ~si7.value;});
4641 if(~si7.value == "o4", {~rslot7 = ~bplaceo4; ~rdo7 = ~si7.value;});
4642 if(~si7.value == "f4", {~rslot7 = ~bplacef4; ~rdo7 = ~si7.value;});
4643 if(~si7.value == "s4", {~rslot7 = ~bplaces4; ~rdo7 = ~si7.value;});
4644 if(~si7.value == "o5", {~rslot7 = ~bplaceo5; ~rdo7 = ~si7.value;});
4645 if(~si7.value == "f5", {~rslot7 = ~bplacef5; ~rdo7 = ~si7.value;});
4646 if(~si7.value == "s5", {~rslot7 = ~bplaces5; ~rdo7 = ~si7.value;});
4647 if(~si7.value == "o6", {~rslot7 = ~bplaceo6; ~rdo7 = ~si7.value;});
4648 if(~si7.value == "f6", {~rslot7 = ~bplacef6; ~rdo7 = ~si7.value;});
4649 if(~si7.value == "s6", {~rslot7 = ~bplaces6; ~rdo7 = ~si7.value;});
4650 if(~si7.value == "o7", {~rslot7 = ~bplaceo7; ~rdo7 = ~si7.value;});
4651 if(~si7.value == "f7", {~rslot7 = ~bplacef7; ~rdo7 = ~si7.value;});
4652 if(~si7.value == "s7", {~rslot7 = ~bplaces7; ~rdo7 = ~si7.value;});
4653 if(~si7.value == "o8", {~rslot7 = ~bplaceo8; ~rdo7 = ~si7.value;});
4654 if(~si7.value == "f8", {~rslot7 = ~bplacef8; ~rdo7 = ~si7.value;});
4655 if(~si7.value == "s8", {~rslot7 = ~bplaces8; ~rdo7 = ~si7.value;});
4658 if(~si8.value == "o1", {~rslot8 = ~bplaceo1; ~rdo8 = ~si8.value;});
4659 if(~si8.value == "f1", {~rslot8 = ~bplacef1; ~rdo8 = ~si8.value;});
4660 if(~si8.value == "s1", {~rslot8 = ~bplaces1; ~rdo8 = ~si8.value;});
4661 if(~si8.value == "o2", {~rslot8 = ~bplaceo2; ~rdo8 = ~si8.value;});
4662 if(~si8.value == "f2", {~rslot8 = ~bplacef2; ~rdo8 = ~si8.value;});
4663 if(~si8.value == "s2", {~rslot8 = ~bplaces2; ~rdo8 = ~si8.value;});
4664 if(~si8.value == "o3", {~rslot8 = ~bplaceo3; ~rdo8 = ~si8.value;});
4665 if(~si8.value == "f3", {~rslot8 = ~bplacef3; ~rdo8 = ~si8.value;});
4666 if(~si8.value == "s3", {~rslot8 = ~bplaces3; ~rdo8 = ~si8.value;});
4667 if(~si8.value == "o4", {~rslot8 = ~bplaceo4; ~rdo8 = ~si8.value;});
4668 if(~si8.value == "f4", {~rslot8 = ~bplacef4; ~rdo8 = ~si8.value;});
4669 if(~si8.value == "s4", {~rslot8 = ~bplaces4; ~rdo8 = ~si8.value;});
4670 if(~si8.value == "o5", {~rslot8 = ~bplaceo5; ~rdo8 = ~si8.value;});
4671 if(~si8.value == "f5", {~rslot8 = ~bplacef5; ~rdo8 = ~si8.value;});
4672 if(~si8.value == "s5", {~rslot8 = ~bplaces5; ~rdo8 = ~si8.value;});
4673 if(~si8.value == "o6", {~rslot8 = ~bplaceo6; ~rdo8 = ~si8.value;});
4674 if(~si8.value == "f6", {~rslot8 = ~bplacef6; ~rdo8 = ~si8.value;});
4675 if(~si8.value == "s6", {~rslot8 = ~bplaces6; ~rdo8 = ~si8.value;});
4676 if(~si8.value == "o7", {~rslot8 = ~bplaceo7; ~rdo8 = ~si8.value;});
4677 if(~si8.value == "f7", {~rslot8 = ~bplacef7; ~rdo8 = ~si8.value;});
4678 if(~si8.value == "s7", {~rslot8 = ~bplaces7; ~rdo8 = ~si8.value;});
4679 if(~si8.value == "o8", {~rslot8 = ~bplaceo8; ~rdo8 = ~si8.value;});
4680 if(~si8.value == "f8", {~rslot8 = ~bplacef8; ~rdo8 = ~si8.value;});
4681 if(~si8.value == "s8", {~rslot8 = ~bplaces8; ~rdo8 = ~si8.value;});
4685 //routine function button
4687 ~rviewbutton = Button.new(w,Rect(Window.screenBounds.width-20-20,~bpt+69+5-(20/~gm),20,20/1.6180339887499)).states_([["r",Color.white,Color.black],["r",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
4689 if(button.value == 1, {
4691 arg leftdo = 0 , leftdobox = 52, lefttime = leftdobox+widthbox+6, lefttimebox = lefttime+57, top = 0,width=52, height = 16, widthbox=52, heightbox = 16, inc=0, lw = 0, uw = 0, numw = 40;
4692 var tall, stall, iall, siall, st1, st2, st3, st4, st5, st6, st7, st8, t1,t2,t3,t4,t5,t6,t7,t8,i1,i2,i3,i4,i5,i6,i7,i8;
4693 ~rview = View(w, Rect(Window.screenBounds.width-(340+46),Window.screenBounds.height-(340+46/1.6180339887499)-110,340+46,340+46/1.6180339887499)).front;
4694 /*w.view.decorator=FlowLayout(w.view.bounds);
4695 w.view.decorator.gap=2@2;*/
4699 i1 = StaticText(~rview, Rect(leftdo , top=top, width, height)).background_(Color.black).string_("rslot1").stringColor_(Color.white);
4700 i2 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot2").stringColor_(Color.white);
4701 i3 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot3").stringColor_(Color.white);
4702 i4 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot4").stringColor_(Color.white);
4703 i5 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot5").stringColor_(Color.white);
4704 i6 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot6").stringColor_(Color.white);
4705 i7 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot7").stringColor_(Color.white);
4706 i8 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot8").stringColor_(Color.white);
4710 ~si1a=TextField(~rview, Rect(leftdobox , top=top, widthbox/2, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo1a);
4711 ~si1b=TextField(~rview, Rect(leftdobox+(widthbox/2) , top=top, widthbox/2, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo1b);
4712 ~si2=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo2);
4713 ~si3=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo3);
4714 ~si4=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo4);
4715 ~si5=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo5);
4716 ~si6=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo6);
4717 ~si7=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo7);
4718 ~si8=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo8);
4722 t1 = StaticText(~rview, Rect(lefttime , top=top, width, height)).background_(Color.black).string_("rtime1").stringColor_(Color.white);
4723 t2 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime2").stringColor_(Color.white);
4724 t3 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime3").stringColor_(Color.white);
4725 t4 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime4").stringColor_(Color.white);
4726 t5 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime5").stringColor_(Color.white);
4727 t6 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime6").stringColor_(Color.white);
4728 t7 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime7").stringColor_(Color.white);
4729 t8 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime8").stringColor_(Color.white);
4730 tall = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("all time").stringColor_(Color.white);
4735 st1=NumberBox(~rview, Rect(lefttimebox , top=top, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime1);
4736 st2=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime2);
4737 st3=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime3);
4738 st4=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime4);
4739 st5=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime5);
4740 st6=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime6);
4741 st7=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime7);
4742 st8=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime8);
4743 stall=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtimeall);
4745 ~si1a.action_({~si1aset.value});
4746 ~si1b.action_({~si1bset.value});
4747 ~si2.action_({~si2set.value});
4748 ~si3.action_({~si3set.value});
4749 ~si4.action_({~si4set.value});
4750 ~si5.action_({~si5set.value});
4751 ~si6.action_({~si6set.value});
4752 ~si7.action_({~si7set.value});
4753 ~si8.action_({~si8set.value});
4755 stall.action_({arg val;
4756 ~rtimeall = val.value;
4757 ~rtime1 = val.value;
4758 ~rtime2 = val.value;
4759 ~rtime3 = val.value;
4760 ~rtime4 = val.value;
4761 ~rtime5 = val.value;
4762 ~rtime6 = val.value;
4763 ~rtime7 = val.value;
4764 ~rtime8 = val.value;
4765 ~rview.close; ~rviewbutton.valueAction_(1);
4767 st1.action_({arg val; ~rtime1 = val.value;});
4768 st2.action_({arg val; ~rtime2 = val.value;});
4769 st3.action_({arg val; ~rtime3 = val.value;});
4770 st4.action_({arg val; ~rtime4 = val.value;});
4771 st5.action_({arg val; ~rtime5 = val.value;});
4772 st6.action_({arg val; ~rtime6 = val.value;});
4773 st7.action_({arg val; ~rtime7 = val.value;});
4774 st8.action_({arg val; ~rtime8 = val.value;});
4776 ~rview.background_(Color.black);
4780 ~routinebutton = Button.new(~rview,Rect(0, top+40, 40, 40/~gm)).states_([["loop",Color.white,Color.black],["stop",Color.white,Color.black]]).action_({arg button;
4782 if(button.value == 1, {
4786 AppClock.sched(0, {~metronomebutton.value = 1;});
4787 ~metronomeincr.wait;
4788 AppClock.sched(0, {~metronomebutton.value = 0;});
4789 ~metronomeincr.wait;
4795 {~rslot1a.valueAction_(0)}.defer;
4797 {~rslot2.valueAction_(0)}.defer;
4799 {~rslot3.valueAction_(0)}.defer;
4801 {~rslot4.valueAction_(0)}.defer;
4803 {~rslot5.valueAction_(0)}.defer;
4805 {~rslot6.valueAction_(0)}.defer;
4807 {~rslot7.valueAction_(0)}.defer;
4809 {~rslot8.valueAction_(0)}.defer;
4813 {~rslot1b.valueAction_(0)}.defer;
4815 {~rslot2.valueAction_(0)}.defer;
4817 {~rslot3.valueAction_(0)}.defer;
4819 {~rslot4.valueAction_(0)}.defer;
4821 {~rslot5.valueAction_(0)}.defer;
4823 {~rslot6.valueAction_(0)}.defer;
4825 {~rslot7.valueAction_(0)}.defer;
4827 {~rslot8.valueAction_(0)}.defer;
4830 }); SystemClock(~metronome.start); SystemClock(~loop.start); ~numsynths.stop;}, {
4832 SystemClock(~metronome.stop); SystemClock(~loop.stop); SystemClock(~loop.reset); ~synthfree.value; ~pauseroutinebutton.value = 0; ~numsynths.stop; ~numsynthsfunc.value;});
4835 ~pauseroutinebutton = Button.new(~rview,Rect(50, top+40, 40, 40/~gm)).states_([["pause",Color.white,Color.black],["loop",Color.white,Color.black]]).action_({arg button;
4837 if(button.value == 1, {SystemClock(~loop.pause); ~synthpause.value;}, {SystemClock(~loop.resume); ~synthflow.value;});
4840 ~closeroutinebutton = Button.new(~rview,Rect(220, top+40, 40, 40/~gm)).states_([["close",Color.white,Color.black]]).action_({arg button;
4842 ~rview.close; ~rviewbutton.value = 0;
4845 ~metronomebutton = Button.new(~rview,Rect(120, top+40, 40, 40/~gm)).states_([["",Color.white,Color.red],["",Color.white,Color.blue]]).action_({arg button;});
4849 if(~loop.isPlaying == true, {~routinebutton.value = 1;});
4855 //synth identifier function
4857 ~synthmonitor = StaticText(w, Rect(Window.screenBounds.width-14,~bpt+49,18,18/1.6180339887499)).background_(Color.black).stringColor_(Color.white);
4858 ~synthmonitor.string = if(~currentsynth == nil, {"nil".asString});
4860 ~synthmonitorfunc = {
4861 ~synthmonitor.close;
4862 ~synthmonitor = StaticText(w, Rect(Window.screenBounds.width-14,~bpt+49,18,18/1.6180339887499)).background_(Color.black).stringColor_(Color.white);
4863 ~synthmonitor.string = ~currentsynth.asString;
4864 ~synthmonitor.font = Font(size: 10);
4867 ~synthmonitorfunc.value;
4870 //cpu, # of ugens, # of synths, and current frequencies display
4872 ~cpumonitor = StaticText(w, Rect(Window.screenBounds.width-500,~bpt-200,500,90/1.6180339887499)).background_(Color.black).stringColor_(Color.white);
4877 ~cpumonitor = StaticText(w, Rect(20,~bpt-100,800,124/1.6180339887499)).background_(Color.black).stringColor_(Color.white);
4878 if(~settingsbutton.value == 1, {~cpumonitorbutton.valueAction = 0;});
4879 ~cpumonitor.string =
4880 "cpu: "+s.avgCPU.asString+"%"++"\n" ++
4881 "ugens: "+s.numUGens.asString++"\n" ++
4882 "synths: "+s.numSynths.asString++"\n" ++
4883 /*"f1 = "++~f1.round(0.01)++", f2 = "++~f2.round(0.01)++", f3 = "++~f3.round(0.01)++", f4 = "++~f4.round(0.01)++", f5 = "++~f5.round(0.01)++", f6 = "++~f6.round(0.01)++","++"f7 = "++~f7.round(0.01)++", f8 = "++~f8.round(0.01);
4884 */ ~f1.round(0.01)++", "++~f2.round(0.01)++", "++~f3.round(0.01)++", "++~f4.round(0.01)++", "++~f5.round(0.01)++", "++~f6.round(0.01)++", "++~f7.round(0.01)++", "++~f8.round(0.01);
4885 /*[ ~f1.round(0.01), ~f2.round(0.01), ~f3.round(0.01),~f4.round(0.01),~f5.round(0.01),~f6.round(0.01),~f7.round(0.01),~f8.round(0.01) ].asString;
4886 */ ~cpumonitor.font = Font(size: 14);
4889 ~cpumonitorroutine = Routine({
4892 ~cpumonitorfunc.value;
4898 ~cpumonitorbutton = Button.new(w,Rect(Window.screenBounds.width-20-20-20-20,~bpt+69+5,20,20/1.6180339887499)).states_([["cm",Color.white,Color.black],["cm",Color.white,Color.black]]).action_({arg button;
4900 if(button.value == 1, {
4901 if(~settingsbutton.value == 1, {~settingsbutton.valueAction = 0;});
4902 ~cpumonitorroutine.reset;
4903 ~cpumonitorroutine.play;
4904 }, {~cpumonitorroutine.stop; ~cpumonitor.close;});
4909 //information button
4911 info = Button.new(w,Rect(Window.screenBounds.width-20-20,~bpt+69+5,20,20/1.6180339887499)).states_([["i",Color.white,Color.black],["i",Color.white,Color.black]]).action_({arg button;
4913 if(button.value == 1, {
4914 ~hb = TextView(w, Rect(0,0, Window.screenBounds.width, Window.screenBounds.height-200)).background_(Color.black);
4916 "(scroll down to see more)"++"\n"++"\n"++"\n"++
4917 "ctrl/cmd-period: stop synth/free server"++"\n"++"\n"++"\n"++
4918 "GUI Buttons"++"\n"++"\n"++"\n"++
4919 "synth0/synth1: start/stop synth set"++"\n"++"\n"++
4920 "pause0/pause1: pause/unpause synth set"++"\n"++"\n"++
4921 "tsynth0/tsynth1: tsynth0 to allow timed synth set, then click on any o, f, or s button to time a progression. click on the stop timer button in the bottom right to stop the timer."++"\n"++"tsynth1 to dis-allow timed synth set"++"\n"++"\n"++
4922 "copy: copy frequency/note info"++"\n"++"\n"++
4923 "settings button:"++"\n"++"\n"++
4924 " KWS number: change number of kw(King Wen) sequences in a timewave half-cycle (or amplitude x2). press set to load."++"\n"++"\n"++
4925 " base(lowest) freq(hz): set the base(lowest) frequency of timewave cycle. default is "++~base_frequency.asString++". press set to load."++"\n"++"\n"++
4926 " synthdef type: psine1-psine3 (based on phi, with low-pass filter), hsine1-hsine3 (based on 19.47:360, with low-pass filter), psineuf1-psineuf3 (based on phi, without low-pass filter),"++"\n"++" hsineuf1-hsineuf3 (based on 19.47:360, without low-pass filter) - set synthdef type. press set to load."++"\n"++"\n"++
4927 " lp filter limit(hz): change the low-pass filter frequency limit. default is "++~default_low_pass_filter_freq_limit.asString++". press set to load."++"\n"++"\n"++
4928 " automate: setting for automated mid-timewave sequence events. press set to load."++"\n"++"\n"++
4929 " automate period: setting for determining when sendreply triggers for the automate function. 1 is in 1 full timewave cycle, 0.5 is in 1/2 timewave cycle, 1.5 is 1 1/2 cycles,"++"\n"++" 2 is in 2 cycles, etc. press set to load."++"\n"++"\n"++
4930 " volume: change volume, or more accurately amplitude. default is "++~vol_default.asString++". press set to load.""\n"++"\n"++
4931 "s1-s8: set/save note positions"++"\n"++"\n"++
4932 "g1-g8: groups of saved note positions"++"\n"++"\n"++
4933 "uc-u8: undo changes to set note positions. press set to load"++"\n"++"\n"++
4934 "rc, /rc: start recording/stop recording"++"\n"++"\n"++
4935 "prc: pause recording"++"\n"++"\n"++
4936 "o1-o8: play set/saved note positions by opening a new synth set"++"\n"++"\n"++
4937 "f1-f8: flow transition to set/saved note positions"++"\n"++"\n"++
4938 "s1-s8: slide transition to set/saved note positions"++"\n"++"\n"++
4939 "m/u: mute/unmute all"++"\n"++"\n"++
4940 "1-8: mute or unmute individual synth"++"\n"++"\n"++
4941 "cm: cpu percentage/number of ugens/number of synths display"++"\n"++"\n"++
4942 "rw: random western scale"++"\n"++"\n"++
4943 "re: random eastern scale"++"\n"++"\n"++
4944 "r: routine/loop function - rslot for synth set, rtime for time between transitions"++"\n"++"\n"++
4945 "eo: extra options - set frequencies, set slide time/increment"++"\n"++"\n"++
4946 "i: help"++"\n"++"\n"++
4947 "m: minimize window"++"\n"++"\n"++
4948 "c: close window"++"\n"++"\n"++"\n"++
4949 "Keyboard Functions (functionality will vary with device)"++"\n"++"\n"++"\n"++
4950 "s: start/stop synth set"++"\n"++"\n"++
4951 "space bar: pause/unpause synth set"++"\n"++"\n"++
4952 "ctrl-period/cmd-period: stop synth/free server"++"\n"++"\n"++
4953 "left/right arrow(or J and L): move down/up note"++"\n"++"\n"++
4954 "up/down arrow(or I and K): change synth for left/right arrow note function"++"\n"++"\n"++
4955 "#1-8 on keyboard: choose synth for left/right arrow note function"++"\n"++"\n"++
4956 "r: routine/loop function - rslot for synth set, rtime for time between transitions"++"\n"++"\n"++
4957 "m: mute/unmute all"++"\n"++"\n"++
4958 "c: copy function"++"\n"++"\n"++
4959 "t: timed synth function"++"\n"++"\n"++
4960 "esc: minimize window"
4963 ~hb.stringColor = Color.white;
4969 //random notes button 1
4971 ~randombutton1 = Button.new(w,Rect(Window.screenBounds.width-20-20-20-20,~bpt+69+5-(20/~gm),20,20/1.6180339887499)).states_([["rw",Color.white,Color.black]]).action_({arg button;
4973 if((~l1a.isRunning == true) or: (~l1a1.isRunning == true), {
4974 8.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut(~freqmap.at(rrand(36, 91));)});
4980 //random notes button 2
4982 ~randombutton2 = Button.new(w,Rect(Window.screenBounds.width-20-20-20,~bpt+69+5-(20/~gm),20,20/1.6180339887499)).states_([["re",Color.white,Color.black]]).action_({arg button;
4984 if((~l1a.isRunning == true) or: (~l1a1.isRunning == true), {
4985 8.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut((~freqmap.at(127)/8).rand;)});
4991 //setgroup buttons, sg1-sg8
4993 ~setgroup1 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)-(20*4),~bpt+69+5,20,20/1.6180339887499)).states_([["g1",Color.white,Color.black],["s1",Color.green,Color.black]]).action_({arg button;
4995 if(button.value == 1, {
4996 12.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([~sg1a1,~sg1a2,~sg1a3,~sg1a4,~sg1a5,~sg1a6,~sg1a7,~sg1a8,~sg1a9,~sg1a10,~sg1a11,~sg1a12].at(x-1))});
4997 12.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([~sg1b1,~sg1b2,~sg1b3,~sg1b4,~sg1b5,~sg1b6,~sg1b7,~sg1b8,~sg1b9,~sg1b10,~sg1b11,~sg1b12].at(x-1))});
4998 12.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([~sg1c1,~sg1c2,~sg1c3,~sg1c4,~sg1c5,~sg1c6,~sg1c7,~sg1c8,~sg1c9,~sg1c10,~sg1c11,~sg1c12].at(x-1))});
4999 12.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([~sg1d1,~sg1d2,~sg1d3,~sg1d4,~sg1d5,~sg1d6,~sg1d7,~sg1d8,~sg1d9,~sg1d10,~sg1d11,~sg1d12].at(x-1))});
5000 12.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([~sg1e1,~sg1e2,~sg1e3,~sg1e4,~sg1e5,~sg1e6,~sg1e7,~sg1e8,~sg1e9,~sg1e10,~sg1e11,~sg1e12].at(x-1))});
5001 12.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([~sg1f1,~sg1f2,~sg1f3,~sg1f4,~sg1f5,~sg1f6,~sg1f7,~sg1f8,~sg1f9,~sg1f10,~sg1f11,~sg1f12].at(x-1))});
5002 12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([~sg1g1,~sg1g2,~sg1g3,~sg1g4,~sg1g5,~sg1g6,~sg1g7,~sg1g8,~sg1g9,~sg1g10,~sg1g11,~sg1g12].at(x-1))});
5003 12.do(x = 0; {("fp"++(x=x+1)++"h").asSymbol.envirPut([~sg1h1,~sg1h2,~sg1h3,~sg1h4,~sg1h5,~sg1h6,~sg1h7,~sg1h8,~sg1h9,~sg1h10,~sg1h11,~sg1h12].at(x-1))});
5005 ~setgroup2.value = 0;
5006 ~setgroup3.value = 0;
5007 ~setgroup4.value = 0;
5008 ~setgroup5.value = 0;
5009 ~setgroup6.value = 0;
5010 ~setgroup7.value = 0;
5011 ~setgroup8.value = 0;
5016 ~setgroup2 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)-(20*3),~bpt+69+5,20,20/1.6180339887499)).states_([["g2",Color.white,Color.black],["s2",Color.green,Color.black]]).action_({arg button;
5018 if(button.value == 1, {
5019 12.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([~sg2a1,~sg2a2,~sg2a3,~sg2a4,~sg2a5,~sg2a6,~sg2a7,~sg2a8,~sg2a9,~sg2a10,~sg2a11,~sg2a12].at(x-1))});
5020 12.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([~sg2b1,~sg2b2,~sg2b3,~sg2b4,~sg2b5,~sg2b6,~sg2b7,~sg2b8,~sg2b9,~sg2b10,~sg2b11,~sg2b12].at(x-1))});
5021 12.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([~sg2c1,~sg2c2,~sg2c3,~sg2c4,~sg2c5,~sg2c6,~sg2c7,~sg2c8,~sg2c9,~sg2c10,~sg2c11,~sg2c12].at(x-1))});
5022 12.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([~sg2d1,~sg2d2,~sg2d3,~sg2d4,~sg2d5,~sg2d6,~sg2d7,~sg2d8,~sg2d9,~sg2d10,~sg2d11,~sg2d12].at(x-1))});
5023 12.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([~sg2e1,~sg2e2,~sg2e3,~sg2e4,~sg2e5,~sg2e6,~sg2e7,~sg2e8,~sg2e9,~sg2e10,~sg2e11,~sg2e12].at(x-1))});
5024 12.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([~sg2f1,~sg2f2,~sg2f3,~sg2f4,~sg2f5,~sg2f6,~sg2f7,~sg2f8,~sg2f9,~sg2f10,~sg2f11,~sg2f12].at(x-1))});
5025 12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([~sg2g1,~sg2g2,~sg2g3,~sg2g4,~sg2g5,~sg2g6,~sg2g7,~sg2g8,~sg2g9,~sg2g10,~sg2g11,~sg2g12].at(x-1))});
5026 12.do(x = 0; {("fp"++(x=x+1)++"h").asSymbol.envirPut([~sg2h1,~sg2h2,~sg2h3,~sg2h4,~sg2h5,~sg2h6,~sg2h7,~sg2h8,~sg2h9,~sg2h10,~sg2h11,~sg2h12].at(x-1))});
5028 ~setgroup1.value = 0;
5029 ~setgroup3.value = 0;
5030 ~setgroup4.value = 0;
5031 ~setgroup5.value = 0;
5032 ~setgroup6.value = 0;
5033 ~setgroup7.value = 0;
5034 ~setgroup8.value = 0;
5039 ~setgroup3 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)-(20*2),~bpt+69+5,20,20/1.6180339887499)).states_([["g3",Color.white,Color.black],["s3",Color.green,Color.black]]).action_({arg button;
5041 if(button.value == 1, {
5042 12.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([~sg3a1,~sg3a2,~sg3a3,~sg3a4,~sg3a5,~sg3a6,~sg3a7,~sg3a8,~sg3a9,~sg3a10,~sg3a11,~sg3a12].at(x-1))});
5043 12.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([~sg3b1,~sg3b2,~sg3b3,~sg3b4,~sg3b5,~sg3b6,~sg3b7,~sg3b8,~sg3b9,~sg3b10,~sg3b11,~sg3b12].at(x-1))});
5044 12.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([~sg3c1,~sg3c2,~sg3c3,~sg3c4,~sg3c5,~sg3c6,~sg3c7,~sg3c8,~sg3c9,~sg3c10,~sg3c11,~sg3c12].at(x-1))});
5045 12.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([~sg3d1,~sg3d2,~sg3d3,~sg3d4,~sg3d5,~sg3d6,~sg3d7,~sg3d8,~sg3d9,~sg3d10,~sg3d11,~sg3d12].at(x-1))});
5046 12.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([~sg3e1,~sg3e2,~sg3e3,~sg3e4,~sg3e5,~sg3e6,~sg3e7,~sg3e8,~sg3e9,~sg3e10,~sg3e11,~sg3e12].at(x-1))});
5047 12.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([~sg3f1,~sg3f2,~sg3f3,~sg3f4,~sg3f5,~sg3f6,~sg3f7,~sg3f8,~sg3f9,~sg3f10,~sg3f11,~sg3f12].at(x-1))});
5048 12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([~sg3g1,~sg3g2,~sg3g3,~sg3g4,~sg3g5,~sg3g6,~sg3g7,~sg3g8,~sg3g9,~sg3g10,~sg3g11,~sg3g12].at(x-1))});
5049 12.do(x = 0; {("fp"++(x=x+1)++"h").asSymbol.envirPut([~sg3h1,~sg3h2,~sg3h3,~sg3h4,~sg3h5,~sg3h6,~sg3h7,~sg3h8,~sg3h9,~sg3h10,~sg3h11,~sg3h12].at(x-1))});
5051 ~setgroup1.value = 0;
5052 ~setgroup2.value = 0;
5053 ~setgroup4.value = 0;
5054 ~setgroup5.value = 0;
5055 ~setgroup6.value = 0;
5056 ~setgroup7.value = 0;
5057 ~setgroup8.value = 0;
5062 ~setgroup4 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)-(20*1),~bpt+69+5,20,20/1.6180339887499)).states_([["g4",Color.white,Color.black],["s4",Color.green,Color.black]]).action_({arg button;
5064 if(button.value == 1, {
5065 12.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([~sg4a1,~sg4a2,~sg4a3,~sg4a4,~sg4a5,~sg4a6,~sg4a7,~sg4a8,~sg4a9,~sg4a10,~sg4a11,~sg4a12].at(x-1))});
5066 12.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([~sg4b1,~sg4b2,~sg4b3,~sg4b4,~sg4b5,~sg4b6,~sg4b7,~sg4b8,~sg4b9,~sg4b10,~sg4b11,~sg4b12].at(x-1))});
5067 12.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([~sg4c1,~sg4c2,~sg4c3,~sg4c4,~sg4c5,~sg4c6,~sg4c7,~sg4c8,~sg4c9,~sg4c10,~sg4c11,~sg4c12].at(x-1))});
5068 12.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([~sg4d1,~sg4d2,~sg4d3,~sg4d4,~sg4d5,~sg4d6,~sg4d7,~sg4d8,~sg4d9,~sg4d10,~sg4d11,~sg4d12].at(x-1))});
5069 12.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([~sg4e1,~sg4e2,~sg4e3,~sg4e4,~sg4e5,~sg4e6,~sg4e7,~sg4e8,~sg4e9,~sg4e10,~sg4e11,~sg4e12].at(x-1))});
5070 12.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([~sg4f1,~sg4f2,~sg4f3,~sg4f4,~sg4f5,~sg4f6,~sg4f7,~sg4f8,~sg4f9,~sg4f10,~sg4f11,~sg4f12].at(x-1))});
5071 12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([~sg4g1,~sg4g2,~sg4g3,~sg4g4,~sg4g5,~sg4g6,~sg4g7,~sg4g8,~sg4g9,~sg4g10,~sg4g11,~sg4g12].at(x-1))});
5072 12.do(x = 0; {("fp"++(x=x+1)++"h").asSymbol.envirPut([~sg4h1,~sg4h2,~sg4h3,~sg4h4,~sg4h5,~sg4h6,~sg4h7,~sg4h8,~sg4h9,~sg4h10,~sg4h11,~sg4h12].at(x-1))});
5074 ~setgroup1.value = 0;
5075 ~setgroup2.value = 0;
5076 ~setgroup3.value = 0;
5077 ~setgroup5.value = 0;
5078 ~setgroup6.value = 0;
5079 ~setgroup7.value = 0;
5080 ~setgroup8.value = 0;
5085 ~setgroup5 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)+(0*1),~bpt+69+5,20,20/1.6180339887499)).states_([["g5",Color.white,Color.black],["s5",Color.green,Color.black]]).action_({arg button;
5087 if(button.value == 1, {
5088 12.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([~sg5a1,~sg5a2,~sg5a3,~sg5a4,~sg5a5,~sg5a6,~sg5a7,~sg5a8,~sg5a9,~sg5a10,~sg5a11,~sg5a12].at(x-1))});
5089 12.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([~sg5b1,~sg5b2,~sg5b3,~sg5b4,~sg5b5,~sg5b6,~sg5b7,~sg5b8,~sg5b9,~sg5b10,~sg5b11,~sg5b12].at(x-1))});
5090 12.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([~sg5c1,~sg5c2,~sg5c3,~sg5c4,~sg5c5,~sg5c6,~sg5c7,~sg5c8,~sg5c9,~sg5c10,~sg5c11,~sg5c12].at(x-1))});
5091 12.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([~sg5d1,~sg5d2,~sg5d3,~sg5d4,~sg5d5,~sg5d6,~sg5d7,~sg5d8,~sg5d9,~sg5d10,~sg5d11,~sg5d12].at(x-1))});
5092 12.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([~sg5e1,~sg5e2,~sg5e3,~sg5e4,~sg5e5,~sg5e6,~sg5e7,~sg5e8,~sg5e9,~sg5e10,~sg5e11,~sg5e12].at(x-1))});
5093 12.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([~sg5f1,~sg5f2,~sg5f3,~sg5f4,~sg5f5,~sg5f6,~sg5f7,~sg5f8,~sg5f9,~sg5f10,~sg5f11,~sg5f12].at(x-1))});
5094 12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([~sg5g1,~sg5g2,~sg5g3,~sg5g4,~sg5g5,~sg5g6,~sg5g7,~sg5g8,~sg5g9,~sg5g10,~sg5g11,~sg5g12].at(x-1))});
5095 12.do(x = 0; {("fp"++(x=x+1)++"h").asSymbol.envirPut([~sg5h1,~sg5h2,~sg5h3,~sg5h4,~sg5h5,~sg5h6,~sg5h7,~sg5h8,~sg5h9,~sg5h10,~sg5h11,~sg5h12].at(x-1))});
5097 ~setgroup1.value = 0;
5098 ~setgroup2.value = 0;
5099 ~setgroup3.value = 0;
5100 ~setgroup4.value = 0;
5101 ~setgroup6.value = 0;
5102 ~setgroup7.value = 0;
5103 ~setgroup8.value = 0;
5108 ~setgroup6 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)+(20*1),~bpt+69+5,20,20/1.6180339887499)).states_([["g6",Color.white,Color.black],["s6",Color.green,Color.black]]).action_({arg button;
5110 if(button.value == 1, {
5111 12.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([~sg6a1,~sg6a2,~sg6a3,~sg6a4,~sg6a5,~sg6a6,~sg6a7,~sg6a8,~sg6a9,~sg6a10,~sg6a11,~sg6a12].at(x-1))});
5112 12.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([~sg6b1,~sg6b2,~sg6b3,~sg6b4,~sg6b5,~sg6b6,~sg6b7,~sg6b8,~sg6b9,~sg6b10,~sg6b11,~sg6b12].at(x-1))});
5113 12.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([~sg6c1,~sg6c2,~sg6c3,~sg6c4,~sg6c5,~sg6c6,~sg6c7,~sg6c8,~sg6c9,~sg6c10,~sg6c11,~sg6c12].at(x-1))});
5114 12.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([~sg6d1,~sg6d2,~sg6d3,~sg6d4,~sg6d5,~sg6d6,~sg6d7,~sg6d8,~sg6d9,~sg6d10,~sg6d11,~sg6d12].at(x-1))});
5115 12.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([~sg6e1,~sg6e2,~sg6e3,~sg6e4,~sg6e5,~sg6e6,~sg6e7,~sg6e8,~sg6e9,~sg6e10,~sg6e11,~sg6e12].at(x-1))});
5116 12.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([~sg6f1,~sg6f2,~sg6f3,~sg6f4,~sg6f5,~sg6f6,~sg6f7,~sg6f8,~sg6f9,~sg6f10,~sg6f11,~sg6f12].at(x-1))});
5117 12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([~sg6g1,~sg6g2,~sg6g3,~sg6g4,~sg6g5,~sg6g6,~sg6g7,~sg6g8,~sg6g9,~sg6g10,~sg6g11,~sg6g12].at(x-1))});
5118 12.do(x = 0; {("fp"++(x=x+1)++"h").asSymbol.envirPut([~sg6h1,~sg6h2,~sg6h3,~sg6h4,~sg6h5,~sg6h6,~sg6h7,~sg6h8,~sg6h9,~sg6h10,~sg6h11,~sg6h12].at(x-1))});
5120 ~setgroup1.value = 0;
5121 ~setgroup2.value = 0;
5122 ~setgroup3.value = 0;
5123 ~setgroup4.value = 0;
5124 ~setgroup5.value = 0;
5125 ~setgroup7.value = 0;
5126 ~setgroup8.value = 0;
5131 ~setgroup7 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)+(20*2),~bpt+69+5,20,20/1.6180339887499)).states_([["g7",Color.white,Color.black],["s7",Color.green,Color.black]]).action_({arg button;
5133 if(button.value == 1, {
5134 12.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([~sg7a1,~sg7a2,~sg7a3,~sg7a4,~sg7a5,~sg7a6,~sg7a7,~sg7a8,~sg7a9,~sg7a10,~sg7a11,~sg7a12].at(x-1))});
5135 12.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([~sg7b1,~sg7b2,~sg7b3,~sg7b4,~sg7b5,~sg7b6,~sg7b7,~sg7b8,~sg7b9,~sg7b10,~sg7b11,~sg7b12].at(x-1))});
5136 12.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([~sg7c1,~sg7c2,~sg7c3,~sg7c4,~sg7c5,~sg7c6,~sg7c7,~sg7c8,~sg7c9,~sg7c10,~sg7c11,~sg7c12].at(x-1))});
5137 12.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([~sg7d1,~sg7d2,~sg7d3,~sg7d4,~sg7d5,~sg7d6,~sg7d7,~sg7d8,~sg7d9,~sg7d10,~sg7d11,~sg7d12].at(x-1))});
5138 12.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([~sg7e1,~sg7e2,~sg7e3,~sg7e4,~sg7e5,~sg7e6,~sg7e7,~sg7e8,~sg7e9,~sg7e10,~sg7e11,~sg7e12].at(x-1))});
5139 12.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([~sg7f1,~sg7f2,~sg7f3,~sg7f4,~sg7f5,~sg7f6,~sg7f7,~sg7f8,~sg7f9,~sg7f10,~sg7f11,~sg7f12].at(x-1))});
5140 12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([~sg7g1,~sg7g2,~sg7g3,~sg7g4,~sg7g5,~sg7g6,~sg7g7,~sg7g8,~sg7g9,~sg7g10,~sg7g11,~sg7g12].at(x-1))});
5141 12.do(x = 0; {("fp"++(x=x+1)++"h").asSymbol.envirPut([~sg7h1,~sg7h2,~sg7h3,~sg7h4,~sg7h5,~sg7h6,~sg7h7,~sg7h8,~sg7h9,~sg7h10,~sg7h11,~sg7h12].at(x-1))});
5143 ~setgroup1.value = 0;
5144 ~setgroup2.value = 0;
5145 ~setgroup3.value = 0;
5146 ~setgroup4.value = 0;
5147 ~setgroup5.value = 0;
5148 ~setgroup6.value = 0;
5149 ~setgroup8.value = 0;
5154 ~setgroup8 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)+(20*3),~bpt+69+5,20,20/1.6180339887499)).states_([["g8",Color.white,Color.black],["s8",Color.green,Color.black]]).action_({arg button;
5156 if(button.value == 1, {
5157 12.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([~sg8a1,~sg8a2,~sg8a3,~sg8a4,~sg8a5,~sg8a6,~sg8a7,~sg8a8,~sg8a9,~sg8a10,~sg8a11,~sg8a12].at(x-1))});
5158 12.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([~sg8b1,~sg8b2,~sg8b3,~sg8b4,~sg8b5,~sg8b6,~sg8b7,~sg8b8,~sg8b9,~sg8b10,~sg8b11,~sg8b12].at(x-1))});
5159 12.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([~sg8c1,~sg8c2,~sg8c3,~sg8c4,~sg8c5,~sg8c6,~sg8c7,~sg8c8,~sg8c9,~sg8c10,~sg8c11,~sg8c12].at(x-1))});
5160 12.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([~sg8d1,~sg8d2,~sg8d3,~sg8d4,~sg8d5,~sg8d6,~sg8d7,~sg8d8,~sg8d9,~sg8d10,~sg8d11,~sg8d12].at(x-1))});
5161 12.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([~sg8e1,~sg8e2,~sg8e3,~sg8e4,~sg8e5,~sg8e6,~sg8e7,~sg8e8,~sg8e9,~sg8e10,~sg8e11,~sg8e12].at(x-1))});
5162 12.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([~sg8f1,~sg8f2,~sg8f3,~sg8f4,~sg8f5,~sg8f6,~sg8f7,~sg8f8,~sg8f9,~sg8f10,~sg8f11,~sg8f12].at(x-1))});
5163 12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([~sg8g1,~sg8g2,~sg8g3,~sg8g4,~sg8g5,~sg8g6,~sg8g7,~sg8g8,~sg8g9,~sg8g10,~sg8g11,~sg8g12].at(x-1))});
5164 12.do(x = 0; {("fp"++(x=x+1)++"h").asSymbol.envirPut([~sg8h1,~sg8h2,~sg8h3,~sg8h4,~sg8h5,~sg8h6,~sg8h7,~sg8h8,~sg8h9,~sg8h10,~sg8h11,~sg8h12].at(x-1))});
5166 ~setgroup1.value = 0;
5167 ~setgroup2.value = 0;
5168 ~setgroup3.value = 0;
5169 ~setgroup4.value = 0;
5170 ~setgroup5.value = 0;
5171 ~setgroup6.value = 0;
5172 ~setgroup7.value = 0;
5179 //if setgroup values are nil
5181 if(~setgroupval == nil, {~setgroup1.value = 1;});
5182 if(~setgroupval == 1, {~setgroup1.value = 1;});
5183 if(~setgroupval == 2, {~setgroup2.value = 1;});
5184 if(~setgroupval == 3, {~setgroup3.value = 1;});
5185 if(~setgroupval == 4, {~setgroup4.value = 1;});
5186 if(~setgroupval == 5, {~setgroup5.value = 1;});
5187 if(~setgroupval == 6, {~setgroup6.value = 1;});
5188 if(~setgroupval == 7, {~setgroup7.value = 1;});
5189 if(~setgroupval == 8, {~setgroup8.value = 1;});
5192 //save chord notes buttons, s1-s8
5194 n1 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)-(60*2),Window.screenBounds.height-88,60,60/1.6180339887499)).states_([["s1",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(((button.value == 0) or: (button.value == 1)), {~r1=~fp1;~r2=~fp2;~r3=~fp3;~r4=~fp4;~r5=~fp5;~r6=~fp6;~r7=~fp7;~r8=~fp8;~r9=~fp9;~r10=~fp10;~r11=~fp11;~r12=~fp12; 12.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))}); "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1=~f1;~u2=~f2;~u3=~f3;~u4=~f4;~u5=~f5;~u6=~f6;~u7=~f7;~u8=~f8;~u9=~f9;~u10=~f10;~u11=~f11;~u12=~f12; ~si1aset.value;~si1bset.value;
5196 if(~setgroup1.value == 1, {12.do(x = 0; {("sg1a"++(x=x+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(x-1))});});
5197 if(~setgroup2.value == 1, {12.do(x = 0; {("sg2a"++(x=x+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(x-1))});});
5198 if(~setgroup3.value == 1, {12.do(x = 0; {("sg3a"++(x=x+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(x-1))});});
5199 if(~setgroup4.value == 1, {12.do(x = 0; {("sg4a"++(x=x+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(x-1))});});
5200 if(~setgroup5.value == 1, {12.do(x = 0; {("sg5a"++(x=x+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(x-1))});});
5201 if(~setgroup6.value == 1, {12.do(x = 0; {("sg6a"++(x=x+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(x-1))});});
5202 if(~setgroup7.value == 1, {12.do(x = 0; {("sg7a"++(x=x+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(x-1))});});
5203 if(~setgroup8.value == 1, {12.do(x = 0; {("sg8a"++(x=x+1)).asSymbol.envirPut([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12].at(x-1))});});
5205 n1.states_([["s1",Color.green,Color.black]]);
5206 n2.states_([["s2",Color.white,Color.black]]);
5207 n3.states_([["s3",Color.white,Color.black]]);
5208 n4.states_([["s4",Color.white,Color.black]]);
5209 n5.states_([["s5",Color.white,Color.black]]);
5210 n6.states_([["s6",Color.white,Color.black]]);
5211 n7.states_([["s7",Color.white,Color.black]]);
5212 n8.states_([["s8",Color.white,Color.black]]);
5215 n2 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)-(60*1),Window.screenBounds.height-88,60,60/1.6180339887499)).states_([["s2",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(((button.value == 0) or: (button.value == 1)), {~r1b=~fp1b;~r2b=~fp2b;~r3b=~fp3b;~r4b=~fp4b;~r5b=~fp5b;~r6b=~fp6b;~r7b=~fp7b;~r8b=~fp8b;~r9b=~fp9b;~r10b=~fp10b;~r11b=~fp11b;~r12b=~fp12b; 12.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))}); "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1b=~f1;~u2b=~f2;~u3b=~f3;~u4b=~f4;~u5b=~f5;~u6b=~f6;~u7b=~f7;~u8b=~f8;~u9b=~f9;~u10b=~f10;~u11b=~f11;~u12b=~f12; ~si2set.value;
5217 if(~setgroup1.value == 1, {12.do(x = 0; {("sg1b"++(x=x+1)).asSymbol.envirPut([~fp1b,~fp2b,~fp3b,~fp4b,~fp5b,~fp6b,~fp7b,~fp8b,~fp9b,~fp10b,~fp11b,~fp12b].at(x-1))});});
5218 if(~setgroup2.value == 1, {12.do(x = 0; {("sg2b"++(x=x+1)).asSymbol.envirPut([~fp1b,~fp2b,~fp3b,~fp4b,~fp5b,~fp6b,~fp7b,~fp8b,~fp9b,~fp10b,~fp11b,~fp12b].at(x-1))});});
5219 if(~setgroup3.value == 1, {12.do(x = 0; {("sg3b"++(x=x+1)).asSymbol.envirPut([~fp1b,~fp2b,~fp3b,~fp4b,~fp5b,~fp6b,~fp7b,~fp8b,~fp9b,~fp10b,~fp11b,~fp12b].at(x-1))});});
5220 if(~setgroup4.value == 1, {12.do(x = 0; {("sg4b"++(x=x+1)).asSymbol.envirPut([~fp1b,~fp2b,~fp3b,~fp4b,~fp5b,~fp6b,~fp7b,~fp8b,~fp9b,~fp10b,~fp11b,~fp12b].at(x-1))});});
5221 if(~setgroup5.value == 1, {12.do(x = 0; {("sg5b"++(x=x+1)).asSymbol.envirPut([~fp1b,~fp2b,~fp3b,~fp4b,~fp5b,~fp6b,~fp7b,~fp8b,~fp9b,~fp10b,~fp11b,~fp12b].at(x-1))});});
5222 if(~setgroup6.value == 1, {12.do(x = 0; {("sg6b"++(x=x+1)).asSymbol.envirPut([~fp1b,~fp2b,~fp3b,~fp4b,~fp5b,~fp6b,~fp7b,~fp8b,~fp9b,~fp10b,~fp11b,~fp12b].at(x-1))});});
5223 if(~setgroup7.value == 1, {12.do(x = 0; {("sg7b"++(x=x+1)).asSymbol.envirPut([~fp1b,~fp2b,~fp3b,~fp4b,~fp5b,~fp6b,~fp7b,~fp8b,~fp9b,~fp10b,~fp11b,~fp12b].at(x-1))});});
5224 if(~setgroup8.value == 1, {12.do(x = 0; {("sg8b"++(x=x+1)).asSymbol.envirPut([~fp1b,~fp2b,~fp3b,~fp4b,~fp5b,~fp6b,~fp7b,~fp8b,~fp9b,~fp10b,~fp11b,~fp12b].at(x-1))});});
5226 n1.states_([["s1",Color.white,Color.black]]);
5227 n2.states_([["s2",Color.green,Color.black]]);
5228 n3.states_([["s3",Color.white,Color.black]]);
5229 n4.states_([["s4",Color.white,Color.black]]);
5230 n5.states_([["s5",Color.white,Color.black]]);
5231 n6.states_([["s6",Color.white,Color.black]]);
5232 n7.states_([["s7",Color.white,Color.black]]);
5233 n8.states_([["s8",Color.white,Color.black]]);
5235 n3 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)+(0), Window.screenBounds.height-88,60,60/1.6180339887499)).states_([["s3",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(((button.value == 0) or: (button.value == 1)), {~r1c=~fp1c;~r2c=~fp2c;~r3c=~fp3c;~r4c=~fp4c;~r5c=~fp5c;~r6c=~fp6c;~r7c=~fp7c;~r8c=~fp8c;~r9c=~fp9c;~r10c=~fp10c;~r11c=~fp11c;~r12c=~fp12c; 12.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))}); "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1c=~f1;~u2c=~f2;~u3c=~f3;~u4c=~f4;~u5c=~f5;~u6c=~f6;~u7c=~f7;~u8c=~f8;~u9c=~f9;~u10c=~f10;~u11c=~f11;~u12c=~f12; ~si3set.value;
5237 if(~setgroup1.value == 1, {12.do(x = 0; {("sg1c"++(x=x+1)).asSymbol.envirPut([~fp1c,~fp2c,~fp3c,~fp4c,~fp5c,~fp6c,~fp7c,~fp8c,~fp9c,~fp10c,~fp11c,~fp12c].at(x-1))});});
5238 if(~setgroup2.value == 1, {12.do(x = 0; {("sg2c"++(x=x+1)).asSymbol.envirPut([~fp1c,~fp2c,~fp3c,~fp4c,~fp5c,~fp6c,~fp7c,~fp8c,~fp9c,~fp10c,~fp11c,~fp12c].at(x-1))});});
5239 if(~setgroup3.value == 1, {12.do(x = 0; {("sg3c"++(x=x+1)).asSymbol.envirPut([~fp1c,~fp2c,~fp3c,~fp4c,~fp5c,~fp6c,~fp7c,~fp8c,~fp9c,~fp10c,~fp11c,~fp12c].at(x-1))});});
5240 if(~setgroup4.value == 1, {12.do(x = 0; {("sg4c"++(x=x+1)).asSymbol.envirPut([~fp1c,~fp2c,~fp3c,~fp4c,~fp5c,~fp6c,~fp7c,~fp8c,~fp9c,~fp10c,~fp11c,~fp12c].at(x-1))});});
5241 if(~setgroup5.value == 1, {12.do(x = 0; {("sg5c"++(x=x+1)).asSymbol.envirPut([~fp1c,~fp2c,~fp3c,~fp4c,~fp5c,~fp6c,~fp7c,~fp8c,~fp9c,~fp10c,~fp11c,~fp12c].at(x-1))});});
5242 if(~setgroup6.value == 1, {12.do(x = 0; {("sg6c"++(x=x+1)).asSymbol.envirPut([~fp1c,~fp2c,~fp3c,~fp4c,~fp5c,~fp6c,~fp7c,~fp8c,~fp9c,~fp10c,~fp11c,~fp12c].at(x-1))});});
5243 if(~setgroup7.value == 1, {12.do(x = 0; {("sg7c"++(x=x+1)).asSymbol.envirPut([~fp1c,~fp2c,~fp3c,~fp4c,~fp5c,~fp6c,~fp7c,~fp8c,~fp9c,~fp10c,~fp11c,~fp12c].at(x-1))});});
5244 if(~setgroup8.value == 1, {12.do(x = 0; {("sg8c"++(x=x+1)).asSymbol.envirPut([~fp1c,~fp2c,~fp3c,~fp4c,~fp5c,~fp6c,~fp7c,~fp8c,~fp9c,~fp10c,~fp11c,~fp12c].at(x-1))});});
5246 n1.states_([["s1",Color.white,Color.black]]);
5247 n2.states_([["s2",Color.white,Color.black]]);
5248 n3.states_([["s3",Color.green,Color.black]]);
5249 n4.states_([["s4",Color.white,Color.black]]);
5250 n5.states_([["s5",Color.white,Color.black]]);
5251 n6.states_([["s6",Color.white,Color.black]]);
5252 n7.states_([["s7",Color.white,Color.black]]);
5253 n8.states_([["s8",Color.white,Color.black]]);
5255 n4 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)+(60*1),Window.screenBounds.height-88,60,60/1.6180339887499)).states_([["s4",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(((button.value == 0) or: (button.value == 1)), {~r1d=~fp1d;~r2d=~fp2d;~r3d=~fp3d;~r4d=~fp4d;~r5d=~fp5d;~r6d=~fp6d;~r7d=~fp7d;~r8d=~fp8d;~r9d=~fp9d;~r10d=~fp10d;~r11d=~fp11d;~r12d=~fp12d; 12.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))}); "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1d=~f1;~u2d=~f2;~u3d=~f3;~u4d=~f4;~u5d=~f5;~u6d=~f6;~u7d=~f7;~u8d=~f8;~u9d=~f9;~u10d=~f10;~u11d=~f11;~u12d=~f12; ~si4set.value;
5257 if(~setgroup1.value == 1, {12.do(x = 0; {("sg1d"++(x=x+1)).asSymbol.envirPut([~fp1d,~fp2d,~fp3d,~fp4d,~fp5d,~fp6d,~fp7d,~fp8d,~fp9d,~fp10d,~fp11d,~fp12d].at(x-1))});});
5258 if(~setgroup2.value == 1, {12.do(x = 0; {("sg2d"++(x=x+1)).asSymbol.envirPut([~fp1d,~fp2d,~fp3d,~fp4d,~fp5d,~fp6d,~fp7d,~fp8d,~fp9d,~fp10d,~fp11d,~fp12d].at(x-1))});});
5259 if(~setgroup3.value == 1, {12.do(x = 0; {("sg3d"++(x=x+1)).asSymbol.envirPut([~fp1d,~fp2d,~fp3d,~fp4d,~fp5d,~fp6d,~fp7d,~fp8d,~fp9d,~fp10d,~fp11d,~fp12d].at(x-1))});});
5260 if(~setgroup4.value == 1, {12.do(x = 0; {("sg4d"++(x=x+1)).asSymbol.envirPut([~fp1d,~fp2d,~fp3d,~fp4d,~fp5d,~fp6d,~fp7d,~fp8d,~fp9d,~fp10d,~fp11d,~fp12d].at(x-1))});});
5261 if(~setgroup5.value == 1, {12.do(x = 0; {("sg5d"++(x=x+1)).asSymbol.envirPut([~fp1d,~fp2d,~fp3d,~fp4d,~fp5d,~fp6d,~fp7d,~fp8d,~fp9d,~fp10d,~fp11d,~fp12d].at(x-1))});});
5262 if(~setgroup6.value == 1, {12.do(x = 0; {("sg6d"++(x=x+1)).asSymbol.envirPut([~fp1d,~fp2d,~fp3d,~fp4d,~fp5d,~fp6d,~fp7d,~fp8d,~fp9d,~fp10d,~fp11d,~fp12d].at(x-1))});});
5263 if(~setgroup7.value == 1, {12.do(x = 0; {("sg7d"++(x=x+1)).asSymbol.envirPut([~fp1d,~fp2d,~fp3d,~fp4d,~fp5d,~fp6d,~fp7d,~fp8d,~fp9d,~fp10d,~fp11d,~fp12d].at(x-1))});});
5264 if(~setgroup8.value == 1, {12.do(x = 0; {("sg8d"++(x=x+1)).asSymbol.envirPut([~fp1d,~fp2d,~fp3d,~fp4d,~fp5d,~fp6d,~fp7d,~fp8d,~fp9d,~fp10d,~fp11d,~fp12d].at(x-1))});});
5266 n1.states_([["s1",Color.white,Color.black]]);
5267 n2.states_([["s2",Color.white,Color.black]]);
5268 n3.states_([["s3",Color.white,Color.black]]);
5269 n4.states_([["s4",Color.green,Color.black]]);
5270 n5.states_([["s5",Color.white,Color.black]]);
5271 n6.states_([["s6",Color.white,Color.black]]);
5272 n7.states_([["s7",Color.white,Color.black]]);
5273 n8.states_([["s8",Color.white,Color.black]]);
5275 n5 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)-(60*2),Window.screenBounds.height-52,60,60/1.6180339887499)).states_([["s5",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(((button.value == 0) or: (button.value == 1)), {~r1e=~fp1e;~r2e=~fp2e;~r3e=~fp3e;~r4e=~fp4e;~r5e=~fp5e;~r6e=~fp6e;~r7e=~fp7e;~r8e=~fp8e;~r9e=~fp9e;~r10e=~fp10e;~r11e=~fp11e;~r12e=~fp12e; 12.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))}); "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1e=~f1;~u2e=~f2;~u3e=~f3;~u4e=~f4;~u5e=~f5;~u6e=~f6;~u7e=~f7;~u8e=~f8;~u9e=~f9;~u10e=~f10;~u11e=~f11;~u12e=~f12; ~si5set.value;
5277 if(~setgroup1.value == 1, {12.do(x = 0; {("sg1e"++(x=x+1)).asSymbol.envirPut([~fp1e,~fp2e,~fp3e,~fp4e,~fp5e,~fp6e,~fp7e,~fp8e,~fp9e,~fp10e,~fp11e,~fp12e].at(x-1))});});
5278 if(~setgroup2.value == 1, {12.do(x = 0; {("sg2e"++(x=x+1)).asSymbol.envirPut([~fp1e,~fp2e,~fp3e,~fp4e,~fp5e,~fp6e,~fp7e,~fp8e,~fp9e,~fp10e,~fp11e,~fp12e].at(x-1))});});
5279 if(~setgroup3.value == 1, {12.do(x = 0; {("sg3e"++(x=x+1)).asSymbol.envirPut([~fp1e,~fp2e,~fp3e,~fp4e,~fp5e,~fp6e,~fp7e,~fp8e,~fp9e,~fp10e,~fp11e,~fp12e].at(x-1))});});
5280 if(~setgroup4.value == 1, {12.do(x = 0; {("sg4e"++(x=x+1)).asSymbol.envirPut([~fp1e,~fp2e,~fp3e,~fp4e,~fp5e,~fp6e,~fp7e,~fp8e,~fp9e,~fp10e,~fp11e,~fp12e].at(x-1))});});
5281 if(~setgroup5.value == 1, {12.do(x = 0; {("sg5e"++(x=x+1)).asSymbol.envirPut([~fp1e,~fp2e,~fp3e,~fp4e,~fp5e,~fp6e,~fp7e,~fp8e,~fp9e,~fp10e,~fp11e,~fp12e].at(x-1))});});
5282 if(~setgroup6.value == 1, {12.do(x = 0; {("sg6e"++(x=x+1)).asSymbol.envirPut([~fp1e,~fp2e,~fp3e,~fp4e,~fp5e,~fp6e,~fp7e,~fp8e,~fp9e,~fp10e,~fp11e,~fp12e].at(x-1))});});
5283 if(~setgroup7.value == 1, {12.do(x = 0; {("sg7e"++(x=x+1)).asSymbol.envirPut([~fp1e,~fp2e,~fp3e,~fp4e,~fp5e,~fp6e,~fp7e,~fp8e,~fp9e,~fp10e,~fp11e,~fp12e].at(x-1))});});
5284 if(~setgroup8.value == 1, {12.do(x = 0; {("sg8e"++(x=x+1)).asSymbol.envirPut([~fp1e,~fp2e,~fp3e,~fp4e,~fp5e,~fp6e,~fp7e,~fp8e,~fp9e,~fp10e,~fp11e,~fp12e].at(x-1))});});
5286 n1.states_([["s1",Color.white,Color.black]]);
5287 n2.states_([["s2",Color.white,Color.black]]);
5288 n3.states_([["s3",Color.white,Color.black]]);
5289 n4.states_([["s4",Color.white,Color.black]]);
5290 n5.states_([["s5",Color.green,Color.black]]);
5291 n6.states_([["s6",Color.white,Color.black]]);
5292 n7.states_([["s7",Color.white,Color.black]]);
5293 n8.states_([["s8",Color.white,Color.black]]);
5295 n6 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)-(60*1),Window.screenBounds.height-52,60,60/1.6180339887499)).states_([["s6",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(((button.value == 0) or: (button.value == 1)), {~r1f=~fp1f;~r2f=~fp2f;~r3f=~fp3f;~r4f=~fp4f;~r5f=~fp5f;~r6f=~fp6f;~r7f=~fp7f;~r8f=~fp8f;~r9f=~fp9f;~r10f=~fp10f;~r11f=~fp11f;~r12f=~fp12f; 12.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))}); "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1f=~f1;~u2f=~f2;~u3f=~f3;~u4f=~f4;~u5f=~f5;~u6f=~f6;~u7f=~f7;~u8f=~f8;~u9f=~f9;~u10f=~f10;~u11e=~f11;~u12f=~f12; ~si6set.value;
5297 if(~setgroup1.value == 1, {12.do(x = 0; {("sg1f"++(x=x+1)).asSymbol.envirPut([~fp1f,~fp2f,~fp3f,~fp4f,~fp5f,~fp6f,~fp7f,~fp8f,~fp9f,~fp10f,~fp11f,~fp12f].at(x-1))});});
5298 if(~setgroup2.value == 1, {12.do(x = 0; {("sg2f"++(x=x+1)).asSymbol.envirPut([~fp1f,~fp2f,~fp3f,~fp4f,~fp5f,~fp6f,~fp7f,~fp8f,~fp9f,~fp10f,~fp11f,~fp12f].at(x-1))});});
5299 if(~setgroup3.value == 1, {12.do(x = 0; {("sg3f"++(x=x+1)).asSymbol.envirPut([~fp1f,~fp2f,~fp3f,~fp4f,~fp5f,~fp6f,~fp7f,~fp8f,~fp9f,~fp10f,~fp11f,~fp12f].at(x-1))});});
5300 if(~setgroup4.value == 1, {12.do(x = 0; {("sg4f"++(x=x+1)).asSymbol.envirPut([~fp1f,~fp2f,~fp3f,~fp4f,~fp5f,~fp6f,~fp7f,~fp8f,~fp9f,~fp10f,~fp11f,~fp12f].at(x-1))});});
5301 if(~setgroup5.value == 1, {12.do(x = 0; {("sg5f"++(x=x+1)).asSymbol.envirPut([~fp1f,~fp2f,~fp3f,~fp4f,~fp5f,~fp6f,~fp7f,~fp8f,~fp9f,~fp10f,~fp11f,~fp12f].at(x-1))});});
5302 if(~setgroup6.value == 1, {12.do(x = 0; {("sg6f"++(x=x+1)).asSymbol.envirPut([~fp1f,~fp2f,~fp3f,~fp4f,~fp5f,~fp6f,~fp7f,~fp8f,~fp9f,~fp10f,~fp11f,~fp12f].at(x-1))});});
5303 if(~setgroup7.value == 1, {12.do(x = 0; {("sg7f"++(x=x+1)).asSymbol.envirPut([~fp1f,~fp2f,~fp3f,~fp4f,~fp5f,~fp6f,~fp7f,~fp8f,~fp9f,~fp10f,~fp11f,~fp12f].at(x-1))});});
5304 if(~setgroup8.value == 1, {12.do(x = 0; {("sg8f"++(x=x+1)).asSymbol.envirPut([~fp1f,~fp2f,~fp3f,~fp4f,~fp5f,~fp6f,~fp7f,~fp8f,~fp9f,~fp10f,~fp11f,~fp12f].at(x-1))});});
5306 n1.states_([["s1",Color.white,Color.black]]);
5307 n2.states_([["s2",Color.white,Color.black]]);
5308 n3.states_([["s3",Color.white,Color.black]]);
5309 n4.states_([["s4",Color.white,Color.black]]);
5310 n5.states_([["s5",Color.white,Color.black]]);
5311 n6.states_([["s6",Color.green,Color.black]]);
5312 n7.states_([["s7",Color.white,Color.black]]);
5313 n8.states_([["s8",Color.white,Color.black]]);
5315 n7 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)+(0), Window.screenBounds.height-52,60,60/1.6180339887499)).states_([["s7",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(((button.value == 0) or: (button.value == 1)), {~r1g=~fp1g;~r2g=~fp2g;~r3g=~fp3g;~r4g=~fp4g;~r5g=~fp5g;~r6g=~fp6g;~r7g=~fp7g;~r8g=~fp8g;~r9g=~fp9g;~r10g=~fp10g;~r11g=~fp11g;~r12g=~fp12g; 12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))}); "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1g=~f1;~u2g=~f2;~u3g=~f3;~u4g=~f4;~u5g=~f5;~u6g=~f6;~u7g=~f7;~u8g=~f8;~u9g=~f9;~u10g=~f10;~u11f=~f11;~u12g=~f12; ~si7set.value;
5317 if(~setgroup1.value == 1, {12.do(x = 0; {("sg1g"++(x=x+1)).asSymbol.envirPut([~fp1g,~fp2g,~fp3g,~fp4g,~fp5g,~fp6g,~fp7g,~fp8g,~fp9g,~fp10g,~fp11g,~fp12g].at(x-1))});});
5318 if(~setgroup2.value == 1, {12.do(x = 0; {("sg2g"++(x=x+1)).asSymbol.envirPut([~fp1g,~fp2g,~fp3g,~fp4g,~fp5g,~fp6g,~fp7g,~fp8g,~fp9g,~fp10g,~fp11g,~fp12g].at(x-1))});});
5319 if(~setgroup3.value == 1, {12.do(x = 0; {("sg3g"++(x=x+1)).asSymbol.envirPut([~fp1g,~fp2g,~fp3g,~fp4g,~fp5g,~fp6g,~fp7g,~fp8g,~fp9g,~fp10g,~fp11g,~fp12g].at(x-1))});});
5320 if(~setgroup4.value == 1, {12.do(x = 0; {("sg4g"++(x=x+1)).asSymbol.envirPut([~fp1g,~fp2g,~fp3g,~fp4g,~fp5g,~fp6g,~fp7g,~fp8g,~fp9g,~fp10g,~fp11g,~fp12g].at(x-1))});});
5321 if(~setgroup5.value == 1, {12.do(x = 0; {("sg5g"++(x=x+1)).asSymbol.envirPut([~fp1g,~fp2g,~fp3g,~fp4g,~fp5g,~fp6g,~fp7g,~fp8g,~fp9g,~fp10g,~fp11g,~fp12g].at(x-1))});});
5322 if(~setgroup6.value == 1, {12.do(x = 0; {("sg6g"++(x=x+1)).asSymbol.envirPut([~fp1g,~fp2g,~fp3g,~fp4g,~fp5g,~fp6g,~fp7g,~fp8g,~fp9g,~fp10g,~fp11g,~fp12g].at(x-1))});});
5323 if(~setgroup7.value == 1, {12.do(x = 0; {("sg7g"++(x=x+1)).asSymbol.envirPut([~fp1g,~fp2g,~fp3g,~fp4g,~fp5g,~fp6g,~fp7g,~fp8g,~fp9g,~fp10g,~fp11g,~fp12g].at(x-1))});});
5324 if(~setgroup8.value == 1, {12.do(x = 0; {("sg8g"++(x=x+1)).asSymbol.envirPut([~fp1g,~fp2g,~fp3g,~fp4g,~fp5g,~fp6g,~fp7g,~fp8g,~fp9g,~fp10g,~fp11g,~fp12g].at(x-1))});});
5326 n1.states_([["s1",Color.white,Color.black]]);
5327 n2.states_([["s2",Color.white,Color.black]]);
5328 n3.states_([["s3",Color.white,Color.black]]);
5329 n4.states_([["s4",Color.white,Color.black]]);
5330 n5.states_([["s5",Color.white,Color.black]]);
5331 n6.states_([["s6",Color.white,Color.black]]);
5332 n7.states_([["s7",Color.green,Color.black]]);
5333 n8.states_([["s8",Color.white,Color.black]]);
5335 n8 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)+(60*1),Window.screenBounds.height-52,60,60/1.6180339887499)).states_([["s8",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(((button.value == 0) or: (button.value == 1)), {~r1h=~fp1h;~r2h=~fp2h;~r3h=~fp3h;~r4h=~fp4h;~r5h=~fp5h;~r6h=~fp6h;~r7h=~fp7h;~r8h=~fp8h;~r9h=~fp9h;~r10h=~fp10h;~r11h=~fp11h;~r12h=~fp12h; 12.do(x = 0; {("fp"++(x=x+1)++"h").asSymbol.envirPut([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].at(x-1))}); "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1h=~f1;~u2h=~f2;~u3h=~f3;~u4h=~f4;~u5h=~f5;~u6h=~f6;~u7h=~f7;~u8h=~f8;~u9h=~f9;~u10h=~f10;~u11g=~f11;~u12h=~f12; ~si8set.value;
5337 if(~setgroup1.value == 1, {12.do(x = 0; {("sg1h"++(x=x+1)).asSymbol.envirPut([~fp1h,~fp2h,~fp3h,~fp4h,~fp5h,~fp6h,~fp7h,~fp8h,~fp9h,~fp10h,~fp11h,~fp12h].at(x-1))});});
5338 if(~setgroup2.value == 1, {12.do(x = 0; {("sg2h"++(x=x+1)).asSymbol.envirPut([~fp1h,~fp2h,~fp3h,~fp4h,~fp5h,~fp6h,~fp7h,~fp8h,~fp9h,~fp10h,~fp11h,~fp12h].at(x-1))});});
5339 if(~setgroup3.value == 1, {12.do(x = 0; {("sg3h"++(x=x+1)).asSymbol.envirPut([~fp1h,~fp2h,~fp3h,~fp4h,~fp5h,~fp6h,~fp7h,~fp8h,~fp9h,~fp10h,~fp11h,~fp12h].at(x-1))});});
5340 if(~setgroup4.value == 1, {12.do(x = 0; {("sg4h"++(x=x+1)).asSymbol.envirPut([~fp1h,~fp2h,~fp3h,~fp4h,~fp5h,~fp6h,~fp7h,~fp8h,~fp9h,~fp10h,~fp11h,~fp12h].at(x-1))});});
5341 if(~setgroup5.value == 1, {12.do(x = 0; {("sg5h"++(x=x+1)).asSymbol.envirPut([~fp1h,~fp2h,~fp3h,~fp4h,~fp5h,~fp6h,~fp7h,~fp8h,~fp9h,~fp10h,~fp11h,~fp12h].at(x-1))});});
5342 if(~setgroup6.value == 1, {12.do(x = 0; {("sg6h"++(x=x+1)).asSymbol.envirPut([~fp1h,~fp2h,~fp3h,~fp4h,~fp5h,~fp6h,~fp7h,~fp8h,~fp9h,~fp10h,~fp11h,~fp12h].at(x-1))});});
5343 if(~setgroup7.value == 1, {12.do(x = 0; {("sg7h"++(x=x+1)).asSymbol.envirPut([~fp1h,~fp2h,~fp3h,~fp4h,~fp5h,~fp6h,~fp7h,~fp8h,~fp9h,~fp10h,~fp11h,~fp12h].at(x-1))});});
5344 if(~setgroup8.value == 1, {12.do(x = 0; {("sg8h"++(x=x+1)).asSymbol.envirPut([~fp1h,~fp2h,~fp3h,~fp4h,~fp5h,~fp6h,~fp7h,~fp8h,~fp9h,~fp10h,~fp11h,~fp12h].at(x-1))});});
5346 n1.states_([["s1",Color.white,Color.black]]);
5347 n2.states_([["s2",Color.white,Color.black]]);
5348 n3.states_([["s3",Color.white,Color.black]]);
5349 n4.states_([["s4",Color.white,Color.black]]);
5350 n5.states_([["s5",Color.white,Color.black]]);
5351 n6.states_([["s6",Color.white,Color.black]]);
5352 n7.states_([["s7",Color.white,Color.black]]);
5353 n8.states_([["s8",Color.green,Color.black]]);
5357 //undo saved chord pop-up menu
5359 ~undo = PopUpMenu(w, Rect(Window.screenBounds.width-(Window.screenBounds.width/3)+39,Window.screenBounds.height-52+19.777087639995-(40/1.6180339887499)-8,40,40/1.6180339887499)).items_(["uc","u1","u2","u3","u4","u5","u6","u7","u8"]).background_(Color.black).stringColor_(Color.white).action_({arg button;});
5362 //set button for undo pop-up menu
5364 set2 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/3)+40+39,Window.screenBounds.height-52+19.777087639995-(40/1.6180339887499)-8,40,40/1.6180339887499)).states_([["set",Color.white,Color.black]]).action_({arg button;
5366 {~undo.value == 0}{if(([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ] != [~undof1,~undof2,~undof3,~undof4,~undof5,~undof6,~undof7,~undof8,~undof9,~undof10,~undof11,~undof12]).postln, {12.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut([~undof1,~undof2,~undof3,~undof4,~undof5,~undof6,~undof7,~undof8,~undof9,~undof10,~undof11,~undof12].at(x-1))});}/*,{12.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut([~redof1,~redof2,~redof3,~redof4,~redof5,~redof6,~redof7,~redof8,~redof9,~redof10,~redof11,~redof12].at(x-1))});}*/);~undo.value = 0;}
5367 {~undo.value == 1}{if(([~fp1,~fp2,~fp3,~fp4,~fp5,~fp6,~fp7,~fp8,~fp9,~fp10,~fp11,~fp12] == [~r1,~r2,~r3,~r4,~r5,~r6,~r7,~r8,~r9,~r10,~r11,~r12]).postln, {12.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([~u1,~u2,~u3,~u4,~u5,~u6,~u7,~u8,~u9,~u10,~u11,~u12].at(x-1))});},{12.do(x = 0; {("fp"++(x=x+1)).asSymbol.envirPut([~r1,~r2,~r3,~r4,~r5,~r6,~r7,~r8,~r9,~r10,~r11,~r12].at(x-1))});});~undo.value = 0;}
5368 {~undo.value == 2}{if([~fp1b,~fp2b,~fp3b,~fp4b,~fp5b,~fp6b,~fp7b,~fp8b,~fp9b,~fp10b,~fp11b,~fp12b] == [~r1b,~r2b,~r3b,~r4b,~r5b,~r6b,~r7b,~r8b,~r9b,~r10b,~r11b,~r12b], {12.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([~u1b,~u2b,~u3b,~u4b,~u5b,~u6b,~u7b,~u8b,~u9b,~u10b,~u11b,~u12b].at(x-1))});},{12.do(x = 0; {("fp"++(x=x+1)++"b").asSymbol.envirPut([~r1b,~r2b,~r3b,~r4b,~r5b,~r6b,~r7b,~r8b,~r9b,~r10b,~r11b,~r12b].at(x-1))});});~undo.value = 0;}
5369 {~undo.value == 3}{if([~fp1c,~fp2c,~fp3c,~fp4c,~fp5c,~fp6c,~fp7c,~fp8c,~fp9c,~fp10c,~fp11c,~fp12c] == [~r1c,~r2c,~r3c,~r4c,~r5c,~r6c,~r7c,~r8c,~r9c,~r10c,~r11c,~r12c], {12.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([~u1c,~u2c,~u3c,~u4c,~u5c,~u6c,~u7c,~u8c,~u9c,~u10c,~u11c,~u12c].at(x-1))});},{12.do(x = 0; {("fp"++(x=x+1)++"c").asSymbol.envirPut([~r1c,~r2c,~r3c,~r4c,~r5c,~r6c,~r7c,~r8c,~r9c,~r10c,~r11c,~r12c].at(x-1))});});~undo.value = 0;}
5370 {~undo.value == 4}{if([~fp1d,~fp2d,~fp3d,~fp4d,~fp5d,~fp6d,~fp7d,~fp8d,~fp9d,~fp10d,~fp11d,~fp12d] == [~r1d,~r2d,~r3d,~r4d,~r5d,~r6d,~r7d,~r8d,~r9d,~r10d,~r11d,~r12d], {12.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([~u1d,~u2d,~u3d,~u4d,~u5d,~u6d,~u7d,~u8d,~u9d,~u10d,~u11d,~u12d].at(x-1))});},{12.do(x = 0; {("fp"++(x=x+1)++"d").asSymbol.envirPut([~r1d,~r2d,~r3d,~r4d,~r5d,~r6d,~r7d,~r8d,~r9d,~r10d,~r11d,~r12d].at(x-1))});});~undo.value = 0;}
5371 {~undo.value == 5}{if([~fp1e,~fp2e,~fp3e,~fp4e,~fp5e,~fp6e,~fp7e,~fp8e,~fp9e,~fp10e,~fp11e,~fp12e] == [~r1e,~r2e,~r3e,~r4e,~r5e,~r6e,~r7e,~r8e,~r9e,~r10e,~r11e,~r12e], {12.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([~u1e,~u2e,~u3e,~u4e,~u5e,~u6e,~u7e,~u8e,~u9e,~u10e,~u11e,~u12e].at(x-1))});},{12.do(x = 0; {("fp"++(x=x+1)++"e").asSymbol.envirPut([~r1e,~r2e,~r3e,~r4e,~r5e,~r6e,~r7e,~r8e,~r9e,~r10e,~r11e,~r12e].at(x-1))});});~undo.value = 0;}
5372 {~undo.value == 6}{if([~fp1f,~fp2f,~fp3f,~fp4f,~fp5f,~fp6f,~fp7f,~fp8f,~fp9f,~fp10f,~fp11f,~fp12f] == [~r1f,~r2f,~r3f,~r4f,~r5f,~r6f,~r7f,~r8f,~r9f,~r10f,~r11f,~r12f], {12.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([~u1f,~u2f,~u3f,~u4f,~u5f,~u6f,~u7f,~u8f,~u9f,~u10f,~u11f,~u12f].at(x-1))});},{12.do(x = 0; {("fp"++(x=x+1)++"f").asSymbol.envirPut([~r1f,~r2f,~r3f,~r4f,~r5f,~r6f,~r7f,~r8f,~r9f,~r10f,~r11f,~r12f].at(x-1))});});~undo.value = 0;}
5373 {~undo.value == 7}{if([~fp1g,~fp2g,~fp3g,~fp4g,~fp5g,~fp6g,~fp7g,~fp8g,~fp9g,~fp10g,~fp11g,~fp12g] == [~r1g,~r2g,~r3g,~r4g,~r5g,~r6g,~r7g,~r8g,~r9g,~r10g,~r11g,~r12g], {12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([~u1g,~u2g,~u3g,~u4g,~u5g,~u6g,~u7g,~u8g,~u9g,~u10g,~u11g,~u12g].at(x-1))});},{12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([~r1g,~r2g,~r3g,~r4g,~r5g,~r6g,~r7g,~r8g,~r9g,~r10g,~r11g,~r12g].at(x-1))});});~undo.value = 0;}
5374 {~undo.value == 8}{if([~fp1h,~fp2h,~fp3h,~fp4h,~fp5h,~fp6h,~fp7h,~fp8h,~fp9h,~fp10h,~fp11h,~fp12h] == [~r1h,~r2h,~r3h,~r4h,~r5h,~r6h,~r7h,~r8h,~r9h,~r10h,~r11h,~r12h], {12.do(x = 0; {("fp"++(x=x+1)++"h").asSymbol.envirPut([~u1h,~u2h,~u3h,~u4h,~u5h,~u6h,~u7h,~u8h,~u9h,~u10h,~u11h,~u12h].at(x-1))});},{12.do(x = 0; {("fp"++(x=x+1)++"g").asSymbol.envirPut([~r1h,~r2h,~r3h,~r4h,~r5h,~r6h,~r7h,~r8h,~r9h,~r10h,~r11h,~r12h].at(x-1))});});~undo.value = 0;};
5378 //record/stop record button
5380 ~startrecord = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/3)+39,Window.screenBounds.height-52+19.777087639995,28,28/1.6180339887499)).states_([["rc",Color.white,Color.black],["/rc",Color.black,Color.red]]).action_({arg button;
5382 if(button.value == 1, {~numsynths.stop; s.record; if(button.value == 0, {button.value = 1});},
5383 {s.stopRecording; ~startrecord.value = 0; ~pauserecord.value = 0; ~numsynths.stop; ~numsynths.play;});
5387 //pause record button
5389 ~pauserecord = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/3)+28+39,Window.screenBounds.height-52+19.777087639995,28,28/1.6180339887499)).states_([["prc",Color.white,Color.black],["/prc",Color.black,Color.blue]]).action_({arg button; if(button == 1, {Server.default.pauseRecording;}, {Server.default.record});});
5392 //minimize GUI window button
5394 ~min = Button.new(w,Rect(Window.screenBounds.width-20,~bpt+69+5-(20/1.6180339887499),20,20/1.6180339887499)).states_([["m",Color.white,Color.black]]).action_({arg button; w.minimize;
5396 ~fullscreen_correct = {w.fullScreen};
5397 ~fscview = UserView(w, Rect(0,0, Window.screenBounds.width-100, Window.screenBounds.height;));
5398 ~fullscreen_button = Button.new(w,Rect(Window.screenBounds.width/2-35,Window.screenBounds.height/2+120,150,20)).states_([["re-adjust to fullscreen",Color.white,Color.black]]).action_({arg button; w.fullScreen; ~fullscreen_button.close; ~fullscreen_button = nil;});
5399 ~fscview.mouseEnterAction_{|v, x, y| ~fullscreen_correct.value; ~fullscreen_correct = nil; ~fscview.close; ~fscview = nil; ~fullscreen_button.close; ~fullscreen_button = nil;};
5403 //close GUI window button
5405 ~close = Button.new(w,Rect(Window.screenBounds.width-20,~bpt+69+5,20,20/1.6180339887499)).states_([["c",Color.white,Color.black]]).action_({arg button;
5407 if(~closemessage != nil, {~closemessage.close}, {nil});
5408 ~closemessage = View(w, Rect(Window.screenBounds.width-(340+46),Window.screenBounds.height-(340+46/1.6180339887499)-110,340+46,340+46/1.6180339887499)).background_(Color.black).front;
5409 ~closemessagestring = StaticText(~closemessage, Rect(0,0,340+46,340+46/1.6180339887499)).background_(Color.black);
5410 ~closemessagestring.align = \center;
5411 ~closemessagestring.string ="Close Timewave Synth?";
5412 ~closemessagestring.stringColor = Color.white;
5413 ~closemessagebutton1 = Button.new(~closemessage,Rect(120-46+40,340/1.6180339887499-30,46,46/1.6180339887499)).states_([["Yes",Color.white,Color.black]]).action_({AppClock.sched(0, {~cpumonitorroutine.stop; ~metronome.stop; ~loop.stop; ~loop.reset; ~numsynths.stop; w.close; Task({1.do({if(~l1a.isRunning == true or: ~l1a1.isRunning == true, {~synthfree.value;}, {nil}); 1.wait; Server.freeAll;});}).play;});});
5414 ~closemessagebutton2 = Button.new(~closemessage,Rect(320+46-130,340/1.6180339887499-30,46,46/1.6180339887499)).states_([["No",Color.white,Color.black]]).action_({AppClock.sched(0, {~closemessage.close;});});
5415 ~closemessage.front;
5420 w.front; w.fullScreen;
5422 /* e-mail: ken_brant@ymail.com */
5429 //Interpreted King Wen Sequences
5433 (#a,b,c,d,e,f = /*[ 128.43436842029,128.43436842029,128.43436842029,128.43436842029,128.43436842029,128.43436842029 ]*/
5434 [ ~basefreq,~basefreq,~basefreq,~basefreq,~basefreq,~basefreq ];
5435 ~a = a; ~b = b; ~c =c; ~d = d; ~e = e;~f=f;);
5437 ~fth = 1.4142135623729;
5438 ~bi = ~fth; (~bi = "binary interval" - intverval of key change to a hexagram line's opposite in King Wen sequence)
5443 /*1*/ #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f ],
5444 /*2*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d/~bi, e = e/~bi, f = f/~bi ],
5445 /*3*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f*~bi ],
5446 /*4*/ [ a = a*~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f/~bi ],
5447 /*5*/ [ a = a/~bi, b = b*~bi, c = c, d = d*~bi, e = e, f = f*~bi ],
5448 /*6*/ [ a = a*~bi, b = b, c = c*~bi, d = d/~bi, e = e, f = f/~bi ],
5449 /*7*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d, e = e, f = f ],
5450 /*8*/ [ a = a, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],
5451 /*9*/ [ a = a*~bi, b = b, c = c, d = d*~bi, e = e*~bi, f = f*~bi ],
5452 /*10*/ [ a = a, b = b, c = c*~bi, d = d/~bi, e = e, f = f ],
5453 /*11*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d*~bi, e = e, f = f ],
5454 /*12*/ [ a = a*~bi, b = b*~bi, c = c*~bi, d = d/~bi, e = e/~bi, f = f/~bi ],
5455 /*13*/ [ a = a, b = b, c = c, d = d*~bi, e = e, f = f*~bi ],
5456 /*14*/ [ a = a, b = b/~bi, c = c, d = d, e = e*~bi, f = f ],
5457 /*15*/ [ a = a/~bi, b = b, c = c/~bi, d = d, e = e/~bi, f = f/~bi ],
5458 /*16*/ [ a = a, b = b, c = c*~bi, d = d/~bi, e = e, f = f ],
5459 /*17*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f*~bi ],
5460 /*18*/ [ a = a*~bi, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f/~bi ],
5461 /*19*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e, f = f*~bi ],
5462 /*20*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e/~bi, f = f/~bi ],
5463 /*21*/ [ a = a, b = b/~bi, c = c*~bi, d = d, e = e, f = f*~bi ],
5464 /*22*/ [ a = a, b = b, c = c/~bi, d = d*~bi, e = e, f = f ],
5465 /*23*/ [ a = a, b = b, c = c, d = d/~bi, e = e, f = f/~bi ],
5466 /*24*/ [ a = a/~bi, b = b, c = c, d = d, e = e, f = f*~bi ],
5467 /*25*/ [ a = a*~bi, b = b*~bi, c = c*~bi, d = d, e = e, f = f ],
5468 /*26*/ [ a = a, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f ],
5469 /*27*/ [ a = a, b = b, c = c, d = d/~bi, e = e/~bi, f = f ],
5470 /*28*/ [ a = a/~bi, b = b*~bi, c = c*~bi, d = d*~bi, e = e*~bi, f = f/~bi ],
5471 /*29*/ [ a = a, b = b, c = c/~bi, d = d/~bi, e = e, f = f ],
5472 /*30*/ [ a = a*~bi, b = b/~bi, c = c*~bi, d = d*~bi, e = e/~bi, f = f*~bi ],
5473 /*31*/ [ a = a/~bi, b = b*~bi, c = c, d = d, e = e, f = f/~bi ],
5474 /*32*/ [ a = a, b = b/~bi, c = c, d = d, e = e*~bi, f = f ],
5475 /*33*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],
5476 /*34*/ [ a = a/~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f*~bi ],
5477 /*35*/ [ a = a*~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f/~bi ],
5478 /*36*/ [ a = a/~bi, b = b, c = c/~bi, d = d*~bi, e = e, f = f*~bi ],
5479 /*37*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e, f = f ],
5480 /*38*/ [ a = a, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f ],
5481 /*39*/ [ a = a/~bi, b = b*~bi, c = c/~bi, d = d*~bi, e = e/~bi, f = f/~bi ],
5482 /*40*/ [ a = a, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f ],
5483 /*41*/ [ a = a*~bi, b = b, c = c/~bi, d = d, e = e, f = f*~bi ],
5484 /*42*/ [ a = a, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],
5485 /*43*/ [ a = a/~bi, b = b, c = c*~bi, d = d*~bi, e = e*~bi, f = f ],
5486 /*44*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f/~bi ],
5487 /*45*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f ],
5488 /*46*/ [ a = a, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f ],
5489 /*47*/ [ a = a, b = b*~bi, c = c*~bi, d = d/~bi, e = e, f = f ],
5490 /*48*/ [ a = a, b = b, c = c/~bi, d = d*~bi, e = e, f = f ],
5491 /*49*/ [ a = a, b = b, c = c*~bi, d = d, e = e/~bi, f = f*~bi ],
5492 /*50*/ [ a = a*~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f/~bi ],
5493 /*51*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f*~bi ],
5494 /*52*/ [ a = a*~bi, b = b, c = c/~bi, d = d*~bi, e = e, f = f/~bi ],
5495 /*53*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f ],
5496 /*54*/ [ a = a/~bi, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f*~bi ],
5497 /*55*/ [ a = a, b = b, c = c, d = d*~bi, e = e/~bi, f = f ],
5498 /*56*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f/~bi ],
5499 /*57*/ [ a = a, b = b*~bi, c = c/~bi, d = d, e = e*~bi, f = f ],
5500 /*58*/ [ a = a/~bi, b = b, c = c*~bi, d = d/~bi, e = e, f = f*~bi ],
5501 /*59*/ [ a = a*~bi, b = b, c = c/~bi, d = d, e = e, f = f/~bi ],
5502 /*60*/ [ a = a/~bi, b = b, c = c, d = d, e = e, f = f*~bi ],
5503 /*61*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f ],
5504 /*62*/ [ a = a/~bi, b = b/~bi, c = c*~bi, d = d*~bi, e = e/~bi, f = f/~bi ],
5505 /*63*/ [ a = a, b = b*~bi, c = c/~bi, d = d, e = e, f = f*~bi ],
5506 /*64*/ [ a = a*~bi, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f/~bi ]
5508 /*1*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],...
5513 /*1*/ #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f ],
5514 /*2*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1/~bi ],
5515 /*3*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f*~bi ],
5516 /*4*/ [ a = a*~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f/~bi ],
5517 /*5*/ [ a = a/~bi, b = b*~bi, c = c, d = d*~bi, e = e, f = f*~bi ],
5518 /*6*/ [ a = a*~bi, b = b, c = c*~bi, d = d/~bi, e = e, f = f/~bi ],
5519 /*7*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d, e = e, f = f ],
5520 /*8*/ [ a = a, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],
5521 /*9*/ [ a = a*~bi, b = b, c = c, d = d*~bi, e = e*~bi, f = f*~bi ],
5522 /*10*/ [ a = a, b = b, c = c*~bi, d = d/~bi, e = e, f = f ],
5523 /*11*/ [ a = a/~bi, b = b/~bi, c = c/~bi, d = d*~bi, e = e, f = f ],
5524 /*12*/ [ a = a*~n2*~bi, b = b*~n2*~bi, c = c*~n2*~bi, d = d*~n2/~bi, e = e*~n2/~bi, f = f*~n2/~bi ],
5525 /*13*/ [ a = a, b = b, c = c, d = d*~bi, e = e, f = f*~bi ],
5526 /*14*/ [ a = a, b = b/~bi, c = c, d = d, e = e*~bi, f = f ],
5527 /*15*/ [ a = a/~bi, b = b, c = c/~bi, d = d, e = e/~bi, f = f/~bi ],
5528 /*16*/ [ a = a, b = b, c = c*~bi, d = d/~bi, e = e, f = f ],
5529 /*17*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f*~bi ],
5530 /*18*/ [ a = a*~n3*~bi, b = b*~n3/~bi, c = c*~n3/~bi, d = d*~n3*~bi, e = e*~n3*~bi, f = f*~n3/~bi ],
5531 /*19*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e, f = f*~bi ],
5532 /*20*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e/~bi, f = f/~bi ],
5533 /*21*/ [ a = a, b = b/~bi, c = c*~bi, d = d, e = e, f = f*~bi ],
5534 /*22*/ [ a = a, b = b, c = c/~bi, d = d*~bi, e = e, f = f ],
5535 /*23*/ [ a = a, b = b, c = c, d = d/~bi, e = e, f = f/~bi ],
5536 /*24*/ [ a = a/~bi, b = b, c = c, d = d, e = e, f = f*~bi ],
5537 /*25*/ [ a = a*~bi, b = b*~bi, c = c*~bi, d = d, e = e, f = f ],
5538 /*26*/ [ a = a, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f ],
5539 /*27*/ [ a = a, b = b, c = c, d = d/~bi, e = e/~bi, f = f ],
5540 /*28*/ [ a = a*~n4/~bi, b = b*~n4*~bi, c = c*~n4*~bi, d = d*~n4*~bi, e = e*~n4*~bi, f = f*~n4/~bi ],
5541 /*29*/ [ a = a, b = b, c = c/~bi, d = d/~bi, e = e, f = f ],
5542 /*30*/ [ a = a*~n5*~bi, b = b*~n5/~bi, c = c*~n5*~bi, d = d*~n5*~bi, e = e*~n5/~bi, f = f*~n5*~bi ],
5543 /*31*/ [ a = a/~bi, b = b*~bi, c = c, d = d, e = e, f = f/~bi ],
5544 /*32*/ [ a = a, b = b/~bi, c = c, d = d, e = e*~bi, f = f ],
5545 /*33*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],
5546 /*34*/ [ a = a/~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f*~bi ],
5547 /*35*/ [ a = a*~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f/~bi ],
5548 /*36*/ [ a = a/~bi, b = b, c = c/~bi, d = d*~bi, e = e, f = f*~bi ],
5549 /*37*/ [ a = a*~bi, b = b*~bi, c = c, d = d, e = e, f = f ],
5550 /*38*/ [ a = a, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f ],
5551 /*39*/ [ a = a*~n6/~bi, b = b*~n6*~bi, c = c*~n6/~bi, d = d*~n6*~bi, e = e*~n6/~bi, f = f*~n6/~bi ],
5552 /*40*/ [ a = a, b = b/~bi, c = c*~bi, d = d/~bi, e = e*~bi, f = f ],
5553 /*41*/ [ a = a*~bi, b = b, c = c/~bi, d = d, e = e, f = f*~bi ],
5554 /*42*/ [ a = a, b = b*~bi, c = c, d = d, e = e/~bi, f = f ],
5555 /*43*/ [ a = a/~bi, b = b, c = c*~bi, d = d*~bi, e = e*~bi, f = f ],
5556 /*44*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f/~bi ],
5557 /*45*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f ],
5558 /*46*/ [ a = a, b = b/~bi, c = c/~bi, d = d*~bi, e = e*~bi, f = f ],
5559 /*47*/ [ a = a, b = b*~bi, c = c*~bi, d = d/~bi, e = e, f = f ],
5560 /*48*/ [ a = a, b = b, c = c/~bi, d = d*~bi, e = e, f = f ],
5561 /*49*/ [ a = a, b = b, c = c*~bi, d = d, e = e/~bi, f = f*~bi ],
5562 /*50*/ [ a = a*~bi, b = b/~bi, c = c, d = d, e = e*~bi, f = f/~bi ],
5563 /*51*/ [ a = a/~bi, b = b, c = c, d = d/~bi, e = e/~bi, f = f*~bi ],
5564 /*52*/ [ a = a*~bi, b = b, c = c/~bi, d = d*~bi, e = e, f = f/~bi ],
5565 /*53*/ [ a = a, b = b*~bi, c = c, d = d, e = e, f = f ],
5566 /*54*/ [ a = a*~n7/~bi, b = b*~n7/~bi, c = c*~n7*~bi, d = d*~n7/~bi, e = e*~n7*~bi, f = f*~n7*~bi ],
5567 /*55*/ [ a = a, b = b, c = c, d = d*~bi, e = e/~bi, f = f ],
5568 /*56*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f/~bi ],
5569 /*57*/ [ a = a, b = b*~bi, c = c/~bi, d = d, e = e*~bi, f = f ],
5570 /*58*/ [ a = a/~bi, b = b, c = c*~bi, d = d/~bi, e = e, f = f*~bi ],
5571 /*59*/ [ a = a*~bi, b = b, c = c/~bi, d = d, e = e, f = f/~bi ],
5572 /*60*/ [ a = a/~bi, b = b, c = c, d = d, e = e, f = f*~bi ],
5573 /*61*/ [ a = a*~bi, b = b, c = c, d = d, e = e, f = f ],
5574 /*62*/ [ a = a*~n8/~bi, b = b*~n8/~bi, c = c*~n8*~bi, d = d*~n8*~bi, e = e*~n8/~bi, f = f*~n8/~bi ],
5575 /*63*/ [ a = a, b = b*~bi, c = c/~bi, d = d, e = e, f = f*~bi ],
5576 /*64*/ [ a = a*~n9*~bi, b = b*~n9/~bi, c = c*~n9*~bi, d = d*~n9/~bi, e = e*~n9*~bi, f = f*~n9/~bi ]
5578 /*1*/ [ a = a, b = b*~bi, c = c, d = d*~bi, e = e, f = f*~bi ],...
5583 /*1*/ #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f ],
5584 /*2*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1/~bi ],
5585 /*3*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],
5586 /*4*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1/~bi ],
5587 /*5*/ [ a = a*~n1/~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],
5588 /*6*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1/~bi ],
5589 /*7*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1, e = e*~n1, f = f*~n1 ],
5590 /*8*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1/~bi, f = f*~n1 ],
5591 /*9*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1*~bi ],
5592 /*10*/ [ a = a*~n1, b = b*~n1, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1 ],
5593 /*11*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1 ],
5594 /*12*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1/~bi ],
5595 /*13*/ [ a = a*~n1, b = b*~n1, c = c*~n1, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],
5596 /*14*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1 ],
5597 /*15*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1, e = e*~n1/~bi, f = f*~n1/~bi ],
5598 /*16*/ [ a = a*~n1, b = b*~n1, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1 ],
5599 /*17*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],
5600 /*18*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1/~bi ],
5601 /*19*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1, f = f*~n1*~bi ],
5602 /*20*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1/~bi, f = f*~n1/~bi ],
5603 /*21*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],
5604 /*22*/ [ a = a*~n1, b = b*~n1, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1 ],
5605 /*23*/ [ a = a*~n1, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1, f = f*~n1/~bi ],
5606 /*24*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],
5607 /*25*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1*~bi, d = d*~n1, e = e*~n1, f = f*~n1 ],
5608 /*26*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1 ],
5609 /*27*/ [ a = a*~n1, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1 ],
5610 /*28*/ [ a = a*~n1/~bi, b = b*~n1*~bi, c = c*~n1*~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1/~bi ],
5611 /*29*/ [ a = a*~n1, b = b*~n1, c = c*~n1/~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1 ],
5612 /*30*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1*~bi, e = e*~n1/~bi, f = f*~n1*~bi ],
5613 /*31*/ [ a = a*~n1/~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1/~bi ],
5614 /*32*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1 ],
5615 /*33*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1/~bi, f = f*~n1 ],
5616 /*34*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1*~bi ],
5617 /*35*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1/~bi ],
5618 /*36*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],
5619 /*37*/ [ a = a*~n1*~bi, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1 ],
5620 /*38*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1*~bi, f = f*~n1 ],
5621 /*39*/ [ a = a*~n1/~bi, b = b*~n1*~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1/~bi, f = f*~n1/~bi ],
5622 /*40*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1*~bi, f = f*~n1 ],
5623 /*41*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],
5624 /*42*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1/~bi, f = f*~n1 ],
5625 /*43*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1*~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1 ],
5626 /*44*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1/~bi ],
5627 /*45*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1 ],
5628 /*46*/ [ a = a*~n1, b = b*~n1/~bi, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1*~bi, f = f*~n1 ],
5629 /*47*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1 ],
5630 /*48*/ [ a = a*~n1, b = b*~n1, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1 ],
5631 /*49*/ [ a = a*~n1, b = b*~n1, c = c*~n1*~bi, d = d*~n1, e = e*~n1/~bi, f = f*~n1*~bi ],
5632 /*50*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1, d = d*~n1, e = e*~n1*~bi, f = f*~n1/~bi ],
5633 /*51*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1/~bi, e = e*~n1/~bi, f = f*~n1*~bi ],
5634 /*52*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1*~bi, e = e*~n1, f = f*~n1/~bi ],
5635 /*53*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1 ],
5636 /*54*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1*~bi, f = f*~n1*~bi ],
5637 /*55*/ [ a = a*~n1, b = b*~n1, c = c*~n1, d = d*~n1*~bi, e = e*~n1/~bi, f = f*~n1 ],
5638 /*56*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1/~bi ],
5639 /*57*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1/~bi, d = d*~n1, e = e*~n1*~bi, f = f*~n1 ],
5640 /*58*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1, f = f*~n1*~bi ],
5641 /*59*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1/~bi, d = d*~n1, e = e*~n1, f = f*~n1/~bi ],
5642 /*60*/ [ a = a*~n1/~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],
5643 /*61*/ [ a = a*~n1*~bi, b = b*~n1, c = c*~n1, d = d*~n1, e = e*~n1, f = f*~n1 ],
5644 /*62*/ [ a = a*~n1/~bi, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1*~bi, e = e*~n1/~bi, f = f*~n1/~bi ],
5645 /*63*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1/~bi, d = d*~n1, e = e*~n1, f = f*~n1*~bi ],
5646 /*64*/ [ a = a*~n1*~bi, b = b*~n1/~bi, c = c*~n1*~bi, d = d*~n1/~bi, e = e*~n1*~bi, f = f*~n1/~bi ]
5648 /*1*/ [ a = a*~n1, b = b*~n1*~bi, c = c*~n1, d = d*~n1*~bi, e = e*~n1, f = f*~n1*~bi ],...