Commit Graph

773 Commits

Author SHA1 Message Date
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
99ff358287
Don't mess with input string
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-04-30 10:31:17 +02:00
c4d5b5bb25
Truncate memory descriptor to 4GB only with PML2
All checks were successful
Builds / ExectOS (i686) (push) Successful in 36s
Builds / ExectOS (amd64) (push) Successful in 37s
2024-04-29 23:59:17 +02:00
763bade115
Use correct string formatting when printing page mapping
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 36s
2024-04-29 23:57:09 +02:00
0756eb9b29
Allocate memory before copying a buffer
All checks were successful
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 36s
2024-04-29 22:39:32 +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
a4bb5a8ecc
Correct formatting
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 35s
2024-04-29 12:35:32 +02:00
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
a6b8f97fbb
Remove empty line
All checks were successful
Builds / ExectOS (i686) (push) Successful in 34s
Builds / ExectOS (amd64) (push) Successful in 35s
2024-04-29 08:40:07 +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
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
12ce7aae3f
Correct formatting
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 33s
2024-04-19 23:59:21 +02:00
9f2279f28f
Use common way of setting initial runlevel across architectures
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 34s
2024-04-19 23:56:33 +02:00
5539d98572
Raise to HIGH runlevel before switching the stack
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 33s
2024-04-19 23:55:26 +02:00
3aa0413756
Use common routine to set runlevel
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 32s
2024-04-19 23:52:21 +02:00
28c89986fb
Tweaks to AMD64 architecture support
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 34s
2024-04-19 23:37:39 +02:00
b30d15719c
Temporarily comment out thread code related to trap frame
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 36s
Builds / ExectOS (i686) (push) Successful in 34s
2024-04-19 16:59:57 +02:00
51df6c3acb
Update trap handler to allow access to the registers
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 24s
Builds / ExectOS (i686) (push) Failing after 25s
2024-04-19 16:54:55 +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
cf408519ad
Initialize AMD64 segments properly
All checks were successful
Builds / ExectOS (i686) (push) Successful in 33s
Builds / ExectOS (amd64) (push) Successful in 35s
2024-04-17 20:02:27 +02:00
8aa33874ff
Initialize CS segment on i686 architecture
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 32s
Builds / ExectOS (i686) (push) Successful in 31s
2024-04-17 18:27:57 +02:00
7011d456e9
Fix loading CS segment for AMD64 architecture
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 35s
Builds / ExectOS (i686) (push) Successful in 33s
2024-04-17 16:48:18 +02:00
b31aa82872
Fix loading CS segment for i686 architecture
All checks were successful
Builds / ExectOS (i686) (push) Successful in 48s
Builds / ExectOS (amd64) (push) Successful in 50s
2024-04-17 16:46:03 +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
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
7c9233c9a2
Copy memory descriptor to fix i686 compiler error
All checks were successful
Builds / ExectOS (i686) (push) Successful in 31s
Builds / ExectOS (amd64) (push) Successful in 31s
2024-04-07 10:51: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
e82c3cbf18
Fix function prototypes
Some checks failed
Builds / ExectOS (i686) (push) Failing after 28s
Builds / ExectOS (amd64) (push) Successful in 30s
2024-04-07 10:37:27 +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
cf8bac9fbe
Initial memory manager initialization code
Some checks failed
Builds / ExectOS (amd64) (push) Failing after 25s
Builds / ExectOS (i686) (push) Failing after 25s
2024-04-07 10:27:30 +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
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
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
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
74b2c80869
RtlCountLeadingZeroes64() should take 64bit value
All checks were successful
Builds / ExectOS (i686) (push) Successful in 29s
Builds / ExectOS (amd64) (push) Successful in 31s
2024-03-23 00:36:59 +01:00