BIOS color attributes (original) (raw)

From Wikipedia, the free encyclopedia

A BIOS Color Attribute is an 8 bit value where the low 4 bits represent the character color and the high 4 bits represent the background color. The name comes from the fact that these colors are used in BIOS interrupts, specifically INT 10h, the video interrupt. When writing text to the screen, a BIOS color attribute is used to designate the color to write the text in. For example, to print a white character with a black background, a color attribute of 0Fhex would be used. The high four bits are set to 0000bin, representing the background color, black. The low 4 bits, 1111bin, represent the foreground color, white. 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 interrupt 10hex, function 1003hex. By default, when using the BIOS interrupt, the highest bit controls the brightness of colors, and not blinking, but this behavior may differ in other implementations of BIOS colors [_citation needed_]. [1] This 16 colour palette is often used in console programs (e.g. cmd in Windows) and sometimes for chat in games (e.g. Minecraft).[2]

List of BIOS color attributes

[edit]

| 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".

  1. ^ Int 10h/AX=1003 Ralf Brown's Interrupt List, online version
  2. ^ "Multiplayer: Chat". Minecraft Wiki. 11 June 2015. Retrieved 24 September 2023.