248 lines
3.2 KiB
C
248 lines
3.2 KiB
C
|
/*++
|
||
|
|
||
|
Copyright (c) Microsoft Corporation. All rights reserved.
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
inbv.h
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
This module contains the public header information (function prototypes,
|
||
|
data and type declarations) for the Initialization Boot Video component.
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Erick Smith (ericks) 23-Mar-1998
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
--*/
|
||
|
|
||
|
#ifndef _INBV_
|
||
|
#define _INBV_
|
||
|
|
||
|
typedef enum _INBV_DISPLAY_STATE
|
||
|
{
|
||
|
INBV_DISPLAY_STATE_OWNED, // we own the display
|
||
|
INBV_DISPLAY_STATE_DISABLED, // we own but should not use
|
||
|
INBV_DISPLAY_STATE_LOST // we lost ownership
|
||
|
} INBV_DISPLAY_STATE;
|
||
|
|
||
|
typedef
|
||
|
BOOLEAN
|
||
|
(*INBV_RESET_DISPLAY_PARAMETERS)(
|
||
|
ULONG Cols,
|
||
|
ULONG Rows
|
||
|
);
|
||
|
|
||
|
typedef
|
||
|
VOID
|
||
|
(*INBV_DISPLAY_STRING_FILTER)(
|
||
|
PUCHAR *Str
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvNotifyDisplayOwnershipLost(
|
||
|
INBV_RESET_DISPLAY_PARAMETERS ResetDisplayParameters
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvInstallDisplayStringFilter(
|
||
|
INBV_DISPLAY_STRING_FILTER DisplayStringFilter
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvAcquireDisplayOwnership(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
BOOLEAN
|
||
|
InbvDriverInitialize(
|
||
|
IN PLOADER_PARAMETER_BLOCK LoaderBlock,
|
||
|
IN ULONG Count
|
||
|
);
|
||
|
|
||
|
BOOLEAN
|
||
|
InbvResetDisplay(
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvBitBlt(
|
||
|
PUCHAR Buffer,
|
||
|
ULONG x,
|
||
|
ULONG y
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvSolidColorFill(
|
||
|
ULONG x1,
|
||
|
ULONG y1,
|
||
|
ULONG x2,
|
||
|
ULONG y2,
|
||
|
ULONG color
|
||
|
);
|
||
|
|
||
|
BOOLEAN
|
||
|
InbvDisplayString(
|
||
|
PUCHAR Str
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvUpdateProgressBar(
|
||
|
ULONG Percentage
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvSetProgressBarSubset(
|
||
|
ULONG Floor,
|
||
|
ULONG Ceiling
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvSetBootDriverBehavior(
|
||
|
PLOADER_PARAMETER_BLOCK LoaderBlock
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvIndicateProgress(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvSetProgressBarCoordinates(
|
||
|
ULONG x,
|
||
|
ULONG y
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvEnableBootDriver(
|
||
|
BOOLEAN bEnable
|
||
|
);
|
||
|
|
||
|
BOOLEAN
|
||
|
InbvEnableDisplayString(
|
||
|
BOOLEAN bEnable
|
||
|
);
|
||
|
|
||
|
BOOLEAN
|
||
|
InbvIsBootDriverInstalled(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
PUCHAR
|
||
|
InbvGetResourceAddress(
|
||
|
IN ULONG ResourceNumber
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvBufferToScreenBlt(
|
||
|
PUCHAR Buffer,
|
||
|
ULONG x,
|
||
|
ULONG y,
|
||
|
ULONG width,
|
||
|
ULONG height,
|
||
|
ULONG lDelta
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvScreenToBufferBlt(
|
||
|
PUCHAR Buffer,
|
||
|
ULONG x,
|
||
|
ULONG y,
|
||
|
ULONG width,
|
||
|
ULONG height,
|
||
|
ULONG lDelta
|
||
|
);
|
||
|
|
||
|
BOOLEAN
|
||
|
InbvTestLock(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvAcquireLock(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvReleaseLock(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
BOOLEAN
|
||
|
InbvCheckDisplayOwnership(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvSetScrollRegion(
|
||
|
ULONG x1,
|
||
|
ULONG y1,
|
||
|
ULONG x2,
|
||
|
ULONG y2
|
||
|
);
|
||
|
|
||
|
ULONG
|
||
|
InbvSetTextColor(
|
||
|
ULONG Color
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvSetDisplayOwnership(
|
||
|
BOOLEAN DisplayOwned
|
||
|
);
|
||
|
|
||
|
INBV_DISPLAY_STATE
|
||
|
InbvGetDisplayState(
|
||
|
VOID
|
||
|
);
|
||
|
|
||
|
//
|
||
|
// Functions defined in port.c
|
||
|
//
|
||
|
BOOLEAN
|
||
|
InbvPortInitialize(
|
||
|
IN ULONG BaudRate,
|
||
|
IN ULONG PortNumber,
|
||
|
IN PUCHAR PortAddress,
|
||
|
OUT PULONG BlFileId,
|
||
|
IN BOOLEAN IsMMIOAddress
|
||
|
);
|
||
|
|
||
|
BOOLEAN
|
||
|
InbvPortTerminate(
|
||
|
IN ULONG BlFileId
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvPortPutString (
|
||
|
IN ULONG BlFileId,
|
||
|
IN PUCHAR Output
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvPortPutByte (
|
||
|
IN ULONG BlFileId,
|
||
|
IN UCHAR Output
|
||
|
);
|
||
|
|
||
|
BOOLEAN
|
||
|
InbvPortPollOnly (
|
||
|
IN ULONG BlFileId
|
||
|
);
|
||
|
|
||
|
BOOLEAN
|
||
|
InbvPortGetByte (
|
||
|
IN ULONG BlFileId,
|
||
|
OUT PUCHAR Input
|
||
|
);
|
||
|
|
||
|
VOID
|
||
|
InbvPortEnableFifo(
|
||
|
IN ULONG DeviceId,
|
||
|
IN BOOLEAN bEnable
|
||
|
);
|
||
|
|
||
|
#endif
|