X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Fdrv%2Fkb.c;h=28feb05b50f870c39c38e16a3763d9b20aaff5e9;hb=63bd7149b4e48db1d236dff264a7dfe5286930fe;hp=edeb68591db8f8ac20e864d4b6ec1557327cfa60;hpb=dea6bcf35a3f52396724d74e47f71cb3afade37c;p=tpg%2Facess2.git diff --git a/Kernel/drv/kb.c b/Kernel/drv/kb.c index edeb6859..28feb05b 100644 --- a/Kernel/drv/kb.c +++ b/Kernel/drv/kb.c @@ -15,6 +15,7 @@ // === IMPORTS === void Threads_Dump(void); +void Heap_Stats(void); // === PROTOTYPES === int KB_Install(char **Arguments); @@ -183,16 +184,21 @@ void KB_IRQHandler(int IRQNum) { switch(ch) { - case 'q': *((int*)1) = 0; break; - case 'd': __asm__ __volatile__ ("xchg %bx, %bx"); break; - case 'p': Threads_Dump(); break; + // Kernel Panic (Page Fault) + case 'q': *((int*)1) = 0; return; + // Bochs Magic Breakpoint + case 'd': __asm__ __volatile__ ("xchg %bx, %bx"); return; + // Thread List Dump + case 'p': Threads_Dump(); return; + // Heap Statistics + case 'h': Heap_Stats(); return; } } #endif // Is shift pressed - // - Darn ugly hacks !(!x) means (bool)x - if( !(!gbKB_ShiftState) ^ gbKB_CapsState) + // - Darn ugly hacks !!x means (bool)x + if( !!gbKB_ShiftState ^ gbKB_CapsState) { switch(ch) {