1 DevTool 
     DEVTOOL Is an interface between the VAX operating system and the
user. DevTool enables user-assigned default parameters for specific
system commands. The user may also define a default filename
specification for the entire set of DevTool commands. DevTool is
TRANSPARENT to the user. 

     This system permits the assigning and saving of file names
and specifications.

     These file names are stored as
           DevLog'Area'   disk and directory information
           DevFil'Area'   file name - includes DevLog
           DevExt'Area'   .EXT

     Where 'Area' can be almost any up to 4 character alphanumeric
string. Usually, for the sake of simplicity, a Single number is used. 

2 Enable_DevTool
     DevTool is enabled via GLOBAL symbols set up by the users own
copy of DevSetup.com, which is called from the users login.com at
login.  to do this Copy 

               Sys$SysRoot:[SysUTL.DevTool]DevSetup.com 

into your own directory and modify it to your personal taste. and add 
to the end of your Login.com  the line

$ @'Device where you put it':['directory where you put it']DevSetup

2 Command_Syntax  
     The Commands for DEVTOOL are user defined. They are set up by the
users copy of DevSetup.com. 
     All commands can be issued with the first parameter = #'Area'. In
all cases, except TRANSFER and SETFILE, this will replace the
Work-Area definition with the New-Area's definition. If a file name is
given as the second parameter then the New-Area's definition will be
replaced by the new file name. If only a file name is given then only
the Work-Area is redefined with the new name. 
3 Command_Format
  "Command" (#'Area') filename.ext  New-Area and Work-Area filename 
                                  and .EXT definitions are replaced.

  "Command" (#'Area') filename      New-Area and Work-Area filename
                                  Definitions are replaced with the new
                                  filename and the last .EXT

  "Command" (#'Area') .ext          New-Area and Work-Area .EXT
                                  definitions are replaced.

  "Command" (#'Area')               Work-Area filename and .EXT definition
                                  are replaced with the New-Area's
                                  definitions.

  "Command" filename.ext            Work-Area filename and .EXT definition 
                                  are replaced.

  "Command" filename                Work-Area filename Definition is 
                                  replaced with the new filename and 
                                  the last .EXT

  "Command" .ext                    Work-Area .EXT definition is replaced.

  "Command"                         Work-Area filename and .EXT definition
                                  are used nothing is altered.

2 Foreign_Commands
     If DEVTOOL is givin a command that it does not recognize it
will pass this command straight through.
     If a user wishes to have DEVTOOL function with commands other
than those already mentioned, it can be done in the following way.

     1.) Define the command in your command setup file.
     2.) In your copy of DevSetup.com add the line

$ 'symbol' :== @Sys$SysRoot:[SysUTIL.DevTool]NewDev 'Command' 
 
     3.) To use do

$ 'symbol' (filename'('.ext))

3 /EXT
     format = 'foreign_Command/EXT[="command extension"]

          This is a special switch which can be added to Foreign Commands
     which tells DevTool to send the File Extension to the Foreign Command.

          If /EXT is added to a Foreign command then the file extension will
     passed to the foreign command, as well as the file name.

          If a "Command Extension" is added to this switch then this will
     be passed to the foreign command in place of the present file extension.

          SEE  FOREIGN_COMMANDS EXAMPLES for more information.

3 /DIR
     format = 'Foreign_Command'/DIR

          This is a special switch which can be added to Foreign Commands
     which tells DevTool to set the process default directory to the directory
     specified in the File Specification before exicuting the forign Command.

          SEE  FOREIGN_COMMANDS EXAMPLES for more information.

3 /USER
     format = 'Foreign_Command'/USER

          This is a special switch which can be added to Foreign Commands
     which tells DevTool to issue the command...

          $ ASSIGN/USER TT: SYS$INPUT

     before exacuting the Foreign Command.  This allows DevTool to be used
     to "RUN" programs which require User Input.

          SEE  FOREIGN_COMMANDS EXAMPLES for more information.

3 EXAMPLES
 
     To have devtool remember and add filenames to RUNOFF, J. Doe adds
to [JDoe]DevSetup.com the lines

$ roff :== @Sys$SysRoot:[SysUTL.DevTool]NewDev Runoff/ext/dir
$ RunoffSwitch :== /Bold=3/Index

     As a result of this, when J. Doe logs in to the VAX, the symbol
