PRINTF ("%03x %02x %x %x %x\n", i, colorcube[i], rt[i >> 8], gt[(i >> 4) & 0x0f], bt[i & 0x0f]);
xlib_rgb_make_colorcube (unsigned long *pixels, int nr, int ng, int nb){  unsigned char rt[16], gt[16], bt[16];  int i;  colorcube = malloc(sizeof(unsigned char) * 4096);  memset(colorcube, 0, (sizeof(unsigned char) * 4096));  for (i = 0; i < 16; i++)    {      rt[i] = ng * nb * ((i * 17 * (nr - 1) + 128) >> 8);      gt[i] = nb * ((i * 17 * (ng - 1) + 128) >> 8);      bt[i] = ((i * 17 * (nb - 1) + 128) >> 8);    }  for (i = 0; i < 4096; i++)    {      colorcube[i] = pixels[rt[i >> 8] + gt[(i >> 4) & 0x0f] + bt[i & 0x0f]];#ifdef VERBOSE      printf ("%03x %02x %x %x %x\n", i, colorcube[i], rt[i >> 8], gt[(i >> 4) & 0x0f], bt[i & 0x0f]);#endif    }}