For an RGBA color, each color component (which lies in [0,1])
is converted (by rounding to nearest) to a fixed-point value
with **m** bits.
We assume that the
fixed-point representation used represents each value
, where , as
**k** (e.g. 1.0 is represented in binary as a string of all ones).
**m** must be at least as large as the number
of bits in the corresponding component of the framebuffer.
If the framebuffer does not contain an A component, then
**m** must be at least 2 for A. A color index is converted
(by rounding to nearest) to a fixed-point value with at least
as many bits as there are in the color index portion of the
framebuffer.

Because a number of the form may not be represented
exactly as a limited-precision floating-point quantity, we place
a further requirement on the fixed-point conversion of RGBA
components. Suppose that lighting is disabled, the color
associated with a vertex has not been clipped, and one of
** Colorub** , ** Colorus** , or ** Colorui** was used
to specify that color. When these conditions are satisfied,
an RGBA component must convert to a value that matches
the component as specified in the ** Color** command:
if **m** is less than the number of bits **b** with which the
component was specified, then the converted value must
equal the most significant **m** bits of the specified value;
otherwise, the most significant **b** bits of the converted
value must equal the specified value.

Sat Mar 29 02:23:21 PST 1997