--- ray/src/rt/colortab.c 2003/02/25 02:47:22 2.6 +++ ray/src/rt/colortab.c 2004/03/30 16:13:01 2.9 @@ -1,5 +1,5 @@ #ifndef lint -static const char RCSid[] = "$Id: colortab.c,v 2.6 2003/02/25 02:47:22 greg Exp $"; +static const char RCSid[] = "$Id: colortab.c,v 2.9 2004/03/30 16:13:01 schorsch Exp $"; #endif /* * colortab.c - allocate and control dynamic color table. @@ -17,9 +17,12 @@ static const char RCSid[] = "$Id: colortab.c,v 2.6 200 #include "copyright.h" -#include "standard.h" +#include +#include "standard.h" #include "color.h" +#include "driver.h" + /* histogram resolution */ #define NRED 24 #define NGRN 32 @@ -84,16 +87,17 @@ int ncolors; /* partition color space */ cut(ctree, 0, CLRCUBE, 0, ncolors); /* clear histogram */ - bzero((char *)histo, sizeof(histo)); + memset((void *)histo, '\0', sizeof(histo)); /* return number of colors used */ return(ncolors); } -int -get_pixel(col, set_pixel) /* get pixel for color */ -COLOR col; -void (*set_pixel)(); +extern int +get_pixel( /* get pixel for color */ + COLOR col, + dr_newcolrf_t *newcolr +) { int r, g, b; int cv[3]; @@ -138,7 +142,7 @@ void (*set_pixel)(); h, r, g, b, clrtab[h].n); eputs(errmsg); #endif - (*set_pixel)(h, r, g, b); + (*newcolr)(h, r, g, b); } return(h); /* return pixel value */ } @@ -161,9 +165,9 @@ void set_cmap(rmap, gmap, bmap) /* set custom color correction map */ BYTE *rmap, *gmap, *bmap; { - bcopy((char *)rmap, (char *)clrmap[RED], 256); - bcopy((char *)gmap, (char *)clrmap[GRN], 256); - bcopy((char *)bmap, (char *)clrmap[BLU], 256); + memcpy((void *)clrmap[RED], (void *)rmap, 256); + memcpy((void *)clrmap[GRN], (void *)gmap, 256); + memcpy((void *)clrmap[BLU], (void *)bmap, 256); } @@ -193,7 +197,7 @@ int c0, c1; } /* split box */ *tree = split(box); - bcopy((char *)box, (char *)kb, sizeof(kb)); + memcpy((void *)kb, (void *)box, sizeof(kb)); /* do left (lesser) branch */ kb[prim(*tree)][1] = part(*tree); cut(tree+(1<>1);