Commit Graph

56 Commits

Author SHA1 Message Date
a2af4841da Move all globals into separate file
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 30s
Builds / ExectOS (i686) (push) Successful in 30s
2023-11-16 17:39:12 +01:00
6f5e7f63f3 Include xtver.h to access version related definitions
All checks were successful
Builds / ExectOS (amd64) (push) Successful in 28s
Builds / ExectOS (i686) (push) Successful in 25s
2023-10-27 15:43:37 +02:00
145fc17271 Pass framebuffer pitch information to the kernel
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-18 20:15:41 +01:00
605597262c Initial version of EFI framebuffer module, currently support only GOP
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-16 18:41:25 +01:00
f19afbddb7 Do not create new bootloader stack as it is not needed any longer and kernel will use its own stack
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-03 23:04:11 +01:00
bb95223501 Implement BlActivateSerialControllerIO() routine for activating I/O space access on PCI(E) serial controllers
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2023-01-03 00:10:24 +01:00
9dc0e60f28 We support EFI-enabled systems only and such machines should support PAE, so there is no need for XTLDR to support non-PAE x86 hardware
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-28 15:57:03 +01:00
6d77ff42c5 Loop over halt; add missing calling convention
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-27 20:12:59 +01:00
8f3a4aef60 Code formatting
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-23 22:27:08 +01:00
4d68b93ed3 Small code formatting and refactoring
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-22 23:19:23 +01:00
cf828a6896 Fill in kernel initialization block
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-21 20:04:20 +01:00
edee9a8ec6 Rework BlGetMemoryMap() routine to use EFI_MEMORY_MAP structure; map EfiBootServicesData instead of EfiReservedMemoryType
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-20 18:59:36 +01:00
eb5998c58e Add a way to check PE/COFF image machine type
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-20 15:37:13 +01:00
7bcdd8562d Several changes to EFI memory mapping
All checks were successful
ci/woodpecker/push/build Pipeline was successful
* Move EFI memory type conversion to separate routine
 * Never map VRAM
 * Map only pages not exceeding the lowest physical page
2022-12-19 22:50:03 +01:00
0572b208f1 Add full paging support for AMD64 and i686 architectures, including PAE support
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-11 20:14:04 +01:00
900e86c9da Create new stack and then boot XTOS, export more routines with the loader protocol
Some checks failed
ci/woodpecker/push/build Pipeline failed
2022-12-07 20:34:16 +01:00
d50fb7c37d Implement BlCreateStack()
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-07 19:46:36 +01:00
43c16d054d Use PVOID instead of HARDWARE_PTE to allow different variable types for different architectures
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-07 18:54:21 +01:00
93fa2aed67 Implement BlMapVirtualMemory() routine for recursive mapping
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-06 23:32:31 +01:00
3876414a48 Implement BlAddVirtualMemoryMapping() and BlInitializeVirtualMemory() routines
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-06 17:49:00 +01:00
2f03f84a20 Move memory related routines to a separate file and implement BlGetMemoryMap() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-12-05 20:08:18 +01:00
5ec08cb84a Implement PeGetSubSystem() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-11-16 15:03:33 +01:00
9f43ad06af Implement PeRelocateImage() routine
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-11-15 23:31:35 +01:00
b03c9c2a25 Further PE/COFF module improvements
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-11-12 12:37:49 +01:00
f0868b91ec Initial XTOS boot protocol support
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-11-07 20:21:07 +01:00
c8f99ad6ed Initial PE/COFF support for loading image files
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-11-06 19:59:38 +01:00
f5e9bd11f1 Implement BlEfiMemoryAllocatePages() and BlEfiMemoryFreePages() for manipulating memory pages
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-30 22:24:21 +01:00
b29162841c Get rid of BlEfiDirectorySeparator() routine and allow GetVolumeDevicePath() to store ARC name
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-30 12:21:09 +01:00
c09b121178 Rework BlEfiDirectorySeparator(), now it operates on wide strings
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-26 22:11:42 +02:00
0ead750489 Remove useless forward reference
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-25 23:21:58 +02:00
861251f41a Add routines for opening and closing volumes to the loader protocol
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-25 23:17:23 +02:00
26884a436b Implement BlEfiDirectorySeparator() routine for setting correct EFI directory separator
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-25 23:12:09 +02:00
727825572a Print XTLDR version
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-23 22:36:12 +02:00
d6cc283519 Add missing IN/OUT indicators
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-23 22:20:17 +02:00
5869aa985a Quick code refactor for further modules development
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-20 18:19:34 +02:00
37a37c225f Small code refactoring
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-20 15:58:50 +02:00
984b4b83a1 This is no longer needed
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-18 18:47:49 +02:00
27f0b3b362 Correct typo
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-18 18:46:46 +02:00
f8a120a24c Allow BlGetXtLoaderProtocol() routine to store loader protocol in a specified variable
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-18 15:44:21 +02:00
96a848b498 Add missing routine declaration
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-17 22:47:46 +02:00
3894d4fd75 Move blproto.c and add missing header file
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-12 23:14:33 +02:00
3fa2ec90aa Refactor code and fix loader protocol support
Some checks failed
ci/woodpecker/push/build Pipeline failed
2022-10-12 23:09:19 +02:00
09e58d0b67 Implement BlEfiGetSecureBootStatus() to get SecureBoot status
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-12 15:47:41 +02:00
9e7c041f41 Implement XTLDR modules support
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-10-11 23:03:29 +02:00
58847c2fea Implement BlCloseVolume() and BlOpenVolume() routines
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-09-18 18:56:39 +02:00
109c24f389 Initial support for xtldr modules and bootloader protocol
Some checks failed
ci/woodpecker/push/build Pipeline failed
2022-09-17 00:14:09 +02:00
a7d07e7ecb Integrate xtklib with the kernel
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-08-30 23:23:02 +02:00
f03b79ee2f Implement BlGetVolumeDevicePath() and BlpDissectVolumeArcPath()
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-08-22 20:09:50 +02:00
d9b60aaa11 Add missing IN/OUT modifiers to routine declarations
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-08-22 18:24:15 +02:00
756763d8ca Discover and enumerate EFI block devices
All checks were successful
ci/woodpecker/push/build Pipeline was successful
2022-08-21 19:44:49 +02:00