Provided by: tlf_1.4.1-327-g7b714df-4_amd64 bug

NAME

       Tlf - amateur radio contest keyer/logging program for Radiosport

SYNOPSIS

       tlf [-?dilnrvV] [-f config_file] [-s user:password@host/dir/logfilename] [--debug] [--config=config_file]
           [--import] [--list] [--no-cluster] [--no-rig] [--sync=user:password@host/dir/logfilename] [--verbose]
           [--version] [--help] [--usage]

DESCRIPTION

       Tlf  is  a console (ncurses) mode general purpose CW keyer, logging and contest program for amateur radio
       operators.  It supports the CQWW, WPX, ARRL-DX, ARRL-FD, STEWPERRY, PACC,  FOC  Marathon  and  EU  SPRINT
       contests  as  well  as  a lot more basic contests, general QSO and DXpedition mode.  It interfaces with a
       Morse Code generator, a number of radios via the Hamlib library, and with a  DX  Cluster  via  telnet  or
       packet radio.  Tlf can project DX cluster data into the excellent Xplanet program, written by Hari Nair.

       Contest  operation  mimics the popular TR-Log program for DOS, the output file is TR-Log compatible.  The
       log can be exported in ADIF or Cabrillo 3.0 format.

       The program was written for console mode on purpose, which allows it  to  run  on  smaller  machines,  or
       remotely via SSH or a modem link.

       CW  keying via cwdaemon is fully supported, featuring direct mode for the keyboard and output to parallel
       and serial ports and speed and weight control from the keyboard, and band info  output  on  the  parallel
       port.   Likewise, CW keying via Hamlib is supported for rigs that feature the capability. Tlf can set the
       CW speed, and at the same time read back the speed if changed using the knob on the rig.

       For users of the K1EL series of “Win Keyers”, the winkeydaemon is available from GitHub.   Setup  is  the
       same as for cwdaemon(1).

       For radio control Tlf works with Hamlib (version >= 1.2.8), you can find it at www.hamlib.org.

       Tlf  provides  full TCP/IP networking between Tlf nodes, syncing/distributing log, packet data, frequency
       data, local talk, serial numbers, time sync etc.

OPTIONS

       Options given to Tlf on the command line.

       -?, --help
              Print a summary of options to the screen and exit.

       -f config_file
       --config=config_file
              Start with a non-default configuration file:

              tlf -f PA0R

              Defaults to logcfg.dat in the current working directory.

       -s user:password@host/dir/logfilename
       --sync=user:password@host/dir/logfilename
              Synchronize log with other node

              tlf -s user:password@host/dir/logfilename

       -n, --no-cluster
              Start without packet/cluster.

       -r, --no-rig
              Start without radio control.

       -l, --list
              List all built-in contests.

       -i, --import
              Import an existing Cabrillo file and generate Tlf log files.

              When Tlf starts, it looks for YOURCALL.cbr file in the current directory, reads the  configuration
              and  rule  files,  and based on the current setup generates the log(s).  If the contest is WAE and
              you have QTCs in Cabrillo, then Tlf generates the QTC logfiles.   Tlf  will  not  write  over  the
              existing log(s).

              The  generated  import will be IMPORT_CONTEST.log, where the CONTEST is the name of contest in the
              config.  If QTC exists,  then  the  files  IMPORT_QTC_sent.log  and  IMPORT_QTC_recv.log  will  be
              created.

       -v, --verbose
              Verbose startup.

       -d, --debug
              Debug rigctld(1).

       -V, --version
              Print the version information to the screen and exit.

       --usage
              Print a short usage message to the screen and exit.

USAGE

       Tlf  has been written for console mode.  If you want to run Tlf from a terminal in X or Wayland, you will
       probably get the best results if you set TERM=linux and use a Linux console terminal.  Both KDE and GNOME
       terminals have a facility to start a Linux console in an X terminal as does Xfce-terminal.

       By default, xterm(1) or urxvt(1) may give unreadable colours.  If so, you  will  have  to  set  different
       colours  in  logcfg.dat  or prepare $HOME/.Xresources to the preferred colour scheme (a sample Xresources
       file that contains usage instructions is included in the doc directory).  One advantage of xterm or urxvt
       are that they do not consume the F11 key which other terminal emulators reserve for full screen mode  nor
       Ctrl-PgUp/Ctrl-PgDn which may be used for tab switching in other emulators.

       Recent  efforts  have  resulted  in  improved  keyboard handling.  If you find keys that do not work, the
       developers would like to receive your report of which keys and which terminal have the  problem.   Please
       send the report to the mailing list shown in the BUGS section below.

       There  are  excellent  results  with  the  latest KDE, GNOME, and Xfce terminal emulators (vi colours are
       preferred by some).  As Tlf uses ncurses to format its display you must use a proper font.  (Good choices
       are the Linux font, Inconsolata, Hack, or any monospace font that dots or slashes  the  zero  character).
       If you have problems, try the linux text console first and work from there.

       Normally you start or restart Tlf in fast mode with “tlf”.  During debugging of a logcfg.dat file you can
       start  in verbose mode, to have a look at the startup messages.  The config file can also be specified on
       command line:

              tlf -f config_file

       If you have the packet cluster enabled you will first see the packet screen (if you are using telnet  and
       you  have  provided  your callsign in logcfg.dat you will be automatically logged in switched to the main
       logging screen).  Log in with your callsign, if needed, and switch to the main logging  screen  with  the
       ‘:’  command.   You can come back to the packet screen later with the :PACket command from the call input
       field of the main logging screen.

       You can exit and close Tlf with the :EXIt or :QUIt commands or with Alt-X.

       At restart Tlf recalculates the score, which may take some time depending on the number of  QSOs  in  the
       logfile  and  the  speed of your system.  Tlf takes the points as they are in the log, and calculates the
       multiplier from either callsign or exchange field (depending on the contest).

COMMANDS

       These commands are entered in the callsign field of the main logging screen.  Each  command  consists  of
       the  leading  ‘:’ and at minimum the upper case characters of the command name plus any needed parameters
       separated by ‘Space’.

       :ADIf  Writes the log to an Amateur Data Interchange Format (ADIF) file logfile.adif.

       :CHAr  Input the number of characters for CW auto-start or ‘m’ for manual start.   Possible  values  are:
              ‘0’ (off), ‘2’...‘5’ or ‘m’ (manual).

              After  typing  as  many  characters in the input field or after pressing the ‘Enter’ key in manual
              mode Tlf starts sending the callsign without further keystrokes.  You can type in the rest of  the
              call  (but  quickly).   As soon as the sending catches your last typed character Tlf automatically
              sends the exchange and the cursor jumps to the exchange field.

              ‘Escape’ stops sending.

              This works only in CW contests in RUN mode.

       :CHEck
       :NOCheck
              Turn the dupe check window On|Off.

       :CQDelay
              Change Auto_CQ delay (in 1/2 seconds, with PageUp/PageDown keys).

       :CLOff No cluster information (non-assisted contest operation).

       :CLUster
       :MAP   Show cluster window or bandmap.

       :CONtest
              Toggle contest mode On|Off.

       :CTY
       :ZONe
       :MULt  Show needed country multipliers, zones, multipliers per continent (depends on the contest).

       :CWmode
       :SSBmode
       :DIGimode
              Switch TRX to CW|SSB|DIGi mode.

       :EDIt  Edit the log with your favourite editor.  Be careful!

       :EXIt
       :QUIt  Exit Tlf (synonym to Alt-X, but without asking for confirmation).

       :FILter
              Filter cluster info (announce, dx-spots, all).

       :FREq  Show frequency or band/score information of your other tlf nodes.

       :FLDIGI
              Toggle Fldigi communication On|Off.

       :HELp  Show online help (displays help.txt from working directory or from /usr/share/tlf if no local  one
              exists).

       :INFo  Show network status.

       :MESsage
              Edit CW (Morse Code) messages.

       :MODe  Toggle TRX mode (CW|SSB|DIG).

       :PACket
              Switch to the packet terminal.  Switch back to the main logging screen with ‘:’.

       :REConnect
              Re-opens the connection to the DX cluster in case it was disconnected.

       :REScore
              Recalculates the values in the score window (e.g. after deleting or editing QSOs).

       :RITclear
              Toggle the RIT reset after QSO On|Off.

       :SET
       :CFG   Edit various parameters in logcfg.dat file and reload it.

       :SCOre Toggle the score window On|Off.

       :SCVolume
              Adjust the soundcard volume for the sidetone (Up|Down).

              Range: 0–99.

       :SIMulator
              Toggle simulator mode On|Off.  In simulator mode you can work a complete CQWW CW contest in TR-Log
              mode.  Set CONTEST=cqww.

       :SOUnd Opens the sound recorder menu.

              The  sound  recorder  is  a utility for recording the voice keyer messages and enables recording a
              complete contest in chunks of 1 hour to the hard drive.

              Using the sound recorder requires the installation of the sox(1) package, which provides  the  rec
              utilities used by the script.

              For  recording  voice  messages,  the keys F1F12, s, or c will record the voice keyer message for
              that key.

              The sound recorder uses the /usr/bin/soundlog script  which  should  already  be  installed  to  a
              location in the $PATH.  The recording is written to the ./soundlogs directory by default.

              The  soundlog  script  now defaults to the rec utility provided with the Sox package.  The command
              syntax is not compatible with the previous default rec utility.

              The previous default rec utility is assumed to be from the Open Sound System (OSS) package  (sound
              system used on Linux prior to ALSA).  Its default soundcard device is /dev/dsp.  To enable the OSS
              version uncomment the needed line in the soundlog script and comment the Sox rec line.

              The recorded file extension is .au, the Sun μ–law format.

              The  recorder  produces  less  than  60  MegaBytes  per  hour in single channel mode.  Recording a
              complete 48 hour CQWW event requires less than 3 GigaBytes of disk space.   If  local  disk  space
              must be preserved, the sound file can be moved to another host using FTP, rsync, scp, or any other
              network transfer protocol.

              Sound recorder menu:

              1: Start/Stop contest recording to ddhhmm.au.

              2: List contest recordings and play back selected recording ddhhmm.

              To  create  a  new  file  every  hour add a crontab(1) job to run the following command every hour
              (syntax for SoX rec shown):

                     /usr/bin/pkill -x rec

                     Running the crontab job at other intervals will create sound  recordings  of  the  interval
                     period in length.

              Once  started  the  recorder  will run until the lock file $HOME/.VRlock is removed and the script
              gets stopped (performed by menu item 1).

              If you leave TLF with the recorder running TLF will  ask  for  confirmation.   Depending  on  your
              answer  TLF  can  stop  it  or keep it running. In the latter case just restart TLF and use :sound
              again to stop it.

              Cabling and setting up the radio to record both received and  transmitted  audio  is  left  as  an
              exercise for the reader simply due to the variety of radios and station configurations.

              To  ease  the  adaption  to  the  local  environment record and play back commands for voice keyer
              messages and contest audio  can  be  configured  by  the  following  keywords:  VK_RECORD_COMMAND,
              VK_PLAY_COMMAND, SOUNDLOG_RECORD_COMMAND and SOUNDLOG_PLAY_COMMAND.  The directory where soundlogs
              gets stored can be configured with SOUNDLOG_DIRECTORY.  See “Sound Commands” section below.

       :SYNc  Synchronize   the   logfile   of   this  node  with  the  logfile  pointed  to  by  the  parameter
              SYNCFILE=user:password@host/dir/logfile.  Tlf will wget(1) the logfile  from  the  relevant  node,
              make a dated backup of your local logfile, and merge the 2 files.  The score will be recalculated.

       :TONe [dd]d
              Set PC sidetone frequency in Hertz.

              Range: 300–900, 0 = Off.

       :TRXcontrol
              Toggle rig control On|Off.

              Default  is  Off  unless  RADIO_CONTROL  is given in logcfg.dat (only makes sense with rig control
              capability).

       :VIEw  View the log with less(1).

       :WRIte Write Cabrillo file according to specified format (see CABRILLO statement in the RULES section).

              The file is created in the current directory as YOURCALL.cbr (with slashes  as  part  of  YOURCALL
              converted to underscores, such as WX9XYZ/8.cbr to WX9XYZ_8.cbr).

