55 lines
2.2 KiB
C
55 lines
2.2 KiB
C
//
|
|
// Filename : nt_com.h
|
|
// Contains : function and structure definitions used external to nt_com.c
|
|
// Author : D.A.Bartlett
|
|
//
|
|
|
|
/*::::::::::::::::::::::::::: Functions called from which thread identifiers */
|
|
|
|
#define RX /* Called from RX input thread only */
|
|
#define CPU /* Called from the CPU thread only */
|
|
#define RXCPU /* Called from the RX and CPU thread */
|
|
|
|
/*::::::::::::::::::::::::::::: Function protocols used by other host modules */
|
|
|
|
|
|
IMPORT void CPU host_com_heart_beat IPT0();
|
|
IMPORT void host_com_state IPT1(int, adapter);
|
|
IMPORT CPU void host_com_close_all IPT0();
|
|
IMPORT void host_com_disable_open IPT2(int, adapter, int, DisableOpen);
|
|
|
|
|
|
// from nt_ntfun.c
|
|
IMPORT void *AddNewIOStatusBlockToList(void **firstBlock,void **lastBlock,void *new);
|
|
IMPORT int RemoveCompletedIOCTLs(void **firstBlock, void **lastBlock);
|
|
IMPORT void *AllocStatusElement(void);
|
|
IMPORT int SendXOFFIoctl(HANDLE FileHandle,HANDLE Event,int Timeout,int Count,
|
|
int XoffChar, void *StatusElem);
|
|
IMPORT BOOL EnableMSRLSRRXmode(HANDLE FileHandle, HANDLE Event,
|
|
unsigned char EscapeChar);
|
|
IMPORT int FastSetCommMask(HANDLE FileHandle, HANDLE Event, ULONG CommMask);
|
|
IMPORT int FastGetCommModemStatus(HANDLE FileHandle,HANDLE Event,PULONG ModemStatus);
|
|
IMPORT BOOL FastWaitCommsOrCpuEvent(HANDLE FileHandle,PHANDLE CommsCPUWaitEvents,
|
|
int CommsEventInx, PULONG EvtMask,
|
|
PULONG Signalled);
|
|
|
|
|
|
// from nt_wcom.c
|
|
|
|
typedef HANDLE (*GCHfn)(WORD);
|
|
typedef BYTE (*GCSfn)(WORD);
|
|
extern HANDLE (*GetCommHandle)(WORD);
|
|
extern BYTE (*GetCommShadowMSR)(WORD);
|
|
#ifdef _RS232_H
|
|
IMPORT BOOL SyncLineSettings(HANDLE FileHandle, DCB *pdcb,
|
|
DIVISOR_LATCH *divisor_latch, LINE_CONTROL_REG *LCR_reg);
|
|
#endif
|
|
|
|
extern BOOL FastCommSetBaudRate(HANDLE FileHandle, int BaudRate);
|
|
extern BOOL FastCommSetLineControl(HANDLE FileHandle, UCHAR StopBits,
|
|
UCHAR Parity, UCHAR DataBits);
|
|
extern BOOL FastCommGetLineControl(HANDLE FileHandle, UCHAR *StopBits,
|
|
UCHAR *Parity, UCHAR *DataBits);
|
|
extern void com_int_data(int adapter, int *controller, int *line);
|
|
extern void setup_RTSDTR(int adapter);
|