aboutsummaryrefslogtreecommitdiff
path: root/arch/x86_64/arch/vga/text/flags.hpp
blob: 7a29e33463c6529bcf206d4017570d406f74137f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#ifndef TEACHOS_X86_64_VGA_TEXT_FLAGS_HPP
#define TEACHOS_X86_64_VGA_TEXT_FLAGS_HPP

// IWYU pragma: private, include <arch/vga/text.hpp>

namespace arch::vga::text
{

  //! VGA Text Mode standard background modification flags.
  enum struct background_flag : bool
  {
    //! Do not modify the foreground rendering.
    none,
    //! Render the background as blinking or intense.
    //!
    //! Whether this flag is interpreted as 'blink' or 'bright' depends on the currently active configuration of the VGA
    //! device.
    //!
    //! @note The VGA standard does not specify the exact effect of this 'intense', however, most devices render such
    //! colors brighter.
    blink_or_bright,
  };

  //! VGA Text Mode standard foreground modification flags.
  enum struct foreground_flag : bool
  {
    //! Do not modify the foreground rendering.
    none,
    //! Render the foreground as intense.
    //!
    //! @note The VGA standard does not specify the exact effect of this 'intense', however, most devices render such
    //! colors brighter.
    intense,
  };

}  // namespace arch::vga::text

#endif