* Add function modem->rx_flush() to flush receiver buffer to the
receive window on RSID modem reset/change.
* Repetitive conditional statements removed by reordering code flow
rsid::apply(). This also fixes reported bug by garylinnrobinson
"RxID bug that affects Olivia, Contestia, MFSK, RTTY"
* Add widget and control to retain frequency lock during a modem
reset/change.
* Add widget and control to disable/enable frequency change during
a RSID request while allowing modem change.
* Add widget and control to disable/enable Contestia FEC Block reset
on modem change/reset.
* Moved data flush function above RSID message output
* high speed playback of wav file
* on/off/toggle control is provided with an
undocumented macro tag
- <HS:on|off|t(oggle)>
* Start wav playback at normal speed and allow
decoding to begin. Then change to high speed mode.
Waterfall & scope are disabled during high speed
playback. Rx text display remains active.
* Added ability to playback sound file as single pass
or continuous loop. If in single pass then high speed
if toggled off at end of file.
* This patch contributed to by
W1HKJ, Dave Freese <w1hkj@w1hkj.com>
DO2SMF, Stefan Fendt <smfendt@gmail.com>
* Waveshaped FSK modem for classic RTTY using raised cosine
matched filters
* Kahn demodulator
* RTTY scope based on separate mark / space filter outputs
* Corrected s/n estimator
* Change RTTY browser to new demodulator
* Fixed missing browser highlight for callsign detection
* Bypass Viewer signal processing if viewer(s) are not visible
- significantly reduces % CPU use
* Separated psk-rtty range/value pairs for viewer squelch
control.
* This modification submitted by:
Arvo Jarve, ES1JA, <arvo@softshark.ee>
* Added CLOSE port rigcat command
* Added user control to enable/disable restortation
of serial port status bits when closing port
- use <RESTORE>bool_value</RESTORE> in xml definition
file.
* Added macro to insert QRG text into Rx stream
<QRG:text to insert>
* Added save macro <SAVE> tag
* Added export strings
- FLDIGI_LOG_FILE - current logbook file name
- FLDIGI_MACRO_FILE - current macro file name
* Added <PAUSE> tag
- returns to receive, but does not clear Tx buffer
* Added <TXATTEN:nn.n> <!TXATTEN:nn.n> tag to control
transmit attenuator control from within a macro.
* Corrected error in return value to FSEL::select (fltk-1.3.x)
when Cancel pressed in native file selector box.
- This coding error had the potential to cause an error for
every instance where the native file selector was invoked.
* This commit contributed to by:
- John Douyere <vk2eta@gmail.com>
- Dave Freese <w1hkj@w1hkj.com>
- John Phelps <kl4yfd@gmail.com>
- Andrej Lajovic <s57ln@hamradio.si>
* New high speed and multi carrier modems
- psk, pskr
- DominoEX
- Thor
* Added separate modem initialization for
Olivia tone / bandwidth pairs:
- 4/250, 8/250
- 4/500, 8/500, 16/500
- 8/1000, 16/1000, 32/1000
- 64/2000
* RSID changes
- Added secondary RsID code set
- RsID code 263 enables detection of the secondary
RsID code burst.
* MFSK UTF-8 tx
- corrected transmit of two-byte UTF-8 characters
* PSK-UTF-8 tx
- corrected transmit of two-byte UTF-8 characters
* Changed PSK multicarrier bandwidth markers to show full
extent of signal in the waterfall.
* THOR modem updates
- Added Thor high speed modes
25x4, 50, 50x2, 100 Baud, all < 1800 Hz bandwidth
- IFK+ Softdecode function for THOR
dynamically detects and suppresses CWI
Rx printing is disabled when "File IO only" is selected for
soundcard. Decoder uses puncture in this condition.
- THOR FEC confidence indicator
Uses the actual path-metrics from the Viterbi decoder.
Displays next to the S/N in the main dialog.
* Added :[notes] string to LOG and LNW macro tags
- <LOG:append this text>
- <LNW:append this text>
the specified text will be appended to the notes field as
the string "\nappend this text" before saving the log data
<LOG> and <LNW> behave as before.
* Added post execute expansion of returned macro text.
Restores ability to include macro tags such as <MYCALL>
in the returned text. The macro tag will then be
expanded before transmission.
* Fix for ARQ socket crash due to thread conflicts
* Added additional mutex to protect transmit queue
* Added additional lock/unlock mutex blocks
* Added code to put socket close() within a try {} catch {}
block
* Still retains use of " ^r " in the user window
* Covers special-case for FLARQ usage where ETX should
stop the modem
* EOT character can now be transmitted from Tx window instead
of switching to Rx mode
* From: Andrej Lajovic <s57ln@hamradio.si>
- Substitute symbolic names for negative return values of
get_tx_char()
* discover application executable location
* if the directory in which "fldigi" / "fldigi.exe" resides
contains a file named NBEMS.DIR then base all NBEMS file
locations to that drive-folder
* this allows a fully portble NBEMS installation
to a thumbdrive (or other portable drive)
* it also allows a very easy way to install multiple NBEMS suites
for different target uses on a single hard drive
* Refactor get_tx_char()
* Reset to stock version, call byte_at()
The class Fl_Text_Buffer_mod (borrowed from FLTK) contained a modified
version of the method char_at() that effectively made it behave as
byte_at(). Silently modifying a library-provided method not only disables
the access to a certain functionality of the library, but can also cause
other unforeseen consequences. The method was thus reverted to the stock
version and the code that previously called the modified version was
changed to call byte_at() instead.
* Remove unneeded code in FTextTX::nextChar()
* Libtiniconv
- Added libtiniconv (charset conversion library)
- Library Version 1.0.1 fetched from http://tiniconv.sf.net
A small fix made to change a misspelled macro name.
Build system adapted to fit into the fldigi build model.
* Added CharsetDistiller class
- Sanitize input data and convert it into UTF-8
- CharsetDistiller receives input data one byte at a time and converts this
data stream from a particular character set into UTF-8. Invalid input data
is treated as if it was encoded in CP1252. Character set conversion is
performed as soon as possible, i.e., when enough input is received to
constitute a valid character in the input character set, this character is
immediatly converted into UTF-8 and made available at the output.
* Make put_rx_char_flmain() use charsetDistiller
* Make put_echo_char() use CharsetDistiller
* Make pskBrowser use CharsetDistiller
* Added OutputEncoder class
- Used for encoding transmitted data
- OutputEncoder accepts UTF-8 strings at input, converts them to the
selected encoding and outputs them one byte at a time.
* TX character set conversion using OutputEncoder
* Fix backspace for >2byte UTF-8 characters
* Cleanup modem UTF-8 code
- PSK, Olivia, MT63 and MFSK modems:
cleanup of unneeded UTF-8 handling code
- Everything that deals with output character set conversion and data
sequencing is now done using OutputEncoder, so the modems can become
completely agnostic about the character set used. As far as they are
concerned, everything is just byte-sized data.
* Added an array of character set names and identifiers
* UTF-8 code cleanup
- Cleanup of unneeded UTF-8 handling code in add_rxtx_char() and family
* Character set selection menu
- Add menu button to select the active TX/RX charset to the colors-fonts
configure dialog. The setting defaults to UTF-8 (selected at program
startup). The selection is saved to the program defaults configuration
file when "Config/Save" is executed.
* Added tx code to correct transfers of 8 bit ARQ data.
Needed to circumvent recent UTF-8 char support when
transferring data files.
* Added status bar notification when AMP extraction is
is being processed.
* Removed timeout on "Extracting FLAMP" and "Extracting FLMSG"
status messages.
* Removed bold declaration from line format string
- caused erroneous character printing if a font
was used which had no bold definition in the
font library (observed on Linux).
* Fix put_echo_char() to handle UTF-8 characters wider than two bytes
* Reimplement Fl_Text_Buffer_mod::get_char_at() to handle UTF-8 chars
wider than two bytes
* added parsing of cmd line parameters when opening flmsg
upon completion of wrap file extraction
* added parsing of flamp text streams
* modified socket arq to separate socket i/o from both
signal processing and main thread.