Commit Graph

761 Commits

Author SHA1 Message Date
Rafal Kupiec 22693a48d3
Rework trap handling assembly code
Builds / ExectOS (i686) (push) Successful in 32s Details
Builds / ExectOS (amd64) (push) Successful in 32s Details
2024-04-23 15:07:08 +02:00
Rafal Kupiec a36c02fde8
Use common name for EFLAGS and RFLAGS, regardless the CPU architecture
Builds / ExectOS (amd64) (push) Successful in 34s Details
Builds / ExectOS (i686) (push) Successful in 33s Details
2024-04-21 22:35:06 +02:00
Rafal Kupiec 30a2cb9849
Update timers support
Builds / ExectOS (amd64) (push) Successful in 47s Details
Builds / ExectOS (i686) (push) Successful in 46s Details
2024-04-21 13:57:55 +02:00
Rafal Kupiec 331c5bfeda
Rework initial timer support
Builds / ExectOS (i686) (push) Successful in 34s Details
Builds / ExectOS (amd64) (push) Successful in 36s Details
2024-04-20 23:15:57 +02:00
Rafal Kupiec 12ce7aae3f
Correct formatting
Builds / ExectOS (amd64) (push) Successful in 33s Details
Builds / ExectOS (i686) (push) Successful in 33s Details
2024-04-19 23:59:21 +02:00
Rafal Kupiec 9f2279f28f
Use common way of setting initial runlevel across architectures
Builds / ExectOS (amd64) (push) Successful in 35s Details
Builds / ExectOS (i686) (push) Successful in 34s Details
2024-04-19 23:56:33 +02:00
Rafal Kupiec 5539d98572
Raise to HIGH runlevel before switching the stack
Builds / ExectOS (amd64) (push) Successful in 34s Details
Builds / ExectOS (i686) (push) Successful in 33s Details
2024-04-19 23:55:26 +02:00
Rafal Kupiec 3aa0413756
Use common routine to set runlevel
Builds / ExectOS (amd64) (push) Successful in 32s Details
Builds / ExectOS (i686) (push) Successful in 32s Details
2024-04-19 23:52:21 +02:00
Rafal Kupiec 28c89986fb
Tweaks to AMD64 architecture support
Builds / ExectOS (amd64) (push) Successful in 36s Details
Builds / ExectOS (i686) (push) Successful in 34s Details
2024-04-19 23:37:39 +02:00
Rafal Kupiec b30d15719c
Temporarily comment out thread code related to trap frame
Builds / ExectOS (amd64) (push) Successful in 36s Details
Builds / ExectOS (i686) (push) Successful in 34s Details
2024-04-19 16:59:57 +02:00
Rafal Kupiec 51df6c3acb
Update trap handler to allow access to the registers
Builds / ExectOS (amd64) (push) Failing after 24s Details
Builds / ExectOS (i686) (push) Failing after 25s Details
2024-04-19 16:54:55 +02:00
Rafal Kupiec 92ee74b494
Rework trap handling to access registers
Builds / ExectOS (i686) (push) Failing after 28s Details
Builds / ExectOS (amd64) (push) Failing after 29s Details
2024-04-19 16:52:37 +02:00
Rafal Kupiec cf408519ad
Initialize AMD64 segments properly
Builds / ExectOS (i686) (push) Successful in 33s Details
Builds / ExectOS (amd64) (push) Successful in 35s Details
2024-04-17 20:02:27 +02:00
Rafal Kupiec 8aa33874ff
Initialize CS segment on i686 architecture
Builds / ExectOS (amd64) (push) Successful in 32s Details
Builds / ExectOS (i686) (push) Successful in 31s Details
2024-04-17 18:27:57 +02:00
Rafal Kupiec 7011d456e9
Fix loading CS segment for AMD64 architecture
Builds / ExectOS (amd64) (push) Successful in 35s Details
Builds / ExectOS (i686) (push) Successful in 33s Details
2024-04-17 16:48:18 +02:00
Rafal Kupiec b31aa82872
Fix loading CS segment for i686 architecture
Builds / ExectOS (i686) (push) Successful in 48s Details
Builds / ExectOS (amd64) (push) Successful in 50s Details
2024-04-17 16:46:03 +02:00
Rafal Kupiec 9d4751abee
Remove useless assembler options
Builds / ExectOS (amd64) (push) Successful in 39s Details
Builds / ExectOS (i686) (push) Successful in 37s Details
2024-04-14 11:37:11 +02:00
Rafal Kupiec ffda2fd8a9
Update toolchain settings
Builds / ExectOS (amd64) (push) Successful in 45s Details
Builds / ExectOS (i686) (push) Successful in 43s Details
2024-04-14 11:18:31 +02:00
Rafal Kupiec befa211aa7
Add PFN related structures and definitions
Builds / ExectOS (i686) (push) Successful in 34s Details
Builds / ExectOS (amd64) (push) Successful in 36s Details
2024-04-08 19:03:58 +02:00
Rafal Kupiec 7193e698f1
Store page map level
Builds / ExectOS (i686) (push) Successful in 32s Details
Builds / ExectOS (amd64) (push) Successful in 33s Details
2024-04-07 17:49:24 +02:00
Rafal Kupiec 388ac1a8c2
Properly, recursively self map page tables on i686 architecture
Builds / ExectOS (i686) (push) Successful in 31s Details
Builds / ExectOS (amd64) (push) Successful in 34s Details
2024-04-07 17:11:14 +02:00
Rafal Kupiec 7c9233c9a2
Copy memory descriptor to fix i686 compiler error
Builds / ExectOS (i686) (push) Successful in 31s Details
Builds / ExectOS (amd64) (push) Successful in 31s Details
2024-04-07 10:51:14 +02:00
Rafal Kupiec 0af3a01acf
Pass compatible pointer type to fix compiler warning
Builds / ExectOS (i686) (push) Failing after 28s Details
Builds / ExectOS (amd64) (push) Successful in 31s Details
2024-04-07 10:50:21 +02:00
Rafal Kupiec e82c3cbf18
Fix function prototypes
Builds / ExectOS (i686) (push) Failing after 28s Details
Builds / ExectOS (amd64) (push) Successful in 30s Details
2024-04-07 10:37:27 +02:00
Rafal Kupiec bfcf9bc61a
Add PFN_NUMBER type definition
Builds / ExectOS (amd64) (push) Successful in 30s Details
Builds / ExectOS (i686) (push) Failing after 29s Details
2024-04-07 10:33:53 +02:00
Rafal Kupiec cf8bac9fbe
Initial memory manager initialization code
Builds / ExectOS (amd64) (push) Failing after 25s Details
Builds / ExectOS (i686) (push) Failing after 25s Details
2024-04-07 10:27:30 +02:00
Rafal Kupiec 04e22c127e
Initial memory manager initialization code
Builds / ExectOS (amd64) (push) Failing after 23s Details
Builds / ExectOS (i686) (push) Failing after 22s Details
2024-04-07 10:26:12 +02:00
Rafal Kupiec 42a1373612
Do not pre-allocate memory
Builds / ExectOS (amd64) (push) Successful in 38s Details
Builds / ExectOS (i686) (push) Successful in 37s Details
2024-04-06 11:28:02 +02:00
Rafal Kupiec 1305672875
Properly, recursively self map page tables; currently only for AMD64 and PML4
Builds / ExectOS (amd64) (push) Successful in 45s Details
Builds / ExectOS (i686) (push) Successful in 42s Details
2024-04-05 00:26:41 +02:00
Rafal Kupiec d7b103f85d
Add forward references for PTE related structures
Builds / ExectOS (amd64) (push) Successful in 32s Details
Builds / ExectOS (i686) (push) Successful in 31s Details
2024-04-03 16:03:17 +02:00
Rafal Kupiec c6f3422c49
Update PTE related structures
Builds / ExectOS (amd64) (push) Successful in 42s Details
Builds / ExectOS (i686) (push) Successful in 41s Details
2024-04-03 16:00:26 +02:00
Rafal Kupiec dcca4870cd
Move cursor before changing console attributes
Builds / ExectOS (i686) (push) Successful in 38s Details
Builds / ExectOS (amd64) (push) Successful in 41s Details
2024-03-28 14:06:52 +01:00
Rafal Kupiec 1cdc1d3e54
Truncate EFI memory descriptor to 4GB and never map EFI reserved memory like PCI BAR
Builds / ExectOS (amd64) (push) Successful in 32s Details
Builds / ExectOS (i686) (push) Successful in 32s Details
2024-03-26 23:04:54 +01:00
Rafal Kupiec 306891c9eb
Rename XTBL_MODULE_INFO definition to XTBL_MODULE_DATA, to not confuse with structure
Builds / ExectOS (amd64) (push) Successful in 34s Details
Builds / ExectOS (i686) (push) Successful in 32s Details
2024-03-25 07:14:18 +01:00
Rafal Kupiec e24c37c9b1
First page is now always present in memory map, so there is no need to map it explicitly
Builds / ExectOS (i686) (push) Successful in 31s Details
Builds / ExectOS (amd64) (push) Successful in 30s Details
2024-03-24 23:01:52 +01:00
Rafal Kupiec ce8c66f93a
Always map first page
Builds / ExectOS (amd64) (push) Successful in 30s Details
Builds / ExectOS (i686) (push) Successful in 31s Details
2024-03-24 22:52:18 +01:00
Rafal Kupiec b3be36e23d
Map BIOS ROM and VRAM
Builds / ExectOS (amd64) (push) Successful in 38s Details
Builds / ExectOS (i686) (push) Successful in 36s Details
2024-03-24 15:53:36 +01:00
Rafal Kupiec 74b2c80869
RtlCountLeadingZeroes64() should take 64bit value
Builds / ExectOS (i686) (push) Successful in 29s Details
Builds / ExectOS (amd64) (push) Successful in 31s Details
2024-03-23 00:36:59 +01:00
Rafal Kupiec 9aff665d1a
Export RtlClearSetBits(), RtlFindClearBits(), RtlFindSetBits() and RtlSetClearBits() routines
Builds / ExectOS (i686) (push) Successful in 30s Details
Builds / ExectOS (amd64) (push) Successful in 31s Details
2024-03-22 22:49:12 +01:00
Rafal Kupiec 715f842445
Implement RtlClearSetBits(), RtlFindClearBits(), RtlFindSetBits() and RtlSetClearBits() routines
Builds / ExectOS (amd64) (push) Successful in 33s Details
Builds / ExectOS (i686) (push) Successful in 31s Details
2024-03-22 18:53:30 +01:00
Rafal Kupiec 7895cb0d32
Fix RtlClearBits() and RtlSetBits()
Builds / ExectOS (i686) (push) Successful in 29s Details
Builds / ExectOS (amd64) (push) Successful in 32s Details
2024-03-21 21:36:33 +01:00
Rafal Kupiec 56d50ea2e8
Implement EDID support for getting the preferred screen resolution
Builds / ExectOS (i686) (push) Successful in 29s Details
Builds / ExectOS (amd64) (push) Successful in 31s Details
2024-03-21 15:40:09 +01:00
Rafal Kupiec eb75a27ac2
Use common handle and properly close GOP protocol on failures
Builds / ExectOS (i686) (push) Successful in 37s Details
Builds / ExectOS (amd64) (push) Successful in 38s Details
2024-03-21 06:59:05 +01:00
Rafal Kupiec b6f915c0c5
Implement RtlClearBits() and RtlSetBits() routines
Builds / ExectOS (i686) (push) Successful in 30s Details
Builds / ExectOS (amd64) (push) Successful in 31s Details
2024-03-19 19:53:49 +01:00
Rafal Kupiec 3cd55260e6
Expose BlEnterFirmwareSetup() routine via XTLDR protocol
Builds / ExectOS (i686) (push) Successful in 32s Details
Builds / ExectOS (amd64) (push) Successful in 34s Details
2024-03-19 17:11:38 +01:00
Rafal Kupiec e263effe13
Allow to reboot into UEFI Firmware setup interface after pressing F10 in the boot menu
Builds / ExectOS (amd64) (push) Successful in 32s Details
Builds / ExectOS (i686) (push) Successful in 31s Details
2024-03-19 17:04:14 +01:00
Rafal Kupiec 94e6ca7aec
Implement BlEnterFirmwareSetup() routine
Builds / ExectOS (amd64) (push) Successful in 39s Details
Builds / ExectOS (i686) (push) Successful in 37s Details
2024-03-19 16:50:04 +01:00
Rafal Kupiec 7b2a2565c5
Expose BlGetEfiVariable() and BlSetEfiVariable() routines via XTLDR protocol
Builds / ExectOS (i686) (push) Successful in 31s Details
Builds / ExectOS (amd64) (push) Successful in 31s Details
2024-03-18 22:20:21 +01:00
Rafal Kupiec 6accf62552
Expose BlGetConfigBooleanValue() via XTLDR protocol
Builds / ExectOS (i686) (push) Successful in 33s Details
Builds / ExectOS (amd64) (push) Successful in 34s Details
2024-03-18 22:16:20 +01:00
Rafal Kupiec 18c9cc1644
Remove unnecessary debug messages
Builds / ExectOS (amd64) (push) Successful in 33s Details
Builds / ExectOS (i686) (push) Successful in 32s Details
2024-03-18 21:55:17 +01:00