diff --git a/Asuro.iso b/Asuro.iso index ac4ceb35..5069df20 100644 Binary files a/Asuro.iso and b/Asuro.iso differ diff --git a/bin/kernel.bin b/bin/kernel.bin index 51ba5ef2..c8c194ff 100755 Binary files a/bin/kernel.bin and b/bin/kernel.bin differ diff --git a/iso/boot/asuro.bin b/iso/boot/asuro.bin index 51ba5ef2..c8c194ff 100755 Binary files a/iso/boot/asuro.bin and b/iso/boot/asuro.bin differ diff --git a/lib/ACE.ppu b/lib/ACE.ppu index 680cb8de..73cf64ce 100644 Binary files a/lib/ACE.ppu and b/lib/ACE.ppu differ diff --git a/lib/BPE.ppu b/lib/BPE.ppu index f8ab28d5..2a28094c 100644 Binary files a/lib/BPE.ppu and b/lib/BPE.ppu differ diff --git a/lib/BTSSE.ppu b/lib/BTSSE.ppu index 341e1b04..eab772ab 100644 Binary files a/lib/BTSSE.ppu and b/lib/BTSSE.ppu differ diff --git a/lib/CFE.ppu b/lib/CFE.ppu index 1ffe3a9c..b6c810d7 100644 Binary files a/lib/CFE.ppu and b/lib/CFE.ppu differ diff --git a/lib/CSOE.ppu b/lib/CSOE.ppu index a509d1f6..62d493bf 100644 Binary files a/lib/CSOE.ppu and b/lib/CSOE.ppu differ diff --git a/lib/DBGE.ppu b/lib/DBGE.ppu index 5af1d23d..256ff189 100644 Binary files a/lib/DBGE.ppu and b/lib/DBGE.ppu differ diff --git a/lib/DBZ.ppu b/lib/DBZ.ppu index 666163a4..932384ff 100644 Binary files a/lib/DBZ.ppu and b/lib/DBZ.ppu differ diff --git a/lib/DFE.ppu b/lib/DFE.ppu index 9d53119e..a3854553 100644 Binary files a/lib/DFE.ppu and b/lib/DFE.ppu differ diff --git a/lib/E1000.ppu b/lib/E1000.ppu index 9f6b71fc..89854cca 100644 Binary files a/lib/E1000.ppu and b/lib/E1000.ppu differ diff --git a/lib/GPF.ppu b/lib/GPF.ppu index 446aa60c..ce893cae 100644 Binary files a/lib/GPF.ppu and b/lib/GPF.ppu differ diff --git a/lib/IDE.ppu b/lib/IDE.ppu index bc610237..06775dd8 100644 Binary files a/lib/IDE.ppu and b/lib/IDE.ppu differ diff --git a/lib/IDOE.ppu b/lib/IDOE.ppu index 61c33768..22664683 100644 Binary files a/lib/IDOE.ppu and b/lib/IDOE.ppu differ diff --git a/lib/IOPE.ppu b/lib/IOPE.ppu index 7cbe1838..e1def09b 100644 Binary files a/lib/IOPE.ppu and b/lib/IOPE.ppu differ diff --git a/lib/MCE.ppu b/lib/MCE.ppu index f610098f..3bcb2e6a 100644 Binary files a/lib/MCE.ppu and b/lib/MCE.ppu differ diff --git a/lib/NCE.ppu b/lib/NCE.ppu index f51d83db..e46833e8 100644 Binary files a/lib/NCE.ppu and b/lib/NCE.ppu differ diff --git a/lib/NMIE.ppu b/lib/NMIE.ppu index 71b06c2e..bb016cf6 100644 Binary files a/lib/NMIE.ppu and b/lib/NMIE.ppu differ diff --git a/lib/OOBE.ppu b/lib/OOBE.ppu index 5e98514a..e8869605 100644 Binary files a/lib/OOBE.ppu and b/lib/OOBE.ppu differ diff --git a/lib/PCI.ppu b/lib/PCI.ppu index 1790cbb1..8fb8a2c8 100644 Binary files a/lib/PCI.ppu and b/lib/PCI.ppu differ diff --git a/lib/PF.ppu b/lib/PF.ppu index f70de1af..c5a8dcf6 100644 Binary files a/lib/PF.ppu and b/lib/PF.ppu differ diff --git a/lib/PS2_KEYBOARD_ISR.ppu b/lib/PS2_KEYBOARD_ISR.ppu index 1e1840b5..3c7d56bc 100644 Binary files a/lib/PS2_KEYBOARD_ISR.ppu and b/lib/PS2_KEYBOARD_ISR.ppu differ diff --git a/lib/RTC.ppu b/lib/RTC.ppu index e8fdd21e..9fa09ada 100644 Binary files a/lib/RTC.ppu and b/lib/RTC.ppu differ diff --git a/lib/SFE.ppu b/lib/SFE.ppu index 02479ff2..6fe41aee 100644 Binary files a/lib/SFE.ppu and b/lib/SFE.ppu differ diff --git a/lib/SNPE.ppu b/lib/SNPE.ppu index c2bde7f8..a0738a60 100644 Binary files a/lib/SNPE.ppu and b/lib/SNPE.ppu differ diff --git a/lib/TMR_0_ISR.ppu b/lib/TMR_0_ISR.ppu index e262c788..f065448d 100644 Binary files a/lib/TMR_0_ISR.ppu and b/lib/TMR_0_ISR.ppu differ diff --git a/lib/UIE.ppu b/lib/UIE.ppu index 72abca8f..fb2080ff 100644 Binary files a/lib/UIE.ppu and b/lib/UIE.ppu differ diff --git a/lib/USB.ppu b/lib/USB.ppu index c0ca3062..167a62b2 100644 Binary files a/lib/USB.ppu and b/lib/USB.ppu differ diff --git a/lib/arp.ppu b/lib/arp.ppu index ddf1ac14..8dbc5389 100644 Binary files a/lib/arp.ppu and b/lib/arp.ppu differ diff --git a/lib/asuro.ppu b/lib/asuro.ppu index 5d74bd7d..b09f936a 100644 Binary files a/lib/asuro.ppu and b/lib/asuro.ppu differ diff --git a/lib/console.o b/lib/console.o index f02e51d0..4e2e7014 100644 Binary files a/lib/console.o and b/lib/console.o differ diff --git a/lib/console.ppu b/lib/console.ppu index 9cd4ac51..00ead835 100644 Binary files a/lib/console.ppu and b/lib/console.ppu differ diff --git a/lib/cpu.ppu b/lib/cpu.ppu index 0a617f3f..065ff04a 100644 Binary files a/lib/cpu.ppu and b/lib/cpu.ppu differ diff --git a/lib/drivermanagement.ppu b/lib/drivermanagement.ppu index 236d87a5..5cf13df7 100644 Binary files a/lib/drivermanagement.ppu and b/lib/drivermanagement.ppu differ diff --git a/lib/fat32.ppu b/lib/fat32.ppu index e18a0e4a..a59cf464 100644 Binary files a/lib/fat32.ppu and b/lib/fat32.ppu differ diff --git a/lib/idt.ppu b/lib/idt.ppu index 853730a0..b4c8fc1c 100644 Binary files a/lib/idt.ppu and b/lib/idt.ppu differ diff --git a/lib/ipv4.ppu b/lib/ipv4.ppu index 2360333d..6760e50a 100644 Binary files a/lib/ipv4.ppu and b/lib/ipv4.ppu differ diff --git a/lib/irq.ppu b/lib/irq.ppu index a10ee31c..99d179e8 100644 Binary files a/lib/irq.ppu and b/lib/irq.ppu differ diff --git a/lib/isrmanager.ppu b/lib/isrmanager.ppu index 063cdb73..0a1e4c8a 100644 Binary files a/lib/isrmanager.ppu and b/lib/isrmanager.ppu differ diff --git a/lib/kernel.ppu b/lib/kernel.ppu index 02c6fd75..36a55dad 100644 Binary files a/lib/kernel.ppu and b/lib/kernel.ppu differ diff --git a/lib/keyboard.ppu b/lib/keyboard.ppu index eb132ca7..3a4ca8a9 100644 Binary files a/lib/keyboard.ppu and b/lib/keyboard.ppu differ diff --git a/lib/libpconsole.a b/lib/libpconsole.a index 4fca4f59..b75c1f46 100644 Binary files a/lib/libpconsole.a and b/lib/libpconsole.a differ diff --git a/lib/libpmultiboot.a b/lib/libpmultiboot.a index e5d7844a..76c40615 100644 Binary files a/lib/libpmultiboot.a and b/lib/libpmultiboot.a differ diff --git a/lib/libpsystem.a b/lib/libpsystem.a index 05f24c2f..dac3f89c 100644 Binary files a/lib/libpsystem.a and b/lib/libpsystem.a differ diff --git a/lib/lists.ppu b/lib/lists.ppu index 94fd2acd..d7e3dc28 100644 Binary files a/lib/lists.ppu and b/lib/lists.ppu differ diff --git a/lib/lmemorymanager.ppu b/lib/lmemorymanager.ppu index 241edb01..a1d3085f 100644 Binary files a/lib/lmemorymanager.ppu and b/lib/lmemorymanager.ppu differ diff --git a/lib/mouse.ppu b/lib/mouse.ppu index 9533ff98..63e20e0f 100644 Binary files a/lib/mouse.ppu and b/lib/mouse.ppu differ diff --git a/lib/netutils.ppu b/lib/netutils.ppu index ef2e2812..ac99a0e3 100644 Binary files a/lib/netutils.ppu and b/lib/netutils.ppu differ diff --git a/lib/pmemorymanager.ppu b/lib/pmemorymanager.ppu index 7785f8c6..2e15eb07 100644 Binary files a/lib/pmemorymanager.ppu and b/lib/pmemorymanager.ppu differ diff --git a/lib/serial.ppu b/lib/serial.ppu index 83c91d05..c6ce9ff0 100644 Binary files a/lib/serial.ppu and b/lib/serial.ppu differ diff --git a/lib/storagemanagement.ppu b/lib/storagemanagement.ppu index e9dddfc8..bd528bc6 100644 Binary files a/lib/storagemanagement.ppu and b/lib/storagemanagement.ppu differ diff --git a/lib/strings.ppu b/lib/strings.ppu index 5507cdbf..026b4877 100644 Binary files a/lib/strings.ppu and b/lib/strings.ppu differ diff --git a/lib/system.ppu b/lib/system.ppu index d97e26b0..a570d845 100644 Binary files a/lib/system.ppu and b/lib/system.ppu differ diff --git a/lib/terminal.ppu b/lib/terminal.ppu index 922ffd3b..06e96550 100644 Binary files a/lib/terminal.ppu and b/lib/terminal.ppu differ diff --git a/lib/tracer.ppu b/lib/tracer.ppu index 29793b96..e026c32b 100644 Binary files a/lib/tracer.ppu and b/lib/tracer.ppu differ diff --git a/lib/util.ppu b/lib/util.ppu index aed0edc9..82f73ffa 100644 Binary files a/lib/util.ppu and b/lib/util.ppu differ diff --git a/lib/vmemorymanager.ppu b/lib/vmemorymanager.ppu index 3a00ebaf..83fcdd4d 100644 Binary files a/lib/vmemorymanager.ppu and b/lib/vmemorymanager.ppu differ diff --git a/src/console.pas b/src/console.pas index 7666853b..4318285d 100644 --- a/src/console.pas +++ b/src/console.pas @@ -835,7 +835,6 @@ begin if not UnhandledClickLeft then begin SelectedWindow:= WindowMask[MouseYToTile(WindowManager.MousePrev.Y)][MouseXToTile(WindowManager.MousePrev.X)]; if (SelectedWindow <> 0) and (WindowManager.Windows[SelectedWindow] <> nil) then begin - //OnClickHandler(Right) if (WindowManager.Z_Order[0] = SelectedWindow) or (WindowManager.Windows[SelectedWindow]^.ShellWND = false) then begin if WindowManager.Windows[SelectedWindow]^.Hooks.OnMouseClick <> nil then begin deltax:= MouseXToTile(WindowManager.MousePrev.X) - WindowManager.Windows[SelectedWindow]^.WND_X; diff --git a/src/driver/timers/RTC.pas b/src/driver/timers/RTC.pas index 09da64c5..10a0e96d 100644 --- a/src/driver/timers/RTC.pas +++ b/src/driver/timers/RTC.pas @@ -29,13 +29,13 @@ var function weekdayToString(Weekday : uint8) : pchar; begin case Weekday of - 0:weekdayToString:= 'Saturday'; 1:weekdayToString:= 'Sunday'; 2:weekdayToString:= 'Monday'; 3:weekdayToString:= 'Tuesday'; 4:weekdayToString:= 'Wednesday'; 5:weekdayToString:= 'Thursday'; 6:weekdayToString:= 'Friday'; + 7:weekdayToString:= 'Saturday'; else weekdayToString:= 'Unknown'; end; end; diff --git a/src/include/asuro.pas b/src/include/asuro.pas index aea80702..e057207d 100644 --- a/src/include/asuro.pas +++ b/src/include/asuro.pas @@ -3,13 +3,17 @@ unit asuro; interface const - VERSION = '1.0.0-661a'; + VERSION = '1.0.0-662a'; VERSION_MAJOR = '1'; VERSION_MINOR = '0'; VERSION_SUB = '0'; - REVISION = '661'; + REVISION = '662'; RELEASE = 'a'; - LINE_COUNT = 26884; + LINE_COUNT = 26907; + FPC_VERSION = '2.6.4'; + NASM_VERSION = '2.10.09'; + COMPILE_DATE = '05-05-18'; + COMPILE_TIME = '20:57:19'; implementation diff --git a/src/include/util.pas b/src/include/util.pas index 6d5633cc..2a68de46 100644 --- a/src/include/util.pas +++ b/src/include/util.pas @@ -39,6 +39,7 @@ procedure memset(location : uint32; value : uint8; size : uint32); procedure memcpy(source : uint32; dest : uint32; size : uint32); procedure printmemory(source : uint32; length : uint32; col : uint32; delim : PChar; offset_row : boolean); +procedure printmemoryWND(source : uint32; length : uint32; col : uint32; delim : PChar; offset_row : boolean; WND : HWND); procedure halt_and_catch_fire(); procedure halt_and_dont_catch_fire(); @@ -62,7 +63,7 @@ var implementation uses - console, RTC; + console, RTC, cpu; procedure sleep1; var @@ -119,7 +120,7 @@ begin end; end; -procedure printmemory(source : uint32; length : uint32; col : uint32; delim : PChar; offset_row : boolean); +procedure printmemoryWND(source : uint32; length : uint32; col : uint32; delim : PChar; offset_row : boolean; WND : HWND); var buf : puint8; i : uint32; @@ -128,21 +129,26 @@ begin buf:= puint8(source); for i:=0 to length-1 do begin if offset_row and (i = 0) then begin - console.writehex(source + (i)); - console.writestring(': '); + console.writehexWND(source + (i), WND); + console.writestringWND(': ', WND); end; - console.writehexpair(buf[i]); + console.writehexpairWND(buf[i], WND); if ((i+1) MOD col) = 0 then begin - console.writestringln(' '); + console.writestringlnWND(' ', WND); if offset_row then begin - console.writehex(source + (i + 1)); - console.writestring(': '); + console.writehexWND(source + (i + 1), WND); + console.writestringWND(': ', WND); end; end else begin - console.writestring(delim); + console.writestringWND(delim, WND); end; end; - console.writestringln(' '); + console.writestringlnWND(' ', WND); +end; + +procedure printmemory(source : uint32; length : uint32; col : uint32; delim : PChar; offset_row : boolean); +begin + printmemoryWND(source, length, col, delim, offset_row, 0); end; function hi(b : uint8) : uint8; [public, alias: 'util_hi']; diff --git a/src/prog/terminal.pas b/src/prog/terminal.pas index 776feea0..6fbe7c19 100644 --- a/src/prog/terminal.pas +++ b/src/prog/terminal.pas @@ -208,8 +208,17 @@ procedure version(params : PParamList); begin console.writestringWND('Asuro Version: ', TERMINAL_HWND); console.writestringlnWND(asuro.VERSION, TERMINAL_HWND); - console.writestringWND('Source Line-Count: ', TERMINAL_HWND); - console.writeintlnWND(LINE_COUNT, TERMINAL_HWND); + console.writestringWND(' Compiled on: ', TERMINAL_HWND); + console.writestringWND(asuro.COMPILE_DATE, TERMINAL_HWND); + console.writestringWND(' ', TERMINAL_HWND); + console.writestringlnWND(asuro.COMPILE_TIME, TERMINAL_HWND); + console.writestringlnWND(' Compiled With: ', TERMINAL_HWND); + console.writestringWND(' FPC Version: ', TERMINAL_HWND); + console.writestringlnWND(asuro.FPC_VERSION, TERMINAL_HWND); + console.writestringWND(' NASM Version: ', TERMINAL_HWND); + console.writestringlnWND(asuro.NASM_VERSION, TERMINAL_HWND); + console.writestringWND(' Source Line-Count: ', TERMINAL_HWND); + console.writeintlnWND(asuro.LINE_COUNT, TERMINAL_HWND); end; procedure help(params : PParamList); @@ -274,17 +283,22 @@ var begin DateTime:= getDateTime; + if DateTime.Day < 10 then writeStringWND('0', TERMINAL_HWND); writeIntWND(DateTime.Day, TERMINAL_HWND); writeStringWND('/', TERMINAL_HWND); + if DateTime.Month < 10 then writeStringWND('0', TERMINAL_HWND); writeIntWND(DateTime.Month, TERMINAL_HWND); writeStringWND('/', TERMINAL_HWND); writeIntWND(DateTime.Century, TERMINAL_HWND); writeIntWND(DateTime.Year, TERMINAL_HWND); writeStringWND(' ', TERMINAL_HWND); + if DateTime.Hours < 10 then writeStringWND('0', TERMINAL_HWND); writeIntWND(DateTime.Hours, TERMINAL_HWND); writeStringWND(':', TERMINAL_HWND); + if DateTime.Minutes < 10 then writeStringWND('0', TERMINAL_HWND); writeIntWND(DateTime.Minutes, TERMINAL_HWND); writeStringWND(':', TERMINAL_HWND); + if DateTime.Seconds < 10 then writeStringWND('0', TERMINAL_HWND); writeIntlnWND(DateTime.Seconds, TERMINAL_HWND); writeStringWND('Weekday: ', TERMINAL_HWND); writeStringlnWND(WeekdayToString(DateTime.Weekday), TERMINAL_HWND); diff --git a/versioning.sh b/versioning.sh index 25ac1d2b..5e191607 100755 --- a/versioning.sh +++ b/versioning.sh @@ -6,10 +6,13 @@ while IFS=: read -r line;do minor=$(echo $line | awk '{print $2}') sub=$(echo $line | awk '{print $3}') release=$(echo $line | awk '{print $4}') - linecount=$(./loc.sh | awk '{print $1}') done <"$file" +linecount=$(./loc.sh | awk '{print $1}') revision=$(svn info | grep Revision | awk '{print $2}') -echo $major"."$minor"."$sub"-r"$revision$release +fpcversion=$(fpc -h | grep -m 1 version | awk '{print $5}') +nasmversion=$(nasm -v | awk '{print $3'}) +compiledate=$(date +"%d-%m-%y") +compiletime=$(date +"%T") echo "unit asuro;" > $outfile echo " " >> $outfile echo "interface" >> $outfile @@ -22,6 +25,10 @@ echo " VERSION_SUB = '$sub';" >> $outfile echo " REVISION = '$revision';" >> $outfile echo " RELEASE = '$release';" >> $outfile echo " LINE_COUNT = $linecount;" >> $outfile +echo " FPC_VERSION = '$fpcversion';" >> $outfile +echo " NASM_VERSION = '$nasmversion';" >> $outfile +echo " COMPILE_DATE = '$compiledate';" >> $outfile +echo " COMPILE_TIME = '$compiletime';" >> $outfile echo " " >> $outfile echo "implementation" >> $outfile echo " " >> $outfile