Change Log: 3.04 1) Changes to irrxml functions; added main.set_sideband added log.set_call 2) Change to macro timer implementation - bug fix for Windows 3) Fixed bug in WFaveraging - save configuration 4) Fixed ARQ tcpip bugs when used with pskmail 5) Added end of transmit feedback to ARQ client when transmit is stopped from within fldigi (T/R button pressed). 6) XML-RPC fixes & simplification of XML-RPC error handling. 7) Added simple XML-RPC access control with three new switches --xmlrpc-allow REGEX only allow matching methods --xmlrpc-deny REGEX ignore matching methods --xmlrpc-list list methods For example: fldigi --xmlrpc-deny 'main.tx|main.run_macro' or the shorter 'main.(tx|run_macro)' will unregister those two methods. Add --xmlrpc-list after an allow or deny switch to verify the results. 8) Added thread signal handling with SIGUSR2 to stop the xmlrpc and arq-socket threads and avoid the socket accept/timeout loop. 9) Removed fl_thread wrappers to direct pthread calls 10) Added various Qrunner updates 11) Added rig control freq entry. Click on Frequency Control widget for focus. Enter digits in kHz.kHz. to use new value, to cancel. 12) Added qsy function. Moved the hamlib/rigcat/etc qsy if/else block into its own function and replaced all instances of that code. 13) Add waterfall mouse options a) Added Mouse tab to the W-fall tab(s). b) Added waterfall qsy option, which works well with rigcat and hamlib (direct and rpc.rigd). c) Added text field whose contents are appended to the RX window when the frequency is changed via a waterfall left click. The text will be printed by strftime if it contains any % characters, so it's possible to specify something like "<=== %x %H:%M ====>" for the RX divider line. 14) Deprecated the "rtty is USB" configuration item. fldigi adjusts all tone inversion sensitive modes for USB / LSB operation. 15) Changes to command parsing used by the ARQ interface(s); TLF, SysV and ARQ socket. 16) Reduced the minimum main window height. 17) Added fldigi-shell time command Try this "stress test": time eval for (1..50) { execute("modem.set_by_name BPSK31"); \ execute("modem.set_by_name RTTY"); } 18) Added brief message to the opening Rx text area indicating which macro file was loaded on start up. This is a configurable item on the Misc/Macro tab 19) Addition of Navy MARS prosigns to the CW Morse encoder / decoder. 20) Add new option to dock a digiscope and deprecate command line switch 21) Add option to change waterfall mouse wheel handling. Adapt patch by Stephane F8CFE to change rig frequency via the mouse wheel. 22) Added NNN macro tag; causes signal to idle for NNN seconds before sending macro text. Use: 05 Now is the time for all good men 20 will generate 5 seconds of idle, the text, and repeat after 20 sec's. 23) Added new configuration options to set the waterfall width and height These and the docked digiscope configuration option require a program restart to take effect. 24) Added rig control widgets to the main dialog qso panel. 25) Added icons for many of the menu items. The menus now have both an icon and a text where appropriate. 26) Added a check box for "Nag me about log entries". 27) Added a double click on waterfall functionality. This will write a special string to the Rx text window such as: <<2008-10-30T23:25Z BPSK-31 @ 3580000+1474>> This record is then accessible using the mouse in the Rx text window. You can then left click on the string and fldigi will change mode, rf frequency (if CAT), and audio frequency to the saved record. The text field associated with "Insert on left click" (W-fall/Mouse tab) allows you to modify this behavior. You enter the following for the left click insertion text: and the double click changes to a single left click. 28) Added QSO data mouse binding. Binds Rx text mouse-2 (right mouse button) to a handler that enters QSO data into the log fields. A limited amount of pattern matching is done to recognize RST reports and IARU locator strings. The text is meant to be middle-clicked roughly in the order in which it tends to appear in QSOs: callsign RST name QTH locator. The other shortcuts (menu items and Shift-click work as before). 29) Fixed IZDT time format. The timezone only makes sense in ILDT. With IZDT, it is always +0000, so we should be using "Z". This applies to macros which use the and tags. 30) Added double click in the Rx text window. Program parses the word to target CALL, NAME, LOC and RSTin. 31) Added addition macro tag to insert the text in the two status fields such as PSK s/n and PSK imd readings. 32) Menu icons can be toggled on/off via configuration check box. 33) Improved hamlib support code. 34) Color changes for Frequency Control now applied to both docked and floating rig control. 3.03 1) Changes to socket server to correct shutdown process 2) Added event logging and an event viewer 3) Added QRZ cdrom / database location specifier with auto-search 4) Bug fix for sound on OS X 10.4 5) Bug fix for Socket Server. Added error checking for listen(). 6) Update to build scripts. Corrected compiler flags for building universal binary on OS X. Changed to a more reliable way of linking hamlib statically. Updated app bundling script. 7) Set tooltip font - tooltip changed to use same font and size selected with the command line switch --font. Set default font sizes on OS X. 8) Inhibit Tx / Rx of higher speed MFSKpic modes on slower computers 9) Added color selection for Rx/Tx text panels Normal text Transmitted text Control character text Skipped text Alternate (quick view) text Background 10) Changed the way that RTS/DTR PTT is used with rig.xml files 11) Updated regular expression parser 12) Modified passing of fd's to child processes 13) Changed "no color" buttons to background vice background2 (white). Setting -bg on command line switch now controls the "no color" value for the macro buttons. 14) Fixed macro timer to properly reset if re-invoked during timeout period. 15) Fixed broken access to on-line subscriber Hamlog data base 16) Removed trailing spaces from frequency field in ADIF file 17) Changes to rigio thread loop to disable reads during transmit 18) Improved serial port discovery 19) Added History replay option - when enabled; right click on waterfall replays audio history buffer. 20) OS X resize handle / button overlay fixed 21) Modified sound port Event Log message. 22) Added Callsign to Title Bar "NO CALLSIGN SET" if the MyCallsign is void. 23) Added "log.clear" to xmlrpc command set - clears the data in the logbook fields. 24) If compiled into the executable the xmlrpc server is always started. ARQ server is also started. Both can be serviced concurrently. 24) Increased RTTY cross-hair scope sensitivity 25) Modified Generate/Playback file to be closer to Capture in signal level. 26) Modified "view transmit" signal level to be closer in amplitude to Rx signal level. 27) Fixed XMLRPC bug in mode.set_by_id and mode.set_by_name calls 28) Added $LOC locator field to ... calls for return values ($NAME $QTH $LOC). 29) Added "tlf", The Left Foot, contest program support. fldigi accepts tx data and returns rx data to tlf. (Linux primarily). 3.02 1) Added hamlib interface for rig control 2) Improved rigCAT serial communications on Windows 3.01 1) Compile switch changes for OS-X 2) Corrected serial port discovery on Windows 3.0 1) Added EXEC macro 2) Added mousewheel over Macro buttons to move between macro button sets. 3) Fixed bug in Olivia signal level display. 4) Ported to Windows (win32) and OS-X 5) Added floating digiscope and / or fixed scope abutting waterfall specified with command line switch --twoscopes Default is floating digiscope without the fixed scope 6) Added save as png to mfsk-pic reception 7) Added RTTY Baudot Unshift-On-Space configuration for Rx and Tx 8) Modified mouse wheel handler to accommodate horizontal or vertical squelch slider. 9) Call scopeview->size_range when the floating digiscope changes mode; so that the phase and crosshair rtty scope should maintain aspect ratio. 10) Modified the Ctrl+Left/Right mouse button combo to not drag the marker. 11) Deprecate the --resample switch in favour of the new menu in the Audio Settings tab. Move sound initialisation code out of configuration.cxx and into soundconf.cxx. Make Native the default sample rate selection. 12) Changed the main window's callback and the File->Exit handler to not exit() but, rather, hide the windows so that Fl::run will return and main can clean up. (fix for Sig 11 faults at exit). 13) Rename jpeg.m4 to images.m4 and extend it to also detect libpng. Make both libraries optional. Add new optional fourth argument to the file selector functions, used to determine file format regardless of filename suffix. 14) New sound callback code implementation. 15) Two-colour squelch button shows Yellow Squelch enabled but not open, Light Green enabled and open. 16) Experimental RTTY mark/space cross hair display using mark / space filters. 17) Psk phase scope: 3 modes selectable by multiple left clicks on face of digiscope. 1) original single vector display 2) fading fixed length vector display 3) fading variable length vector display; length proportional to signal quality. 18) Completely new DominoEX decoder - similar in theory to ZL2AFP DominoEX, which has FFT bin resolution 4x the tone spacing. No AFC is required for proper tracking of the Rx signal. 19) Removed ZOH and Linear interpolator choices from the resampling choice menu under Sound Card configuration. 20) Fixed a bug in the global.cxx structures. Missing field in "CW" definition. 21) Added Latency setting for waterfall FFT. Latency relates to the amount of signal that is shared between waterfall scans. A higher latency gives better resolution in frequency and blurriness in time (waterfall drop). A lower latency gives better resolution in time and less in frequency. The waterfall accuracy is still related to the FFT size and that remains fixed for an accuracy of 1 Hz. 22) Added MultiPsk, DominoEX-FEC modes 23) Added new modem type DEX (Domino Extended), an FEC only Domino mode that supports the full ASCII character set in the primary and the printable ASCII English character set (less control codes) in the secondary. 24) Use Fl_Preferences for the status The new status filename is ~/.fldigi/status to avoid breaking older versions. 25) Stacktrace updates - Some cosmetic changes to the output. Stack and version info no longer printed twice when a signal is caught. 26) Use PortAudio extensions - Probes for PortAudio extensions with dlopen. right now the only extension used is the one that changes the JACK client name. 27) Updated PulseAudio code so that non-ppm resampling is performed by PulseAudio when that sound i/o system is used. 28) Changed the capture resampling code for PortAudio and PulseAudio to use libsamplerate's callback API. 29) Use fileselect filter values. Made the audio format independent of the filename suffix in the generate/capture/playback code; uses the fileselector filter value instead. 30) Update fileselector - Fileselector now remembers previous directory. 31) MFSK bug fixes. The "broken image transmit" was due to stopflag not being initialised in the mfsk ctor. Image window processing changed to clearing the widget before redrawing the window. 32) Fix crash with missing mixer device - Call OpenMixer in a try block and handle the exception. 33) Changed DominoEX-FEC secondary char lookup to a std::map type. 34) Corrected two coding errors which produced compile warnings in dominoex.cxx and mt63base.cxx 35) Bug fixes for the FM Hell modes 36) Changed the way that the video text / id is generated. 37) Added XML-RPC support. 38) Added Audio Device identification display (on Help menu) 39) Added transmit & receive Reed Solomon mode identifier. Automatic detection, mode change and frequency centering during receive. ID sent at beginning of each transmission (toggled on Misc tab). 40) Fixed bug in waterfall update method that could cause a seg fault under certain conditions. 41) Change to PortAudio samplerate probing. 42) Increased average power level in MT-63 mode. 43) Significantly decreased cpu usage with changes to qrunner and complex classes. 44) Forced audio-in channel on PortAudio and PulseAudio to 1 channel (left) to accommodate Vista MME interface. 2.10.3) 1) Corrected memory leak bug. 2.10.2 1) Bug fix for QRZ CDROM access 2.10.1 1) Fixed bug in MODEM macro that caused TX to hang 2) Fixed sound_init crash. This would happen with an empty progdefaults.OSSdevice (e.g. new install) on a system without OSS devices. 3) Deleted local copy of libsamplerate as it was deprecated. 4) Deleted the fast text widgets that were a part of the early versions of fldigi and had been retained for some performance improvement. Recent changes to the more complete text widgets have equalled the performance of the fast text widgets. 2.10 1) Added history decoding (ctrl-Left-click in waterfall). Available after tracking has started. This does not start a new signal acquisition. 2) Rewrote Psk and ViewPsk to use shared signal detection class 3) Made OSS optional and added autoconf macro to detect its presence 4) The volume sliders will now be hidden if the mixer is disabled 5) Added a macro that changes the current modem 6) Added "Log File" status to saved application state 7) Added "use default audio device" if h/w changes 8) Fixes to ringbuffer / audio backends 9) Fixes to mfsk picture mode decoding 10) Changed frequency2 data file format, downward compatible 11) Added HELL80, FELD_SLOWHELL, FELD_HELLX5 and FELD_HELLX9 modems 12) Added Pulse Audio support with support for separate capture and playback devices and sample rates 13) Added mt63 500/1000/2000 modes 14) Added psk acquisition level control 15) Rename some classes so that fldigi builds on Mac OSX. Added script to create .app bundles on OS X Many thanks to Justin Burket and Diane Bruce. 16) Rx-slider, Tx-slider, Squelch-slider values added to the saved application state. 17) Increased number of macros to 48. F11 & F12 now accessible by mouse or keyboard. Alt Function key button changed to rotate forward (left- click) and rotate reverse (right-click) through macro sets. 18) New color and font selection dialog - Rx / Tx widgets and macro button background colors are user selectable 2.09 1) Modified src/Makefile.am for FreeBSD name space clash 2) Added psk multi-channel viewer with regex search capability 3) Rewrote audio capture/playback/generate routines to use the libsndfile C API. Added .au support (32bit floats, host endianness) 2.08 1) Changes to build process: a. Use PortAudio's C API; the C++ bindings are no longer required b. Boost is no longer required when std::(tr1::)bind is available, as is the case with g++ >= 4.0 c. Autodetect TLS support d. Use std::bind (or std::tr1::bind) if available. e. Add m4 macros for TLS autodetection (the --enable-tls/--disable-tls switches are still supported). f. Minor changes to configure.ac 2) qrunner cleanups 3) New ringbuffer and other utility code 4) New item in the sample rate menu: "Native" selects the hardware's preferred sample rate. Breaks backward compatibility: saving this with fldigi-2.08 will result in an "invalid sample rate" message if the same fldigi_def.xml file is then used with 2.07 -- until "Auto" or a specific value is selected again. 5) Correction to the waterfall's "casual tuning" feature: don't set the modem to SIGSEARCH when the right mouse button is released. 6) Set locale only for LC_TIME 7) Add .desktop, move icons to data/; for deb / rpm build compatibility 8) Exception trapping and print to stdout on program failure 9) Fixes to modem class logic: a. Olivia Corrected uninitialized variables. b. MFSK Corrected uninitialized variables. Fixed memory leak. c. CW Corrected uinitialized variable. d. Throb Fix memory leak caused by using the wrong delete operator. e. PSK Corrected uninitialized variables. 10) Rigcat/Hamlib dialog. Added mode, sideband, and current audio frequency to "saved" frequencies list. 2.07 1) bug fix for mode changes via SysV interface (pskmail / flarq) 2) bug fix for modem configuration post quick change from status bar using mouse wheel. 2.06 1) Source code fixes for 64 bit compilers 2) New stacktrace code, used by default exception & signal handlers 3) LDT / ZDT: locale settings are now recognized in macro expansion. New ILDT / IZDT macros to expand date in iso-8601 format 4) The rig control window's frequency list now stores rig mode, modem and waterfall carrier. Hence, ~/.fldigi/frequencies.txt uses a new format 5) Additional mouse wheel function: when pointer is over the digiscope display, the mouse wheel (no key modifier) alters the PSK AFC search range, FeldHell filter BW, or CW filter BW 6) The Audio menu is now a submenu of Files 2.05 1) Converted entire make system over to the GNU autoconf / automake format. See the INSTALL file for additional information 2) Corrected various minor bugs 3) Added mouse wheel functions when mouse is in waterfall display a) click - toggle AFC b) shift - alter SQL level c) ctrl - alter PSK search range. 4) modified waterfall cursors to show the search range 2.04 1) added full waterfall video texting using FeldHell Modern-8-14 font. 1, 2, 3 or 4 characters per video line. 2) bug fix for center mouse button toggle of AFC. 3) added option to insert CW identifier at end of transmission 2.03 1) bug fix for new startup Sound Card / Mixer naming on configuration tab. 2) bug fix for initial startup frequency 3) bug fix for homedir discovery 2.02 1) additional fixes for extended text widgets 2.01 1) Bug fix release a) Throb modems failing to stop with t/r button b) Modem startup problem when switching modes. c) crlf fix for received characters d) scrollbar fix for extended text widgets 2.0 1) Increased TxPPM to +/- 50000 to match the RxPPM range 2) Changed all audio i/o to separate 2 channel control (stereo) 3) Added right channel CW QRQ signal 4) Added right channel pseudo FSK signal 5) Added position and size of main dialog to state memory 6) Added status and position of rig control dialog to state memory 7) Added PSKmail tab and control to allow disabling the automatic return to the PSK sweet spot if running a mail server 8) Added "Save To" menu item on received text popup menu. 9) Corrected memory leak bugs found in version 1.34 10) Added "Test" capability to save Rx or Tx waveforms in ".wav" format and to play them back for testing modem decoders. 11) Replaced text editing widgets with new widgets capable of cut, copy and paste. ===> temporarily disabled pending resolution of cpu% problem 12) Added new functions on text widget popup menus 13) Added a QSY undo (right button press) 14) Added a who is this capability to waterfall -- press right button and hold on a signal and decoding occurs on that signal. Release and decoding returns to normal tracking point. 15) This release requires libsndfile, libportaudio and libportaudiocpp The new libraries provide portaudio sound card mapping, and the ability to save and playback wav files (when fldigi is run as: fldigi TEST). 16) Added Azimuth computation to QRZ query (submitted by WA5ZNU). 17) Corrected adif file header field fldigi 18) Added fix to psk decoder sync detector. Thanks to the PocketDigi author, Vojtech Bubnik, OK1IAK. 19) Added popup menu (right click) to the lower left corner modem button. Allows quick change on psk modes only. Left button still opens up the configuration tab for the modem in use. 20) Changed QRZ.com query to XML registered user query, see QRZ config- uration tab. 21) Added grunner and boost libraries. These separate the modem threads from the gui thread. This provides a considerable improvement in modem performance. 22) Restored the new text editing widgets and also retained the fast text widgets that do not have full editing capability. User can select which of the text widgets will be used. Default is the fast text widget. An fldigi restart is required after making a change to the widget selection on the "misc" configuration tab. 23) Multiple changes to hamlib interface to correct deficient behavior on startup and when changing frequency. 24 Changes to several modem code structures associated with qrunner implementation. 25) Text widgets support additional text styles: NATTR : FOREGROUND_COLOR XMIT : FL_RED - used in Rx widget to show Xmt'd text CTRL : FL_DARK_RED - used in Rx/Tx widgets for control chars SKIP : FL_BLUE - used in Rx/Tx for skipped chars (eg: Tx ON/OFF) ALTR : FL_DARK_GREEN - used in Rx widget for quick view of signal when right-clicking on a waterfall signal 26) Added additional control/mode commands to the pskmail/ARQ SYSV message queue processor. Mode command strings are now: CW : CW DOMINO EX4 : DOMINOEX4 DOMINO EX5 : DOMINOEX5 DOMINO EX8 : DOMINOEX8 DOMINO EX11 : DOMINOEX11 DOMINO EX16 : DOMINOEX16 DOMINO EX22 : DOMINOEX22 MFSK8 : MFSK8 MFSK16 : MFSK8 PSK31 : PSK31 PSK63 : PSK63 PSK125 : PSK125 PSK250 : PSK250 RTTY : RTTY TUNE : PTTTUNE this will cause fldigi to enter the TUNE mode for a very brief 100 milliseconds. 27) Abandoned the original fldigi.def configuration file and changed to an xml based configuration file. New file is $HOME/.fldigi/fldigi_def.xml You may delete all occurances of $HOME/.fldigi/fldigi.def, and $HOME/.fldigi/FLDIGI_XML.DEF Future changes to the configuration should never require deleting the old configuration file. You will need to reconfigure and save the program configuration the first time the new version of fldigi is executed. 28) Added numerous command line switches which control the look and feel. use "fltk --help" from a terminal window to view the switch options. 1.34 1) Cleaned up unused code segments 2) Modified CW decoder to allow setting upper and lower limits on Tx WPM 3) Modified sound card PPM corrections to allow a +/-50000 range. Prompted by some users reporting ppm requirements exceeding 25,000 ppm at 8000 Hz sample rate. Same card gives < 200 ppm at 11025. 4) Modified the combo widget to allow both editable and non-editable forms. The combo widget for the rig selection cannot be edited, but just selected from the pick list. The combo widget for the frequency entry (no rig control) in the qso area can now be modified by direct keyboard entry and also from the pick list. You still need to update the pick list via the $HOME/.fldigi/frequencies.def file. 5) Modified pskmail to test for failure in reading gmfsk_autofile 6) Wholesale replacement of font browser dialog to correct potential segfaults with some TT fonts. 7) Modified pskmail-to-fldigi i/o schema to allow all control and data files to be placed in either the $HOME/pskmail.files or the ./ directory. The control files are: PSKmailserver PSKmailclient The data files are: pskmail_out (formerly gmfsk_autofile) mail-io.log (formerly gMFSK.log) 1.33 1) Modified Sound Card mixer dialog and interface code 2) Modified CW decoder and morse speed tracking algorithm with a new CW configuration tab layout and new CW controls. 3) Source code includes all required #ifdef & #define statements for compiling on FreeBSD 1.32 1) Correct compile problem for 64 bit compiler 2) Minor bug fix for Olivia initialization 1.31 1) Correct problem with cpu% in CW modem during transmit idle (no keyboard activity) 1.30 1) New macro definitions with built-in editor 2) loadable waterfall palettes 3) all qso's saved to the log are appended to an ADIF file in the $HOME/.fldigi folder 4) significantly improved Psk decoder 5) significantly improved DominoEX decoder capable of decoding signals anywhere within a 400 Hz bandwidth without AFC 1.24 1) Bug fix for serial i/o to disable XON/XOFF protocol effected rigs with binary i/o for rig control 1.23 1) Bug fix for saving state of PTT selection between sessions 1.22 1) Fixes serial i/o problem with certain rigs in the Icom series 1.21 1) Corrects bug in RigCtl dialog for PTT selection on serial line 1.20 1) Improved rig control and rig control dialog. Now possible to control rig without using hamlib - this is a new paradigm and you should read the on-line help that explains how to use the rigCAT control interface. rigCAT extended markup language definition files can be downloaded from the xml archives 2) improved WWV calibration procedure 1.11 1) Added items to saved configuration a. view transmit signal preference b. send ID preference 2) Corrected failure to properly change sound card selection after initial program settings 3) Internal changes to improve rx/tx thread processing 1.10 1) Added QRZ lookup for logging 2) Updated CW / FSK keyling output, added UART generated FSK signals 3) Added auto-logger macro reference to macro definitions 4) Online and download help updated for current version 1.04 1) Fixes a hamlib shutdown problem for some rigs transceiver should be ON and connected before starting fldigi and during fldigi shutdown 1.03 1) Improvements to pskmail server operation 1.02 1) Added user defined band definition file (info at: Freq Def File) 1.01 1) Fixes a memory leak problem 1.00 Initial release