The DX Marathon is an annual recognition re-started by CQ Magazine in 2006. It is the sum total of the number of different entities plus the number of CQ zones worked in a given year.

This conversion program for Microsoft Windows reads an ADIF log file, extracts all of the unique entities and zones worked, and writes the corresponding QSO data to the official Scoresheet.

The current version of the conversion program is 24.2 and was released on 9 March 2024. You can click on this link to see the version history and download the installation program.

This program should function on Windows 7 or later. Windows XP is no longer supported.

ADIF to DX Marathon

IMPORTANT: The conversion program will only recognize QSOs made during the year it was designed for. So for example, the 2020 conversion program (v.20.10) will only work with QSOs made during 2020. You can can NOT use it for QSOs made in 2019 or 2021 (or any other years). Each new release of the conversion program will occur shortly after the current program expires, typically at the end of January the following year.



Installing the Conversion Program

IMPORTANT: If you have an older version of the conversion program installed (version 20.2 or earlier), you must uninstall that version first before installing the new version 20.10 (or later).

To install the program for the first time, go to the Version History below and click on the highest version number (most recent date) at the top of the list, which is a link to that version of the program. This will download the installation program. When the file is saved on your computer, just open it to begin the installation. The default installation path is:

C:\ADIF to DX Marathon

You may install the program anywhere you wish, but avoid the C:\Program Files directory, due to possible file protection issues with Windows Vista and later.

During installation, you may get a pop-up warning from Microsoft Defender SmartScreen. One way to get past the warning is described here:

  1. Right click on installer(.exe)
  2. Select properties option.
  3. Click on checkbox to check Unblock at the bottom of Properties.

IMPORTANT: If this is the first time you are installing the conversion program, you will need to download and install the following Visual C++ library from Microsoft (vc_redist.x86.exe):

Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019direct download

Click on the "direct download" link above. When prompted, save vc_redist.x86.exe to your computer and open it to begin the installation.

If you try to run the conversion program, and you see any pop-up error messages from Windows like the following, then the Visual C++ library is not installed correctly:

This Microsoft library is not included in the installation program in order that you install the most recent version available.

HINT: Inside of the installation directory, create a new folder for the current year, i.e.:

C:\ADIF to DX Marathon\2020

This is a good place to download the Scoresheet as well as a place to save your ADIF log file for that year.

Updating the Conversion Program

Once you have installed the program, subsequent installations (updates) will be installed in the same directory. To change the installation directory, you will first have to uninstall the program before installing the new version. Any callsign configurations that you created can be found in the old installation directory. You can copy them to the new installation directory if you wish.

Export Your Log to ADIF

The conversion program requires your logbook data in ADIF format. The procedure for creating this ADIF log file is specific to each logging program, so those particular details are not included here. If you have the option, only export QSOs for the year of interest. It's OK if you can not do this, because the conversion program will only use QSOs from the current award year. However, it may take longer to process the ADIF log file because the program still has to read all QSOs that are not for the current year.

Each QSO record in the ADIF log file must contain the following fields:

In addition, the QSO record in the ADIF log file may contain the following field:

Most logging programs will export all of the required fields automatically. If the DXCC and/or CQZ fields are not present, the program will not be able to determine the DXCC entity and/or the CQ Zone of the station you worked. Many contest logging programs are unable to write these fields to the ADIF log file (especially the country information). General-purpose logging software like DX4WIN, DXKeeper, Ham Radio Deluxe, Logger32, N3FJP's Amateur Contact Log, etc. usually generates the desired fields in the ADIF log file. If neither DXCC nor CQ Zone fields are present in any QSO record, the program will not convert your log. It will assume the input file is not an ADIF log file.

The conversion program will ignore QSOs with the any of the following properties:

While reviewing your completed Scoresheet, if you don't like a QSO that the program chose, enter a different one by hand. Alternately, mark the QSO invalid in your logbook using one of the above techniques, export your log to ADIF and the run the conversion program again. If you changed the QSO by hand, then run the conversion program again, that change will be lost. QSO data is not retained from one conversion to the next.

Running the Conversion Program

After installing the program, double-click on the "ADIF to DX Marathon" icon on your Windows desktop or in the Start menu. You should see a window like the following:

ADIF to DX Marathon

The Title Bar shows the year and version number (the version number is the same as the last two digits of the year). Make sure you are running the correct program version for the year of interest.

