subroutine serv(mode,lin,lou,lu1,lu2,lu3) c c service routine for openning input and output data c files and initialization of plotting c character*10 filname c mode=1 c write(*,100) 100 format(1x,'SPECIFY LIN'/1x) read(*,101)lin 101 format(i2) if(lin.eq.0)go to 1 write(*,102) 102 format(1x,'SPECIFY FILNAME'/1x) read(*,103)filname 103 format(a10) open(lin,file=filname,form='formatted') c 1 write(*,200) 200 format(1x,'SPECIFY LOU'/1x) read(*,101)lou if(lou.eq.0)go to 2 write(*,102) read(*,103)filname open(lou,file=filname,form='formatted') c 2 write(*,300) 300 format(1x,'SPECIFY LU1; LU1.GT.0 FORMATTED, LU1.LT.0 UNFORMATTED' */1x) read(*,101)lu1 if(lu1.eq.0)go to 3 write(*,102) read(*,103)filname if(lu1.gt.0)open(lu1,file=filname,form='formatted') if(lu1.lt.0)then lu1=-lu1 open(lu1,file=filname,form='unformatted') end if c 3 write(*,400) 400 format(1x,'SPECIFY LU2; LU2.GT.0 FORMATTED, LU2.LT.0 UNFORMATTED' */1x) read(*,101)lu2 if(lu2.eq.0)go to 4 write(*,102) read(*,103)filname if(lu2.gt.0)open(lu2,file=filname,form='formatted') if(lu2.lt.0)then lu2=-lu2 open(lu2,file=filname,form='unformatted') end if c 4 write(*,500) 500 format(1x,'SPECIFY LU3; LU3.GT.0 FORMATTED, LU3.LT.0 UNFORMATTED' */1x) read(*,101)lu3 if(lu3.eq.0)go to 5 write(*,102) read(*,103)filname if(lu3.gt.0)open(lu3,file=filname,form='formatted') if(lu3.lt.0)then lu3=-lu3 open(lu3,file=filname,form='unformatted') end if c 5 write(*,600) 600 format(1x,'SPECIFY "IPL" FOR PLOTTING, OTHERWISE "0"'/1x) read(*,101)ipl if(ipl.eq.0)return call plots(ldum1,ldum2,ipl) c return end