Annotation of researchv9/cmd/emacs/emacs_io.h, revision 1.1

1.1     ! root        1: 
        !             2: /* EMACS_MODES: c !fill */
        !             3: 
        !             4: #ifdef OWNER
        !             5: #define EXTERN
        !             6: #else
        !             7: #define EXTERN extern
        !             8: #endif
        !             9: 
        !            10: #ifdef pdp11
        !            11: #define BUFSIZ  512
        !            12: #else
        !            13: #define BUFSIZ 1024
        !            14: #endif
        !            15: extern  struct  iobuf {
        !            16:         int     _cnt;
        !            17:         char    *_ptr;
        !            18:         int     _frn;
        !            19:         int     _flags;
        !            20:         char    _buf[BUFSIZ];
        !            21: };
        !            22: 
        !            23: /* values for _flags */
        !            24: 
        !            25: #define _OUTPUT 01
        !            26: #define _INPUT 02
        !            27: #define _DEAD 04
        !            28: #define _ERROR 010
        !            29: 
        !            30: #ifdef v8
        !            31: #undef NULL
        !            32: #endif
        !            33: #define NULL    0
        !            34: #define FILE    struct iobuf
        !            35: #define EOF     (-1)
        !            36: 
        !            37: EXTERN int donttime;
        !            38: EXTERN struct iobuf _stdout;
        !            39: EXTERN int no_io;                      /* Flag to force off I/O */
        !            40: 
        !            41: EXTERN int outproc;                    /* Process to send output to */
        !            42: EXTERN int inproc;                     /* Process to receive input from */
        !            43: EXTERN int procbuf;                    /* Buffer coupled to this. */
        !            44: EXTERN int procpid;
        !            45: 
        !            46: /* input buffer */
        !            47: 
        !            48: #define INLOOK 1
        !            49: 
        !            50: 
        !            51: EXTERN char *inbuf;
        !            52: EXTERN char *inptr;
        !            53: EXTERN int incnt;
        !            54: EXTERN int infrn;
        !            55: EXTERN int inlev;
        !            56: 
        !            57: /* INPUT BUFFER STACK */
        !            58: 
        !            59: #define NINP 32                         /* levels of calls */
        !            60: EXTERN char _inbuf[NINP] [INLOOK];
        !            61: EXTERN int _incnt[NINP];
        !            62: EXTERN char *_inptr[NINP];
        !            63: EXTERN int _infrn[NINP];
        !            64: 
        !            65: #define stdout  (&_stdout)
        !            66: #define putc(x,p)       p->_buf[p->_cnt++] = (unsigned)(x);if (p->_cnt>=BUFSIZ) mflush(p)
        !            67: #define putchar(x)      putc(x,stdout)
        !            68: #define getc(p)         ((--((p)->_cnt)>=0)? *((p)->_ptr++)&0377:filbuf(p))
        !            69: #define MOREIN  (incnt)
        !            70: #define Mgetchar(x) ((*inptr++) &0377)
        !            71: /* function definitions */
        !            72: 
        !            73: EXTERN FILE *xopen();
        !            74: EXTERN FILE *fdopen();
        !            75: EXTERN int filbuf();

unix.superglobalmegacorp.com

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