diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index d7ec5841b..1e8ee427d 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -2933,6 +2933,7 @@ void MainWindow::readFromStdout() //readFromStdout { while(proc_jt9.canReadLine()) { QByteArray t=proc_jt9.readLine(); + if(m_mode=="JT65") t=t.left(43) + " " + t.mid(43,-1); //Pad 22-char msg to 37 chars // qint64 ms=QDateTime::currentMSecsSinceEpoch() - m_msec0; bool bAvgMsg=false; int navg=0; @@ -4273,7 +4274,8 @@ void MainWindow::processMessage (DecodedText const& message, Qt::KeyboardModifie bool is_73 = message_words.filter (QRegularExpression {"^(73|RR73)$"}).size (); if (!is_73 and !message.isStandardMessage() and !message.string().contains("<")) { - qDebug () << "Not processing message - hiscall:" << hiscall << "hisgrid:" << hisgrid; + qDebug () << "Not processing message - hiscall:" << hiscall << "hisgrid:" << hisgrid + << message.string() << message.isStandardMessage(); return; } @@ -4383,8 +4385,13 @@ void MainWindow::processMessage (DecodedText const& message, Qt::KeyboardModifie gen_msg=setTxMsg(3); m_QSOProgress=ROGER_REPORT; } else { - gen_msg=setTxMsg(2); - m_QSOProgress=REPORT; + if(m_mode=="JT65" and message_words.size()>4 and message_words.at(4)=="OOO") { + gen_msg=setTxMsg(3); + m_QSOProgress=ROGER_REPORT; + } else { + gen_msg=setTxMsg(2); + m_QSOProgress=REPORT; + } } } else if(w34.contains(grid_regexp) and SpecOp::EU_VHF==m_config.special_op_id()) { if(nrpt==0) { @@ -5755,6 +5762,10 @@ void MainWindow::on_actionJT65_triggered() displayWidgets(nWidgets("111010000000111000010000000000001")); } fast_config(false); + if(ui->cbShMsgs->isChecked()) { + ui->cbAutoSeq->setChecked(false); + ui->cbAutoSeq->setVisible(false); + } statusChanged(); } @@ -7058,6 +7069,10 @@ void MainWindow::on_cbShMsgs_toggled(bool b) m_bShMsgs=b; if(b) ui->cbSWL->setChecked(false); if(m_bShMsgs and (m_mode=="MSK144")) ui->rptSpinBox->setValue(1); + if(m_mode=="JT65") { + ui->cbAutoSeq->setVisible(!b); + if(b) ui->cbAutoSeq->setChecked(false); + } int it0=itone[0]; int ntx=m_ntx; m_lastCallsign.clear (); // ensure Tx5 gets updated