home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Club Amiga de Montreal - CAM
/
CAM_CD_1.iso
/
files
/
335.lha
/
PathAssign_v1.1
/
README.1.1
< prev
next >
Wrap
Text File
|
1990-01-10
|
10KB
|
272 lines
PathAssign V1.1
~~~~~~~~~~~~~~~
Written by Anders `ALi' Lindgren
Introduction
~~~~~~~~~~~~
This is a program which increases the flexibility of the AmigaDOS
system. The basic idea is to replace the old standard assignments
with new which can read from a several different (i.e. a path) of
directories. This operation is totaly transparent to the user and to
normal programs.
To use the program, read and follow the instructions found in the
`Installation' paragraph below. Then read the `Function' and `Usage'
section, or the supplied manual file `PathAss.man'
If you are a novice, this text may seem a little `complicated', but
don`t panic. The AmigaDOS and CLI is not so difficult, just try it
and you will LOVE it. As a last resort, I can only recomend you to
read one of the many books on the topic.
Function:
~~~~~~~~~
A PathAssignemnt works like a normal assignment, the difference lies
in the fact that is can contain several directories. For example,
the direcory HELLO: can be assignmed to `DF0:hi' AND `DF1:goodbye'.
This is very helpful if there is useful files in several different
disks and you would like to access them like they here stored in one
single directory.
The main reason to use this program is to gain more flexibility out
of already existing programs. For examples the AmigaDOS make six
different assignments at the startup. These are C:, S:, L:, LIBS:,
DEVS: and FONTS:. These can be replaces by ekvivialent Path-
Assignments so vd0:, df0: and df1: will be searched, for example.
Everybody can benifit from this program, from one disk owners to
people who has 300 Mb HDs, only your imagination will stop you!
Here are some tips:
- One drive (and two drive owners) with a shortage of RAM can
place a few of their favorite commands on every disk. No
irritating diskswapping will occoure.
- Some comands and libraries can be placed in RAM: (or VD0:), the
rest can be kept on a diskett.
- HD owners sometimes don`t want to fill up their HD with several
program (they do get filledup.) They simply can make a
assignment to hd0:,RAD:,df0:,df1:,df2:,df3: and to every other
device they own...
- Lattice C and assembler programmers can place some often used
headerfiles and libraries in RAM and place the rest on disk.
The order of the directories are significant. The program scans the
directories from the beginning so put the references to ram based
devices first.
NOTE: Files that don`t exist in any directory will be written to
the first dir in the list!
Note alse that PathAss doesn`t put put out any filerequesters, so if
a file isn`t found, PathAss will return an error immediatley.
Another feuture of this program is that it doesn`t consider
assignments volume-relative, as the AmigaDos assignment command
does. PathAss consider them device-relative. This means when an
assignment is made to df0: PathAss will look at the volume currently
is df0:, while Assign would check the volume that was inserted in
df0: at the time of the assignment.
To the advanced user:
PathAssignments is implemented as normal AmigaDOS devices. The
handler program is `Path-Handler'. This program handles almost
every packet type existing on the Amiga. This code will search
each specified directory in turn.
To programmers: Don`t assume that the standard Amiga logical
devices ARE assignments (i.e. DLT_DIRECTORY), they aren`t! (At
least not on my system.)
Usage:
~~~~~~
To make a assigement write for examples:
PathAss name: df1:,df0:
If `name:' exists as a device or volume, the operation will fail,
otherwise the system will have a new PathAssignment. If `name:' is
a normal assignment or a PathAssignment it will be replaced with
the new one. The PathAssignment will stay activated until it is
deleted or replaced with an other PathAssignment.
The dirs is separated with a comma. No blanks can be inserted
between dirs. If a blank is embedded in a dirname, quote the whole
string. Example:
PathAss name: "hello:,hi there:"
To list all current PathAssignments write:
PathAss -l
To delete an assignment write:
PathAss -d name:
or PathAss name:
(Note: This also deletes old AmigaDos assignments)
You can see a short help text by writing:
PathAss -h
If no arguments are specified, the PathAssignments will be listed if
there exist any, otherwise the help text will be typed.
Important: Because the komplexity (.Hmmm.) of AmigaDos and CLI, C:
must be an assignment, I recommend the following workaround:
Make a PathAssign to another device with the path that normally
would have been the C: path. Then assign C: to that device.
Example:
PathAss CX: vd0:c,df0:c,df1:c
Assign C: CX:
I strongly suggest that you insert the PathAssignments in your
startup-sequence file.
Normal examples:
PathAss devs: vd0:devs,df1:devs,df0:devs
PathAss include: vd0:myinc,lattice5.0.2:CompactH
PathAss fonts: vd0:fonts,df0:fonts,df1:fonts
PathAss fonts:
PathAss -l
PathAss -h
PathAss
(Please note:)
PathAss cx: vd0:c,df0:c,df1:c
Assign c: cx:
Insallation:
~~~~~~~~~~~~
To use the program you put the file `path-handler' in your L:
directory and the PathAss command in C:. For you non-CLI masters
I have included the script `Install' to do this for you.
(Type `Execute Install' at the CLI prompt.)
Contents
~~~~~~~~
The following files are included in the .zoo archive:
PathAss - The actual command. Place it in C:
Path-Handler - The device-handler. -----"----- L:
PathAss.man - A manual file in UNIX-format.
ReadMe.1.1 - This file
Install - Script file to install PathAss.
PathAll - Example Script file. PathAssigns
all AmigaDos assignments to
vd0:, df0: and df1:
Current Satus
~~~~~~~~~~~~~
The PathAss program is shareware. To become a registred user just
pay the fee, $10, to the address below. I will accept payment in
any currency, like swedish crowns, new PD/SW programs, clean disks
and so on. All registred users will recieve the lastest version of
the program and the sourcecode. All registed users can send in an
empty disk and return postage to get the absolute latest version of
the program and source.
To pay the fee, ask any question, complain, bug reports,
suggestions, ask for autograps etc. Please write to:
SNAIL-MAIL: Anders `ALi' Lindgren
Mälarblick 8
S-161 51
Bromma Sweden
PHONE: No thanks, no calls at 3 AM.......
Or contact me on the swedish Amiga base `Camelot'.
The author takes no responsibility what so ever!
Use the program on your own risk!
Credits:
~~~~~~~~
I here give a big thanks for all of you who has sent is a ShareWare
registrartion, it was beyond my wildest dreams that anyone would do
that. I will also apologize for those who hasn`t heard of me while I
was develloping V1.1. (I told my self next week, next week... But
now it`s finally finished, I hope. You know, it takes a month to
repair a broken computer here in Sweden :-( )
A big thank goes to they who tested the prereleases, sent in
bugreports, and to they who supported me morally by saying that they
actually used my product, and liked it. (Hmmm, how about the SW
notice.... :-) )
Another big thanks goes to all other PD/SW devellopers around the
world. Their effort has made the Amiga was it is today, i.e. a FUN
machine to use.
Background
~~~~~~~~~~
The idea to this program first popped into my mind when I was
thinking of an alternate method of storing the fonts in the Fonts:
The reason why it become a complete program was because a friend of
mine claimed that it couldn`t be done.
The program was develloped om my Amiga 500 with 2 drives and a 2Mb
memory expansion unit. It was developped using Lattice V 4.0, but
the progran is now compiled with V 5.02.
Future Fixes
~~~~~~~~~~~~
In the occourance of free time, and user response, I have a few
extra implementations to work on, these are among else:
- Put out system requesters for volume relative access.
(I maybe add a flag for this.)
- Fix the memory bug in the release process of the resident
segment. (Sorry, but this version is _late_ already).
- Make the executable shorter, I might use the Arp librarys
Printf() and Assign( ,NULL) functions. (So far I have written
everything on my own.) I migth even rewrite some parts in
Assembler.
- Make the PathAss code pure. (Mabye it is, I don`t know.)
- Multiple assignments and/or file (script) assignments.
- Make the PathAssignments DLT_DIRECTORY`s, which in turn
has locked a separate PATH:-device. This will fix the
C: feature
- Start the process only when accessed. This would save _some_
memory. (At least 3Kb per device :-) )
Release History
~~~~~~~~~~~~~~~
0.9x Prerelease.
Use on your own risk :-)
1.0 (88-11-21) Release
Full program. Delete. Replace.
1.0b (88-12-29) Very small release
Only minor fixes and cleanups.
1.1 (89-09-08) Release.
- Handler code made resident!
- L: bug fixed!
- Protection bit support added. (Sorry, forgot it in V1.0)
- Comment code added.
- Code cleanup and several small bug fixed.
- several small bug fixed. (i.e. more relaiable program.)