nuclear@4: #ifndef FIXED_H_ nuclear@4: #define FIXED_H_ nuclear@4: nuclear@4: #include nuclear@4: nuclear@7: #define ftox16(x) (int32_t)((x) * 65536.0f) nuclear@7: #define itox16(x) (int32_t)((x) << 16) nuclear@7: nuclear@7: #define x16tof(x) (float)((x) / 65536.0f) nuclear@7: #define x16toi(x) ((x) >> 16) nuclear@7: nuclear@4: #define x16mul(a, b) (int32_t)(((int32_t)(a) >> 8) * ((int32_t)(b) >> 8)) nuclear@4: /*int32_t x16div(register int32_t num, register int32_t denom);*/ nuclear@4: #define x16div(a, b) (int32_t)(((int64_t)(a) << 16) / (b)) nuclear@4: nuclear@8: #define x16sq(x) x16mul(x, x) nuclear@8: nuclear@4: #endif /* FIXED_H_ */