Why don't extend nick's color support ...

// tremfusion implementation

// q_shared.h

...

#define MAX_CCODES 62

...

extern const vec4_t g_color_table[MAX_CCODES];

...

// tremfusion implementation

// q_math.c

...

const vec4_t g_color_table[MAX_CCODES] =

{

{0.00000f, 0.00000f, 0.00000f, 1.00000f}, // 0 standard colors

{1.00000f, 0.00000f, 0.00000f, 1.00000f}, // 1 |

{0.00000f, 1.00000f, 0.00000f, 1.00000f}, // 2 v

{1.00000f, 1.00000f, 0.00000f, 1.00000f}, // 3

{0.00000f, 0.00000f, 1.00000f, 1.00000f}, // 4

{0.00000f, 1.00000f, 1.00000f, 1.00000f}, // 5

{1.00000f, 0.00000f, 1.00000f, 1.00000f}, // 6 ^

{1.00000f, 1.00000f, 1.00000f, 1.00000f}, // 7 |

{1.00000f, 0.50000f, 0.00000f, 1.00000f}, // 8

{0.60000f, 0.60000f, 1.00000f, 1.00000f}, // 9

{1.00000f, 0.00000f, 0.00000f, 1.00000f}, // a Rainbow

{1.00000f, 0.13239f, 0.00000f, 1.00000f}, // A |

{1.00000f, 0.26795f, 0.00000f, 1.00000f}, // b |

{1.00000f, 0.37829f, 0.00000f, 1.00000f}, // B v

{1.00000f, 0.50000f, 0.00000f, 1.00000f}, // c

{1.00000f, 0.60633f, 0.00000f, 1.00000f}, // C

{1.00000f, 0.73205f, 0.00000f, 1.00000f}, // d

{1.00000f, 0.84990f, 0.00000f, 1.00000f}, // D

{1.00000f, 1.00000f, 0.00000f, 1.00000f}, // e

{0.86761f, 1.00000f, 0.00000f, 1.00000f}, // E

{0.73205f, 1.00000f, 0.00000f, 1.00000f}, // f

{0.62171f, 1.00000f, 0.00000f, 1.00000f}, // F

{0.50000f, 1.00000f, 0.00000f, 1.00000f}, // g

{0.39367f, 1.00000f, 0.00000f, 1.00000f}, // G

{0.26795f, 1.00000f, 0.00000f, 1.00000f}, // h

{0.15010f, 1.00000f, 0.00000f, 1.00000f}, // H

{0.00000f, 1.00000f, 0.00000f, 1.00000f}, // i

{0.00000f, 1.00000f, 0.13239f, 1.00000f}, // I

{0.00000f, 1.00000f, 0.26795f, 1.00000f}, // j

{0.00000f, 1.00000f, 0.37829f, 1.00000f}, // J

{0.00000f, 1.00000f, 0.50000f, 1.00000f}, // k

{0.00000f, 1.00000f, 0.60633f, 1.00000f}, // K

{0.00000f, 1.00000f, 0.73205f, 1.00000f}, // l

{0.00000f, 1.00000f, 0.84990f, 1.00000f}, // L

{0.00000f, 1.00000f, 1.00000f, 1.00000f}, // m

{0.00000f, 0.86761f, 1.00000f, 1.00000f}, // M

{0.00000f, 0.73205f, 1.00000f, 1.00000f}, // n

{0.00000f, 0.62171f, 1.00000f, 1.00000f}, // N

{0.00000f, 0.50000f, 1.00000f, 1.00000f}, // o

{0.00000f, 0.39367f, 1.00000f, 1.00000f}, // O

{0.00000f, 0.26795f, 1.00000f, 1.00000f}, // p

{0.00000f, 0.15010f, 1.00000f, 1.00000f}, // P

{0.00000f, 0.00000f, 1.00000f, 1.00000f}, // q

{0.13239f, 0.00000f, 1.00000f, 1.00000f}, // Q

{0.26795f, 0.00000f, 1.00000f, 1.00000f}, // r

{0.37829f, 0.00000f, 1.00000f, 1.00000f}, // R

{0.50000f, 0.00000f, 1.00000f, 1.00000f}, // s

{0.60633f, 0.00000f, 1.00000f, 1.00000f}, // S

{0.73205f, 0.00000f, 1.00000f, 1.00000f}, // t

{0.84990f, 0.00000f, 1.00000f, 1.00000f}, // T

{1.00000f, 0.00000f, 1.00000f, 1.00000f}, // u

{1.00000f, 0.00000f, 0.86761f, 1.00000f}, // U

{1.00000f, 0.00000f, 0.73205f, 1.00000f}, // v

{1.00000f, 0.00000f, 0.62171f, 1.00000f}, // V

{1.00000f, 0.00000f, 0.50000f, 1.00000f}, // w ^

{1.00000f, 0.00000f, 0.39367f, 1.00000f}, // W |

{1.00000f, 0.00000f, 0.26795f, 1.00000f}, // x |

{1.00000f, 0.00000f, 0.15010f, 1.00000f}, // X Rainbow

{0.75000f, 0.75000f, 0.75000f, 1.00000f}, // y Grey

{0.50000f, 0.50000f, 0.50000f, 1.00000f}, // Y |

{0.25000f, 0.25000f, 0.25000f, 1.00000f}, // z Grey

{1.00000f, 0.50000f, 1.00000f, 1.00000f}, // Z

};

...