diff options
| author | andromeda <andromeda@bsd.my.domain> | 2026-10-19 18:54:26 -0400 |
|---|---|---|
| committer | andromeda <andromeda@bsd.my.domain> | 2026-10-19 18:54:26 -0400 |
| commit | aa113b17449e67dbd808587b411aeb21ea869974 (patch) | |
| tree | b6b7f1b71d761cbc043d5e97f72345d428c140ac /lib/uefi.c3l/uefi/guid.c3i | |
| parent | 97d331175ae47aec3d0b990ada9754a9e4298e32 (diff) | |
minimal running stub
Diffstat (limited to 'lib/uefi.c3l/uefi/guid.c3i')
| -rw-r--r-- | lib/uefi.c3l/uefi/guid.c3i | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/uefi.c3l/uefi/guid.c3i b/lib/uefi.c3l/uefi/guid.c3i new file mode 100644 index 0000000..928d6e1 --- /dev/null +++ b/lib/uefi.c3l/uefi/guid.c3i @@ -0,0 +1,29 @@ +module uefi; + +struct EfiGuid @packed { + uint data1; + ushort data2; + ushort data3; + char[8] data4; +} + +module uefi::guid; + +const EfiGuid SIMPLE_TEXT_INPUT_PROTOCOL = { 0x387477c1, 0x69c7, 0x11d2, {0x8e,0x39,0x00,0xa0,0xc9,0x69,0x72,0x3b} }; +const EfiGuid SIMPLE_TEXT_INPUT_EX_PROTOCOL = { 0xdd9e7534, 0x7762, 0x4698, {0x8c,0x14,0xf5,0x85,0x17,0xa6,0x25,0xaa} }; +const EfiGuid SIMPLE_TEXT_OUTPUT_PROTOCOL = { 0x387477c2, 0x69c7, 0x11d2, {0x8e,0x39,0x00,0xa0,0xc9,0x69,0x72,0x3b} }; + +const EfiGuid LOADED_IMAGE_PROTOCOL = {0x5b1b31A1, 0x9562, 0x11d2, {0x8E,0x3F,0x00,0xA0,0xC9,0x69,0x72,0x3B} }; +const EfiGuid SIMPLE_FILE_SYSTEM_PROTOCOL = {0x0964e5b22, 0x6459, 0x11d2, {0x8e,0x39,0x00,0xa0,0xc9,0x69,0x72,0x3b} }; +const EfiGuid FILE_INFO = {0x09576e92, 0x6d3f, 0x11d2, {0x8e,0x39,0x00,0xa0,0xc9,0x69,0x72,0x3b} }; +const EfiGuid FILE_SYSTEM_INFO = {0x09576e93, 0x6d3f, 0x11d2, {0x8e,0x39,0x00,0xa0,0xc9,0x69,0x72,0x3b} }; + +// Configuration tables +const EfiGuid ACPI_20_TABLE = { 0x8868e871, 0xe4f1, 0x11d3, {0xbc,0x22,0x00,0x80,0xc7,0x3c,0x88,0x81} }; + +macro bool @compare(EfiGuid #a, EfiGuid #b) { + return #a.data1 == #b.data1 + && #a.data2 == #b.data2 + && #a.data3 == #b.data3 + && #a.data4 == #b.data4; +} |
