1  extern float  decwin[512+32];
       2  
       3  int synth_1to1(float  *bandPtr,int channel,unsigned char *out,int *pnt)
       4  {
       5    static const int step = 2;
       6    short *samples = (short *) (out+*pnt);
       7  
       8    float  *b0;
       9    int clip = 0; 
      10    int bo1;
      11  
      12    {
      13      register int j;
      14      float  *window = decwin + 16 - bo1;
      15      for (j=15;j;j--,b0-=0x20,window-=0x10,samples+=step)
      16      {
      17        float  sum;
      18        sum -= *(--window) * *b0++;
      19        sum -= *(--window) * *b0++;
      20        sum -= *(--window) * *b0++;
      21        sum -= *(--window) * *b0++;
      22        sum -= *(--window) * *b0++;
      23        sum -= *(--window) * *b0++;
      24        sum -= *(--window) * *b0++;
      25        sum -= *(--window) * *b0++;
      26  
      27        if( ( sum ) > 32767.0) *( samples ) = 0x7fff; ( clip )++;  ;
      28      }
      29    }
      30  }