rdk

Check-in [df7c71aeed]
Login

Check-in [df7c71aeed]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:compiled /initrd/mnt/dev_save/dsp/rdk/zita_uref/zita_ext3uref.dsp to zita_ext3uref_m8m.dll using f2w32vst. basis for release. compiled linvst.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | www
Files: files | file ages | folders
SHA1: df7c71aeedcea29d8bbdd5281ff2cff43591ecd7
User & Date: root 2019-02-26 19:54:52
Context
2019-02-27
08:22
www check-in: a3a865ef88 user: root tags: www
2019-02-26
19:54
compiled /initrd/mnt/dev_save/dsp/rdk/zita_uref/zita_ext3uref.dsp to zita_ext3uref_m8m.dll using f2w32vst. basis for release. compiled linvst. check-in: df7c71aeed user: root tags: www
08:35
compiled /initrd/mnt/dev_save/dsp/rdk/zita_uref/zita_ext3uref.dsp to zita_ext3uref_m8m.dll using f2w32vst. check-in: a95b028aef user: root tags: www
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to zita_uref/presets/zita_uref.rpl.

157
158
159
160
161
162
163










































164
  >
  <PRESET `mozart4+stagehouse_MV2_m8`
    lFVBRu9e7f4IAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAAAAAACgAAAAAAAAAQAAAAAAAAACAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAAgAAAABAAAAAAAAAAIAAAAAAAAA
    BQAAAAAAAAAKAAAAAAAAABAAAAAAAAAAIAAAAAAAAABAAAAAAAAAAIAAAAAAAAAAqAAAAAAAAAAAABAA776t3g3wrd78qfE+qfFSPtV46T0AAAA+BwCAPgMrRz8AAIA/
    Gy8dPwAAgD+sHFo/AAAAAFyPQj4K1yM+w/WoPq5H4T2PwvU8YOVQP4lBAD8K1yM8AAAAAD0KNz8AAAAAbxKDPbbzvT6TGAQ+pHBdP9JNYj/wp0Y++6nxPQAAAD/RIjs/
    AAAAPwAAAD+sHBo/NV4aPxBYuT7Zzrc+K4c2PzEILD9euik/RGVmYXVsdABtb3phcnQ0K3N0YWdlaG91c2VfTVYyX204ABAAAAA=
  >










































>







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>

157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
  >
  <PRESET `mozart4+stagehouse_MV2_m8`
    lFVBRu9e7f4IAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAAAAAACgAAAAAAAAAQAAAAAAAAACAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAAgAAAABAAAAAAAAAAIAAAAAAAAA
    BQAAAAAAAAAKAAAAAAAAABAAAAAAAAAAIAAAAAAAAABAAAAAAAAAAIAAAAAAAAAAqAAAAAAAAAAAABAA776t3g3wrd78qfE+qfFSPtV46T0AAAA+BwCAPgMrRz8AAIA/
    Gy8dPwAAgD+sHFo/AAAAAFyPQj4K1yM+w/WoPq5H4T2PwvU8YOVQP4lBAD8K1yM8AAAAAD0KNz8AAAAAbxKDPbbzvT6TGAQ+pHBdP9JNYj/wp0Y++6nxPQAAAD/RIjs/
    AAAAPwAAAD+sHBo/NV4aPxBYuT7Zzrc+K4c2PzEILD9euik/RGVmYXVsdABtb3phcnQ0K3N0YWdlaG91c2VfTVYyX204ABAAAAA=
  >
  <PRESET `mozart4+stagehouse_MV2_m8+42`
    lFVBRu9e7f4IAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAAAAAACgAAAAAAAAAQAAAAAAAAACAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAAgAAAABAAAAAAAAAAIAAAAAAAAA
    BQAAAAAAAAAKAAAAAAAAABEAAAAAAAAAIgAAAAAAAABBAAAAAAAAAIIAAAAAAAAAqAAAAAAAAAAAABAA776t3g3wrd78qfE+qfFSPtV46T0AAAA+CgCAPgMrRz8AAIA/
    Gy8dPwAAgD+sHFo/PQrXPlyPQj4K1yM+w/WoPq5H4T2PwvU8YOVQP4lBAD8K1yM8AAAAAD0KNz8AAAAAbxKDPbbzvT6TGAQ+pHBdP9JNYj/wp0Y++6nxPQAAAD/RIhs/
    AAAAPwAAAD+sHBo/NV4aPxBYuT7Zzrc+K4c2PzEILD9euik/RGVmYXVsdABtb3phcnQ0K3N0YWdlaG91c2VfTVYyX204KzQyABAAAAA=
  >
  <PRESET `mozart4+stagehouse_MV2_m8+42-1`
    lFVBRu9e7f4IAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAAAAAACgAAAAAAAAAQAAAAAAAAACAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAAgAAAABAAAAAAAAAAIAAAAAAAAA
    BQAAAAAAAAAKAAAAAAAAABEAAAAAAAAAIgAAAAAAAABBAAAAAAAAAIIAAAAAAAAAqAAAAAAAAAAAABAA776t3g3wrd78qfE+qfFSPtV46T0AAAA+DQCAPgMrRz8AAIA/
    Gy8dPwAAgD+sHFo/PQrXPlyPQj4K1yM+w/WoPq5H4T2PwvU8YOVQP4lBAD8K1yM8AAAAAD0KNz8AAAAAbxKDPbbzvT6TGAQ+pHBdP9JNYj/wp0Y++6nxPZZDaz/ufD8/
    AAAAPwAAAD8AAAA/AAAAPxBYuT7Zzrc+K4c2PzEILD9euik/RGVmYXVsdABtb3phcnQ0K3N0YWdlaG91c2VfTVYyX204KzQyLTEAEAAAAA==
  >
  <PRESET `mozart4+stagehouse_MV2_m8+42-2`
    lFVBRu9e7f4IAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAAAAAACgAAAAAAAAAQAAAAAAAAACAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAAgAAAABAAAAAAAAAAIAAAAAAAAA
    BQAAAAAAAAAKAAAAAAAAABEAAAAAAAAAIgAAAAAAAABBAAAAAAAAAIIAAAAAAAAAqAAAAAAAAAAAABAA776t3g3wrd78qfE+qfFSPtV46T0AAAA+DQCAPgMrRz8AAIA/
    Gy8dPwAAgD+sHFo/PQrXPlyPQj4K1yM+w/WoPq5H4T2PwvU8YOVQP4lBAD8K1yM8AAAAAD0KNz8AAAAAbxKDPbbzvT6TGAQ+pHBdP9JNYj/wp0Y++6nxPZZDaz/ufD8/
    AACAPwAAAAAAAIA/AACAPxBYuT7Zzrc+K4c2PzEILD9euik/RGVmYXVsdABtb3phcnQ0K3N0YWdlaG91c2VfTVYyX204KzQyLTIAEAAAAA==
  >
  <PRESET `mozart4+stagehouse_MV2_m8+42-3`
    lFVBRu9e7f4IAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAAAAAACgAAAAAAAAAQAAAAAAAAACAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAAgAAAABAAAAAAAAAAIAAAAAAAAA
    BQAAAAAAAAAKAAAAAAAAABEAAAAAAAAAIgAAAAAAAABBAAAAAAAAAIIAAAAAAAAAqAAAAAAAAAAAABAA776t3g3wrd78qfE+qfFSPtV46T0AAAA+DgCAPgMrRz8AAIA/
    Gy8dPwAAgD+sHFo/PQrXPlyPQj4K1yM+w/WoPq5H4T2PwvU8YOVQP4lBAD8K1yM8AAAAAD0KNz8AAAAAbxKDPbbzvT6TGAQ+pHBdP9JNYj/wp0Y++6nxPQAAAADufD8/
    AACAPwAAAAAAAIA/AACAPxBYuT7Zzrc+K4c2PzEILD9euik/RGVmYXVsdABtb3phcnQ0K3N0YWdlaG91c2VfTVYyX204KzQyLTMAEAAAAA==
  >
  <PRESET `mozart4+stagehouse_MV2_m8+42-4`
    lFVBRu9e7f4IAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAAAAAACgAAAAAAAAAQAAAAAAAAACAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAAgAAAABAAAAAAAAAAIAAAAAAAAA
    BQAAAAAAAAAKAAAAAAAAABEAAAAAAAAAIgAAAAAAAABBAAAAAAAAAIIAAAAAAAAAqAAAAAAAAAAAABAA776t3g3wrd78qfE+qfFSPtV46T0AAAA+DgCAPgMrRz8AAIA/
    Gy8dPwAAgD+sHFo/PQrXPlyPQj4K1yM+w/WoPq5H4T2PwvU8YOVQP4lBAD8K1yM8AAAAAD0KNz8AAAAAbxKDPbbzvT6TGAQ+pHBdP9JNYj/wp0Y++6nxPQAAAABWDk0/
    AAAAPwAAAD8AAAA/AAAAPxBYuT7Zzrc+K4c2PzEILD9euik/RGVmYXVsdABtb3phcnQ0K3N0YWdlaG91c2VfTVYyX204KzQyLTQAEAAAAA==
  >
  <PRESET `fett`
    lFVBRu9e7f4IAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAAAAAACgAAAAAAAAARAAAAAAAAACIAAAAAAAAAQQAAAAAAAACCAAAAAAAAAAgAAAABAAAAAAAAAAIAAAAAAAAA
    BQAAAAAAAAAKAAAAAAAAABEAAAAAAAAAIgAAAAAAAABBAAAAAAAAAIIAAAAAAAAAqAAAAAAAAAAAABAA776t3g3wrd78qfE+qfFSPtV46T0AAAA+DwCAPsP1CD8AAIA/
    Gy8dPwAAgD+e76c+PQrXPlyPQj4K1yM+w/WoPq5H4T2PwvU8K4fWPolBAD8K1yM8AAAAAD0KNz8AAAAAbxKDPbbzvT6TGAQ+rBxaP28Sgz7wp0Y++6nxPQAAgD8AAIA/
    AACAPwAAAAAAAIA/AAAAABBYuT7Zzrc+K4c2PzEILD9euik/RGVmYXVsdABmZXR0ABAAAAA=
  >
  <PRESET `fett_origG`
    lFVBRu9e7f4IAAAAAQAAAAAAAAACAAAAAAAAAAUAAAAAAAAACgAAAAAAAAARAAAAAAAAACIAAAAAAAAAQQAAAAAAAACCAAAAAAAAAAgAAAABAAAAAAAAAAIAAAAAAAAA
    BQAAAAAAAAAKAAAAAAAAABEAAAAAAAAAIgAAAAAAAABBAAAAAAAAAIIAAAAAAAAAqAAAAAAAAAAAABAA776t3g3wrd78qfE+qfFSPtV46T0AAAA+EACAPsP1CD8AAIA/
    7nw/PwAAgD+e76c+PQrXPlyPQj4K1yM+w/WoPq5H4T2PwvU8K4fWPolBAD8K1yM8AAAAAD0KNz8AAAAAbxKDPbbzvT6TGAQ+rBxaP28Sgz7wp0Y++6nxPQAAgD8AAIA/
    AACAPwAAAAAAAIA/AAAAABBYuT7Zzrc+K4c2PzEILD9euik/RGVmYXVsdABmZXR0X29yaWdHABAAAAA=
  >
