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

This commit is contained in:
kieron
2018-04-09 14:35:35 +00:00
parent 9960a2235b
commit df6faec9e0
12 changed files with 22 additions and 18 deletions
BIN
View File
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
+7
View File
@@ -0,0 +1,7 @@
unit net;
interface
implementation
end.
@@ -393,31 +393,28 @@ var
data : uint32;
begin
console.outputln('E1000 Driver', 'Interrupt begin.');
CLI;
requestConfig(bus, slot, func, 1);
data := inl($CFC);
data := data AND $FFF7FFFF;
writeConfig(bus, slot, func, 1, data);
status:= readCommand($0C);
console.output('E1000 Driver', 'Int Status: ');
console.writehexln(status);
status:= readCommand($C0);
//console.output('E1000 Driver', 'Int Status: ');
//console.writehexln(status);
if (status AND $04) > 0 then begin
//console.outputln('E1000 Driver', 'Link Status.');
startLink();
end else if (Status AND $10) > 0 then begin
//console.outputln('E1000 Driver', 'Good Threshold.');
//Good Threshold
end else if (Status AND $80) > 0 then begin
//console.outputln('E1000 Driver', 'Packet Recv.');
handleReceive();
end;
end;
//Clear the INT on the Device First by using write-1
writeCommand(REG_IMASK, 1);
//Clear INT on PIC and Cascade
outb($A0, $20);
outb($20, $20);
console.outputln('E1000 Driver', 'Interrupt End.');
//CLI (Not 100% Nessisary as this is done on IRET)
CLI;
end;
procedure console_command_mac(params : PParamList);
@@ -503,7 +500,7 @@ begin
IDT.set_gate(32 + PCI_Info^.interrupt_line, uint32(@fire), $08, ISR_RING_0);
//enableInturrupt();
enableInturrupt();
rxinit();
txinit();