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

This commit is contained in:
kieron 2018-04-29 14:52:36 +00:00
parent 335b0a12de
commit 980b94b896
58 changed files with 35 additions and 30 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.

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.

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.

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.

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.

View File

@ -37,9 +37,9 @@ end;
procedure update();
begin
outb($70, $0C); // select register C
io_wait();
inb($71);
//outb($70, $0C); // select register C
//io_wait();
//inb($71);
//console.writestringln('RTC Update');
//while not is_update_in_progress do begin
//end;
@ -47,35 +47,35 @@ begin
//end;
outb($70, $00);
io_wait();
DateTime.Seconds:= inb($71);
DateTime.Seconds:= BCDToUint8(inb($71));
io_wait();
outb($70, $02);
io_wait();
DateTime.Minutes:= inb($71);
DateTime.Minutes:= BCDToUint8(inb($71));
io_wait();
outb($70, $04);
io_wait();
DateTime.Hours:= inb($71);
DateTime.Hours:= BCDToUint8(inb($71));
io_wait();
outb($70, $06);
io_wait();
DateTime.Weekday:= inb($71);
DateTime.Weekday:= BCDToUint8(inb($71));
io_wait();
outb($70, $07);
io_wait();
DateTime.Day:= inb($71);
DateTime.Day:= BCDToUint8(inb($71));
io_wait();
outb($70, $08);
io_wait();
DateTime.Month:= inb($71);
DateTime.Month:= BCDToUint8(inb($71));
io_wait();
outb($70, $09);
io_wait();
DateTime.Year:= inb($71);
DateTime.Year:= BCDToUint8(inb($71));
io_wait();
outb($70, $32);
io_wait();
DateTime.Century:= inb($71);
DateTime.Century:= BCDToUint8(inb($71));
io_wait();
end;
@ -92,7 +92,7 @@ begin
io_wait();
//enable ints
outb($70, $8B);
{outb($70, $8B);
io_wait();
prev:= inb($71);
io_wait();
@ -101,7 +101,7 @@ begin
outb($71, prev OR $40);
STI;
outb($70, $00);
inb($71);
inb($71);}
//isrmanager.registerISR(32 + 8, @update);
TMR_0_ISR.hook(uint32(@update));

View File

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

View File

@ -45,6 +45,8 @@ procedure halt_and_dont_catch_fire();
procedure BSOD(fault : pchar; info : pchar);
procedure psleep(t : uint16);
function BCDToUint8(bcd : uint8) : uint8;
var
endptr : uint32; external name '__end';
stack : uint32; external name 'KERNEL_STACK';
@ -296,6 +298,11 @@ begin
getByte:= (i AND mask) SHR (8*index);
end;
function BCDToUint8(bcd : uint8) : uint8;
begin
BCDToUint8:= ((bcd SHR 4) * 10) + (bcd AND $0F);
end;
procedure BSOD(fault : pchar; info : pchar);
var
trace : pchar;

View File

@ -252,22 +252,20 @@ end;
procedure printTime(Params : PParamList);
begin
writeStringWND('Seconds: ', TERMINAL_HWND);
writeIntWND(DateTime.Day, TERMINAL_HWND);
writeStringWND('/', TERMINAL_HWND);
writeIntWND(DateTime.Month, TERMINAL_HWND);
writeStringWND('/', TERMINAL_HWND);
writeIntWND(DateTime.Century, TERMINAL_HWND);
writeIntWND(DateTime.Year, TERMINAL_HWND);
writeStringWND(' ', TERMINAL_HWND);
writeIntWND(DateTime.Hours, TERMINAL_HWND);
writeStringWND(':', TERMINAL_HWND);
writeIntWND(DateTime.Minutes, TERMINAL_HWND);
writeStringWND(':', TERMINAL_HWND);
writeIntlnWND(DateTime.Seconds, TERMINAL_HWND);
writeStringWND('Minutes: ', TERMINAL_HWND);
writeIntlnWND(DateTime.Minutes, TERMINAL_HWND);
writeStringWND('Hours: ', TERMINAL_HWND);
writeIntlnWND(DateTime.Hours, TERMINAL_HWND);
writeStringWND('Weekday: ', TERMINAL_HWND);
writeIntlnWND(DateTime.Weekday, TERMINAL_HWND);
writeStringWND('Day: ', TERMINAL_HWND);
writeIntlnWND(DateTime.Day, TERMINAL_HWND);
writeStringWND('Month: ', TERMINAL_HWND);
writeIntlnWND(DateTime.Month, TERMINAL_HWND);
writeStringWND('Year: ', TERMINAL_HWND);
writeIntlnWND(DateTime.Year, TERMINAL_HWND);
writeStringWND('Century: ', TERMINAL_HWND);
writeIntlnWND(DateTime.Century, TERMINAL_HWND);
//writeStringWND('Weekday: ', TERMINAL_HWND);
//writeIntlnWND(DateTime.Weekday, TERMINAL_HWND);
end;
procedure registerCommand(command : pchar; method : TCommandMethod; description : pchar);