diff options
author | Marvin Borner | 2019-11-23 00:36:28 +0100 |
---|---|---|
committer | Marvin Borner | 2019-11-23 00:36:28 +0100 |
commit | 45d9495e77dba212551ae9bc8e09b51e9ed6d324 (patch) | |
tree | 1e8ead9a55b41fa009c28823ca7a9ac0b1b5b2fe /src/kernel/interrupts | |
parent | 4b178c0feb4c415be36be0e4c0def8c447ed42af (diff) |
Tried implementing memory based paging...
Also did many other fixes/improvements.
While I think I did most things correct,
the ACPI doesn't work anymore (triple fault) and
the resolution detection fails with 0x2... :c
Diffstat (limited to 'src/kernel/interrupts')
-rw-r--r-- | src/kernel/interrupts/isr.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/kernel/interrupts/isr.c b/src/kernel/interrupts/isr.c index 0893df7..28f67ae 100644 --- a/src/kernel/interrupts/isr.c +++ b/src/kernel/interrupts/isr.c @@ -3,6 +3,7 @@ #include <kernel/lib/lib.h> #include <kernel/system.h> #include <kernel/io/io.h> +#include <mlibc/string.h> // Defined in isr.asm extern void isr0(); @@ -175,6 +176,7 @@ void fault_handler(struct regs *r) { serial_write_hex(r->err_code); char *message = (char *) exception_messages[r->int_no]; strcat(message, " Exception"); + if (r->err_code == 2) halt_loop(); // Idk loop? panic(message); } } |