#pragma once #if !defined(OS_TTY_HPP_INCLUDED) #define OS_TTY_HPP_INCLUDED 1 #include #include #include namespace tty { enum class VgaColor : uint8_t { BLACK = 0, BLUE = 1, GREEN = 2, CYAN = 3, RED = 4, MAGENTA = 5, BROWN = 6, LIGHT_GREY = 7, DARK_GREY = 8, LIGHT_BLUE = 9, LIGHT_GREEN = 10, LIGHT_CYAN = 11, LIGHT_RED = 12, LIGHT_MAGENTA = 13, LIGHT_BROWN = 14, WHITE = 15 }; struct VgaDoubleColor { VgaColor foreground : 4 = VgaColor::LIGHT_GREY; VgaColor background : 4 = VgaColor::BLACK; }; void initialize() noexcept; void setColor(VgaDoubleColor color) noexcept; void putEntryAt(char chr, VgaDoubleColor color, size_t posX, size_t posY) noexcept; void putChar(char chr) noexcept; void deleteChar() noexcept; void write(const char* data, size_t size) noexcept; void write(const char* data) noexcept; [[nodiscard]] const std::string& readLine() noexcept; bool setPSFFont(const void* data, size_t length) noexcept; } // namespace tty #endif // OS_TTY_HPP_INCLUDED