mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
146 lines
2.2 KiB
146 lines
2.2 KiB
/*++
|
|
|
|
Copyright (c) 1998 Intel Corporation
|
|
|
|
Module Name:
|
|
|
|
biboot.h
|
|
|
|
Abstract:
|
|
|
|
Public IBI header files
|
|
|
|
Author:
|
|
|
|
|
|
|
|
Revision History
|
|
|
|
--*/
|
|
|
|
|
|
#include "bootia64.h" // BUGBUG
|
|
|
|
// #define IBI32 1 // Building 32 bit IBI
|
|
#define IBI64 1 // Building 64 bit IBI
|
|
|
|
#include "ibi.h"
|
|
|
|
//
|
|
// Console functions
|
|
//
|
|
|
|
|
|
IBI_STATUS
|
|
BiOutputString (
|
|
VOID *Context,
|
|
CHAR16 *Str
|
|
);
|
|
|
|
IBI_STATUS
|
|
BiSetAttribute (
|
|
VOID *Context,
|
|
UINTN Attribute
|
|
);
|
|
|
|
IBI_STATUS
|
|
BiSetCursorPosition (
|
|
VOID *Context,
|
|
UINTN Column,
|
|
UINTN Row
|
|
);
|
|
|
|
VOID
|
|
BIASSERT (
|
|
IN char *str
|
|
);
|
|
|
|
//
|
|
// Arc functions
|
|
//
|
|
|
|
ARC_STATUS
|
|
BiArcNotImplemented (
|
|
IN ULONG No
|
|
);
|
|
|
|
|
|
ARC_STATUS
|
|
BiArcCloseNop (
|
|
IN ULONG FileId
|
|
);
|
|
|
|
|
|
IBI_STATUS
|
|
BiHandleToArcName (
|
|
IN IBI_HANDLE Handle,
|
|
OUT PUCHAR Buffer,
|
|
IN UINTN BufferSize
|
|
);
|
|
|
|
IBI_STATUS
|
|
BiArcNameToHandle (
|
|
IN PCHAR OpenPath,
|
|
OUT IBI_ARC_OPEN_CONTEXT *OpenContext,
|
|
OUT PBL_DEVICE_ENTRY_TABLE *ArcIo
|
|
);
|
|
|
|
|
|
//
|
|
// Allocate and free IBI pool (not loader pool)
|
|
//
|
|
|
|
PVOID
|
|
BiAllocatePool (
|
|
IN UINTN Size
|
|
);
|
|
|
|
|
|
VOID
|
|
BiFreePool (
|
|
IN PVOID Buffer
|
|
);
|
|
|
|
|
|
WCHAR *
|
|
BiDupAscizToUnicode (
|
|
PUCHAR Str
|
|
);
|
|
|
|
//
|
|
//
|
|
//
|
|
|
|
ARC_STATUS
|
|
BiArcCode (
|
|
IN IBI_STATUS Status
|
|
);
|
|
|
|
//
|
|
// Externals
|
|
//
|
|
|
|
extern IBI_SYSTEM_TABLE *IbiST;
|
|
extern IBI_BOOT_SERVICES *IbiBS;
|
|
extern IBI_RUNTIME_SERVICES *IbiRT;
|
|
extern IBI_LOADED_IMAGE *IbiImageInfo;
|
|
extern IBI_HANDLE IbiNtldr;
|
|
|
|
extern IBI_GUID IbiLoadedImageProtocol;
|
|
extern IBI_GUID IbiDevicePathProtocol;
|
|
extern IBI_GUID IbiBlockIoProtocol;
|
|
extern IBI_GUID IbiFilesystemProtocol;
|
|
extern IBI_GUID IbiDeviceIoProtocol;
|
|
|
|
extern IBI_GUID IbiFileInformation;
|
|
extern IBI_GUID IbiFileSystemInformation;
|
|
|
|
extern IBI_GUID VendorMicrosoft;
|
|
|
|
extern BL_DEVICE_ENTRY_TABLE BiArcConsoleOut;
|
|
extern BL_DEVICE_ENTRY_TABLE BiArcConsoleIn;
|
|
extern BL_DEVICE_ENTRY_TABLE BiArcBlockIo;
|
|
extern BL_DEVICE_ENTRY_TABLE BiArcFsDevIo;
|
|
extern PUCHAR BiClipBuffer;
|
|
extern UINTN BiClipBufferSize;
|
|
|