diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-01-31 14:41:48 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-01-31 14:41:48 +0100 |
| commit | eb2046d6cc73540f540b30e94bf4593ddf24100e (patch) | |
| tree | 914d18ef616590806855a3c43bc2d2e1f17a420f /Private/EFIKit | |
| parent | c660c54ef256688553e3face26a8f6b5fe8553a7 (diff) | |
- Update UEFI implementation of SimpleTextProtocol.
- Working on BFileReader.
- Working on Interrupts for AMD64.
- Refactor copyright remove year.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Private/EFIKit')
| -rw-r--r-- | Private/EFIKit/EFI.hxx | 25 | ||||
| -rw-r--r-- | Private/EFIKit/EFILib.hxx | 8 |
2 files changed, 20 insertions, 13 deletions
diff --git a/Private/EFIKit/EFI.hxx b/Private/EFIKit/EFI.hxx index febed042..af9c0de9 100644 --- a/Private/EFIKit/EFI.hxx +++ b/Private/EFIKit/EFI.hxx @@ -45,6 +45,11 @@ typedef WideChar EfiCharType; typedef UInt64 (*EfiTextString)(struct EfiSimpleTextOutputProtocol *This, const WideChar *OutputString); +typedef UInt64 (*EfiTextAttrib)(struct EfiSimpleTextOutputProtocol *This, + const WideChar Attribute); + +typedef UInt64 (*EfiTextClear)(struct EfiSimpleTextOutputProtocol *This); + typedef UInt64 (*EfiLoadFile)(EfiLoadFileProtocol *This, EfiDevicePathProtocol *FilePath, Boolean BootPolicy, UInt32 *BufferSize, @@ -364,16 +369,16 @@ typedef struct EfiBootServices { @brief PrintF like protocol. */ typedef struct EfiSimpleTextOutputProtocol { - UInt64 Reset; + VoidPtr Reset; EfiTextString OutputString; - UInt64 TestString; - UInt64 QueryMode; - UInt64 SetMode; - UInt64 SetAttribute; - UInt64 ClearScreen; - UInt64 SetCursorPosition; - UInt64 EnableCursor; - UInt64 Mode; + VoidPtr TestString; + VoidPtr QueryMode; + VoidPtr SetMode; + EfiTextAttrib SetAttribute; + EfiTextClear ClearScreen; + VoidPtr SetCursorPosition; + VoidPtr EnableCursor; + VoidPtr Mode; } EfiSimpleTextOutputProtocol; /** @@ -413,4 +418,6 @@ typedef struct EfiIPV6 { UInt8 Addr[16]; } EfiIPV6; +#define kEFIYellow 0x0E + #endif // __EFI__ diff --git a/Private/EFIKit/EFILib.hxx b/Private/EFIKit/EFILib.hxx index 147b4fe2..0d076b24 100644 --- a/Private/EFIKit/EFILib.hxx +++ b/Private/EFIKit/EFILib.hxx @@ -45,13 +45,13 @@ inline void KeInitEFI(EfiSystemTable* SystemTable) noexcept { BS = ST->BootServices; } -inline void KeRuntimeStop(const EfiCharType* File, +inline void KeRuntimeStop(const EfiCharType* ErrorCode, const EfiCharType* Reason) noexcept { ST->ConOut->OutputString(ST->ConOut, L"*** STOP ***\r\n"); - ST->ConOut->OutputString(ST->ConOut, L"*** File:"); - ST->ConOut->OutputString(ST->ConOut, File); - ST->ConOut->OutputString(ST->ConOut, L", Reason:"); + ST->ConOut->OutputString(ST->ConOut, L"*** ErrorCode: "); + ST->ConOut->OutputString(ST->ConOut, ErrorCode); + ST->ConOut->OutputString(ST->ConOut, L", Reason: "); ST->ConOut->OutputString(ST->ConOut, Reason); ST->ConOut->OutputString(ST->ConOut, L" ***\r\n"); |
