Database Files

From Win-Test Wiki
Jump to: navigation, search

Win-Test has a feature called 'exchange guessing', which aims to fill in the exchange for a specific callsign by searching a database of known contesters' callsigns and their usual exchanges in a database file.

These database files are available from

Installing a Database file


Win-Test database files come in a binary format (.DTB). The Win-Test Team provides several of these files at Look for the .DTB or .ZIP files (larger database files are collected in .ZIP archives).

Here is a - possibly incomplete - list of the database files available and for which contests they are being used.

AGCW_HNY.DTB       AGCW Happy New Year contest
ARI.DTB            ARI 40/80 contest
ARIDX.DTB          ARI DX Contest (DX side)
ARI_SEZIONI.DTB    ARI Sezioni Contest
ARRL_160_DX.DTB    ARRL 160 m (contains US stations only)
ARRL_160_USVE.DTB  ARRL 160 m (contains US and DX stations)
ARRL-ALL.DTB       ARRL 10 m, CQWW 160 m contests, NA Sprint, NCCC Sprint
ARRL-DX.DTB        ARRL DX contest (use if you are inside US/VE)
ARRL-USVE.DTB      ARRL DX contest (use if you are outside US/VE), or ARRL RTTY Roundup
CQIR.DTB           CQIR contest
CQWW.DTB           CQWW DX, GACW and JIDX contests
EUSPRINT.DTB       EU Sprint contest
EU_HF.DTB          EU HF contest
HADX.DTB           HADX contest
HELVETIA_DX.DTB    Helvetia contest (DX side)
HELVETIA_HB.DTB    Helvetia contest (HB side)
IARU_HF.DTB        IARU HF contest
IOTA.DTB           IOTA contest (Islands activities)
KCJ.DTB            KCJ (Keyman's Club of Japan) contest
KOS.DTB            King Of Spain contest (from 2005)
PACC_DX.DTB        PACC contest (DX side)
PACC_PA.DTB        PACC contest (PA side)
REFHF.DTB          REF HF contest
RSGB.DTB           RSGB 160 m and RSGB 21/28 (DX side) contests
RSGB_CMW.DTB       RSGB Commonwealth contest (BERU)
SCC.DTB            SCC RTTY Championship
SPDX.DTB           SP DX contest (DX side)
STEW-PERRY.DTB     Stew Perry contest
UBADX.DTB          UBA DX contest
UBA_SPRING_DX.DTB  UBA Spring contests (DX side)
UBA_SPRING_ON.DTB  UBA Spring contests (ON side)
UFT_HF.DTB         UFT HF contest
WAG_DL.DTB         WAG Contest (DL side), DARC Xmas Contest and DARC 10 M Contest
WAG_DX.DTB         WAG Contest (DX side)
YODX.DTB           YO DX Contest (DX side)

For more details, please look at the READ_ME.TXT file in the database site directory.


After downloading, the corresponding .DTB files need to be copied to the Win-Test 3 installation directory or the Win-Test 4 application data directory. Zip files have to be unpacked before they can be used by Win-Test (which loads .DTB files only).

For Win-Test version 4, save database files in:

  • Windows XP: C:\Documents and Settings\All Users\Application Data\Win-Test\databases\
  • Windows Vista and Windows 7: C:\ProgramData\Win-Test\databases\

For Win-Test version 3, save database files in:

  • C:\Program Files\Win-Test\ (or the Win-Test installation directory)

See Check Partial and Np1 Files - Location for more info. on how to view these often-hidden directories.

Win-Test will then load automatically, at start-up, the corresponding database file (according to the actual selected contest), if those files are available.


Data in .DTB files may be updated with more recent exchange data from your own logs. Simply open a log file, or import a Cabrillo file for any particular contest, and select File | Update database from the Win-Test menu. To see which .DTB file was updated, select File | Explore | /databases directory, View Details, and click "Date Modified" to sort the list by date. See also Brewing your own Database file.

Warning: If a contest-specific database file such as cqww.dtb is available, it will also be used by the Check Partial windows instead of master.scp, which may not be wanted. To override this, use file name default.scp instead of master.scp.

Exchange Guessing

Other than the Super Check Partial and N+1 functions in Win-Test, exchange guessing helps the operator to "know what to expect" in the course of a contest QSO. Many contests come with a fixed exchange, be it a county or regional identifier, a QTH locator or a callsign specific identifier. This type of information can be "guessed" by the software so that the operator only has to confirm or correct this information.

Please note that this feature is different from the Super Check Partial database (MASTER.SCP, DEFAULT.SCP, HF.DTB, VHF.DTB) and also different from the Extra data files (XDT). See Check Partial and Np1_Files.

Setting up Exchange Guessing in Win-Test

After the database files have been installed, we need to activate the exchange guessing.

To do this, select Tools | Data entry | Exchange guessing from the Top Menu.

Activate Exchange Guessing

Three options are available:

  • Pressing the spacebar - this will fill in the exchange upon entering a callsign and hitting spacebar to move the entry cursor to the report field. This is the default setting.
  • Automatically - this will fill in the exchange as soon as you have entered the last character of the callsign and Win-Test has found an entry for it in the database file. Since this is a more resource intensive operation than the 'Pressing the spacebar' option, it is not recommended for slow, or low-end, computers.
  • After timeout - this option will fill in the exchange after a certain amount of time has elapsed without changes to the callsign.

Now, when you enter a callsign in the log entry area, the pre-guessed report will automatically come up. Also, the Check Partial window can show the same information, if it has been enabled by checking the Display exchange option in the context menu.

The Check Partial Context menu allows you to see pre-guessed report information - this information is in brackets right to the callsign.
Make sure you have loaded the correct version of the DTB file. This window is brought up via the context menu of the Check Partial window by selecting "Used files list...".

Moreover, you can also verify which are the loaded database files through the Used files list... option, in the context menu (see above).

Also the Band Map can show the guessed exchange information and highlight the stations accordingly, if the Display options | Exchange has been checked in its context menu.

Band map with Exchange Guessing enabled
Exchange Guessing enabling context menu

A note about Exchange Guessing

Exchange guessing is provided as a feature, that is, to assist the operator. It is NOT recommend to be used as a replacement for your ears! :). You should always try to hear the exchange sent from the station you are working as there can be discrepancies in the database files.

