Commit Graph

390 Commits

Author SHA1 Message Date
363e100493
Saving processor features in the processor control block
Fixed correct AMD Family 25 model detection
Fixed procedure for saving processor vendor name (previously corrupted)
Added a debugging print of the processor identification
2024-05-06 17:55:37 +02:00
7a62ce3feb
Enable Bochs-based emulation
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 25s
Builds / ExectOS (i686) (push) Failing after 24s
2024-04-30 12:16:19 +02:00
ecf62ff231
Add OVMF firmware and VGA Bios suitable for use with Bochs
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 36s
2024-04-30 11:57:35 +02:00
ab618f95b9
Use dedicated GUID for DUMMYOS boot protocol
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 35s
2024-04-29 13:48:01 +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
22693a48d3
Rework trap handling assembly code
All checks were successful
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 32s
2024-04-23 15:07:08 +02:00
a36c02fde8
Use common name for EFLAGS and RFLAGS, regardless the CPU architecture
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 33s
2024-04-21 22:35:06 +02:00
30a2cb9849
Update timers support
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 47s
Builds / ExectOS (i686) (push) Successful in 46s
2024-04-21 13:57:55 +02:00
331c5bfeda
Rework initial timer support
All checks were successful
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-04-20 23:15:57 +02:00
92ee74b494
Rework trap handling to access registers
Some checks failed
Builds / ExectOS (i686) (push) Failing after 28s
Builds / ExectOS (amd64) (push) Failing after 29s
2024-04-19 16:52:37 +02:00
9d4751abee
Remove useless assembler options
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 39s
Builds / ExectOS (i686) (push) Successful in 37s
2024-04-14 11:37:11 +02:00
ffda2fd8a9
Update toolchain settings
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 45s
Builds / ExectOS (i686) (push) Successful in 43s
2024-04-14 11:18:31 +02:00
befa211aa7
Add PFN related structures and definitions
All checks were successful
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-04-08 19:03:58 +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
bfcf9bc61a
Add PFN_NUMBER type definition
Some checks failed
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Failing after 29s
2024-04-07 10:33:53 +02:00
04e22c127e
Initial memory manager initialization code
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 23s
Builds / ExectOS (i686) (push) Failing after 22s
2024-04-07 10:26:12 +02:00
42a1373612
Do not pre-allocate memory
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 38s
Builds / ExectOS (i686) (push) Successful in 37s
2024-04-06 11:28:02 +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
d7b103f85d
Add forward references for PTE related structures
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 31s
2024-04-03 16:03:17 +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
306891c9eb
Rename XTBL_MODULE_INFO definition to XTBL_MODULE_DATA, to not confuse with structure
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 32s
2024-03-25 07:14:18 +01:00
715f842445
Implement RtlClearSetBits(), RtlFindClearBits(), RtlFindSetBits() and RtlSetClearBits() routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 31s
2024-03-22 18:53:30 +01:00
7895cb0d32
Fix RtlClearBits() and RtlSetBits()
All checks were successful
Builds / ExectOS (i686) (push) Successful in 29s
Builds / ExectOS (amd64) (push) Successful in 32s
2024-03-21 21:36:33 +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
b6f915c0c5
Implement RtlClearBits() and RtlSetBits() routines
All checks were successful
Builds / ExectOS (i686) (push) Successful in 30s
Builds / ExectOS (amd64) (push) Successful in 31s
2024-03-19 19:53:49 +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
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
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
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
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
26d5118cea
Add forward references to bit map related routines
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 45s
Builds / ExectOS (i686) (push) Successful in 42s
2024-03-12 22:02:24 +01:00
c3831f82e7
Initial bit maps support
All checks were successful
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 37s
2024-03-12 19:15:02 +01:00
bb44caee31
Implement HlPutCharacter() routine
All checks were successful
Builds / ExectOS (i686) (push) Successful in 29s
Builds / ExectOS (amd64) (push) Successful in 30s
2024-03-10 17:02:30 +01:00
4bff86c570
Add SSF 2.0 font header structure
All checks were successful
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 35s
2024-03-10 13:03:45 +01:00
d8ebd9f202
Add font to framebuffer data
All checks were successful
Builds / ExectOS (i686) (push) Successful in 32s
Builds / ExectOS (amd64) (push) Successful in 32s
2024-03-10 10:04:51 +01:00
cb4292dccf
Allow to use custom framebuffer fonts
Some checks failed
Builds / ExectOS (i686) (push) Failing after 28s
Builds / ExectOS (amd64) (push) Failing after 30s
2024-03-10 10:02:30 +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
475561b038
Add XTOS default framebuffer font (VGA Unicode by Dmitry Yu. Bolkhovityanov)
All checks were successful
Builds / ExectOS (i686) (push) Successful in 40s
Builds / ExectOS (amd64) (push) Successful in 42s
2024-03-08 20:20:21 +01:00
5814775c43
Add EFI legacy BIOS protocol related structures
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 31s
2024-03-07 21:55:58 +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
4b34f7db4b
Update preprocessor macros
All checks were successful
Builds / ExectOS (i686) (push) Successful in 56s
Builds / ExectOS (amd64) (push) Successful in 58s
2024-02-28 23:11:45 +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
f9714a79e4
Add support for writing floating point values
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 51s
Builds / ExectOS (i686) (push) Successful in 48s
2024-02-22 23:39:11 +01:00
4b2d8ded72
No parameters are expected, explicitly
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 25s
Builds / ExectOS (i686) (push) Successful in 28s
2024-02-20 16:55:12 +01:00