Commit Graph

254 Commits

Author SHA1 Message Date
170b11f7a2 Change OS boot identifier, to be able to load both 'dummy' and 'xtos' modules at the same time
All checks were successful
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 34s
2024-04-29 12:31:18 +02:00
6b8184aa04 Fix code formatting
All checks were successful
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 35s
2024-04-29 08:38:45 +02:00
e80927c5d3 Fix undefined behavior and NULL pointer in boot loader OS list renderer
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 32s
2024-04-27 00:42:25 +02:00
7193e698f1 Store page map level
All checks were successful
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 33s
2024-04-07 17:49:24 +02:00
388ac1a8c2 Properly, recursively self map page tables on i686 architecture
All checks were successful
Builds / ExectOS (i686) (push) Successful in 31s
Builds / ExectOS (amd64) (push) Successful in 34s
2024-04-07 17:11:14 +02:00
0af3a01acf Pass compatible pointer type to fix compiler warning
Some checks failed
Builds / ExectOS (i686) (push) Failing after 28s
Builds / ExectOS (amd64) (push) Successful in 31s
2024-04-07 10:50:21 +02:00
1305672875 Properly, recursively self map page tables; currently only for AMD64 and PML4
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 45s
Builds / ExectOS (i686) (push) Successful in 42s
2024-04-05 00:26:41 +02:00
c6f3422c49 Update PTE related structures
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 42s
Builds / ExectOS (i686) (push) Successful in 41s
2024-04-03 16:00:26 +02:00
dcca4870cd Move cursor before changing console attributes
All checks were successful
Builds / ExectOS (i686) (push) Successful in 38s
Builds / ExectOS (amd64) (push) Successful in 41s
2024-03-28 14:06:52 +01:00
1cdc1d3e54 Truncate EFI memory descriptor to 4GB and never map EFI reserved memory like PCI BAR
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 32s
2024-03-26 23:04:54 +01:00
e24c37c9b1 First page is now always present in memory map, so there is no need to map it explicitly
All checks were successful
Builds / ExectOS (i686) (push) Successful in 31s
Builds / ExectOS (amd64) (push) Successful in 30s
2024-03-24 23:01:52 +01:00
ce8c66f93a Always map first page
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 31s
2024-03-24 22:52:18 +01:00
b3be36e23d Map BIOS ROM and VRAM
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 38s
Builds / ExectOS (i686) (push) Successful in 36s
2024-03-24 15:53:36 +01:00
56d50ea2e8 Implement EDID support for getting the preferred screen resolution
All checks were successful
Builds / ExectOS (i686) (push) Successful in 29s
Builds / ExectOS (amd64) (push) Successful in 31s
2024-03-21 15:40:09 +01:00
eb75a27ac2 Use common handle and properly close GOP protocol on failures
All checks were successful
Builds / ExectOS (i686) (push) Successful in 37s
Builds / ExectOS (amd64) (push) Successful in 38s
2024-03-21 06:59:05 +01:00
3cd55260e6 Expose BlEnterFirmwareSetup() routine via XTLDR protocol
All checks were successful
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 34s
2024-03-19 17:11:38 +01:00
e263effe13 Allow to reboot into UEFI Firmware setup interface after pressing F10 in the boot menu
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 31s
2024-03-19 17:04:14 +01:00
94e6ca7aec Implement BlEnterFirmwareSetup() routine
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 39s
Builds / ExectOS (i686) (push) Successful in 37s
2024-03-19 16:50:04 +01:00
7b2a2565c5 Expose BlGetEfiVariable() and BlSetEfiVariable() routines via XTLDR protocol
All checks were successful
Builds / ExectOS (i686) (push) Successful in 31s
Builds / ExectOS (amd64) (push) Successful in 31s
2024-03-18 22:20:21 +01:00
6accf62552 Expose BlGetConfigBooleanValue() via XTLDR protocol
All checks were successful
Builds / ExectOS (i686) (push) Successful in 33s
Builds / ExectOS (amd64) (push) Successful in 34s
2024-03-18 22:16:20 +01:00
18c9cc1644 Remove unnecessary debug messages
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 32s
2024-03-18 21:55:17 +01:00
12e8704ffb Implement BlGetConfigBooleanValue() routine
All checks were successful
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 34s
2024-03-18 20:02:43 +01:00
1d26b81923 Store last booted OS in NVRAM and make it default one on next boot
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 33s
2024-03-18 19:41:55 +01:00
ee23cd90cb Implement BlGetEfiVariable() and BlSetEfiVariable() routines
All checks were successful
Builds / ExectOS (i686) (push) Successful in 33s
Builds / ExectOS (amd64) (push) Successful in 33s
2024-03-18 17:04:58 +01:00
713f826387 XTOS boot protocol should use builtin mapping function
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 31s
2024-03-17 23:10:50 +01:00
db0e1d40aa Allow boot protocols to supply own routine for converting EFI memory type into OS-specific memory type
Some checks failed
Builds / ExectOS (i686) (push) Failing after 32s
Builds / ExectOS (amd64) (push) Failing after 33s
2024-03-17 23:06:37 +01:00
41ebabcb09 Provide only necessary framebuffer information to the kernel
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 32s
2024-03-15 16:46:53 +01:00
945b323606 Initialize framebuffer earlier and reset video screen mode to circumvent buggy firmwares
All checks were successful
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 35s
2024-03-15 15:46:45 +01:00
848731c9e6 Introduce ability to change screen resolution
All checks were successful
Builds / ExectOS (i686) (push) Successful in 44s
Builds / ExectOS (amd64) (push) Successful in 46s
2024-03-15 15:12:12 +01:00
662b49d96e Remove unneeded infinite loop
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-03-13 16:34:47 +01:00
e6736087ba Corrections in printing debug messages
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 1m18s
Builds / ExectOS (i686) (push) Successful in 1m13s
2024-03-13 15:55:03 +01:00
a4c22ab5e8 Improvements to FrameBuffer support
All checks were successful
Builds / ExectOS (i686) (push) Successful in 35s
Builds / ExectOS (amd64) (push) Successful in 37s
2024-03-09 15:07:33 +01:00
7c210e8818 Improvements and fixes in framebuffer module
All checks were successful
Builds / ExectOS (i686) (push) Successful in 45s
Builds / ExectOS (amd64) (push) Successful in 47s
2024-03-07 16:19:05 +01:00
70a52adb8b Don't even try to load a dependency modules with invalid name set
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 31s
2024-03-02 22:59:20 +01:00
baaa729076 Correct typo in a comment
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 41s
Builds / ExectOS (i686) (push) Successful in 40s
2024-03-02 22:27:32 +01:00
bd6516cdf9 Reallocate memory when updating existing config entry via BlSetConfigValue()
All checks were successful
Builds / ExectOS (i686) (push) Successful in 33s
Builds / ExectOS (amd64) (push) Successful in 35s
2024-03-02 17:15:37 +01:00
01983ef677 Small fixes to configuration parser
All checks were successful
Builds / ExectOS (i686) (push) Successful in 43s
Builds / ExectOS (amd64) (push) Successful in 45s
2024-03-02 16:54:28 +01:00
d61fd4f9c7 Fix grim bug in PE/COFF image structures causing invalid data read from optional header
All checks were successful
Builds / ExectOS (i686) (push) Successful in 31s
Builds / ExectOS (amd64) (push) Successful in 31s
2024-03-02 00:56:38 +01:00
a57ae020fa Implement PeGetFileSize(), PeGetImageSize() and PeUnloadImage() routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 47s
Builds / ExectOS (i686) (push) Successful in 45s
2024-03-01 23:12:12 +01:00
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
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 31s
2024-02-28 23:28:33 +01:00
632bb30b64 Implement BlGetRandomValue() and BlInitializeEntropy() routines for future KASLR support
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 1m16s
Builds / ExectOS (i686) (push) Successful in 1m14s
2024-02-26 23:06:44 +01:00
2dd4048416 Switch GUID specifier to %v and %V, thus allowing to write string with both lower and uppercase
All checks were successful
Builds / ExectOS (i686) (push) Successful in 36s
Builds / ExectOS (amd64) (push) Successful in 41s
2024-02-17 22:52:49 +01:00
430557e08f Fix printing hard drive GUID
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 29s
2024-02-16 23:05:24 +01:00
a70df7cbf8 Properly print status codes
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 26s
2024-02-16 23:01:29 +01:00
70c66a5d70 Code formatting
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-16 22:44:19 +01:00
789e9d64f4 Properly print PA & VA addresses
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 27s
2024-02-16 22:40:36 +01:00
98acc6f3d4 Use uppercase when printing status codes
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 29s
2024-02-16 22:09:38 +01:00
6d66629124 Cleanup after switching to new way of printing formatted strings
All checks were successful
Builds / ExectOS (i686) (push) Successful in 33s
Builds / ExectOS (amd64) (push) Successful in 34s
2024-02-16 22:04:17 +01:00
c99bd73dfd Use uppercase when printing status codes
All checks were successful
Builds / ExectOS (i686) (push) Successful in 31s
Builds / ExectOS (amd64) (push) Successful in 34s
2024-02-16 22:03:00 +01:00
8ddd6137da XTLDR console/debug print refactor
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 43s
Builds / ExectOS (i686) (push) Successful in 39s
2024-02-16 15:09:18 +01:00