Brewing your own Database file

Beware: This section is for the brave and experienced programmer and power user!

Win-Test's .DTB files come in a binary format and - by default - are not editable with a simple tool like a text editor or a word processor. Having some programming expertise, you can still sucessfully create/replace an existing .DTB file with your own version. Remember, however, that you can not make Win-Test load a database it doesn't know.

The file strutcture of the database files is straightforward and simple: As an example, take a look at the first bytes of the WAG_DL.DTB file used for looking up DOKs:

00000000   44 41 30 41  41 00 00 00  00 00 00 00  00 00 52 31  DA0AA.........R1
00000010   37 00 00 00  00 00 00 00  00 00 44 41  30 42 41 59  7.........DA0BAY
00000020   00 00 00 00  00 00 00 00  42 30 36 00  00 00 00 00  ........B06.....
00000030   00 00 00 00  44 41 30 43  42 00 00 00  00 00 00 00  ....DA0CB.......
00000040   00 00 59 32  34 00 00 00  00 00 00 00  00 00 44 41  ..Y24.........DA
00000050   30 43 57 00  00 00 00 00  00 00 00 00  55 32 33 00  0CW.........U23.
00000060   00 00 00 00  00 00 00 00  44 41 30 44  49 47 00 00  ........DA0DIG..

From that hex dump we can see that the file consists of records of equal length of 26 bytes. The callsign is stored as a null-padded string in the first 14 bytes, the corresponding information (the DOK) is contained in the following 12 bytes, also null-padded.

As another example, let's take a look at the file VHF.DTB, which contains stations active on the VHF/UHF bands and their corresponding QTH locators:

00000000   34 4E 31 42  00 00 00 00  00 00 00 00  00 00 4B 4E  4N1B..........KN
00000010   30 35 43 52  00 30 31 39  35 00 39 41  31 42 00 00  05CR.0195.9A1B..
00000020   00 00 00 00  00 00 00 00  4A 4E 38 35  4A 58 00 30  ........JN85JX.0
00000030   31 39 35 00  39 41 31 42  20 00 00 00  00 00 00 00  195.9A1B .......
00000040   00 00 4A 4E  38 35 4F 56  00 30 31 39  35 00 39 41  ..JN85OV.0195.9A
00000050   31 43 43 55  00 00 00 00  00 00 00 00  4A 4E 38 35  1CCU........JN85
00000060   4C 49 00 30  31 39 35 00  39 41 31 43  45 51 00 00  LI.0195.9A1CEQ..

Here you can basically see the same file structure with the exception that the information field is actually split in two fields, one containing the information to display, and another one which contains information about the content itself - namely when this very piece of information was verified last - here "0195" meaning "January 1995".

Using a programming environment like Perl, you can create a simple application that will do the job for you. Here is a sample. Please feel free to copy and adapt to your needs.

The program processes a number of .db plaintext files (line 3). To work around duplicate information (e.g. one station is listed with several different locators), a space character is appended to the callsign (line 11). True duplicates are simply eliminated (line 7). Once the data collection process is finished, a new .dtb file is created (line 21) and - using Perl's pack() function, the records are created (line 23) and written to the file (line 24). The date information is left at 0195 for simplicity. This could certainly be elaborated to some detail.

The final product has to be renamed to VHF.DTB before Win-Test will start using it.

 1 #!/usr/bin/perl
 3 foreach $f (<*.db>) {
 4     open(IN,$f);
 5     while(<IN>) {
 6         ($c,$q) = split;
 7         goto DONE if (length($c) < 1);
 8         if (defined($m{$c})) {
 9             goto DONE if ($m{$c} eq $q);
10             while (defined($m{$c})) {
11                 $c .= ' ';
12                 goto DONE if ($m{$c} eq $q);
13             }
14         }
15         $m{$c} = $q;
16         DONE:
17     }
18     close(IN);
19 }
21 open(OUT,"> vhf_new.dtb");
22 foreach (sort keys %m) {
23     $r = pack("a14a6xa4x",$_,$m{$_},"0195");
24     print OUT $r;
25 }
26 close(OUT);

After all, if you can contribute updated .DTB files of reasonably good quality, the Win-Test team will be happy to incorporate them into their distribution which is available for free on the internet.

See also

Some other methods, to create/update DTB-Files, have been described by F6FVY in the WT Support forum (see: