9#ifndef MAXOS_DRIVERS_CONSOLE_VESABOOTCONSOLE_H
10#define MAXOS_DRIVERS_CONSOLE_VESABOOTCONSOLE_H
24namespace MaxOS::drivers::console {
33 uint16_t* m_video_memory_meta;
38 uint8_t ansi_code_length = -1;
39 char ansi_code[8] =
"0000000";
48 uint16_t
width()
final;
Draws pixels to the screen, and handles drawing lines, rectangles and circles.
base class for all drivers, handles the activation, deactivation, initialisation and reset of the dri...
A console that is a subsection of another console, limited by a width and height.
A stream that can be used to write to a console.
Abstract class for a console, allows for the printing of characters and strings with colours.
virtual void scroll_up()
Scroll the entire console up by 1 line.
Driver for the VESA Console during boot, handles the printing of characters and strings to the screen...
common::ConsoleColour get_foreground_color(uint16_t x, uint16_t y) final
Gets the foreground color at the specified location.
void set_foreground_color(uint16_t x, uint16_t y, common::ConsoleColour) final
Sets the foreground color at the specified location.
void finish() const
Cleans up the boot console.
char get_character(uint16_t x, uint16_t y) final
Gets the character at the specified location.
void put_character(uint16_t x, uint16_t y, char) final
Places a character at the specified location.
uint16_t width() final
Gets the width of the console.
void set_background_color(uint16_t x, uint16_t y, common::ConsoleColour) final
Sets the background color at the specified location.
static void print_logo(bool is_panic=false)
Prints the logo to the center of the screen.
ConsoleStream * cout
The boot console output stream.
static void update_progress_bar(uint8_t percentage)
Updates the progress bar.
uint16_t height() final
Gets the height of the console.
common::ConsoleColour get_background_color(uint16_t x, uint16_t y) final
Gets the background color at the specified location.
A class that can be used to draw text.
Defines a Colour class for representing colours in RGBA format, along with ANSI and console colour en...
ConsoleColour
Enumeration of console colour codes.
Defines a Console class for handling text-based console output with colour support.
Defines Central Processing Unit (CPU) structures and functions for managing CPU state and features.
Defines a base Driver class and DriverManager for managing drivers.
Defines a Font class for drawing text onto a graphics context.
GIMP generated header file for the kernel logo.
GIMP generated logo header for kernel panic screen.
Defines classes for memory input and output operations of various bit widths (8, 16,...
Defines a MemoryManager class for handling memory allocation and deallocation.