Annotation of researchv8dc/libI77/iio.c, revision 1.1

1.1     ! root        1: /*     @(#)iio.c       1.2     */
        !             2: #include "fio.h"
        !             3: #include "fmt.h"
        !             4: extern char *icptr;
        !             5: char *icend;
        !             6: extern icilist *svic;
        !             7: extern int rd_ed(),rd_ned(),w_ed(),w_ned(),y_ierr();
        !             8: extern int z_wnew();
        !             9: int icnum;
        !            10: extern int hiwater;
        !            11: z_getc()
        !            12: {
        !            13:        if(icptr >= icend) err(svic->iciend,(EOF),"endfile");
        !            14:        if(recpos++ < svic->icirlen)
        !            15:                return(*icptr++);
        !            16:        else    err(svic->icierr,110,"recend");
        !            17: }
        !            18: z_putc(c)
        !            19: {
        !            20:        if(icptr >= icend) err(svic->icierr,110,"inwrite");
        !            21:        if(recpos++ < svic->icirlen)
        !            22:                *icptr++ = c;
        !            23:        else    err(svic->icierr,110,"recend");
        !            24:        return(0);
        !            25: }
        !            26: z_rnew()
        !            27: {
        !            28:        icptr = svic->iciunit + (++icnum)*svic->icirlen;
        !            29:        recpos = 0;
        !            30:        cursor = 0;
        !            31:        hiwater = 0;
        !            32: }
        !            33: s_rsfi(a) icilist *a;
        !            34: {      int n;
        !            35:        if(n=c_si(a)) return(n);
        !            36:        reading=1;
        !            37:        doed=rd_ed;
        !            38:        doned=rd_ned;
        !            39:        getn=z_getc;
        !            40:        dorevert = y_ierr;
        !            41:        donewrec = doend = z_rnew;
        !            42:        return(0);
        !            43: }
        !            44: s_wsfi(a) icilist *a;
        !            45: {      int n;
        !            46:        if(n=c_si(a)) return(n);
        !            47:        reading=0;
        !            48:        doed=w_ed;
        !            49:        doned=w_ned;
        !            50:        putn=z_putc;
        !            51:        dorevert = y_ierr;
        !            52:        donewrec = doend = z_wnew;
        !            53:        return(0);
        !            54: }
        !            55: c_si(a) icilist *a;
        !            56: {
        !            57:        fmtbuf=a->icifmt;
        !            58:        if(pars_f(fmtbuf)<0)
        !            59:                err(a->icierr,100,"startint");
        !            60:        fmt_bg();
        !            61:        sequential=formatted=1;
        !            62:        external=0;
        !            63:        cblank=cplus=scale=0;
        !            64:        svic=a;
        !            65:        icnum=recpos=0;
        !            66:        cursor = 0;
        !            67:        hiwater = 0;
        !            68:        icptr=svic->iciunit;
        !            69:        icend=icptr+svic->icirlen*svic->icirnum;
        !            70:        return(0);
        !            71: }
        !            72: z_wnew()
        !            73: {
        !            74:        while(recpos++ < svic->icirlen)
        !            75:                *icptr++ = ' ';
        !            76:        recpos = 0;
        !            77:        cursor = 0;
        !            78:        hiwater = 0;
        !            79:        icnum++;
        !            80: }
        !            81: e_rsfi()
        !            82: {      int n;
        !            83:        n = en_fio();
        !            84:        fmtbuf = NULL;
        !            85:        return(n);
        !            86: }
        !            87: e_wsfi()
        !            88: {
        !            89:        int n;
        !            90:        n = en_fio();
        !            91:        fmtbuf = NULL;
        !            92:        if(icnum >= svic->icirnum)
        !            93:                return(n);
        !            94:        while(recpos++ < svic->icirlen)
        !            95:                *icptr++ = ' ';
        !            96:        return(n);
        !            97: }
        !            98: y_ierr()
        !            99: {
        !           100:        err(elist->cierr, 110, "iio");
        !           101: }

unix.superglobalmegacorp.com

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