diff options
Diffstat (limited to 'apps/codecs/libgme/ymtables.h')
-rw-r--r-- | apps/codecs/libgme/ymtables.h | 559 |
1 files changed, 559 insertions, 0 deletions
diff --git a/apps/codecs/libgme/ymtables.h b/apps/codecs/libgme/ymtables.h new file mode 100644 index 0000000000..4e8f62a39b --- /dev/null +++ b/apps/codecs/libgme/ymtables.h | |||
@@ -0,0 +1,559 @@ | |||
1 | #ifndef _EMUTABLES_H_ | ||
2 | #define _EMUTABLES_H_ | ||
3 | |||
4 | /* Precompiled ym2612 tables for use in Rockbox */ | ||
5 | |||
6 | static const int tl_coeff[] ICONST_ATTR = { | ||
7 | 268435455, 267712100, 266990695, 266271234, 265553712, 264838123, 264124462, 263412725, 262702906, 261994999, 261289000, | ||
8 | 260584903, 259882704, 259182396, 258483976, 257787438, 257092777, 256399988, 255709066, 255020006, 254332802, 253647450, | ||
9 | 252963945, 252282282, 251602456, 250924462, 250248294, 249573949, 248901421, 248230705, 247561797, 246894691, 246229383, | ||
10 | 245565867, 244904140, 244244195, 243586029, 242929637, 242275013, 241622154, 240971053, 240321708, 239674112, 239028261, | ||
11 | 238384150, 237741775, 237101131, 236462214, 235825018, 235189539, 234555773, 233923714, 233293359, 232664702, 232037740, | ||
12 | 231412466, 230788878, 230166970, 229546738, 228928178, 228311284, 227696052, 227082479, 226470558, 225860287, 225251660, | ||
13 | 224644674, 224039323, 223435603, 222833510, 222233039, 221634187, 221036948, 220441319, 219847295, 219254871, 218664044, | ||
14 | 218074809, 217487162, 216901098, 216316614, 215733704, 215152366, 214572594, 213994384, 213417732, 212842635, 212269087, | ||
15 | 211697084, 211126623, 210557699, 209990308, 209424446, 208860109, 208297293, 207735993, 207176206, 206617927, 206061153, | ||
16 | 205505879, 204952102, 204399816, 203849019, 203299706, 202751873, 202205517, 201660633, 201117217, 200575266, 200034774, | ||
17 | 199495740, 198958158, 198422024, 197887335, 197354088, 196822277, 196291899, 195762950, 195235427, 194709325, 194184641, | ||
18 | 193661370, 193139510, 192619056, 192100005, 191582352, 191066094, 190551228, 190037748, 189525653, 189014937, 188505598, | ||
19 | 187997631, 187491033, 186985800, 186481928, 185979414, 185478255, 184978446, 184479983, 183982864, 183487085, 182992641, | ||
20 | 182499530, 182007748, 181517291, 181028155, 180540338, 180053835, 179568643, 179084759, 178602178, 178120898, 177640915, | ||
21 | 177162225, 176684825, 176208712, 175733881, 175260330, 174788055, 174317053, 173847320, 173378853, 172911648, 172445702, | ||
22 | 171981012, 171517574, 171055385, 170594441, 170134740, 169676277, 169219049, 168763054, 168308287, 167854746, 167402427, | ||
23 | 166951327, 166501443, 166052770, 165605307, 165159050, 164713995, 164270139, 163827480, 163386013, 162945736, 162506646, | ||
24 | 162068738, 161632011, 161196460, 160762083, 160328877, 159896838, 159465963, 159036250, 158607694, 158180293, 157754044, | ||
25 | 157328943, 156904988, 156482176, 156060502, 155639965, 155220562, 154802288, 154385142, 153969119, 153554218, 153140435, | ||
26 | 152727766, 152316210, 151905763, 151496422, 151088184, 150681046, 150275005, 149870058, 149466203, 149063435, 148661753, | ||
27 | 148261154, 147861634, 147463190, 147065821, 146669522, 146274291, 145880125, 145487021, 145094976, 144703988, 144314054, | ||
28 | 143925170, 143537334, 143150543, 142764795, 142380086, 141996414, 141613775, 141232168, 140851589, 140472035, 140093505, | ||
29 | 139715994, 139339501, 138964022, 138589555, 138216097, 137843646, 137472198, 137101751, 136732302, 136363849, 135996388, | ||
30 | 135629918, 135264436, 134899938, 134536423, 134173887, 133812328, 133451743, 133092130, 132733486, 132375808, 132019095, | ||
31 | 131663342, 131308548, 130954711, 130601826, 130249893, 129898908, 129548869, 129199773, 128851618, 128504401, 128158119, | ||
32 | 127812771, 127468353, 127124864, 126782300, 126440659, 126099939, 125760137, 125421250, 125083277, 124746214, 124410060, | ||
33 | 124074812, 123740467, 123407023, 123074477, 122742828, 122412072, 122082208, 121753232, 121425143, 121097939, 120771615, | ||
34 | 120446172, 120121605, 119797912, 119475092, 119153142, 118832060, 118511843, 118192488, 117873994, 117556359, 117239579, | ||
35 | 116923653, 116608578, 116294353, 115980974, 115668439, 115356747, 115045894, 114735880, 114426700, 114118354, 113810839, | ||
36 | 113504152, 113198292, 112893256, 112589042, 112285648, 111983071, 111681310, 111380362, 111080225, 110780896, 110482375, | ||
37 | 110184657, 109887742, 109591627, 109296310, 109001789, 108708061, 108415125, 108122978, 107831619, 107541044, 107251253, | ||
38 | 106962243, 106674011, 106386556, 106099876, 105813968, 105528830, 105244461, 104960859, 104678020, 104395944, 104114628, | ||
39 | 103834069, 103554267, 103275219, 102996923, 102719377, 102442578, 102166526, 101891217, 101616650, 101342823, 101069734, | ||
40 | 100797381, 100525762, 100254875, 99984718, 99715288, 99446585, 99178606, 98911349, 98644812, 98378993, 98113891, | ||
41 | 97849503, 97585828, 97322863, 97060606, 96799057, 96538212, 96278070, 96018629, 95759887, 95501842, 95244493, | ||
42 | 94987837, 94731873, 94476599, 94222012, 93968112, 93714895, 93462361, 93210508, 92959333, 92708835, 92459012, | ||
43 | 92209863, 91961384, 91713575, 91466434, 91219959, 90974149, 90729000, 90484512, 90240683, 89997511, 89754994, | ||
44 | 89513131, 89271920, 89031358, 88791445, 88552178, 88313556, 88075578, 87838240, 87601542, 87365481, 87130057, | ||
45 | 86895267, 86661110, 86427584, 86194687, 85962418, 85730775, 85499756, 85269359, 85039583, 84810427, 84581888, | ||
46 | 84353965, 84126656, 83899959, 83673874, 83448397, 83223528, 82999266, 82775607, 82552551, 82330096, 82108241, | ||
47 | 81886984, 81666322, 81446256, 81226782, 81007900, 80789608, 80571904, 80354786, 80138254, 79922305, 79706938, | ||
48 | 79492151, 79277943, 79064313, 78851258, 78638777, 78426868, 78215531, 78004763, 77794564, 77584930, 77375862, | ||
49 | 77167357, 76959413, 76752031, 76545207, 76338940, 76133229, 75928072, 75723469, 75519416, 75315914, 75112960, | ||
50 | 74910552, 74708690, 74507373, 74306597, 74106363, 73906668, 73707512, 73508892, 73310807, 73113256, 72916237, | ||
51 | 72719749, 72523791, 72328361, 72133457, 71939079, 71745225, 71551892, 71359081, 71166789, 70975016, 70783759, | ||
52 | 70593018, 70402791, 70213076, 70023872, 69835179, 69646994, 69459315, 69272143, 69085475, 68899310, 68713647, | ||
53 | 68528484, 68343820, 68159653, 67975983, 67792808, 67610127, 67427937, 67246239, 67065030, 66884310, 66704076, | ||
54 | 66524328, 66345065, 66166285, 65987986, 65810168, 65632829, 65455968, 65279583, 65103674, 64928239, 64753277, | ||
55 | 64578786, 64404765, 64231213, 64058129, 63885511, 63713359, 63541670, 63370444, 63199679, 63029375, 62859529, | ||
56 | 62690141, 62521210, 62352734, 62184711, 62017142, 61850024, 61683357, 61517138, 61351368, 61186044, 61021166, | ||
57 | 60856731, 60692741, 60529192, 60366083, 60203414, 60041184, 59879391, 59718034, 59557111, 59396622, 59236566, | ||
58 | 59076941, 58917746, 58758980, 58600642, 58442730, 58285245, 58128183, 57971545, 57815329, 57659533, 57504158, | ||
59 | 57349201, 57194662, 57040539, 56886832, 56733539, 56580659, 56428190, 56276133, 56124486, 55973247, 55822415, | ||
60 | 55671990, 55521971, 55372355, 55223143, 55074333, 54925924, 54777915, 54630305, 54483092, 54336276, 54189856, | ||
61 | 54043830, 53898198, 53752959, 53608110, 53463652, 53319583, 53175903, 53032610, 52889702, 52747180, 52605042, | ||
62 | 52463287, 52321914, 52180922, 52040310, 51900076, 51760221, 51620743, 51481640, 51342912, 51204558, 51066577, | ||
63 | 50928968, 50791729, 50654860, 50518360, 50382228, 50246463, 50111064, 49976029, 49841359, 49707051, 49573105, | ||
64 | 49439520, 49306295, 49173429, 49040922, 48908771, 48776976, 48645537, 48514451, 48383719, 48253339, 48123311, | ||
65 | 47993633, 47864304, 47735324, 47606691, 47478405, 47350465, 47222869, 47095618, 46968709, 46842142, 46715916, | ||
66 | 46590031, 46464484, 46339276, 46214406, 46089871, 45965673, 45841809, 45718279, 45595082, 45472216, 45349682, | ||
67 | 45227478, 45105603, 44984057, 44862838, 44741946, 44621380, 44501139, 44381221, 44261627, 44142355, 44023404, | ||
68 | 43904774, 43786464, 43668472, 43550798, 43433442, 43316402, 43199677, 43083266, 42967170, 42851386, 42735914, | ||
69 | 42620753, 42505903, 42391362, 42277130, 42163206, 42049588, 41936277, 41823271, 41710570, 41598172, 41486077, | ||
70 | 41374285, 41262793, 41151602, 41040711, 40930118, 40819823, 40709826, 40600125, 40490720, 40381609, 40272793, | ||
71 | 40164269, 40056039, 39948099, 39840451, 39733093, 39626024, 39519243, 39412751, 39306545, 39200625, 39094991, | ||
72 | 38989642, 38884576, 38779794, 38675294, 38571075, 38467138, 38363480, 38260102, 38157002, 38054180, 37951635, | ||
73 | 37849367, 37747374, 37645656, 37544212, 37443042, 37342144, 37241518, 37141163, 37041078, 36941264, 36841718, | ||
74 | 36742440, 36643430, 36544687, 36446210, 36347998, 36250051, 36152368, 36054948, 35957790, 35860895, 35764260, | ||
75 | 35667886, 35571772, 35475916, 35380319, 35284980, 35189897, 35095071, 35000500, 34906184, 34812122, 34718314, | ||
76 | 34624758, 34531454, 34438402, 34345601, 34253050, 34160748, 34068695, 33976890, 33885332, 33794021, 33702956, | ||
77 | 33612137, 33521562, 33431231, 33341144, 33251299, 33161697, 33072336, 32983216, 32894336, 32805695, 32717294, | ||
78 | 32629130, 32541204, 32453515, 32366063, 32278846, 32191864, 32105116, 32018602, 31932322, 31846273, 31760457, | ||
79 | 31674872, 31589518, 31504393, 31419498, 31334832, 31250394, 31166183, 31082200, 30998442, 30914911, 30831604, | ||
80 | 30748522, 30665664, 30583029, 30500617, 30418426, 30336458, 30254710, 30173183, 30091875, 30010786, 29929916, | ||
81 | 29849263, 29768829, 29688610, 29608608, 29528822, 29449250, 29369893, 29290750, 29211820, 29133103, 29054598, | ||
82 | 28976304, 28898222, 28820350, 28742687, 28665234, 28587990, 28510954, 28434125, 28357503, 28281088, 28204879, | ||
83 | 28128875, 28053076, 27977482, 27902091, 27826903, 27751917, 27677134, 27602552, 27528172, 27453991, 27380011, | ||
84 | 27306230, 27232648, 27159264, 27086078, 27013089, 26940296, 26867700, 26795300, 26723094, 26651083, 26579267, | ||
85 | 26507643, 26436213, 26364975, 26293929, 26223075, 26152412, 26081939, 26011656, 25941562, 25871657, 25801940, | ||
86 | 25732412, 25663071, 25593916, 25524948, 25456166, 25387569, 25319157, 25250929, 25182886, 25115025, 25047348, | ||
87 | 24979852, 24912539, 24845407, 24778456, 24711686, 24645095, 24578684, 24512451, 24446397, 24380522, 24314823, | ||
88 | 24249302, 24183957, 24118789, 24053796, 23988978, 23924335, 23859866, 23795570, 23731448, 23667499, 23603722, | ||
89 | 23540117, 23476683, 23413421, 23350328, 23287406, 23224653, 23162070, 23099655, 23037408, 22975329, 22913417, | ||
90 | 22851673, 22790094, 22728681, 22667434, 22606352, 22545435, 22484682, 22424092, 22363666, 22303402, 22243301, | ||
91 | 22183362, 22123584, 22063968, 22004512, 21945216, 21886080, 21827104, 21768286, 21709627, 21651126, 21592783, | ||
92 | 21534597, 21476567, 21418694, 21360977, 21303416, 21246009, 21188758, 21131660, 21074717, 21017926, 20961289, | ||
93 | 20904805, 20848473, 20792292, 20736263, 20680385, 20624657, 20569080, 20513652, 20458374, 20403245, 20348264, | ||
94 | 20293432, 20238747, 20184209, 20129819, 20075575, 20021477, 19967525, 19913719, 19860057, 19806540, 19753167, | ||
95 | 19699938, 19646853, 19593910, 19541111, 19488453, 19435937, 19383563, 19331330, 19279238, 19227286, 19175474, | ||
96 | 19123802, 19072269, 19020875, 18969619, 18918502, 18867522, 18816680, 18765974, 18715405, 18664973, 18614676, | ||
97 | 18564515, 18514489, 18464598, 18414842, 18365219, 18315730, 18266375, 18217152, 18168062, 18119105, 18070279, | ||
98 | 18021585, 17973022, 17924590, 17876289, 17828118, 17780076, 17732164, 17684381, 17636727, 17589201, 17541803, | ||
99 | 17494533, 17447391, 17400375, 17353486, 17306724, 17260087, 17213577, 17167191, 17120930, 17074795, 17028783, | ||
100 | 16982896, 16937132, 16891491, 16845974, 16800579, 16755306, 16710155, 16665126, 16620219, 16575432, 16530766, | ||
101 | 16486221, 16441795, 16397490, 16353303, 16309236, 16265287, 16221457, 16177745, 16134151, 16090674, 16047314, | ||
102 | 16004072, 15960945, 15917935, 15875041, 15832263, 15789599, 15747051, 15704617, 15662298, 15620093, 15578001, | ||
103 | 15536023, 15494158, 15452406, 15410766, 15369239, 15327823, 15286519, 15245327, 15204245, 15163274, 15122414, | ||
104 | 15081663, 15041023, 15000491, 14960070, 14919757, 14879552, 14839456, 14799468, 14759588, 14719815, 14680150, | ||
105 | 14640591, 14601139, 14561793, 14522554, 14483420, 14444391, 14405468, 14366649, 14327935, 14289326, 14250820, | ||
106 | 14212418, 14174120, 14135925, 14097833, 14059843, 14021956, 13984171, 13946488, 13908906, 13871426, 13834047, | ||
107 | 13796768, 13759590, 13722512, 13685534, 13648655, 13611876, 13575196, 13538615, 13502132, 13465748, 13429462, | ||
108 | 13393273, 13357183, 13321189, 13285292, 13249492, 13213789, 13178182, 13142670, 13107255, 13071934, 13036709, | ||
109 | 13001579, 12966544, 12931603, 12896756, 12862003, 12827344, 12792778, 12758305, 12723925, 12689638, 12655443, | ||
110 | 12621341, 12587330, 12553411, 12519583, 12485846, 12452201, 12418646, 12385181, 12351807, 12318522, 12285327, | ||
111 | 12252222, 12219206, 12186279, 12153440, 12120690, 12088029, 12055455, 12022969, 11990571, 11958260, 11926036, | ||
112 | 11893899, 11861848, 11829884, 11798006, 11766214, 11734507, 11702886, 11671350, 11639900, 11608533, 11577252, | ||
113 | 11546055, 11514941, 11483912, 11452966, 11422104, 11391325, 11360628, 11330015, 11299484, 11269035, 11238668, | ||
114 | 11208384, 11178180, 11148058, 11118018, 11088058, 11058179, 11028380, 10998662, 10969024, 10939466, 10909987, | ||
115 | 10880588, 10851268, 10822027, 10792865, 10763781, 10734776, 10705849, 10677000, 10648228, 10619535, 10590918, | ||
116 | 10562379, 10533916, 10505530, 10477221, 10448988, 10420831, 10392750, 10364745, 10336815, 10308960, 10281180, | ||
117 | 10253476, 10225846, 10198290, 10170809, 10143401, 10116068, 10088808, 10061622, 10034509, 10007468, 9980501, | ||
118 | 9953607, 9926785, 9900035, 9873357, 9846752, 9820217, 9793755, 9767364, 9741043, 9714794, 9688616, | ||
119 | 9662508, 9636470, 9610503, 9584605, 9558778, 9533019, 9507331, 9481711, 9456161, 9430679, 9405266, | ||
120 | 9379922, 9354646, 9329438, 9304298, 9279225, 9254221, 9229283, 9204413, 9179610, 9154874, 9130204, | ||
121 | 9105601, 9081064, 9056593, 9032188, 9007849, 8983576, 8959368, 8935225, 8911147, 8887134, 8863186, | ||
122 | 8839302, 8815483, 8791728, 8768037, 8744409, 8720846, 8697346, 8673909, 8650535, 8627225, 8603977, | ||
123 | 8580792, 8557669, 8534608, 8511610, 8488674, 8465799, 8442987, 8420235, 8397545, 8374916, 8352348, | ||
124 | 8329841, 8307395, 8285009, 8262683, 8240418, 8218212, 8196067, 8173981, 8151954, 8129987, 8108079, | ||
125 | 8086230, 8064440, 8042709, 8021036, 7999422, 7977866, 7956368, 7934928, 7913545, 7892221, 7870954, | ||
126 | 7849744, 7828591, 7807495, 7786456, 7765474, 7744548, 7723679, 7702866, 7682109, 7661408, 7640763, | ||
127 | 7620173, 7599639, 7579160, 7558737, 7538368, 7518055, 7497796, 7477591, 7457441, 7437346, 7417304, | ||
128 | 7397317, 7377383, 7357503, 7337677, 7317904, 7298185, 7278518, 7258905, 7239344, 7219836, 7200381, | ||
129 | 7180978, 7161627, 7142329, 7123082, 7103888, 7084745, 7065654, 7046614, 7027625, 7008688, 6989802, | ||
130 | 6970966, 6952181, 6933447, 6914764, 6896130, 6877547, 6859014, 6840531, 6822098, 6803715, 6785381, | ||
131 | 6767096, 6748861, 6730675, 6712537, 6694449, 6676410, 6658419, 6640476, 6622582, 6604736, 6586938, | ||
132 | 6569188, 6551486, 6533832, 6516225, 6498666, 6481154, 6463689, 6446272, 6428901, 6411577, 6394299, | ||
133 | 6377069, 6359884, 6342746, 6325655, 6308609, 6291609, 6274655, 6257747, 6240884, 6224066, 6207294, | ||
134 | 6190568, 6173886, 6157249, 6140657, 6124110, 6107607, 6091149, 6074735, 6058365, 6042040, 6025758, | ||
135 | 6009521, 5993327, 5977177, 5961070, 5945007, 5928987, 5913010, 5897076, 5881185, 5865337, 5849532, | ||
136 | 5833769, 5818049, 5802371, 5786735, 5771141, 5755590, 5740080, 5724612, 5709186, 5693802, 5678459, | ||
137 | 5663157, 5647896, 5632677, 5617498, 5602361, 5587264, 5572208, 5557193, 5542218, 5527283, 5512389, | ||
138 | 5497534, 5482720, 5467946, 5453211, 5438517, 5423861, 5409246, 5394669, 5380132, 5365635, 5351176, | ||
139 | 5336756, 5322375, 5308033, 5293729, 5279464, 5265237, 5251049, 5236899, 5222787, 5208713, 5194677, | ||
140 | 5180679, 5166719, 5152796, 5138911, 5125063, 5111252, 5097479, 5083743, 5070044, 5056382, 5042756, | ||
141 | 5029167, 5015615, 5002100, 4988620, 4975178, 4961771, 4948400, 4935066, 4921767, 4908505, 4895278, | ||
142 | 4882086, 4868931, 4855810, 4842725, 4829676, 4816661, 4803682, 4790737, 4777827, 4764953, 4752112, | ||
143 | 4739307, 4726536, 4713799, 4701097, 4688429, 4675795, 4663195, 4650629, 4638097, 4625599, 4613134, | ||
144 | 4600703, 4588306, 4575941, 4563611, 4551313, 4539049, 4526817, 4514619, 4502453, 4490320, 4478220, | ||
145 | 4466153, 4454118, 4442115, 4430145, 4418207, 4406301, 4394428, 4382586, 4370776, 4358998, 4347252, | ||
146 | 4335538, 4323855, 4312203, 4300583, 4288994, 4277437, 4265910, 4254415, 4242950, 4231517, 4220114, | ||
147 | 4208742, 4197401, 4186090, 4174810, 4163560, 4152340, 4141151, 4129992, 4118863, 4107764, 4096694, | ||
148 | 4085655, 4074645, 4063665, 4052715, 4041794, 4030903, 4020041, 4009208, 3998404, 3987630, 3976884, | ||
149 | 3966168, 3955480, 3944821, 3934191, 3923590, 3913017, 3902472, 3891956, 3881469, 3871009, 3860578, | ||
150 | 3850175, 3839800, 3829453, 3819133, 3808842, 3798578, 3788342, 3778134, 3767953, 3757799, 3747673, | ||
151 | 3737574, 3727503, 3717458, 3707441, 3697450, 3687487, 3677550, 3667640, 3657757, 3647900, 3638070, | ||
152 | 3628267, 3618490, 3608739, 3599014, 3589316, 3579644, 3569998, 3560378, 3550783, 3541215, 3531673, | ||
153 | 3522156, 3512665, 3503199, 3493759, 3484344, 3474955, 3465591, 3456252, 3446939, 3437650, 3428387, | ||
154 | 3419148, 3409935, 3400746, 3391582, 3382443, 3373328, 3364238, 3355172, 3346131, 3337114, 3328122, | ||
155 | 3319153, 3310209, 3301289, 3292393, 3283521, 3274673, 3265849, 3257048, 3248271, 3239518, 3230789, | ||
156 | 3222083, 3213400, 3204741, 3196105, 3187493, 3178903, 3170337, 3161794, 3153274, 3144777, 3136302, | ||
157 | 3127851, 3119422, 3111016, 3102633, 3094272, 3085934, 3077619, 3069325, 3061054, 3052806, 3044579, | ||
158 | 3036375, 3028193, 3020033, 3011895, 3003779, 2995684, 2987612, 2979561, 2971532, 2963525, 2955539, | ||
159 | 2947575, 2939632, 2931710, 2923810, 2915931, 2908074, 2900237, 2892422, 2884628, 2876855, 2869102, | ||
160 | 2861371, 2853660, 2845971, 2838302, 2830653, 2823025, 2815418, 2807832, 2800265, 2792719, 2785194, | ||
161 | 2777689, 2770203, 2762739, 2755294, 2747869, 2740464, 2733080, 2725715, 2718370, 2711045, 2703739, | ||
162 | 2696453, 2689187, 2681941, 2674714, 2667506, 2660318, 2653149, 2646000, 2638870, 2631759, 2624667, | ||
163 | 2617594, 2610540, 2603506, 2596490, 2589493, 2582515, 2575556, 2568616, 2561694, 2554791, 2547907, | ||
164 | 2541041, 2534194, 2527365, 2520554, 2513762, 2506988, 2500233, 2493495, 2486776, 2480075, 2473392, | ||
165 | 2466727, 2460080, 2453450, 2446839, 2440246, 2433670, 2427112, 2420571, 2414049, 2407544, 2401056, | ||
166 | 2394586, 2388133, 2381698, 2375280, 2368879, 2362496, 2356130, 2349780, 2343448, 2337134, 2330836, | ||
167 | 2324555, 2318291, 2312044, 2305813, 2299600, 2293403, 2287223, 2281060, 2274913, 2268783, 2262669, | ||
168 | 2256572, 2250491, 2244427, 2238379, 2232347, 2226331, 2220332, 2214349, 2208382, 2202431, 2196496, | ||
169 | 2190577, 2184674, 2178787, 2172916, 2167060, 2161221, 2155397, 2149589, 2143796, 2138019, 2132258, | ||
170 | 2126512, 2120782, 2115067, 2109368, 2103683, 2098015, 2092361, 2086723, 2081100, 2075492, 2069899, | ||
171 | 2064321, 2058758, 2053211, 2047678, 2042160, 2036657, 2031169, 2025695, 2020237, 2014793, 2009364, | ||
172 | 2003949, 1998549, 1993163, 1987792, 1982436, 1977094, 1971766, 1966453, 1961154, 1955869, 1950599, | ||
173 | 1945342, 1940100, 1934872, 1929658, 1924458, 1919272, 1914101, 1908943, 1903799, 1898668, 1893552, | ||
174 | 1888450, 1883361, 1878286, 1873224, 1868176, 1863142, 1858122, 1853115, 1848121, 1843141, 1838174, | ||
175 | 1833221, 1828281, 1823354, 1818441, 1813540, 1808654, 1803780, 1798919, 1794072, 1789237, 1784416, | ||
176 | 1779607, 1774812, 1770029, 1765259, 1760502, 1755758, 1751027, 1746309, 1741603, 1736910, 1732229, | ||
177 | 1727561, 1722906, 1718263, 1713633, 1709015, 1704410, 1699817, 1695237, 1690669, 1686113, 1681569, | ||
178 | 1677038, 1672519, 1668012, 1663517, 1659034, 1654564, 1650105, 1645659, 1641224, 1636801, 1632391, | ||
179 | 1627992, 1623605, 1619230, 1614866, 1610515, 1606175, 1601847, 1597530, 1593225, 1588932, 1584650, | ||
180 | 1580380, 1576122, 1571874, 1567639, 1563414, 1559201, 1555000, 1550810, 1546631, 1542463, 1538306, | ||
181 | 1534161, 1530027, 1525904, 1521792, 1517691, 1513602, 1509523, 1505455, 1501399, 1497353, 1493318, | ||
182 | 1489294, 1485281, 1481278, 1477287, 1473306, 1469336, 1465376, 1461427, 1457489, 1453562, 1449645, | ||
183 | 1445738, 1441843, 1437957, 1434082, 1430218, 1426364, 1422520, 1418687, 1414864, 1411051, 1407249, | ||
184 | 1403457, 1399675, 1395903, 1392142, 1388390, 1384649, 1380918, 1377197, 1373486, 1369784, 1366093, | ||
185 | 1362412, 1358741, 1355079, 1351428, 1347786, 1344154, 1340532, 1336920, 1333317, 1329724, 1326141, | ||
186 | 1322567, 1319004, 1315449, 1311904, 1308369, 1304844, 1301327, 1297821, 1294323, 1290836, 1287357, | ||
187 | 1283888, 1280429, 1276978, 1273537, 1270105, 1266683, 1263269, 1259865, 1256470, 1253084, 1249708, | ||
188 | 1246340, 1242982, 1239632, 1236292, 1232960, 1229638, 1226324, 1223020, 1219724, 1216437, 1213159, | ||
189 | 1209890, 1206630, 1203378, 1200136, 1196902, 1193676, 1190460, 1187252, 1184052, 1180862, 1177680, | ||
190 | 1174506, 1171341, 1168185, 1165037, 1161897, 1158767, 1155644, 1152530, 1149424, 1146327, 1143238, | ||
191 | 1140157, 1137085, 1134021, 1130965, 1127917, 1124878, 1121846, 1118823, 1115809, 1112802, 1109803, | ||
192 | 1106813, 1103830, 1100855, 1097889, 1094931, 1091980, 1089037, 1086103, 1083176, 1080257, 1077346, | ||
193 | 1074443, 1071548, 1068660, 1065781, 1062909, 1060044, 1057188, 1054339, 1051498, 1048664, 1045839, | ||
194 | 1043020, 1040210, 1037407, 1034611, 1031823, 1029043, 1026270, 1023504, 1020746, 1017996, 1015252, | ||
195 | 1012517, 1009788, 1007067, 1004353, 1001647, 998948, 996256, 993571, 990894, 988224, 985561, | ||
196 | 982905, 980256, 977615, 974980, 972353, 969733, 967120, 964514, 961915, 959323, 956737, | ||
197 | 954159, 951588, 949024, 946467, 943916, 941373, 938836, 936306, 933783, 931267, 928757, | ||
198 | 926254, 923758, 921269, 918787, 916311, 913842, 911379, 908923, 906474, 904031, 901595, | ||
199 | 899166, 896743, 894326, 891916, 889513, 887116, 884725, 882341, 879963, 877592, 875227, | ||
200 | 872869, 870517, 868171, 865831, 863498, 861171, 858851, 856536, 854228, 851926, 849631, | ||
201 | 847341, 845058, 842781, 840510, 838245, 835986, 833733, 831487, 829246, 827011, 824783, | ||
202 | 822560, 820344, 818133, 815929, 813730, 811537, 809350, 807169, 804994, 802825, 800662, | ||
203 | 798504, 796352, 794206, 792066, 789932, 787803, 785680, 783563, 781452, 779346, 777246, | ||
204 | 775151, 773062, 770979, 768902, 766830, 764763, 762703, 760647, 758598, 756553, 754515, | ||
205 | 752482, 750454, 748432, 746415, 744403, 742397, 740397, 738402, 736412, 734428, 732448, | ||
206 | 730475, 728506, 726543, 724585, 722633, 720686, 718744, 716807, 714875, 712949, 711028, | ||
207 | 709112, 707201, 705295, 703394, 701499, 699609, 697723, 695843, 693968, 692098, 690233, | ||
208 | 688373, 686518, 684668, 682823, 680983, 679148, 677318, 675493, 673673, 671857, 670047, | ||
209 | 668241, 666441, 664645, 662854, 661067, 659286, 657510, 655738, 653971, 652208, 650451, | ||
210 | 648698, 646950, 645207, 643468, 641734, 640005, 638280, 636560, 634845, 633134, 631428, | ||
211 | 629727, 628030, 626337, 624650, 622966, 621288, 619613, 617944, 616279, 614618, 612962, | ||
212 | 611310, 609663, 608020, 606381, 604747, 603118, 601492, 599872, 598255, 596643, 595035, | ||
213 | 593432, 591833, 590238, 588647, 587061, 585479, 583901, 582328, 580759, 579194, 577633, | ||
214 | 576076, 574524, 572976, 571432, 569892, 568356, 566825, 565297, 563774, 562255, 560740, | ||
215 | 559229, 557722, 556219, 554720, 553225, 551734, 550248, 548765, 547286, 545811, 544341, | ||
216 | 542874, 541411, 539952, 538497, 537046, 535599, 534155, 532716, 531280, 529849, 528421, | ||
217 | 526997, 525577, 524161, 522748, 521340, 519935, 518534, 517136, 515743, 514353, 512967, | ||
218 | 511585, 510206, 508831, 507460, 506093, 504729, 503369, 502012, 500660, 499310, 497965, | ||
219 | 496623, 495285, 493950, 492619, 491292, 489968, 488648, 487331, 486018, 484708, 483402, | ||
220 | 482099, 480800, 479504, 478212, 476924, 475638, 474357, 473078, 471804, 470532, 469264, | ||
221 | 468000, 466739, 465481, 464227, 462976, 461728, 460484, 459243, 458005, 456771, 455540, | ||
222 | 454313, 453089, 451868, 450650, 449436, 448225, 447017, 445812, 444611, 443413, 442218, | ||
223 | 441026, 439838, 438653, 437470, 436292, 435116, 433943, 432774, 431608, 430445, 429285, | ||
224 | 428128, 426974, 425824, 424676, 423532, 422391, 421252, 420117, 418985, 417856, 416730, | ||
225 | 415607, 414487, 413370, 412256, 411146, 410038, 408933, 407831, 406732, 405636, 404543, | ||
226 | 403453, 402365, 401281, 400200, 399121, 398046, 396973, 395903, 394837, 393773, 392712, | ||
227 | 391653, 390598, 389545, 388496, 387449, 386405, 385363, 384325, 383289, 382257, 381226, | ||
228 | 380199, 379175, 378153, 377134, 376118, 375104, 374093, 373085, 372080, 371077, 370077, | ||
229 | 369080, 368085, 367094, 366104, 365118, 364134, 363153, 362174, 361198, 360225, 359254, | ||
230 | 358286, 357321, 356358, 355397, 354440, 353485, 352532, 351582, 350635, 349690, 348748, | ||
231 | 347808, 346871, 345936, 345004, 344074, 343147, 342222, 341300, 340380, 339463, 338548, | ||
232 | 337636, 336726, 335819, 334914, 334011, 333111, 332214, 331318, 330426, 329535, 328647, | ||
233 | 327762, 326878, 325997, 325119, 324243, 323369, 322498, 321629, 320762, 319898, 319036, | ||
234 | 318176, 317319, 316463, 315611, 314760, 313912, 313066, 312222, 311381, 310542, 309705, | ||
235 | 308871, 308038, 307208, 306380, 305555, 304731, 303910, 303091, 302275, 301460, 300648, | ||
236 | 299838, 299030, 298224, 297420, 296619, 295819, 295022, 294227, 293434, 292644, 291855, | ||
237 | 291069, 290284, 289502, 288722, 287944, 287168, 286394, 285622, 284853, 284085, 283320, | ||
238 | 282556, 281795, 281035, 280278, 279523, 278770, 278018, 277269, 276522, 275777, 275034, | ||
239 | 274293, 273553, 272816, 272081, 271348, 270617, 269888, 269160, 268435, 267712, 266990, | ||
240 | 266271, 265553, 264838, 264124, 263412, 262702, 261994, 261289, 260584, 259882, 259182, | ||
241 | 258483, 257787, 257092, 256399, 255709, 255020, 254332, 253647, 252963, 252282, 251602, | ||
242 | 250924, 250248, 249573, 248901, 248230, 247561, 246894, 246229, 245565, 244904, 244244, | ||
243 | 243586, 242929, 242275, 241622, 240971, 240321, 239674, 239028, 238384, 237741, 237101, | ||
244 | 236462, 235825, 235189, 234555, 233923, 233293, 232664, 232037, 231412, 230788, 230166, | ||
245 | 229546, 228928, 228311, 227696, 227082, 226470, 225860, 225251, 224644, 224039, 223435, | ||
246 | 222833, 222233, 221634, 221036, 220441, 219847, 219254, 218664, 218074, 217487, 216901, | ||
247 | 216316, 215733, 215152, 214572, 213994, 213417, 212842, 212269, 211697, 211126, 210557, | ||
248 | 209990, 209424, 208860, 208297, 207735, 207176, 206617, 206061, 205505, 204952, 204399, | ||
249 | 203849, 203299, 202751, 202205, 201660, 201117, 200575, 200034, 199495, 198958, 198422, | ||
250 | 197887, 197354, 196822, 196291, 195762, 195235, 194709, 194184, 193661, 193139, 192619, | ||
251 | 192100, 191582, 191066, 190551, 190037, 189525, 189014, 188505, 187997, 187491, 186985, | ||
252 | 186481, 185979, 185478, 184978, 184479, 183982, 183487, 182992, 182499, 182007, 181517, | ||
253 | 181028, 180540, 180053, 179568, 179084, 178602, 178120, 177640, 177162, 176684, 176208, | ||
254 | 175733, 175260, 174788, 174317, 173847, 173378, 172911, 172445, 171981, 171517, 171055, | ||
255 | 170594, 170134, 169676, 169219, 168763, 168308, 167854, 167402, 166951, 166501, 166052, | ||
256 | 165605, 165159, 164713, 164270, 163827, 163386, 162945, 162506, 162068, 161632, 161196, | ||
257 | 160762, 160328, 159896, 159465, 159036, 158607, 158180, 157754, 157328, 156904, 156482, | ||
258 | 156060, 155639, 155220, 154802, 154385, 153969, 153554, 153140, 152727, 152316, 151905, | ||
259 | 151496, 151088, 150681, 150275, 149870, 149466, 149063, 148661, 148261, 147861, 147463, | ||
260 | 147065, 146669, 146274, 145880, 145487, 145094, 144703, 144314, 143925, 143537, 143150, | ||
261 | 142764, 142380, 141996, 141613, 141232, 140851, 140472, 140093, 139715, 139339, 138964, | ||
262 | 138589, 138216, 137843, 137472, 137101, 136732, 136363, 135996, 135629, 135264, 134899, | ||
263 | 134536, 134173, 133812, 133451, 133092, 132733, 132375, 132019, 131663, 131308, 130954, | ||
264 | 130601, 130249, 129898, 129548, 129199, 128851, 128504, 128158, 127812, 127468, 127124, | ||
265 | 126782, 126440, 126099, 125760, 125421, 125083, 124746, 124410, 124074, 123740, 123407, | ||
266 | 123074, 122742, 122412, 122082, 121753, 121425, 121097, 120771, 120446, 120121, 119797, | ||
267 | 119475, 119153, 118832, 118511, 118192, 117873, 117556, 117239, 116923, 116608, 116294, | ||
268 | 115980, 115668, 115356, 115045, 114735, 114426, 114118, 113810, 113504, 113198, 112893, | ||
269 | 112589, 112285, 111983, 111681, 111380, 111080, 110780, 110482, 110184, 109887, 109591, | ||
270 | 109296, 109001, 108708, 108415, 108122, 107831, 107541, 107251, 106962, 106674, 106386, | ||
271 | 106099, 105813, 105528, 105244, 104960, 104678, 104395, 104114, 103834, 103554, 103275, | ||
272 | 102996, 102719, 102442, 102166, 101891, 101616, 101342, 101069, 100797, 100525, 100254, | ||
273 | 99984, 99715, 99446, 99178, 98911, 98644, 98378, 98113, 97849, 97585, 97322, | ||
274 | 97060, 96799, 96538, 96278, 96018, 95759, 95501, 95244, 94987, 94731, 94476, | ||
275 | 94222, 93968, 93714, 93462, 93210, 92959, 92708, 92459, 92209, 91961, 91713, | ||
276 | 91466, 91219, 90974, 90729, 90484, 90240, 89997, 89754, 89513, 89271, 89031, | ||
277 | 88791, 88552, 88313, 88075, 87838, 87601, 87365, 87130, 86895, 86661, 86427, | ||
278 | 86194, 85962, 85730, 85499, 85269, 85039, 84810, 84581, 84353, 84126, 83899, | ||
279 | 83673, 83448, 83223, 82999, 82775, 82552, 82330, 82108, 81886, 81666, 81446, | ||
280 | 81226, 81007, 80789, 80571, 80354, 80138, 79922, 79706, 79492, 79277, 79064, | ||
281 | 78851, 78638, 78426, 78215, 78004, 77794, 77584, 77375, 77167, 76959, 76752, | ||
282 | 76545, 76338, 76133, 75928, 75723, 75519, 75315, 75112, 74910, 74708, 74507, | ||
283 | 74306, 74106, 73906, 73707, 73508, 73310, 73113, 72916, 72719, 72523, 72328, | ||
284 | 72133, 71939, 71745, 71551, 71359, 71166, 70975, 70783, 70593, 70402, 70213, | ||
285 | 70023, 69835, 69646, 69459, 69272, 69085, 68899, 68713, 68528, 68343, 68159, | ||
286 | 67975, 67792, 67610, 67427, 67246, 67065, 66884, 66704, 66524, 66345, 66166, | ||
287 | 65987, 65810, 65632, 65455, 65279, 65103, 64928, 64753, 64578, 64404, 64231, | ||
288 | 64058, 63885, 63713, 63541, 63370, 63199, 63029, 62859, 62690, 62521, 62352, | ||
289 | 62184, 62017, 61850, 61683, 61517, 61351, 61186, 61021, 60856, 60692, 60529, | ||
290 | 60366, 60203, 60041, 59879, 59718, 59557, 59396, 59236, 59076, 58917, 58758, | ||
291 | 58600, 58442, 58285, 58128, 57971, 57815, 57659, 57504, 57349, 57194, 57040, | ||
292 | 56886, 56733, 56580, 56428, 56276, 56124, 55973, 55822, 55671, 55521, 55372, | ||
293 | 55223, 55074, 54925, 54777, 54630, 54483, 54336, 54189, 54043, 53898, 53752, | ||
294 | 53608, 53463, 53319, 53175, 53032, 52889, 52747, 52605, 52463, 52321, 52180, | ||
295 | 52040, 51900, 51760, 51620, 51481, 51342, 51204, 51066, 50928, 50791, 50654, | ||
296 | 50518, 50382, 50246, 50111, 49976, 49841, 49707, 49573, 49439, 49306, 49173, | ||
297 | 49040, 48908, 48776, 48645, 48514, 48383, 48253, 48123, 47993, 47864, 47735, | ||
298 | 47606, 47478, 47350, 47222, 47095, 46968, 46842, 46715, 46590, 46464, 46339, | ||
299 | 46214, 46089, 45965, 45841, 45718, 45595, 45472, 45349, 45227, 45105, 44984, | ||
300 | 44862, 44741, 44621, 44501, 44381, 44261, 44142, 44023, 43904, 43786, 43668, | ||
301 | 43550, 43433, 43316, 43199, 43083, 42967, 42851, 42735, 42620, 42505, 42391, | ||
302 | 42277, 42163, 42049, 41936, 41823, 41710, 41598, 41486, 41374, 41262, 41151, | ||
303 | 41040, 40930, 40819, 40709, 40600, 40490, 40381, 40272, 40164, 40056, 39948, | ||
304 | 39840, 39733, 39626, 39519, 39412, 39306, 39200, 39094, 38989, 38884, 38779, | ||
305 | 38675, 38571, 38467, 38363, 38260, 38157, 38054, 37951, 37849, 37747, 37645, | ||
306 | 37544, 37443, 37342, 37241, 37141, 37041, 36941, 36841, 36742, 36643, 36544, | ||
307 | 36446, 36347, 36250, 36152, 36054, 35957, 35860, 35764, 35667, 35571, 35475, | ||
308 | 35380, 35284, 35189, 35095, 35000, 34906, 34812, 34718, 34624, 34531, 34438, | ||
309 | 34345, 34253, 34160, 34068, 33976, 33885 | ||
310 | }; | ||
311 | |||
312 | static const short sindb_coeff[] ICONST_ATTR = { | ||
313 | 2401, 2144, 1994, 1887, 1804, 1737, 1680, 1630, 1587, 1548, 1512, 1480, 1450, | ||
314 | 1423, 1397, 1373, 1351, 1330, 1310, 1291, 1273, 1255, 1239, 1223, 1208, 1194, | ||
315 | 1180, 1166, 1153, 1141, 1128, 1117, 1105, 1094, 1084, 1073, 1063, 1053, 1043, | ||
316 | 1034, 1025, 1016, 1007, 999, 990, 982, 974, 967, 959, 952, 944, 937, | ||
317 | 930, 923, 916, 910, 903, 897, 890, 884, 878, 872, 866, 860, 855, | ||
318 | 849, 843, 838, 832, 827, 822, 817, 812, 807, 802, 797, 792, 787, | ||
319 | 783, 778, 773, 769, 764, 760, 756, 751, 747, 743, 739, 734, 730, | ||
320 | 726, 722, 718, 715, 711, 707, 703, 699, 696, 692, 688, 685, 681, | ||
321 | 678, 674, 671, 667, 664, 661, 657, 654, 651, 648, 644, 641, 638, | ||
322 | 635, 632, 629, 626, 623, 620, 617, 614, 611, 608, 605, 602, 599, | ||
323 | 597, 594, 591, 588, 586, 583, 580, 578, 575, 572, 570, 567, 565, | ||
324 | 562, 560, 557, 555, 552, 550, 547, 545, 542, 540, 538, 535, 533, | ||
325 | 531, 528, 526, 524, 522, 519, 517, 515, 513, 510, 508, 506, 504, | ||
326 | 502, 500, 498, 495, 493, 491, 489, 487, 485, 483, 481, 479, 477, | ||
327 | 475, 473, 471, 469, 467, 465, 464, 462, 460, 458, 456, 454, 452, | ||
328 | 450, 449, 447, 445, 443, 441, 440, 438, 436, 434, 433, 431, 429, | ||
329 | 427, 426, 424, 422, 421, 419, 417, 416, 414, 412, 411, 409, 408, | ||
330 | 406, 404, 403, 401, 400, 398, 396, 395, 393, 392, 390, 389, 387, | ||
331 | 386, 384, 383, 381, 380, 378, 377, 375, 374, 372, 371, 370, 368, | ||
332 | 367, 365, 364, 362, 361, 360, 358, 357, 355, 354, 353, 351, 350, | ||
333 | 349, 347, 346, 345, 343, 342, 341, 339, 338, 337, 336, 334, 333, | ||
334 | 332, 330, 329, 328, 327, 325, 324, 323, 322, 320, 319, 318, 317, | ||
335 | 316, 314, 313, 312, 311, 310, 308, 307, 306, 305, 304, 303, 301, | ||
336 | 300, 299, 298, 297, 296, 295, 293, 292, 291, 290, 289, 288, 287, | ||
337 | 286, 285, 284, 282, 281, 280, 279, 278, 277, 276, 275, 274, 273, | ||
338 | 272, 271, 270, 269, 268, 267, 266, 265, 264, 263, 262, 261, 260, | ||
339 | 259, 258, 257, 256, 255, 254, 253, 252, 251, 250, 249, 248, 247, | ||
340 | 246, 245, 244, 243, 242, 241, 240, 240, 239, 238, 237, 236, 235, | ||
341 | 234, 233, 232, 231, 230, 230, 229, 228, 227, 226, 225, 224, 223, | ||
342 | 222, 222, 221, 220, 219, 218, 217, 216, 216, 215, 214, 213, 212, | ||
343 | 211, 211, 210, 209, 208, 207, 206, 206, 205, 204, 203, 202, 202, | ||
344 | 201, 200, 199, 198, 198, 197, 196, 195, 195, 194, 193, 192, 191, | ||
345 | 191, 190, 189, 188, 188, 187, 186, 185, 185, 184, 183, 182, 182, | ||
346 | 181, 180, 180, 179, 178, 177, 177, 176, 175, 174, 174, 173, 172, | ||
347 | 172, 171, 170, 170, 169, 168, 167, 167, 166, 165, 165, 164, 163, | ||
348 | 163, 162, 161, 161, 160, 159, 159, 158, 157, 157, 156, 155, 155, | ||
349 | 154, 153, 153, 152, 151, 151, 150, 150, 149, 148, 148, 147, 146, | ||
350 | 146, 145, 145, 144, 143, 143, 142, 141, 141, 140, 140, 139, 138, | ||
351 | 138, 137, 137, 136, 135, 135, 134, 134, 133, 133, 132, 131, 131, | ||
352 | 130, 130, 129, 129, 128, 127, 127, 126, 126, 125, 125, 124, 123, | ||
353 | 123, 122, 122, 121, 121, 120, 120, 119, 119, 118, 117, 117, 116, | ||
354 | 116, 115, 115, 114, 114, 113, 113, 112, 112, 111, 111, 110, 110, | ||
355 | 109, 109, 108, 108, 107, 107, 106, 106, 105, 105, 104, 104, 103, | ||
356 | 103, 102, 102, 101, 101, 100, 100, 99, 99, 98, 98, 97, 97, | ||
357 | 96, 96, 95, 95, 94, 94, 94, 93, 93, 92, 92, 91, 91, | ||
358 | 90, 90, 89, 89, 89, 88, 88, 87, 87, 86, 86, 85, 85, | ||
359 | 85, 84, 84, 83, 83, 82, 82, 82, 81, 81, 80, 80, 79, | ||
360 | 79, 79, 78, 78, 77, 77, 77, 76, 76, 75, 75, 75, 74, | ||
361 | 74, 73, 73, 73, 72, 72, 71, 71, 71, 70, 70, 69, 69, | ||
362 | 69, 68, 68, 68, 67, 67, 66, 66, 66, 65, 65, 65, 64, | ||
363 | 64, 63, 63, 63, 62, 62, 62, 61, 61, 61, 60, 60, 59, | ||
364 | 59, 59, 58, 58, 58, 57, 57, 57, 56, 56, 56, 55, 55, | ||
365 | 55, 54, 54, 54, 53, 53, 53, 52, 52, 52, 51, 51, 51, | ||
366 | 50, 50, 50, 49, 49, 49, 49, 48, 48, 48, 47, 47, 47, | ||
367 | 46, 46, 46, 45, 45, 45, 45, 44, 44, 44, 43, 43, 43, | ||
368 | 43, 42, 42, 42, 41, 41, 41, 40, 40, 40, 40, 39, 39, | ||
369 | 39, 39, 38, 38, 38, 37, 37, 37, 37, 36, 36, 36, 36, | ||
370 | 35, 35, 35, 35, 34, 34, 34, 34, 33, 33, 33, 32, 32, | ||
371 | 32, 32, 31, 31, 31, 31, 31, 30, 30, 30, 30, 29, 29, | ||
372 | 29, 29, 28, 28, 28, 28, 27, 27, 27, 27, 27, 26, 26, | ||
373 | 26, 26, 25, 25, 25, 25, 25, 24, 24, 24, 24, 23, 23, | ||
374 | 23, 23, 23, 22, 22, 22, 22, 22, 21, 21, 21, 21, 21, | ||
375 | 20, 20, 20, 20, 20, 19, 19, 19, 19, 19, 19, 18, 18, | ||
376 | 18, 18, 18, 17, 17, 17, 17, 17, 17, 16, 16, 16, 16, | ||
377 | 16, 15, 15, 15, 15, 15, 15, 14, 14, 14, 14, 14, 14, | ||
378 | 13, 13, 13, 13, 13, 13, 13, 12, 12, 12, 12, 12, 12, | ||
379 | 11, 11, 11, 11, 11, 11, 11, 10, 10, 10, 10, 10, 10, | ||
380 | 10, 10, 9, 9, 9, 9, 9, 9, 9, 8, 8, 8, 8, | ||
381 | 8, 8, 8, 8, 8, 7, 7, 7, 7, 7, 7, 7, 7, | ||
382 | 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 5, 5, | ||
383 | 5, 5, 5, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, | ||
384 | 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, | ||
385 | 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, | ||
386 | 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, | ||
387 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
388 | 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
389 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
390 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
391 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 | ||
392 | }; | ||
393 | |||
394 | |||
395 | static const short lfo_freq_coeff[] ICONST_ATTR = { | ||
396 | 0, 3, 6, 9, 12, 15, 18, 21, 25, 28, 31, 34, 37, | ||
397 | 40, 43, 46, 50, 53, 56, 59, 62, 65, 68, 71, 74, 78, | ||
398 | 81, 84, 87, 90, 93, 96, 99, 102, 105, 108, 111, 115, 118, | ||
399 | 121, 124, 127, 130, 133, 136, 139, 142, 145, 148, 151, 154, 157, | ||
400 | 160, 163, 166, 169, 172, 175, 178, 180, 183, 186, 189, 192, 195, | ||
401 | 198, 201, 204, 207, 209, 212, 215, 218, 221, 224, 226, 229, 232, | ||
402 | 235, 238, 240, 243, 246, 249, 251, 254, 257, 260, 262, 265, 268, | ||
403 | 270, 273, 276, 278, 281, 283, 286, 289, 291, 294, 296, 299, 301, | ||
404 | 304, 306, 309, 311, 314, 316, 319, 321, 324, 326, 328, 331, 333, | ||
405 | 336, 338, 340, 343, 345, 347, 350, 352, 354, 356, 359, 361, 363, | ||
406 | 365, 367, 370, 372, 374, 376, 378, 380, 382, 384, 386, 388, 391, | ||
407 | 393, 395, 396, 398, 400, 402, 404, 406, 408, 410, 412, 414, 415, | ||
408 | 417, 419, 421, 423, 424, 426, 428, 430, 431, 433, 435, 436, 438, | ||
409 | 439, 441, 443, 444, 446, 447, 449, 450, 452, 453, 455, 456, 457, | ||
410 | 459, 460, 461, 463, 464, 465, 467, 468, 469, 470, 472, 473, 474, | ||
411 | 475, 476, 477, 478, 480, 481, 482, 483, 484, 485, 486, 487, 488, | ||
412 | 488, 489, 490, 491, 492, 493, 494, 494, 495, 496, 497, 497, 498, | ||
413 | 499, 499, 500, 501, 501, 502, 502, 503, 504, 504, 504, 505, 505, | ||
414 | 506, 506, 507, 507, 507, 508, 508, 508, 509, 509, 509, 509, 510, | ||
415 | 510, 510, 510, 510, 510, 510, 510, 510, 510, 511, 510, 510, 510, | ||
416 | 510, 510, 510, 510, 510, 510, 510, 509, 509, 509, 509, 508, 508, | ||
417 | 508, 507, 507, 507, 506, 506, 505, 505, 504, 504, 504, 503, 502, | ||
418 | 502, 501, 501, 500, 499, 499, 498, 497, 497, 496, 495, 494, 494, | ||
419 | 493, 492, 491, 490, 489, 488, 488, 487, 486, 485, 484, 483, 482, | ||
420 | 481, 480, 478, 477, 476, 475, 474, 473, 472, 470, 469, 468, 467, | ||
421 | 465, 464, 463, 461, 460, 459, 457, 456, 455, 453, 452, 450, 449, | ||
422 | 447, 446, 444, 443, 441, 439, 438, 436, 435, 433, 431, 430, 428, | ||
423 | 426, 424, 423, 421, 419, 417, 415, 414, 412, 410, 408, 406, 404, | ||
424 | 402, 400, 398, 396, 395, 393, 391, 388, 386, 384, 382, 380, 378, | ||
425 | 376, 374, 372, 370, 367, 365, 363, 361, 359, 356, 354, 352, 350, | ||
426 | 347, 345, 343, 340, 338, 336, 333, 331, 328, 326, 324, 321, 319, | ||
427 | 316, 314, 311, 309, 306, 304, 301, 299, 296, 294, 291, 289, 286, | ||
428 | 283, 281, 278, 276, 273, 270, 268, 265, 262, 260, 257, 254, 251, | ||
429 | 249, 246, 243, 240, 238, 235, 232, 229, 226, 224, 221, 218, 215, | ||
430 | 212, 209, 207, 204, 201, 198, 195, 192, 189, 186, 183, 180, 178, | ||
431 | 175, 172, 169, 166, 163, 160, 157, 154, 151, 148, 145, 142, 139, | ||
432 | 136, 133, 130, 127, 124, 121, 118, 115, 111, 108, 105, 102, 99, | ||
433 | 96, 93, 90, 87, 84, 81, 78, 74, 71, 68, 65, 62, 59, | ||
434 | 56, 53, 50, 46, 43, 40, 37, 34, 31, 28, 25, 21, 18, | ||
435 | 15, 12, 9, 6, 3, 0, -3, -6, -9, -12, -15, -18, -21, | ||
436 | -25, -28, -31, -34, -37, -40, -43, -46, -50, -53, -56, -59, -62, | ||
437 | -65, -68, -71, -74, -78, -81, -84, -87, -90, -93, -96, -99, -102, | ||
438 | -105, -108, -111, -115, -118, -121, -124, -127, -130, -133, -136, -139, -142, | ||
439 | -145, -148, -151, -154, -157, -160, -163, -166, -169, -172, -175, -178, -180, | ||
440 | -183, -186, -189, -192, -195, -198, -201, -204, -207, -209, -212, -215, -218, | ||
441 | -221, -224, -226, -229, -232, -235, -238, -240, -243, -246, -249, -251, -254, | ||
442 | -257, -260, -262, -265, -268, -270, -273, -276, -278, -281, -283, -286, -289, | ||
443 | -291, -294, -296, -299, -301, -304, -306, -309, -311, -314, -316, -319, -321, | ||
444 | -324, -326, -328, -331, -333, -336, -338, -340, -343, -345, -347, -350, -352, | ||
445 | -354, -356, -359, -361, -363, -365, -367, -370, -372, -374, -376, -378, -380, | ||
446 | -382, -384, -386, -388, -391, -393, -395, -396, -398, -400, -402, -404, -406, | ||
447 | -408, -410, -412, -414, -415, -417, -419, -421, -423, -424, -426, -428, -430, | ||
448 | -431, -433, -435, -436, -438, -439, -441, -443, -444, -446, -447, -449, -450, | ||
449 | -452, -453, -455, -456, -457, -459, -460, -461, -463, -464, -465, -467, -468, | ||
450 | -469, -470, -472, -473, -474, -475, -476, -477, -478, -480, -481, -482, -483, | ||
451 | -484, -485, -486, -487, -488, -488, -489, -490, -491, -492, -493, -494, -494, | ||
452 | -495, -496, -497, -497, -498, -499, -499, -500, -501, -501, -502, -502, -503, | ||
453 | -504, -504, -504, -505, -505, -506, -506, -507, -507, -507, -508, -508, -508, | ||
454 | -509, -509, -509, -509, -510, -510, -510, -510, -510, -510, -510, -510, -510, | ||
455 | -510, -511, -510, -510, -510, -510, -510, -510, -510, -510, -510, -510, -509, | ||
456 | -509, -509, -509, -508, -508, -508, -507, -507, -507, -506, -506, -505, -505, | ||
457 | -504, -504, -504, -503, -502, -502, -501, -501, -500, -499, -499, -498, -497, | ||
458 | -497, -496, -495, -494, -494, -493, -492, -491, -490, -489, -488, -488, -487, | ||
459 | -486, -485, -484, -483, -482, -481, -480, -478, -477, -476, -475, -474, -473, | ||
460 | -472, -470, -469, -468, -467, -465, -464, -463, -461, -460, -459, -457, -456, | ||
461 | -455, -453, -452, -450, -449, -447, -446, -444, -443, -441, -439, -438, -436, | ||
462 | -435, -433, -431, -430, -428, -426, -424, -423, -421, -419, -417, -415, -414, | ||
463 | -412, -410, -408, -406, -404, -402, -400, -398, -396, -395, -393, -391, -388, | ||
464 | -386, -384, -382, -380, -378, -376, -374, -372, -370, -367, -365, -363, -361, | ||
465 | -359, -356, -354, -352, -350, -347, -345, -343, -340, -338, -336, -333, -331, | ||
466 | -328, -326, -324, -321, -319, -316, -314, -311, -309, -306, -304, -301, -299, | ||
467 | -296, -294, -291, -289, -286, -283, -281, -278, -276, -273, -270, -268, -265, | ||
468 | -262, -260, -257, -254, -251, -249, -246, -243, -240, -238, -235, -232, -229, | ||
469 | -226, -224, -221, -218, -215, -212, -209, -207, -204, -201, -198, -195, -192, | ||
470 | -189, -186, -183, -180, -178, -175, -172, -169, -166, -163, -160, -157, -154, | ||
471 | -151, -148, -145, -142, -139, -136, -133, -130, -127, -124, -121, -118, -115, | ||
472 | -111, -108, -105, -102, -99, -96, -93, -90, -87, -84, -81, -78, -74, | ||
473 | -71, -68, -65, -62, -59, -56, -53, -50, -46, -43, -40, -37, -34, | ||
474 | -31, -28, -25, -21, -18, -15, -12, -9, -6, -3 | ||
475 | }; | ||
476 | |||
477 | static const short lfo_env_coeff[] ICONST_ATTR = { | ||
478 | 251, 253, 254, 256, 257, 259, 260, 262, 264, 265, 267, 268, 270, | ||
479 | 271, 273, 274, 276, 277, 279, 281, 282, 284, 285, 287, 288, 290, | ||
480 | 291, 293, 294, 296, 297, 299, 300, 302, 303, 305, 306, 308, 309, | ||
481 | 311, 312, 314, 315, 317, 318, 320, 321, 323, 324, 326, 327, 329, | ||
482 | 330, 332, 333, 335, 336, 337, 339, 340, 342, 343, 345, 346, 348, | ||
483 | 349, 350, 352, 353, 355, 356, 357, 359, 360, 362, 363, 364, 366, | ||
484 | 367, 369, 370, 371, 373, 374, 375, 377, 378, 379, 381, 382, 383, | ||
485 | 385, 386, 387, 389, 390, 391, 392, 394, 395, 396, 397, 399, 400, | ||
486 | 401, 402, 404, 405, 406, 407, 409, 410, 411, 412, 413, 414, 416, | ||
487 | 417, 418, 419, 420, 421, 423, 424, 425, 426, 427, 428, 429, 430, | ||
488 | 431, 432, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, | ||
489 | 445, 446, 447, 448, 449, 450, 451, 452, 453, 453, 454, 455, 456, | ||
490 | 457, 458, 459, 460, 461, 461, 462, 463, 464, 465, 466, 466, 467, | ||
491 | 468, 469, 469, 470, 471, 472, 473, 473, 474, 475, 475, 476, 477, | ||
492 | 477, 478, 479, 479, 480, 481, 481, 482, 483, 483, 484, 484, 485, | ||
493 | 486, 486, 487, 487, 488, 488, 489, 489, 490, 490, 491, 491, 492, | ||
494 | 492, 493, 493, 493, 494, 494, 495, 495, 495, 496, 496, 497, 497, | ||
495 | 497, 498, 498, 498, 498, 499, 499, 499, 500, 500, 500, 500, 500, | ||
496 | 501, 501, 501, 501, 501, 502, 502, 502, 502, 502, 502, 502, 502, | ||
497 | 503, 503, 503, 503, 503, 503, 503, 503, 503, 503, 503, 503, 503, | ||
498 | 503, 503, 503, 503, 503, 503, 502, 502, 502, 502, 502, 502, 502, | ||
499 | 502, 501, 501, 501, 501, 501, 500, 500, 500, 500, 500, 499, 499, | ||
500 | 499, 498, 498, 498, 498, 497, 497, 497, 496, 496, 495, 495, 495, | ||
501 | 494, 494, 493, 493, 493, 492, 492, 491, 491, 490, 490, 489, 489, | ||
502 | 488, 488, 487, 487, 486, 486, 485, 484, 484, 483, 483, 482, 481, | ||
503 | 481, 480, 479, 479, 478, 477, 477, 476, 475, 475, 474, 473, 473, | ||
504 | 472, 471, 470, 469, 469, 468, 467, 466, 466, 465, 464, 463, 462, | ||
505 | 461, 461, 460, 459, 458, 457, 456, 455, 454, 453, 453, 452, 451, | ||
506 | 450, 449, 448, 447, 446, 445, 444, 443, 442, 441, 440, 439, 438, | ||
507 | 437, 436, 435, 434, 432, 431, 430, 429, 428, 427, 426, 425, 424, | ||
508 | 423, 421, 420, 419, 418, 417, 416, 414, 413, 412, 411, 410, 409, | ||
509 | 407, 406, 405, 404, 402, 401, 400, 399, 397, 396, 395, 394, 392, | ||
510 | 391, 390, 389, 387, 386, 385, 383, 382, 381, 379, 378, 377, 375, | ||
511 | 374, 373, 371, 370, 369, 367, 366, 364, 363, 362, 360, 359, 357, | ||
512 | 356, 355, 353, 352, 350, 349, 348, 346, 345, 343, 342, 340, 339, | ||
513 | 337, 336, 335, 333, 332, 330, 329, 327, 326, 324, 323, 321, 320, | ||
514 | 318, 317, 315, 314, 312, 311, 309, 308, 306, 305, 303, 302, 300, | ||
515 | 299, 297, 296, 294, 293, 291, 290, 288, 287, 285, 284, 282, 281, | ||
516 | 279, 277, 276, 274, 273, 271, 270, 268, 267, 265, 264, 262, 260, | ||
517 | 259, 257, 256, 254, 253, 251, 250, 248, 247, 245, 244, 242, 240, | ||
518 | 239, 237, 236, 234, 233, 231, 230, 228, 227, 225, 223, 222, 220, | ||
519 | 219, 217, 216, 214, 213, 211, 210, 208, 207, 205, 204, 202, 201, | ||
520 | 199, 198, 196, 195, 193, 192, 190, 189, 187, 186, 184, 183, 181, | ||
521 | 180, 178, 177, 175, 174, 172, 171, 169, 168, 166, 165, 164, 162, | ||
522 | 161, 159, 158, 156, 155, 153, 152, 151, 149, 148, 146, 145, 144, | ||
523 | 142, 141, 139, 138, 137, 135, 134, 133, 131, 130, 129, 127, 126, | ||
524 | 124, 123, 122, 120, 119, 118, 117, 115, 114, 113, 111, 110, 109, | ||
525 | 108, 106, 105, 104, 103, 101, 100, 99, 98, 96, 95, 94, 93, | ||
526 | 92, 90, 89, 88, 87, 86, 84, 83, 82, 81, 80, 79, 78, | ||
527 | 77, 75, 74, 73, 72, 71, 70, 69, 68, 67, 66, 65, 64, | ||
528 | 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, | ||
529 | 50, 49, 48, 47, 46, 45, 45, 44, 43, 42, 41, 40, 39, | ||
530 | 39, 38, 37, 36, 35, 35, 34, 33, 32, 31, 31, 30, 29, | ||
531 | 29, 28, 27, 26, 26, 25, 24, 24, 23, 22, 22, 21, 20, | ||
532 | 20, 19, 19, 18, 17, 17, 16, 16, 15, 15, 14, 14, 13, | ||
533 | 13, 12, 12, 11, 11, 10, 10, 9, 9, 9, 8, 8, 7, | ||
534 | 7, 7, 6, 6, 6, 5, 5, 5, 4, 4, 4, 3, 3, | ||
535 | 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, | ||
536 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
537 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
538 | 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, | ||
539 | 2, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, | ||
540 | 6, 7, 7, 7, 8, 8, 9, 9, 9, 10, 10, 11, 11, | ||
541 | 12, 12, 13, 13, 14, 14, 15, 15, 16, 16, 17, 17, 18, | ||
542 | 19, 19, 20, 20, 21, 22, 22, 23, 24, 24, 25, 26, 26, | ||
543 | 27, 28, 29, 29, 30, 31, 31, 32, 33, 34, 35, 35, 36, | ||
544 | 37, 38, 39, 39, 40, 41, 42, 43, 44, 45, 45, 46, 47, | ||
545 | 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, | ||
546 | 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, | ||
547 | 74, 75, 77, 78, 79, 80, 81, 82, 83, 84, 86, 87, 88, | ||
548 | 89, 90, 92, 93, 94, 95, 96, 98, 99, 100, 101, 103, 104, | ||
549 | 105, 106, 108, 109, 110, 111, 113, 114, 115, 117, 118, 119, 120, | ||
550 | 122, 123, 124, 126, 127, 129, 130, 131, 133, 134, 135, 137, 138, | ||
551 | 139, 141, 142, 144, 145, 146, 148, 149, 151, 152, 153, 155, 156, | ||
552 | 158, 159, 161, 162, 164, 165, 166, 168, 169, 171, 172, 174, 175, | ||
553 | 177, 178, 180, 181, 183, 184, 186, 187, 189, 190, 192, 193, 195, | ||
554 | 196, 198, 199, 201, 202, 204, 205, 207, 208, 210, 211, 213, 214, | ||
555 | 216, 217, 219, 220, 222, 223, 225, 227, 228, 230, 231, 233, 234, | ||
556 | 236, 237, 239, 240, 242, 244, 245, 247, 248, 250 | ||
557 | }; | ||
558 | |||
559 | #endif | ||