X-Git-Url: http://ncurses.scripts.mit.edu/?a=blobdiff_plain;f=doc%2Fhtml%2Fman%2Fcurs_color.3x.html;h=15ad17409774e90cd34b6992ac13004c994e7570;hb=3f57ad09dfcb62c8ad444e13fa4d450c05e878ba;hp=71fa2749f045da8e2ca4a97a2e50256fe59de494;hpb=81304798ee736c467839c779c9ca5dca48db7bea;p=ncurses.git diff --git a/doc/html/man/curs_color.3x.html b/doc/html/man/curs_color.3x.html index 71fa2749..15ad1740 100644 --- a/doc/html/man/curs_color.3x.html +++ b/doc/html/man/curs_color.3x.html @@ -1,6 +1,6 @@ @@ -36,7 +36,7 @@
+ SVr3.2 introduced color support to curses in 1987. + + SVr4 made internal changes, e.g., moving the storage for the color + state from SP (the SCREEN structure) to cur_term (the TERMINAL struc- + ture), but provided the same set of library functions. + + SVr4 curses limits the number of color pairs to 64, reserving color + pair zero (0) as the terminal's initial uncolored state. This limit + arises because the color pair information is a bitfield in the chtype + data type (denoted by A_COLOR). + + Other implementations of curses had different limits: + + o PCCurses (1987-1990) provided for only eight (8) colors. + + o PDCurses (1992-present) inherited the 8-color limitation from PC- + Curses, but changed this to 256 in version 2.5 (2001), along with + changing chtype from 16-bits to 32-bits. + + o X/Open Curses (1992-present) added a new structure cchar_t to store + the character, attributes and color-pair values, allowing increased + range of color-pairs. Both color-pairs and color-values used a + signed short, limiting values to 15 bits. + + o ncurses (1992-present) uses eight bits for A_COLOR in chtype val- + ues. + + Version 5.3 provided a wide-character interface (2002), but left + color-pairs as part of the attributes-field. + + Since version 6 (2015), ncurses uses a separate int for color-pairs + in the cchar_t values. When those color-pair values fit in 8 bits, + ncurses allows color-pairs to be manipulated via the functions us- + ing chtype values. + + o NetBSD curses used 6 bits from 2000 (when colors were first sup- + ported) until 2004. At that point, NetBSD changed to use 10 bits. + As of 2021, that size is unchanged. Like ncurses before version 6, + the NetBSD color-pair information is stored in the attributes field + of cchar_t, limiting the number of color-pairs by the size of the + bitfield. + +
This implementation satisfies XSI Curses's minimum maximums for COLORS and COLOR_PAIRS. @@ -511,6 +555,7 @@