static unsigned int rms(const int *data)

{

    int x;

    unsigned int res = 0x10000;

    int b = 0;



    for (x=0; x<10; x++) {

        res = (((0x1000000 - (*data) * (*data)) >> 12) * res) >> 12;



        if (res == 0)

            return 0;



        while (res <= 0x3fff) {

            b++;

            res <<= 2;

        }

        data++;

    }



    if (res > 0)

        res = t_sqrt(res);



    res >>= (b + 10);

    return res;

}

static unsigned int rms(const int *data)

{

    int x;

    unsigned int res = 0x10000;

    int b = 0;



    for (x=0; x<10; x++) {

        res = (((0x1000000 - (*data) * (*data)) >> 12) * res) >> 12;



        if (res == 0)

            return 0;



        while (res <= 0x3fff) {

            b++;

            res <<= 2;

        }

        data++;

    }



    if (res > 0)

        res = t_sqrt(res);



    res >>= (b + 10);

    return res;

}

static unsigned int FUNC_0(const int *VAR_0)

{

    int VAR_1;

    unsigned int VAR_2 = 0x10000;

    int VAR_3 = 0;



    for (VAR_1=0; VAR_1<10; VAR_1++) {

        VAR_2 = (((0x1000000 - (*VAR_0) * (*VAR_0)) >> 12) * VAR_2) >> 12;



        if (VAR_2 == 0)

            return 0;



        while (VAR_2 <= 0x3fff) {

            VAR_3++;

            VAR_2 <<= 2;

        }

        VAR_0++;

    }



    if (VAR_2 > 0)

        VAR_2 = t_sqrt(VAR_2);



    VAR_2 >>= (VAR_3 + 10);

    return VAR_2;

}

static unsigned int FUNC_0(const int *VAR_0)
{ int VAR_1; unsigned int VAR_2 = 0x10000; int VAR_3 = 0; for (VAR_1=0; VAR_1<10; VAR_1++) { VAR_2 = (((0x1000000 - (*VAR_0) * (*VAR_0)) >> 12) * VAR_2) >> 12; if (VAR_2 == 0)
return 0; while (VAR_2 <= 0x3fff) { VAR_3++; VAR_2 <<= 2; } VAR_0++; } if (VAR_2 > 0)
VAR_2 = t_sqrt(VAR_2); VAR_2 >>= (VAR_3 + 10); return VAR_2; }