IUBio

Modification for MSF files

Rick Westerman westerm at aclcb.purdue.edu
Fri Jul 9 15:42:09 EST 1993


						July, 1993
						Rick Westerman
						westerm at aclcb.purdue.edu

   How long have we had MSF (multiple sequence format) files within
the GCG package? Two or three years by now. And so why do I have to keep
telling my users over and over that if they wish to use MSF files they 
must append "{*}" to the end of the file name? Even experienced users
seem to forget. Sigh. 

   I finally have gotten tired enough of the above problem that I modified
the GCG package. Now my users no longer need to append the "{*}" to their 
MSF files. In other words, instead of having to do:

   $ pretty pileup.msf{*}

they can now do:

   $ pretty pileup.msf

additionally, they can still use the "{*}" or "{sequence}" forms. The 
modification effects all GCG programs because it changes one of the
base routines -- NEXTFILE.

   The downside of the modification is that any file that ends with ".msf"
is considered to be a MSF file. To implement the modification, change your
directory to where you keep modified GCG source code and:

   1) $ GCGSupport

   2) $ copy GENLIB:NEXTFILE.FOR []

   3) Edit NEXTFILE.FOR and put in the changes below.

   4) $ FORTRAN NEXTFILE.FOR

   5) $ ToGenLib NEXTFILE.OBJ

   6) $ MakeShare

   7) If you have shared libraries installed,
      $ @GenCom:GCGIMAGE REPLACE


   If you wish to test out the modification before installing it, I 
suggest that after step #4, you do:

   4A) $ library/create test.olb nextfile.obj

   4B) $ copy GENSOURCE:PRETTY.FOR []

   4C) $ fortran PRETTY.FOR

   4C) $ genlink pretty.obj test.olb

   4D) $ run pretty 
       This runs the pretty program with the modified code


   While I and my users have tested this code, there are no guarantees. Use
at your own risk.

   The source code modifications to NEXTFILE are:

   1) Change the line:

      	Character WildName(*), ThisFName(*)

      To:

   	Character WName(*), ThisFName(*),  WildName(256)
   	Integer StrConcat, RPW

   2) After the line:

        Integer StrFind

      Add the following:

        Call StrCopy(WildName,WName)
  
        If  (((StrFind('.MSF',WildName).gt.1)  .or.
     &        (StrFind('.msf',WildName).gt.1)  .or.
     &        (StrFind('.Msf',WildName).gt.1)) .and.
     &        (StrFind('{',WildName).eq.0))
     &      RPW = StrConcat(WildName,'{*}')


   3) Make sure the "&"s in the above are in column 6. Add comments as
      desired. That's all there is to it. Basically, whenever the program
      sees a file that ends in ".MSF", ".msf", or ".Msf" and there is 
      no "{" in the file name, then "{*}" is appended to the file name.


-- Rick

Rick Westerman                System Manager of the AIDS Center Laboratory
westerm at aclcb.purdue.edu      for Computational Biochemistry (ACLCB), BCHM
Phone: (317) 494-0505         bldg., Purdue University, W. Lafayette, IN 47907
  FAX: (317) 494-7897



More information about the Info-gcg mailing list

Send comments to us at biosci-help [At] net.bio.net