diff --git a/kaleid/kernel/ke/idt.c b/kaleid/kernel/ke/idt.c index 16ecabb..cec919c 100644 --- a/kaleid/kernel/ke/idt.c +++ b/kaleid/kernel/ke/idt.c @@ -388,8 +388,16 @@ void KeBrkDumpRegisters(ISRFrame_t *regs) { IoDoBeepNoIdt(); - bprintf(BStdOut, "\n\n" + size_t N = 3; + char *ptr = (char *)lmax((ulong)BStdDbg->buf, + (ulong)(BStdDbg->wp - BStdDbg->lastLF - (BStdDbg->lineLen * N))); + bprintf(BStdOut, "\n%C Debug messages last %d lines: \n %s\n", + VGA_COLOR_LIGHT_GREY, + N, + ptr); + + bprintf(BStdOut, "%C RIP: %#016lx RSP: %#016lx RBP: %#016lx\n\n" " SS: %#016lx CS: %#016lx CR0: %#016lx\n"