Display both frx and fsked, in both QMAP and QSJT-X Active Stations window.

This commit is contained in:
Joe Taylor 2023-01-25 12:31:58 -05:00
parent fb573ef407
commit ad4fb2be9d
5 changed files with 105 additions and 102 deletions

View File

@ -112,8 +112,8 @@ subroutine q65b(nutc,nqd,fcenter,nfcal,nfsample,ikhz,mousedf,ntol, &
ndecodes=ndecodes+1 ndecodes=ndecodes+1
frx=0.001*k0*df+nkhz_center-48.0+1.0 - 0.001*nfcal frx=0.001*k0*df+nkhz_center-48.0+1.0 - 0.001*nfcal
fsked=frx - 0.001*ndop00/2.0 - 1.5 fsked=frx - 0.001*ndop00/2.0 - 1.5
write(result(ndecodes),1120) nutc,fsked,xdt0,nsnr0,trim(msg0) write(result(ndecodes),1120) nutc,frx,fsked,xdt0,nsnr0,trim(msg0)
1120 format(i4.4,f9.3,f7.2,i5,2x,a,i6) 1120 format(i4.4,f9.3,f7.1,f7.2,i5,2x,a)
write(12,1130) datetime,trim(result(ndecodes)(5:)) write(12,1130) datetime,trim(result(ndecodes)(5:))
1130 format(a11,1x,a) 1130 format(a11,1x,a)
result(ndecodes)=trim(result(ndecodes))//char(0) result(ndecodes)=trim(result(ndecodes))//char(0)

View File

@ -6,7 +6,7 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>472</width> <width>550</width>
<height>431</height> <height>431</height>
</rect> </rect>
</property> </property>
@ -18,7 +18,7 @@
</property> </property>
<property name="minimumSize"> <property name="minimumSize">
<size> <size>
<width>472</width> <width>550</width>
<height>0</height> <height>0</height>
</size> </size>
</property> </property>
@ -59,7 +59,7 @@
</size> </size>
</property> </property>
<property name="title"> <property name="title">
<string> UTC Freq DT dB Message</string> <string> UTC Freq Fsked DT dB Message</string>
</property> </property>
<layout class="QFormLayout" name="formLayout_2"> <layout class="QFormLayout" name="formLayout_2">
<item row="0" column="0"> <item row="0" column="0">
@ -72,7 +72,7 @@
</property> </property>
<property name="minimumSize"> <property name="minimumSize">
<size> <size>
<width>421</width> <width>500</width>
<height>100</height> <height>100</height>
</size> </size>
</property> </property>
@ -111,19 +111,79 @@ p, li { white-space: pre-wrap; }
</item> </item>
<item row="1" column="0"> <item row="1" column="0">
<layout class="QGridLayout" name="gridLayout"> <layout class="QGridLayout" name="gridLayout">
<item row="0" column="0" rowspan="3"> <item row="0" column="3" colspan="2">
<widget class="QFrame" name="xMeterFrame"> <widget class="QPushButton" name="EraseButton">
<property name="minimumSize"> <property name="minimumSize">
<size> <size>
<width>50</width> <width>50</width>
<height>150</height> <height>0</height>
</size> </size>
</property> </property>
<property name="frameShape"> <property name="text">
<enum>QFrame::StyledPanel</enum> <string>&amp;Erase</string>
</property> </property>
<property name="frameShadow"> </widget>
<enum>QFrame::Raised</enum> </item>
<item row="1" column="4" colspan="2">
<widget class="QSpinBox" name="sbMaxDrift">
<property name="toolTip">
<string>Maximum drift rate in units of symbol rate per transmissiion.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="prefix">
<string>Max Drift </string>
</property>
<property name="maximum">
<number>50</number>
</property>
<property name="singleStep">
<number>5</number>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="labFreq">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>35</height>
</size>
</property>
<property name="font">
<font>
<pointsize>16</pointsize>
</font>
</property>
<property name="frameShape">
<enum>QFrame::Panel</enum>
</property>
<property name="text">
<string>1296.080</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="0" column="5">
<widget class="QPushButton" name="DecodeButton">
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>&amp;Decode</string>
</property>
</widget>
</item>
<item row="2" column="3">
<widget class="QCheckBox" name="NBcheckBox">
<property name="text">
<string>NB</string>
</property> </property>
</widget> </widget>
</item> </item>
@ -158,6 +218,22 @@ p, li { white-space: pre-wrap; }
</property> </property>
</widget> </widget>
</item> </item>
<item row="0" column="0" rowspan="3">
<widget class="QFrame" name="xMeterFrame">
<property name="minimumSize">
<size>
<width>50</width>
<height>150</height>
</size>
</property>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
</widget>
</item>
<item row="0" column="2"> <item row="0" column="2">
<widget class="QPushButton" name="monitorButton"> <widget class="QPushButton" name="monitorButton">
<property name="sizePolicy"> <property name="sizePolicy">
@ -183,32 +259,6 @@ p, li { white-space: pre-wrap; }
</property> </property>
</widget> </widget>
</item> </item>
<item row="0" column="3" colspan="2">
<widget class="QPushButton" name="EraseButton">
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>&amp;Erase</string>
</property>
</widget>
</item>
<item row="0" column="5">
<widget class="QPushButton" name="DecodeButton">
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>&amp;Decode</string>
</property>
</widget>
</item>
<item row="1" column="2" colspan="2"> <item row="1" column="2" colspan="2">
<layout class="QHBoxLayout" name="horizontalLayout"> <layout class="QHBoxLayout" name="horizontalLayout">
<item> <item>
@ -294,25 +344,6 @@ p, li { white-space: pre-wrap; }
</item> </item>
</layout> </layout>
</item> </item>
<item row="1" column="4" colspan="2">
<widget class="QSpinBox" name="sbMaxDrift">
<property name="toolTip">
<string>Maximum drift rate in units of symbol rate per transmissiion.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="prefix">
<string>Max Drift </string>
</property>
<property name="maximum">
<number>50</number>
</property>
<property name="singleStep">
<number>5</number>
</property>
</widget>
</item>
<item row="2" column="4" colspan="2"> <item row="2" column="4" colspan="2">
<widget class="QSlider" name="NBslider"> <widget class="QSlider" name="NBslider">
<property name="enabled"> <property name="enabled">
@ -344,37 +375,6 @@ p, li { white-space: pre-wrap; }
</property> </property>
</widget> </widget>
</item> </item>
<item row="2" column="3">
<widget class="QCheckBox" name="NBcheckBox">
<property name="text">
<string>NB</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="labFreq">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>35</height>
</size>
</property>
<property name="font">
<font>
<pointsize>16</pointsize>
</font>
</property>
<property name="frameShape">
<enum>QFrame::Panel</enum>
</property>
<property name="text">
<string>1296.080</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout> </layout>
</item> </item>
</layout> </layout>
@ -386,7 +386,7 @@ p, li { white-space: pre-wrap; }
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>472</width> <width>550</width>
<height>21</height> <height>21</height>
</rect> </rect>
</property> </property>

View File

@ -62,7 +62,7 @@ void ActiveStations::displayRecentStations(QString mode, QString const& t)
m_mode=mode; m_mode=mode;
bool b=(m_mode=="Q65"); bool b=(m_mode=="Q65");
if(b) { if(b) {
ui->header_label2->setText(" N Freq S/N Call Grid Tx Age"); ui->header_label2->setText(" N Frx Fsked S/N Call Grid Tx Age");
ui->label->setText("QSOs:"); ui->label->setText("QSOs:");
} else { } else {
ui->header_label2->setText(" N Call Grid Az S/N Freq Tx Age Pts"); ui->header_label2->setText(" N Call Grid Az S/N Freq Tx Age Pts");

View File

@ -3689,12 +3689,12 @@ void MainWindow::callSandP2(int n)
if(m_mode!="Q65" and m_ready2call[n]=="") return; if(m_mode!="Q65" and m_ready2call[n]=="") return;
QStringList w=m_ready2call[n].split(' ', SkipEmptyParts); QStringList w=m_ready2call[n].split(' ', SkipEmptyParts);
if(m_mode=="Q65") { if(m_mode=="Q65") {
double kHz=w[0].toDouble(); double kHz=w[1].toDouble();
int nMHz=m_freqNominal/1000000; int nMHz=m_freqNominal/1000000;
m_freqNominal=(nMHz*1000 + kHz)* 1000; m_freqNominal=(nMHz*1000 + kHz)* 1000;
m_deCall=w[2]; m_deCall=w[3];
m_deGrid=w[3]; m_deGrid=w[4];
m_txFirst=(w[4]=="0"); m_txFirst=(w[5]=="0");
// ui->TxFreqSpinBox->setValue(1500); // ui->TxFreqSpinBox->setValue(1500);
} else { } else {
m_deCall=w[0]; m_deCall=w[0];
@ -3706,7 +3706,7 @@ void MainWindow::callSandP2(int n)
ui->dxCallEntry->setText(m_deCall); ui->dxCallEntry->setText(m_deCall);
ui->dxGridEntry->setText(m_deGrid); ui->dxGridEntry->setText(m_deGrid);
if(m_mode=="Q65") { if(m_mode=="Q65") {
genStdMsgs(w[1]); genStdMsgs(w[2]);
} else { } else {
genStdMsgs(w[3]); genStdMsgs(w[3]);
} }
@ -9238,13 +9238,15 @@ void MainWindow::readWidebandDecodes()
QString line=QString::fromLatin1(qmapcom.result[m_fetched]); QString line=QString::fromLatin1(qmapcom.result[m_fetched]);
nhr=line.mid(0,2).toInt(); nhr=line.mid(0,2).toInt();
nmin=line.mid(2,2).toInt(); nmin=line.mid(2,2).toInt();
double fsked=line.mid(4,9).toDouble(); double frx=line.mid(4,9).toDouble();
QString msg=line.mid(27,-1); double fsked=line.mid(13,7).toDouble();
QString msg=line.mid(34,-1);
int i1=msg.indexOf(" "); int i1=msg.indexOf(" ");
int i2=i1 +1 + msg.mid(i1+1,-1).indexOf(" "); int i2=i1 +1 + msg.mid(i1+1,-1).indexOf(" ");
QString dxcall=msg.mid(i1+1,i2-i1-1); QString dxcall=msg.mid(i1+1,i2-i1-1);
QString w3=msg.mid(i2+1,-1); QString w3=msg.mid(i2+1,-1);
nsnr=line.mid(22,3).toInt(); nsnr=line.mid(29,3).toInt();
m_EMECall[dxcall].frx=frx;
m_EMECall[dxcall].fsked=fsked; m_EMECall[dxcall].fsked=fsked;
m_EMECall[dxcall].nsnr=nsnr; m_EMECall[dxcall].nsnr=nsnr;
m_EMECall[dxcall].t=60*nhr + nmin; m_EMECall[dxcall].t=60*nhr + nmin;
@ -9289,10 +9291,10 @@ void MainWindow::readWidebandDecodes()
dxcall=(i.key()+" ").left(8); dxcall=(i.key()+" ").left(8);
dxgrid4=(i->grid4+"... ").left(4); dxgrid4=(i->grid4+"... ").left(4);
if(i->worked) { if(i->worked) {
t1=t1.asprintf("%5.1f %+03d %8s %4s %3d %3d\n",i->fsked,snr,dxcall.toLatin1().constData(), t1=t1.asprintf("%7.3f %5.1f %+03d %8s %4s %3d %3d\n",i->frx,i->fsked,snr,dxcall.toLatin1().constData(),
dxgrid4.toLatin1().constData(),odd,age); dxgrid4.toLatin1().constData(),odd,age);
} else { } else {
t1=t1.asprintf("%5.1f %+03d %8s %4s %3d %3d*\n",i->fsked,snr,dxcall.toLatin1().constData(), t1=t1.asprintf("%7.3f %5.1f %+03d %8s %4s %3d %3d*\n",i->frx,i->fsked,snr,dxcall.toLatin1().constData(),
dxgrid4.toLatin1().constData(),odd,age); dxgrid4.toLatin1().constData(),odd,age);
} }
f[k]=i->fsked; f[k]=i->fsked;

View File

@ -706,6 +706,7 @@ private:
struct EMECall struct EMECall
{ {
QString grid4; QString grid4;
double frx;
double fsked; double fsked;
qint32 nsnr; qint32 nsnr;
qint32 t; qint32 t;