Commit Graph
352 Commits
Author SHA1 Message Date
belliash ab618f95b9 Use dedicated GUID for DUMMYOS boot protocol
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 35s
2024-04-29 13:48:01 +02:00
belliash e80927c5d3 Fix undefined behavior and NULL pointer in boot loader OS list renderer
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 32s
2024-04-27 00:42:25 +02:00
belliash 22693a48d3 Rework trap handling assembly code
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 32s
2024-04-23 15:07:08 +02:00
belliash a36c02fde8 Use common name for EFLAGS and RFLAGS, regardless the CPU architecture
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 33s
2024-04-21 22:35:06 +02:00
belliash 30a2cb9849 Update timers support
Builds / ExectOS (amd64) (push) Successful in 47s
Builds / ExectOS (i686) (push) Successful in 46s
2024-04-21 13:57:55 +02:00
belliash 331c5bfeda Rework initial timer support
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-04-20 23:15:57 +02:00
belliash 92ee74b494 Rework trap handling to access registers
Builds / ExectOS (i686) (push) Failing after 28s
Builds / ExectOS (amd64) (push) Failing after 29s
2024-04-19 16:52:37 +02:00
belliash befa211aa7 Add PFN related structures and definitions
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-04-08 19:03:58 +02:00
belliash 7193e698f1 Store page map level
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 33s
2024-04-07 17:49:24 +02:00
belliash bfcf9bc61a Add PFN_NUMBER type definition
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Failing after 29s
2024-04-07 10:33:53 +02:00
belliash 04e22c127e Initial memory manager initialization code
Builds / ExectOS (amd64) (push) Failing after 23s
Builds / ExectOS (i686) (push) Failing after 22s
2024-04-07 10:26:12 +02:00
belliash 1305672875 Properly, recursively self map page tables; currently only for AMD64 and PML4
Builds / ExectOS (amd64) (push) Successful in 45s
Builds / ExectOS (i686) (push) Successful in 42s
2024-04-05 00:26:41 +02:00
belliash d7b103f85d Add forward references for PTE related structures
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 31s
2024-04-03 16:03:17 +02:00
belliash c6f3422c49 Update PTE related structures
Builds / ExectOS (amd64) (push) Successful in 42s
Builds / ExectOS (i686) (push) Successful in 41s
2024-04-03 16:00:26 +02:00
belliash 306891c9eb Rename XTBL_MODULE_INFO definition to XTBL_MODULE_DATA, to not confuse with structure
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 32s
2024-03-25 07:14:18 +01:00
belliash 715f842445 Implement RtlClearSetBits(), RtlFindClearBits(), RtlFindSetBits() and RtlSetClearBits() routines
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 31s
2024-03-22 18:53:30 +01:00
belliash 7895cb0d32 Fix RtlClearBits() and RtlSetBits()
Builds / ExectOS (i686) (push) Successful in 29s
Builds / ExectOS (amd64) (push) Successful in 32s
2024-03-21 21:36:33 +01:00
belliash 56d50ea2e8 Implement EDID support for getting the preferred screen resolution
Builds / ExectOS (i686) (push) Successful in 29s
Builds / ExectOS (amd64) (push) Successful in 31s
2024-03-21 15:40:09 +01:00
belliash eb75a27ac2 Use common handle and properly close GOP protocol on failures
Builds / ExectOS (i686) (push) Successful in 37s
Builds / ExectOS (amd64) (push) Successful in 38s
2024-03-21 06:59:05 +01:00
belliash b6f915c0c5 Implement RtlClearBits() and RtlSetBits() routines
Builds / ExectOS (i686) (push) Successful in 30s
Builds / ExectOS (amd64) (push) Successful in 31s
2024-03-19 19:53:49 +01:00
belliash 3cd55260e6 Expose BlEnterFirmwareSetup() routine via XTLDR protocol
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 34s
2024-03-19 17:11:38 +01:00
belliash 94e6ca7aec Implement BlEnterFirmwareSetup() routine
Builds / ExectOS (amd64) (push) Successful in 39s
Builds / ExectOS (i686) (push) Successful in 37s
2024-03-19 16:50:04 +01:00
belliash 7b2a2565c5 Expose BlGetEfiVariable() and BlSetEfiVariable() routines via XTLDR protocol
Builds / ExectOS (i686) (push) Successful in 31s
Builds / ExectOS (amd64) (push) Successful in 31s
2024-03-18 22:20:21 +01:00
belliash 6accf62552 Expose BlGetConfigBooleanValue() via XTLDR protocol
Builds / ExectOS (i686) (push) Successful in 33s
Builds / ExectOS (amd64) (push) Successful in 34s
2024-03-18 22:16:20 +01:00
belliash 1d26b81923 Store last booted OS in NVRAM and make it default one on next boot
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 33s
2024-03-18 19:41:55 +01:00
belliash db0e1d40aa Allow boot protocols to supply own routine for converting EFI memory type into OS-specific memory type
Builds / ExectOS (i686) (push) Failing after 32s
Builds / ExectOS (amd64) (push) Failing after 33s
2024-03-17 23:06:37 +01:00
belliash 41ebabcb09 Provide only necessary framebuffer information to the kernel
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 32s
2024-03-15 16:46:53 +01:00
belliash 848731c9e6 Introduce ability to change screen resolution
Builds / ExectOS (i686) (push) Successful in 44s
Builds / ExectOS (amd64) (push) Successful in 46s
2024-03-15 15:12:12 +01:00
belliash 26d5118cea Add forward references to bit map related routines
Builds / ExectOS (amd64) (push) Successful in 45s
Builds / ExectOS (i686) (push) Successful in 42s
2024-03-12 22:02:24 +01:00
belliash c3831f82e7 Initial bit maps support
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 37s
2024-03-12 19:15:02 +01:00
belliash bb44caee31 Implement HlPutCharacter() routine
Builds / ExectOS (i686) (push) Successful in 29s
Builds / ExectOS (amd64) (push) Successful in 30s
2024-03-10 17:02:30 +01:00
belliash 4bff86c570 Add SSF 2.0 font header structure
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 35s
2024-03-10 13:03:45 +01:00
belliash d8ebd9f202 Add font to framebuffer data
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 32s
2024-03-10 10:04:51 +01:00
belliash cb4292dccf Allow to use custom framebuffer fonts
Builds / ExectOS (i686) (push) Failing after 28s
Builds / ExectOS (amd64) (push) Failing after 30s
2024-03-10 10:02:30 +01:00
belliash a4c22ab5e8 Improvements to FrameBuffer support
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 37s
2024-03-09 15:07:33 +01:00
belliash 475561b038 Add XTOS default framebuffer font (VGA Unicode by Dmitry Yu. Bolkhovityanov)
Builds / ExectOS (i686) (push) Successful in 40s
Builds / ExectOS (amd64) (push) Successful in 42s
2024-03-08 20:20:21 +01:00
belliash 5814775c43 Add EFI legacy BIOS protocol related structures
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 31s
2024-03-07 21:55:58 +01:00
belliash d61fd4f9c7 Fix grim bug in PE/COFF image structures causing invalid data read from optional header
Builds / ExectOS (i686) (push) Successful in 31s
Builds / ExectOS (amd64) (push) Successful in 31s
2024-03-02 00:56:38 +01:00
belliash a57ae020fa Implement PeGetFileSize(), PeGetImageSize() and PeUnloadImage() routines
Builds / ExectOS (amd64) (push) Successful in 47s
Builds / ExectOS (i686) (push) Successful in 45s
2024-03-01 23:12:12 +01:00
belliash 17c50ea912 Redesign a way of storing module information; this allows to store more data in a single section, like license or a list of authors, as well as solves the problem with different module name lengths
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 31s
2024-02-28 23:28:33 +01:00
belliash 4b34f7db4b Update preprocessor macros
Builds / ExectOS (i686) (push) Successful in 56s
Builds / ExectOS (amd64) (push) Successful in 58s
2024-02-28 23:11:45 +01:00
belliash 632bb30b64 Implement BlGetRandomValue() and BlInitializeEntropy() routines for future KASLR support
Builds / ExectOS (amd64) (push) Successful in 1m16s
Builds / ExectOS (i686) (push) Successful in 1m14s
2024-02-26 23:06:44 +01:00
belliash f9714a79e4 Add support for writing floating point values
Builds / ExectOS (amd64) (push) Successful in 51s
Builds / ExectOS (i686) (push) Successful in 48s
2024-02-22 23:39:11 +01:00
belliash 4b2d8ded72 No parameters are expected, explicitly
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-20 16:55:12 +01:00
belliash 83a976dd3a Implement RtlCopyString() and RtlCopyWideString() routines
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-20 16:25:16 +01:00
belliash 477e56e294 Move RtlFillMemory() routine to ntosdrv driver
Builds / ExectOS (i686) (push) Failing after 42s
Builds / ExectOS (amd64) (push) Successful in 49s
2024-02-20 16:08:10 +01:00
belliash 246968045a Use flags instead of dozen variables
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 29s
2024-02-18 13:37:17 +01:00
belliash 8dd0e70dd9 Implement printf-alike wide string formatting mechanism, currently without floating point numbers support
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 30s
2024-02-15 23:01:13 +01:00
belliash 8a62a2b367 Switch calling convention to stdcall
Builds / ExectOS (amd64) (push) Successful in 59s
Builds / ExectOS (i686) (push) Successful in 56s
2024-02-14 14:53:32 +01:00
belliash 7e23484252 Implement RtlReverseWideString(), RtlTrimLeftWideString(), RtlTrimRightWideString() and RtlTrimWideString() routines
Builds / ExectOS (amd64) (push) Successful in 19s
Builds / ExectOS (i686) (push) Successful in 20s
2024-02-14 14:46:34 +01:00