home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The World of Computer Software
/
World_Of_Computer_Software-02-387-Vol-3of3.iso
/
t
/
twindv21.zip
/
GRACILIS.H
< prev
next >
Wrap
C/C++ Source or Header
|
1992-09-07
|
2KB
|
93 lines
/****************************************************************************
*
* COPYRIGHT 1990,91,92 BY GRACILIS INC.
*
* 623 Palace St.
* Aurora, Il. 60506
*
* (708)-801-8800 Office
* (708)-844-0183 (FAX - Support BBS)
*
* GRACILIS, INC., MAKES NO REPRESENTATIONS ABOUT THE SUITABILITY OF THIS
* SOFTWARE FOR ANY PURPOSE.
*
* THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY.
*
* Permission is granted for non-commercial use/distribution only, as long as
* this copyright header is included intact and unaltered.
*
******************************************************************************/
#ifndef GRACILIS
#define GRACILIS
#define OLD_KA9Q 1 /* for versions of nos up to and including 12/29/91 */
/* Commonly used data types for Gracilis drivers */
typedef unsigned short uint;
typedef unsigned long ulong;
typedef unsigned char bool;
typedef unsigned char uchar;
typedef unsigned char byte;
/* Gracilis Universal driver control block */
/* UNI_DCB's are declared as an array; each entry is initialized */
/* by an "attach" routine. */
typedef struct udcbblock {
unsigned char attached; /* TRUE then type TenPackSwitch hw is */
/* attached, FALSE it is not attached */
/* MUST BE INITIALIZED TO FALSE */
char type; /* ASYNC_8530, SYNC_8530, */
void (*prev_vec1)(); /* previous vectors, i.e. an address */
void (*prev_vec2)(); /* for the vector's ISR */
void (*prev_vec3)(); /* Allow for up to 4 vectors/channel */
void (*prev_vec4)();
char *dcbp; /* address of driver specific control block */
} UNI_DCB;
/*
* driver buffer block
*/
struct drvbuf {
struct drvbuf *next; /* pointer to next drvbuf in LL */
int16 msgsize; /* number of bytes in message */
char buf; /* 1st byte of message */
};
struct mbuf_qhat {
struct mbuf *headp;
struct mbuf *tailp;
};
/*
* driver timer control block
*/
struct drv_timer {
struct drv_timer *nxt_timer;
int16 ticks;
void (*thandler)();
unsigned long targ;
};
/* Gracilis specific ioctl parameters */
#define GRACILIS_PARM_BASE 50
#define PARAM_RXBUFS GRACILIS_PARM_BASE
#define PARAM_TXQMAX GRACILIS_PARM_BASE+1
#define MAX_AX25_HDR_LEN 72
/* Function definitions for gracilis.c */
extern struct mbuf *f_dequeavail();
extern void f_getavail();
#endif /* GRACILIS */