caos-with-snake/console.c

20 lines
338 B
C
Raw Normal View History

2022-11-20 18:59:53 +03:00
#include "console.h"
2022-11-21 00:53:29 +03:00
#include "drivers/uart.h"
#include "drivers/vga.h"
2022-11-20 18:59:53 +03:00
void printk(const char *msg) {
2022-11-20 18:59:53 +03:00
vga_print_string(msg);
2022-11-21 00:53:29 +03:00
for (; *msg; ++msg) {
uartputc(*msg);
}
2022-11-20 18:59:53 +03:00
}
2022-11-20 22:17:13 +03:00
void panic(const char *msg) {
2022-11-21 00:53:29 +03:00
printk("\nKernel panic: ");
2022-11-20 22:17:13 +03:00
printk(msg);
2022-11-21 00:53:29 +03:00
asm("cli");
2022-11-20 22:17:13 +03:00
while (1) {
2026-04-06 05:20:00 +03:00
asm volatile("hlt");
2022-11-20 22:17:13 +03:00
}
}