RUNOFF will mean process filenames through DEVTOOL's memory the same as
DEVTOOL internal commands and run RUNOFF on the resulting filename.
     So a command...

$ roff [Jdoe.txt]thistext.txt

                ...will result in the VAX Commands
SET DEFAULT [JDOE.TXT]      
RUNOFF/BOLD=3/INDEX Thistext.txt
SET DEFAULT ['Back to where you started']

     If Roff had been defined...

$ roff :== @Sys$SysRoot:[SysUTL.DevTool]NewDev Runoff/ext=.RNO/dir

                            ...the reulting VAX Commands would have been
SET DEFAULT [JDOE.TXT]      
RUNOFF/BOLD=3/INDEX Thistext.RNO
SET DEFAULT ['Back to where you started']

     If Roff had been defined...

$ roff :== @Sys$SysRoot:[SysUTL.DevTool]NewDev Runoff/ext=.RNO/dir/USER

                            ...the reulting VAX Commands would have been
SET DEFAULT [JDOE.TXT]      
ASSIGN/USER TT: SYS$INPUT
RUNOFF/BOLD=3/INDEX Thistext.RNO
SET DEFAULT ['Back to where you started']


2 Internal_Commands  
     In your copy of DevSetup.com Symbols are set up for the DevTool's
internal command structure 

3 AT    
      **Note: .EXT is not relevent to this command .Com is assumed

Resulting VAX command =  @filename.COM

3 DIRECTORY
     /parameters are allowed as the first argument

Resulting VAX command =  Directory/Dirswitch/parameters  filename.EXT

3 DUMP    
     /parameters are allowed as the first argument

Resulting VAX command =  Dump/Dumpswitch/parameters  filename.EXT

3 EDIT    
     /parameters are allowed as the first argument

Resulting VAX command =  Edit/Editswitch/parameters  filename.EXT

3 FORTRAN
       **Note: .EXT is not relevent to this command .for is assumed

     /parameters are allowed as the first argument

Resulting VAX command = Fortran/Fortranswitch/parameters filename.EXT

3 LINK   
       **Note: .EXT is not relevent to this command .obj is assumed

   A list of files that this program is to be linked with can be
placed in a filename.llt file. IF this file exists it will be read 
by DEVTOOL and set up as the linklist. For the .LLT File format see 
Link_List. 

     /parameters are allowed as the first argument

Resulting VAX command =  Link/Linkswitch/parameters  filename/LinkList

3 MACRO   
       **Note: .EXT is not relevent to this command .mar is assumed

     /parameters are allowed as the first argument

Resulting VAX command =  Macro/Macroswitch/parameters  filename.EXT

3 PASCAL 
       **Note: .EXT is not relevent to this command .Pas is assumed

     /parameters are allowed as the first argument

Resulting VAX command =  Pascal/Pascalswitch/parameters  filename.EXT

3 PRINT   
     /parameters are allowed as the first argument

Resulting VAX command =  Print/Printswitch/parameters  filename.EXT

3 PURGE   
     /parameters are allowed as the first argument

Resulting VAX command =  Purge/Purgeswitch/parameters  filename.EXT

3 RUN    
      **Note: .EXT is not relevent to this command .exe is assumed

     /parameters are allowed as the first argument

Resulting VAX command =  Run/Runswitch/parameters  filename

3 SCAN   
       **Note:  the scanswitch is usually defined as /Read_Only

     /parameters are allowed as the first argument

Resulting VAX command =  Edit/Scanswitch/parameters  filename.EXT

3 TYPE      
     /parameters are allowed as the first argument

Resulting VAX command =  Type/Typeswitch/parameters  filename.EXT

3 WHAT   
      Prints to screen New or old definitions of specified Work-Area

Resulting VAX command =  none

3 SETFILE
      If Setfile is given as a command with parameter #'Area' and a
file name then the Work-Area and the New-Area's definition's are
replaced with the new file name. If this Command is given without a
file name then the Work-Area definition only is replaced with the
definition of the New-Area. 

         **Note:  No Comments are written to the screen

Resulting VAX command =  none

3 TRANSFER
      If Transfer is given as a command with parameter #'Area' and a
