Windows NT 4.0 source code leak
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.
 
 
 
 
 
 

135 lines
1.8 KiB

/*++
Copyright (c) 1991 Microsoft Corporation
Module Name:
firmware.h
Abstract:
This module is the header file that describes the Jazz ARC compliant
firmware.
Author:
David N. Cutler (davec) 18-May-1991
Revision History:
--*/
#ifndef _FIRMWARE_
#define _FIRMWARE_
//
// Define size of memory allocation table.
//
#define FW_MEMORY_TABLE_SIZE 10
//
// Define COFF image type expected.
//
#define IMAGE_TYPE_R3000 0x162
#define IMAGE_TYPE_R4000 0x166
//
// Define memory allocation structure.
//
typedef struct _FW_MEMORY_DESCRIPTOR {
LIST_ENTRY ListEntry;
MEMORY_DESCRIPTOR MemoryEntry;
} FW_MEMORY_DESCRIPTOR, *PFW_MEMORY_DESCRIPTOR;
//
// Define console output driver prototypes.
//
NTSTATUS
ConsoleOutBootInitialize (
);
NTSTATUS
ConsoleOutBootOpen (
IN ULONG FileId
);
//
// Define floppy driver prototypes.
//
NTSTATUS
FloppyBootInitialize (
);
NTSTATUS
FloppyBootOpen (
IN ULONG FileId
);
//
// Define hard disk driver procedure prototypes.
//
NTSTATUS
HardDiskBootInitialize (
#if defined(DECSTATION)
IN UCHAR DeviceUnit
#endif
);
NTSTATUS
HardDiskBootOpen (
IN ULONG FileId
);
//
// Define firmware routine prototypes.
//
VOID
FwConfigurationInitialize (
VOID
);
VOID
FwGenerateDescriptor (
IN PFW_MEMORY_DESCRIPTOR MemoryDescriptor,
IN MEMORY_TYPE MemoryType,
IN ULONG BasePage,
IN ULONG PageCount
);
VOID
FwInitialize (
IN ULONG MemorySize
);
VOID
FwIoInitialize (
VOID
);
ARC_STATUS
FwLoadImage(
IN PCHAR LoadFile,
OUT PVOID *TransferRoutine
);
VOID
FwMemoryInitialize (
IN ULONG MemorySize
);
//
// Define memory listhead, allocation entries, and free index.
//
extern ULONG FwMemoryFree;
extern LIST_ENTRY FwMemoryListHead;
extern FW_MEMORY_DESCRIPTOR FwMemoryTable[FW_MEMORY_TABLE_SIZE];
#endif // _FIRMWARE_