00001
00002 c
00003 c Copyright (c) 1986,1987,1988,1989,1990,1991,1992,1993,
00004 c by Steve McMillan, Drexel University, Philadelphia, PA.
00005 c
00006 c All rights reserved.
00007 c
00008 c Redistribution and use in source and binary forms are permitted
00009 c provided that the above copyright notice and this paragraph are
00010 c duplicated in all such forms and that any documentation,
00011 c advertising materials, and other materials related to such
00012 c distribution and use acknowledge that the software was developed
00013 c by the author named above.
00014 c
00015 c THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
00016 c IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
00017 c WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00018 c
00019
00020
00021 subroutine fr spaces(ztit,nztit)
00022 save
00023 c
00024 c Calculate the true length, nztit, of a character string, ztit.
00025 c The length of the string is the position of the character before
00026 c a block of five blanks or a non-printing character is encountered.
00027 c If the input string is blank, nztit=1 is returned.
00028 c
00029 character*(*) ztit
00030 character*5 space
00031 space=' '
00032 c
00033 nztit=index(ztit,space)-1
00034 if (nztit.lt.0) then
00035 nztit=len(ztit)
00036 else if (nztit.eq.0) then
00037 nztit=1
00038 end if
00039 c
00040 do i=1,nztit
00041 ich=ichar(ztit(i:i))
00042 if (ich.lt.32.or.ich.gt.126) go to 20
00043 end do
00044 return
00045 20 nztit=max(1,min(i-1,nztit))
00046 c
00047 end