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

This commit is contained in:
kieron 2018-04-29 18:04:40 +00:00
parent c2d3825b8f
commit a12957e069
17 changed files with 24 additions and 22 deletions

BIN
Asuro.iso

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

4
run.sh
View File

@ -8,11 +8,11 @@ echo " "
echo "Running Asaro..."
if [ "$1" = "-d" ]
then
qemu-system-i386 -s -S -cdrom Asuro.iso&
qemu-system-i386 -serial pty -s -S -cdrom Asuro.iso&
sleep 1
gdb -ex "target remote localhost:1234"
else
qemu-system-i386 -monitor stdio -cdrom Asuro.iso
qemu-system-i386 -serial pty -monitor stdio -cdrom Asuro.iso
fi
if [ $? -ne 0 ]

View File

@ -20,9 +20,9 @@ implementation
uses
console;
procedure hook();
procedure IRQ_Hook();
begin
console.writestringln('SERIAL ISR FIRED!');
end;
procedure initPort(PORT : uint16);
@ -42,8 +42,6 @@ begin
initPort(COM2);
initPort(COM3);
initPort(COM4);
isrmanager.registerISR(32 + 3, @Hook);
isrmanager.registerISR(32 + 4, @Hook);
end;
function serial_received(PORT : uint16) : uint32;
@ -63,7 +61,9 @@ var
begin
receive:= 0;
_timeout:= timeout;
while (serial_received(PORT) = 0) do begin end;
while (serial_received(PORT) = 0) AND (_timeout > 0) do begin
dec(_timeout);
end;
if _timeout <> 0 then begin
receive:= inb(PORT);
end;
@ -76,7 +76,9 @@ var
begin
send:= false;
_timeout:= timeout;
while (is_transmit_empty(PORT) = 0) do begin end;
while (is_transmit_empty(PORT) = 0) and (_timeout > 0) do begin
dec(_timeout);
end;
if _timeout <> 0 then begin
outb(PORT, data);
send:= true;

View File

@ -3,11 +3,11 @@ unit asuro;
interface
const
VERSION = '1.0.0-594a';
VERSION = '1.0.0-596a';
VERSION_MAJOR = '1';
VERSION_MINOR = '0';
VERSION_SUB = '0';
REVISION = '594';
REVISION = '596';
RELEASE = 'a';
implementation

View File

@ -12,7 +12,7 @@ unit strings;
interface
uses
util,
util,
lmemorymanager,
lists;

View File

@ -154,7 +154,7 @@ begin
{ Console Init }
console.init();
serial.init();
//serial.init();
{ Call Tracer }
tracer.init();

View File

@ -377,16 +377,16 @@ var
begin
success:= true;
success:= success AND Serial.Send(uint8('H'), COM1, 100000);
success:= success AND Serial.Send(uint8('E'), COM1, 100000);
success:= success AND Serial.Send(uint8('L'), COM1, 100000);
success:= success AND Serial.Send(uint8('L'), COM1, 100000);
success:= success AND Serial.Send(uint8('O'), COM1, 100000);
success:= success AND Serial.Send(uint8('W'), COM1, 100000);
success:= success AND Serial.Send(uint8('O'), COM1, 100000);
success:= success AND Serial.Send(uint8('R'), COM1, 100000);
success:= success AND Serial.Send(uint8('L'), COM1, 100000);
success:= success AND Serial.Send(uint8('D'), COM1, 100000);
success:= success AND Serial.Send(COM1, uint8('H'), 100000);
success:= success AND Serial.Send(COM1, uint8('E'), 100000);
success:= success AND Serial.Send(COM1, uint8('L'), 100000);
success:= success AND Serial.Send(COM1, uint8('L'), 100000);
success:= success AND Serial.Send(COM1, uint8('O'), 100000);
success:= success AND Serial.Send(COM1, uint8('W'), 100000);
success:= success AND Serial.Send(COM1, uint8('O'), 100000);
success:= success AND Serial.Send(COM1, uint8('R'), 100000);
success:= success AND Serial.Send(COM1, uint8('L'), 100000);
success:= success AND Serial.Send(COM1, uint8('D'), 100000);
if success then begin
console.writestringlnWND('Send Success!', TERMINAL_HWND);
end else begin