The window is divided into four main areas:

  1. Operator Information - includes callsign, name, location and E-mail address.
  2. Inputs - select an Entry class. Optionally you may select QSOs on a single band, or a single mode, or both. In addition, you need to select the ADIF log file for input, the official Scoresheet, and an output file to be filled in from your log. The official Scoresheet must be in Excel format (not OpenOffice format). The program will report an error if the selected Scoresheet is not in the correct format, or for the correct year.
  3. Actions - this is a set of buttons that tells the program to perform a particular task.
  4. Antenna Description - this field is required to be filled out if your entry is in the Limited or Formula class.

IMPORTANT: Required fields are shown with bold labels next to them. These fields are:

If a required field is not filled in, the program will not allow you to fill in the Scoresheet.

The Actions are as follows:

In addition, there is a direct link to the DX Marathon website, just below the Exit and Help buttons.

There is an optional check-box next to the word "Confirmed", just below the Action buttons. The program will normally choose the first QSO it finds in your ADIF log file for each country and/or zone credit. However, if the "Confirmed" box is checked, the program will give preference to QSOs that are confirmed over QSOs that are not confirmed. This is to give you additional protection from "busted" callsigns, because QSOs that are confirmed through QSL card, Logbook of the World, etc. are unlikely to be busted. The program recognizes the following confirmation types:

The Callsign field is a drop-down list. To add a new callsign, click on the arrow and choose (SELECT OR NEW). Type in the new callsign and begin filling out the rest of the Operator Information. To select a previously used callsign, use the drop-down list. This will restore that callsign's settings for Operator Information, Entry class and Antenna Description. To delete a callsign you may have entered in error or that is no longer needed, select that callsign using the drop-down list then click on the Delete button.

If you have only used the program with one callsign, the next time you start the program, that callsign and all of its settings will be restored automatically. If you have entered multiple callsigns, you will need to select one from the list.

Sometimes the programmer may change what is stored in the configuration file for each callsign. In that case, when you select a previous callsign, you may see a pop-up window like the following:

The program will reset all the Operator Information as well as the Entry Class and Antenna Description. You will need to type in all the information again. This is to ensure that no corrupt data remains in any of the fields.

When selecting a different callsign, both the ADIF Log and Output File fields will be reset to empty. This is to ensure that you select the correct ADIF log and output file names for the newly-selected callsign.

Under Inputs, select your Entry class (Unlimited, Limited or Formula). Click the ADIF Log button and navigate to the location of the ADIF log file that you saved from your logging software. Double-click on the file name, or click once and choose Open. Do the same for the Scoresheet. This is the official Scoresheet, in Microsoft Excel format, that you downloaded from the DX Marathon website. Finally, click the Output button and choose a name for the resulting (populated) Scoresheet. If you have filled in the Callsign field in the user section, the program will suggest naming the output file with your callsign (i.e. AD1C.xls), but you can change it to whatever you wish. Do not make the output file name the same as the Scoresheet! The program will report an error if you to do this.

NOTE: Please do not rename the official scoresheet that you downloaded. The conversion program expects the filename to have certain properties. If you rename the scoresheet, the conversion program may not recognize it as a valid scoresheet.

In addition to Entry, there are two additional drop-down selection boxes for Band and Mode. The default selection is all bands, all modes. You may use either or both of these to select QSOs for only a particular band or mode (or band/mode combination). There are electronic certificates available for the highest DX Marathon score on certain bands and modes. See the DX Marathon website for details. Note that these two selections are saved with the callsign configuration and will be restored when you select that callsign again. Be careful to review them in case you choose to submit an entry for a different band and/or mode.

After you have filled out the operator information and Entry class, and selected the input and output files, the program window should look something like this:

ADIF to DX Marathon

To begin the conversion, click on the Convert button. The program first checks that all required (bold) fields have been filled in and are valid, and will report any that are incorrect. You will need to correct these errors before you can proceed.

When the conversion has finished, you should see a pop-up message like the following:

At this point, the program will offer to open the filled-in Scoresheet using whatever default program your installation of Microsoft Windows uses to work with spreadsheet files. This is a good time to inspect the Scoresheet for errors, as well as to fill in any missing entities (like IT9 etc.) and/or the optional Comments section at the bottom. If there are no changes required, it is OK to simply close the Scoresheet.

