diff options
author | Aqua-sama <aqua@iserlohn-fortress.net> | 2021-02-11 16:17:53 +0200 |
---|---|---|
committer | Aqua-sama <aqua@iserlohn-fortress.net> | 2021-02-11 21:33:21 +0200 |
commit | 9a299f2fe91554a1b9d9db402391ae757c591ef8 (patch) | |
tree | 2ec839c869316804954e6b09220140346874aa8d /src/vga.h | |
parent | Generate target dependency files (diff) | |
download | kernel.cpp-9a299f2fe91554a1b9d9db402391ae757c591ef8.tar.xz |
Add comments to explain CGA ports better
Diffstat (limited to 'src/vga.h')
-rw-r--r-- | src/vga.h | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/src/vga.h b/src/vga.h deleted file mode 100644 index 7a8c755..0000000 --- a/src/vga.h +++ /dev/null @@ -1,59 +0,0 @@ -#pragma once -#include <stdlib.h> -#include "ports.h" - -class VGA : public Console { -public: - /* Hardware text mode color constants. */ - enum vga_color : uint8_t { - VGA_COLOR_BLACK = 0, - VGA_COLOR_BLUE = 1, - VGA_COLOR_GREEN = 2, - VGA_COLOR_CYAN = 3, - VGA_COLOR_RED = 4, - VGA_COLOR_MAGENTA = 5, - VGA_COLOR_BROWN = 6, - VGA_COLOR_LIGHT_GREY = 7, - VGA_COLOR_DARK_GREY = 8, - VGA_COLOR_LIGHT_BLUE = 9, - VGA_COLOR_LIGHT_GREEN = 10, - VGA_COLOR_LIGHT_CYAN = 11, - VGA_COLOR_LIGHT_RED = 12, - VGA_COLOR_LIGHT_MAGENTA = 13, - VGA_COLOR_LIGHT_BROWN = 14, - VGA_COLOR_WHITE = 15, - }; - - VGA(vga_color fg = VGA_COLOR_BLACK, vga_color bg = VGA_COLOR_LIGHT_GREY, uint32_t address = 0xB8000); - ~VGA() = default; - - void set_color(vga_color fg, vga_color bg); - - void enable_cursor(uint8_t start, uint8_t end); - void disable_cursor(); - void update_cursor() override; - - void write(char c) override; - void write(ViewIterator& iter) override; - - - struct Entry { - char c; - vga_color fg : 4; - vga_color bg : 4; - } __attribute((packed)); - -private: - const size_t max_columns = 80, max_rows = 25; - size_t column = 0, row = 0; - - vga_color color_fg; - vga_color color_bg; - - Entry* buffer; - - // ports - vga_horizontal_total p_3d4; - vga_horizontal_display_enable_end p_3d5; -}; - |