xref: /csrg-svn/usr.bin/f77/libI77/wfi.c (revision 47943)
1*47943Sbostic /*-
2*47943Sbostic  * Copyright (c) 1980 The Regents of the University of California.
3*47943Sbostic  * All rights reserved.
420993Slibs  *
5*47943Sbostic  * %sccs.include.proprietary.c%
623093Skre  */
723093Skre 
8*47943Sbostic #ifndef lint
9*47943Sbostic static char sccsid[] = "@(#)wfi.c	5.2 (Berkeley) 04/12/91";
10*47943Sbostic #endif /* not lint */
11*47943Sbostic 
1223093Skre /*
1320993Slibs  * internal (character array) i/o: write formatted, sequential and direct
1420993Slibs  */
1520993Slibs 
1620993Slibs #include "fio.h"
1720993Slibs 
1820993Slibs extern int w_ed(),w_ned();
1920993Slibs extern int z_wnew(), z_putc(), z_tab();
2020993Slibs 
2120993Slibs LOCAL
c_wfi()2220993Slibs c_wfi()
2320993Slibs {
2420993Slibs 	reading = NO;
2520993Slibs 	doed=w_ed;
2620993Slibs 	doned=w_ned;
2720993Slibs 	putn=z_putc;
2820993Slibs 	doend = donewrec = z_wnew;
2920993Slibs 	dorevert = z_wnew;
3020993Slibs 	dotab = z_tab;
3120993Slibs }
3220993Slibs 
s_wsfi(a)3320993Slibs s_wsfi(a) icilist *a;
3420993Slibs {
3520993Slibs 	int n;
3620993Slibs 
3720993Slibs 	c_wfi();
3820993Slibs 	if( n = c_si(a) ) return (n);
3920993Slibs 	if(pars_f()) err(errflag,F_ERFMT,"wsfio")
4020993Slibs 	fmt_bg();
4120993Slibs 	return( OK );
4220993Slibs }
4320993Slibs 
s_wdfi(a)4420993Slibs s_wdfi(a) icilist *a;
4520993Slibs {
4620993Slibs 	int n;
4720993Slibs 
4820993Slibs 	c_wfi();
4920993Slibs 	if( n = c_di(a) ) return (n) ;
5020993Slibs 	if(pars_f()) err(errflag,F_ERFMT,"wdfio")
5120993Slibs 	fmt_bg();
5220993Slibs 	return( OK );
5320993Slibs }
5420993Slibs 
e_wsfi()5520993Slibs e_wsfi()
5620993Slibs {
5720993Slibs 	int n;
5820993Slibs 	n = en_fio();
5920993Slibs 	fmtbuf = NULL;
6020993Slibs 	return(n);
6120993Slibs }
6220993Slibs 
6320993Slibs 
e_wdfi()6420993Slibs e_wdfi()
6520993Slibs {
6620993Slibs 	return(e_wsfi());
6720993Slibs }
68