Annotation of 43BSD/contrib/cpm/src/cpmfio.h, revision 1.1

1.1     ! root        1: /*     cpmfio.h        1.5     83/05/13        */
        !             2: 
        !             3: #define C_NFILE                5       /* max number of concurrently open cp/m files */
        !             4: 
        !             5: typedef struct c_iobuf {
        !             6:        int     c_cnt;          /* bytes left in buffer */
        !             7:        int     c_blk;          /* block number within the current extent */
        !             8:                                /* (starting at 0) */
        !             9:        int     c_seccnt;       /* number of physical sectors left in */
        !            10:                                /* the current extent */
        !            11:        int     c_ext;          /* current extent's directory index */
        !            12:        int     c_extno;        /* extent number within current file */
        !            13:        char    *c_buf;         /* next character position */
        !            14:        char    *c_base;        /* location of buffer */
        !            15:        short   c_flag;         /* access mode (READ or WRITE) */
        !            16:        struct directory *c_dirp;       /* pointer to the current */
        !            17:                                        /* extent's directory entry */
        !            18: }      C_FILE;
        !            19: extern C_FILE  c_iob[C_NFILE];
        !            20: 
        !            21: #define c_getc(p)      (--(p)->c_cnt>=0 ? *(p)->c_buf++&0377 : c_fillbuf(p))
        !            22: #define c_putc(x,p)    (--(p)->c_cnt>=0 ? ((int)(*(p)->c_buf++=(unsigned)(x))) : c_flsbuf((unsigned)(x), p))
        !            23: 
        !            24: C_FILE *c_open(), *c_creat();
        !            25: 
        !            26: #define READ   0x01
        !            27: #define WRITE  0x02
        !            28: #define RW     0x03
        !            29: #define MODFLG 0x08
        !            30: #define BINARY 0x10

unix.superglobalmegacorp.com

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