KEYS

       Work  has  been  ongoing to unify the key map between the Linux text console and the various X terminals.
       It may be slightly different on certain X terminals depending on which keys they consume  for  their  own
       use.  Turn off any key recognition by the terminal for its own purposes (menu access, help display, etc.)
       if  possible.   Pay  special  attention to the F1-F12 and Alt-<char> keys.  Moreover, on some systems you
       must set the TERM=linux or TERM=rxvt environment variable, although variables such as xterm, xterm-color,
       or xterm-256color should work.  This also works under VNC.

       Certain key combinations will probably not be usable as the Linux console consumes Alt-F1 through  Alt-Fx
       (often  F7,  but  could  be  greater)  for switching its virtual consoles.  Likewise, the various desktop
       environments consume key combinations for their own use.  Ctrl-F1 through  Ctrl-Fx  are  used  to  switch
       desktop  workspaces.   Alt-Fx  combinations are used for various desktop features and are unavailable for
       Tlf use.

       Some desktop terminal emulators are capable of being configured to allow the application running in  them
       to  get  all  of  the  keys the desktop environment does not consume.  In testing good choices seem to be
       Gnome Terminal, Rox Terminal, or the classic Xterm  (although  its  default  color  presentation  differs
       slightly  from  the  Linux  console  and other terminal emulators) or URxvt (with a very distinct default
       color palette).  Xfce Terminal is known to consume  F11  and  Ctrl-PageUp  and  Ctrl-PageDown.   The  Tlf
       developers  have  implemented  Alt-PageUp  and  Alt-PageDown  as a work-around for the Ctrl counterparts.
       Reports of success with other terminals are welcome.

   Call Input and Exchange Fields
       The Call Input and Exchange Fields are the two main entry  fields  of  Tlf  where  the  majority  of  the
       keyboard  entry  takes  place.   The call input field is active when Tlf completes its initialization and
       presents the main screen.

       Most key sequences are the same in both fields.  Differences are noted as necessary.

       A-Z, 0-9, /
              Call input: ASCII letters,  numerals,  and  the  /  character  that  make  up  an  internationally
              recognized amateur radio callsign plus temporary location identifiers.  Spaces are not allowed.

              Exchange:  information  provided  by  the other station possibly separated by spaces, such as ARRL
              Field Day and ARRL Sweepstakes.

       Space  Switch from call input to exchange field.

              Separates exchange field elements when multiple exchange elements must be entered,  such  as  ARRL
              Field Day and ARRL Sweepstakes.

       Tab    Switch between call input and exchange fields (jump back to call input from exchange field).

       Enter  Smart key depending on contest mode.

              Tlf follows the TR operating style which has two modes, CQ and S&P (Search and Pounce).

              CQ  mode  is used for “running”, that is staying on one frequency and having other stations answer
              your call.

              S&P mode is for tuning up or down the band and answering the calls of other stations.

              In CQ Mode:

              • With the call input field empty, Enter sends the F12 message (Auto CQ).

              • With characters in the call input field, Enter answers the calling station  by  sending  the  F3
                message (RST) and moves the cursor to the exchange field.

              • If the exchange field is empty, Enter repeats the F3 message (RST).

              • After  the  exchange  information  received  from  the other station is entered, Enter sends the
                CQ_TU_MSG message if defined, or “TU” (CW mode) and your call otherwise.  Afterwards it logs the
                QSO, and returns the cursor to the call input field to answer the next call.

              In S&P Mode:

              • When the call input field is empty, Enter sends  the  S&P_CALL_MSG  if  defined,  or  your  call
                otherwise.

              • When  the  exchange  field  is  empty,  Enter  sends  the  S&P_CALL_MSG if defined, or your call
                otherwise.

              • When the call input field has been filled, Enter sends the S&P_CALL_MSG if defined, or your call
                otherwise.  Afterwards it moves the cursor to the exchange field.

              • Once the exchange has been received, Enter sends the S&P_TU_MSG if defined, otherwise  it  sends
                your  call  followed by the F3 message (RST).  Afterwards it logs the QSO and returns the cursor
                to the call input field to answer the next call.

       Backspace
              Erase the character to the left of the cursor and moves the cursor one position to the left.

       Escape Stop CW transmission, clears characters, returns to call  input  field,  keyboard  off  (universal
              undo).
              Note:  Some  changes  are  being considered to modify the behavior of Escape slightly.  The intent
              will be to have Escape only stop sending on first press and not clear any entered information.  It
              is planned that Escape will stop the playback of the voice keyer as well.

              As an example, characters have been entered in both the call input and exchange fields, the cursor
              is in the exchange field, and the transmission of a CW message is in progress.

              The first press of Escape will stop the CW transmission and clear the exchange field and  position
              the cursor to the leftmost position of the exchange field.

              The  second  press  of  Escape will move the cursor to the right of the last character in the call
              input field.

              The third press of Escape will clear the call input field.

              You can disable the above described UNDO functionality by setting ESC_STOPS_TX_ONLY (see below).

        (Left-Arrow)
              Call input field is empty: change to next band lower in frequency  or  wrap  to  highest  band  if
              already on the lowest band.

              Characters  in  the call input field: enter edit mode while moving the cursor to the left onto the
              rightmost character.  In edit mode successive presses will move the cursor left  until  the  first
              character is reached.

        (Right-Arrow)
              Change  to next band higher in frequency or wrap to the lowest band if already on the highest band
              when call input field is empty.

       F1     In CQ mode, send message F1 (CQ).

              In S&P mode send message F6 (MY).

       Shift-F1
              Restore previous CQ frequency from MEM and send message F1 (CQ).

       F2-F11 Send CW, RTTY or VOICE messages 2 through 11. If the callsign field is empty the messages will  be
              sent with the preceding qso data.

       F12    Start  Auto_CQ  (only  activated from the call input field).  Sends F12 message repeatedly pausing
              for Auto_CQ delay time between messages.  Auto_CQ is cancelled with first character entry into the
              call input field.

       + (Plus)
              Toggle between the CQ and S&P modes.

       PgUp   Increase CW (Morse Code) speed (from call and exchange fields).

              If the cursor is in the call input field and it is not empty and CHANGE_RST is set: increase  sent
              RST.

              If  the  cursor  is  in  the  exchange  field  and it is not empty and CHANGE_RST is set: increase
              received RST.

       PgDown Decrease CW (Morse Code) speed (from call input and exchange fields).

              If the cursor is in the call input field and it is not empty and CHANGE_RST is set: decrease  sent
              RST.

              If  the  cursor  is  in  the  exchange  field  and it is not empty and CHANGE_RST is set: decrease
              received RST.

       Ctrl-PgUp
       Alt-PgUp
              Increase Auto_CQ delay pause length (+1/2 sec).

              Set Auto_CQ delay to message length + pause length.

       Ctrl-PgDown
       Alt-PgDown
              Decrease Auto_CQ delay pause length (-1/2 sec).

              As some terminals,  Xfce  Terminal  is  one  such,  consume  Ctrl-PageUp/Ctrl-PageDown,  the  Alt-
              PageUp/Alt-PageDown combinations allow for setting the Auto_CQ delay pause length.

              Note: If neither key combination works try :CQD instead.

       ? (Query)
              In CW or DIGIMODE sends the partial call followed by “ ?”.  In VOICE mode sends recorded message 5
              (F5).

       ; (Semicolon)
              Insert note in log.

       , (comma)
       Ctrl-K Activate Morse Keyboard.

       " (Double quotation)
              Send talk message to other Tlf nodes.

       - (Minus)
              Delete last QSO (Use :REScore to correct scoring afterward).

        (Up-Arrow)
              In empty call input field: Edit last QSO: Insert, overwrite, and delete; + log view.

              Increment serial number in exchange input field.

        (Down-Arrow)
              Decrement serial number in exchange input field.

       = (Equals)
              Confirm last call.

       _ (Underscore)
              Confirm last exchange.

       { (Open brace)
              In RTTY (DIGIMODE), keyboard mode switch TX on.

       } (Close brace)
              In RTTY (DIGIMODE), keyboard mode switch TX off (RX).

       \ (Backslash)
              Log QSO without CW output.

              In  RTTY  (DIGIMODE), keyboard mode switch controller to command mode (back to operating mode with
              ‘K’Enter).

       # (Hash)
              Transceiver VFO frequency → MEM, MEM → transceiver VFO frequency.

       $ (Dollar)
              Pop MEM frequency: MEM → transceiver VFO frequency and clear MEM.

       % (Percent)
              Swap transceiver VFO frequency and MEM.

       ! (Exclamation)
              Get a new shell.  Come back with “exit”.

       Alt-,
       . (Period)
              Change bandmap filter configuration.  You can filter to show spots from all or own band only, from
              all/own mode only and if you want to see dupes or not (see the help  (Alt-H)  display),  only  new
              multiplier or all call (only CQWW).

       Ctrl-A Add a spot to bandmap and broadcast it on the local network.

       Ctrl-B Send  a  spot  to the DX Cluster (a connection to a DX cluster must exist). TLF prepares a minimal
              spot line and allows you to edit it. Finish editing and send the spot with ENTER or abort  sending
              by pressing the ESCAPE key.

       Ctrl-E End modem capture for RTTY mode in QTC window (started with Ctrl-S).

              See /usr/share/doc/tlf/Manual.md for more information.

       Ctrl-F Set  frequency.   Use  Up/Down-Arrow for 100Hz steps and Pg-Up/Pg-Down for 500Hz steps.  Return to
              logging with Escape.

       Ctrl-G Grab next DX spot from bandmap.  The indicator on the right  of  the  bandmap  shows  the  current
              grabbing direction.  It can be toggled with Ctrl-V.

       Ctrl-K Keyboard (CW and RTTY).

       Ctrl-L Reset the screen.

       Ctrl-P Maximum Usable Frequency (MUF) display.

       Ctrl-Q Open  the QTC window for receiving QTCs if QTC=RECV or QTC=BOTH or sending QTCs if QTC=SEND is set
              in logcfg.dat.  Same as Ctrl-S if QTC=SEND.

              See /usr/share/doc/tlf/Manual.md for more information.

       Ctrl-R Toggle /dev/lp0 pin 14 (Mic/Soundcard switch | trx1/trx2 switch).

       Ctrl-S Open the QTC window for sending QTCs if QTC=SEND or QTC=BOTH in logcfg.dat.  Saves QTCs  while  in
              QTC window.

              In  RTTY  mode  starts  capture  from the modem after the window has been opened with Ctrl-Q.  End
              capture with Ctrl-E.

              See /usr/share/doc/tlf/Manual.md for more information.

       Ctrl-T Show talk messages.  In the QTC window shows RTTY lines.

       Ctrl-U Wipe out whole input line (call input and exchange), clear all information about current  contact.
              If entered by accident a second Ctrl-U restores the line.

       Ctrl-V Toggle grabbing direction in which Ctrl-G looks for a spot.

       Ctrl-W Wipe  actual  field  the  cursor  is in (call input OR exchange).  If entered by accident a second
              Ctrl-W restores the field.

       Ctrl-Z Suspend Tlf returning to shell prompt.  To return to Tlf use the ‘fg’ command  (Bourne  Shell)  or
              the equivalent command for your shell.

       Alt-0...Alt-9
              Send  alternate CW (Morse code) messages. If the callsign field is empty the messages will be sent
              with the preceding qso data.

       Alt-A  Cycle cluster window: NOCLUSTER → CLUSTER → BANDMAP → ...

       Alt-B  Band up in TR-Log mode.

       Alt-C  Toggle display of checkwindow.

       Alt-E  Enter QSO edit mode.

       Alt-G  Grab first spot from bandmap which has the characters in the call input field in its call.  Allows
              the operator to selectively grab a specific call from the bandmap.

       Alt-H  Show help file /usr/share/tlf/help.txt.

       Alt-I  Show talk messages.

       Alt-J  Show the frequencies of other local station(s).

       Alt-K  Keyboard (CW and RTTY).

       Alt-M  Show multipliers.

       Alt-N  Add Note to log.

       Alt-P  Toggle PTT (via cwdaemon).

       Alt-X  Exit Tlf (synonym to :EXIt and :QUIt, but asks for confirmation).

       Alt-R  Toggle score window.

       Alt-S  Toggle score window.

       Alt-T  Tune your transceiver (via cwdaemon).  Activates PTT and Key output, by  default  for  6  seconds.
              Stop  tuning  by  pressing  any  key.   You  can override the default value using the TUNE_SECONDS
              configuration statement.  In addition to cwdaemon, tune also works with winkeydaemon (tested  with
              v1.0.10).

       Alt-V  Band down.

       Alt-W  Set CW weight.

       Alt-Z  Show zones worked.

   CT Compatible Mode
       Tlf  has  limited  support  for  the  logging  sequence keys used in the once popular CT logging program.
       Unlike the default Enter  Sends  Message (ESM) mode, the CT Compatible mode uses the Insert and + keys in
       the logging sequence and Enter logs a complete QSO.  Unlike ESM mode, CT mode does not have  separate  CQ
       or S&P modes.

       CT  Compatible  mode  is enabled with the CTCOMPATIBLE keyword in logcfg.dat (see the PREFERENCES section
       below).

       The following keys differ in behavior in CT Compatible mode.

       Enter  Log the complete QSO without sending any message macro.

              If the callsign field is empty, pressing  Enter  will  activate  the  Auto-CQ  function.   If  the
              exchange field is empty, pressing Enter in either the callsign or exchange field will result in no
              action.

       Insert Send the RST (F3) macro.

              Since  the  RST  macro includes the other station's callsign by default, the HIS macro is not sent
              first.  This differs from classic CT, but is a compromise to use the default Tlf macros.

       + (Plus)
              Send the TU macro and log the QSO.

              The + key checks if the exchange field is empty and if it is nothing is sent or logged.   In  rare
              cases where nothing needs to be entered in the exchange field, such as when working DX from USA in
              ARRL 160, simply enter a space to allow the + key to send the TU message and log the QSO.

       Alt-V  Change CW speed.

