7 if(f__curunit
->uend
|| f__curunit
->url
<= f__recpos
8 || f__curunit
->url
== 1) return 0;
11 } while(++f__recpos
< f__curunit
->url
);
17 if(f__curunit
->uend
) return(-1);
18 if((ch
=getc(f__cf
))!=EOF
)
21 if(f__curunit
->url
>=f__recpos
||
32 err(f__elist
->cierr
,errno
,"readingd");
38 if (f__recpos
< f__hiwater
)
39 f__recpos
= f__hiwater
;
40 if (f__curunit
->url
> 1)
41 while(f__recpos
< f__curunit
->url
)
52 err(f__elist
->cierr
, 110, "dfe");
59 f__hiwater
= f__cursor
= 0;
70 f__formatted
=f__external
=1;
72 f__cursor
=f__scale
=f__recpos
=0;
73 f__curunit
= &f__units
[a
->ciunit
];
74 if(a
->ciunit
>MXUNIT
|| a
->ciunit
<0)
75 err(a
->cierr
,101,"startchk");
76 if(f__curunit
->ufd
==NULL
&& fk_open(DIR,FMT
,a
->ciunit
))
77 err(a
->cierr
,104,"dfe");
78 f__cf
=f__curunit
->ufd
;
79 if(!f__curunit
->ufmt
) err(a
->cierr
,102,"dfe");
80 if(!f__curunit
->useek
) err(a
->cierr
,104,"dfe");
83 err(a
->cierr
,130,"dfe");
84 fseek(f__cf
,(long)f__curunit
->url
* (a
->cirec
-1),SEEK_SET
);
89 integer
s_rdfe(a
) cilist
*a
;
91 integer
s_rdfe(cilist
*a
)
95 if(f__init
!= 1) f_init();
98 if(n
=c_dfe(a
))return(n
);
99 if(f__curunit
->uwrt
&& f__nowreading(f__curunit
))
100 err(a
->cierr
,errno
,"read start");
104 f__dorevert
= f__donewrec
= y_err
;
106 if(pars_f(f__fmtbuf
)<0)
107 err(a
->cierr
,100,"read start");
112 integer
s_wdfe(a
) cilist
*a
;
114 integer
s_wdfe(cilist
*a
)
118 if(f__init
!= 1) f_init();
121 if(n
=c_dfe(a
)) return(n
);
122 if(f__curunit
->uwrt
!= 1 && f__nowwriting(f__curunit
))
123 err(a
->cierr
,errno
,"startwrt");
128 f__donewrec
= y_newrec
;
130 if(pars_f(f__fmtbuf
)<0)
131 err(a
->cierr
,100,"startwrt");