#include #include #include #include #include #define WORD unsigned int #define DWORD unsigned long #define UCHAR unsigned char #define NoError 0 #define DriverHandleError 1 #define DriverCallError 2 #define FindBoardError 3 #define TimeOut 4 #define ExceedBoardNumber 5 #define NotFoundBoard 6 #define MAX_BOARD_NUMBER 16 float P1002_FloatSub2(float fA, float fB); short P1002_ShortSub2(short nA, short nB); WORD P1002_DriverInit(WORD *wBoards); WORD P1002_DriverClose(void); WORD P1002_GetDriverVersion(WORD *wDriverVersion); WORD P1002_GetConfigAddressSpace(WORD wBoardNo, WORD *wBaseAddr, WORD *wIrq , WORD *wPLX); WORD GetAddress(void); void WriteAddress(UCHAR bBus, UCHAR bDevice, UCHAR bFunction, UCHAR bWhichLong); void _outpd(WORD port,DWORD data); DWORD _inpd(WORD port); WORD wBaseAddr=0; WORD wConfigSpace[MAX_BOARD_NUMBER][4]; WORD wTotalBoards=0; WORD wActiveBoardNo=0xffff; WORD wGetAddress=0;