// // Uefi.h // cpp_tests // // Created by Jief on 12/10/2020. // Copyright © 2020 JF Knudsen. All rights reserved. // #ifndef Uefi_h #define Uefi_h #include #define IN #define OUT #ifndef TRUE #define TRUE true #endif #ifndef FALSE #define FALSE false #endif //#define VA_LIST va_list //#define VA_START va_start //#define VA_END va_end //#define VA_ARG va_arg //#define VA_COPY va_copy #define VOID void #define EFIAPI #define CONST const typedef UINTN RETURN_STATUS; typedef RETURN_STATUS EFI_STATUS; #define MAX_BIT 0x8000000000000000ULL #define ENCODE_ERROR(StatusCode) ((RETURN_STATUS)(MAX_BIT | (StatusCode))) #define RETURN_OUT_OF_RESOURCES ENCODE_ERROR (9) #define RETURN_SUCCESS 0 #define RETURN_LOAD_ERROR ENCODE_ERROR (1) #define RETURN_INVALID_PARAMETER ENCODE_ERROR (2) #define RETURN_UNSUPPORTED ENCODE_ERROR (3) #define RETURN_BAD_BUFFER_SIZE ENCODE_ERROR (4) #define RETURN_BUFFER_TOO_SMALL ENCODE_ERROR (5) #define RETURN_NOT_READY ENCODE_ERROR (6) #define RETURN_DEVICE_ERROR ENCODE_ERROR (7) #define RETURN_WRITE_PROTECTED ENCODE_ERROR (8) #define RETURN_OUT_OF_RESOURCES ENCODE_ERROR (9) #define RETURN_VOLUME_CORRUPTED ENCODE_ERROR (10) #define RETURN_VOLUME_FULL ENCODE_ERROR (11) #define RETURN_NO_MEDIA ENCODE_ERROR (12) #define RETURN_MEDIA_CHANGED ENCODE_ERROR (13) #define RETURN_NOT_FOUND ENCODE_ERROR (14) #define RETURN_ACCESS_DENIED ENCODE_ERROR (15) #define RETURN_NO_RESPONSE ENCODE_ERROR (16) #define RETURN_NO_MAPPING ENCODE_ERROR (17) #define RETURN_TIMEOUT ENCODE_ERROR (18) #define RETURN_NOT_STARTED ENCODE_ERROR (19) #define RETURN_ALREADY_STARTED ENCODE_ERROR (20) #define RETURN_ABORTED ENCODE_ERROR (21) #define RETURN_ICMP_ERROR ENCODE_ERROR (22) #define RETURN_TFTP_ERROR ENCODE_ERROR (23) #define RETURN_PROTOCOL_ERROR ENCODE_ERROR (24) #define RETURN_INCOMPATIBLE_VERSION ENCODE_ERROR (25) #define RETURN_SECURITY_VIOLATION ENCODE_ERROR (26) #define RETURN_CRC_ERROR ENCODE_ERROR (27) #define RETURN_END_OF_MEDIA ENCODE_ERROR (28) #define RETURN_END_OF_FILE ENCODE_ERROR (31) #define RETURN_WARN_UNKNOWN_GLYPH ENCODE_WARNING (1) #define RETURN_WARN_DELETE_FAILURE ENCODE_WARNING (2) #define RETURN_WARN_WRITE_FAILURE ENCODE_WARNING (3) #define RETURN_WARN_BUFFER_TOO_SMALL ENCODE_WARNING (4) // // Enumeration of EFI_STATUS. // #define EFI_SUCCESS RETURN_SUCCESS #define EFI_LOAD_ERROR RETURN_LOAD_ERROR #define EFI_INVALID_PARAMETER RETURN_INVALID_PARAMETER #define EFI_UNSUPPORTED RETURN_UNSUPPORTED #define EFI_BAD_BUFFER_SIZE RETURN_BAD_BUFFER_SIZE #define EFI_BUFFER_TOO_SMALL RETURN_BUFFER_TOO_SMALL #define EFI_NOT_READY RETURN_NOT_READY #define EFI_DEVICE_ERROR RETURN_DEVICE_ERROR #define EFI_WRITE_PROTECTED RETURN_WRITE_PROTECTED #define EFI_OUT_OF_RESOURCES RETURN_OUT_OF_RESOURCES #define EFI_VOLUME_CORRUPTED RETURN_VOLUME_CORRUPTED #define EFI_VOLUME_FULL RETURN_VOLUME_FULL #define EFI_NO_MEDIA RETURN_NO_MEDIA #define EFI_MEDIA_CHANGED RETURN_MEDIA_CHANGED #define EFI_NOT_FOUND RETURN_NOT_FOUND #define EFI_ACCESS_DENIED RETURN_ACCESS_DENIED #define EFI_NO_RESPONSE RETURN_NO_RESPONSE #define EFI_NO_MAPPING RETURN_NO_MAPPING #define EFI_TIMEOUT RETURN_TIMEOUT #define EFI_NOT_STARTED RETURN_NOT_STARTED #define EFI_ALREADY_STARTED RETURN_ALREADY_STARTED #define EFI_ABORTED RETURN_ABORTED #define EFI_ICMP_ERROR RETURN_ICMP_ERROR #define EFI_TFTP_ERROR RETURN_TFTP_ERROR #define EFI_PROTOCOL_ERROR RETURN_PROTOCOL_ERROR #define EFI_INCOMPATIBLE_VERSION RETURN_INCOMPATIBLE_VERSION #define EFI_SECURITY_VIOLATION RETURN_SECURITY_VIOLATION #define EFI_CRC_ERROR RETURN_CRC_ERROR #define EFI_END_OF_MEDIA RETURN_END_OF_MEDIA #define EFI_END_OF_FILE RETURN_END_OF_FILE #define EFI_WARN_UNKNOWN_GLYPH RETURN_WARN_UNKNOWN_GLYPH #define EFI_WARN_DELETE_FAILURE RETURN_WARN_DELETE_FAILURE #define EFI_WARN_WRITE_FAILURE RETURN_WARN_WRITE_FAILURE #define EFI_WARN_BUFFER_TOO_SMALL RETURN_WARN_BUFFER_TOO_SMALL #define RETURN_ERROR(StatusCode) (((INTN)(RETURN_STATUS)(StatusCode)) < 0) #define EFI_ERROR(A) RETURN_ERROR(A) #define OPTIONAL #define ASSERT(x) #ifdef _MSC_VER #define __typeof__(x) decltype(x) #endif #endif /* Uefi_h */