summaryrefslogtreecommitdiff
path: root/arch/i386/include/kernel
diff options
context:
space:
mode:
authorDanny Holman <dholman@gymli.org>2024-02-16 12:37:45 -0600
committerDanny Holman <dholman@gymli.org>2024-02-16 12:37:45 -0600
commit4a7562c22a7365342754beed8fdebab0350bd256 (patch)
tree6bdb3482a5ab02abf5c59a76bc05e6293fc6c831 /arch/i386/include/kernel
parentarch: i386: kernel: the serial driver should be more POSIX-y (diff)
downloadbox-4a7562c22a7365342754beed8fdebab0350bd256.tar.gz
box-4a7562c22a7365342754beed8fdebab0350bd256.tar.zst
box-4a7562c22a7365342754beed8fdebab0350bd256.zip
arch: i386: put framebuffer ops in own file
Move all operations related to the x86 framebuffer into its own set of files. This makes the TTY layer more architecture agnostic. Signed-off-by: Danny Holman <dholman@gymli.org>
Diffstat (limited to '')
-rw-r--r--arch/i386/include/kernel/framebuffer.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/i386/include/kernel/framebuffer.h b/arch/i386/include/kernel/framebuffer.h
new file mode 100644
index 0000000..ef0249c
--- /dev/null
+++ b/arch/i386/include/kernel/framebuffer.h
@@ -0,0 +1,17 @@
+#ifndef I386_FRAMEBUFFER_H
+#define I386_FRAMEBUFFER_H
+
+#include <stddef.h>
+#include <stdint.h>
+
+void fb_init(void);
+void fb_setcolor(uint8_t color);
+void fb_putchar(char c);
+void fb_setpos(int x, int y);
+
+static inline void fb_write(const char *data, size_t size) {
+ for (size_t i = 0; i < size; i++)
+ fb_putchar(data[i]);
+}
+
+#endif