Files
novaos/kernel/klog.c

46 lines
787 B
C

#include <stddef.h>
#include <kernel/_kernel.h>
#include <kernel/serial.h>
#include <kernel/tty.h>
enum log_mode {
LOG_ERR,
LOG_WARN,
LOG_INFO,
};
void klog(const char* buf, enum log_mode mode)
{
switch(mode) {
case LOG_ERR:
serial_writestring("ERROR: ");
terminal_writestring("ERROR: ");
break;
case LOG_WARN:
serial_writestring("WARNING: ");
terminal_writestring("WARNING: ");
break;
case LOG_INFO:
serial_writestring("INFO: ");
terminal_writestring("INFO: ");
break;
}
serial_writestring(buf);
terminal_writestring(buf);
serial_writestring("\n");
terminal_writestring("\n");
}
void kerror(const char* buf)
{klog(buf, LOG_ERR);}
void kwarn(const char* buf)
{klog(buf, LOG_WARN);}
void kinfo(const char* buf)
{klog(buf, LOG_INFO);}