file name then only the New-Area is redefined with the new file name,
the Work-Area is left untouched. If This Command is given without a
file name then the definition of the New-Area is redefined with the
definition of the work Area. 

          **Note:  This Command sends a comment line to the screen

Resulting VAX command =  none

4 Command_Format
  Transfer #'Area' filename.ext     Only the New-Area filename and 
                                  .EXT definitions are replaced.

  Transfer #'Area' filename         Only New-Area filename Definitions
                                  are replaced with the new filename and
                                  the last .EXT

  Transfer #'Area' .ext             Only the New-Area .EXT definitions
                                  are replaced.

  Transfer #'Area'                  New-Area filename and .EXT
                                  definitions are replaced with the 
                                  Word-Area definitions.

  Transfer .ext                     Work-Area .EXT definition is replaced.

2 SWITCHES      
         all switch's are formated with a "/" at the beginning.

3 DirSwitch    
         sets the parameters for the DIRECTORY command

3 DumpSwitch   
         sets the parameters for the DUMP command 

3 EditSwitch   
         Points to the normal Edit/EDT commands

3 Edit'EXT'Switch   
         Allows special '."EXT"' file Edit/EDT commands, if desired

3 ScanSwitches   
     ScanSwitch   -----+    Same as the edit switches, except 
                       >>   these commands are intended to be set 
     Scan'EXT'Switch --+    for "/Read_Only".

3 FortranSwitch  
          sets the parameters for the FORTRAN command

3 LinkSwitch  
          sets the parameters for the LINK command

3 MacroSwitch  
          sets the parameters for the MACRO command 

3 PascalSwitch  
          sets the parameters for the PASCAL command 

3 PrintSwitch  
          sets the parameters for the PRINT command

3 PurgeSwitch  
          sets the parameters for the PURGE command

3 RunSwitch  
          sets the parameters for the RUN command

3 'ForeignCommand'Switch  
          sets the parameters for a FOREIGN command
     EXAMPLE:
          In DevSetup.com the following symbols have been defined.
          
          Roff :== @Sys$SysRoot:[SysUTL.DevTool]NewDev Runoff/*EXT*
          RunoffSwitch :== "/BOLD=3/INDEX"

          Then the command ...
          
     $ Roff Thistext.rno
          
          Will translate to...

     $ RUNOFF/BOLD=3/INDEX THISTEXT.RNO


2 External_Commands
     In Sys$SysRoot:[SysUTL.DevTool] there are some additional command 
files designed for use with DEVTOOL. To use them the command syntax
and effects are the same as all the other DEVTOOL internal commands.

3 GO.com   
     Compiles,links,deletes .obj files, and purges .exe files for
a BASIC program.

To use put the following line into your DevSetup.com

$ Go :== @Sys$SysRoot:[SysUTL.DevTool]Go

3 GOF.com 
     Compiles,links,deletes .obj files, and purges .exe files for
a FORTRAN program.

To use put the following line into your DevSetup.com

$ Gof :== @Sys$SysRoot:[SysUTL.DevTool]Gof

3 SHDEV.exe 
     displays the definitions, if any, of Work Areas #1-#9 and the current
file specification, as well as indicating which Work Area, if any, contains
the definition of the current file specification.  If you pass this program
a Work Area name the program will highlight the definition of that Work Area.

To use put the following line into your DevSetup.com

$ wh :== $Sys$SysRoot:[SysUTL.DevTool]ShDev 

The command to use would then be...

$ WH [Work Area to highlight]

2 DevVerb
          This is a flag for DevTool which determins how verbose DevTool
    will be.
          0 = not verbose
          1 = verbose

2 Error_Message  
   DevErrorMesg
           A Personalized error message, Setup in your DevSetup.com, for 
     when DevTool has detected an error.

2 Link_List
     A 'FileName'.LLT file is used to store a list of files, seperated
by commas, to be linked to the program file of the same name.  An
example of the two ways to format this file are given below. 

     1.)
          ,Sys$SysDevice:[Tools]Vt100lib,Sys$SysDevice:[Words.TagLib]TagLib

     2.)
          ,Sys$SysDevice:[Tools]Vt100lib        ! comment line
          ,Sys$SysDevice:[Words.TagLib]TagLib   ! comment line

     Each line in the .LLT file must begin with a comma.

          Anything on a line following an exclamation point (!) will be 
     treated as a comment.
