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