THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+ @par Revision Reference:
+ These definitions are from Compatibility Support Module Spec
+ Version 0.97.
+
**/
#ifndef _FRAMEWORK_LEGACY_16_H_
///
/// Functions provided by the CSM binary which communicate between the EfiCompatibility \r
-/// and Compatability16 code.
-///
+/// and Compatability16 code.\r
+///\r
+/// Inconsistent with specification here: \r
+/// The member's name started with "Compatibility16" [defined in Intel Framework Compatibility Support Module Specification / 0.97 version] \r
+/// has been changed to "Legacy16" since keeping backward compatible.\r
+///\r
typedef enum {
///\r
/// Causes the Compatibility16 code to do any internal initialization required.\r
/// ES:BX = Pointer to EFI_TO_COMPATIBILITY16_INIT_TABLE\r
/// Return:\r
/// AX = Return Status codes\r
- ///
- Compatibility16InitializeYourself = 0x0000,
+ ///\r
+ Legacy16InitializeYourself = 0x0000,
\r
///\r
/// Causes the Compatibility16 BIOS to perform any drive number translations to match the boot sequence.\r
/// Return:\r
/// AX = Returned status codes\r
///
- Compatibility16UpdateBbs = 0x0001,
+ Legacy16UpdateBbs = 0x0001,
\r
///\r
/// Allows the Compatibility16 code to perform any final actions before booting. The Compatibility16\r
/// Return:\r
/// AX = Returned status codes\r
///
- Compatibility16PrepareToBoot = 0x0002,
+ Legacy16PrepareToBoot = 0x0002,
\r
///\r
/// Causes the Compatibility16 BIOS to boot. The Compatibility16 code is Read/Only.\r
/// Output:\r
/// AX = Returned status codes\r
///
- Compatibility16Boot = 0x0003,
+ Legacy16Boot = 0x0003,
\r
///\r
/// Allows the Compatibility16 code to get the last device from which a boot was attempted. This is\r
/// AX = Returned status codes\r
/// BX = Priority number of the boot device.\r
///
- Compatibility16RetrieveLastBootDevice= 0x0004,
+ Legacy16RetrieveLastBootDevice = 0x0004,
\r
///\r
/// Allows the Compatibility16 code rehook INT13, INT18, and/or INT19 after dispatching a legacy OpROM.\r
/// AX = Returned status codes\r
/// BX = Number of non-BBS-compliant devices found. Equals 0 if BBS compliant.\r
///
- Compatibility16DispatchOprom = 0x0005,
+ Legacy16DispatchOprom = 0x0005,
\r
///\r
/// Finds a free area in the 0xFxxxx or 0xExxxx region of the specified length and returns the address\r
/// AX = Returned status codes\r
/// DS:BX = Address of the region\r
///
- Compatibility16GetTableAddress = 0x0006,
+ Legacy16GetTableAddress = 0x0006,
\r
///\r
/// Enables the EfiCompatibility module to do any nonstandard processing of keyboard LEDs or state.\r
/// Output:\r
/// AX = Returned status codes\r
///
- Compatibility16SetKeyboardLeds = 0x0007,
+ Legacy16SetKeyboardLeds = 0x0007,
\r
///\r
/// Enables the EfiCompatibility module to install an interrupt handler for PCI mass media devices that\r
/// Output:\r
/// AX = Returned status codes\r
///
- Compatibility16InstallPciHandler = 0x0008
+ Legacy16InstallPciHandler = 0x0008
} EFI_COMPATIBILITY_FUNCTIONS;
///< increase this number, if BBS-compliant devices also hook INTs in order to force the
///< OpROM BIOS Setup to be executed.
VOID *BbsTablePointer; ///< Pointer to the BBS table.
- UINT16 OpromDestinationSegment; ///< The segment where the OpROM can be relocated to. If this value is 0x0000, this
- ///< means that the relocation of this run time code is not supported.
+ UINT16 RuntimeSegment; ///< The segment where the OpROM can be relocated to. If this value is 0x0000, this
+ ///< means that the relocation of this run time code is not supported.\r
+ ///< Inconsistent with specification here: \r
+ ///< The member's name "OpromDestinationSegment" [defined in Intel Framework Compatibility Support Module Specification / 0.97 version] \r
+ ///< has been changed to "RuntimeSegment" since keeping backward compatible.\r
+
} EFI_DISPATCH_OPROM_TABLE;
///