217 lines
3.3 KiB
C
217 lines
3.3 KiB
C
|
/**
|
|||
|
*** Copyright (C) 1996-97 Intel Corporation. All rights reserved.
|
|||
|
***
|
|||
|
*** The information and source code contained herein is the exclusive
|
|||
|
*** property of Intel Corporation and may not be disclosed, examined
|
|||
|
*** or reproduced in whole or in part without explicit written authorization
|
|||
|
*** from the company.
|
|||
|
**/
|
|||
|
|
|||
|
/*++
|
|||
|
|
|||
|
Copyright (c) 1991 Microsoft Corporation
|
|||
|
|
|||
|
Module Name:
|
|||
|
|
|||
|
biosdrv.h
|
|||
|
|
|||
|
Abstract:
|
|||
|
|
|||
|
This module defines globally used procedure and data structures used be
|
|||
|
the ARC emulation BIOS drivers.
|
|||
|
|
|||
|
Author:
|
|||
|
|
|||
|
John Vert (jvert) 8-Aug-1991
|
|||
|
|
|||
|
Revision History:
|
|||
|
|
|||
|
Allen Kay (akay) 26-Jan-1996 Ported for IA64
|
|||
|
|
|||
|
--*/
|
|||
|
|
|||
|
|
|||
|
//
|
|||
|
// Defines for the ARC name of console input and output
|
|||
|
//
|
|||
|
|
|||
|
#define CONSOLE_INPUT_NAME "multi(0)key(0)keyboard(0)"
|
|||
|
#define CONSOLE_OUTPUT_NAME "multi(0)video(0)monitor(0)"
|
|||
|
|
|||
|
//
|
|||
|
// Define special character values.
|
|||
|
//
|
|||
|
|
|||
|
#define ASCI_NUL 0x00
|
|||
|
#define ASCI_BEL 0x07
|
|||
|
#define ASCI_BS 0x08
|
|||
|
#define ASCI_HT 0x09
|
|||
|
#define ASCI_LF 0x0A
|
|||
|
#define ASCI_VT 0x0B
|
|||
|
#define ASCI_FF 0x0C
|
|||
|
#define ASCI_CR 0x0D
|
|||
|
#define ASCI_CSI 0x9B
|
|||
|
#define ASCI_ESC 0x1B
|
|||
|
#define ASCI_SYSRQ 0x80
|
|||
|
|
|||
|
//
|
|||
|
// Define special key input values
|
|||
|
//
|
|||
|
#define DOWN_ARROW 0x5000
|
|||
|
#define UP_ARROW 0x4800
|
|||
|
#define HOME_KEY 0x4700
|
|||
|
#define END_KEY 0x4F00
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//
|
|||
|
// Device I/O prototypes
|
|||
|
//
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosPartitionClose(
|
|||
|
IN ULONG FileId
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosPartitionOpen(
|
|||
|
IN PCHAR OpenPath,
|
|||
|
IN OPEN_MODE OpenMode,
|
|||
|
OUT PULONG FileId
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosPartitionRead (
|
|||
|
IN ULONG FileId,
|
|||
|
OUT PVOID Buffer,
|
|||
|
IN ULONG Length,
|
|||
|
OUT PULONG Count
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosPartitionWrite(
|
|||
|
IN ULONG FileId,
|
|||
|
OUT PVOID Buffer,
|
|||
|
IN ULONG Length,
|
|||
|
OUT PULONG Count
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosPartitionSeek (
|
|||
|
IN ULONG FileId,
|
|||
|
IN PLARGE_INTEGER Offset,
|
|||
|
IN SEEK_MODE SeekMode
|
|||
|
);
|
|||
|
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosDiskGetFileInfo(
|
|||
|
IN ULONG FileId,
|
|||
|
OUT PFILE_INFORMATION FileInfo
|
|||
|
);
|
|||
|
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosPartitionGetFileInfo(
|
|||
|
IN ULONG FileId,
|
|||
|
OUT PFILE_INFORMATION FileInfo
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BlArcNotYetImplemented(
|
|||
|
IN ULONG FileId
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosConsoleOpen(
|
|||
|
IN PCHAR OpenPath,
|
|||
|
IN OPEN_MODE OpenMode,
|
|||
|
OUT PULONG FileId
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosConsoleReadStatus(
|
|||
|
IN ULONG FileId
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosConsoleRead (
|
|||
|
IN ULONG FileId,
|
|||
|
OUT PUCHAR Buffer,
|
|||
|
IN ULONG Length,
|
|||
|
OUT PULONG Count
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosConsoleWrite (
|
|||
|
IN ULONG FileId,
|
|||
|
OUT PWCHAR Buffer,
|
|||
|
IN ULONG Length,
|
|||
|
OUT PULONG Count
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosDiskOpen(
|
|||
|
IN ULONG DriveId,
|
|||
|
IN OPEN_MODE OpenMode,
|
|||
|
OUT PULONG FileId
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosDiskRead (
|
|||
|
IN ULONG FileId,
|
|||
|
OUT PVOID Buffer,
|
|||
|
IN ULONG Length,
|
|||
|
OUT PULONG Count
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
BiosDiskWrite(
|
|||
|
IN ULONG FileId,
|
|||
|
OUT PVOID Buffer,
|
|||
|
IN ULONG Length,
|
|||
|
OUT PULONG Count
|
|||
|
);
|
|||
|
|
|||
|
ARC_STATUS
|
|||
|
HardDiskPartitionOpen(
|
|||
|
IN ULONG FileId,
|
|||
|
IN ULONG DiskId,
|
|||
|
IN UCHAR PartitionNumber
|
|||
|
);
|
|||
|
|
|||
|
ULONG
|
|||
|
GetDriveCount(
|
|||
|
VOID
|
|||
|
);
|
|||
|
|
|||
|
EFI_HANDLE
|
|||
|
GetCd(
|
|||
|
);
|
|||
|
|
|||
|
EFI_HANDLE
|
|||
|
GetHardDrive(
|
|||
|
ULONG DriveId
|
|||
|
);
|
|||
|
|
|||
|
EFI_HANDLE
|
|||
|
GetFloppyDrive(
|
|||
|
ULONG DriveId
|
|||
|
);
|
|||
|
|
|||
|
|
|||
|
//
|
|||
|
// constants for BlGetDriveId.DriveType
|
|||
|
//
|
|||
|
#define BL_DISKTYPE_ATAPI 0x00000001
|
|||
|
#define BL_DISKTYPE_SCSI 0x00000002
|
|||
|
#define BL_DISKTYPE_UNKNOWN 0x00000003
|
|||
|
|
|||
|
|
|||
|
ULONG
|
|||
|
BlGetDriveId(
|
|||
|
ULONG DriveType,
|
|||
|
PBOOT_DEVICE Device
|
|||
|
);
|
|||
|
|