PREFERENCES

       Tlf  can  be  fully  configured  by  editing the logcfg.dat file.  Normally you keep one logcfg.dat file,
       setting up your callsign, the log file name, the ports and addresses for packet, the radio,  the  network
       etc., and a separate rules file per contest.

       The  logcfg.dat  file can be edited from within Tlf by the :CFG or :SET commands (or with any other plain
       text editor before starting Tlf).  It contains keyword-argument pairs, one per line.  Lines starting with
       “#” and empty lines are interpreted as comments and are ignored.

       You can set your favourite editor in the logcfg.dat file.

       The rules file is associated with the statement RULES=contest_rules_file_name in logcfg.dat.

       Note: Both logcfg.dat and rules file support the same configuration  parameters  except  RULES  which  is
       allowed only in logcfg.dat.

       Tlf  will first look in the current working directory for a logcfg.dat file, and if it cannot find one it
       will look in /usr/share/tlf for a default one.  Make sure you edit the logcfg.dat file for at least  your
       callsign and your preferred system configuration.

       Parameters  requiring  a  boolean value (like true/false) can have an optional case-insensitive argument.
       Alternatively, both yes and on are treated as true.  Similarly instead of false also no  or  off  can  be
       used.  Without the argument the default assigned value is yes.

logcfg.dat STATEMENTS

       Configuration  parameters  are  set in logcfg.dat which is located in the working directory (where Tlf is
       started).

   Tlf Setup Commands
       RULES=contest_rules_filename
              Name of the rules file to load.

              It helps to name the rules file according to the contest you want to describe.  The rules file  is
              located under the rules directory of the working directory.

       SYNCFILE=user:password@host/dir/syncfile
              File on remote host you want to synchronize with (use wget(1) syntax).

       CTCOMPATIBLE[=<ON|OFF>]
              Do not use the TR-Log QSO sequence, but use +, Insert and Enter to log the QSO.

              The  default  mode  of  operation is the TR-Log sequence which uses + to switch between CQ and S&P
              modes, in which Enter is the sole key used to call the other station, send the exchange,  and  log
              the QSO.

       TLFCOLORn=FG/BG
              Defaults:
                     TLFCOLOR1=23 (Header and footer)
                     TLFCOLOR2=67 (Pop up windows)
                     TLFCOLOR3=70 (Log window)
                     TLFCOLOR4=57 (Markers/dupe colour)
                     TLFCOLOR5=43 (Input fields)
                     TLFCOLOR6=63 (Window frames)

              The numbers are given in octal, FG/BG or BG/FG (some experimentation likely required).

              You  should  only  specify  these  if  you  wish  to  modify the standard colours of Tlf.  In some
              Terminals you can set a special profile for Tlf with your own colours.  Another way is  to  define
              the colours via the $HOME/.Xresources file for XTerm and rxvt.

              Note:  A  sample  /usr/share/doc/tlf/Xresources file has been provided that sets the colour scheme
              for XTerm and rxvt to the same colour pallet as the Linux  console.   Most  other  terminals  have
              their own way of setting the colour pallet.

       RXVT[=<ON|OFF>]
              Use rxvt's colours.

       EDITOR=nano | vi[m] | <your_favorite_editor>
              Editor  used to modify the QSO log or logcfg.dat.  The command specified receives the file name as
              an argument.

              When using a GUI editor that runs in the background (such as gvim) make sure to  exit  the  editor
              before  logging  new stations.  Use the :RES command to rescore the log.  It is best to force such
              an editor to stay in the foreground (such as with ‘gvim -f’).

       CALL=PA0R
              The station callsign used in messages; also used to determine  the  station's  country,  zone  and
              continent.

       OPERATING_MODE=CQ|S&P
              Set  operating  mode  for start up. Use CQ for "run" and S&P for "search and pounce".  The default
              mode is CQ.

       TIME_OFFSET=0
              Used to shift the Tlf time with respect to the computer clock.  Normally 0.

              Range: 0–23.

       TIME_MASTER[=<ON|OFF>]
              This node transmits the time over the network (only one master allowed!).

       ADDNODE=Node_address[:Port_number]
              Adds an IP address (and optionally a port number) to which we broadcast stuff.  (WARNING: Only add
              addresses of other nodes).

       THISNODE=A
              Node designator (default “A”).  If Tlf hears its own node ID on the network it will exit  and  ask
              you to pick another one!

              Range: A–H.

       LAN_PORT=Portnumber
              Specifies  on  which  port  number  (default  “6788”)  Tlf  is listening for broadcasts from other
              instances.

       LANDEBUG
              Activates the debug function for recording Tlf network traffic.

              Dumps all Tlf net traffic received on this  node  into  a  file  named  debuglog  in  the  working
              directory.   This log can be used as a backup log for the whole network, as it is easy to retrieve
              QSO data, cluster messages, gab messages etc. after the contest.  Some users have this enabled all
              the time.

       SSBMODE
              Start Tlf in SSB mode (default is CW).

       RTTYMODE
              Start Tlf in RTTY mode (default is CW)

       GMFSK=$HOME/gMFSK.log
              Tell miniterm(1) where to get the data.

       DIGIMODEM=$HOME/gmfsk_autofile
              Tell Tlf where to send the macros.

       MARKERS=file_name
              Generate marker file for Xplanet.

              Xplanet (a GUI program for the X Window System) will show the  last  8  DX  cluster  spots  on  an
              azimuthal map.  See the relevant Xplanet documentation.

              Use azimuthal projection and center the map on your QTH (station location).

       BAND_NN=bottom,cw_end,ssb_start,top
              Define  band  edges.  NN is the band designator (wavelength), allowed values are: 160, 80, 60, 40,
              30, 20, 17, 15, 12, 10.

              All 4 comma separated parameters are mandatory and shall be specified in integer Hz units with  an
              optional k suffix.

              Example specification for Region 1 40 m band:

                  BAND_40 = 7000k, 7040k, 7050k, 7200k

              Internal  default band definitions are based on a superset of all Regions.  For example, 40 m ends
              by default at 7300 kHz.  In addition to configuring the legal limits BAND_NN can also be  used  to
              fine tune actual band configurations for a specific contest.

   Morse Code Keyer Commands
       NETKEYER
              Activates the CW keyer.

              Only  the  IP  networked  keyer  cwdaemon  or  any  other  program  that emulates cwdaemon such as
              winkeydaemon is supported.  You may also need the keyer for PTT control or band info output.

       NETKEYERPORT=port_number
              Default port is 6789.

       NETKEYERHOST=host_address
              Default host is 127.0.0.1 (localhost).

       HAMLIB_KEYER
              Activate CW keying via Hamlib.

              Note: The + and - macros to control speed from within messages are not yet supported.

       MFJ1278_KEYER=serial_port
              Activates support for the MFJ-1278B multi-mode controller.

              The MFJ-1278 supports CW as well as RTTY contesting.  The serial port rate is fixed at 9600 bps.

       CWSPEED=speed_in_WPM
              Set the initial CW (Morse Code) speed.

              Can be changed with PgUp (increase), or PgDn (decrease) while sending CW messages or logging.

              Range: 4–69.

       WEIGHT=weight_ratio
              Set the CW (Morse Code) dot to dash ratio.

              Only for the NETKEYER.

              Range: -45–50.

       TXDELAY=PTT_delay_in_mS
              Delay activation of the Push To Talk pin.

              Range: 0–50.

       KEYER_BACKSPACE[=<ON|OFF>]
              Support backspace key in keyer window.

   Sound Commands
       SOUNDCARD[=<ON|OFF>]
              Use soundcard for CW sidetone output.

       SIDETONE_VOLUME=soundcard_volume
              Set soundcard sidetone volume (default is 70).

              A value of 0 turns off sidetone output (even for the console speaker).

              Range: 0–99.

       CQDELAY=Auto_cq
              Set automatic CQ pause delay in 1/2 seconds increments between message transmissions.

              Range: 3–60.

       CWTONE=sidetone
              Set the PC speaker or soundcard frequency.

              A value of 0 switches the sidetone off.

              Range: 0–999.

              (Due to a bug in cwdaemon it also turns  off  the  Alt-T  tune  function.   Use  SIDETONE_VOLUME=0
              instead).

       VK_PLAY_COMMAND=command
              The command to play a voice keyer message file.

              It default to “play_vk $1”, where “$1” will be replaced by the file name to play.

       VK_RECORD_COMMAND=command
              Command to record voice keyer messages.

              “rec -r 8000 $1 -q” is used by default. Again “$1” stands for the file to write during recording.

       SOUNDLOG_PLAY_COMMAND=command
              Playback command for soundlog recordings (default is “play -q $1 2> /dev/null”):

       SOUNDLOG_RECORD_COMMAND=command
              Command to record contest audio stream. Runs out of the SOUNDLOG_DIRECTORY.

              The script “soundlog” which is part of TLF is used by default. See :Sound for details.

       SOUNDLOG_DIRECTORY=directory
              The directory in which recorded contest sound files are stored (default “./soundlogs”).

   Band Switching Commands
       BANDOUTPUT
              Outputs band information to pins 2, 7, 8, 9 on the parallel port.

              Output is 1 (160m), 2 (80m) ... 9 (10m).

              This format is compatible with the standard interface for antenna switches, band filters etc.

       BANDOUTPUT=124181818
              Output pin 2 for 160, 30, 17 and 12, pin 7 for 80, pin 8 for 40, and pin 9 for 20, 15 and 10.

              This comes in handy when you have 3 dipoles and a 3-band beam (...).

       NO_BANDSWITCH_ARROWKEYS[=<ON|OFF>]
              This will prevent unwanted band switching when you are not using rig control.

              Band up = Alt-B, band down = Alt-V (TR-Log mode).

   DX Cluster Commands
       TELNETHOST=cluster_address
              Use  Telnet  to  connect  to  a  DX  Cluster  node  using  a  DNS  name  or  IP  address,  such as
              claudia.esrac.ele.tue.nl or 131.155.192.179.

       TELNETPORT=telnet_port_of_cluster
              DX Clusters often use a non-standard port for Telnet, e.g. 8000.

       CLUSTERLOGIN=yourcall
              Automatic login for the telnet client.

       CLUSTER_LOG[=<ON|OFF>]
              Write clusterlog to disk.

       TNCPORT=serial_port
              You can use /dev/ttyS0, /dev/ttyUSB1, etc. anything that looks like a tty.

       TNCSPEED=serial_rate
              Tlf supports 1200, 2400, 4800 and 9600 bps.

       FIFO_INTERFACE
              The FIFO (First In First Out) interface is used when you want to receive  cluster  info  from  the
              network,  or  from  another  source.   The  FIFO interface uses a special FIFO file in the working
              directory called clfile.  Anything you dump into  this  FIFO  will  be  displayed  by  the  packet
              interface.

   Radio Control Commands
       RADIO_CONTROL[=<ON|OFF>]
              Switches the radio interface on.  The rig interface makes use of the Hamlib library which supports
              a number of different rigs.

       RIGMODEL=rig_number
              Look at the Hamlib documentation for the rig_number.

              Hint: rigctl -l and its manual page (rigctl(1)).

       RIGSPEED=serial_rate
              Speed of the serial port for rig control.

       RIGPORT=serial_port
              You can use /dev/ttyS0, /dev/ttyUSB1, etc. anything that looks like a tty.

              For rigctld(8) set RIGPORT=localhost and RIGMODEL=2.  In this case RIGSPEED is ignored.

       RIGCONF=rig_configuration_parameters
              Send rig configuration parameters to Hamlib.
              e.g. RIGCONF=civaddr=0x40,retry=3,rig_pathname=/dev/ttyS0

       RIT_CLEAR[=<ON|OFF>]
              Clears the RIT after logging the qso.

              This only works if the rig, and the Hamlib routine supports it (tested on the OMNI 6+).

       RIGPTT Declares  that  Hamlib  CAT  PTT  capability should be checked at startup and if available used to
              activate the radio's PTT for sending voice messages instead of the cwdaemon PTT.

       CWBANDWIDTH=width
              Sets the CW bandwidth of your rig when changing bands.

              If unset or 0 the default bandwidth (as determined by Hamlib) is used. (a valid bandwidth for  the
              radio model must be used).

       DIGI_RIG_MODE=mode
              If  set  along with RADIO_CONTROL option, specifies the mode to change the radio to when :DIG mode
              is selected.

              mode may be one of “USB”, “LSB”, “RTTY”, or “RTTYR”.  If this parameter is not set, “USB” is  used
              if the FLDIGI parameter is set else “LSB” is used.

   User Interface Commands
       CLUSTER
              Show DX Cluster window at startup.

       BANDMAP
              Shows cluster bandmap on startup.

              Use .  (period) to change bandmap filtering.

       BANDMAP=xyz[,number]
              Show cluster bandmap on startup and set start values for filtering.

              <xyz> string parsed for:
                   “B” - show DX spots only on operating band
                   “M” - show DX spots only on operating mode
                   “D” - do not show dupes
                   “S” - skip dupes during grab_next (Ctrl-G)
                   “O” - show only new multipliers
                   “X” - show also out-of-band spots when in all-band mode
              <number> lifetime for new spots in seconds (number >= 30)

       SCOREWINDOW[=<ON|OFF>]
              Show the score window (same as Alt-R).

       CHECKWINDOW[=<ON|OFF>]
              Show the country/call check window.

       PARTIALS[=<ON|OFF>]
              Show a list of possible contest calls.

              See CALLMASTER in the RULES section below for partials file specification.

       USEPARTIALS[=<ON|OFF>]
              Use the auto-complete utility (takes some practice...).

              Tlf will complete the call as soon as it is unique in the database.

              This  can lead to strange effects, but in practice there are far more hits than misses.  Sometimes
              you must edit the call because it has locked on a unique call.  Try it, and switch it off when you
              don't like it.

       LOGFREQUENCY[=<ON|OFF>]
              Put frequency (kHz) into QSO number to enable logging of frequency (only in QSO or DXPED modes).

       IGNOREDUPE[=<ON|OFF>]
              Enables logging multiple QSOs in a contest with the same station (considered  a  good  idea  these
              days  as  contest bots that parse the submitted Cabrillo file will determine such dupes (duplicate
              contacts)).

       SUNSPOTS=SSN
              Set the sunspots number value which is used to do a rough calculation of the MUF  (Maximum  Usable
              Frequency).

              If the cluster interface is used the SSN will be updated by WWV or WCY messages.

       SFI=Solar_flux_value
              Set SFI used to calculate SSN.

              The  SSN  value is used to do a rough calculation of the MUF.  If the packet interface is used the
              SSN will be updated by WWV or WCY messages.

       CHANGE_RST
              If set in logcfg.dat, PgUp and PgDown will change sent/received RST instead of CW speed if you are
              in call/exchange field and call field is not empty.

              Default is these keys only change CW speed.

       CHANGE_RST=33, 43, 47, 499, ...
              Provide a comma separated list of RS(T) values which are used for the sent RST.

              Received RST will always be 33–39, 43–49, or 53–59.

              Providing a value for T is optional but will be ignored.

              In CW and DIGI modes T will always be 9.

       NOB4[=<ON|OFF>]
              Do not send automatic “QSO B4” message.

              Default is to send such messages.

       NOAUTOCQ[=<ON|OFF>]
              No automatic CQ when pressing Enter or F12.

              Default is that these keys will start an automatic CQ (see their descriptions in the KEYS  section
              above).

       ESC_STOPS_TX_ONLY[=<ON|OFF>]
              Pressing ESC key does only stop sending CW or voice macros. No further action is taken.

       SEND_DE[=<ON|OFF>]
              Sends a “DE” word before your callsign, as in “DE W1AW”.

              There is a special case; if SEND_DE is present in logcfg.dat, and Tlf if is in :DIGimode, then the
              other station's callsign will be sent before “DE”, such as “DL1A DE W1AW”.

       RESEND_CALL=FULL | PARTIAL
              Sends  the  full  or  partial  callsign again at the end of the QSO in RUN mode if the call of the
              other station was corrected.  In case of FULL the whole callsign will be sent again.  If the value
              is PARTIAL, then TLF figures out which part of callsign has to be sent. Eg.: if the received  call
              was AB1CD, but later it is corrected to AB1CB, then CB is sent.

       SHOW_TIME[=<ON|OFF>]
              Show last worked time instead of QSO number in the worked window.

