


                 Assign(V1.3, 2.x, 3.x in C:)



     NAME
            Assign - Binds a device name to a directory or file.

     SYNOPSIS
		1.3
          Assign Name Dir Etc/... LIST EXISTS REMOVE
	
    	2.x/3.x
    	  Assign Name Dir Etc/... LIST EXISTS DISMOUNT
			DEFER PATH ADD REMOVE VOLS DIRS DEVICES

     DESCRIPTION
            Assign causes NAME: to be a synonym for a directory 
        or a pathname.  This is referred to as a "logical" 
        device, since it appears to the Amiga and the user as a 
        device, but is in fact a directory. You can use this as a 
        convenient shorthand to refer to lengthy pathnames, or to 
        refer to a variety of different directories by the same 
        name (just change the assignment when you want the 
        program to change directories).
          
            You can remove assignments by giving only NAME:, or 
        by giving a single minus ('-') as the directory or device 
        name.  There are also specifice keywords to remove 
        assigns which will be covered later. In any case, all 
        assigns are lost when the system is shut off or rebooted.	

            In 2.x/3.x you can assign a single device name to 
        many directories by simply listing all of the directories 
        after the device name.

            S:, L:, C:, FONTS:, DEVS:, LIBS:, T:, and SYS: are 
        all made during normal startups. All these assigns 
        directly relate with system operation. Therefor, they 
        should not be tampered with for any reason.

            If there is already a directory with an assignment, 
        any new assignment will replace it. You cannot, however, 
        assign the same name to a device that already exists. So 
        an assign to device Work: if a disk whose name Work: is 
        already mounted. 
          


     OPTIONS
          LIST 
            Lists the current assignments. Under 1.3, if you 
        specify a single already assigned name on the command 
        line with LIST, it will be removed from the device list. 
        Under 2.x/ 3.x you can either make or remove assignments 
        along with listing them.

          EXISTS
            Takes a logical device name as an argument.  If the 
        name exists, the device name and its assignment are 
        displayed.  If the name does not exist, then the 
        condition flag is set to WARN (return flag 5).  This will 
        cause an IF WARN batch file statement to succeed.

          REMOVE
            For 1.3: Takes a logical device name as an argument, 
        and removes it from the device list.  This is useful 
        largely to individuals writing handlers, careless use of 
        this option can easily crash the Amiga. It will not, 
        however free up the memory that was taken up with the 
        assign.
				
            For 2.x/3.x: It can be used to delete one directory 
        from a list of assigns. Opposite of ADD (see below).

		  DISMOUNT
            2.X/3.X ONLY: Used exactly like the REMOVE keyword 
        for 1.3 to remove a device from a list of mounted 
        devices.

		  DEFER
            2.x/3.x Only: Postpones the assign until a command 
        tries to access that device. Defer will not throw out an 
        error if it searches for a directory and it does not 
        exist.
        

          PATH
            2.x/3.x Only: This expands on the DEFER keyword. 
        Whereas DEFER eventually binds the assign, PATH keeps the 
        assign non-binding.  Not only will it wait for a command 
        to access that device, but it will reevaluate the assign 
        every other time that device is requested for. (NB: This 
        is very convenient if you are a floppy only user. You 
        will not have to replace the Workbench each time FONTS: 
        is requested. Instead, you can insert different floppy 
        named fonts: each time that device is scanned for.)

            PATH will not accept multi directory assigns.

          ADD
            2.x/3.x Only: Let's you add new directories to an 
        existing assign.  For instance, if you assign a device 
        that is alread assigned you will lose your old assign. If 
        you use the ADD keyword, you will add the new assign to 
        the old assign.

          VOLS
		  DIRS
		  DEVICES
            2.x/3.x Only: Limits the information that is 
        displayed when you list your assigns. VOLS shows you only 
        which volumes are assigned, DIRS shows you only which 
        directories are assigned. DEVICES shows you only which 
        devices are assigned. If none of these keywords are used 
        then all three kind of information are displayed.
          
     CAUTIONS
            Random or careless assignments of the Amiga's 
        pre-assigned devices can cause mass confusion.

            Random or careless use of the REMOVE option can cause 
        a GURU.

     SEE ALSO
          Execute

     EXAMPLES
  
        1.
             ASSIGN DICTIONARY: df1:usr/lib/dictionary

            DICTIONARY: may now be used as a synonym for the 
        complete path df1:usr/lib/dictionary. If a program uses 
        the logical device DICTIONARY: rather than a hardcoded 
        directory name, then changing the DICTIONARY: assignment 
        will change the dictionary that the program will use.

            Assign allows a practically infinite number of 
        assignments or deletions to be made on one command line.  
        You may remove an assignment by using a minus '-' sign 
        instead of a logical directory or filename to subtract 
        this assignment from the device list.

        2. To return all the assignments made to your system 
        just enter:

			Assign
		  
        3. 1.3 Only:

            To assign POOF: to the disk in DF0:, remove the 
        assignments for PUF: and DUF: and assigns CRUFT: to HD0:.

            ASSIGN POOF: DF0: PUF: - DUF: - CRUFT: HD0:


        4.2.x/3.x Only:

		  To assign multiple paths to one device:

			Assign Music: Work:DeliTracker/Mods Work:OctaMed/Meds 


		  To assign Fonts: to df0:Fonts only when a program tries to
		  access Fonts:

			Assign Fonts: Df0:Fonts DEFER



