Category : UNIX Files
Archive   : UUPC11YS.ZIP
Filename : COMM.H

 
Output of file : COMM.H contained in archive : UUPC11YS.ZIP
/*
** declarations for comm.asm
**
** compilation must use the Ze switch to enable the
** "far" keyword for the small memory model
**
** Robin Rohlicek 3/86
** [email protected] 5/88 (more prototypes and com_errors fix)
*/

void far select_port(int); /* select active port (1 or 2) */

void far save_com(void); /* save the interupt vectors */

void far restore_com(void); /* restore those vectors */

int far install_com(void); /* install our vectors */

void far open_com( /* open com port */
int, /* baud */
int, /* 'M'odem or 'D'irect */
int, /* Parity 'N'one, 'O'dd, 'E'ven, 'S'pace, 'M'ark */
int, /* stop bits (1 or 2) */
int); /* Xon/Xoff 'E'nable, 'D'isable */

void far ioctl_com( int flags, int operand, ...);

void far close_com(void); /* close com port */

void far dtr_off(void); /* clear DTR */

void far dtr_on(void); /* set DTR */

long far r_count(void); /* receive counts */
/* high word = total size of receive buffer */
/* low word = number of pending chars */
#define r_count_size() ((int)(r_count() >> 16))
#define r_count_pending() ((int)r_count())

int far receive_com(void); /* get one character */
/* return -1 if none available */

long far s_count(void); /* send counts */
/* high word = total size of transmit buffer */
/* low word = number of bytes free in transmit buffer */
#define s_count_size() ((int)(s_count() >> 16))
#define s_count_free() ((int)s_count())

void far send_com(int); /* send a character */

void far send_local(int); /* simulate receive of char */

void far sendi_com(int); /* send immediately */


void far break_com(void); /* send a BREAK */

int far * far com_errors(void); /* return far pointer to error counts
(in static area) */
#define COM_EOVFLOW 0 /* buffer overflows */
#define COM_EOVRUN 1 /* receive overruns */
#define COM_EBREAK 2 /* break chars */
#define COM_EFRAME 3 /* framing errors */
#define COM_EPARITY 4 /* parity errors */
#define COM_EXMIT 5 /* transmit erros */
#define COM_EDSR 6 /* data set ready errors */
#define COM_ECTS 7 /* clear to send errors */


/*--------------------------------------------------------------------*/
/* Macros based on modem status */
/*--------------------------------------------------------------------*/

int far modem_status( void ); /* Return current modem status */

#define is_dsr_high() ( modem_status() & MDM_DSR )
#define is_cts_high() ( modem_status() & MDM_DSR )
#define is_cd_high() ( modem_status() & MDM_CD )

/*--------------------------------------------------------------------*/
/* Bits returned by modem status */
/*--------------------------------------------------------------------*/

#define MDM_CD 0x80 /* CD (Carrier Detect) */
#define MDM_RI 0x40 /* RI (Ring Indicator) */
#define MDM_DSR 0x20 /* DSR (Data Set Ready) */
#define MDM_CTS 0x10 /* CTS (Clear to Send) */
#define MDM_CDC 0x08 /* Delta Carrier Detect (CD changed) */
#define MDM_TRI 0x04 /* Trailing edge of RI (RI went OFF) */
#define MDM_DSRC 0x02 /* Delta DSR (DSR changed) */
#define MDM_CTSC 0x01 /* Delta CTS (CTS changed) */


  3 Responses to “Category : UNIX Files
Archive   : UUPC11YS.ZIP
Filename : COMM.H

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/