If you forget to open the Scoresheet, or want to take a look at a different one, click on the View button. This will bring up a file browser showing any Excel (.xls) Scoresheets it finds. You can select any file to view it.

NOTE: Once you open the resulting Scoresheet, it will remain open even after after you exit the ADIF to DX Marathon program (by clicking the Exit button). Leaving the Scoresheet open will prevent it from being over-written. If you try to Convert again without closing the Scoresheet first, you may see an error like the following. You will need to close the Scoresheet first before clicking the Convert button again.

You can use the Convert button multiple times, for example to experiment with different band/mode selections. Note that each subsequent conversion (after the first) will warn that you are about to over-write the existing output file. This acts as a reminder to select a different output file name if you want to keep the results of each conversion. The first time you Convert after changing callsigns, you will not get this warning.

You may continue to maintain your Scoresheet throughout the year, either by converting a new ADIF log file or by hand. Remember that the program does not retain any QSO data from the last time that it ran. Therefore, you must select the the ADIF Log, Scoresheet and Output files each time you run it.

When you are satisfied with the contents of your Scoresheet, submit it via the online submission page.

Log File

When the conversion is complete, the program will write a log file in the same directory as the scoresheeet. The log file name is the same as the output file name, but with a ".log" file extension.

The easiest way to view the log file is to click on the View button. When the file window appears, use the drop-down arrow in the bottom right, next to "XLS Files", and change the selection to "LOG Files". Then in the main window, double-click on the log file you would like to view.

The log file contains information similar to what is shown below:

          Converted on Wed Feb 10 14:27:13 2021
          Windows 10 [Version 10.0.19042]
          Microsoft Visual C++ Redistributable version 14.28.29334
          LibXL version:
          INFO: DX4WIN ver.
          DXCC: Replaced KN4QAV with K7ER because it is confirmed
          WAZ:  Replaced N0LMS with K9UFA because it is confirmed
          WAZ:  Replaced KN4QAV with W2AH because it is confirmed
          DXCC: Replaced CO7MTL with CO8NMN because it is confirmed
          WAZ:  Replaced CO7MTL with CO8NMN because it is confirmed
          DXCC: Replaced KL7SB with AL1G because it is confirmed
          WAZ:  Replaced KL7SB with AL1G because it is confirmed
          DXCC: Replaced KH6ZM with WH7T because it is confirmed
          WAZ:  Replaced KH6ZM with WH7T because it is confirmed
          WAZ:  Replaced PZ5RA with HK4GSO because it is confirmed
          DXCC: Replaced G3ORY with G3VMW because it is confirmed
          912 QSO(s) were read from the ADIF file.
          28 entities are confirmed.
          19 zones    are confirmed.
          0 QSO(s) had no DXCC prefix.
          0 QSO(s) had a bad DXCC prefix.
          0 QSO(s) had no CQ zone.
          0 QSO(s) had a bad CQ zone.
          0 QSO(s) had no Callsign.
          0 QSO(s) had no Date.
          0 QSO(s) had no Time.
          0 QSO(s) used TIME_OFF instead of TIME_ON.
          0 QSO(s) were Maritime Mobile.
          0 QSO(s) were marked as Invalid.
          0 QSO(s) had no Band or Frequency.
          0 QSO(s) had mismatched Band and Frequency.
          0 QSO(s) had a bad Band.
          0 QSO(s) had a bad Frequency.
          0 QSO(s) had a bad Mode.
          0 QSO(s) were for the wrong Year.
          0 QSO(s) were not for the selected Band.
          0 QSO(s) were not for the selected Mode.

The INFO line above shows the name and version of the software that produced the ADIF file used as input. After that are some informational messages as the program processed the ADIF log.  These messages include the reason that any logbook QSOs were rejected. If the Confirmed box is checked, the program will report the total number of confirmed entities and zones in your submission. Finally is a summary of all the different informational messages that were reported.

Non-DXCC Entities

From the Official CQ Countries and Zones list: "This list of separate countries (entities) for the CQ World Wide DX Contest and the CQ DX Marathon is based on a combination of the ARRL DXCC list, additional entities on the WAE (Worked All Europe) list and the Italian islands of Lampedusa (IG9) & Pantelleria (IH9), in CQ Zone 33 off the coast of North Africa. This provides a total of 346 entities, based on 340 DXCC entities, five additional WAE entities (GM/Shetland, IT/Sicily, TA1/European Turkey, 4U1VIC, JW/Bear Is.) and African Italy. "

