home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1998 September / PCO_0998.ISO / filesbbs / dos / sbbs_src.exe / SBBS / RIO / RIODEFS.H next >
Encoding:
C/C++ Source or Header  |  1997-04-13  |  4.2 KB  |  103 lines

  1. /* RIODEFS.H */
  2.  
  3. /* Developed 1990-1997 by Rob Swindell; PO Box 501, Yorba Linda, CA 92885 */
  4.  
  5. #ifndef _RIODEFS_H
  6. #define _RIODEFS_H
  7.  
  8.  
  9. /************************/
  10. /* Remote I/O Constants */
  11. /************************/
  12.  
  13.                             /* i/o mode and state flags */
  14. #define CTSCK    0x1000        /*.check cts (mode only) */
  15. #define RTSCK    0x2000        /*.check rts (mode only) */
  16. #define TXBOF    0x0800        /*.transmit buffer overflow (outcom only) */
  17. #define ABORT    0x0400        /*.check for ^C (mode), aborting (state) */
  18. #define PAUSE    0x0200        /*.check for ^S (mode), pausing (state) */
  19. #define NOINP    0x0100        /*.input buffer empty (incom only) */
  20.  
  21.                             /* status flags */
  22. #define DCD     0x0080        /*.DCD on */
  23. #define RI        0x0040        /*.Ring indicate */
  24. #define DSR     0x0020        /*.Dataset ready */
  25. #define CTS     0x0010        /*.CTS on */
  26. #define FERR    0x0008        /*.Frameing error */
  27. #define PERR    0x0004        /*.Parity error */
  28. #define OVRR    0x0002        /*.Overrun */
  29. #define RXLOST    0x0001        /*.Receive buffer overflow */
  30.  
  31. /* rioctl() arguments */
  32. /* returns mode or state flags in high 8 bits, status flags in low 8 bits */
  33.  
  34.                             /* the following return mode in high 8 bits */
  35. #define IOMODE    0x0000        /*.no operation */
  36. #define IOSM    0x0001        /*.i/o set mode flags */
  37. #define IOCM    0x0002        /*.i/o clear mode flags */
  38.  
  39. #define GVERS    0x0007        /*.get version */
  40. #define GUART    0x0107        /*.get uart */
  41. #define GIRQN    0x0207        /*.get IRQ number */
  42. #define GBAUD    0x0307        /*.get baud */
  43.  
  44.                             /* the following return state in high 8 bits */
  45. #define IOSTATE 0x0004        /*.no operation */
  46. #define IOSS    0x0005        /*.i/o set state flags */
  47. #define IOCS    0x0006        /*.i/o clear state flags */
  48. #define IOFB    0x0308        /*.i/o buffer flush */
  49. #define IOFI    0x0208        /*.input buffer flush */
  50. #define IOFO    0x0108        /*.output buffer flush */
  51. #define IOCE    0x0009        /* i/o clear error flags */
  52.  
  53.  
  54.                             /* return count (16bit) */
  55. #define RXBC    0x000a        /*.get receive buffer count */
  56. #define RXBS    0x010a        /*.get receive buffer size */
  57. #define TXBC    0x000b        /*.get transmit buffer count */
  58. #define TXBS    0x010b        /*.get transmit buffer size */
  59. #define TXBF    0x020b        /*.get transmit buffer free space */
  60. #define TXSYNC    0x000c        /*.sync transmition (seconds<<8|0x0c) */
  61. #define IDLE    0x000d      /* suspend communication routines */
  62. #define RESUME  0x010d      /* return from suspended state */
  63. #define RLERC   0x000e      /* read line error count and clear */
  64. #define CPTON   0x0110      /* set input translation flag for ctrl-p on */
  65. #define CPTOFF  0x0010      /* set input translation flag for ctrl-p off */
  66. #define GETCPT  0x8010      /* return the status of ctrl-p translation */
  67. #define MSR     0x0011      /* read modem status register */
  68. #define FIFOCTL 0x0012        /*.FIFO UART control */
  69. #define TSTYPE  0x0013      /* Time-slice API type */
  70. #define GETTST  0x8013      /* Get Time-slice API type */
  71.  
  72. #define I14DB   0x001d      /* DigiBoard int 14h driver */
  73. #define I14PC   0x011d      /* PC int 14h driver */
  74. #define I14PS   0x021d      /* PS/2 int 14h driver */
  75. #define I14FO   0x031d      /* FOSSIL int 14h driver */
  76.  
  77. #define SMSMK   0x0014      /* set modem status mask */
  78. #define SMLCR   0x0015      /* set modem line control register */
  79. #define LFN81    0x0315        /*.set line format N81 */
  80. #define LFE71    0x1A15        /*.set line format E71 */
  81. #define SRXHL   0x001E      /* set receive flow control high limit */
  82. #define SRXLL   0x001F      /* set receive flow control low limit */
  83. #define IGCLS   0x0020      /* input gate close */
  84. #define IGOPN   0xFF20      /* input gate open */
  85.  
  86.  
  87.                             /* ivhctl() arguments */
  88. #define INT29R    0x0001        /* copy int 29h output to remote */
  89. #define INT29L    0x0002        /* Use _putlc for int 29h */
  90. #define INT16    0x0010        /* return remote chars to int 16h calls */
  91. #define INTCLR    0x0000        /* release int 16h, int 29h */
  92.  
  93. #define TS_INT28     1
  94. #define TS_WINOS2    2
  95. #define TS_NODV      4
  96.  
  97. #define RIO_OUTCOM_STKLEN    4096    /* outcom_thread() stack size    */
  98. #define RIO_OUTCOM_BUFLEN    4096    /* outcom() buffer length        */
  99. #define RIO_INCOM_BUFLEN    1024    /* incom() buffer length        */
  100.  
  101.  
  102. #endif    /* Don't add anything after this line */
  103.