| 782 |
|
static short cerr[ICONSIZ]; |
| 783 |
|
static int ynext; |
| 784 |
|
static char *dp; |
| 785 |
< |
double sf; |
| 786 |
< |
COLOR col; |
| 785 |
> |
COLR clr; |
| 786 |
|
register int err; |
| 787 |
|
register int x, ti; |
| 788 |
|
int errp; |
| 807 |
|
} |
| 808 |
|
if (y < ynext*ymax/iconheight) /* skip this one */ |
| 809 |
|
return; |
| 811 |
– |
sf = pow(2.0, (double)(scale+8)); |
| 810 |
|
err = 0; |
| 811 |
|
for (x = 0; x < iconwidth; x++) { |
| 812 |
|
if (!(x&7)) |
| 813 |
|
*++dp = 0; |
| 814 |
|
errp = err; |
| 815 |
|
ti = x*xmax/iconwidth; |
| 816 |
< |
colr_color(col, scan[ti]); |
| 817 |
< |
ti = sf*bright(col); |
| 818 |
< |
if (ti > 255) ti = 255; |
| 821 |
< |
err += ti + cerr[x]; |
| 816 |
> |
copycolr(clr, scan[ti]); |
| 817 |
> |
normcolrs(clr, 1, scale); |
| 818 |
> |
err += normbright(clr) + cerr[x]; |
| 819 |
|
if (err > 127) |
| 820 |
|
err -= 255; |
| 821 |
|
else |