aboutsummaryrefslogtreecommitdiff
path: root/src/kernel.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel.c')
-rw-r--r--src/kernel.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/kernel.c b/src/kernel.c
new file mode 100644
index 0000000..b84d7ee
--- /dev/null
+++ b/src/kernel.c
@@ -0,0 +1,24 @@
+#include "mem.h"
+
+#include <gdt.h>
+#include <stdio.h>
+
+#include "devices/uart_16550.h"
+#include "devices/vga.h"
+
+void kmain() {
+ gdt_install();
+
+ if (uart_init(COM1) != 0) printf("UART self-test failed.\r\n");
+
+ printf("hello %s world\n", "kernel");
+
+ vga_init(vmm_map(0xb8000, 0xc03ff000));
+
+ alloc4M();
+ char *c = (char *)0xc0700000;
+ if (*c == 0) printf("c is 0\r\n");
+
+ while (1)
+ ;
+}