OpenCore  1.0.4
OpenCore Bootloader
1.0.4
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
OcLegacyThunkLib.h
Go to the documentation of this file.
1
9#ifndef OC_LEGACY_THUNK_LIB_H
10#define OC_LEGACY_THUNK_LIB_H
11
12#include <Protocol/Legacy8259.h>
13
14//
15// Legacy region base is 0x0C0000.
16//
17#define LEGACY_REGION_BASE 0x0C0000
18#define LEGACY_REGION_SIZE 0x10000
19
20#define EFI_SEGMENT(_Adr) (UINT16) ((UINT16) (((UINTN) (_Adr)) >> 4) & 0xf000)
21#define EFI_OFFSET(_Adr) (UINT16) (((UINT16) ((UINTN) (_Adr))) & 0xffff)
22
28EFI_STATUS
30 IN OUT THUNK_CONTEXT *ThunkContext
31 );
32
43EFI_STATUS
45 IN EFI_LEGACY_8259_PROTOCOL *Legacy8259
46 );
47
51VOID
53 VOID
54 );
55
70BOOLEAN
71EFIAPI
73 IN THUNK_CONTEXT *ThunkContext,
74 IN EFI_LEGACY_8259_PROTOCOL *Legacy8259,
75 IN UINT8 BiosInt,
76 IN IA32_REGISTER_SET *Regs
77 );
78
79BOOLEAN
80EFIAPI
82 IN THUNK_CONTEXT *ThunkContext,
83 IN EFI_LEGACY_8259_PROTOCOL *Legacy8259,
84 IN UINT16 Segment,
85 IN UINT16 Offset,
86 IN IA32_REGISTER_SET *Regs,
87 IN VOID *Stack,
88 IN UINTN StackSize
89 );
90
91#endif // OC_LEGACY_THUNK_LIB_H
EFI_STATUS OcLegacyThunkInitializeInterruptRedirection(IN EFI_LEGACY_8259_PROTOCOL *Legacy8259)
BOOLEAN EFIAPI OcLegacyThunkFarCall86(IN THUNK_CONTEXT *ThunkContext, IN EFI_LEGACY_8259_PROTOCOL *Legacy8259, IN UINT16 Segment, IN UINT16 Offset, IN IA32_REGISTER_SET *Regs, IN VOID *Stack, IN UINTN StackSize)
EFI_STATUS OcLegacyThunkInitializeBiosIntCaller(IN OUT THUNK_CONTEXT *ThunkContext)
BOOLEAN EFIAPI OcLegacyThunkBiosInt86(IN THUNK_CONTEXT *ThunkContext, IN EFI_LEGACY_8259_PROTOCOL *Legacy8259, IN UINT8 BiosInt, IN IA32_REGISTER_SET *Regs)
VOID OcLegacyThunkDisconnectEfiGraphics(VOID)