| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 | 
							- #include "f2c.h"
 
- #include "fio.h"
 
- #include "fmt.h"
 
- #ifdef __cplusplus
 
- extern "C" {
 
- #endif
 
- extern char *f__icptr;
 
- char *f__icend;
 
- extern icilist *f__svic;
 
- int f__icnum;
 
-  int
 
- z_getc(Void)
 
- {
 
- 	if(f__recpos++ < f__svic->icirlen) {
 
- 		if(f__icptr >= f__icend) err(f__svic->iciend,(EOF),"endfile");
 
- 		return(*(unsigned char *)f__icptr++);
 
- 		}
 
- 	return '\n';
 
- }
 
-  void
 
- #ifdef KR_headers
 
- z_putc(c)
 
- #else
 
- z_putc(int c)
 
- #endif
 
- {
 
- 	if (f__icptr < f__icend && f__recpos++ < f__svic->icirlen)
 
- 		*f__icptr++ = c;
 
- }
 
-  int
 
- z_rnew(Void)
 
- {
 
- 	f__icptr = f__svic->iciunit + (++f__icnum)*f__svic->icirlen;
 
- 	f__recpos = 0;
 
- 	f__cursor = 0;
 
- 	f__hiwater = 0;
 
- 	return 1;
 
- }
 
-  static int
 
- z_endp(Void)
 
- {
 
- 	(*f__donewrec)();
 
- 	return 0;
 
- 	}
 
-  int
 
- #ifdef KR_headers
 
- c_si(a) icilist *a;
 
- #else
 
- c_si(icilist *a)
 
- #endif
 
- {
 
- 	f__elist = (cilist *)a;
 
- 	f__fmtbuf=a->icifmt;
 
- 	f__curunit = 0;
 
- 	f__sequential=f__formatted=1;
 
- 	f__external=0;
 
- 	if(pars_f(f__fmtbuf)<0)
 
- 		err(a->icierr,100,"startint");
 
- 	fmt_bg();
 
- 	f__cblank=f__cplus=f__scale=0;
 
- 	f__svic=a;
 
- 	f__icnum=f__recpos=0;
 
- 	f__cursor = 0;
 
- 	f__hiwater = 0;
 
- 	f__icptr = a->iciunit;
 
- 	f__icend = f__icptr + a->icirlen*a->icirnum;
 
- 	f__cf = 0;
 
- 	return(0);
 
- }
 
-  int
 
- iw_rev(Void)
 
- {
 
- 	if(f__workdone)
 
- 		z_endp();
 
- 	f__hiwater = f__recpos = f__cursor = 0;
 
- 	return(f__workdone=0);
 
- 	}
 
- #ifdef KR_headers
 
- integer s_rsfi(a) icilist *a;
 
- #else
 
- integer s_rsfi(icilist *a)
 
- #endif
 
- {	int n;
 
- 	if(n=c_si(a)) return(n);
 
- 	f__reading=1;
 
- 	f__doed=rd_ed;
 
- 	f__doned=rd_ned;
 
- 	f__getn=z_getc;
 
- 	f__dorevert = z_endp;
 
- 	f__donewrec = z_rnew;
 
- 	f__doend = z_endp;
 
- 	return(0);
 
- }
 
-  int
 
- z_wnew(Void)
 
- {
 
- 	if (f__recpos < f__hiwater) {
 
- 		f__icptr += f__hiwater - f__recpos;
 
- 		f__recpos = f__hiwater;
 
- 		}
 
- 	while(f__recpos++ < f__svic->icirlen)
 
- 		*f__icptr++ = ' ';
 
- 	f__recpos = 0;
 
- 	f__cursor = 0;
 
- 	f__hiwater = 0;
 
- 	f__icnum++;
 
- 	return 1;
 
- }
 
- #ifdef KR_headers
 
- integer s_wsfi(a) icilist *a;
 
- #else
 
- integer s_wsfi(icilist *a)
 
- #endif
 
- {	int n;
 
- 	if(n=c_si(a)) return(n);
 
- 	f__reading=0;
 
- 	f__doed=w_ed;
 
- 	f__doned=w_ned;
 
- 	f__putn=z_putc;
 
- 	f__dorevert = iw_rev;
 
- 	f__donewrec = z_wnew;
 
- 	f__doend = z_endp;
 
- 	return(0);
 
- }
 
- integer e_rsfi(Void)
 
- {	int n = en_fio();
 
- 	f__fmtbuf = NULL;
 
- 	return(n);
 
- }
 
- integer e_wsfi(Void)
 
- {
 
- 	int n;
 
- 	n = en_fio();
 
- 	f__fmtbuf = NULL;
 
- 	if(f__svic->icirnum != 1
 
- 	 && (f__icnum >  f__svic->icirnum
 
- 	 || (f__icnum == f__svic->icirnum && (f__recpos | f__hiwater))))
 
- 		err(f__svic->icierr,110,"inwrite");
 
- 	if (f__recpos < f__hiwater)
 
- 		f__recpos = f__hiwater;
 
- 	if (f__recpos >= f__svic->icirlen)
 
- 		err(f__svic->icierr,110,"recend");
 
- 	if (!f__recpos && f__icnum)
 
- 		return n;
 
- 	while(f__recpos++ < f__svic->icirlen)
 
- 		*f__icptr++ = ' ';
 
- 	return n;
 
- }
 
- #ifdef __cplusplus
 
- }
 
- #endif
 
 
  |