git-svn-id: https://spexeah.com:8443/svn/Asuro@1441 6dbc8c32-bb84-406f-8558-d1cf31a0ab0c

This commit is contained in:
kieron
2020-07-21 22:06:41 +00:00
parent 50b77b9ce9
commit 99fc00450e
24 changed files with 1154 additions and 274 deletions

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(true);
BSOD('AC', 'Alignment Check Exception.');
console.writestringln('Alignment Check Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(false);
BSOD('BE', 'Breakpoint Exception.');
console.writestringln('Breakpoint Exception');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(true);
BSOD('TSS', 'Bad TSS Exception.');
console.writestringln('Bad TSS Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(false);
BSOD('CF', 'Coprocessor Fault Exception.');
console.writestringln('Coprocessor Fault Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(false);
BSOD('CSO', 'Coprocessor Seg Overrun Exception.');
console.writestringln('Coprocessor Seg Overrun Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(false);
BSOD('DE', 'Debug Exception');
console.writestringln('Debug Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(false);
BSOD('DBZ', 'Divide By Zero Exception.');
console.writestringln('Divide by Zero Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(true);
BSOD('DF', 'Double Fault.');
console.writestringln('Double Fault.');
util.halt_and_catch_fire;

View File

@ -25,20 +25,9 @@ var
begin
CLI;
asm
MOV EAX, EBP
MOV Regs, EAX
end;
correctInterruptRegisters(true);
BSOD('GPF', 'General Protection Fault.');
console.writestringln('General Protection Fault.');
console.writestring('Flags: ');
console.writehexln(Regs^.EFlags);
console.writestring('EIP: ');
console.writehexln(Regs^.EIP);
console.writestring('CS: ');
console.writehexln(Regs^.CS);
console.writestring('Error Code: ');
console.writehexln(Regs^.ErrorCode);
util.halt_and_catch_fire;
end;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(false);
BSOD('IDO', 'Into Detected Overflow Exception.');
console.writestringln('IDO Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(false);
BSOD('IO', 'Invalid OPCode Exception.');
console.writestringln('Invalid OPCode Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(false);
BSOD('MC', 'Machine Check Exception.');
console.writestringln('Machine Check Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(false);
BSOD('NC', 'No Coprocessor Exception.');
console.writestringln('No Coprocessor Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(false);
BSOD('NMI', 'Non-Maskable Interrupt Exception.');
console.writestringln('NMI Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(false);
BSOD('OOB', 'Out of Bouunds Exception.');
console.writestringln('OOB Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(true);
BSOD('PF', 'Page Fault.');
console.writestringln('Page Fault.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(true);
BSOD('SF', 'Stack Fault Exception.');
console.writestringln('Stack Fault Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(true);
BSOD('SNS', 'Segment Not Present Exception.');
console.writestringln('Segment Not Present Exception.');
util.halt_and_catch_fire;

View File

@ -24,6 +24,7 @@ var
begin
CLI;
correctInterruptRegisters(false);
BSOD('UI', 'Unknown Interrupt Exception.');
console.writestringln('Unknown Interrupt Exception.');
util.halt_and_catch_fire;