The conversion program attempts to determine the additional entities listed above from your QSOs based on callsign, prefix or IOTA reference number:

The above list is complete at the time this was written. However, there could be other valid callsigns of which the program is unaware. Make sure to check your Scoresheet after the program finishes.

The program will attempt to automatically identify QSOs with these entities if the QSO records in the ADIF log file contain enough information to do so (callsign or IOTA). Otherwise, you will have to find the information in your logbook yourself and fill in those entities in the Scoresheet by hand. If you do enter a QSO by hand, make sure that the QSO wasn't already used as credit for another entity. For example, you can not count a Bear Island (JW) QSO as credit for both Svalbard and Bear Island, so you may need to find another Svalbard QSO in your log to receive credit for that entity.

NOTE: The IOTA information for some of these special entities must be filled in the same way for all QSOs in your logbook. For example, JW9JKA was very active in 2013 from Bear Island, IOTA EU-027. If you fail to fill in that IOTA for any of your JW9JKA QSOs, i.e. by leaving the field blank, or using EU-026 for Svalbard instead, then the program may give you JW/Svalbard credit for one of those JW9JKA QSOs, when he was really on Bear Island. You could also have this problem with GM/Shetland, because the conversion program looks for IOTA EU-012 to differentiate Shetland and Fair Isle from the rest of Scotland. Remember, garbage in, garbage out.

Bug reports, Feature requests

This program was re-written from scratch in 2013 and again in 2020. There are bound to be mistakes in the program, or things that may not work exactly as described above. If you want to report a problem (either program or documentation), or request a feature, send your request to the Webmaster E-mail address at the bottom of this page.

Version History:

To download the installation program, click on the hyperlink containing the version number and date.

Ver 24.2 - 9 March 2024
Updated to work with the official scoresheet from the DX Marathon website
Removed references to CQ (Magazine)
Updated LibXL to version 4.2.0
Ver 24.1 - 18 January 2024
Feature: Updated for 2024, using the unofficial scoresheet from K9EL's website
Feature: Reads and checks bad spots from the DX Marathon website
Feature: If Confirmed QSOs are preferred, the log file will contain a list of entities and/or zones that are not confirmed
Feature: Non-portable callsigns from Canada are preferred over US callsigns for CQ Zones 3, 4 and 5
Bug fix: Mode errors detected while reading in the ADIF file were reported in the log file as Band errors
Bug fix: Now works through January 5 (for the previous year), was January 31

