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
|
#ifndef UDO_WAVETABLES
#define UDO_WAVETABLES ##
/*
Standard regular wave function tables
This file is part of the SONICS UDO collection by Richard Knight 2021, 2023
License: GPL-2.0-or-later
http://1bpm.net
*/
ipoints = 8192
gifnSine ftgen 0, 0, ipoints, 10, 1
gifnSquare ftgen 0, 0, ipoints, 10, 1, 0 , .33, 0, .2 , 0, .14, 0 , .11, 0, .09
gifnSaw ftgen 0, 0, ipoints, 10, 0, .2, 0, .4, 0, .6, 0, .8, 0, 1, 0, .8, 0, .6, 0, .4, 0, .2
gifnPulse ftgen 0, 0, ipoints, 10, 1, 1, 1, 1, 0.7, 0.5, 0.3, 0.1
gifnTriangle ftgen 0, 0, ipoints, 9, 1, 1, 0, 3, 0.333, 180, 5, 0.2, 0, 7, 0.143, 180, 9, 0.111, 0
gifnCosine ftgen 0, 0, ipoints, 9, 1, 1, 90
gifnHalfSine ftgen 0, 0, 2048, 9, 0.5, 1, 0
gifnSigmoid ftgen 0, 0, 257, 9, .5, 1, 270
gifnHanning ftgen 0, 0, 2048, 20, 2
gifnHamming ftgen 0, 0, 2048, 20, 1, 1
giwavetables[] fillarray gifnSine, gifnSquare, gifnSaw, gifnPulse, gifnCosine, gifnTriangle ;, gifnHalfSine, gifnSigmoid
gSwavetables[] fillarray "Sine", "Square", "Saw", "Pulse", "Cosine", "Triangle" ;, "Half sine", "Sigmoid"
opcode wavetable_random, i, 0
xout giwavetables[int(random(0, lenarray(giwavetables)-1))]
endop
#end
|