RULES

       The  contest  rules can be put into separate files.  Tlf will first look for a directory called rules/ in
       the working directory, and a file named for the contest, for example, cqww.  If Tlf cannot  find  such  a
       file,  it  will  look  into  the  directory /usr/share/tlf/rules.  A rules file contains contest specific
       parameters like multipliers, scoring rules, CW and voice keyer messages, etc.

       Note: The rules file overrides settings from the logcfg.dat file!

       WARNING!  It is your own responsibility to try these rules well BEFORE the contest.  The authors  of  Tlf
       cannot  possibly  check all rules for all contests :) and during the contest there is normally no time to
       fix it.  Of course, Murphy's Law always applies!  These commands can generally appear in any order.

   RULES Configuration
       General configuration options for the RULES file.

       CONTEST=xxxxx
              Name of the contest (same as the file name contest_rules_filename given  to  the  RULES  parameter
              referenced  above in logcfg.dat).  Some contests, like CQWW and WPX, are pre-programmed.  Look for
              the relevant rules file in /usr/share/tlf/rules.

       LOGFILE=log_file_name
              Mandatory!

              By convention contest_rules_filename.log, but can be anything meaningful.

       CABRILLO=format
              Specify the name of the Cabrillo QSO and QTC line format.  For most  cases  UNIVERSAL  is  a  good
              choice.  For further Cabrillo related information see CABRILLO CONFIGURATION below.

       CONTEST_MODE[=<ON|OFF>]
              Sets Tlf into contest mode.

              Do not use this parameter for normal QSO logging!

       SHORT_SERIAL
              Uses short form for serial number (9=N, 0=T).

       LONG_SERIAL
              Uses long form for serial number (default).

       LEADING_ZEROS_SERIAL[=<ON|OFF>]
              Controls sending leading zeros in serial number. By default serial numbers are sent with (up to 2)
              leading zeros.

       NO_RST[=<ON|OFF>]
              Do  not  use RST in contest, such as for CW Open, ARRL Sweepstakes, ARRL Field Day, or various QSO
              parties and such events.

              In such a case when writing a Cabrillo log format template you must provide  a  conforming  format
              definition without RST values.

       MIXED[=<ON|OFF>]
              Stations  can  be  worked in any mode (CW, SSB and DIG) on a given band without being counted as a
              DUPE.

       SSBMODE
              Start Tlf in SSB mode.

              If radio control is active, the radio will be placed in SSB mode, if  not  in  SSB  mode  already.
              Normally Tlf starts in CW mode and will set the radio to CW mode if needed.

              Note:  At  this  time Tlf does not follow mode changes on the radio.  When switching modes use the
              :CW, :SSB, or :DIG commands to set both Tlf and the radio mode.

       CQWW_M2
              Put the node ID into the logline (just after the QSO number) to support  Multi/2  operation  where
              the  station logging the QSO must be in the Cabrillo file.  This can also be used for M/1 and M/M,
              to enable post-contest analysis of the nodes.

       FKEY-HEADER="short description of your defined F-keys"
              The actual F-key assignments shown on the top of the main logging screen.  Maximum length  is  59.
              The default is: “1=CQ  2=DE  3=RST 4=73  5=HIS  6=MY  7=B4   8=AGN  9=?”

       TUNE_SECONDS=tuning-seconds
              Specify  how  many  seconds  you allow tune (Alt-T) remain active before automatically terminating
              transmit.

              Range: 1–100.

              The default value is 6, to maintain compatibility with previous TLF versions.  After 100  seconds,
              tuning  will automatically be terminated, to allow your PA (and perhaps you too ;-) ) to cool down
              a bit...

       CALLMASTER=callmaster
              Use a different file name as the  callmaster  database  (default  is  callmaster  in  the  working
              directory).

              Often  downloaded  as  MASTER.SCP  from  the  Supercheck  Partials Web site.  See the PARTIALS and
              USEPARTIALS commands in the User Interface Commands section above and the FILES section below  for
              obtaining Supercheck Partials updates.

       BMAUTOGRAB[=<ON|OFF>]
              If  set  along with the RADIO_CONTROL and BANDMAP (mandatory for this parameter) options, Tlf will
              grab the callsign from the bandmap, if the TRX (radio)  frequency  is  equal  with  the  displayed
              bandmap frequency.

       BMAUTOADD[=<ON|OFF>]
              If  set  along with the RADIO_CONTROL and BANDMAP (mandatory for this parameter) options, Tlf will
              add the callsign from callsign field, if at least 3 characters have been entered.

              Use “S”kip dupes in BANDMAP settings to control if it should also grab dupes.

       SPRINTMODE[=<ON|OFF>]
              If set, Tlf will automatically switch its mode between LOG and S&P after every QSO.

       FLDIGI If you work RTTY (or any other digital modes), you can communicate  with  Fldigi  through  XMLRPC.
              This parameter activates the interface.

              By default Tlf connects to:

              http://localhost:7362/RPC2.

              If you run Fldigi's XMLRPC server on an different port use FLDIGI=http://localhost:port_#/RPC2

       MINITEST[=NNN]
              Use this option when the contest is a minitest like contest.

              In  such  contests  the full contest interval is divided into shorter sections (e.g. 6 * 10 minute
              sections in an hour).  Any station can be worked  once  in  each  of  the  time  sections  without
              counting  as  a dupe.  The default length of the sections is 600 seconds (10 minutes), but you can
              pass another value (in seconds) after the ‘=’ sign.

              There must be an integral number of time sections per hour!

   CW, Digimode and Voice Keyer Macros
       The following parameters configure the CW, Digimode and voice mode keyer message macros.

       Macro characters in the message strings
              % = my call, @ = his call, # = serial number, [ = RST, + = increase cw  speed,  -  =  decrease  cw
              speed,  *  =  AR,  =  = BT, < = SK, ( = KN, !  = SN, & = AS, > = BK, !  = his serial (e.g. confirm
              exchange of station in DIGimode), | = carriage return (only in digi mode messages).

       Be aware that unspecified digimode messages gets the value of their CW counterpart prepended with '|'.

       F1="cw message 1"
              CQ message, (e.g. CQ de PA0R TEST).

       F2="cw message 2"
              S&P call message, (e.g. @ de %).

       F3="cw message 3"
              Exchange message, (e.g. @ ++5NN--#).

       F4="cw message 4"
              TU message, (e.g. TU 73 %).

       F5="cw message 5"
              Call of the other station (e.g. @).

       F6="cw message 6"
              Your call (e.g. %).

       F7="cw message 7"
              QSO B4 message (e.g. @ sri qso b4 gl).

       F8="cw message 8"
              Again message (e.g. AGN).

       F9="cw message 9"
              Query message (e.g. ?).

       F10="cw message 10"
              QRZ message (e.g. QRZ?).

       F11="cw message 11"
              Please reply message (e.g. PSE K).

       F12="cw message 12"
              Auto-CQ message (e.g. +++TEST %---).

       CQ_TU_MSG="cw message 13"
              Auto Exchange message in CQ mode (TR-Log mode), (e.g. TU %).

       S&P_TU_MSG="cw message 14"
              Auto Exchange message in S&P mode (TR-Log mode), (e.g. TU 5NN #).

       S&P_CALL_MSG="cw message 25"
              Custom call message in S&P mode.

              Allows replacing the auto-generated S&P call message.

       Alt_0=<...> ... Alt_9=<...>
              Up to 10 additional messages.

       VKM1=voice message file name 1 ... VKM12=voice message file name 12
              Use F1 ... F12 keys to send recorded messages for phone.

       VKCQM=voice_message_file_name
              Auto Exchange voice message in CQ mode (TR-Log mode)

       VKSPM=voice_message_file_name
              Auto Exchange voice message in S&P mode (TR-Log mode)

       DKF1=digi keyer message 1 ... DKF12=digi keyer message 12
              Use F1 ... F12 keys to send recorded messages for digital.

       DKCQM=message
              Auto Exchange TU digi message in CQ mode (TR-Log mode)

       DKSPM=message
              Auto Exchange TU digi message in S&P mode (TR-Log mode)

       DKSPC=message
              Auto Exchange call digi message in S&P mode (TR-Log mode)

   Scoring
       The following parameters configure Tlf's scoring calculations.

       ONE_POINT
              One point per QSO (regardless of mode).

       TWO_POINTS
              Two points per QSO (regardless of mode).

       THREE_POINTS
              Three points per QSO (regardless of mode).

       CWPOINTS=d
              Points per CW QSO.

       SSBPOINTS=d
              Points per SSB QSO.

              Note: SSBPOINTS and CWPOINTS need to be set for both to work!

       MY_COUNTRY_POINTS=d
              Points for working your own DXCC entity (often zero (0)).

       MY_CONTINENT_POINTS=d
              Points for working countries in your own continent.

       DX_POINTS=d
              Points for working a station in other continents.

       2EU3DX_POINTS
              Deprecated.

              Use MY_CONTINENT_POINTS and DX_POINTS instead.

       COUNTRY_LIST_POINTS=d
              Points for countries in country list.

       USE_COUNTRYLIST_ONLY[=<ON|OFF>]
              Score zero points for countries not in the list.

       COUNTRYLIST="comma separated list of prefixes"
              e.g. SM,LA,OZ,OH.

       COUNTRYLIST=file_name
              File with a list of prefixes.  It can contain multiple records (lines).  The one starting with the
              current contest name is selected.  E.g. Scandinavia:SM,LA,OZ,OH.

              Not to be confused with so-called "country" files maintained by AD1C.

       PORTABLE_MULT_2[=<ON|OFF>]
              Multiply points x2 for portable stations (e.g. R1 field day).

       LOWBAND_DOUBLE[=<ON|OFF>]
              Double all points for lowband (40, 80, and 160m) QSOs (can be combined with any other value).

              (Will be deprecated in future! Use BANDWEIGHT_POINTS instead.)

       POWERMULT=power_multiplier
              Use this value to multiply the final points.

              If the contest rule allows one to use the power multiplier (such as  Stewperry,  ARRL-FD,  various
              QSO parties), set it here.

              Note:  The  value  type  of POWERMULT is a float, as in POWERMULT=1.5, but the final score will be
              rounded by the C library floor(3) function, which gives the largest  integer  value  that  is  not
              greater than multiplied score.

       WYSIWYG_MULTIBAND[=<ON|OFF>]
              Exchange is the multiplier, per band, whatever you enter.

              Tlf builds its own list of multipliers as QSOs are logged.

       WYSIWYG_ONCE[=<ON|OFF>]
              Exchange is multiplier, whatever you enter.

              Counts once per contest, not per band.

       WAZMULT[=<ON|OFF>]
              Multiplier is the CQ zone (per band).

       ITUMULT[=<ON|OFF>]
              Multiplier is the ITU zone (per band).

       PFX_MULT[=<ON|OFF>]
              Multiplier is prefix (PA0, DA2, VE7, etc.).

              Counts once per contest, not per band.

       PFX_MULT_MULTIBAND[=<ON|OFF>]
              Same  as WPX, but the WPX only used CQ-WW-WPX, and there a single prefix multiplier only once, not
              all band.

              With this option, the PFX counts as multiplier on all band.   This  usable  in  the  All  Asia  DX
              contest (AA-DX).

       COUNTRY_MULT[=<ON|OFF>]
              Multiplier is the DXCC entity (per band).

              Relies   on   a   so-called   "country"  file  by  AD1C.   An  outdated  version  is  supplied  in
              /usr/share/tlf/cty.dat.  See the FILES section below.

       MULT_LIST=file_name
              Name of multipliers file (often sections, provinces, states, counties).

              May contain comment lines starting with “#” in the first column.  Each  multiplier  resides  on  a
              single line by itself.

              Starting from Tlf-1.4 aliases may be defined for the multipliers.  Define the aliases as:

                  multiplier:alias1,alias2,alias3

              If  you log a QSO with one of the aliases it will be counted as the multiplier.  You can have more
              than one line for the same multiplier.

              This is useful for state QSO parties as an instate participant where  instate  operators  exchange
              county  abbreviations rather than the state but the state can only count once (Kansas QSO Party is
              once such example).

       SECTION_MULT[=<ON|OFF>]
              Multiplier is section from multipliers file.

              Counts per band.

       SECTION_MULT_ONCE[=<ON|OFF>]
              Multiplier is section from multipliers file.

              Counts once per contest, not per band.

       CONTINENTLIST="comma separated list of continents"
              Valid values are: SA, NA, EU, AF, AS and OC.

       CONTINENT_LIST_POINTS=d
              Points for stations from continents in CONTINENTLIST

       USE_CONTINENTLIST_ONLY
              Score zero points for station from continents not in the list.

       BANDWEIGHT_POINTS
              Define a point weighting factor for different bands.

              For example, setting:

                  BANDWEIGHT_POINTS=160:3,80:2,40:1,20:1,15:1,10:2

              for use in the All Asia DX (AADX) contest will multiply all QSO points by 3 on 160m, by 2  on  80m
              and 10m and on all other bands only by 1.

              Bands not in the list are weighted by 1.

       BANDWEIGHT_MULTIS
              Allow a weighting factor for multipliers on different bands.

              For example, setting:

                  BANDWEIGHT_MULTIS=80:4,40:3,20:2,15:2,10:2

              for  use in the Worked All Europe DX Contest (WAEDC) will multiply the number of multipliers on 80
              by 4, on 40 by 3 and on 20/15/10 by 2.

              The multiplication is executed after any other multiplier calculation.

              Bands not in list will be weighted by 1.

       PFX_NUM_MULTIS
              In WAEDC (and maybe with other contests too) the multipliers  are  the  different  countries,  but
              there are some exceptions where the prefix of certain countries is a different multiplier.

              In  WAEDC  these countries are: W, VE, VK, ZL, ZS, JA, PY, RA8/RA9 and RAØ.  With this option, you
              can define the country prefixes:

                  PFX_NUM_MULTIS=W,VE,VK,ZL,ZS,JA,PY,UA9.

              Tlf will read this list, perform a lookup in a countrylist for a country code, and that code  will
              be  used.   If  you include the UA9 prefix and then make a QSO with a station from Asiatic Russia,
              the PFX number will evaluated with a new multiplier, but European Russia will not.

       EXCLUDE_MULTILIST
              Some contests have a special multipliers list, which is easier to write by excluding a  predefined
              set.

              For example, the main set could be COUNTRY_MULT, and you need to exclude from that list just a few
              countries, (e.g. the SAC contest excludes the Scandinavian countries as they are not multipliers).
              In that case you can use this configuration:

                  COUNTRY_MULT
                  COUNTRYLIST=JW,JX,LA,OF1,OF0,OJ1,OJ0,OX,OW,OZ,SM,TF
                  EXCLUDE_MULTILIST=COUNTRYLIST

              Another  useful example is the WAEDC RTTY contest where all stations can work each other, however,
              for EU stations only the non-EU stations are the multipliers, and the opposite for non-EU stations
              where only the EU stations are the multipliers.  In  that  case  the  EU  stations  can  use  this
              configuration:

                  CONTINENTLIST=EU
                  COUNTRY_MULT
                  EXCLUDE_MULTILIST=CONTINENTLIST

              and all countries are multipliers, except for the EU stations.

              Also, in this contest the non-EU stations can use this configuration:

                  CONTINENTLIST=SA,NA,AF,AS,OC
                  COUNTRY_MULT
                  EXCLUDE_MULTILIST=CONTINENTLIST

              and  all  EU countries are multipliers and not those from the SA, NA, AF, OC and AS continents, so
              only the EU stations remain as multipliers.

       UNIQUE_CALL_MULTI=ALL|BAND
              Multiplier is the callsign.

              The argument tells Tlf, how to score the callsigns as multipliers:
              ALL means the callsign is a multiplier once per the contest, independent of band.
              BAND means the callsign counts as a multiplier per band.

       GENERIC_MULT=NONE|ALL|BAND
              Use generic multiplier determined by the contest plugin.

              The argument  specifies  the  multiplier  counting  rule  (see  above).   Default  value  is  NONE
              (disabled).

       PLUGIN_CONFIG
              Specifies  the  argument  to  the  contest  plugin's init function.  See the PYTHON PLUGIN section
              below.

   Exchange
       The following parameters configure Tlf's handling of the exchange.

       SERIAL+SECTION[=<ON|OFF>]
              Exchange is serial number and section, multiplier is section from multiplier file.

              Counts per band.

       SERIAL_OR_SECTION[=<ON|OFF>]
              Exchange is serial number or section.

              This option is similar to SERIAL+SECTION, except the exchange could be a serial  OR  the  section.
              This  option  was  introduced for HA-DX, where HA stations give the shortest form of their county,
              other stations give serial.

       SERIAL+GRID4[=<ON|OFF>]
              Exchange is serial number and grid (e.g. 001 JO21QI), multiplier is 4-character grid (JO21).

              Counts per band.

       DX_&_SECTIONS
              Multiplier is DXCC country or section from multiplier file.

       RECALL_MULTS
              Exchange can be recycled, will  be  filled  into  exchange  field  when  it  is  known  (see  also
              INITIAL_EXCHANGE).

       INITIAL_EXCHANGE=exchanges.txt
              The file must contain a comma-separated list of exchanges.

              If the exchange is the name of the operator, the file should contain lines like:

                  PA0R,rein
                  PG4I,joop
                  OK1RR,martin

              If RECALL_MULTS is set, Tlf will look in this list for the exchange and fill it in for you.  There
              are  various  contests  which have a standard exchange, such as the FOC Marathon.  The module also
              recognises embedded calls (e.g. CT3/PA0R/QRP).

       CONTINENT_EXCHANGE[=<ON|OFF>]
              Exchange is a continent (NA, SA, EU, AS, AF, OC).

       SERIAL_EXCHANGE
              Exchange is a serial number (formats received exchange and  configures  Cabrillo  exchange).   Set
              this only if both sent and received exchanges are plain serial numbers.

       MYQRA  For  the “Stewperry” contest, this option is used to set the QRA (Maidenhead) locator, (e.g. JN97,
              or the full form: JN97OM).

              In Stewperry, the points are calculated based on the distance between the stations  as  calculated
              between this setting and the locator entered into the exchange field.

   QTC
       The following parameters configure Tlf for the Worked All Europe DX Contest (WAEDC) exchange of QTCs.

       QTC=direction
              Send or receive QTCs in a contest (usually on WAEDC).

              direction is one of: RECV, SEND, BOTH

              Note:  Currently  just  the  RECV  direction is implemented.  For more information, please see the
              /usr/share/doc/tlf/Manual.md file.

       QTC_CAP_CALLS=list_of_qtc_capable_callsigns.txt
              Indicate that the station is QTC capable and highlight it in the bandmap or worked window.

              Put the callsigns of such stations in a file in the working directory, one callsign per line,  and
              give its name as an argument to this parameter.

       QTC_AUTO_FILLTIME[=<ON|OFF>]
              If you use the QTC feature and you are an EU station in CW or SSB modes, then you can only RECEIVE
              the QTCs.

              Most  sending  stations  send  their  QTCs as a short form.  For example, after the first line the
              first two characters of time field are not sent.

              If you set this option, then when you fill the first QTC  line,  Tlf  will  fill  the  other  time
              fields,  but  only  the  first two characters.  If you change the hour (e.g. if there is a time of
              2059 and the next one is 2100), then all next time fields will be changed.

       QTC_RECV_LAZY[=<ON|OFF>]
              If you use the QTC feature, and you are an EU station in CW or SSB modes, then you  can  use  this
              feature.

              By  default,  Tlf  validates  all  received QTC lines (i.e. the time field must be four characters
              long; callsign and serial fields must not be empty).

              If you set this parameter, Tlf will not perform validation.

CABRILLO CONFIGURATION

       This section covers the configuration of Cabrillo processing.

       The fields of the generated Cabrillo file can be either

         • set to a fixed value,

         • input interactively,

         • or disabled.

         Note: A template file defines the values used in the headers of  the  Cabrillo  file.   A  format  file
         defines the fields of the QSO lines in the Cabrillo file.

   Using a Cabrillo template
       A  Cabrillo  template  is  used to provide station specific values that will be placed into the generated
       Cabrillo file.  Tlf will not prompt for values listed in this file when the :WRI command is issued.

       Note: The template keywords are the same as the parameters  below  with  the  CABRILLO-  prefix  omitted.
       Cabrillo  keyword  definitions can be found at the World Wide Operators Foundation Cabrillo specification
       page.

       CABRILLO-TEMPLATE=file.cbr
              The specified file is parsed and the values from relevant lines are taken the same way as if  they
              were added via a config file.

              The header, footer, comment and QSO lines are ignored.

              One  can, for example, re-use a file from a previous contest or use a sample file provided for the
              contest.  Another possibility is to summarize the station-specific values in  a  station.cbr  file
              (see   as   an  example  /usr/share/doc/tlf/station-sample.cbr).   As  multiple  CABRILLO-TEMPLATE
              parameters can be specified, it allows for separating the contest and station specific parts.

              This is an optional configuration as the same effect can be reached  by  plain  configs  (via  the
              logcfg.dat and rules files).

              Note: The CABRILLO- prefix is required in the config files.

   Internal configuration
       Following parameters control the generation of QSO lines.

       CABRILLO-EXCHANGE=format
              Specifies the sent exchange format.

              The  hash mark (“#”) stands for QSO serial number.  For a contest using a fixed exchange enter the
              value here (limited to 39 characters).

       CABRILLO=format
       CABRILLO-QSO-FORMAT=format
              Set the format of QSO and QTC lines including the separator character for the received exchange.

              The format descriptions are contained in cabrillo.fmt  either  in  the  current  directory  or  in
              /usr/share/tlf.   The  specified format file is used both to generate Cabrillo output and also for
              Cabrillo import.  For technical details see /usr/share/doc/tlf/Manual.md.

              A cabrillo.fmt format file is used to generate  a  Cabrillo  file  when  a  predefined  format  in
              /usr/share/tlf/cabrillo.fmt  does  not  exist.   For many events the UNIVERSAL format is adequate,
              otherwise you'll need to roll  your  own  based  on  the  log  submission  rules  of  the  contest
              organizers.

   Configuring header information
       Cabrillo  header  fields  can  be set using the keywords listed below.  The value assigned to the keyword
       controls the processing of the field:

         • value not in parentheses, e.g. “9ACW” taken verbatim,

         • value in parentheses, e.g. “(YES,NO)” will be asked interactively, with the provided text as hint

         • a single dash ”-“ value disables the field (neither asked nor output) keeping its value,

         • no value (i.e. a keyword without equal sign) just enables the field without changing its value.

       Note: The order of the headers in the Cabrillo file is fixed  and  independent  of  the  order  they  are
       present in a config or template file.

   Header Keywords
       Note:  These  keywords and the internal ones can also be used in a Cabrillo template just by removing the
       CABRILLO- prefix and using ”:“ as value separator.

       CABRILLO-CONTEST
       CABRILLO-CATEGORY-ASSISTED
       CABRILLO-CATEGORY-BAND
       CABRILLO-CATEGORY-MODE
       CABRILLO-CATEGORY-OPERATOR
       CABRILLO-CATEGORY-POWER
       CABRILLO-CATEGORY-STATION
       CABRILLO-CATEGORY-TIME
       CABRILLO-CATEGORY-TRANSMITTER
       CABRILLO-CATEGORY-OVERLAY
       CABRILLO-CERTIFICATE
       CABRILLO-CLAIMED-SCORE
              (Score value is replaced with the calculated score.  It can be disabled but not set.)
       CABRILLO-CLUB
       CABRILLO-LOCATION
              (Locator automatically filled, if enabled and MYQRA is set.)
       CABRILLO-GRID-LOCATOR
       CABRILLO-NAME
       CABRILLO-EMAIL
       CABRILLO-ADDRESS
              (3 generic address lines available)
       CABRILLO-ADDRESS(2)
       CABRILLO-ADDRESS(3)
       CABRILLO-ADDRESS-CITY
       CABRILLO-ADDRESS-STATE-PROVINCE
       CABRILLO-ADDRESS-POSTALCODE
       CABRILLO-ADDRESS-COUNTRY
       CABRILLO-OPERATORS
       CABRILLO-OFFTIME
       CABRILLO-SOAPBOX
              (3 soapbox lines available)
       CABRILLO-SOAPBOX(2)
       CABRILLO-SOAPBOX(3)

PYTHON PLUGIN

       Tlf uses Python plugins to customize or extend functions beyond the built-in features.  Two  notable  use
       cases are adding a specific scoring logic and determining multipliers.

       The Python plugin file is loaded the same way as the RULES file but the file must have py extension.

   tlf Python module
       Tlf core functionality and constants can be accessed via the pre-imported tlf module.

       Constants
         CWMODE: int
         SSBMODE: int
         DIGIMODE: int
         MY_CALL: str
         MY_LAT: float
         MY_LONG: float

       Functions
         def get_qrb_for_locator(locator: str) -> Qrb:
              Returns  the  distance  (in km) and bearing (in degrees) to the specified locator from the current
              location.
         def get_dxcc(call: str) -> Dxcc:
              Returns the DXCC information for the given call using the cty.dat file.

   Data structures
       Qso
         call: str         callsign
         exchange: str     received exchange
         band: int         band in meters
         mode: int         one of tlf.CWMODE, tlf.SSBMODE or tlf.DIGIMODE
         utc: int          time in integer seconds since epoch

       Qrb
         distance: float   distance in km
         bearing: float    bearing in degrees

       Dxcc
         country_name: str
         main_prefix: str
         main_cq_zone: int
         main_itu_zone: int
         main_latitude: float
         main_longitude: float
         main_continent: str
         main_timezone: float
         starred: bool
         prefix: str
         cq_zone: int
         itu_zone: int
         latitude: float
         longitude: float
         continent: str
         timezone: float
         exact: bool

   Functions
       All plugin functions are optional.

       def init(cfg: str) -> str:
              Called once on Tlf start up. It shall initialize the internal state of the plugin.

              The parameter cfg contains the value provided to PLUGIN_CONFIG. It can  be  used  to  control  the
              internal logic of the plugin. If no PLUGIN_CONFIG is specified then an empty string is passed.

              The  return value is a string specifying the minimal required Tlf version (e.g. '1.5'). In case of
              no version dependency None shall be returned.

       def setup() -> None:
              Called whenever the QSO list is initialized (e.g. on inital loading of  the  log  file  or  before
              rescoring it). It shall reset any internal structures related to QSOs.

       def score(qso: Qso) -> int:
              Called before actually logging a QSO.  It shall return a non-negative score value.

       def check_exchange(qso: Qso) -> Dict[str, str]:
              Called  when  exchange  is  received  or  updated.   From the returned dictionary these (optional)
              entries are evaluated:
                 mult1_value: str
                 normalized_exchange: str

              mult1_value is used as a multiplier without further conversion.  The handling of  this  multiplier
              is controlled by the GENERIC_MULT parameter.

              normalized_exchange replaces the received exchange in the finally logged QSO.

FILES

       /usr/share/tlf/logcfg.dat is a recent example of a generic configuration file.  Tlf will copy it into the
       current  working  directory if it does not find one there.  It is recommended to copy it into the working
       directory and edit it to match the contest.

       It contains, amongst other settings, the name if the rules file, your  call,  info  about  ports  for  CW
       keying,  packet  or rig control, etc. related to your station.  You should test your settings well before
       the contest!

       /usr/share/tlf/rules/contestname contains the rules of the various contests.  You can  easily  write  one
       for  your favourite contest making use of the various multiplier and points capabilities.  Test it before
       the contest and send a message to the Tlf development list if anything is wrong (or right!).

       It contains name of the log file, contest rules, points, multipliers, and other parameters related to the
       contest,

       /usr/share/tlf/cty.dat contains a flat ASCII database of info about countries.

       This is the same file as used by CT or TR-Log.  Updated versions from  Jim,  AD1C,  are  available  from:
       Country Files.

       Tlf  looks  for  this  file first in the current working directory, so an update is possible without root
       rights to replace the package installed version (likely well out of date).

       /usr/share/tlf/callmaster contains a flat ASCII database of known contest callsigns.

       Updates are available from Super Check Partial.  Save the master.scp file as callmaster  in  the  working
       directory  (or use CALLMASTER=master.scp to use the default file name).  It will take precedence over the
       system installed callmaster file which is likely well out of date.

       Section files contain a flat ASCII database of multipliers like states, sections,  provinces,  districts,
       names, ages, etc.  They are used by including MULT_LIST=section_file_name in the rules file.

       Some  of  these files are supplied by Tlf while others will need to be written by you.  Please offer your
       files to the developers for inclusion in the distribution or placed on the Wiki (see below).

DOCUMENTATION

       The documentation page at GitHub contains some more information.

       An FAQ and other useful tips are installed /usr/share/doc/tlf.

       The project Wiki will host various contest specific information and files.

BUGS

       Please send bug reports to the Tlf development list.

AUTHORS

       Tlf was originally written by Rein Couperus aka Rein Couperus and  is  maintained  from  2009  onward  by
       Thomas Beierlein.

       A  lot  of valuable contributions have been received from PG4I (Joop PA4TU), PA3FWM, LZ3NY, VA3DB, OM4AA,
       OK1RR, DH5FS, G4KNO and various other contributors.  (See the AUTHORS file for more).  Thanks to all  for
       improving Tlf!

       Beta testers and feedback are always welcome!

TLF                                          Tlf 1.5~git, 2022-09-18                                      TLF(1)