diff --git a/Modulator.cpp b/Modulator.cpp index ffb646e6f..e3ff318d2 100644 --- a/Modulator.cpp +++ b/Modulator.cpp @@ -129,7 +129,11 @@ void Modulator::close () qint64 Modulator::readData (char * data, qint64 maxSize) { double toneFrequency=1500.0; - + if(m_nsps==6) { + toneFrequency=1000.0; + m_frequency=1000.0; + m_frequency0=1000.0; + } if(maxSize==0) return 0; Q_ASSERT (!(maxSize % qint64 (bytesPerFrame ()))); // no torn frames Q_ASSERT (isOpen ()); diff --git a/mainwindow.cpp b/mainwindow.cpp index d7b0f372b..e7d1dd8ee 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -768,7 +768,7 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, m_wideGraph->setLockTxFreq(m_lockTxFreq); ui->sbFtol->setValue(m_FtolIndex); on_sbFtol_valueChanged(m_FtolIndex); - ui->cbEME->setChecked(m_bEME); + ui->cbAutoSeq->setChecked(m_bAutoSeq); ui->cbShMsgs->setChecked(m_bShMsgs); ui->cbFast9->setChecked(m_bFast9); if(m_bFast9) m_bFastMode=true; @@ -788,7 +788,11 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, ui->sbSubmode->setValue (vhf ? m_nSubMode : 0); ui->sbTR->setValue(m_TRindex); - Q_EMIT transmitFrequency (ui->TxFreqSpinBox->value () - m_XIT); + if(m_mode=="MSK144" or m_mode=="JTMSK") { + Q_EMIT transmitFrequency (1000.0); + } else { + Q_EMIT transmitFrequency (ui->TxFreqSpinBox->value() - m_XIT); + } m_saveDecoded=ui->actionSave_decoded->isChecked(); m_saveAll=ui->actionSave_all->isChecked(); ui->inGain->setValue(m_inGain); @@ -923,7 +927,7 @@ void MainWindow::writeSettings() m_settings->setValue("DTtol",m_DTtol); m_settings->setValue("FtolIndex",m_FtolIndex); m_settings->setValue("MinSync",m_minSync); - m_settings->setValue("EME",m_bEME); + m_settings->setValue("EME",m_bAutoSeq); m_settings->setValue("ShMsgs",m_bShMsgs); m_settings->setValue ("DialFreq", QVariant::fromValue(m_lastMonitoredFrequency)); m_settings->setValue("InGain",m_inGain); @@ -978,7 +982,7 @@ void MainWindow::readSettings() m_FtolIndex=m_settings->value("FtolIndex",21).toInt(); // ui->FTol_combo_box->setCurrentText(m_settings->value("FTol","500").toString ()); ui->syncSpinBox->setValue(m_settings->value("MinSync",0).toInt()); - m_bEME=m_settings->value("EME",false).toBool(); + m_bAutoSeq=m_settings->value("EME",false).toBool(); m_bShMsgs=m_settings->value("ShMsgs",false).toBool(); m_bFast9=m_settings->value("Fast9",false).toBool(); m_bFastMode=m_settings->value("FastMode",false).toBool(); @@ -2153,7 +2157,7 @@ void MainWindow::decode() //decode() } dec_data.params.dttol=m_DTtol; dec_data.params.emedelay=0.0; - if(m_bEME) dec_data.params.emedelay=2.5; + if(m_config.decode_at_52s()) dec_data.params.emedelay=2.5; dec_data.params.minSync=ui->syncSpinBox->isVisible () ? m_minSync : 0; dec_data.params.nexp_decode=0; if(m_config.single_decode()) { @@ -2235,8 +2239,8 @@ void::MainWindow::fast_decode_done() for(int i=0; i<100; i++) { int i1=msg0.indexOf(m_baseCall); int i2=msg0.indexOf(m_hisCall); - if((m_mode=="JTMSK" or m_mode=="MSK144" or m_bFast9) and m_bEME and tmax>=0.0 and - i1>10 and i2>i1+3) { //Here, "m_bEME" implies AutoSeq + if((m_mode=="JTMSK" or m_mode=="MSK144" or m_bFast9) and m_bAutoSeq and tmax>=0.0 and + i1>10 and i2>i1+3) { //Here, "m_bAutoSeq" implies AutoSeq if((msg0.indexOf(" 73") < 0) or (m_ntx!=6)) processMessage(msg0,43,false); } if(m_msg[i][0]==0) break; @@ -3045,7 +3049,7 @@ void MainWindow::stopTx() void MainWindow::stopTx2() { Q_EMIT m_config.transceiver_ptt (false); //Lower PTT - if(m_mode=="JT9" and m_bFast9 and ui->cbEME->isChecked() and m_ntx==5 and (m_nTx73>=5)) { + if(m_mode=="JT9" and m_bFast9 and ui->cbAutoSeq->isChecked() and m_ntx==5 and (m_nTx73>=5)) { on_stopTxButton_clicked(); m_nTx73=0; } @@ -3917,7 +3921,7 @@ void MainWindow::on_actionJT9_triggered() ui->cbFast9->setVisible(bVHF); ui->cbShMsgs->setVisible(false); ui->cbTx6->setVisible(false); - ui->cbEME->setVisible(true); + ui->cbAutoSeq->setVisible(true); ui->sbSubmode->setVisible(true); ui->sbSubmode->setMaximum(7); fast_config(m_bFastMode); @@ -3983,7 +3987,7 @@ void MainWindow::on_actionJTMSK_triggered() ui->label_7->setText("Rx Frequency"); ui->sbTR->setVisible(true); ui->sbFtol->setVisible(true); - ui->cbEME->setVisible(true); + ui->cbAutoSeq->setVisible(true); ui->ClrAvgButton->setVisible(false); } @@ -4270,7 +4274,7 @@ void MainWindow::on_actionISCAT_triggered() ui->sbSubmode->setVisible(true); ui->cbShMsgs->setVisible(false); ui->cbTx6->setVisible(false); - ui->cbEME->setVisible(false); + ui->cbAutoSeq->setVisible(false); ui->decodedTextBrowser2->setVisible(false); ui->decodedTextLabel2->setVisible(false); ui->decodedTextLabel->setText( @@ -4337,13 +4341,7 @@ void MainWindow::fast_config(bool b) m_bFastMode=b; ui->ClrAvgButton->setVisible(!b); ui->TxFreqSpinBox->setEnabled(!b); - if(b) { - ui->cbEME->setText("Auto Seq"); - ui->sbTR->setVisible(true); - } else { - ui->cbEME->setText("EME delay"); - ui->sbTR->setVisible(false); - } + ui->sbTR->setVisible(b); if(b and (m_bFast9 or m_mode=="JTMSK" or m_mode=="MSK144" or m_mode=="ISCAT")) { ui->sbTR->setValue(m_TRindex); m_wideGraph->hide(); @@ -4358,7 +4356,9 @@ void MainWindow::on_TxFreqSpinBox_valueChanged(int n) { m_wideGraph->setTxFreq(n); if(m_lockTxFreq) ui->RxFreqSpinBox->setValue(n); - Q_EMIT transmitFrequency (n - m_XIT); + if(m_mode!="MSK144" and m_mode!="JTMSK") { + Q_EMIT transmitFrequency (n - m_XIT); + } statusUpdate (); } @@ -4726,6 +4726,7 @@ void MainWindow::on_pbTxMode_clicked() void MainWindow::setXIT(int n, Frequency base) { if (m_transmitting && !m_config.tx_QSY_allowed ()) return; + if(m_mode=="MSK144" or m_mode=="JTMSK") return; if (!base) base = m_freqNominal; m_XIT = 0; if (!m_bSimplex) { @@ -5000,7 +5001,7 @@ void MainWindow::transmit (double snr) } // In auto-sequencing mode, stop after 5 transmissions of "73" message. - if(m_mode=="JT9" and m_bFast9 and ui->cbEME->isChecked()) { + if(m_mode=="JT9" and m_bFast9 and ui->cbAutoSeq->isChecked()) { if(m_ntx==5) { m_nTx73 += 1; } else { @@ -5158,9 +5159,9 @@ void::MainWindow::VHF_features_enabled(bool b) } } -void MainWindow::on_cbEME_toggled(bool b) +void MainWindow::on_cbAutoSeq_toggled(bool b) { - m_bEME=b; + m_bAutoSeq=b; } void MainWindow::on_sbTR_valueChanged(int index) @@ -5227,10 +5228,10 @@ void MainWindow::on_cbFast9_clicked(bool b) Q_EMIT m_config.transceiver_tx_frequency (0); // turn off split } */ - ui->cbEME->setText("Auto Seq"); + ui->cbAutoSeq->setText("Auto Seq"); if(m_TRperiodFast>0) m_TRperiod=m_TRperiodFast; } else { - ui->cbEME->setText("EME delay"); + ui->cbAutoSeq->setText("EME delay"); m_TRperiod=60; } progressBar.setMaximum(m_TRperiod); diff --git a/mainwindow.h b/mainwindow.h index d35e2b307..1f7b08e86 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -220,7 +220,7 @@ private slots: void on_actionInclude_correlation_triggered(); void VHF_controls_visible(bool b); void VHF_features_enabled(bool b); - void on_cbEME_toggled(bool b); + void on_cbAutoSeq_toggled(bool b); void on_sbSubmode_valueChanged(int n); void on_cbShMsgs_toggled(bool b); void on_cbTx6_toggled(bool b); @@ -397,7 +397,7 @@ private: int m_lastMessageType; QString m_lastMessageSent; bool m_lockTxFreq; - bool m_bEME; + bool m_bAutoSeq; bool m_bShMsgs; bool m_uploadSpots; bool m_uploading; diff --git a/mainwindow.ui b/mainwindow.ui index 63e74f87c..6b9524089 100644 --- a/mainwindow.ui +++ b/mainwindow.ui @@ -2,6 +2,14 @@ MainWindow + + + 0 + 0 + 896 + 565 + + WSJT-X by K1JT @@ -829,7 +837,7 @@ QLabel[oob="true"] { - + 16777215 @@ -837,10 +845,10 @@ QLabel[oob="true"] { - Check to add 2.5 s to expected propagation delay. + <html><head/><body><p>Check to allow automatic sequencing of Tx messages based on received messages.</p></body></html> - EME delay + Auto Seq @@ -2331,6 +2339,14 @@ QPushButton[state="ok"] { + + + 0 + 0 + 896 + 21 + + File