Analyze Contest Passing

The PASS program reads a Cabrillo log and reports the QSOs that were passed
(moved) from one band to another. This is a command line utility meant to
be run from a command prompt within DOS or Windows.

Version 3.1 of the program was released on 6 April 2014. Click on
this link to download the program. Click on
this link to see the Revision History.

Installation:

Extract the contents of the .ZIP file to a directory on your computer, preferably the same
one that contains your contest log and country file. The program is not
graphical – it's meant to be run at a DOS prompt or in a CMD window under
Windows. The ZIP file contains two versions of the program:

pass.exe

This version is for DOS only

pass_win.exe

This version is for Windows XP and higher

Usage:

This is the command syntax for running the program (do not actually type the <>
or [] characters). Arguments enclosed by [square brackets] are optional. You can
also see the command line syntax by running the PASS
program at the command prompt without any arguments:

pass [-min ] [-cty <CTY.DAT>] <CONTEST.LOG> [CONTEST.TXT]

-min is used to set the length of the pass "window" in minutes.
This means that two QSOs with the same station must occur within this time limit.
The default is five (5) minutes if -min is not specified.

-cty is used to specify the location of a country file that will help
determine whether the pass resulted in a new multiplier. It's best to use
the same country file you logged the contest with. If you don't specify a
CTY.DAT file, the program will still run and show your passes, it just won't be
able to identify new multipliers. The program can read any of these
country file formats: CTY.DAT, WL_CTY.DAT or CTY_WT.DAT (the file name
CTY_WT_MOD.DAT is too long for DOS).

The contest log must be in Cabrillo format. If another
format is given, the program will exit with an error.

If the output file name is not given, the program output is written to the
user's command window.

9H3WW was worked on 40 meters and passed to 80 meters. 9H was a new
multiplier (*) on both bands. It was "new" on 40 meters at the time,
however another 9H was worked on that band later in the contest.
It was "unique" on 80 meters because no
other 9H was worked on that band during the contest.

9Y4ZC was worked on 10 meters and passed to 15 meters. 9Y was a new
multiplier (*) on both bands. It was also unique on both bands; no other 9Y was
worked on those two bands during the contest.

AH6OZ was worked on 15 meters and passed to 20 meters. The operator had
previously worked KH6 on 15 meters, so it was neither new, unique or a
multiplier. It was a new multiplier on 20 meters at the time, however another KH6 was worked
on that band later in the contest.

DK4JT was worked on 15 meters, then passed to 20 meters, and then passed from
20 to 10 meters. This was not a new multiplier on any band, just a new QSO on
all three bands, assuming that neither the first QSO nor the passes resulted
in a duplicate contact.

Limitations:

The QSOs listed may not necessarily be passes. For example, the
operator could have worked a DX station in the multi-multi class, and that DX
station told the operator where to find them on another band.

The software to determine the country (multiplier) from the callsign is
not perfect. The program also does not take new CQ zones into consideration as a new
multiplier (nor ITU zones, nor ITU HQ stations, etc.).

The log must be in chronological order. If not, the output is unpredictable.

Errors:

The program can report two types of errors when reading the
Cabrillo log (aside from reporting that the log file is not in Cabrillo format):

ERROR: Could not find multiplier for T95A

This means that the program could not determine the country
from the callsign. This usually indicates that the wrong country
file was used (either too old or too new).

ERROR [1]: Can't determine prefix for 4D71/N0NM

There are some callsigns that the program just can not
determine a country for. In this case, the "portable" part is
the same length (four characters) as the "home call" part. While
it may be obvious to a human, it is not obvious to a program.

The program writes these error messages to the console only, not to the output file.