2007-03-07 16:32:30 +08:00
|
|
|
#define _GNU_SOURCE
|
|
|
|
#include <stdint.h>
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <math.h>
|
|
|
|
|
|
|
|
int main (void)
|
|
|
|
{
|
|
|
|
double d;
|
|
|
|
uint8_t n;
|
|
|
|
int i;
|
2007-09-17 05:08:06 +08:00
|
|
|
|
2007-03-07 16:32:30 +08:00
|
|
|
printf("static const uint8_t mfrom_ROM_table[602] =\n{\n ");
|
|
|
|
for (i = 0; i < 602; i++) {
|
|
|
|
/* Extremly decomposed:
|
|
|
|
* -T0 / 256
|
|
|
|
* T0 = 256 * log10(10 + 1.0) + 0.5
|
|
|
|
*/
|
|
|
|
d = -i;
|
|
|
|
d /= 256.0;
|
|
|
|
d = exp10(d);
|
|
|
|
d += 1.0;
|
|
|
|
d = log10(d);
|
|
|
|
d *= 256;
|
|
|
|
d += 0.5;
|
|
|
|
n = d;
|
|
|
|
printf("%3d, ", n);
|
|
|
|
if ((i & 7) == 7)
|
|
|
|
printf("\n ");
|
|
|
|
}
|
|
|
|
printf("\n};\n");
|
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|