91b7cd68ba
Update dummy module
Builds / ExectOS (amd64) (push) Successful in 47s
Builds / ExectOS (i686) (push) Successful in 25s
2024-01-08 19:36:16 +01:00
17c0fdecce
Improvements to protocol support
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-08 16:13:18 +01:00
7fd5273476
Rename Protocol->Register() to Protocol->Install()
Builds / ExectOS (amd64) (push) Failing after 16s
Builds / ExectOS (i686) (push) Failing after 14s
2024-01-07 20:54:59 +01:00
fd330e9631
Cleanup
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-06 23:40:44 +01:00
60ce943cab
Fix memory mappings and exiting boot services for i686
Builds / ExectOS (amd64) (push) Successful in 26s
Builds / ExectOS (i686) (push) Successful in 26s
2024-01-06 23:23:52 +01:00
602f8c1c0e
Don't print FB information
Builds / ExectOS (amd64) (push) Successful in 37s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-06 23:04:52 +01:00
0293fb6f28
If ExitBootServices() fails, it is mostly caused by map key that is racing with asynchronous events signaled over the back of the timer interrupt. In this case new memory map should be obtained prior to another ExitBootServices() call attempt
Builds / ExectOS (amd64) (push) Successful in 44s
Builds / ExectOS (i686) (push) Successful in 27s
2024-01-05 15:13:45 +01:00
9443da9817
Always check module mapping status and optionally map xtldr code
Builds / ExectOS (amd64) (push) Successful in 34s
Builds / ExectOS (i686) (push) Successful in 30s
2024-01-05 15:10:34 +01:00
2f8820a021
Replace obsolete bootloader code, since new one can already start XTOS kernel
Builds / ExectOS (amd64) (push) Successful in 27s
Builds / ExectOS (i686) (push) Successful in 28s
2024-01-04 22:47:40 +01:00
1c94f9ff02
Improvements in string and wide string support
...
Builds / ExectOS (amd64) (push) Failing after 19s
Builds / ExectOS (i686) (push) Failing after 15s
* Implement RtlCompareString(), RtlCompareStringInsensitive(), RtlCompareWideString() and RtlCompareWideStringInsensitive()
* Rename some routines t omatch naming conventions
* Switch to CHAR in string operations
2023-12-06 22:47:54 +01:00
d8403d01f5
Verify kernel and boot loader compatibility
Builds / ExectOS (amd64) (push) Successful in 33s
Builds / ExectOS (i686) (push) Successful in 31s
2023-11-22 17:22:57 +01:00
a3c28cee73
Initial XTLDR APIC support, finds and maps base APIC address for kernel
Builds / ExectOS (amd64) (push) Successful in 29s
Builds / ExectOS (i686) (push) Successful in 30s
2023-11-20 15:18:22 +01:00
89718213b8
Remove no longer needed dummy module
ci/woodpecker/push/build Pipeline was successful
2023-05-17 15:13:10 +02:00
aace0f39c4
Allow stripped PE/COFF images to be loaded, just warn about it
ci/woodpecker/push/build Pipeline was successful
2023-02-22 15:20:00 +01:00
707c92e08a
Boot loader no longer needs to do anything related to the stack
ci/woodpecker/push/build Pipeline was successful
2023-02-05 10:03:21 +01:00
2bf15a5bb8
Fix pointer offset in PE relocation code
ci/woodpecker/push/build Pipeline was successful
2023-01-29 20:38:05 +01:00
ddffd0c582
Temporary kernel stack is no longer used
ci/woodpecker/push/build Pipeline was successful
2023-01-29 11:08:51 +01:00
df11473eac
Cleanup xtldr code as it no longer need to initialize CPU structures
ci/woodpecker/push/build Pipeline was successful
2023-01-29 10:59:22 +01:00
79a5027bca
Cleanup AMD64 part of CPU initialization, as it has been moved to the kernel
ci/woodpecker/push/build Pipeline was successful
2023-01-29 01:01:36 +01:00
27e2fdf4f2
Introduce architecture library as new kernel subsystem and move selected routines into new subsystem
ci/woodpecker/push/build Pipeline was successful
2023-01-28 10:34:55 +01:00
bf141fe25e
Basic IDT setup in the bootloader
ci/woodpecker/push/build Pipeline was successful
2023-01-26 20:14:27 +01:00
3b08bcaa4f
Setup processor context (GDT, PCR, TSS) and kernel startup stack before booting XTOS
ci/woodpecker/push/build Pipeline was successful
2023-01-25 18:39:07 +01:00
c4d53f12f2
Allocate memory for kernel startup stack
ci/woodpecker/push/build Pipeline was successful
2023-01-25 16:47:27 +01:00
b3bf613e1b
Make sure paging has been successfully enabled
ci/woodpecker/push/build Pipeline was successful
2023-01-25 16:39:15 +01:00
145fc17271
Pass framebuffer pitch information to the kernel
ci/woodpecker/push/build Pipeline was successful
2023-01-18 20:15:41 +01:00
b8df45ab6a
Map framebuffer and fill information about it into kernel parameters
ci/woodpecker/push/build Pipeline was successful
2023-01-16 18:49:54 +01:00
605597262c
Initial version of EFI framebuffer module, currently support only GOP
ci/woodpecker/push/build Pipeline was successful
2023-01-16 18:41:25 +01:00
0461d975e0
Check ExitBootServices() status code
ci/woodpecker/push/build Pipeline was successful
2023-01-15 16:52:02 +01:00
42c3d4eff7
Fix NULL pointer
ci/woodpecker/push/build Pipeline was successful
2023-01-11 23:16:44 +01:00
b22a76e3c4
Add XT native kernel subsystem to the PE/COFF image support
ci/woodpecker/push/build Pipeline was successful
2023-01-06 16:16:26 +01:00
c91708034b
Correct comments
ci/woodpecker/push/build Pipeline was successful
2023-01-02 18:06:54 +01:00
dec021b1ec
Reorganize early debug printing; initialize kernel stacks when needed
ci/woodpecker/push/build Pipeline was successful
2022-12-28 23:11:35 +01:00
6d77ff42c5
Loop over halt; add missing calling convention
ci/woodpecker/push/build Pipeline was successful
2022-12-27 20:12:59 +01:00
8f3a4aef60
Code formatting
ci/woodpecker/push/build Pipeline was successful
2022-12-23 22:27:08 +01:00
7496c7203d
Add missing routines documentation
ci/woodpecker/push/build Pipeline was successful
2022-12-22 23:29:16 +01:00
4d68b93ed3
Small code formatting and refactoring
ci/woodpecker/push/build Pipeline was successful
2022-12-22 23:19:23 +01:00
8b02fb6c3f
Mostly update comments in PE/COFF module
ci/woodpecker/push/build Pipeline was successful
2022-12-21 23:02:37 +01:00
dc2570ca8e
Serial port should be working all the time, so announce that now booting the kernel
ci/woodpecker/push/build Pipeline was successful
2022-12-21 20:52:53 +01:00
cf828a6896
Fill in kernel initialization block
ci/woodpecker/push/build Pipeline was successful
2022-12-21 20:04:20 +01:00
7c38efc802
Update boot sequence and check PE/COFF image machine type compatibility
ci/woodpecker/push/build Pipeline was successful
2022-12-20 19:11:15 +01:00
eb5998c58e
Add a way to check PE/COFF image machine type
ci/woodpecker/push/build Pipeline was successful
2022-12-20 15:37:13 +01:00
6871291c9a
Basic steps in XTOS boot protocol
ci/woodpecker/push/build Pipeline was successful
2022-12-14 22:17:17 +01:00
6b2f34f287
Store physical address as well in the image context
ci/woodpecker/push/build Pipeline was successful
2022-12-04 22:46:33 +01:00
cba4a065ba
Add missing comments
ci/woodpecker/push/build Pipeline was successful
2022-11-23 20:51:40 +01:00
519df2ad11
Allow to set VirtualAddress of loaded module
ci/woodpecker/push/build Pipeline was successful
2022-11-23 20:34:20 +01:00
2cb2328f45
Initial XtpLoadModule() implementation
ci/woodpecker/push/build Pipeline was successful
2022-11-17 22:44:53 +01:00
0db01053ab
Code formatting
ci/woodpecker/push/build Pipeline was successful
2022-11-16 20:06:52 +01:00
5ec08cb84a
Implement PeGetSubSystem() routine
ci/woodpecker/push/build Pipeline was successful
2022-11-16 15:03:33 +01:00
9f43ad06af
Implement PeRelocateImage() routine
ci/woodpecker/push/build Pipeline was successful
2022-11-15 23:31:35 +01:00
ee9f2df6a6
Properly relocate PE/COFF image
ci/woodpecker/push/build Pipeline was successful
2022-11-15 00:19:21 +01:00