
#> FP 2.00 <#

This package contains a PG programm for WinFBB 7.00(a)

FP.DLL must be placed in the FBB\PG directory.
FP.DIR must be placed in the FBB directory.
FP uses the FBB environment variable to locate the PG.DIR file.
So use	SET FBB=C:\FBB  (or the drive and path where FBB resides).
FP.DLL also uses the BC453RTL.DLL runtime library, this file
is included in the WinFBB package.

The FP.DIR file contains all the directories wich are accessible
by the users.
The first line must contain the path and filename to the label file.
Normally this would be  C:\FBB\SYSTEM\YAPPLBL.SYS .

Next FP loads the user drive letter as it appears in FBBDOS.
The next line is the absolute path to the directory wich is
associated with the drive letter.
The drive specification MUST be 2 characters long!

There may NOT be a trailing \ at the end of the path!. Also there
may not be a comment line between the drive letter and the path!

Next FP will load the first absolute path and start searching in this
directory. If the directory has been searched FP continues with the
next listed directory until it encounters a new drive letter.

You can append a directory list with the following dos command.

 DIR C:\FBB\YAPP\*.* /s /b /ad /on >> C:\FBB\FP.DIR

The directories will then be appended to the FP.DIR file.

At my BBS I have a group of local users who connect on the highspeed
port or the modem port.
For these users I have created a group directory where they can find
big files. The path (C:\BIG\USERS) is set in the priv path and the
Local flag is set.

For these users, wich Local flag has been set, FP also searches
in the directories listed under P:

If the user is neither SysOp or Local, FP stops searching.

The SysOps have also access to this directory and
to the directory below this dir. So a Sysop has  C:\BIG  as his
priv dir. FP will then also search the directories listed under S:
S: itself is converted to p: (lowercase P) in the output.

FP stops searching when it reaches the end of the FP.DIR file.

There are 2 reasons why I have put all the search paths in a file.
- It saves about 20% of processing time.
  You will know if you use the DIR command to create the lists.
- FP will skip any unofficial or unlisted directory.
  (some users have the habbit of creating lots of directories...)

FP 2.00 also uses catching of labels, When a matching file is
found FP wil try to find the associated label. When the label file
is scanned for the first time all the labels wich are associated
with a matching filename are stored in an array wich can contain
50 entries. When a 2nd matching filename is found the associated
label is retrieved from this label cache.
This means that the label file is scanned only once when
a matching file is found. This saves a lot of processing time!

Because you can not sent more than 1kb text back to WinFBB
FP also stops scanning when this limit is reached.

How to use FP.
--------------
If you type FP on the BBS command line you will get a short help text.
The use of wildcards is allowed, so if you are looking for ARJ you can
try ARJ*.* This will expand to ARJ?????.???
FP will return all files + labels wich begin with ARJ.
You can NOT use the $ sign, due to a bug in FBB a $ on the command line
will expand to a variable. Yes, you can use $$ to pass the $ sign to FP,
but FP itself wil not search correctly.

For a translated version sent me these lines translated.
\n = newline
FBB variables may be used in the texts.
count = number of found files.


"FindPath by PE1OZA @ PI8DRE\n\n"
"Usage: fp <filename.ext>\nfi: fp arj*.*\n\n"
"filename may not start with a * !\n\n"
"Fatal error!\nCannot find FP.DIR\n\n"
" Sorry $I, nothing found.\n"
"Error in first FBBDOS drivename in FP.DIR\n\n"
"Label file not found!"
"More than %d files found!\n\n",count


Bug reports and suggestions can be sent to:
ax25 : PE1OZA @ PI8DRE
email: michel@amazed.nl
