This commit is contained in:
Adrien Bourmault 2019-03-12 17:28:34 +01:00
commit 982cd618a6
4 changed files with 8 additions and 2 deletions

View File

@ -161,7 +161,6 @@ _loader64:
call tritemporize ; Let time to see
extern StartKern
push qword 12
push qword 12
call StartKern

View File

@ -42,6 +42,8 @@ noreturn void StartKern(void *mbInfo, int mbMagic)
// Kernel terminals
InitTerms();
*vga = ('A') | (0x0F << 8);
// We're out
StartPanic("We had\n *mbInfo : %x\n mbMagic : %x\n\nGoodbye World :(", mbInfo, mbMagic);
}

View File

@ -32,7 +32,7 @@ extern Terminal_t VGA_Terminal;
//
void InitTerms(void)
{
KalAssert(!GetStdOut() && !GetStdDbg());
//KalAssert(!GetStdOut() && !GetStdDbg());
VGA_Init();

View File

@ -50,10 +50,13 @@ noreturn void StartPanic(const char *fmt, ...)
va_list ap;
DisableIRQs();
*vga = ('B') | (0x0F << 8);
if (GetCurProc()) _SetCurProc(NULL);
if (GetStdOut() == NULL) CrashSystem();
HaltCPU();
GetStdOut()->ClearTermUnlocked(GetStdOut());
if (fmt == NULL) {
@ -72,6 +75,7 @@ noreturn void StartPanic(const char *fmt, ...)
GetStdOut()->PrintOnTermUnlocked(GetStdOut(), "\nPanic!\n\n");
GetStdOut()->PrintOnTermUnlocked(GetStdOut(), GetPanicStr());
tritemporize();
HaltCPU();
}
@ -81,6 +85,7 @@ noreturn void StartPanic(const char *fmt, ...)
noreturn void CrashSystem(void)
{
DisableIRQs();
tritemporize();
HaltCPU();
}