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.
 
 
 
 
 
 

92 lines
2.4 KiB

//-----------------------------------------------------------------------
//
// FILE: pc9010.h
//
// PC9010 Definitions File
//
// Revisions:
// 09-01-92 KJB First.
// 03-19-93 JAP Implemented condition build FAR and NEAR pointers
// 03-25-93 JAP Fixed up prototype typedef inconsistencies
// 05-06-93 KJB Added prototype for PC9010CheckAdapter
// 05-14-93 KJB Added CardParseCommandString for card specific
// standard string parsing across platforms.
// Changed CardCheckAdapter to accept an
// Initialization info from command line, ie
// force bi-directional ports, etc.
// All functions that used to take an PBASE_REGISTER
// parameter now take PWORKSPACE. CardCheckAdapter
// takes the both a PINIT and a PWORKSPACE parameters.
//
//-----------------------------------------------------------------------
//
// PC9010 Register Offsets
//
#define PC9010_CONFIG 0
#define PC9010_CONTROL 2
#define PC9010_FIFO_STATUS 3
#define PC9010_FIFO 4
#define PC9010_N5380 8
// size of fifo in bytes
#define PC9010_FIFO_SIZE 128
// Config Register for PC9010
#define CFR_VERSION 0xF0
#define CFR_SWITCH 0x0F
// Control Register for PC9010
#define CTR_CONFIG 0x80
#define CTR_SWSEL 0x40
#define CTR_IRQEN 0x20
#define CTR_DMAEN 0x10
#define CTR_FEN 0x8
#define CTR_FDIR 0x4
#define CTR_F16 0x2
#define CTR_FRST 0x1
// Fifo Status Register for PC9010
#define FSR_IRQ 0x80
#define FSR_DRQ 0x40
#define FSR_FHFUL 0x20
#define FSR_FHEMP 0x10
#define FSR_FLFUL 0x08
#define FSR_FLEMP 0x04
#define FSR_FFUL 0x02
#define FSR_FEMP 0x01
// constant JEDEC ID
#define PC9010_JEDEC_ID 0x8f
//
// Redefined routines
//
// Each PC9010 has a 5380 built in
#define N5380PortPut(g,reg,byte) \
PC9010PortPut(g,PC9010_N5380+reg,byte);
#define N5380PortGet(g,reg,byte) \
PC9010PortGet(g,PC9010_N5380+reg,byte);
//
// public functions
//
BOOLEAN PC9010CheckAdapter (PADAPTER_INFO g);
USHORT PC9010WriteBytesFast(PADAPTER_INFO g, PUCHAR pbytes,
ULONG len, PULONG pActualLen, UCHAR phase);
USHORT PC9010ReadBytesFast(PADAPTER_INFO g, PUCHAR pbytes,
ULONG len, PULONG pActualLen, UCHAR phase);
VOID PC9010EnableInterrupt(PADAPTER_INFO g);
VOID PC9010DisableInterrupt(PADAPTER_INFO g);
VOID PC9010ResetBus(PADAPTER_INFO g);