* Tx frequency failed to remain fixed when Tx lock set; continued
    to follow the Rx frequency on these modems.
    - MFSK
    - MT63
pull/1/head
David Freese 2015-01-08 15:06:43 -06:00
rodzic 7c9582228f
commit 2c9b493ce6
2 zmienionych plików z 6 dodań i 6 usunięć

Wyświetl plik

@ -80,9 +80,9 @@ void mfsk::tx_init(SoundBase *sc)
bitstate = 0;
double bw2 = (numtones + 1) * samplerate / symlen / 2.0;
double flo = (frequency - bw2) / samplerate;
double flo = (get_txfreq_woffset() - bw2) / samplerate;
if (flo <= 0) flo = 0;
double fhi = (frequency + bw2) / samplerate;
double fhi = (get_txfreq_woffset() + bw2) / samplerate;
xmtfilt->init_bandpass (127, 1, flo, fhi);
videoText();

Wyświetl plik

@ -41,7 +41,7 @@ void mt63::tx_init(SoundBase *sb)
guard_lock dsp_lock(&mt63_mutex);
scard = sb;
Tx->Preset(frequency, (int)bandwidth, Interleave == 64 ? 1 : 0);
Tx->Preset(get_txfreq_woffset(), (int)bandwidth, Interleave == 64 ? 1 : 0);
flush = Tx->DataInterleave;
videoText();
startflag = true;
@ -72,8 +72,8 @@ int mt63::tx_process()
startflag = false;
maxval = 0.0;
if (progdefaults.mt63_usetones) {
double w1 = 2.0 * M_PI * (frequency - bandwidth / 2.0) / samplerate;
double w2 = 2.0 * M_PI * (frequency + 31.0 * bandwidth / 64.0) / samplerate;
double w1 = 2.0 * M_PI * (get_txfreq_woffset() - bandwidth / 2.0) / samplerate;
double w2 = 2.0 * M_PI * (get_txfreq_woffset() + 31.0 * bandwidth / 64.0) / samplerate;
double phi1 = 0.0;
double phi2 = 0.0;
double buff[samplerate];
@ -304,7 +304,7 @@ void mt63::restart()
{ // critical section
guard_lock dsp_lock(&mt63_mutex);
err = Tx->Preset(frequency, (int)bandwidth, Interleave == 64 ? 1 : 0);
err = Tx->Preset(get_txfreq_woffset(), (int)bandwidth, Interleave == 64 ? 1 : 0);
if (err)
fprintf(stderr, "mt63_txinit: init failed\n");
flush = Tx->DataInterleave;