BIOS color attributes

BIOS Color Attribute is a 8 bit value where the low 4 bits represent the character color and the high 4 bits represent the background color. For example, to print a white character ‘A’ with black background, the “BIOS Color Attribute” would be set to the hexadecimal value 0x0F. The highest bit of the color attribute, which is also the highest bit of the background color can take over two functions. It can either have no influence on the background color making text blink when set, effectively limiting the available background colors to only eight, or if intensive background colors are enabled the full 16 colors become available but blinking is no longer available. This behavior can be changed, i.e., using BIOS 80×86 interrupt 0x10, function 0x1003. This 16 colour palette is often used in console programs (e.g. cmd in Windows) and sometimes for chat in games (e.g. Minecraft).

List of BIOS color attributes
Dec Hex Binary Color
0 0 0000 Black
1 1 0001 Blue
2 2 0010 Green
3 3 0011 Cyan
4 4 0100 Red
5 5 0101 Magenta
6 6 0110 Brown
7 7 0111 Light Gray
8 8 1000 Dark Gray
9 9 1001 Light Blue
10 A 1010 Light Green
11 B 1011 Light Cyan
12 C 1100 Light Red
13 D 1101 Light Magenta
14 E 1110 Yellow
15 F 1111 White
By default, there are 16 colors for text and only 8 colors for background.

There is a way to get all the 16 colors for background, which requires turning off the “blinking attribute”.

Source From Wikipedia