aboutsummaryrefslogtreecommitdiff
path: root/fmdriver/ppz8-sinctable.inc
blob: 9a6cf4f92d047129cbefc212394ca0dfdb1bc4cc (plain)
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
// reference: fluidsynth src/rvoice/fluid_rvoice_dsp.c
// i_shifted = j - 3.5 + (255-i)/256;
// v = sinc(PI*i_shifted);
// v *= 0.5*(1.0 + cos(2PI * i_shifted / 7));
// ppz8_sinctable[i][j] = round(sinc * ((1<<15)-1));

static const int16_t ppz8_sinctable[256][7] = {
  {  778, -4227, 19656, 19998, -4273,   792,     0, },
  {  771, -4203, 19485, 20168, -4295,   799,     0, },
  {  764, -4179, 19313, 20337, -4317,   806,     0, },
  {  757, -4154, 19141, 20507, -4338,   813,     0, },
  {  750, -4129, 18968, 20675, -4358,   819,     0, },
  {  742, -4103, 18795, 20843, -4378,   826,     0, },
  {  735, -4077, 18622, 21011, -4397,   832,     0, },
  {  728, -4051, 18449, 21178, -4416,   838,    -1, },
  {  720, -4023, 18275, 21344, -4434,   844,    -1, },
  {  712, -3996, 18101, 21510, -4452,   850,    -1, },
  {  705, -3968, 17926, 21676, -4469,   856,    -1, },
  {  697, -3940, 17752, 21840, -4485,   862,    -1, },
  {  689, -3911, 17577, 22004, -4500,   868,    -2, },
  {  682, -3881, 17402, 22168, -4515,   873,    -2, },
  {  674, -3852, 17227, 22330, -4530,   879,    -2, },
  {  666, -3822, 17051, 22492, -4543,   884,    -2, },
  {  658, -3791, 16876, 22653, -4556,   889,    -3, },
  {  650, -3761, 16700, 22814, -4568,   894,    -3, },
  {  642, -3730, 16524, 22974, -4580,   899,    -3, },
  {  634, -3698, 16349, 23133, -4591,   904,    -4, },
  {  626, -3666, 16173, 23291, -4601,   909,    -4, },
  {  618, -3634, 15997, 23448, -4610,   913,    -4, },
  {  610, -3602, 15820, 23605, -4619,   918,    -5, },
  {  602, -3569, 15644, 23761, -4626,   922,    -5, },
  {  594, -3536, 15468, 23916, -4634,   926,    -6, },
  {  586, -3503, 15292, 24070, -4640,   930,    -6, },
  {  578, -3469, 15116, 24223, -4645,   933,    -7, },
  {  570, -3435, 14940, 24375, -4650,   937,    -7, },
  {  562, -3401, 14764, 24527, -4654,   940,    -7, },
  {  554, -3366, 14588, 24677, -4657,   943,    -8, },
  {  546, -3332, 14412, 24827, -4660,   946,    -8, },
  {  538, -3297, 14236, 24975, -4661,   949,    -9, },
  {  530, -3262, 14061, 25123, -4662,   952,   -10, },
  {  521, -3226, 13885, 25270, -4662,   954,   -10, },
  {  513, -3191, 13710, 25415, -4661,   957,   -11, },
  {  505, -3155, 13534, 25560, -4659,   959,   -11, },
  {  497, -3119, 13359, 25703, -4657,   961,   -12, },
  {  489, -3083, 13185, 25846, -4653,   963,   -12, },
  {  481, -3047, 13010, 25987, -4649,   964,   -13, },
  {  473, -3010, 12836, 26127, -4643,   965,   -14, },
  {  465, -2974, 12662, 26267, -4637,   966,   -14, },
  {  457, -2937, 12488, 26405, -4630,   967,   -15, },
  {  449, -2900, 12314, 26542, -4622,   968,   -15, },
  {  442, -2863, 12141, 26677, -4613,   968,   -16, },
  {  434, -2826, 11968, 26812, -4603,   969,   -17, },
  {  426, -2789, 11795, 26946, -4592,   969,   -17, },
  {  418, -2751, 11623, 27078, -4581,   969,   -18, },
  {  410, -2714, 11451, 27209, -4568,   968,   -18, },
  {  403, -2676, 11279, 27339, -4554,   967,   -19, },
  {  395, -2638, 11108, 27467, -4540,   967,   -20, },
  {  387, -2601, 10937, 27595, -4524,   965,   -20, },
  {  380, -2563, 10767, 27721, -4508,   964,   -21, },
  {  372, -2525, 10597, 27846, -4490,   962,   -22, },
  {  365, -2487, 10428, 27969, -4472,   961,   -22, },
  {  357, -2449, 10259, 28092, -4452,   958,   -23, },
  {  350, -2411, 10090, 28213, -4431,   956,   -24, },
  {  343, -2373,  9922, 28332, -4410,   953,   -24, },
  {  335, -2335,  9755, 28450, -4387,   951,   -25, },
  {  328, -2297,  9588, 28567, -4364,   947,   -25, },
  {  321, -2259,  9421, 28683, -4339,   944,   -26, },
  {  314, -2221,  9255, 28797, -4313,   940,   -27, },
  {  307, -2183,  9090, 28910, -4287,   936,   -27, },
  {  300, -2145,  8925, 29021, -4259,   932,   -28, },
  {  293, -2107,  8761, 29131, -4230,   928,   -28, },
  {  286, -2069,  8597, 29239, -4200,   923,   -29, },
  {  279, -2031,  8434, 29346, -4169,   918,   -30, },
  {  272, -1994,  8272, 29452, -4137,   913,   -30, },
  {  265, -1956,  8110, 29556, -4104,   907,   -31, },
  {  259, -1918,  7949, 29659, -4070,   901,   -31, },
  {  252, -1880,  7789, 29760, -4034,   895,   -32, },
  {  246, -1843,  7629, 29859, -3998,   889,   -32, },
  {  239, -1805,  7470, 29957, -3961,   882,   -33, },
  {  233, -1768,  7312, 30054, -3922,   875,   -33, },
  {  226, -1731,  7154, 30149, -3882,   868,   -33, },
  {  220, -1693,  6998, 30243, -3841,   860,   -34, },
  {  214, -1656,  6841, 30334, -3799,   852,   -34, },
  {  208, -1619,  6686, 30425, -3756,   844,   -35, },
  {  202, -1582,  6532, 30514, -3712,   836,   -35, },
  {  196, -1546,  6378, 30601, -3667,   827,   -35, },
  {  190, -1509,  6225, 30686, -3620,   818,   -36, },
  {  184, -1472,  6073, 30770, -3572,   808,   -36, },
  {  178, -1436,  5921, 30853, -3524,   798,   -36, },
  {  173, -1400,  5771, 30933, -3474,   788,   -36, },
  {  167, -1364,  5621, 31013, -3422,   778,   -36, },
  {  162, -1328,  5472, 31090, -3370,   767,   -37, },
  {  156, -1292,  5324, 31166, -3317,   756,   -37, },
  {  151, -1257,  5177, 31240, -3262,   745,   -37, },
  {  146, -1221,  5031, 31312, -3206,   734,   -37, },
  {  141, -1186,  4885, 31383, -3149,   722,   -37, },
  {  135, -1151,  4741, 31452, -3091,   709,   -37, },
  {  130, -1116,  4597, 31520, -3032,   697,   -37, },
  {  125, -1082,  4455, 31585, -2972,   684,   -37, },
  {  121, -1047,  4313, 31649, -2910,   671,   -36, },
  {  116, -1013,  4172, 31712, -2847,   657,   -36, },
  {  111,  -979,  4032, 31772, -2783,   643,   -36, },
  {  106,  -945,  3894, 31831, -2718,   629,   -36, },
  {  102,  -912,  3756, 31888, -2651,   614,   -36, },
  {   97,  -878,  3619, 31943, -2584,   600,   -35, },
  {   93,  -845,  3483, 31997, -2515,   584,   -35, },
  {   89,  -812,  3348, 32049, -2445,   569,   -34, },
  {   84,  -780,  3214, 32099, -2374,   553,   -34, },
  {   80,  -747,  3081, 32147, -2301,   537,   -33, },
  {   76,  -715,  2949, 32193, -2228,   520,   -33, },
  {   72,  -683,  2818, 32238, -2153,   503,   -32, },
  {   68,  -651,  2688, 32281, -2077,   486,   -31, },
  {   65,  -620,  2559, 32322, -2000,   469,   -31, },
  {   61,  -589,  2431, 32362, -1922,   451,   -30, },
  {   57,  -558,  2305, 32399, -1842,   433,   -29, },
  {   54,  -527,  2179, 32435, -1761,   414,   -28, },
  {   50,  -497,  2054, 32469, -1679,   395,   -27, },
  {   47,  -467,  1931, 32501, -1596,   376,   -26, },
  {   43,  -437,  1808, 32531, -1512,   357,   -25, },
  {   40,  -408,  1687, 32560, -1426,   337,   -24, },
  {   37,  -378,  1567, 32586, -1339,   317,   -23, },
  {   34,  -349,  1447, 32611, -1251,   296,   -22, },
  {   31,  -321,  1329, 32634, -1162,   275,   -20, },
  {   28,  -292,  1212, 32655, -1072,   254,   -19, },
  {   25,  -264,  1096, 32675,  -980,   233,   -18, },
  {   22,  -236,   982, 32692,  -888,   211,   -16, },
  {   19,  -209,   868, 32708,  -794,   189,   -15, },
  {   17,  -182,   756, 32722,  -699,   166,   -13, },
  {   14,  -155,   644, 32734,  -602,   144,   -11, },
  {   11,  -128,   534, 32744,  -505,   120,   -10, },
  {    9,  -102,   425, 32752,  -406,    97,    -8, },
  {    7,   -76,   317, 32759,  -306,    73,    -6, },
  {    4,   -50,   210, 32763,  -205,    49,    -4, },
  {    2,   -25,   104, 32766,  -103,    25,    -2, },
  {    0,     0,     0, 32767,     0,     0,     0, },
  {   -2,    25,  -103, 32766,   104,   -25,     2, },
  {   -4,    49,  -205, 32763,   210,   -50,     4, },
  {   -6,    73,  -306, 32759,   317,   -76,     7, },
  {   -8,    97,  -406, 32752,   425,  -102,     9, },
  {  -10,   120,  -505, 32744,   534,  -128,    11, },
  {  -11,   144,  -602, 32734,   644,  -155,    14, },
  {  -13,   166,  -699, 32722,   756,  -182,    17, },
  {  -15,   189,  -794, 32708,   868,  -209,    19, },
  {  -16,   211,  -888, 32692,   982,  -236,    22, },
  {  -18,   233,  -980, 32675,  1096,  -264,    25, },
  {  -19,   254, -1072, 32655,  1212,  -292,    28, },
  {  -20,   275, -1162, 32634,  1329,  -321,    31, },
  {  -22,   296, -1251, 32611,  1447,  -349,    34, },
  {  -23,   317, -1339, 32586,  1567,  -378,    37, },
  {  -24,   337, -1426, 32560,  1687,  -408,    40, },
  {  -25,   357, -1512, 32531,  1808,  -437,    43, },
  {  -26,   376, -1596, 32501,  1931,  -467,    47, },
  {  -27,   395, -1679, 32469,  2054,  -497,    50, },
  {  -28,   414, -1761, 32435,  2179,  -527,    54, },
  {  -29,   433, -1842, 32399,  2305,  -558,    57, },
  {  -30,   451, -1922, 32362,  2431,  -589,    61, },
  {  -31,   469, -2000, 32322,  2559,  -620,    65, },
  {  -31,   486, -2077, 32281,  2688,  -651,    68, },
  {  -32,   503, -2153, 32238,  2818,  -683,    72, },
  {  -33,   520, -2228, 32193,  2949,  -715,    76, },
  {  -33,   537, -2301, 32147,  3081,  -747,    80, },
  {  -34,   553, -2374, 32099,  3214,  -780,    84, },
  {  -34,   569, -2445, 32049,  3348,  -812,    89, },
  {  -35,   584, -2515, 31997,  3483,  -845,    93, },
  {  -35,   600, -2584, 31943,  3619,  -878,    97, },
  {  -36,   614, -2651, 31888,  3756,  -912,   102, },
  {  -36,   629, -2718, 31831,  3894,  -945,   106, },
  {  -36,   643, -2783, 31772,  4032,  -979,   111, },
  {  -36,   657, -2847, 31712,  4172, -1013,   116, },
  {  -36,   671, -2910, 31649,  4313, -1047,   121, },
  {  -37,   684, -2972, 31585,  4455, -1082,   125, },
  {  -37,   697, -3032, 31520,  4597, -1116,   130, },
  {  -37,   709, -3091, 31452,  4741, -1151,   135, },
  {  -37,   722, -3149, 31383,  4885, -1186,   141, },
  {  -37,   734, -3206, 31312,  5031, -1221,   146, },
  {  -37,   745, -3262, 31240,  5177, -1257,   151, },
  {  -37,   756, -3317, 31166,  5324, -1292,   156, },
  {  -37,   767, -3370, 31090,  5472, -1328,   162, },
  {  -36,   778, -3422, 31013,  5621, -1364,   167, },
  {  -36,   788, -3474, 30933,  5771, -1400,   173, },
  {  -36,   798, -3524, 30853,  5921, -1436,   178, },
  {  -36,   808, -3572, 30770,  6073, -1472,   184, },
  {  -36,   818, -3620, 30686,  6225, -1509,   190, },
  {  -35,   827, -3667, 30601,  6378, -1546,   196, },
  {  -35,   836, -3712, 30514,  6532, -1582,   202, },
  {  -35,   844, -3756, 30425,  6686, -1619,   208, },
  {  -34,   852, -3799, 30334,  6841, -1656,   214, },
  {  -34,   860, -3841, 30243,  6998, -1693,   220, },
  {  -33,   868, -3882, 30149,  7154, -1731,   226, },
  {  -33,   875, -3922, 30054,  7312, -1768,   233, },
  {  -33,   882, -3961, 29957,  7470, -1805,   239, },
  {  -32,   889, -3998, 29859,  7629, -1843,   246, },
  {  -32,   895, -4034, 29760,  7789, -1880,   252, },
  {  -31,   901, -4070, 29659,  7949, -1918,   259, },
  {  -31,   907, -4104, 29556,  8110, -1956,   265, },
  {  -30,   913, -4137, 29452,  8272, -1994,   272, },
  {  -30,   918, -4169, 29346,  8434, -2031,   279, },
  {  -29,   923, -4200, 29239,  8597, -2069,   286, },
  {  -28,   928, -4230, 29131,  8761, -2107,   293, },
  {  -28,   932, -4259, 29021,  8925, -2145,   300, },
  {  -27,   936, -4287, 28910,  9090, -2183,   307, },
  {  -27,   940, -4313, 28797,  9255, -2221,   314, },
  {  -26,   944, -4339, 28683,  9421, -2259,   321, },
  {  -25,   947, -4364, 28567,  9588, -2297,   328, },
  {  -25,   951, -4387, 28450,  9755, -2335,   335, },
  {  -24,   953, -4410, 28332,  9922, -2373,   343, },
  {  -24,   956, -4431, 28213, 10090, -2411,   350, },
  {  -23,   958, -4452, 28092, 10259, -2449,   357, },
  {  -22,   961, -4472, 27969, 10428, -2487,   365, },
  {  -22,   962, -4490, 27846, 10597, -2525,   372, },
  {  -21,   964, -4508, 27721, 10767, -2563,   380, },
  {  -20,   965, -4524, 27595, 10937, -2601,   387, },
  {  -20,   967, -4540, 27467, 11108, -2638,   395, },
  {  -19,   967, -4554, 27339, 11279, -2676,   403, },
  {  -18,   968, -4568, 27209, 11451, -2714,   410, },
  {  -18,   969, -4581, 27078, 11623, -2751,   418, },
  {  -17,   969, -4592, 26946, 11795, -2789,   426, },
  {  -17,   969, -4603, 26812, 11968, -2826,   434, },
  {  -16,   968, -4613, 26677, 12141, -2863,   442, },
  {  -15,   968, -4622, 26542, 12314, -2900,   449, },
  {  -15,   967, -4630, 26405, 12488, -2937,   457, },
  {  -14,   966, -4637, 26267, 12662, -2974,   465, },
  {  -14,   965, -4643, 26127, 12836, -3010,   473, },
  {  -13,   964, -4649, 25987, 13010, -3047,   481, },
  {  -12,   963, -4653, 25846, 13185, -3083,   489, },
  {  -12,   961, -4657, 25703, 13359, -3119,   497, },
  {  -11,   959, -4659, 25560, 13534, -3155,   505, },
  {  -11,   957, -4661, 25415, 13710, -3191,   513, },
  {  -10,   954, -4662, 25270, 13885, -3226,   521, },
  {  -10,   952, -4662, 25123, 14061, -3262,   530, },
  {   -9,   949, -4661, 24975, 14236, -3297,   538, },
  {   -8,   946, -4660, 24827, 14412, -3332,   546, },
  {   -8,   943, -4657, 24677, 14588, -3366,   554, },
  {   -7,   940, -4654, 24527, 14764, -3401,   562, },
  {   -7,   937, -4650, 24375, 14940, -3435,   570, },
  {   -7,   933, -4645, 24223, 15116, -3469,   578, },
  {   -6,   930, -4640, 24070, 15292, -3503,   586, },
  {   -6,   926, -4634, 23916, 15468, -3536,   594, },
  {   -5,   922, -4626, 23761, 15644, -3569,   602, },
  {   -5,   918, -4619, 23605, 15820, -3602,   610, },
  {   -4,   913, -4610, 23448, 15997, -3634,   618, },
  {   -4,   909, -4601, 23291, 16173, -3666,   626, },
  {   -4,   904, -4591, 23133, 16349, -3698,   634, },
  {   -3,   899, -4580, 22974, 16524, -3730,   642, },
  {   -3,   894, -4568, 22814, 16700, -3761,   650, },
  {   -3,   889, -4556, 22653, 16876, -3791,   658, },
  {   -2,   884, -4543, 22492, 17051, -3822,   666, },
  {   -2,   879, -4530, 22330, 17227, -3852,   674, },
  {   -2,   873, -4515, 22168, 17402, -3881,   682, },
  {   -2,   868, -4500, 22004, 17577, -3911,   689, },
  {   -1,   862, -4485, 21840, 17752, -3940,   697, },
  {   -1,   856, -4469, 21676, 17926, -3968,   705, },
  {   -1,   850, -4452, 21510, 18101, -3996,   712, },
  {   -1,   844, -4434, 21344, 18275, -4023,   720, },
  {   -1,   838, -4416, 21178, 18449, -4051,   728, },
  {    0,   832, -4397, 21011, 18622, -4077,   735, },
  {    0,   826, -4378, 20843, 18795, -4103,   742, },
  {    0,   819, -4358, 20675, 18968, -4129,   750, },
  {    0,   813, -4338, 20507, 19141, -4154,   757, },
  {    0,   806, -4317, 20337, 19313, -4179,   764, },
  {    0,   799, -4295, 20168, 19485, -4203,   771, },
  {    0,   792, -4273, 19998, 19656, -4227,   778, },
  {    0,   785, -4250, 19827, 19827, -4250,   785, },
};