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.
 
 
 
 
 
 

149 lines
4.0 KiB

/*++ BUILD Version: 0005 // Increment this if a change has global effects
Copyright (c) 1990 Microsoft Corporation
Module Name:
dtidef.h
Abstract:
This module is the header file that describes hardware addresses
for the Jazz system.
Author:
David N. Cutler (davec) 26-Nov-1990
Revision History:
--*/
#ifndef _DTIDEF_
#define _DTIDEF_
#include "uniflex.h"
#include "apoc.h"
#include "platform.h"
//
// Define the data structure returned by a private vector firmware function
// that contains a set of system parameters.
//
typedef struct PLATFORM_SPECIFIC_EXTENSION {
UCHAR PciInterruptToIsaIrq[12];
ULONG PciVideoExpansionRomAddress;
PVOID AdvancedSetupInfo;
} PLATFORM_SPECIFIC_EXTENSION;
typedef struct TREB13SETUPINFO {
ULONG Reserved1:16;
ULONG Drive0Type:4;
ULONG Drive1Type:4;
ULONG PciInterruptToIsaIrq0:4;
ULONG PciInterruptToIsaIrq8:4;
ULONG PciInterruptToIsaIrq1:4;
ULONG PciInterruptToIsaIrq9:4;
ULONG PciInterruptToIsaIrq2:4;
ULONG PciInterruptToIsaIrq10:4;
ULONG PciInterruptToIsaIrq3:4;
ULONG PciInterruptToIsaIrq11:4;
ULONG Lpt1Irq:8;
ULONG Lpt2Irq:8;
ULONG Lpt3Irq:8;
ULONG SerialMousePort:8;
ULONG EnableAmd1:1;
ULONG EnableAmd2:1;
ULONG EnableX86Emulator:1;
ULONG Reserved2:5;
ULONG LoadEmbeddedScsiDrivers:1;
ULONG Reserved3:7;
ULONG LoadSoftScsiDrivers:1;
ULONG LoadFlashScsiDrivers:1;
ULONG Reserved4:6;
ULONG EnableDelays:1;
ULONG Reserved5:7;
ULONG ResetDelay:8;
ULONG DetectDelay:8;
ULONG EnableIdeDriver:1;
ULONG Reserved6:7;
} TREB13SETUPINFO;
typedef struct TREB20SETUPINFO {
ULONG Isa0Drive0Type:4;
ULONG Isa0Drive1Type:4;
ULONG Isa1Drive0Type:4;
ULONG Isa1Drive1Type:4;
ULONG SerialMousePort:8;
ULONG Isa0Lpt1Irq:8;
ULONG Isa0Lpt2Irq:8;
ULONG Isa0Lpt3Irq:8;
ULONG Isa1Lpt1Irq:8;
ULONG Isa1Lpt2Irq:8;
ULONG Isa1Lpt3Irq:8;
ULONG EnableNcr:1;
ULONG EnableX86Emulator:1;
ULONG LoadEmbeddedScsiDrivers:1;
ULONG LoadSoftScsiDrivers:1;
ULONG LoadFlashScsiDrivers:1;
ULONG EnableDelays:1;
ULONG EnableIdeDriver:1;
ULONG Reserved1:1;
ULONG ResetDelay:8;
ULONG DetectDelay:8;
ULONG PciInterruptToIsaIrq0:4;
ULONG PciInterruptToIsaIrq1:4;
ULONG PciInterruptToIsaIrq2:4;
ULONG PciInterruptToIsaIrq3:4;
ULONG PciInterruptToIsaIrq4:4;
ULONG PciInterruptToIsaIrq5:4;
ULONG PciInterruptToIsaIrq6:4;
ULONG PciInterruptToIsaIrq7:4;
ULONG PciInterruptToIsaIrq8:4;
ULONG PciInterruptToIsaIrq9:4;
ULONG NcrTermLow:1;
ULONG NcrTermHigh:1;
ULONG Reserved2:6;
} TREB20SETUPINFO;
//
// Define the data structure used to describe all bus translations.
//
typedef struct PLATFORM_RANGE_LIST {
INTERFACE_TYPE InterfaceType;
ULONG BusNumber;
ADDRESS_SPACE_TYPE AddressType;
ULONG SystemAddressSpace;
LONGLONG SystemBase;
LONGLONG Base;
LONGLONG Limit;
} PLATFORM_RANGE_LIST, *PPLATFORM_RANGE_LIST;
//
// Define clock constants and clock levels.
//
#define UNIFLEX_CLOCK_LEVEL UNIFLEX_EISA_VECTORS+0 // Interval clock level is on ISA IRQ 0
#define UNIFLEX_ISA_DEVICE_LEVEL 5 // ISA bus interrupt level
#define UNIFLEX_EISA_DEVICE_LEVEL 5 // EISA bus interrupt level
#define UNIFLEX_PCI_DEVICE_LEVEL 5 // PCI bus interrupt level
#define UNIFLEX_CLOCK2_LEVEL UNIFLEX_CLOCK_LEVEL
//
// Define EISA device interrupt vectors.
//
#define UNIFLEX_ISA_VECTORS 48
#define UNIFLEX_MAXIMUM_ISA_VECTOR (15 + UNIFLEX_ISA_VECTORS)
#define UNIFLEX_EISA_VECTORS 48
#define UNIFLEX_MAXIMUM_EISA_VECTOR (15 + UNIFLEX_EISA_VECTORS)
#define UNIFLEX_ISA1_VECTORS 64
#define UNIFLEX_MAXIMUM_ISA1_VECTOR (15 + UNIFLEX_ISA1_VECTORS)
#define UNIFLEX_EISA1_VECTORS 64
#define UNIFLEX_MAXIMUM_EISA1_VECTOR (15 + UNIFLEX_EISA1_VECTORS)
#define UNIFLEX_PCI_VECTORS 100
#define UNIFLEX_MAXIMUM_PCI_VECTOR (15 + UNIFLEX_PCI_VECTORS)
#endif // _DTIDEF_