;
;  UnixDirs/Readme       (c) 1988  Software Dimensions.
;          ______
;         /     /\        All Rights Reserved
;        /_____/ |\       Written by Murray Bennett and Mark Cyster
;       |\    |\  /|      Software Dimensions
;       | \/__|_\/ |      6th Floor, 239 Adelaide Tce
;       |__|     | |      Perth WA 6000
;        \ |  4  | /      Australia
;         \|_____|/
;                         BBS:(In Australia !??)
;
;----------------------------------------------------------------------------
; This material is Copyright (C) 1988 and 1989 Software Dimensions.
; It may be distributed freely as long as the following restrictions are met:
;
;    1.  All files present in the distribution package must be redistributed
;        with the package.  If you distribute on diskette, all files must be
;        on a single diskette.
;        Files in this distribution are listed in FILES.LIST
;
;    2.  The distributor agrees to cease distributing the programs and data
;        involved if requested to do so by authors or any member of The
;        Software Distillery.
;
; DISCLAIMER
;
; Neither Software Dimensions nor any of its members will be liable for
; any damage arising from the failure of this program to perform as described,
; or any destruction of other programs or data residing on a system
; attempting to run the program.  While we know of no damaging errors, the
; user of this program uses it at his or her own risk.
;
; DONATIONS
;
; Welcome (but we realise it's a long way to Australia).
;
;----------------------------------------------------------------------------

UnixDirs is a program which adds the familiar "." and ".." syntax as found
on UN*X to users of AmigaDOS.  By intercepting calls at the dos.library
level, UnixDirs provides an application independant method of providing
this capability.

The two parts of the program are written entirely in assembler.
Calls are made to arp.library so you should have this library
(version 34.1 or higher) in your libs: directory.

Installation
------------
  Copy UnixDirs-Handler to L:
  Ensure you have arp.library in LIBS:
  Execute the program UnixDirs


Usage
-----
  For any directory (including the current directory), UnixDirs creates
  "." and "..", two simulated directory entries.
  The name "." is synonomous with the directory itself.
  The name ".." refers to the immediate parent directory.

  This allows commands such as the following to be used.

  copy df1:* .    (copy the files in the root dir of df1: to the current dir)
  cd ..           (change to the parent dir of the current dir)
  cd ../..        (change to the parent of the parent of the current dir)
  cd ../AnotherDir
  cd ../AnotherDir/./../.  (if you want to)

  If the current directory is dh0:include/libraries/old, then typing
    copy df1:source/* .
  beats
    copy df1:source/* :include/libraries/old
  any day.


Notes
-----
1.  UnixDirs will detect and disallow a second invocation of the program.
2.  Both sections of the program are written entirely in assembler.
    This was due partly for space reasons (for those of us still working
    off floppies) and partly to provide a useful self-tutorial in 68000
    assembler.
3.  Only the handler "UnixDirs-Handler" is left resident in memory. This
    takes less than 1K of memory. The code is necessarily reentrant allowing
    multiple processes to make use of the facility at one time.

Limitations
-----------
  UnixDirs provides an intercept between application programs and the
  standard dos.library functions for dealing with files. Any programs
  that do not use standard dos.library calls, but generate and send
  their own packets will bypass UnixDirs. Normally this would not be
  a problem, however the standard AmigaDOS programs in C: appear to do
  just this.

  To the rescue with ARP!
  The replacement commands written by the fellows at ARP, however, have
  been written "properly" and hence work perfectly with UnixDirs.
  Since UnixDirs requires the arp.library, you are probably using the ARP
  commands anyway.

  The following limitation is imposed by the current version of arp.library
      Filenames will be expanded to a maximium depth of 8 subdirectories.

Compilation
-----------
  The MakeFile provided is compatible with Make from FF disk 69.
  The library of LVO offsets, small.lib, is provided.
  The executables were compiled with the Manx assembler version 3.6a
  however there should be no problems with using any other assembler.

