Step 1 : StartPanic is the real problem

This commit is contained in:
Adrien Bourmault 2019-03-11 18:17:08 +01:00
parent 2aeaefe7ac
commit 021c94489b
3 changed files with 7 additions and 2 deletions

View File

@ -23,6 +23,10 @@
; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ; ; along with OS/K. If not, see <https://www.gnu.org/licenses/>. ;
;=----------------------------------------------------------------------------=; ;=----------------------------------------------------------------------------=;
global temporize
global bitemporize
global tritemporize
[BITS 64] [BITS 64]
temporize: temporize:

View File

@ -42,8 +42,6 @@ noreturn void StartKern(void *mbInfo, int mbMagic)
// Kernel terminals // Kernel terminals
InitTerms(); InitTerms();
vga = 0xB8000;
*vga = ('A') | (0x0F << 8); *vga = ('A') | (0x0F << 8);
// We're out // We're out

View File

@ -62,6 +62,7 @@ noreturn void StartPanic(const char *fmt, ...)
if (GetPanicStr()) { if (GetPanicStr()) {
GetStdOut()->PrintOnTermUnlocked(GetStdOut(), "\ndouble panic!"); GetStdOut()->PrintOnTermUnlocked(GetStdOut(), "\ndouble panic!");
tritemporize();
HaltCPU(); HaltCPU();
} }
@ -72,6 +73,7 @@ noreturn void StartPanic(const char *fmt, ...)
GetStdOut()->PrintOnTermUnlocked(GetStdOut(), "\npanic!\n\n"); GetStdOut()->PrintOnTermUnlocked(GetStdOut(), "\npanic!\n\n");
GetStdOut()->PrintOnTermUnlocked(GetStdOut(), GetPanicStr()); GetStdOut()->PrintOnTermUnlocked(GetStdOut(), GetPanicStr());
tritemporize();
HaltCPU(); HaltCPU();
} }
@ -81,6 +83,7 @@ noreturn void StartPanic(const char *fmt, ...)
noreturn void CrashSystem(void) noreturn void CrashSystem(void)
{ {
DisableIRQs(); DisableIRQs();
tritemporize();
HaltCPU(); HaltCPU();
} }