xref: /csrg-svn/usr.bin/f77/libI77/dolio.c (revision 2488)
1*2488Sdlw /*
2*2488Sdlw char id_dolio[] = "@(#)dolio.c	1.1";
3*2488Sdlw  *
4*2488Sdlw  * list directed i/o common routines
5*2488Sdlw  */
6*2488Sdlw 
7*2488Sdlw #include "fio.h"
8*2488Sdlw #include "lio.h"
9*2488Sdlw 
10*2488Sdlw 
11*2488Sdlw c_le(a,flag) cilist *a;
12*2488Sdlw {	int n;
13*2488Sdlw 	lfname = NULL;
14*2488Sdlw 	elist = NO;
15*2488Sdlw 	sequential=external=formatted= LISTDIRECTED;
16*2488Sdlw 	fmtbuf = "ext list io";
17*2488Sdlw 	errflag = a->cierr;
18*2488Sdlw 	endflag = a->ciend;
19*2488Sdlw 	lunit = a->ciunit;
20*2488Sdlw 	if(not_legal(lunit)) err(errflag,101,fmtbuf)
21*2488Sdlw 	curunit = &units[lunit];
22*2488Sdlw 	if(!curunit->ufd && (n=fk_open(flag,SEQ,FMT,(ftnint)lunit)))
23*2488Sdlw 		err(errflag,n,fmtbuf)
24*2488Sdlw 	cf = curunit->ufd;
25*2488Sdlw 	elist = YES;
26*2488Sdlw 	lfname = curunit->ufnm;
27*2488Sdlw 	scale=recpos=cursor=0;
28*2488Sdlw 	cplus=cblank=NO;
29*2488Sdlw 	if(!curunit->ufmt) err(errflag,102,fmtbuf)
30*2488Sdlw 	if(curunit->url) err(errflag,105,fmtbuf)
31*2488Sdlw 	return(OK);
32*2488Sdlw }
33*2488Sdlw 
34*2488Sdlw do_lio(type,number,ptr,len) ftnint *number,*type; flex *ptr; ftnlen len;
35*2488Sdlw {
36*2488Sdlw 	return((*lioproc)(number,ptr,len,*type));
37*2488Sdlw }
38