diff --git a/Asuro.iso b/Asuro.iso index 1cb73a84..3e9a970c 100644 Binary files a/Asuro.iso and b/Asuro.iso differ diff --git a/bin/kernel.bin b/bin/kernel.bin index f2985698..2ce9b2bf 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 f2985698..2ce9b2bf 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 cdc97521..8d22d22b 100644 Binary files a/lib/ACE.ppu and b/lib/ACE.ppu differ diff --git a/lib/BPE.ppu b/lib/BPE.ppu index 69346039..37e2c98c 100644 Binary files a/lib/BPE.ppu and b/lib/BPE.ppu differ diff --git a/lib/BTSSE.ppu b/lib/BTSSE.ppu index fe0a3ae5..45a5513d 100644 Binary files a/lib/BTSSE.ppu and b/lib/BTSSE.ppu differ diff --git a/lib/CFE.ppu b/lib/CFE.ppu index 5298f2e4..c2b523ba 100644 Binary files a/lib/CFE.ppu and b/lib/CFE.ppu differ diff --git a/lib/CSOE.ppu b/lib/CSOE.ppu index 78fa17d5..cdaea701 100644 Binary files a/lib/CSOE.ppu and b/lib/CSOE.ppu differ diff --git a/lib/DBGE.ppu b/lib/DBGE.ppu index 6e70a494..b28eab16 100644 Binary files a/lib/DBGE.ppu and b/lib/DBGE.ppu differ diff --git a/lib/DBZ.ppu b/lib/DBZ.ppu index de731b4c..5588b5e8 100644 Binary files a/lib/DBZ.ppu and b/lib/DBZ.ppu differ diff --git a/lib/DFE.ppu b/lib/DFE.ppu index 10ff54be..b8067aaa 100644 Binary files a/lib/DFE.ppu and b/lib/DFE.ppu differ diff --git a/lib/E1000.ppu b/lib/E1000.ppu index b5c0a5b5..996aac05 100644 Binary files a/lib/E1000.ppu and b/lib/E1000.ppu differ diff --git a/lib/GPF.ppu b/lib/GPF.ppu index 063dc3c5..89598984 100644 Binary files a/lib/GPF.ppu and b/lib/GPF.ppu differ diff --git a/lib/IDE.ppu b/lib/IDE.ppu index fe9e133f..90054f6b 100644 Binary files a/lib/IDE.ppu and b/lib/IDE.ppu differ diff --git a/lib/IDOE.ppu b/lib/IDOE.ppu index c7cee895..da52621f 100644 Binary files a/lib/IDOE.ppu and b/lib/IDOE.ppu differ diff --git a/lib/IOPE.ppu b/lib/IOPE.ppu index 07b26afb..482b9203 100644 Binary files a/lib/IOPE.ppu and b/lib/IOPE.ppu differ diff --git a/lib/MCE.ppu b/lib/MCE.ppu index 28c45554..76f5fd68 100644 Binary files a/lib/MCE.ppu and b/lib/MCE.ppu differ diff --git a/lib/NCE.ppu b/lib/NCE.ppu index d816f749..e6362704 100644 Binary files a/lib/NCE.ppu and b/lib/NCE.ppu differ diff --git a/lib/NMIE.ppu b/lib/NMIE.ppu index 3d35c0d5..79faa689 100644 Binary files a/lib/NMIE.ppu and b/lib/NMIE.ppu differ diff --git a/lib/OOBE.ppu b/lib/OOBE.ppu index a702b73b..4be90138 100644 Binary files a/lib/OOBE.ppu and b/lib/OOBE.ppu differ diff --git a/lib/PCI.ppu b/lib/PCI.ppu index 86df5aba..3d60cc1f 100644 Binary files a/lib/PCI.ppu and b/lib/PCI.ppu differ diff --git a/lib/PF.ppu b/lib/PF.ppu index 6e7e92a3..a6af1f23 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 bdbc8f41..59f59079 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 066e329e..030f2f21 100644 Binary files a/lib/RTC.ppu and b/lib/RTC.ppu differ diff --git a/lib/SFE.ppu b/lib/SFE.ppu index db5046e8..828313d2 100644 Binary files a/lib/SFE.ppu and b/lib/SFE.ppu differ diff --git a/lib/SNPE.ppu b/lib/SNPE.ppu index 88573b95..5097ee26 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 dc426b27..4fd0a3be 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 b43e066a..c2f6c2e1 100644 Binary files a/lib/UIE.ppu and b/lib/UIE.ppu differ diff --git a/lib/USB.ppu b/lib/USB.ppu index c7a76c2a..d8ba240b 100644 Binary files a/lib/USB.ppu and b/lib/USB.ppu differ diff --git a/lib/arp.ppu b/lib/arp.ppu index b8a2ee89..b591cf1b 100644 Binary files a/lib/arp.ppu and b/lib/arp.ppu differ diff --git a/lib/asuro.ppu b/lib/asuro.ppu index a53676eb..30a033f2 100644 Binary files a/lib/asuro.ppu and b/lib/asuro.ppu differ diff --git a/lib/bios_data_area.ppu b/lib/bios_data_area.ppu index a07aa423..6483926c 100644 Binary files a/lib/bios_data_area.ppu and b/lib/bios_data_area.ppu differ diff --git a/lib/console.o b/lib/console.o index 5b4e8f7b..6a86407f 100644 Binary files a/lib/console.o and b/lib/console.o differ diff --git a/lib/console.ppu b/lib/console.ppu index 0ce35125..7c6b5b54 100644 Binary files a/lib/console.ppu and b/lib/console.ppu differ diff --git a/lib/cpu.ppu b/lib/cpu.ppu index 50381c91..d303f7a1 100644 Binary files a/lib/cpu.ppu and b/lib/cpu.ppu differ diff --git a/lib/drivermanagement.ppu b/lib/drivermanagement.ppu index 73407cde..e3a7ef44 100644 Binary files a/lib/drivermanagement.ppu and b/lib/drivermanagement.ppu differ diff --git a/lib/eth2.ppu b/lib/eth2.ppu index dfbf804f..138d20e9 100644 Binary files a/lib/eth2.ppu and b/lib/eth2.ppu differ diff --git a/lib/fat32.ppu b/lib/fat32.ppu index f4488f57..cf8844bc 100644 Binary files a/lib/fat32.ppu and b/lib/fat32.ppu differ diff --git a/lib/gdt.ppu b/lib/gdt.ppu index dce0ab4a..b275a772 100644 Binary files a/lib/gdt.ppu and b/lib/gdt.ppu differ diff --git a/lib/idt.ppu b/lib/idt.ppu index 9ce122cb..0a5ec5d6 100644 Binary files a/lib/idt.ppu and b/lib/idt.ppu differ diff --git a/lib/ipv4.ppu b/lib/ipv4.ppu index 5edafc1f..1757501b 100644 Binary files a/lib/ipv4.ppu and b/lib/ipv4.ppu differ diff --git a/lib/irq.ppu b/lib/irq.ppu index ce52e4e4..30ebc166 100644 Binary files a/lib/irq.ppu and b/lib/irq.ppu differ diff --git a/lib/isr.ppu b/lib/isr.ppu index e3374640..1a62ff08 100644 Binary files a/lib/isr.ppu and b/lib/isr.ppu differ diff --git a/lib/kernel.ppu b/lib/kernel.ppu index d5c98047..6c474e9d 100644 Binary files a/lib/kernel.ppu and b/lib/kernel.ppu differ diff --git a/lib/keyboard.ppu b/lib/keyboard.ppu index bdcb3013..cd86524e 100644 Binary files a/lib/keyboard.ppu and b/lib/keyboard.ppu differ diff --git a/lib/libpconsole.a b/lib/libpconsole.a index 0dfd340e..63545f01 100644 Binary files a/lib/libpconsole.a and b/lib/libpconsole.a differ diff --git a/lib/libpmultiboot.a b/lib/libpmultiboot.a index a1ca542e..d11317ac 100644 Binary files a/lib/libpmultiboot.a and b/lib/libpmultiboot.a differ diff --git a/lib/libpsystem.a b/lib/libpsystem.a index 067e8fb5..ce00401e 100644 Binary files a/lib/libpsystem.a and b/lib/libpsystem.a differ diff --git a/lib/lists.ppu b/lib/lists.ppu index d1ed8b81..3d73ebb5 100644 Binary files a/lib/lists.ppu and b/lib/lists.ppu differ diff --git a/lib/lmemorymanager.ppu b/lib/lmemorymanager.ppu index 520bdc52..d6f31283 100644 Binary files a/lib/lmemorymanager.ppu and b/lib/lmemorymanager.ppu differ diff --git a/lib/memview.ppu b/lib/memview.ppu index eb982757..bcba67ba 100644 Binary files a/lib/memview.ppu and b/lib/memview.ppu differ diff --git a/lib/mouse.ppu b/lib/mouse.ppu index e28e1e8f..03541628 100644 Binary files a/lib/mouse.ppu and b/lib/mouse.ppu differ diff --git a/lib/net.ppu b/lib/net.ppu index 85f1ee2c..77a6466a 100644 Binary files a/lib/net.ppu and b/lib/net.ppu differ diff --git a/lib/netutils.ppu b/lib/netutils.ppu index 1eae8529..3b2f1fe6 100644 Binary files a/lib/netutils.ppu and b/lib/netutils.ppu differ diff --git a/lib/pmemorymanager.ppu b/lib/pmemorymanager.ppu index 587aec0a..90b4db71 100644 Binary files a/lib/pmemorymanager.ppu and b/lib/pmemorymanager.ppu differ diff --git a/lib/scheduler.ppu b/lib/scheduler.ppu index 113e8121..2fb7bf65 100644 Binary files a/lib/scheduler.ppu and b/lib/scheduler.ppu differ diff --git a/lib/serial.ppu b/lib/serial.ppu index cc815cfe..757ac414 100644 Binary files a/lib/serial.ppu and b/lib/serial.ppu differ diff --git a/lib/shell.ppu b/lib/shell.ppu index dd206d03..2b90ada8 100644 Binary files a/lib/shell.ppu and b/lib/shell.ppu differ diff --git a/lib/splash.ppu b/lib/splash.ppu index f8732110..4c69bb5d 100644 Binary files a/lib/splash.ppu and b/lib/splash.ppu differ diff --git a/lib/storagemanagement.ppu b/lib/storagemanagement.ppu index 99dc0fff..a36aff61 100644 Binary files a/lib/storagemanagement.ppu and b/lib/storagemanagement.ppu differ diff --git a/lib/strings.ppu b/lib/strings.ppu index b596d638..b3e01eb7 100644 Binary files a/lib/strings.ppu and b/lib/strings.ppu differ diff --git a/lib/terminal.ppu b/lib/terminal.ppu index b3639a4e..f77d0afe 100644 Binary files a/lib/terminal.ppu and b/lib/terminal.ppu differ diff --git a/lib/testdriver.ppu b/lib/testdriver.ppu index 1a0836b4..52eb9177 100644 Binary files a/lib/testdriver.ppu and b/lib/testdriver.ppu differ diff --git a/lib/tracer.ppu b/lib/tracer.ppu index edbd740a..622283e7 100644 Binary files a/lib/tracer.ppu and b/lib/tracer.ppu differ diff --git a/lib/tss.ppu b/lib/tss.ppu index b13e1674..548ed644 100644 Binary files a/lib/tss.ppu and b/lib/tss.ppu differ diff --git a/lib/util.ppu b/lib/util.ppu index 2c33b315..a376ccc5 100644 Binary files a/lib/util.ppu and b/lib/util.ppu differ diff --git a/lib/vmemorymanager.ppu b/lib/vmemorymanager.ppu index 0b71bf0f..0d8e0462 100644 Binary files a/lib/vmemorymanager.ppu and b/lib/vmemorymanager.ppu differ diff --git a/src/console.pas b/src/console.pas index c8873b75..f42daa9c 100644 --- a/src/console.pas +++ b/src/console.pas @@ -201,6 +201,7 @@ procedure _MouseUp(); procedure _MouseClick(left : boolean); procedure setWindowColors(colors : uint32); +function getWindowColorPtr : puint32; implementation @@ -319,6 +320,11 @@ var MouseCursorEnabled : Boolean = true; OpenTerminal : Boolean = false; +function getWindowColorPtr : puint32; +begin + getWindowColorPtr:= @Window_Border.Attributes; +end; + procedure setWindowColors(colors : uint32); begin Window_Border.Attributes:= colors; @@ -1087,6 +1093,7 @@ begin if (key_info.CTRL_DOWN) and (key_info.ALT_DOWN) then begin case key_info.key_code of uint8('c'):OpenTerminal:=true; + uint8('r'):resetSystem; end; end else begin if WindowManager.Z_Order[0] <> MAX_WINDOWS then begin diff --git a/src/include/asuro.pas b/src/include/asuro.pas index 7ec90363..94b53279 100644 --- a/src/include/asuro.pas +++ b/src/include/asuro.pas @@ -9,14 +9,14 @@ const VERSION_SUB = '1'; REVISION = '664'; RELEASE = 'ia'; - LINE_COUNT = 27151; - FILE_COUNT = 83; + LINE_COUNT = 27361; + FILE_COUNT = 84; DRIVER_COUNT = 28; FPC_VERSION = '2.6.4'; NASM_VERSION = '2.10.09'; MAKE_VERSION = '3.81'; COMPILE_DATE = '06/05/18'; - COMPILE_TIME = '00:38:59'; + COMPILE_TIME = '06:55:52'; implementation diff --git a/src/kernel.pas b/src/kernel.pas index 89a3e5e9..35f1fef1 100644 --- a/src/kernel.pas +++ b/src/kernel.pas @@ -41,7 +41,8 @@ uses shell, memview, splash, - cpu; + cpu, + themer; procedure kmain(mbinfo: Pmultiboot_info_t; mbmagic: uint32); stdcall; @@ -200,6 +201,7 @@ begin { Init Progs } shell.init(); memview.init(); + themer.init(); { Init Splash } splash.init(); diff --git a/src/prog/shell.pas b/src/prog/shell.pas index 1008a1e3..c100b9f8 100644 --- a/src/prog/shell.pas +++ b/src/prog/shell.pas @@ -6,6 +6,9 @@ uses Console, RTC, terminal, strings, asuro; procedure init(); +function getTaskbarColorsPtr : puint32; +function getExploreColorsPtr : puint32; +function getDesktopColorsPtr : puint32; implementation @@ -16,6 +19,21 @@ var Explore_Colors : uint32; Desktop_Colors : uint32; +function getTaskbarColorsPtr : puint32; +begin + getTaskbarColorsPtr:= @Takbar_Colors; +end; + +function getExploreColorsPtr : puint32; +begin + getExploreColorsPtr:= @Explore_Colors; +end; + +function getDesktopColorsPtr : puint32; +begin + getDesktopColorsPtr:= @Desktop_Colors; +end; + procedure Draw(); var DateTime : TDateTime;