Annotation of researchv8dc/sys/h/termio.h, revision 1.1.1.1

1.1       root        1: #define        NCC     8
                      2: 
                      3: /* control characters */
                      4: #define        VINTR   0
                      5: #define        VQUIT   1
                      6: #define        VERASE  2
                      7: #define        VKILL   3
                      8: #define        VEOF    4
                      9: #define        VEOL    5
                     10: #define        VEOL2   6
                     11: #define        VMIN    4
                     12: #define        VTIME   5
                     13: 
                     14: #define        CNUL    0
                     15: #define        CDEL    0377
                     16: /* default control chars */
                     17: #define        CESC    '\\'
                     18: #define        CINTR   0177    /* DEL */
                     19: #define        CQUIT   034     /* FS, cntl | */
                     20: #define        CERASE  '#'
                     21: #define        CKILL   '@'
                     22: #define        CEOF    04      /* cntl d */
                     23: #define        CSTART  021     /* cntl q */
                     24: #define        CSTOP   023     /* cntl s */
                     25: 
                     26: 
                     27: /* input modes */
                     28: #define        IGNBRK  0000001
                     29: #define        BRKINT  0000002
                     30: #define        IGNPAR  0000004
                     31: #define        PARMRK  0000010
                     32: #define        INPCK   0000020
                     33: #define        ISTRIP  0000040
                     34: #define        INLCR   0000100
                     35: #define        IGNCR   0000200
                     36: #define        ICRNL   0000400
                     37: #define        IUCLC   0001000
                     38: #define        IXON    0002000
                     39: #define        IXANY   0004000
                     40: #define        IXOFF   0010000
                     41: 
                     42: /* output modes */
                     43: #define        OPOST   0000001
                     44: #define        OLCUC   0000002
                     45: #define        ONLCR   0000004
                     46: #define        OCRNL   0000010
                     47: #define        ONOCR   0000020
                     48: #define        ONLRET  0000040
                     49: #define        OFILL   0000100
                     50: #define        OFDEL   0000200
                     51: #define        NLDLY   0000400
                     52: #define        NL0     0
                     53: #define        NL1     0000400
                     54: #define        CRDLY   0003000
                     55: #define        CR0     0
                     56: #define        CR1     0001000
                     57: #define        CR2     0002000
                     58: #define        CR3     0003000
                     59: #define        TABDLY  0014000
                     60: #define        TAB0    0
                     61: #define        TAB1    0004000
                     62: #define        TAB2    0010000
                     63: #define        TAB3    0014000
                     64: #define        BSDLY   0020000
                     65: #define        BS0     0
                     66: #define        BS1     0020000
                     67: #define        VTDLY   0040000
                     68: #define        VT0     0
                     69: #define        VT1     0040000
                     70: #define        FFDLY   0100000
                     71: #define        FF0     0
                     72: #define        FF1     0100000
                     73: 
                     74: /* control modes */
                     75: #define        CBAUD   0000017
                     76: #define        B0      0
                     77: #define        B50     0000001
                     78: #define        B75     0000002
                     79: #define        B110    0000003
                     80: #define        B134    0000004
                     81: #define        B150    0000005
                     82: #define        B200    0000006
                     83: #define        B300    0000007
                     84: #define        B600    0000010
                     85: #define        B1200   0000011
                     86: #define        B1800   0000012
                     87: #define        B2400   0000013
                     88: #define        B4800   0000014
                     89: #define        B9600   0000015
                     90: #define        EXTA    0000016
                     91: #define        EXTB    0000017
                     92: #define        CSIZE   0000060
                     93: #define        CS5     0
                     94: #define        CS6     0000020
                     95: #define        CS7     0000040
                     96: #define        CS8     0000060
                     97: #define        CSTOPB  0000100
                     98: #define        CREAD   0000200
                     99: #define        PARENB  0000400
                    100: #define        PARODD  0001000
                    101: #define        HUPCL   0002000
                    102: #define        CLOCAL  0004000
                    103: 
                    104: /* line discipline 0 modes */
                    105: #define        ISIG    0000001
                    106: #define        ICANON  0000002
                    107: #define        XCASE   0000004
                    108: #define        ECHO    0000010
                    109: #define        ECHOE   0000020
                    110: #define        ECHOK   0000040
                    111: #define        ECHONL  0000100
                    112: #define        NOFLSH  0000200
                    113: 
                    114: #define        SSPEED  7       /* default speed: 300 baud */
                    115: 
                    116: /*
                    117:  * Ioctl control packet
                    118:  */
                    119: struct termio {
                    120:        unsigned short  c_iflag;        /* input modes */
                    121:        unsigned short  c_oflag;        /* output modes */
                    122:        unsigned short  c_cflag;        /* control modes */
                    123:        unsigned short  c_lflag;        /* line discipline modes */
                    124:        char    c_line;         /* line discipline */
                    125:        unsigned char   c_cc[NCC];      /* control chars */
                    126: };
                    127: #define        IOCTYPE 0xff00
                    128: 
                    129: #define        TIOC    ('T'<<8)
                    130: #define        TCGETA  (TIOC|1)
                    131: #define        TCSETA  (TIOC|2)
                    132: #define        TCSETAW (TIOC|3)
                    133: #define        TCSETAF (TIOC|4)
                    134: #define        TCSBRK  (TIOC|5)
                    135: #define        TCXONC  (TIOC|6)
                    136: #define        TCFLSH  (TIOC|7)
                    137: #define        TCDSET  (TIOC|32)
                    138: 
                    139: #define        LDIOC   ('D'<<8)
                    140: #define        LDOPEN  (LDIOC|0)
                    141: #define        LDCLOSE (LDIOC|1)
                    142: #define        LDCHG   (LDIOC|2)
                    143: #define        LDGETT  (LDIOC|8)
                    144: #define        LDSETT  (LDIOC|9)
                    145: 
                    146: /*
                    147:  * Terminal types
                    148:  */
                    149: #define        TERM_NONE       0       /* tty */
                    150: #define        TERM_TEC        1       /* TEC Scope */
                    151: #define        TERM_V61        2       /* DEC VT61 */
                    152: #define        TERM_V10        3       /* DEC VT100 */
                    153: #define        TERM_TEX        4       /* Tektronix 4023 */
                    154: #define        TERM_D40        5       /* TTY Mod 40/1 */
                    155: #define        TERM_H45        6       /* Hewlitt-Packard 45 */
                    156: #define        TERM_D42        7       /* TTY Mod 40/2B */
                    157: 
                    158: /*
                    159:  * Terminal flags
                    160:  */
                    161: #define TM_NONE                0000    /* use default flags */
                    162: #define TM_SNL         0001    /* special newline flag */
                    163: #define TM_ANL         0002    /* auto newline on column 80 */
                    164: #define TM_LCF         0004    /* last col of last row special */
                    165: #define TM_CECHO       0010    /* echo terminal cursor control */
                    166: #define TM_CINVIS      0020    /* do not send esc seq to user */
                    167: #define TM_SET         0200    /* must be on to set/res flags */
                    168: 
                    169: /*
                    170:  * structure of ioctl arg for LDGETT and LDSETT
                    171:  */
                    172: struct termcb  {
                    173:        char    st_flgs;        /* term flags */
                    174:        char    st_termt;       /* term type */
                    175:        char    st_crow;        /* gtty only - current row */
                    176:        char    st_ccol;        /* gtty only - current col */
                    177:        char    st_vrow;        /* variable row */
                    178:        char    st_lrow;        /* last row */
                    179: };

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.