summaryrefslogtreecommitdiff
path: root/kernel/include/term.h
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/include/term.h')
-rw-r--r--kernel/include/term.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/kernel/include/term.h b/kernel/include/term.h
new file mode 100644
index 0000000..8a8f1ef
--- /dev/null
+++ b/kernel/include/term.h
@@ -0,0 +1,26 @@
+#pragma once
+
+#include <stdint.h>
+#include <stddef.h>
+#include <drivers/vga.h>
+
+#define TERM_W VGA_TEXT_W
+#define TERM_H VGA_TEXT_H
+
+void term_init(void);
+void term_reset(void);
+void term_setfg(enum vga_color color);
+void term_setbg(enum vga_color color);
+void term_clear(void);
+void term_scroll(int lines);
+void term_setpos(uint8_t x, uint8_t y);
+
+uint32_t term_save(void);
+void term_load(uint32_t state);
+
+uint16_t term_save_col(void);
+void term_load_col(uint16_t color);
+
+bool term_newline(void);
+
+void term_flush(void);