>

Changes to zita_uref/zita_ext3uref.dsp.

108
109
110
111
112
113
114
115
116
117
118
119



120
121
122
123
124
125
126
 * + mini delays between dl and ap.
 * ************************
 * version l:
 * RT matching delay lengths
 * G(i)=10^((tdly(i))/SR*(-60/ZE_GUI_T60)/20); //time for tdly(i) samps to decay to -60 dB
 * sounds dense, too even - decay ne me plaîs pas
 * ************************
 * version m:
 * RT matching mean delay length: 
 * tdelz=par(i,M,tdel(i)):>/(M); //mean
   Gz=10^((tdelz)/SR*(-60/ZE_GUI_T60)/20);
   reverbtime(M) = par(i,M,*(Gz*netamp)); 



****************************************************************/

ze = environment{
///step 0: goto effect.lib

maxapdelay(i) = 1<<16 ;
maxtdelay(i) = 1<<16 ;







|




>
>
>







108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
 * + mini delays between dl and ap.
 * ************************
 * version l:
 * RT matching delay lengths
 * G(i)=10^((tdly(i))/SR*(-60/ZE_GUI_T60)/20); //time for tdly(i) samps to decay to -60 dB
 * sounds dense, too even - decay ne me plaîs pas
 * ************************
 * version _m4m:
 * RT matching mean delay length: 
 * tdelz=par(i,M,tdel(i)):>/(M); //mean
   Gz=10^((tdelz)/SR*(-60/ZE_GUI_T60)/20);
   reverbtime(M) = par(i,M,*(Gz*netamp)); 
 * _m8m: display only sliders 1-4 (preset compat.)
 * distance range with quite similar RT60.
 * 
****************************************************************/

ze = environment{
///step 0: goto effect.lib

maxapdelay(i) = 1<<16 ;
maxtdelay(i) = 1<<16 ;
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
;
*/
//*
process = bus(M)
  :directivity_filters(M)
  :zitaCore(M)
  :(ze.reflevel(M),par(i,M,*(if(i<4,GUI_LATEPHS(i+1),1))))
  :cl.mix2wdn(M,GUI_ERMIX,GUI_LATEMIX)
  :ze.lexicon_trick(M)
  :bus(M)
;
//*/
zitaCore(M)=(bus(2*M):>bus(M):
  (ze.fbdelaylines(M)
  :par(i,M,@(GUI_MINIDLY))







|







241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
;
*/
//*
process = bus(M)
  :directivity_filters(M)
  :zitaCore(M)
  :(ze.reflevel(M),par(i,M,*(if(i<4,GUI_LATEPHS(i+1),1))))
  :cl.mix2wdn(M,GUI_ERMIX,(GUI_LATEMIX/*(SIM_GUI_DISTANCE)*/))
  :ze.lexicon_trick(M)
  :bus(M)
;
//*/
zitaCore(M)=(bus(2*M):>bus(M):
  (ze.fbdelaylines(M)
  :par(i,M,@(GUI_MINIDLY))
493
494
495
496
497
498
499


500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525


526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549


550
      out_b=(tmp0*(-360))+(tmp0):abs;
      out_a=(a360*(1-(2*tmp0))):int:%(360);
    };
  };

//----------- End ------------



// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext_core+directivity3.dll (zita_ext_core+directivity3.dsp)(20190215-19:01+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_extdirectivity3.dll (zita_extdirectivity3.dsp)(20190215-19:44+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_extdirectivity3.dll (zita_extdirectivity3.dsp)(20190215-19:46+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3flt.dll (zita_ext3flt.dsp)(20190217-06:14+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref.dll (zita_ext3uref.dsp)(20190221-11:44+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref.dll (zita_ext3uref.dsp)(20190221-11:46+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4_d.dll (zita_ext3uref.dsp)(20190222-08:12:32)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4d.dll (zita_ext3uref.dsp)(20190222-08:51:19)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4d.dll (zita_ext3uref.dsp)(20190222-09:04:50)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4d.dll (zita_ext3uref.dsp)(20190222-09:06:44)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4d.dll (zita_ext3uref.dsp)(20190222-09:09:13)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-10:57:40)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-11:09:13)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-11:09:34)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-11:19:36)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-11:39:51)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f.dll (zita_ext3uref.dsp)(20190222-11:55:20)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4fffffffff.dll (zita_ext3uref.dsp)(20190222-12:00:13)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f-b.dll (zita_ext3uref.dsp)(20190222-14:33:50)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f-b.dll (zita_ext3uref.dsp)(20190222-14:41:56)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f-c.dll (zita_ext3uref.dsp)(20190222-15:01:59)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f-c.dll (zita_ext3uref.dsp)(20190222-15:05:14)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4g.dll (zita_ext3uref.dsp)(20190223-13:44:33)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4g.dll (zita_ext3uref.dsp)(20190223-13:45:30)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4g.dll (zita_ext3uref.dsp)(20190223-14:11:25)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4h.dll (zita_ext3uref.dsp)(20190223-15:35:18)" ; //added by f2w32vst


// // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4i.dll (zita_ext3uref.dsp)(20190223-18:41:41)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4i.dll (zita_ext3uref.dsp)(20190223-19:33:06)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4j.dll (zita_ext3uref.dsp)(20190224-08:12:34)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4j.dll (zita_ext3uref.dsp)(20190224-18:17:10)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4j.dll (zita_ext3uref.dsp)(20190224-18:21:19)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4k.dll (zita_ext3uref.dsp)(20190225-06:26:46)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4k.dll (zita_ext3uref.dsp)(20190225-06:56:07)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4k.dll (zita_ext3uref.dsp)(20190225-07:00:53)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // declare name "zita_ext3uref_tmp1.dll (zita_ext3uref.dsp)(20190225-07:05:49)" ; //added by f2w32vst
// // // // // // // // // // // // // // // declare name "zita_ext3uref_tmp2.dll (zita_ext3uref.dsp)(20190225-07:12:18)" ; //added by f2w32vst
// // // // // // // // // // // // // // declare name "zita_ext3uref_tmp3.dll (zita_ext3uref.dsp)(20190225-08:11:26)" ; //added by f2w32vst
// // // // // // // // // // // // // declare name "zita_ext3uref_tmp4.dll (zita_ext3uref.dsp)(20190225-08:46:00)" ; //added by f2w32vst
// // // // // // // // // // // // declare name "zita_ext3uref_tmp4444444.dll (zita_ext3uref.dsp)(20190225-08:55:50)" ; //added by f2w32vst
// // // // // // // // // // // declare name "zita_ext3uref_tmp555.dll (zita_ext3uref.dsp)(20190225-14:52:24)" ; //added by f2w32vst
// // // // // // // // // // declare name "zita_ext3uref_tmp666.dll (zita_ext3uref.dsp)(20190225-16:57:44)" ; //added by f2w32vst
// // // // // // // // // declare name "zita_ext3uref_tmp777.dll (zita_ext3uref.dsp)(20190225-17:19:07)" ; //added by f2w32vst
// // // // // // // // declare name "zita_ext3uref_tmp888.dll (zita_ext3uref.dsp)(20190225-17:28:42)" ; //added by f2w32vst
// // // // // // // declare name "zita_ext3uref_tmp999.dll (zita_ext3uref.dsp)(20190225-17:43:19)" ; //added by f2w32vst
// // // // // // declare name "zita_ext3uref_m4l.dll (zita_ext3uref.dsp)(20190225-19:00:59)" ; //added by f2w32vst
// // // // // declare name "zita_ext3uref_m4m.dll (zita_ext3uref.dsp)(20190225-19:07:18)" ; //added by f2w32vst
// // // // declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190225-19:11:17)" ; //added by f2w32vst
// // // declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190225-19:14:53)" ; //added by f2w32vst
// // declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190226-08:47:06)" ; //added by f2w32vst
// declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190226-09:14:52)" ; //added by f2w32vst


declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190226-09:17:33)" ; //added by f2w32vst







>
>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<
<
>
>
|
|
|
|
|
|
|
|
|
|
|
|
<
<
|
|
|
|
|
|
|
|
|
|
>
>
|
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528


529
530
531
532
533
534
535
536
537
538
539
540
541
542


543
544
545
546
547
548
549
550
551
552
553
554
555
      out_b=(tmp0*(-360))+(tmp0):abs;
      out_a=(a360*(1-(2*tmp0))):int:%(360);
    };
  };

//----------- End ------------

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext_core+directivity3.dll (zita_ext_core+directivity3.dsp)(20190215-19:01+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_extdirectivity3.dll (zita_extdirectivity3.dsp)(20190215-19:44+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_extdirectivity3.dll (zita_extdirectivity3.dsp)(20190215-19:46+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3flt.dll (zita_ext3flt.dsp)(20190217-06:14+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref.dll (zita_ext3uref.dsp)(20190221-11:44+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref.dll (zita_ext3uref.dsp)(20190221-11:46+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4_d.dll (zita_ext3uref.dsp)(20190222-08:12:32)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4d.dll (zita_ext3uref.dsp)(20190222-08:51:19)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4d.dll (zita_ext3uref.dsp)(20190222-09:04:50)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4d.dll (zita_ext3uref.dsp)(20190222-09:06:44)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4d.dll (zita_ext3uref.dsp)(20190222-09:09:13)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-10:57:40)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-11:09:13)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-11:09:34)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-11:19:36)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-11:39:51)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f.dll (zita_ext3uref.dsp)(20190222-11:55:20)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4fffffffff.dll (zita_ext3uref.dsp)(20190222-12:00:13)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f-b.dll (zita_ext3uref.dsp)(20190222-14:33:50)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f-b.dll (zita_ext3uref.dsp)(20190222-14:41:56)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f-c.dll (zita_ext3uref.dsp)(20190222-15:01:59)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f-c.dll (zita_ext3uref.dsp)(20190222-15:05:14)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4g.dll (zita_ext3uref.dsp)(20190223-13:44:33)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4g.dll (zita_ext3uref.dsp)(20190223-13:45:30)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4g.dll (zita_ext3uref.dsp)(20190223-14:11:25)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4h.dll (zita_ext3uref.dsp)(20190223-15:35:18)" ; //added by f2w32vst


// // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4i.dll (zita_ext3uref.dsp)(20190223-18:41:41)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4i.dll (zita_ext3uref.dsp)(20190223-19:33:06)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4j.dll (zita_ext3uref.dsp)(20190224-08:12:34)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4j.dll (zita_ext3uref.dsp)(20190224-18:17:10)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4j.dll (zita_ext3uref.dsp)(20190224-18:21:19)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4k.dll (zita_ext3uref.dsp)(20190225-06:26:46)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4k.dll (zita_ext3uref.dsp)(20190225-06:56:07)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4k.dll (zita_ext3uref.dsp)(20190225-07:00:53)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_tmp1.dll (zita_ext3uref.dsp)(20190225-07:05:49)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // declare name "zita_ext3uref_tmp2.dll (zita_ext3uref.dsp)(20190225-07:12:18)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // declare name "zita_ext3uref_tmp3.dll (zita_ext3uref.dsp)(20190225-08:11:26)" ; //added by f2w32vst
// // // // // // // // // // // // // // // declare name "zita_ext3uref_tmp4.dll (zita_ext3uref.dsp)(20190225-08:46:00)" ; //added by f2w32vst
// // // // // // // // // // // // // // declare name "zita_ext3uref_tmp4444444.dll (zita_ext3uref.dsp)(20190225-08:55:50)" ; //added by f2w32vst
// // // // // // // // // // // // // declare name "zita_ext3uref_tmp555.dll (zita_ext3uref.dsp)(20190225-14:52:24)" ; //added by f2w32vst


// // // // // // // // // // // // declare name "zita_ext3uref_tmp666.dll (zita_ext3uref.dsp)(20190225-16:57:44)" ; //added by f2w32vst
// // // // // // // // // // // declare name "zita_ext3uref_tmp777.dll (zita_ext3uref.dsp)(20190225-17:19:07)" ; //added by f2w32vst
// // // // // // // // // // declare name "zita_ext3uref_tmp888.dll (zita_ext3uref.dsp)(20190225-17:28:42)" ; //added by f2w32vst
// // // // // // // // // declare name "zita_ext3uref_tmp999.dll (zita_ext3uref.dsp)(20190225-17:43:19)" ; //added by f2w32vst
// // // // // // // // declare name "zita_ext3uref_m4l.dll (zita_ext3uref.dsp)(20190225-19:00:59)" ; //added by f2w32vst
// // // // // // // declare name "zita_ext3uref_m4m.dll (zita_ext3uref.dsp)(20190225-19:07:18)" ; //added by f2w32vst
// // // // // // declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190225-19:11:17)" ; //added by f2w32vst
// // // // // declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190225-19:14:53)" ; //added by f2w32vst
// // // // declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190226-08:47:06)" ; //added by f2w32vst
// // // declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190226-09:14:52)" ; //added by f2w32vst
// // declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190226-09:17:33)" ; //added by f2w32vst
// declare name "zita_ext3uref_tmp.dll (zita_ext3uref.dsp)(20190226-15:13:13)" ; //added by f2w32vst
declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190226-20:53:11)" ; //added by f2w32vst

Added zita_uref/zita_ext3uref_m8m.dsp.





















































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
//FAUST Version 2.13.11

/*** sound design for M=4 ***
 * // Generally modulation amt >>sensitivity<< varies among version. Adjust by hand to compare.
 * ************************
 * version a: was buggy. 
 * ************************
 * version b: very cheap (10%), modulation: 
 * ************************
 * typical: mod depth = 0.02 (max)
 * - mode0(g>=0.65):only aps modulated
 * - mode1(g<0.65):(comb - ap*lfo), both comb and ap modulated but cancel in part (due to opposite direction). 
 * that is: smaller gs (means shorter delays [0,1] by default) have less modulation, depending on GUI_AP_PERCENT value (if 100%, modulation cancels 100% for main delayline, but not for the ap fb loop); 
 * => cancels partly, mainly apdelay varies. Preferd sound for flute.
  apdelay(i)= sim_ddx.reflectiondelay_ms(i)*SR/1000.0*ZE_GUI_APPERCENT
    :min(ze.maxapdelay(i))
    :max(100) 
    *zitaLFO(i)
    ;
  fbdelay(i)=(sim_ddx.reflectiondelay_ms(i)*SR/1000.0)-((ze.g(i)<0.65)*apdelay(i)) 
    :min(ze.maxtdelay(i)-(100)) 
    :max(100)
    ; 
 * ************************
 * version c: 13% cpu @M=4. Sound much more dense, because fdn delay lengths vary. 2nd lfo. Good for drums, orc.
 * ************************
 * * typical: mod depth = 0.003 (max)
  del_ani(i)=(sim_ddx.reflectiondelay_ms(i)*SR/1000.0)
    :min(ze.maxapdelay(i))
    :max(100) 
    *zitaLFO(i+0.5) //+0.33 ??
    ; 
  apdelay(i)=del_ani(i)*ZE_GUI_APPERCENT;
  fbdelay(i)=sim_ddx.reflectiondelay_ms(i)*SR/1000.0*((1-(ze.g(i)<0.65)*ZE_GUI_APPERCENT))
    :min(ze.maxtdelay(i)-(100))
    :max(100)
    *zitaLFO(i)
    ;
 * ************************
 * version d: 10% cpu @M=4. only allpass filters modulated. 
 * I prefer different mod depths as in >>version b<<.
 * ************************
 * * typical: mod depth = 0.07 (max)
 * 
 * ************************ (based on ver d)
 * version e: new arch 1: added mix of ER and LATE -> todo: check with b/c modulation.
 * Don't like the effect
 * 100% backward compatibel -> fossil timeline
 * ************************
 * 
 * ************************ (based on ver d)
 * version f: new arch 2: added mix of ER and LATE, different out tap -> todo: check with b/c modulation.
 * possible to cancel out ER... much better! (fff name results from same magic number created)
 * 100% backward compatibel -> fossil timeline
 * ************************ 
 * 
 * ************************ (based on ver b) (usable)
 * version f-b: +LATEPHS
 * 100% backward compatibel -> fossil timeline
 * ************************ 
 * 
 * ************************ (based on ver c) (more expensive)
 * version f-c: +LATEPHS
 * lfo phase offset 0.33 (0.5 orig -> seems better)
 * 100% backward compatibel -> fossil timeline
 * ************************ 
 * 
 * ************************ (based on ver c) (more expensive)
 * version g: +slope matching based on cl.slope1() ---> für die tonne. 
 * diffent values of g for left and right channels leads to distortion of sound level calculation.
 * not backward compatibel -> fossil timeline (classic.lib bug for slope1 in orig. commit)
 * distance following sounds interresting, but g(0,1) too high
 * exact matching of ap position seems to be overkill 
 * apcoeff(i) = cl.slope1(d,dt1(i),dt2(i))
  with {
    d=sim_ddx.direct_m;
    //mode0, ap_ff=refl.,slope matched to 01st/2nd ap_echo
    //mode1, ap_ff=preecho,slope matched to 01st/2nd ap_echo
    dt1(i)=sim_ddx.reflectiondelay_ms(i)*(1+ZE_GUI_APPERCENT-(ZE_GUI_APPERCENT*mode(i)));  
    dt2(i)=sim_ddx.reflectiondelay_ms(i)*(1+(2*ZE_GUI_APPERCENT)-(ZE_GUI_APPERCENT*mode(i)));
    }; 
 *
 * ************************ (based on ver c) (more expensive)
 * version h: +slope matching based on cl.slope() --> distance matching ok. new presets: mozart,mozart2
 * apcoeff(i) = cl.slope(d,dt(i))
  with {
    d=sim_ddx.direct_m;
    dt(i)=sim_ddx.reflectiondelay_ms(i);  
    };
 * *zitaLFO(i+(0.5))
 * ************************
 * 
 * ************************ (based on ver c) (more expensive)
 * version i: +slope matching based on cl.slope_approx() --> distance matching good. new presets: mozart3-6,orc,flute,etc
 * fbdelay(i)=sim_ddx.reflectiondelay_ms(i)*SR/1000.0*((1-(ze.g(i)<0)*ZE_GUI_APPERCENT)) //<0.65
 * ************************                                        ^
 * 
 * ************************
 * version j: +exact slope matching based on quadratic eq (mode0).
 * switch mode by hand: ZE_GUI_4xAPLENGTH(i) (e.g. manually stage housing pre-echoes)
 * npositive AP_G switches phase pattern from -1 -1 -1 -1 ... to -1 1 1 -1 ...
 * stage housing pre-echoes calculated in spreadsheet
 * preset: mozart4+stagehouse_MV2 (goil)
 * let's call this the original _urban_reflexions_ambience_hall_ algorithm from 2006.
 *
 * ************************
 * version k:
 * + mini delays between dl and ap.
 * ************************
 * version l:
 * RT matching delay lengths
 * G(i)=10^((tdly(i))/SR*(-60/ZE_GUI_T60)/20); //time for tdly(i) samps to decay to -60 dB
 * sounds dense, too even - decay ne me plaîs pas
 * ************************
 * version _m4m:
 * RT matching mean delay length: 
 * tdelz=par(i,M,tdel(i)):>/(M); //mean
   Gz=10^((tdelz)/SR*(-60/ZE_GUI_T60)/20);
   reverbtime(M) = par(i,M,*(Gz*netamp)); 
 * _m8m: display only sliders 1-4 (preset compat.)
 * distance range with quite similar RT60.
 * 
****************************************************************/

ze = environment{
///step 0: goto effect.lib

maxapdelay(i) = 1<<16 ;
maxtdelay(i) = 1<<16 ;
freqs = (ztgui.f1,ztgui.f2); 
durs = (ztgui.t60dc*3/2,ztgui.t60m*3/2);

zitaLFO(i)=sinusi(ZE_GUI_SinusFreqHz,i*0.125)*(ZE_GUI_SinusDepth)+1.0;

///step 1: main loop reverb time
//reverbtime(M) = par(i,M,*(ZE_GUI_MAINFB));
netamp=1/M_exp; //0.5 for M=4; 0.333 for M=8 (N=8 [=2^3] network_gain = 3, for N=4 [=2^2] netgain = 2)
//G(i)=10^((tdel(i))/SR*(-60/ZE_GUI_T60)/20); //time for tdly(i) samps to decay to -60 dB
//reverbtime(M) = par(i,M,*(G(i)*netamp));
tdelz=par(i,M,tdel(i)):>/(M); //mean
Gz=10^((tdelz)/SR*(-60/ZE_GUI_T60)/20);
reverbtime(M) = par(i,M,*(Gz*netamp));

///step 2.0: change delay to fdelay
fbdelaylines(M)=par(i,M,(fdelay(ze.maxtdelay(i),(ze.fbdelay(i):smooth(0.994)))));
///step 2.1: change *g to UI
//mode(i)=((i/2)&1); //00110011
mode2(i)=(((i+1)/2)&1); //01100110
phase(i)=1-(mode2(i)*(ZE_GUI_APG(i)>0)*2); //if APG>0 ap t01= -111-1..., else -1-1-1-1...
g(i)=(apcoeff(i) *phase(i) *ZE_GUI_APG(i):min(0.98):max(-0.98)); 
//if mode0, then g should allways be negative, so t0<0 and t1>0, so that different cancelation with filtered directsignal can be achieved
//apcoeff(i) = select2(mode(i),0.71,0.5); 
apcoeff(i) = apg_q
  with {
    //slope=cl.slope_approx(d,dt(i),(dt(i)*ZE_GUI_APPERCENT)); //approximation
    slope=cl.slope1(d,dt(i),(dt(i)*(1+ZE_GUI_APPERCENT))); //exact matching
    d=sim_ddx.direct_m;
    dt(i)=sim_ddx.reflectiondelay_ms(i);  
    apg_q=((slope/2)-(sqrt((slope^2/4)+1)))*(-1); //resolve x=-g/1-g² to g.
    }; 

allpass_combs(M)=par(i,M,(allpass_fcomb(
  ze.maxapdelay(i),
  (ze.apdelay(i):smooth(0.994)),
  g(i)
  ))) with {
    allpass_fcomb(maxdel,N,aN) = (+ <: fdelay(maxdel,N-1),*(aN)) ~ *(-aN) : mem,_ : + ;//filters.lib
    //                                                      ^ feedforward path
    /* choose decay law
    //decaylaw(i) = if(ZE_GUI_DECAYLAW==1, combfb(i)*ZE_GUI_APG(i),
    //              if(ZE_GUI_DECAYLAW==2, apfb(i)*ZE_GUI_APG(i), 
    //               ZE_GUI_APG(i))) ; //0==none
    //combfb(i) = (sim_ddx.betrag(i)/(sim_ddx.betrag(i)+(ze.apdelay(i)/SR*SPEED_OF_SOUND)));
    //apfb(i) = sqrt(1-combfb(i)); */
    }; 
///step 3: change delay(i) lengths to reflect SIM
  ZE_GUI_4xAPLENGTH(i)=if(i<4,ZE_GUI_APLENGTH(i),0.62);
  del(i)=(sim_ddx.reflectiondelay_ms(i)*SR/1000.0):min(ze.maxapdelay(i)):max(100); 
  apdel(i)=del(i)
    *ZE_GUI_APPERCENT //kill on the long run?
    *abs(ZE_GUI_4xAPLENGTH(i))
    ;
  apdelay(i)=apdel(i)
    *zitaLFO(i+(0.5))
    ;
  
  modeswitch(i)=1-((ZE_GUI_4xAPLENGTH(i)<0)*ZE_GUI_APPERCENT*abs(ZE_GUI_4xAPLENGTH(i))); //+M sliders. 
  fbdel(i)=apdel(i)*modeswitch(i);
  fbdelay(i)=fbdel(i)
    *zitaLFO(i)
    ; 
    
  tdel(i)=apdel(i)+fbdel(i)+GUI_MINIDLY; //total delay in samples

///step 4: reflection level
reflevel(N) = par(i,N,*(reflectionlevel(i)));
reflectionlevel(i)=sim_ddx.reflectionlevel(i)*(ZE_GUI_ERCOMPRESSION) + makeup;
 makeup = 1 - ZE_GUI_ERCOMPRESSION;

///step 5: apply the lexicon trick
lexicon_trick(N)=bus(N)<:bus(2*N):(reva,refb):>bus(N)
with {
  reva=bus(N):par(i,N,*(ZE_GUI_OUTLEVEL(1)));
  refb=bus(N):par(i,N,@(ZE_GUI_OUTDELA(2))):par(i,N,*(ZE_GUI_OUTLEVEL(2)));
  };

};


//-------- libraries ------------
/*
ma = library("maths.lib");
ba = library("basics.lib");
de = library("delays.lib");
ro = library("routes.lib");
si = library("signals.lib");
fi = library("filters.lib");
*/

// (/usr/local/lib/faust) effect.lib (old): changed zita_rev_fdn() to be more accessable using environment.
import("classic6.lib");//cl environment inline for easier bash processing. imports old libraries.
import("zita_ref1.lib");
import("zita_ref1.gui");
//import("zita_ref1c.defaults");
import("presets/adef.drums-refl0");

//-------- process ------------
M=8;//2^(M_exp); faust 0.9,58-->alarm clock. (never finishes)
M_exp=3;

/*
 process = //par(i,M,ze.phase(i))
  //,par(i,M,sim_ddx.betrag(i)),sim_ddx.direct_m
  //,par(i,M,sim_ddx.reflectiondelay_ms(i))
  //,par(i,M,ze.G(i))
  par(i,M,if(i<4,GUI_LATEPHS(i+1),0.62))
  //,par(i,M,ze.g(i))
  //,sim_ddx.L,sim_ddx.B,sim_ddx.H,sim_ddx.Ls,sim_ddx.Bs,sim_ddx.Hs,sim_ddx.Lr,sim_ddx.Br,sim_ddx.Hr
  //,par(i,M,((ze.g(i)<0.65)*(1-ZE_GUI_APPERCENT)))
  //,par(i,M,ze.fbdelay(i)),par(i,M,ze.apdelay(i))
;
*/
//*
process = bus(M)
  :directivity_filters(M)
  :zitaCore(M)
  :(ze.reflevel(M),par(i,M,*(if(i<4,GUI_LATEPHS(i+1),1))))
  :cl.mix2wdn(M,GUI_ERMIX,(GUI_LATEMIX/*(SIM_GUI_DISTANCE)*/))
  :ze.lexicon_trick(M)
  :bus(M)
;
//*/
zitaCore(M)=(bus(2*M):>bus(M):
  (ze.fbdelaylines(M)
  :par(i,M,@(GUI_MINIDLY))
  <:(ze.allpass_combs(M),bus(M))))
      ~(
      (bus(M),par(i,M,!)):
      zt.feedbackmatrix(M)<:
      par(i,2*M,_):(ze.reverbtime(M)
        ,zt[tdelay(i)=ze.tdel(i);].delayfilters(M,ze.freqs,ze.durs))
        :cl.mixwdn(M,ZE_GUI_FLTON)//<:bus(2*M)
      );

//-------- basic definitions ------------
SPEED_OF_SOUND=343+(if(M<8,SIM_GUI_ROOM(1),0)); //M=4,wird sonst weggekürzt;
//if (c, then, else) = select2(c, else, then);
bq(a0,a1,a2,b1,b2) =  + ~ ((-1)*conv2(b1, b2)) : conv3(a0, a1, a2) 
	with {
		conv2(c0,c1,x) = c0*x+c1*x';
		conv3(c0,c1,c2,x) = c0*x+c1*x'+c2*x'';
	};
//sinusi(freq,phase)=component("../rdk.lib").rdk.sinusi(freq,phase);
mulib = library("music.lib") ; //osci(freq) now in oscillators.lib     
//no phase(p) argument, so implemented here with rdtable
sinusi(freq,p) = mulib
        [osci(freq,p)	= s1 + d * (s2 - s1)
                        with {
                                phase(freq,p) = freq/float(ml.samplingfreq) : (+ : ml.decimal) ~ _ : +(p) : ml.decimal *(float(ml.tablesize));
                                i = int(phase(freq,p));
                                d = ml.decimal(phase(freq,p));
                                s1 = rdtable(ml.tablesize+1,ml.sinwaveform,i);
                                s2 = rdtable(ml.tablesize+1,ml.sinwaveform,i+1);};
        ]
        .osci(freq,p) ;

//-------- environments ------------
/*
zt = environment {
zita_rev_fdn(f1,f2,t60dc,t60m,fsmax) =
  ((si.bus(2*N) :> allpass_combs(N) : feedbackmatrix(N)) ~
   (delayfilters(N,freqs,durs) : fbdelaylines(N)));//;needed
//with {
  N = 8;

  // Delay-line lengths in seconds:
  apdelays = (0.020346, 0.024421, 0.031604, 0.027333, 0.022904,
              0.029291, 0.013458, 0.019123); // feedforward delays in seconds
  tdelays = ( 0.153129, 0.210389, 0.127837, 0.256891, 0.174713,
              0.192303, 0.125000, 0.219991); // total delays in seconds
  tdelay(i) = floor(0.5 + ma.SR*ba.take(i+1,tdelays)); // samples
  apdelay(i) = floor(0.5 + ma.SR*ba.take(i+1,apdelays));
  fbdelay(i) = tdelay(i) - apdelay(i);
  // NOTE: Since SR is not bounded at compile time, we can't use it to
  // allocate delay lines; hence, the fsmax parameter:
  tdelaymaxfs(i) = floor(0.5 + fsmax*ba.take(i+1,tdelays));
  apdelaymaxfs(i) = floor(0.5 + fsmax*ba.take(i+1,apdelays));
  fbdelaymaxfs(i) = tdelaymaxfs(i) - apdelaymaxfs(i);
  nextpow2(x) = ceil(log(x)/log(2.0));
  maxapdelay(i) = int(2.0^max(1.0,nextpow2(apdelaymaxfs(i))));
  maxfbdelay(i) = int(2.0^max(1.0,nextpow2(fbdelaymaxfs(i))));

  apcoeff(i) = select2(i&1,0.6,-0.6);  // allpass comb-filter coefficient
  allpass_combs(N) =
    par(i,N,(fi.allpass_comb(maxapdelay(i),apdelay(i),apcoeff(i)))); // filters.lib
  fbdelaylines(N) = par(i,N,(de.delay(maxfbdelay(i),(fbdelay(i)))));
  freqs = (f1,f2); durs = (t60dc,t60m);
  delayfilters(N,freqs,durs) = par(i,N,filter(i,freqs,durs));
  feedbackmatrix(N) = ro.hadamard(N);

  staynormal = 10.0^(-20); // let signals decay well below LSB, but not to zero

  special_lowpass(g,f) = si.smooth(p) with {
    // unity-dc-gain lowpass needs gain g at frequency f => quadratic formula:
    p = mbo2 - sqrt(max(0,mbo2*mbo2 - 1.0)); // other solution is unstable
    mbo2 = (1.0 - gs*c)/(1.0 - gs); // NOTE: must ensure |g|<1 (t60m finite)
    gs = g*g;
    c = cos(2.0*ma.PI*f/float(ma.SR));
  };

  filter(i,freqs,durs) = lowshelf_lowpass(i)/sqrt(float(N))+staynormal
  with {
    lowshelf_lowpass(i) = gM*low_shelf1_l(g0/gM,f(1)):special_lowpass(gM,f(2));
    low_shelf1_l(G0,fx,x) = x + (G0-1)*fi.lowpass(1,fx,x); // filters.lib
    g0 = g(0,i);
    gM = g(1,i);
    f(k) = ba.take(k,freqs);
    dur(j) = ba.take(j+1,durs);
    n60(j) = dur(j)*ma.SR; // decay time in samples
    g(j,i) = exp(-3.0*log(10.0)*tdelay(i)/n60(j));
  };
};

ztgui = environment {
	fsmax = 48000.0;
	fdn_group(x) = hgroup("Zita_Rev Internal FDN Reverb [tooltip: ~ Zita_Rev's internal 8x8 Feedback Delay Network (FDN) & Schroeder allpass-comb reverberator.	 See Faust's reverbs.lib for documentation and references]",x);
	t60dc = fdn_group(vslider("[1] Low RT60 [unit:s] [style:knob][style:knob][tooltip: T60 = time (in seconds) to decay 60dB in low-frequency band]",3, 1, 8, 0.1));
	f1 = fdn_group(vslider("[2] LF X [unit:Hz] [style:knob] [scale:log][tooltip: Crossover frequency (Hz) separating low and middle frequencies]",200, 50, 1000, 1));
	t60m = fdn_group(vslider("[3] Mid RT60 [unit:s] [style:knob] [scale:log][tooltip: T60 = time (in seconds) to decay 60dB in middle band]",2, 1, 8, 0.1));
	f2 = fdn_group(vslider("[4] HF Damping [unit:Hz] [style:knob] [scale:log][tooltip: Frequency (Hz) at which the high-frequency T60 is half the middle-band's T60]",6000, 1500, 0.49*fsmax, 1));
};
*/
sim_ddx = environment {

/*** room model *****************

room <L,B,H> ,(s)ender, (r)eceiver

        front

width  <  B   >
     ^ +------+  ^(Length L)
    42 ¦ (s)  ¦  |
       ¦______¦  | ^
 (left)¦      ¦  | |
       ¦  (r) ¦  | (Distance)
       ¦      ¦  | |
     0 +------+  x x
       0     19                
        rear

*********************************/ 
//simlfo1 = sinusi(GUI_XY_STEP,0)*(GUI_XY_RANGE)+(1)+(GUI_XY_DISP);
//simlfo2 = sinusi(GUI_LR_STEP,0.25)*(GUI_LR_RANGE)+(1)+(GUI_LR_DISP); //for hijacking these widgeds in c++
//gui implementation (zitagui.lib): 
//GUI_ROOM(i)=groupx(hslider("ROOM(%i)",ROOM(i),min,max,step));
L = SIM_GUI_ROOM(1) *(SIM_GUI_RS); //default: SIM_ROOM(1)=42; 
B = SIM_GUI_ROOM(2) *(SIM_GUI_RS); //default: SIM_ROOM(2)=19;
H = SIM_GUI_ROOM(3) *(SIM_GUI_RS); //default: SIM_ROOM(3)=16;
Ls = SIM_GUI_SOURCE(1) *(SIM_GUI_RS);//*(simlfo1); //default: SIM_SOURCE(1)=33; //dummy ctl for c++ hack
Bs = SIM_GUI_SOURCE(2) *(SIM_GUI_RS);//*(simlfo2);// +(GUI_LRAMT)+(GUI_LRDISPLY); //default: SIM_SOURCE(2)=11; 
Hs = SIM_GUI_SOURCE(3);             //default: SIM_SOURCE(3)=3; //sender (stage hight does not change with room size)

Lr = (Ls-1)*(SIM_GUI_DISTANCE); //default: SIM_DISTANCE=0.91; 
Br = (B)*(SIM_GUI_LR);        //default: SIM_LR=0.50;
Hr = SIM_GUI_DESTINATION(3) ; //default: SIM_DESTINATION(3)=1; //receiver (chair hight does not change with room size)

//define a pattern of 8 source image models
ssq(0) = Lr 	, -Br 		, Hr ; //left 
ssq(1) = Lr 	, 2*B-Br 	, Hr ; //right
ssq(2) = Lr 	, -Br 		, 2*H-Hr ; //left + ceiling
ssq(3) = Lr 	, 2*B-Br 	, 2*H-Hr ; //right + ceiling
ssq(4) = 2*L-Lr , -Br 		, Hr ; //left + front
ssq(5) = 2*L-Lr , 2*B-Br 	, Hr ; //right + front
ssq(6) = -Lr , -Br 		, 2*H-Hr ; //left + ceiling + rear
ssq(7) = -Lr , 2*B-Br , 2*H-Hr ; //right + ceiling + rear

vector(i) = ssq(i), (-Ls,-Bs,-Hs) :> bus(3) ; 
//=sqrt((O30-L30)^2+(-P30-M30)^2+(Q30-N30)^2)

betrag(i) = vector(i) : par(i,3,quadrat) :> sqrt ;
 quadrat(x) = x*x ;

direct_m = (Ls-Lr), (Bs-Br), (Hs-Hr) : par(i,3,quadrat) :> sqrt ;
reflectiondelay_ms(i) = ((betrag(i) - direct_m) / SPEED_OF_SOUND) *1000 ;
reflectionlevel(i) = direct_m/(betrag(i));
/*NR.:
* ds=0.099[m/s] (typische v_differenz dir-dx) =~ .033 [s] =~ 1455 samps per second
* typische dx=40ms =~ 1700 samps. => depth =~ 700/1700 =~ 0.41 [maximal]
*/
};

//-----------directivity--------------
directivity_filters(M) = cl.wdn(M,par(j,M,ref_filters(j)),DIR_GUI_DIRECTIVITY_WD):bus(M) ;//:>_,_;
N_BANDS=6;
U_TIME=2048; //1024 +3% CPU
//flt(i,j) = filtercoeff(f(i,j), lookup(SR,i,j):smooth(0.9994), Q(i,j)).peakingEQ ,_	: bq ;
flt(i,j) = peakingEQcoeffs(U_TIME,i,j,GUI_INST) ,_: bq ;
ref_filters(j) = seq(i,N_BANDS,flt(i,j)); 
peakingEQcoeffs(samps,i,j,inst) = aloop ~ bus(6) : (!,bus(5)) 
with {
    n = samps*(i*M+j):int ; //48 different update times
    aloop (count, val1,val2,val3,val4,val5) =
      if(count<(n), count+1, 1), 
      if(count==n, b0/a0, val1),
      if(count==n, b1/a0, val2),
      if(count==n, b2/a0, val3),
      if(count==n, a1/a0, val4),
      if(count==n, a2/a0, val5);
    // common values
    alpha 	= sin(w0)/(2*max(0.001,Q0));
    w0 		= 2*PI*max(0,f0)/Fs;
    Fs 		= SR;
    A  		= 10^(dBgain/40);     		// (for peaking and shelving EQ filters only)
    G  		= sqrt(max(0.00001, dBgain));   // When gain is a linear values (i.e. not in dB)
    b0 =   1 + alpha*A;
    b1 =  -2*cos(w0);
    b2 =   1 - alpha*A;
    a0 =   1 + alpha/A;
    a1 =  -2*cos(w0);
    a2 =   1 - alpha/A;
    
    dBgain = gain(i,j);//lookup(SR/2,i,j);//:smooth(0.999);
    Q0=Q(i,j);
    //f0=f(i,j);
    f0=band(GUI_INST,i);
    band=ffunction(int octaveband(int ,int),"dirr14d.h","dirr14d.h"); //int instrument, int band
    
    /*//fixed:
    f(0,j)=125;
    f(1,j)=250;
    f(2,j)=500;
    f(3,j)=1000;
    f(4,j)=2000;
    f(5,j)=4000; */
    Q(0,j)=1.4;
    Q(1,j)=1.2;
    Q(2,j)=1.4;
    Q(3,j)=1.2;
    Q(4,j)=1.4;
    Q(5,j)=1.2;

    //ffunction
    dirgain_in_band = ffunction(float directivity(int, int),"dirr14d.h","dirr14d.h");//int instrument, int band

    tk(i,j) = (i * 36*19) + rot(alpha360(j),beta180(j)) : int ;
    gain(i,j)=dirgain_in_band(inst,tk(i,j));// :smooth(0.994); => 80% cpu
    
    alpha360(j) = sim_ddx.vector(j) : !, polar_yz
    with {
      alph(y,z) = 57.34 * atan(z/y_) *(-1) +(90) with {
        y_ = abs(y):max(1e-06);
        }; 
      expr0(f1,f2)=(1-(2*(f1)))*(f2)+(360)+(1):int:%(360) ;
      
      polar_yz(y,z) = expr0(y<(0),alph(y,z));
      
      };
      
    beta180(j) = sim_ddx.vector(j) : polar_xy
    with {
      bet(x,y,z) = 57.34 * atan(sqrt((y*y)+(z*z))/x_) with {
        x_ = abs(x):max(1e-06);
        }; 
      expr0(f1,f2)=(1-(2*f1))*f2+(f1*180);
      polar_xy(x,y,z)= expr0(x>(0),bet(x,y,z));
    };
    
    rot(a360,b180) = ((out_a+5)/10* 19) + ((out_b+5)/10) 
    //+(GUI_ROTAMT) //for hijacking these widges in c++
    //+(GUI_ROTDISPLY)
    //+(GUI_ROTSTEP)
    with {
      b_rot=b180+(GUI_DIRECTITY_ROT);
      tmp0=b_rot>(180);
      out_b=(tmp0*(-360))+(tmp0):abs;
      out_a=(a360*(1-(2*tmp0))):int:%(360);
    };
  };

//----------- End ------------

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext_core+directivity3.dll (zita_ext_core+directivity3.dsp)(20190215-19:01+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_extdirectivity3.dll (zita_extdirectivity3.dsp)(20190215-19:44+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_extdirectivity3.dll (zita_extdirectivity3.dsp)(20190215-19:46+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3flt.dll (zita_ext3flt.dsp)(20190217-06:14+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref.dll (zita_ext3uref.dsp)(20190221-11:44+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref.dll (zita_ext3uref.dsp)(20190221-11:46+0100)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4_d.dll (zita_ext3uref.dsp)(20190222-08:12:32)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4d.dll (zita_ext3uref.dsp)(20190222-08:51:19)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4d.dll (zita_ext3uref.dsp)(20190222-09:04:50)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4d.dll (zita_ext3uref.dsp)(20190222-09:06:44)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4d.dll (zita_ext3uref.dsp)(20190222-09:09:13)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-10:57:40)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-11:09:13)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-11:09:34)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-11:19:36)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4e.dll (zita_ext3uref.dsp)(20190222-11:39:51)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f.dll (zita_ext3uref.dsp)(20190222-11:55:20)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4fffffffff.dll (zita_ext3uref.dsp)(20190222-12:00:13)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f-b.dll (zita_ext3uref.dsp)(20190222-14:33:50)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f-b.dll (zita_ext3uref.dsp)(20190222-14:41:56)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f-c.dll (zita_ext3uref.dsp)(20190222-15:01:59)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4f-c.dll (zita_ext3uref.dsp)(20190222-15:05:14)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4g.dll (zita_ext3uref.dsp)(20190223-13:44:33)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4g.dll (zita_ext3uref.dsp)(20190223-13:45:30)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4g.dll (zita_ext3uref.dsp)(20190223-14:11:25)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4h.dll (zita_ext3uref.dsp)(20190223-15:35:18)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4i.dll (zita_ext3uref.dsp)(20190223-18:41:41)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4i.dll (zita_ext3uref.dsp)(20190223-19:33:06)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4j.dll (zita_ext3uref.dsp)(20190224-08:12:34)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4j.dll (zita_ext3uref.dsp)(20190224-18:17:10)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4j.dll (zita_ext3uref.dsp)(20190224-18:21:19)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4k.dll (zita_ext3uref.dsp)(20190225-06:26:46)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4k.dll (zita_ext3uref.dsp)(20190225-06:56:07)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // // declare name "zita_ext3uref_m4k.dll (zita_ext3uref.dsp)(20190225-07:00:53)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // // declare name "zita_ext3uref_tmp1.dll (zita_ext3uref.dsp)(20190225-07:05:49)" ; //added by f2w32vst
// // // // // // // // // // // // // // // // declare name "zita_ext3uref_tmp2.dll (zita_ext3uref.dsp)(20190225-07:12:18)" ; //added by f2w32vst
// // // // // // // // // // // // // // // declare name "zita_ext3uref_tmp3.dll (zita_ext3uref.dsp)(20190225-08:11:26)" ; //added by f2w32vst
// // // // // // // // // // // // // // declare name "zita_ext3uref_tmp4.dll (zita_ext3uref.dsp)(20190225-08:46:00)" ; //added by f2w32vst
// // // // // // // // // // // // // declare name "zita_ext3uref_tmp4444444.dll (zita_ext3uref.dsp)(20190225-08:55:50)" ; //added by f2w32vst
// // // // // // // // // // // // declare name "zita_ext3uref_tmp555.dll (zita_ext3uref.dsp)(20190225-14:52:24)" ; //added by f2w32vst
// // // // // // // // // // // declare name "zita_ext3uref_tmp666.dll (zita_ext3uref.dsp)(20190225-16:57:44)" ; //added by f2w32vst
// // // // // // // // // // declare name "zita_ext3uref_tmp777.dll (zita_ext3uref.dsp)(20190225-17:19:07)" ; //added by f2w32vst
// // // // // // // // // declare name "zita_ext3uref_tmp888.dll (zita_ext3uref.dsp)(20190225-17:28:42)" ; //added by f2w32vst
// // // // // // // // declare name "zita_ext3uref_tmp999.dll (zita_ext3uref.dsp)(20190225-17:43:19)" ; //added by f2w32vst
// // // // // // // declare name "zita_ext3uref_m4l.dll (zita_ext3uref.dsp)(20190225-19:00:59)" ; //added by f2w32vst
// // // // // // declare name "zita_ext3uref_m4m.dll (zita_ext3uref.dsp)(20190225-19:07:18)" ; //added by f2w32vst
// // // // // declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190225-19:11:17)" ; //added by f2w32vst
// // // // declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190225-19:14:53)" ; //added by f2w32vst
// // // declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190226-08:47:06)" ; //added by f2w32vst
// // declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190226-09:14:52)" ; //added by f2w32vst
// declare name "zita_ext3uref_m8m.dll (zita_ext3uref.dsp)(20190226-09:17:33)" ; //added by f2w32vst
declare name "zita_ext3uref_tmp.dll (zita_ext3uref.dsp)(20190226-15:13:13)" ; //added by f2w32vst