Ver. 23.2 - 29 January 2023
Bug fix: Changed access to DX Marathon website (use http:// instead of https://)
Bug fix: Added a number of DXCC entities to the Country drop-down list
Ver. 23.1 - 6 January 2023
First release for 2023
Feature: Windows XP is no longer supported
Bug Fix: New URL for Help button
Updated Microsoft compiler to Visual Studio 2022
Updated LibXL to version

Ver. 22.1 - 9 January 2022
First release for 2022
Feature: Added a hyperlink to open the CQ DX Marathon website
Feature: Added a button to download and install program updates
Feature: The program will check your logged callsigns against Bad Spots and Invalid Callsigns from the Helpful Hints page
Bug Fix: After typing ALT-F4 or clicking the 'X' in the upper right-hand corner, the program will now remain open if you answer No
Bug Fix: Clicking the Delete button with no callsign selected results in a pop-up warning

Ver. 21.1 - 10 February 2021
First release for 2021
Log file is written to the same directory as the output Scoresheet with the same name and .log extension
Write # of confirmed entities and zones to log file
Write Visual C++ library version to log file
Write LibXL version to log file
Updated to LibXL

Ver. 20.13 - 2 January 2021
Discard ADIF fragments instead of reporting an error
Ver. 20.12 - 27 December 2020
Allow longer lines in ADIF file (up to 5K characters) to support Log4OM
Fixed some ADIF parsing errors related to multi-line ADIF fields and truncated QSO records
Fixed ADIF error reporting, i.e. display pop-up instead of crashing the program
Ver. 20.11 - 17 December 2020
Portable callsigns didn't work properly
Improved checking for valid Scoresheet
Updated to LibXL
Ver. 20.10 - 9 December 2020
This is a complete re-write from scratch! This version is a native Windows program written in Visual C++, using the LibXL library to read and write Excel files. Unlike the previous version written in Perl in 2013, this version creates a populated Scoresheet that can be uploaded to the CQ DX Marathon submission form without the user having to manually open the Scoresheet and save it again. Furthermore, the installation program is only about 2.5M bytes, whereas the previous version was 8M bytes. And the program itself (without the LibXL .dll) is only about 100K bytes, which should ultimately make updating quicker.
Ver. 20.2 - 28 June 2020
Fixed a problem with Myanmar, XZ
Updated to the 2020 Helpful Hints page
Ver. 20.1 - 26 January 2020
First public release for 2020
Recognize invalid callsigns from the 2020 Helpful Hints page. These callsigns will not be added to your scoresheet.

Ver. 19.1 - 17 January 2019
First public release for 2019
Recognize invalid callsigns from the 2019 Helpful Hints page. These callsigns will not be added to your scoresheet.

Ver 18.3 - 16 December 2018
Bug fix: Month could sometimes be a decimal value, rather than an integer
Bug fix: Fixed pop-up hint when editing values in the MM (month) column
Ver. 18.2 - 16 December 2018
4U18FIFA, 4U1XMAS and 4U2U count the same as 4U1VIC
Recognize invalid callsigns from the 2018 Helpful Hints page. These callsigns will not be added to your scoresheet.
Fixed some cases where a callsign could be incorrectly identified as Sicily, IT
Ver. 18.1 - 28 January 2018
First public release for 2018

Ver. 17.1 - 11 January 2017
First public release for 2017

Ver. 16.2 - 17 April 2016
Don't submit QSOs with invalid callsigns
Added callsigns of stations in European Turkey (TA1)
Ver. 16.1 - 18 February 2016
First public release for 2016

Ver. 15.3 - 8 January 2015
Limited Class entries must (also) provide detailed antenna description.
Ver. 15.2 - 31 October 2015
Added 4U1A and 4U70VIC as Vienna International Center
Ver. 15.1 - 18 January 2015
First public release for 2015

Ver. 14.4 - 4 August 2014
Added support for 60-meter band
4U0R counts for ITU Vienna Int'l Center, 4U_VIC
Requires scoresheet version 2014.3 or later
Ver. 14.3 - 6 April 2014
Fixed EXIT problem caused by class drop-down list showing same ≤ symbol as scoresheet
Ver. 14.2 - 6 April 2014 (bad version)
4Y1A and C7A count for ITU Vienna Int'l Center, 4U_VIC
Class drop-down list shows same ≤ symbol as scoresheet
Adjusted drop-down list width slightly for Class, Band and Mode
Ver. 14.1 - 13 January 2014
First public release for 2014
Feature: Added Limited class
Feature: Give preference to confirmed QSOs (off by default)
Feature: Try to choose different QSOs for entity and zone (off by default)
Fix: More appropriate error message when program used with log from wrong year
Fix: Don't drop leading zero(s) in Postal Code (or other User Info) field(s)
Fix: Don't round times after 23:59:50 UTC to 2360 UTC

Ver. 13.3 - 1 January 2014
Program expired one month too early (in January)
Ver. 13.2 - 12 October 2013
Fix for some logging programs that export non-countries like Kosovo/Z6 with a DXCC ID of 0 (zero)
Ver. 13.1 - 22 April 2013
First public release for 2013
All-new program to fill in Scoresheet automatically

Ver. 5.2 - 5 January 2013
Fixed bug ignoring ADIF file header (before <EOH>)
Support lines up to 4096 characters
Recognizes callsigns beginning with Z6 as Kosova
Ver. 5.1 - 4 November 2012
LSB and USB are valid PHONE modes
Ver. 5.0 - 5 May 2012
Prefix for Republic of South Sudan is now Z8
Updated modes for 2012

Ver. 4.1 - 4 November 2011
Added ST0, Republic of South Sudan
Ver. 4.0 - 27 February 2011
Updated for 2011, still works for 2010
Default year now changes in February instead of March

Ver. 3.0 - 26 October 2010
Added new PJ entities for 2010. The old ones count too!
/MM QSOs do not count

Ver. 2.1 - 4 November 2008
Uses ADIF input instead of DX4WIN input
Ver. 1.13 - 6 April 2008
Added placeholder for Kosova, YU8
Ver. 1.12 - 16 March 2008
Updated for 2008
Ver. 1.11 - 12 January 2008
Compatible with final CQ DX Marathon spreadsheet for 2007