/*++ Copyright (c) 1990 Microsoft Corporation Module Name: d3dzport.h Abstract: This include file defines the interface between the DECstation 5000 DZ port driver and its client class drivers. Author: David N. Cutler (davec) 15-Aug-1990 Environment: Kernel mode Revision History: --*/ #ifndef _DZPORT #define _DZPORT // // Define DZ port internal I/O control functions. // #define IOCTL_MN_DZPORT_CONNECT 0 // connect line #define IOCTL_MN_DZPORT_DISCONNECT 4 // disconnect line // // Define client procedure types for interrupt routines. // typedef VOID (*PDZPORT_INPUT_SERVICE) ( IN PVOID ClientContext, IN UCHAR InputByte ); typedef BOOLEAN (*PDZPORT_OUTPUT_SERVICE) ( IN PVOID ClientContext ); // // Define port procedure types for service routines. // typedef VOID (*PDZPORT_DISABLE_LINE) ( IN PVOID PortContext ); typedef VOID (*PDZPORT_ENABLE_LINE) ( IN PVOID PortContext ); typedef VOID (*PDZPORT_ENABLE_TRANSMIT) ( IN PVOID PortContext ); typedef VOID (*PDZPORT_OUTPUT_BYTE) ( IN PVOID PortContext, IN UCHAR OutputByte ); typedef BOOLEAN (*PDZPORT_SET_LINE_PARAMETERS) ( IN PVOID PortContext, IN ULONG BaudRate, IN ULONG CharacterLength, IN ULONG StopBits, IN ULONG Polarity, IN BOOLEAN ParityEnable ); // // Define I/O request message formats. // typedef struct _DZPORT_ACCEPT { PVOID PortContext; PDZPORT_ENABLE_LINE EnableLine; PDZPORT_DISABLE_LINE DisableLine; PDZPORT_ENABLE_TRANSMIT EnableTransmit; PDZPORT_OUTPUT_BYTE OutputByte; PDZPORT_SET_LINE_PARAMETERS SetLineParameters; PKINTERRUPT Interrupt; } DZPORT_ACCEPT, *PDZPORT_ACCEPT; typedef struct _DZPORT_CONNECT { PVOID ClientContext; PDZPORT_INPUT_SERVICE InputService; PDZPORT_OUTPUT_SERVICE OutputService; ULONG LineNumber; ULONG BaudRate; ULONG CharacterLength; ULONG StopBits; ULONG Polarity; BOOLEAN ParityEnable; } DZPORT_CONNECT, *PDZPORT_CONNECT; typedef struct _DZPORT_DISCONNECT { ULONG LineNumber; } DZPORT_DISCONNECT, *PDZPORT_DISCONNECT; #endif // _DZPORT