serial Kernel panic
This commit is contained in:
16
src/kmain.c
16
src/kmain.c
@@ -62,6 +62,16 @@ void hcf()
|
||||
}
|
||||
}
|
||||
|
||||
void panic(struct cpu_status_t* ctx)
|
||||
{
|
||||
DEBUG("\x1b[38;5;231m\x1b[48;5;196mKernel panic!!!\x1b[0m at rip=%p\nSomething went horribly wrong! vect=0x%.2x errcode=0x%x\nrax=%p rbx=%p rcx=%p rdx=%p\nrsi=%p rdi=%p r8=%p r9=%p\nr10=%p r11=%p r12=%p r13=%p\nr14=%p r15=%p\n\nflags=%p\nstack at rbp=%p\nHalting...",
|
||||
ctx->iret_rip,
|
||||
ctx->vector_number, ctx->error_code, ctx->rax, ctx->rbx, ctx->rcx, ctx->rdx, ctx->rsi, ctx->rdi,
|
||||
ctx->r8, ctx->r9, ctx->r10, ctx->r11, ctx->r12, ctx->r13, ctx->r14, ctx->r15, ctx->iret_flags,
|
||||
ctx->rbp);
|
||||
hcf();
|
||||
}
|
||||
|
||||
const char* splash = "pepperOS version "PEPPEROS_VERSION_MAJOR"."PEPPEROS_VERSION_MINOR"."PEPPEROS_VERSION_PATCH"\n";
|
||||
|
||||
struct boot_context boot_ctx;
|
||||
@@ -108,5 +118,11 @@ void kmain()
|
||||
term_init();
|
||||
kputs(splash);
|
||||
|
||||
for (int i=0; i<50; i++)
|
||||
{
|
||||
printf("testing, attention please %d\n", i);
|
||||
timer_wait(1000);
|
||||
}
|
||||
|
||||
hcf();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user