Dec 182017
CMPBBS is a utility for comparing two BBS file lists. | |||
---|---|---|---|
File Name | File Size | Zip Size | Zip Type |
CMPBBS.BAS | 13813 | 2809 | deflated |
CMPBBS.CFG | 2399 | 988 | deflated |
CMPBBS.DOC | 6637 | 2740 | deflated |
CMPBBS.EXE | 52761 | 33614 | deflated |
DEATHSTR.DIR | 135 | 73 | deflated |
DISK1.DIR | 206 | 124 | deflated |
MASTER.DIR | 93 | 67 | deflated |
XMODEM.OBJ | 292 | 255 | deflated |
Download File CMPBBS10.ZIP Here
Contents of the CMPBBS.DOC file
Documentation for CMPBBS version 1.0
By Ken Goosens
19 February 1990
Contents
1.0 What is CMPBBS?
2.0 How CMPBBS Can be Useful to You
3.0 How to Set up and Run CMPBBS
4.0 An Example
5.0 Details and a Caution
6.0 Recompiling
1.0 What is CMPBBS?
CMPBBS is a utility for comparing two lists of files. The
first, your master list of files that you already have, is compared
to the second, a list of files from another source. Written
out is the ones new, that is, in the other source and not in your
master. CMPBBS is distributed with the following files:
CMPBBS.BAS - Basic source code
XMODEM.OBJ - Assember subprogram required for recompiling
CMPBBS.DOC - This documentation
MASTER.DIR - Sample list of files you have
DEATHSTR.DIR - Sample list of files from BBS to compare to master
DISK1.DIR - Sample list of files from diskette to compare to master
CMPBBS.CFG - Configuration file to drive the master
2.0 How CMPBBS Can be Useful to You
CMPBBS has one main application: you maintain a list of files you
already have, for example, on your own BBS. Most BBS's make a list
of all downloadable files available for downloading. You get
lists of files that are on other BBS's. The 1st thing you want to
know is what's new on the other lists. CMPBBS is designed to tell
you exactly what is new.
CMPBBS is design to run extemely fast on large numbers of files. For
example, it will compare lists with 8000 entries in about a minute on
a 10mhz 80286. It has no trouble handling up to 30,000 files.
You might want to select the new files for downloading.
But CMPBBS is designed especially to support another type of application:
namely, SysOps who want to maintain a list of files available
"off line", that is not their own BBS. With RBBS-PC 17.3A, you
can automatically inform callers on what other boards the
files are on. Or you can maintain your own files off line on removable
media, such as floppy disks, and log requests for those files for you
to inspect and restore the next day. Many SysOps maintain lists of
offline files but they are inconvient to use because they must be noted
as being off line in the directories, and require the caller to leave
a message. RBBS-PC 17.3A makes this work so automatic that it is easily
to set up and maintain for all involved.
If you are running RBBS 17.3A or higher, just install the Fast File
System and get other SysOps to give you their updated file lists. You
can become a kind of "library" resource on where all files in the area
can be found.
3.0 How to Set up and Run CMPBBS
CMPBBS gets its directions from a configuraton file whose default name
is CMPBBS.CFG. This file specifies what your master file is, what
lists to compare it to, and what to write the new files to. Just
load up CMPBBS.CFG into a full screen editor and following the
commented directions in the file. You can specify the configuration
file to use on the command line, e.g. to use CMPBBS.KG simply say
CMPBBS CMPBBS.KG
CMPBBS will display the parameters it reads from the configuration
file and give you an opportunity to confirm that you want to run with
them as specified. You can bypass the confirmation by putting "/B"
on the command line to make the program run batch.
Note that you can compare up to 200 lists in a single run.
4.0 An Example
Enclosed is an operating example:
MASTER.DIR - list of files you have
TEST1.DIR - list of files to compare to your master
TEST2.DIR - list of files to compare to your master
CMPBBS.CFG - Configuration file to drive the master
Type in
CMPBBBS
and in response to the displayed screen, press Enter. If you compare
MASTER to TEST1 and TEST2, you will see that each contains two new files
not in MASTER, which are written out to NEWLIST.DIR.
out the ones in the 2nd and not in the 1st.
5.0 Details and a Caution
CMPBBS is enormously fast - magnitudes faster than other BBS compare
programs. This lightning speed is achieved by using CRC checks rather
than the file name, which allows the entire index to be held in memory
and to be searched in a single step. But this lightning speed occurs
at a theoretical cost:
o it is possible that two distinct file names will be treated
as the same.
Possibly, but very unlikely. Since most BBS lists will overlap
heavily and there are relatively few new files, the likelihood of
having a file that is really new but not treated as new (because
its CRC is the same as another file on the list) is tiny but not
zero. BUT IF YOU MUST BE CERTAIN THAT EVERY NEW FILE IS REPORTED
AS NEW, DON'T USE CMPBBS. For the applications it was designed to
cover, occasionally missing a new file is a small price to pay for
the enormous increase in speed of execution.
CMPBBS allows the column in which the file name begins to be
specified in the configuration, separately for the master directory
and the dirs to be added. CMPBBS does expect the file name to be in
the 12 characters at and following the starting column. CMPBBS
also requires that the file name be in ALL CAPS.
The file name can either have a period separating the prefix
and extension, or a space, and will be treated the same in each case.
However, if a space separator is used, the extension must begin in
the 10th column of the name field. The line will be skipped if
the first column of the name field is a space or one of the
following characters: /[]|<>+=;,?*
The outputted list of new files can be used as listable directory.
If processing multiple sources, you will probably want the source
to be identified in the output. This can be accomplised by
including the "OutCatAt" parameter. This specified the column
at which a category is to be written. The category will be
constructed from the first three characters of macro name specified
by the "Header" parameter. For example, the macro "DEATHSTR.IMC"
will have "DEA" as its category classification. Using a OutCatAt
causes the output to be fixed length. Any description in those
columns will simply be overwritten by the category.
6.0 Recompiling
CMPBBS uses QuickBasic source code that requires QB 4.5 or higher,
plus the assembler source code XMODEM.OBJ to calculate the CRC value.
It can be recompiled as follows:
bc CMPBBS /O/X;
link CMPBBS+XMODEM;
By Ken Goosens
19 February 1990
Contents
1.0 What is CMPBBS?
2.0 How CMPBBS Can be Useful to You
3.0 How to Set up and Run CMPBBS
4.0 An Example
5.0 Details and a Caution
6.0 Recompiling
1.0 What is CMPBBS?
CMPBBS is a utility for comparing two lists of files. The
first, your master list of files that you already have, is compared
to the second, a list of files from another source. Written
out is the ones new, that is, in the other source and not in your
master. CMPBBS is distributed with the following files:
CMPBBS.BAS - Basic source code
XMODEM.OBJ - Assember subprogram required for recompiling
CMPBBS.DOC - This documentation
MASTER.DIR - Sample list of files you have
DEATHSTR.DIR - Sample list of files from BBS to compare to master
DISK1.DIR - Sample list of files from diskette to compare to master
CMPBBS.CFG - Configuration file to drive the master
2.0 How CMPBBS Can be Useful to You
CMPBBS has one main application: you maintain a list of files you
already have, for example, on your own BBS. Most BBS's make a list
of all downloadable files available for downloading. You get
lists of files that are on other BBS's. The 1st thing you want to
know is what's new on the other lists. CMPBBS is designed to tell
you exactly what is new.
CMPBBS is design to run extemely fast on large numbers of files. For
example, it will compare lists with 8000 entries in about a minute on
a 10mhz 80286. It has no trouble handling up to 30,000 files.
You might want to select the new files for downloading.
But CMPBBS is designed especially to support another type of application:
namely, SysOps who want to maintain a list of files available
"off line", that is not their own BBS. With RBBS-PC 17.3A, you
can automatically inform callers on what other boards the
files are on. Or you can maintain your own files off line on removable
media, such as floppy disks, and log requests for those files for you
to inspect and restore the next day. Many SysOps maintain lists of
offline files but they are inconvient to use because they must be noted
as being off line in the directories, and require the caller to leave
a message. RBBS-PC 17.3A makes this work so automatic that it is easily
to set up and maintain for all involved.
If you are running RBBS 17.3A or higher, just install the Fast File
System and get other SysOps to give you their updated file lists. You
can become a kind of "library" resource on where all files in the area
can be found.
3.0 How to Set up and Run CMPBBS
CMPBBS gets its directions from a configuraton file whose default name
is CMPBBS.CFG. This file specifies what your master file is, what
lists to compare it to, and what to write the new files to. Just
load up CMPBBS.CFG into a full screen editor and following the
commented directions in the file. You can specify the configuration
file to use on the command line, e.g. to use CMPBBS.KG simply say
CMPBBS CMPBBS.KG
CMPBBS will display the parameters it reads from the configuration
file and give you an opportunity to confirm that you want to run with
them as specified. You can bypass the confirmation by putting "/B"
on the command line to make the program run batch.
Note that you can compare up to 200 lists in a single run.
4.0 An Example
Enclosed is an operating example:
MASTER.DIR - list of files you have
TEST1.DIR - list of files to compare to your master
TEST2.DIR - list of files to compare to your master
CMPBBS.CFG - Configuration file to drive the master
Type in
CMPBBBS
and in response to the displayed screen, press Enter. If you compare
MASTER to TEST1 and TEST2, you will see that each contains two new files
not in MASTER, which are written out to NEWLIST.DIR.
out the ones in the 2nd and not in the 1st.
5.0 Details and a Caution
CMPBBS is enormously fast - magnitudes faster than other BBS compare
programs. This lightning speed is achieved by using CRC checks rather
than the file name, which allows the entire index to be held in memory
and to be searched in a single step. But this lightning speed occurs
at a theoretical cost:
o it is possible that two distinct file names will be treated
as the same.
Possibly, but very unlikely. Since most BBS lists will overlap
heavily and there are relatively few new files, the likelihood of
having a file that is really new but not treated as new (because
its CRC is the same as another file on the list) is tiny but not
zero. BUT IF YOU MUST BE CERTAIN THAT EVERY NEW FILE IS REPORTED
AS NEW, DON'T USE CMPBBS. For the applications it was designed to
cover, occasionally missing a new file is a small price to pay for
the enormous increase in speed of execution.
CMPBBS allows the column in which the file name begins to be
specified in the configuration, separately for the master directory
and the dirs to be added. CMPBBS does expect the file name to be in
the 12 characters at and following the starting column. CMPBBS
also requires that the file name be in ALL CAPS.
The file name can either have a period separating the prefix
and extension, or a space, and will be treated the same in each case.
However, if a space separator is used, the extension must begin in
the 10th column of the name field. The line will be skipped if
the first column of the name field is a space or one of the
following characters: /[]|<>+=;,?*
The outputted list of new files can be used as listable directory.
If processing multiple sources, you will probably want the source
to be identified in the output. This can be accomplised by
including the "OutCatAt" parameter. This specified the column
at which a category is to be written. The category will be
constructed from the first three characters of macro name specified
by the "Header" parameter. For example, the macro "DEATHSTR.IMC"
will have "DEA" as its category classification. Using a OutCatAt
causes the output to be fixed length. Any description in those
columns will simply be overwritten by the category.
6.0 Recompiling
CMPBBS uses QuickBasic source code that requires QB 4.5 or higher,
plus the assembler source code XMODEM.OBJ to calculate the CRC value.
It can be recompiled as follows:
bc CMPBBS /O/X;
link CMPBBS+XMODEM;
December 18, 2017
Add comments