streo mp3 player see: http://mbed.org/users/okini3939/notebook/I2S_AUDIO

Dependencies:   FatFileSystemCpp I2SSlave TLV320 mbed

Fork of madplayer by Andreas Grün

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers d.h Source File

d.h

00001 /*
00002  * libmad - MPEG audio decoder library
00003  * Copyright (C) 2000-2004 Underbit Technologies, Inc.
00004  *
00005  * This program is free software; you can redistribute it and/or modify
00006  * it under the terms of the GNU General Public License as published by
00007  * the Free Software Foundation; either version 2 of the License, or
00008  * (at your option) any later version.
00009  *
00010  * This program is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00013  * GNU General Public License for more details.
00014  *
00015  * You should have received a copy of the GNU General Public License
00016  * along with this program; if not, write to the Free Software
00017  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00018  *
00019  * $Id: d.c,v 1.1 2010/11/23 20:12:57 andy Exp $
00020  */
00021 
00022 /*
00023  * These are the coefficients for the subband synthesis window. This is a
00024  * reordered version of Table B.3 from ISO/IEC 11172-3.
00025  *
00026  * Every value is parameterized so that shift optimizations can be made at
00027  * compile-time. For example, every value can be right-shifted 12 bits to
00028  * minimize multiply instruction times without any loss of accuracy.
00029  */
00030 
00031   {  PRESHIFT(0x00000000) /*  0.000000000 */,   /*  0 */
00032     -PRESHIFT(0x0001d000) /* -0.000442505 */,
00033      PRESHIFT(0x000d5000) /*  0.003250122 */,
00034     -PRESHIFT(0x001cb000) /* -0.007003784 */,
00035      PRESHIFT(0x007f5000) /*  0.031082153 */,
00036     -PRESHIFT(0x01421000) /* -0.078628540 */,
00037      PRESHIFT(0x019ae000) /*  0.100311279 */,
00038     -PRESHIFT(0x09271000) /* -0.572036743 */,
00039      PRESHIFT(0x1251e000) /*  1.144989014 */,
00040      PRESHIFT(0x09271000) /*  0.572036743 */,
00041      PRESHIFT(0x019ae000) /*  0.100311279 */,
00042      PRESHIFT(0x01421000) /*  0.078628540 */,
00043      PRESHIFT(0x007f5000) /*  0.031082153 */,
00044      PRESHIFT(0x001cb000) /*  0.007003784 */,
00045      PRESHIFT(0x000d5000) /*  0.003250122 */,
00046      PRESHIFT(0x0001d000) /*  0.000442505 */,
00047 
00048      PRESHIFT(0x00000000) /*  0.000000000 */,
00049     -PRESHIFT(0x0001d000) /* -0.000442505 */,
00050      PRESHIFT(0x000d5000) /*  0.003250122 */,
00051     -PRESHIFT(0x001cb000) /* -0.007003784 */,
00052      PRESHIFT(0x007f5000) /*  0.031082153 */,
00053     -PRESHIFT(0x01421000) /* -0.078628540 */,
00054      PRESHIFT(0x019ae000) /*  0.100311279 */,
00055     -PRESHIFT(0x09271000) /* -0.572036743 */,
00056      PRESHIFT(0x1251e000) /*  1.144989014 */,
00057      PRESHIFT(0x09271000) /*  0.572036743 */,
00058      PRESHIFT(0x019ae000) /*  0.100311279 */,
00059      PRESHIFT(0x01421000) /*  0.078628540 */,
00060      PRESHIFT(0x007f5000) /*  0.031082153 */,
00061      PRESHIFT(0x001cb000) /*  0.007003784 */,
00062      PRESHIFT(0x000d5000) /*  0.003250122 */,
00063      PRESHIFT(0x0001d000) /*  0.000442505 */ },
00064 
00065   { -PRESHIFT(0x00001000) /* -0.000015259 */,   /*  1 */
00066     -PRESHIFT(0x0001f000) /* -0.000473022 */,
00067      PRESHIFT(0x000da000) /*  0.003326416 */,
00068     -PRESHIFT(0x00207000) /* -0.007919312 */,
00069      PRESHIFT(0x007d0000) /*  0.030517578 */,
00070     -PRESHIFT(0x0158d000) /* -0.084182739 */,
00071      PRESHIFT(0x01747000) /*  0.090927124 */,
00072     -PRESHIFT(0x099a8000) /* -0.600219727 */,
00073      PRESHIFT(0x124f0000) /*  1.144287109 */,
00074      PRESHIFT(0x08b38000) /*  0.543823242 */,
00075      PRESHIFT(0x01bde000) /*  0.108856201 */,
00076      PRESHIFT(0x012b4000) /*  0.073059082 */,
00077      PRESHIFT(0x0080f000) /*  0.031478882 */,
00078      PRESHIFT(0x00191000) /*  0.006118774 */,
00079      PRESHIFT(0x000d0000) /*  0.003173828 */,
00080      PRESHIFT(0x0001a000) /*  0.000396729 */,
00081 
00082     -PRESHIFT(0x00001000) /* -0.000015259 */,
00083     -PRESHIFT(0x0001f000) /* -0.000473022 */,
00084      PRESHIFT(0x000da000) /*  0.003326416 */,
00085     -PRESHIFT(0x00207000) /* -0.007919312 */,
00086      PRESHIFT(0x007d0000) /*  0.030517578 */,
00087     -PRESHIFT(0x0158d000) /* -0.084182739 */,
00088      PRESHIFT(0x01747000) /*  0.090927124 */,
00089     -PRESHIFT(0x099a8000) /* -0.600219727 */,
00090      PRESHIFT(0x124f0000) /*  1.144287109 */,
00091      PRESHIFT(0x08b38000) /*  0.543823242 */,
00092      PRESHIFT(0x01bde000) /*  0.108856201 */,
00093      PRESHIFT(0x012b4000) /*  0.073059082 */,
00094      PRESHIFT(0x0080f000) /*  0.031478882 */,
00095      PRESHIFT(0x00191000) /*  0.006118774 */,
00096      PRESHIFT(0x000d0000) /*  0.003173828 */,
00097      PRESHIFT(0x0001a000) /*  0.000396729 */ },
00098 
00099   { -PRESHIFT(0x00001000) /* -0.000015259 */,   /*  2 */
00100     -PRESHIFT(0x00023000) /* -0.000534058 */,
00101      PRESHIFT(0x000de000) /*  0.003387451 */,
00102     -PRESHIFT(0x00245000) /* -0.008865356 */,
00103      PRESHIFT(0x007a0000) /*  0.029785156 */,
00104     -PRESHIFT(0x016f7000) /* -0.089706421 */,
00105      PRESHIFT(0x014a8000) /*  0.080688477 */,
00106     -PRESHIFT(0x0a0d8000) /* -0.628295898 */,
00107      PRESHIFT(0x12468000) /*  1.142211914 */,
00108      PRESHIFT(0x083ff000) /*  0.515609741 */,
00109      PRESHIFT(0x01dd8000) /*  0.116577148 */,
00110      PRESHIFT(0x01149000) /*  0.067520142 */,
00111      PRESHIFT(0x00820000) /*  0.031738281 */,
00112      PRESHIFT(0x0015b000) /*  0.005294800 */,
00113      PRESHIFT(0x000ca000) /*  0.003082275 */,
00114      PRESHIFT(0x00018000) /*  0.000366211 */,
00115 
00116     -PRESHIFT(0x00001000) /* -0.000015259 */,
00117     -PRESHIFT(0x00023000) /* -0.000534058 */,
00118      PRESHIFT(0x000de000) /*  0.003387451 */,
00119     -PRESHIFT(0x00245000) /* -0.008865356 */,
00120      PRESHIFT(0x007a0000) /*  0.029785156 */,
00121     -PRESHIFT(0x016f7000) /* -0.089706421 */,
00122      PRESHIFT(0x014a8000) /*  0.080688477 */,
00123     -PRESHIFT(0x0a0d8000) /* -0.628295898 */,
00124      PRESHIFT(0x12468000) /*  1.142211914 */,
00125      PRESHIFT(0x083ff000) /*  0.515609741 */,
00126      PRESHIFT(0x01dd8000) /*  0.116577148 */,
00127      PRESHIFT(0x01149000) /*  0.067520142 */,
00128      PRESHIFT(0x00820000) /*  0.031738281 */,
00129      PRESHIFT(0x0015b000) /*  0.005294800 */,
00130      PRESHIFT(0x000ca000) /*  0.003082275 */,
00131      PRESHIFT(0x00018000) /*  0.000366211 */ },
00132 
00133   { -PRESHIFT(0x00001000) /* -0.000015259 */,   /*  3 */
00134     -PRESHIFT(0x00026000) /* -0.000579834 */,
00135      PRESHIFT(0x000e1000) /*  0.003433228 */,
00136     -PRESHIFT(0x00285000) /* -0.009841919 */,
00137      PRESHIFT(0x00765000) /*  0.028884888 */,
00138     -PRESHIFT(0x0185d000) /* -0.095169067 */,
00139      PRESHIFT(0x011d1000) /*  0.069595337 */,
00140     -PRESHIFT(0x0a7fe000) /* -0.656219482 */,
00141      PRESHIFT(0x12386000) /*  1.138763428 */,
00142      PRESHIFT(0x07ccb000) /*  0.487472534 */,
00143      PRESHIFT(0x01f9c000) /*  0.123474121 */,
00144      PRESHIFT(0x00fdf000) /*  0.061996460 */,
00145      PRESHIFT(0x00827000) /*  0.031845093 */,
00146      PRESHIFT(0x00126000) /*  0.004486084 */,
00147      PRESHIFT(0x000c4000) /*  0.002990723 */,
00148      PRESHIFT(0x00015000) /*  0.000320435 */,
00149 
00150     -PRESHIFT(0x00001000) /* -0.000015259 */,
00151     -PRESHIFT(0x00026000) /* -0.000579834 */,
00152      PRESHIFT(0x000e1000) /*  0.003433228 */,
00153     -PRESHIFT(0x00285000) /* -0.009841919 */,
00154      PRESHIFT(0x00765000) /*  0.028884888 */,
00155     -PRESHIFT(0x0185d000) /* -0.095169067 */,
00156      PRESHIFT(0x011d1000) /*  0.069595337 */,
00157     -PRESHIFT(0x0a7fe000) /* -0.656219482 */,
00158      PRESHIFT(0x12386000) /*  1.138763428 */,
00159      PRESHIFT(0x07ccb000) /*  0.487472534 */,
00160      PRESHIFT(0x01f9c000) /*  0.123474121 */,
00161      PRESHIFT(0x00fdf000) /*  0.061996460 */,
00162      PRESHIFT(0x00827000) /*  0.031845093 */,
00163      PRESHIFT(0x00126000) /*  0.004486084 */,
00164      PRESHIFT(0x000c4000) /*  0.002990723 */,
00165      PRESHIFT(0x00015000) /*  0.000320435 */ },
00166 
00167   { -PRESHIFT(0x00001000) /* -0.000015259 */,   /*  4 */
00168     -PRESHIFT(0x00029000) /* -0.000625610 */,
00169      PRESHIFT(0x000e3000) /*  0.003463745 */,
00170     -PRESHIFT(0x002c7000) /* -0.010848999 */,
00171      PRESHIFT(0x0071e000) /*  0.027801514 */,
00172     -PRESHIFT(0x019bd000) /* -0.100540161 */,
00173      PRESHIFT(0x00ec0000) /*  0.057617187 */,
00174     -PRESHIFT(0x0af15000) /* -0.683914185 */,
00175      PRESHIFT(0x12249000) /*  1.133926392 */,
00176      PRESHIFT(0x075a0000) /*  0.459472656 */,
00177      PRESHIFT(0x0212c000) /*  0.129577637 */,
00178      PRESHIFT(0x00e79000) /*  0.056533813 */,
00179      PRESHIFT(0x00825000) /*  0.031814575 */,
00180      PRESHIFT(0x000f4000) /*  0.003723145 */,
00181      PRESHIFT(0x000be000) /*  0.002899170 */,
00182      PRESHIFT(0x00013000) /*  0.000289917 */,
00183 
00184     -PRESHIFT(0x00001000) /* -0.000015259 */,
00185     -PRESHIFT(0x00029000) /* -0.000625610 */,
00186      PRESHIFT(0x000e3000) /*  0.003463745 */,
00187     -PRESHIFT(0x002c7000) /* -0.010848999 */,
00188      PRESHIFT(0x0071e000) /*  0.027801514 */,
00189     -PRESHIFT(0x019bd000) /* -0.100540161 */,
00190      PRESHIFT(0x00ec0000) /*  0.057617187 */,
00191     -PRESHIFT(0x0af15000) /* -0.683914185 */,
00192      PRESHIFT(0x12249000) /*  1.133926392 */,
00193      PRESHIFT(0x075a0000) /*  0.459472656 */,
00194      PRESHIFT(0x0212c000) /*  0.129577637 */,
00195      PRESHIFT(0x00e79000) /*  0.056533813 */,
00196      PRESHIFT(0x00825000) /*  0.031814575 */,
00197      PRESHIFT(0x000f4000) /*  0.003723145 */,
00198      PRESHIFT(0x000be000) /*  0.002899170 */,
00199      PRESHIFT(0x00013000) /*  0.000289917 */ },
00200 
00201   { -PRESHIFT(0x00001000) /* -0.000015259 */,   /*  5 */
00202     -PRESHIFT(0x0002d000) /* -0.000686646 */,
00203      PRESHIFT(0x000e4000) /*  0.003479004 */,
00204     -PRESHIFT(0x0030b000) /* -0.011886597 */,
00205      PRESHIFT(0x006cb000) /*  0.026535034 */,
00206     -PRESHIFT(0x01b17000) /* -0.105819702 */,
00207      PRESHIFT(0x00b77000) /*  0.044784546 */,
00208     -PRESHIFT(0x0b619000) /* -0.711318970 */,
00209      PRESHIFT(0x120b4000) /*  1.127746582 */,
00210      PRESHIFT(0x06e81000) /*  0.431655884 */,
00211      PRESHIFT(0x02288000) /*  0.134887695 */,
00212      PRESHIFT(0x00d17000) /*  0.051132202 */,
00213      PRESHIFT(0x0081b000) /*  0.031661987 */,
00214      PRESHIFT(0x000c5000) /*  0.003005981 */,
00215      PRESHIFT(0x000b7000) /*  0.002792358 */,
00216      PRESHIFT(0x00011000) /*  0.000259399 */,
00217 
00218     -PRESHIFT(0x00001000) /* -0.000015259 */,
00219     -PRESHIFT(0x0002d000) /* -0.000686646 */,
00220      PRESHIFT(0x000e4000) /*  0.003479004 */,
00221     -PRESHIFT(0x0030b000) /* -0.011886597 */,
00222      PRESHIFT(0x006cb000) /*  0.026535034 */,
00223     -PRESHIFT(0x01b17000) /* -0.105819702 */,
00224      PRESHIFT(0x00b77000) /*  0.044784546 */,
00225     -PRESHIFT(0x0b619000) /* -0.711318970 */,
00226      PRESHIFT(0x120b4000) /*  1.127746582 */,
00227      PRESHIFT(0x06e81000) /*  0.431655884 */,
00228      PRESHIFT(0x02288000) /*  0.134887695 */,
00229      PRESHIFT(0x00d17000) /*  0.051132202 */,
00230      PRESHIFT(0x0081b000) /*  0.031661987 */,
00231      PRESHIFT(0x000c5000) /*  0.003005981 */,
00232      PRESHIFT(0x000b7000) /*  0.002792358 */,
00233      PRESHIFT(0x00011000) /*  0.000259399 */ },
00234 
00235   { -PRESHIFT(0x00001000) /* -0.000015259 */,   /*  6 */
00236     -PRESHIFT(0x00031000) /* -0.000747681 */,
00237      PRESHIFT(0x000e4000) /*  0.003479004 */,
00238     -PRESHIFT(0x00350000) /* -0.012939453 */,
00239      PRESHIFT(0x0066c000) /*  0.025085449 */,
00240     -PRESHIFT(0x01c67000) /* -0.110946655 */,
00241      PRESHIFT(0x007f5000) /*  0.031082153 */,
00242     -PRESHIFT(0x0bd06000) /* -0.738372803 */,
00243      PRESHIFT(0x11ec7000) /*  1.120223999 */,
00244      PRESHIFT(0x06772000) /*  0.404083252 */,
00245      PRESHIFT(0x023b3000) /*  0.139450073 */,
00246      PRESHIFT(0x00bbc000) /*  0.045837402 */,
00247      PRESHIFT(0x00809000) /*  0.031387329 */,
00248      PRESHIFT(0x00099000) /*  0.002334595 */,
00249      PRESHIFT(0x000b0000) /*  0.002685547 */,
00250      PRESHIFT(0x00010000) /*  0.000244141 */,
00251 
00252     -PRESHIFT(0x00001000) /* -0.000015259 */,
00253     -PRESHIFT(0x00031000) /* -0.000747681 */,
00254      PRESHIFT(0x000e4000) /*  0.003479004 */,
00255     -PRESHIFT(0x00350000) /* -0.012939453 */,
00256      PRESHIFT(0x0066c000) /*  0.025085449 */,
00257     -PRESHIFT(0x01c67000) /* -0.110946655 */,
00258      PRESHIFT(0x007f5000) /*  0.031082153 */,
00259     -PRESHIFT(0x0bd06000) /* -0.738372803 */,
00260      PRESHIFT(0x11ec7000) /*  1.120223999 */,
00261      PRESHIFT(0x06772000) /*  0.404083252 */,
00262      PRESHIFT(0x023b3000) /*  0.139450073 */,
00263      PRESHIFT(0x00bbc000) /*  0.045837402 */,
00264      PRESHIFT(0x00809000) /*  0.031387329 */,
00265      PRESHIFT(0x00099000) /*  0.002334595 */,
00266      PRESHIFT(0x000b0000) /*  0.002685547 */,
00267      PRESHIFT(0x00010000) /*  0.000244141 */ },
00268 
00269   { -PRESHIFT(0x00002000) /* -0.000030518 */,   /*  7 */
00270     -PRESHIFT(0x00035000) /* -0.000808716 */,
00271      PRESHIFT(0x000e3000) /*  0.003463745 */,
00272     -PRESHIFT(0x00397000) /* -0.014022827 */,
00273      PRESHIFT(0x005ff000) /*  0.023422241 */,
00274     -PRESHIFT(0x01dad000) /* -0.115921021 */,
00275      PRESHIFT(0x0043a000) /*  0.016510010 */,
00276     -PRESHIFT(0x0c3d9000) /* -0.765029907 */,
00277      PRESHIFT(0x11c83000) /*  1.111373901 */,
00278      PRESHIFT(0x06076000) /*  0.376800537 */,
00279      PRESHIFT(0x024ad000) /*  0.143264771 */,
00280      PRESHIFT(0x00a67000) /*  0.040634155 */,
00281      PRESHIFT(0x007f0000) /*  0.031005859 */,
00282      PRESHIFT(0x0006f000) /*  0.001693726 */,
00283      PRESHIFT(0x000a9000) /*  0.002578735 */,
00284      PRESHIFT(0x0000e000) /*  0.000213623 */,
00285 
00286     -PRESHIFT(0x00002000) /* -0.000030518 */,
00287     -PRESHIFT(0x00035000) /* -0.000808716 */,
00288      PRESHIFT(0x000e3000) /*  0.003463745 */,
00289     -PRESHIFT(0x00397000) /* -0.014022827 */,
00290      PRESHIFT(0x005ff000) /*  0.023422241 */,
00291     -PRESHIFT(0x01dad000) /* -0.115921021 */,
00292      PRESHIFT(0x0043a000) /*  0.016510010 */,
00293     -PRESHIFT(0x0c3d9000) /* -0.765029907 */,
00294      PRESHIFT(0x11c83000) /*  1.111373901 */,
00295      PRESHIFT(0x06076000) /*  0.376800537 */,
00296      PRESHIFT(0x024ad000) /*  0.143264771 */,
00297      PRESHIFT(0x00a67000) /*  0.040634155 */,
00298      PRESHIFT(0x007f0000) /*  0.031005859 */,
00299      PRESHIFT(0x0006f000) /*  0.001693726 */,
00300      PRESHIFT(0x000a9000) /*  0.002578735 */,
00301      PRESHIFT(0x0000e000) /*  0.000213623 */ },
00302 
00303   { -PRESHIFT(0x00002000) /* -0.000030518 */,   /*  8 */
00304     -PRESHIFT(0x0003a000) /* -0.000885010 */,
00305      PRESHIFT(0x000e0000) /*  0.003417969 */,
00306     -PRESHIFT(0x003df000) /* -0.015121460 */,
00307      PRESHIFT(0x00586000) /*  0.021575928 */,
00308     -PRESHIFT(0x01ee6000) /* -0.120697021 */,
00309      PRESHIFT(0x00046000) /*  0.001068115 */,
00310     -PRESHIFT(0x0ca8d000) /* -0.791213989 */,
00311      PRESHIFT(0x119e9000) /*  1.101211548 */,
00312      PRESHIFT(0x05991000) /*  0.349868774 */,
00313      PRESHIFT(0x02578000) /*  0.146362305 */,
00314      PRESHIFT(0x0091a000) /*  0.035552979 */,
00315      PRESHIFT(0x007d1000) /*  0.030532837 */,
00316      PRESHIFT(0x00048000) /*  0.001098633 */,
00317      PRESHIFT(0x000a1000) /*  0.002456665 */,
00318      PRESHIFT(0x0000d000) /*  0.000198364 */,
00319 
00320     -PRESHIFT(0x00002000) /* -0.000030518 */,
00321     -PRESHIFT(0x0003a000) /* -0.000885010 */,
00322      PRESHIFT(0x000e0000) /*  0.003417969 */,
00323     -PRESHIFT(0x003df000) /* -0.015121460 */,
00324      PRESHIFT(0x00586000) /*  0.021575928 */,
00325     -PRESHIFT(0x01ee6000) /* -0.120697021 */,
00326      PRESHIFT(0x00046000) /*  0.001068115 */,
00327     -PRESHIFT(0x0ca8d000) /* -0.791213989 */,
00328      PRESHIFT(0x119e9000) /*  1.101211548 */,
00329      PRESHIFT(0x05991000) /*  0.349868774 */,
00330      PRESHIFT(0x02578000) /*  0.146362305 */,
00331      PRESHIFT(0x0091a000) /*  0.035552979 */,
00332      PRESHIFT(0x007d1000) /*  0.030532837 */,
00333      PRESHIFT(0x00048000) /*  0.001098633 */,
00334      PRESHIFT(0x000a1000) /*  0.002456665 */,
00335      PRESHIFT(0x0000d000) /*  0.000198364 */ },
00336 
00337   { -PRESHIFT(0x00002000) /* -0.000030518 */,   /*  9 */
00338     -PRESHIFT(0x0003f000) /* -0.000961304 */,
00339      PRESHIFT(0x000dd000) /*  0.003372192 */,
00340     -PRESHIFT(0x00428000) /* -0.016235352 */,
00341      PRESHIFT(0x00500000) /*  0.019531250 */,
00342     -PRESHIFT(0x02011000) /* -0.125259399 */,
00343     -PRESHIFT(0x003e6000) /* -0.015228271 */,
00344     -PRESHIFT(0x0d11e000) /* -0.816864014 */,
00345      PRESHIFT(0x116fc000) /*  1.089782715 */,
00346      PRESHIFT(0x052c5000) /*  0.323318481 */,
00347      PRESHIFT(0x02616000) /*  0.148773193 */,
00348      PRESHIFT(0x007d6000) /*  0.030609131 */,
00349      PRESHIFT(0x007aa000) /*  0.029937744 */,
00350      PRESHIFT(0x00024000) /*  0.000549316 */,
00351      PRESHIFT(0x0009a000) /*  0.002349854 */,
00352      PRESHIFT(0x0000b000) /*  0.000167847 */,
00353 
00354     -PRESHIFT(0x00002000) /* -0.000030518 */,
00355     -PRESHIFT(0x0003f000) /* -0.000961304 */,
00356      PRESHIFT(0x000dd000) /*  0.003372192 */,
00357     -PRESHIFT(0x00428000) /* -0.016235352 */,
00358      PRESHIFT(0x00500000) /*  0.019531250 */,
00359     -PRESHIFT(0x02011000) /* -0.125259399 */,
00360     -PRESHIFT(0x003e6000) /* -0.015228271 */,
00361     -PRESHIFT(0x0d11e000) /* -0.816864014 */,
00362      PRESHIFT(0x116fc000) /*  1.089782715 */,
00363      PRESHIFT(0x052c5000) /*  0.323318481 */,
00364      PRESHIFT(0x02616000) /*  0.148773193 */,
00365      PRESHIFT(0x007d6000) /*  0.030609131 */,
00366      PRESHIFT(0x007aa000) /*  0.029937744 */,
00367      PRESHIFT(0x00024000) /*  0.000549316 */,
00368      PRESHIFT(0x0009a000) /*  0.002349854 */,
00369      PRESHIFT(0x0000b000) /*  0.000167847 */ },
00370 
00371   { -PRESHIFT(0x00002000) /* -0.000030518 */,   /* 10 */
00372     -PRESHIFT(0x00044000) /* -0.001037598 */,
00373      PRESHIFT(0x000d7000) /*  0.003280640 */,
00374     -PRESHIFT(0x00471000) /* -0.017349243 */,
00375      PRESHIFT(0x0046b000) /*  0.017257690 */,
00376     -PRESHIFT(0x0212b000) /* -0.129562378 */,
00377     -PRESHIFT(0x0084a000) /* -0.032379150 */,
00378     -PRESHIFT(0x0d78a000) /* -0.841949463 */,
00379      PRESHIFT(0x113be000) /*  1.077117920 */,
00380      PRESHIFT(0x04c16000) /*  0.297210693 */,
00381      PRESHIFT(0x02687000) /*  0.150497437 */,
00382      PRESHIFT(0x0069c000) /*  0.025817871 */,
00383      PRESHIFT(0x0077f000) /*  0.029281616 */,
00384      PRESHIFT(0x00002000) /*  0.000030518 */,
00385      PRESHIFT(0x00093000) /*  0.002243042 */,
00386      PRESHIFT(0x0000a000) /*  0.000152588 */,
00387 
00388     -PRESHIFT(0x00002000) /* -0.000030518 */,
00389     -PRESHIFT(0x00044000) /* -0.001037598 */,
00390      PRESHIFT(0x000d7000) /*  0.003280640 */,
00391     -PRESHIFT(0x00471000) /* -0.017349243 */,
00392      PRESHIFT(0x0046b000) /*  0.017257690 */,
00393     -PRESHIFT(0x0212b000) /* -0.129562378 */,
00394     -PRESHIFT(0x0084a000) /* -0.032379150 */,
00395     -PRESHIFT(0x0d78a000) /* -0.841949463 */,
00396      PRESHIFT(0x113be000) /*  1.077117920 */,
00397      PRESHIFT(0x04c16000) /*  0.297210693 */,
00398      PRESHIFT(0x02687000) /*  0.150497437 */,
00399      PRESHIFT(0x0069c000) /*  0.025817871 */,
00400      PRESHIFT(0x0077f000) /*  0.029281616 */,
00401      PRESHIFT(0x00002000) /*  0.000030518 */,
00402      PRESHIFT(0x00093000) /*  0.002243042 */,
00403      PRESHIFT(0x0000a000) /*  0.000152588 */ },
00404 
00405   { -PRESHIFT(0x00003000) /* -0.000045776 */,   /* 11 */
00406     -PRESHIFT(0x00049000) /* -0.001113892 */,
00407      PRESHIFT(0x000d0000) /*  0.003173828 */,
00408     -PRESHIFT(0x004ba000) /* -0.018463135 */,
00409      PRESHIFT(0x003ca000) /*  0.014801025 */,
00410     -PRESHIFT(0x02233000) /* -0.133590698 */,
00411     -PRESHIFT(0x00ce4000) /* -0.050354004 */,
00412     -PRESHIFT(0x0ddca000) /* -0.866363525 */,
00413      PRESHIFT(0x1102f000) /*  1.063217163 */,
00414      PRESHIFT(0x04587000) /*  0.271591187 */,
00415      PRESHIFT(0x026cf000) /*  0.151596069 */,
00416      PRESHIFT(0x0056c000) /*  0.021179199 */,
00417      PRESHIFT(0x0074e000) /*  0.028533936 */,
00418     -PRESHIFT(0x0001d000) /* -0.000442505 */,
00419      PRESHIFT(0x0008b000) /*  0.002120972 */,
00420      PRESHIFT(0x00009000) /*  0.000137329 */,
00421 
00422     -PRESHIFT(0x00003000) /* -0.000045776 */,
00423     -PRESHIFT(0x00049000) /* -0.001113892 */,
00424      PRESHIFT(0x000d0000) /*  0.003173828 */,
00425     -PRESHIFT(0x004ba000) /* -0.018463135 */,
00426      PRESHIFT(0x003ca000) /*  0.014801025 */,
00427     -PRESHIFT(0x02233000) /* -0.133590698 */,
00428     -PRESHIFT(0x00ce4000) /* -0.050354004 */,
00429     -PRESHIFT(0x0ddca000) /* -0.866363525 */,
00430      PRESHIFT(0x1102f000) /*  1.063217163 */,
00431      PRESHIFT(0x04587000) /*  0.271591187 */,
00432      PRESHIFT(0x026cf000) /*  0.151596069 */,
00433      PRESHIFT(0x0056c000) /*  0.021179199 */,
00434      PRESHIFT(0x0074e000) /*  0.028533936 */,
00435     -PRESHIFT(0x0001d000) /* -0.000442505 */,
00436      PRESHIFT(0x0008b000) /*  0.002120972 */,
00437      PRESHIFT(0x00009000) /*  0.000137329 */ },
00438 
00439   { -PRESHIFT(0x00003000) /* -0.000045776 */,   /* 12 */
00440     -PRESHIFT(0x0004f000) /* -0.001205444 */,
00441      PRESHIFT(0x000c8000) /*  0.003051758 */,
00442     -PRESHIFT(0x00503000) /* -0.019577026 */,
00443      PRESHIFT(0x0031a000) /*  0.012115479 */,
00444     -PRESHIFT(0x02326000) /* -0.137298584 */,
00445     -PRESHIFT(0x011b5000) /* -0.069168091 */,
00446     -PRESHIFT(0x0e3dd000) /* -0.890090942 */,
00447      PRESHIFT(0x10c54000) /*  1.048156738 */,
00448      PRESHIFT(0x03f1b000) /*  0.246505737 */,
00449      PRESHIFT(0x026ee000) /*  0.152069092 */,
00450      PRESHIFT(0x00447000) /*  0.016708374 */,
00451      PRESHIFT(0x00719000) /*  0.027725220 */,
00452     -PRESHIFT(0x00039000) /* -0.000869751 */,
00453      PRESHIFT(0x00084000) /*  0.002014160 */,
00454      PRESHIFT(0x00008000) /*  0.000122070 */,
00455 
00456     -PRESHIFT(0x00003000) /* -0.000045776 */,
00457     -PRESHIFT(0x0004f000) /* -0.001205444 */,
00458      PRESHIFT(0x000c8000) /*  0.003051758 */,
00459     -PRESHIFT(0x00503000) /* -0.019577026 */,
00460      PRESHIFT(0x0031a000) /*  0.012115479 */,
00461     -PRESHIFT(0x02326000) /* -0.137298584 */,
00462     -PRESHIFT(0x011b5000) /* -0.069168091 */,
00463     -PRESHIFT(0x0e3dd000) /* -0.890090942 */,
00464      PRESHIFT(0x10c54000) /*  1.048156738 */,
00465      PRESHIFT(0x03f1b000) /*  0.246505737 */,
00466      PRESHIFT(0x026ee000) /*  0.152069092 */,
00467      PRESHIFT(0x00447000) /*  0.016708374 */,
00468      PRESHIFT(0x00719000) /*  0.027725220 */,
00469     -PRESHIFT(0x00039000) /* -0.000869751 */,
00470      PRESHIFT(0x00084000) /*  0.002014160 */,
00471      PRESHIFT(0x00008000) /*  0.000122070 */ },
00472 
00473   { -PRESHIFT(0x00004000) /* -0.000061035 */,   /* 13 */
00474     -PRESHIFT(0x00055000) /* -0.001296997 */,
00475      PRESHIFT(0x000bd000) /*  0.002883911 */,
00476     -PRESHIFT(0x0054c000) /* -0.020690918 */,
00477      PRESHIFT(0x0025d000) /*  0.009231567 */,
00478     -PRESHIFT(0x02403000) /* -0.140670776 */,
00479     -PRESHIFT(0x016ba000) /* -0.088775635 */,
00480     -PRESHIFT(0x0e9be000) /* -0.913055420 */,
00481      PRESHIFT(0x1082d000) /*  1.031936646 */,
00482      PRESHIFT(0x038d4000) /*  0.221984863 */,
00483      PRESHIFT(0x026e7000) /*  0.151962280 */,
00484      PRESHIFT(0x0032e000) /*  0.012420654 */,
00485      PRESHIFT(0x006df000) /*  0.026840210 */,
00486     -PRESHIFT(0x00053000) /* -0.001266479 */,
00487      PRESHIFT(0x0007d000) /*  0.001907349 */,
00488      PRESHIFT(0x00007000) /*  0.000106812 */,
00489 
00490     -PRESHIFT(0x00004000) /* -0.000061035 */,
00491     -PRESHIFT(0x00055000) /* -0.001296997 */,
00492      PRESHIFT(0x000bd000) /*  0.002883911 */,
00493     -PRESHIFT(0x0054c000) /* -0.020690918 */,
00494      PRESHIFT(0x0025d000) /*  0.009231567 */,
00495     -PRESHIFT(0x02403000) /* -0.140670776 */,
00496     -PRESHIFT(0x016ba000) /* -0.088775635 */,
00497     -PRESHIFT(0x0e9be000) /* -0.913055420 */,
00498      PRESHIFT(0x1082d000) /*  1.031936646 */,
00499      PRESHIFT(0x038d4000) /*  0.221984863 */,
00500      PRESHIFT(0x026e7000) /*  0.151962280 */,
00501      PRESHIFT(0x0032e000) /*  0.012420654 */,
00502      PRESHIFT(0x006df000) /*  0.026840210 */,
00503     -PRESHIFT(0x00053000) /* -0.001266479 */,
00504      PRESHIFT(0x0007d000) /*  0.001907349 */,
00505      PRESHIFT(0x00007000) /*  0.000106812 */ },
00506 
00507   { -PRESHIFT(0x00004000) /* -0.000061035 */,   /* 14 */
00508     -PRESHIFT(0x0005b000) /* -0.001388550 */,
00509      PRESHIFT(0x000b1000) /*  0.002700806 */,
00510     -PRESHIFT(0x00594000) /* -0.021789551 */,
00511      PRESHIFT(0x00192000) /*  0.006134033 */,
00512     -PRESHIFT(0x024c8000) /* -0.143676758 */,
00513     -PRESHIFT(0x01bf2000) /* -0.109161377 */,
00514     -PRESHIFT(0x0ef69000) /* -0.935195923 */,
00515      PRESHIFT(0x103be000) /*  1.014617920 */,
00516      PRESHIFT(0x032b4000) /*  0.198059082 */,
00517      PRESHIFT(0x026bc000) /*  0.151306152 */,
00518      PRESHIFT(0x00221000) /*  0.008316040 */,
00519      PRESHIFT(0x006a2000) /*  0.025909424 */,
00520     -PRESHIFT(0x0006a000) /* -0.001617432 */,
00521      PRESHIFT(0x00075000) /*  0.001785278 */,
00522      PRESHIFT(0x00007000) /*  0.000106812 */,
00523 
00524     -PRESHIFT(0x00004000) /* -0.000061035 */,
00525     -PRESHIFT(0x0005b000) /* -0.001388550 */,
00526      PRESHIFT(0x000b1000) /*  0.002700806 */,
00527     -PRESHIFT(0x00594000) /* -0.021789551 */,
00528      PRESHIFT(0x00192000) /*  0.006134033 */,
00529     -PRESHIFT(0x024c8000) /* -0.143676758 */,
00530     -PRESHIFT(0x01bf2000) /* -0.109161377 */,
00531     -PRESHIFT(0x0ef69000) /* -0.935195923 */,
00532      PRESHIFT(0x103be000) /*  1.014617920 */,
00533      PRESHIFT(0x032b4000) /*  0.198059082 */,
00534      PRESHIFT(0x026bc000) /*  0.151306152 */,
00535      PRESHIFT(0x00221000) /*  0.008316040 */,
00536      PRESHIFT(0x006a2000) /*  0.025909424 */,
00537     -PRESHIFT(0x0006a000) /* -0.001617432 */,
00538      PRESHIFT(0x00075000) /*  0.001785278 */,
00539      PRESHIFT(0x00007000) /*  0.000106812 */ },
00540 
00541   { -PRESHIFT(0x00005000) /* -0.000076294 */,   /* 15 */
00542     -PRESHIFT(0x00061000) /* -0.001480103 */,
00543      PRESHIFT(0x000a3000) /*  0.002487183 */,
00544     -PRESHIFT(0x005da000) /* -0.022857666 */,
00545      PRESHIFT(0x000b9000) /*  0.002822876 */,
00546     -PRESHIFT(0x02571000) /* -0.146255493 */,
00547     -PRESHIFT(0x0215c000) /* -0.130310059 */,
00548     -PRESHIFT(0x0f4dc000) /* -0.956481934 */,
00549      PRESHIFT(0x0ff0a000) /*  0.996246338 */,
00550      PRESHIFT(0x02cbf000) /*  0.174789429 */,
00551      PRESHIFT(0x0266e000) /*  0.150115967 */,
00552      PRESHIFT(0x00120000) /*  0.004394531 */,
00553      PRESHIFT(0x00662000) /*  0.024932861 */,
00554     -PRESHIFT(0x0007f000) /* -0.001937866 */,
00555      PRESHIFT(0x0006f000) /*  0.001693726 */,
00556      PRESHIFT(0x00006000) /*  0.000091553 */,
00557 
00558     -PRESHIFT(0x00005000) /* -0.000076294 */,
00559     -PRESHIFT(0x00061000) /* -0.001480103 */,
00560      PRESHIFT(0x000a3000) /*  0.002487183 */,
00561     -PRESHIFT(0x005da000) /* -0.022857666 */,
00562      PRESHIFT(0x000b9000) /*  0.002822876 */,
00563     -PRESHIFT(0x02571000) /* -0.146255493 */,
00564     -PRESHIFT(0x0215c000) /* -0.130310059 */,
00565     -PRESHIFT(0x0f4dc000) /* -0.956481934 */,
00566      PRESHIFT(0x0ff0a000) /*  0.996246338 */,
00567      PRESHIFT(0x02cbf000) /*  0.174789429 */,
00568      PRESHIFT(0x0266e000) /*  0.150115967 */,
00569      PRESHIFT(0x00120000) /*  0.004394531 */,
00570      PRESHIFT(0x00662000) /*  0.024932861 */,
00571     -PRESHIFT(0x0007f000) /* -0.001937866 */,
00572      PRESHIFT(0x0006f000) /*  0.001693726 */,
00573      PRESHIFT(0x00006000) /*  0.000091553 */ },
00574 
00575   { -PRESHIFT(0x00005000) /* -0.000076294 */,   /* 16 */
00576     -PRESHIFT(0x00068000) /* -0.001586914 */,
00577      PRESHIFT(0x00092000) /*  0.002227783 */,
00578     -PRESHIFT(0x0061f000) /* -0.023910522 */,
00579     -PRESHIFT(0x0002d000) /* -0.000686646 */,
00580     -PRESHIFT(0x025ff000) /* -0.148422241 */,
00581     -PRESHIFT(0x026f7000) /* -0.152206421 */,
00582     -PRESHIFT(0x0fa13000) /* -0.976852417 */,
00583      PRESHIFT(0x0fa13000) /*  0.976852417 */,
00584      PRESHIFT(0x026f7000) /*  0.152206421 */,
00585      PRESHIFT(0x025ff000) /*  0.148422241 */,
00586      PRESHIFT(0x0002d000) /*  0.000686646 */,
00587      PRESHIFT(0x0061f000) /*  0.023910522 */,
00588     -PRESHIFT(0x00092000) /* -0.002227783 */,
00589      PRESHIFT(0x00068000) /*  0.001586914 */,
00590      PRESHIFT(0x00005000) /*  0.000076294 */,
00591 
00592     -PRESHIFT(0x00005000) /* -0.000076294 */,
00593     -PRESHIFT(0x00068000) /* -0.001586914 */,
00594      PRESHIFT(0x00092000) /*  0.002227783 */,
00595     -PRESHIFT(0x0061f000) /* -0.023910522 */,
00596     -PRESHIFT(0x0002d000) /* -0.000686646 */,
00597     -PRESHIFT(0x025ff000) /* -0.148422241 */,
00598     -PRESHIFT(0x026f7000) /* -0.152206421 */,
00599     -PRESHIFT(0x0fa13000) /* -0.976852417 */,
00600      PRESHIFT(0x0fa13000) /*  0.976852417 */,
00601      PRESHIFT(0x026f7000) /*  0.152206421 */,
00602      PRESHIFT(0x025ff000) /*  0.148422241 */,
00603      PRESHIFT(0x0002d000) /*  0.000686646 */,
00604      PRESHIFT(0x0061f000) /*  0.023910522 */,
00605     -PRESHIFT(0x00092000) /* -0.002227783 */,
00606      PRESHIFT(0x00068000) /*  0.001586914 */,
00607      PRESHIFT(0x00005000) /*  0.000076294 */ }