9 if (f__curunit->uend || f__curunit->url <= f__recpos
10 || f__curunit->url == 1)
16 while (++f__recpos < f__curunit->url);
26 if ((ch = getc (f__cf)) != EOF)
29 if (f__curunit->url >= f__recpos || f__curunit->url == 1)
40 err (f__elist->cierr, errno, "readingd");
46 if (f__recpos < f__hiwater)
47 f__recpos = f__hiwater;
48 if (f__curunit->url > 1)
49 while (f__recpos < f__curunit->url)
60 err (f__elist->cierr, 110, "dfe");
67 f__hiwater = f__cursor = 0;
75 f__formatted = f__external = 1;
77 f__cursor = f__scale = f__recpos = 0;
78 f__curunit = &f__units[a->ciunit];
79 if (a->ciunit > MXUNIT || a->ciunit < 0)
80 err (a->cierr, 101, "startchk");
81 if (f__curunit->ufd == NULL && fk_open (DIR, FMT, a->ciunit))
82 err (a->cierr, 104, "dfe");
83 f__cf = f__curunit->ufd;
84 if (!f__curunit->ufmt)
85 err (a->cierr, 102, "dfe");
86 if (!f__curunit->useek)
87 err (a->cierr, 104, "dfe");
90 err (a->cierr, 130, "dfe");
91 FSEEK (f__cf, (off_t) f__curunit->url * (a->cirec - 1), SEEK_SET);
106 if (f__curunit->uwrt && f__nowreading (f__curunit))
107 err (a->cierr, errno, "read start");
111 f__dorevert = f__donewrec = y_err;
113 if (pars_f (f__fmtbuf) < 0)
114 err (a->cierr, 100, "read start");
129 if (f__curunit->uwrt != 1 && f__nowwriting (f__curunit))
130 err (a->cierr, errno, "startwrt");
135 f__donewrec = y_newrec;
137 if (pars_f (f__fmtbuf) < 0)
138 err (a->cierr, 100, "startwrt");