diff --git a/kaleid/kernel/cpu/idt.c b/kaleid/kernel/cpu/idt.c index ef3382b..1f35f7c 100644 --- a/kaleid/kernel/cpu/idt.c +++ b/kaleid/kernel/cpu/idt.c @@ -275,22 +275,40 @@ void IdtEarlyExceptionHandler(ISRFrame_t *regs) int recoverable = 0; if (!recoverable) { - KeStartPanic("[ISR 0x%x] Irrecoverable Kernel %s\n" - " Error code : 0x%x\n" - " RIP:\t\t%p\n" - " CS:\t\t%p\n" - " RFLAGS:\t%022b\n" - " RSP:\t\t%p\n" - " SS:\t\t%p\n", + KeStartPanic("[ISR 0x%x] Irrecoverable Kernel %s\n\n" + " Error code : %p\n\n" + " RIP: %p CS: %p RSP: %p\n" + " SS: %p RAX: %p RBX: %p\n" + " RCX: %p RDX: %p RSI: %p\n" + " RDI: %p RBP: %p R8: %p\n" + " R9: %p R10: %p R11: %p\n" + " R12: %p R13: %p R14: %p\n" + " R15: %p RFLAGS: %022b", regs->intNo, ExceptionsChar[regs->intNo], regs->ErrorCode, regs->rip, regs->cs, - regs->rflags, regs->rsp, - regs->ss + regs->ss, + regs->regs[0], + regs->regs[1], + regs->regs[2], + regs->regs[3], + regs->regs[4], + regs->regs[5], + regs->regs[6], + regs->regs[7], + regs->regs[8], + regs->regs[9], + regs->regs[10], + regs->regs[11], + regs->regs[12], + regs->regs[13], + regs->regs[14], + regs->rflags ); + } else { bprintf(BStdOut, "[ISR 0x%x] %s\n", regs->intNo, ExceptionsChar[regs->intNo]); BStdOut->flusher(BStdOut); diff --git a/kaleid/kernel/io/spkr.c b/kaleid/kernel/io/spkr.c index 1f692d1..93ce9ab 100644 --- a/kaleid/kernel/io/spkr.c +++ b/kaleid/kernel/io/spkr.c @@ -72,6 +72,7 @@ void IoDoTone(uint tone, uint time) void IoDoStarWars(void) { + IoDoTone(0,0); struct Note { uint tone;