Commit Graph

1042 Commits

Author SHA1 Message Date
c60a46967f Copy module path; this fixes modules loading on i686 2022-10-16 23:49:40 +02:00
3894d4fd75 Move blproto.c and add missing header file 2022-10-12 23:14:33 +02:00
3fa2ec90aa Refactor code and fix loader protocol support 2022-10-12 23:09:19 +02:00
09e58d0b67 Implement BlEfiGetSecureBootStatus() to get SecureBoot status 2022-10-12 15:47:41 +02:00
da37ceaa0f Add missing global variable guid 2022-10-11 23:25:25 +02:00
9e7c041f41 Implement XTLDR modules support 2022-10-11 23:03:29 +02:00
649974b733 BlOpenVolume() now correctly opens a Simple File System protocol 2022-10-05 19:57:46 +02:00
6a0a1eab23 Add missing IN/OUT indicators 2022-10-02 14:09:29 +02:00
b21f9c199f Add missing EFI end device path subtypes 2022-10-02 14:05:37 +02:00
6c6e5fe70a Implement RtlListLoop() routine for detecting loops in linked lists 2022-09-27 19:30:19 +02:00
bf9171b66a Check for OVMF and prevent doubled messages on serial console 2022-09-27 18:39:26 +02:00
67acacf528 Use SIZE_T for length limiter 2022-09-26 23:02:38 +02:00
252eb5c825 Export RtlWideStringConcatenate() and RtlWideStringLength() routines 2022-09-26 23:01:17 +02:00
dd0c86003d Set correct calling convention for RtlWideStringCompare() and RtlWideStringTokenize() routines 2022-09-26 22:54:21 +02:00
a0f359bcf7 Implement RtlWideStringConcatenate() routine 2022-09-26 17:26:00 +02:00
c7f53e193a Implement RtlWideStringLength() routine 2022-09-26 16:53:58 +02:00
58847c2fea Implement BlCloseVolume() and BlOpenVolume() routines 2022-09-18 18:56:39 +02:00
5fe22b5d6c Fix build by setting project name first 2022-09-17 00:22:45 +02:00
109c24f389 Initial support for xtldr modules and bootloader protocol 2022-09-17 00:14:09 +02:00
33ff15e1db Add EFI XT protocols GUIDs 2022-09-06 17:55:07 +02:00
41f1aee6e3 Implemented RtlCompareMemory() for better compatibility with NT and made use of it in RtlSameMemory(), implemented RtlFillMemory(), RtlMoveMemory(), RtlSetMemory() and RtlZeroMemory() as well 2022-09-06 17:51:44 +02:00
d56b10f252 Various fixes to the existing routines:
* Export RtlWideStringTokenize()
 * Allow to compare whole strings in RtlWideStringCompare() when no length specified
 * RtlSameMemory() returns boolean now
 * Source bytes can be constant value in RtlCopyMemory()
2022-09-05 15:17:12 +02:00
8a91412ec4 Export existing kernel routines 2022-09-01 22:05:35 +02:00
033447f759 Calling convention goes first 2022-09-01 22:04:07 +02:00
a7d07e7ecb Integrate xtklib with the kernel 2022-08-30 23:23:02 +02:00
6ef36cbd26 Add macros for defining signatures built from ASCII characters 2022-08-30 21:56:55 +02:00
94273292c5 Correct typo in README 2022-08-22 20:18:48 +02:00
f03b79ee2f Implement BlGetVolumeDevicePath() and BlpDissectVolumeArcPath() 2022-08-22 20:09:50 +02:00
6d135ce209 Define system-wide GUID structure 2022-08-22 18:31:04 +02:00
d9b60aaa11 Add missing IN/OUT modifiers to routine declarations 2022-08-22 18:24:15 +02:00
756763d8ca Discover and enumerate EFI block devices 2022-08-21 19:44:49 +02:00
510bd8dc99 Add missing comments 2022-08-21 17:28:14 +02:00
d369a5e163 Implement BlEfiMemoryAllocatePool() and BlEfiMemoryFreePool() 2022-08-21 17:05:05 +02:00
e61108d9b5 Implement RtlCopyMemory() and RtlSameMemory(), no inline functions in static library 2022-08-21 16:27:57 +02:00
18d5a6d794 Insert new lines in every debug message 2022-08-19 23:46:08 +02:00
8a23f6ba0e Unify capsule naming convensions and add EFI_BLOCK_DEVICE_DATA structure 2022-08-19 23:42:04 +02:00
a17c4f2435 Add VSCode workspace 2022-08-17 19:19:57 +02:00
14fafa2517 Implement RtlInsertHeadList() and RtlInsertTailList() 2022-08-16 19:01:23 +02:00
ba8b9684ff Coding style 2022-08-16 18:57:49 +02:00
73f4538a62 Boolean cannot be used in EFI, because specification says it is of UINT8 (UCHAR), while XT specifies BOOLEAN as enumerated type 2022-08-16 11:38:24 +02:00
ea2de4d5a1 Add missing forward reference and missing fields to the EFI_BLOCK_DEVICE structure 2022-08-15 19:24:47 +02:00
72a235fb27 Add ramdisk device path id 2022-08-15 19:17:19 +02:00
780038901e Add missing device path types and block device structure 2022-08-15 19:09:14 +02:00
31ae4c248b Correct the Javadoc style 2022-08-14 11:22:54 +02:00
c0b5e2271e Correct typo 2022-08-13 23:17:26 +02:00
f67bc808cc Basic support for double linked lists 2022-08-13 23:15:06 +02:00
96871fd042 Correct data types 2022-08-13 17:24:22 +02:00
a6d892bf08 Initialize console without error reporting and allow serial port configuration to be passed via EFI shell 2022-08-13 13:25:29 +02:00
35b3c59270 Update source structure table 2022-08-13 13:21:36 +02:00
3f372f19e3 Implement RtlWideStringCompare() and RtlWideStringTokenize() routines 2022-08-13 13:18:52 +02:00