mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-05-29 04:42:28 -04:00
Working toward a new *.qm file type for QMAP.
This commit is contained in:
parent
986eaf5d40
commit
b5bbf4a860
@ -26,6 +26,7 @@ set (libq65_FSRCS
|
|||||||
q65_sync.f90
|
q65_sync.f90
|
||||||
qmapa.f90
|
qmapa.f90
|
||||||
recvpkt.f90
|
recvpkt.f90
|
||||||
|
save_qm.f90
|
||||||
sun.f90
|
sun.f90
|
||||||
symspec.f90
|
symspec.f90
|
||||||
timf2.f90
|
timf2.f90
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
subroutine save_qm(nutc,dd,ntx30a,ntx30b)
|
subroutine save_qm(fname,nutc,dd,ntx30a,ntx30b)
|
||||||
|
|
||||||
parameter(NMAX=60*96000)
|
parameter(NMAX=60*96000)
|
||||||
|
character*(*) fname
|
||||||
real*4 dd(2,NMAX)
|
real*4 dd(2,NMAX)
|
||||||
integer*1 id1(2,NMAX)
|
integer*1 id1(2,NMAX)
|
||||||
|
|
||||||
ia=1
|
ia=1
|
||||||
ib=NMAX
|
ib=NMAX
|
||||||
if(ntx30a.gt.5) ia=NMAX/2+1
|
if(ntx30a.gt.5) ia=NMAX/2+1
|
||||||
@ -12,14 +13,17 @@ subroutine save_qm(nutc,dd,ntx30a,ntx30b)
|
|||||||
sq=0.
|
sq=0.
|
||||||
do i=ia,ib
|
do i=ia,ib
|
||||||
x=dd(1,i)
|
x=dd(1,i)
|
||||||
y=dd92,i)
|
y=dd(2,i)
|
||||||
sq=sq + x*x + y*y
|
sq=sq + x*x + y*y
|
||||||
enddo
|
enddo
|
||||||
nsum=ib-ia+1
|
nsum=2*(ib-ia+1)
|
||||||
rms=sqrt(sq/nsum)
|
rms=sqrt(sq/nsum)
|
||||||
|
|
||||||
write(*,3001) nutc,rms
|
jz=len(fname)
|
||||||
3001 format(i4.4,f10.2)
|
fname(jz-1:jz)="qm"
|
||||||
|
write(*,3001) fname(jz-13:jz),nutc,rms,db(rms*rms),ia,ib, &
|
||||||
|
nsum/(2*96000),ntx30a,ntx30b
|
||||||
|
3001 format(a14,2x,i4.4,2f7.1,2i9,3i5)
|
||||||
|
|
||||||
return
|
return
|
||||||
end subroutine save_qm
|
end subroutine save_qm
|
||||||
|
@ -403,6 +403,8 @@ void MainWindow::dataSink(int k)
|
|||||||
fname += ".iq";
|
fname += ".iq";
|
||||||
*future2 = QtConcurrent::run(save_iq, fname);
|
*future2 = QtConcurrent::run(save_iq, fname);
|
||||||
watcher2->setFuture(*future2);
|
watcher2->setFuture(*future2);
|
||||||
|
int len1=fname.length();
|
||||||
|
save_qm_(fname.toLatin1(), &datcom2_.nutc, datcom2_.d4,&m_nTx30a,&m_nTx30b,len1);
|
||||||
}
|
}
|
||||||
if(ihsym==m_hsymStop) {
|
if(ihsym==m_hsymStop) {
|
||||||
m_nTx30a=0;
|
m_nTx30a=0;
|
||||||
@ -870,7 +872,6 @@ void MainWindow::decode() //decode()
|
|||||||
char *from = (char*) datcom_.d4;
|
char *from = (char*) datcom_.d4;
|
||||||
memcpy(to, from, sizeof(datcom_));
|
memcpy(to, from, sizeof(datcom_));
|
||||||
|
|
||||||
// datcom_.nagain=0;
|
|
||||||
datcom_.ndiskdat=0;
|
datcom_.ndiskdat=0;
|
||||||
|
|
||||||
if((!m_bAlso30 and (datcom2_.nhsym==330)) or (m_bAlso30 and (datcom2_.nhsym==200))) {
|
if((!m_bAlso30 and (datcom2_.nhsym==330)) or (m_bAlso30 and (datcom2_.nhsym==200))) {
|
||||||
@ -879,6 +880,7 @@ void MainWindow::decode() //decode()
|
|||||||
}
|
}
|
||||||
decodes_.ncand=0;
|
decodes_.ncand=0;
|
||||||
decodes_.nQDecoderDone=0;
|
decodes_.nQDecoderDone=0;
|
||||||
|
|
||||||
if(m_nTx30a<5 or m_nTx30b<5 ) {
|
if(m_nTx30a<5 or m_nTx30b<5 ) {
|
||||||
watcher3.setFuture(QtConcurrent::run (std::bind (q65c_, &m_zero)));
|
watcher3.setFuture(QtConcurrent::run (std::bind (q65c_, &m_zero)));
|
||||||
decodeBusy(true);
|
decodeBusy(true);
|
||||||
@ -989,7 +991,6 @@ void MainWindow::guiUpdate()
|
|||||||
lab2->setStyleSheet("");
|
lab2->setStyleSheet("");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if(m_monitoring) {
|
if(m_monitoring) {
|
||||||
lab1->setStyleSheet("QLabel{background-color: #00ff00}");
|
lab1->setStyleSheet("QLabel{background-color: #00ff00}");
|
||||||
m_nrx=soundInThread.nrx();
|
m_nrx=soundInThread.nrx();
|
||||||
|
@ -201,6 +201,8 @@ extern "C" {
|
|||||||
|
|
||||||
void zaptx_(float d4[], int* k0, int* k);
|
void zaptx_(float d4[], int* k0, int* k);
|
||||||
|
|
||||||
|
void save_qm_(const char* fname, int* nutc, float d4[], int* ntx30a, int* ntx30b, int len1);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // MAINWINDOW_H
|
#endif // MAINWINDOW_H
|
||||||
|
Loading…
x
Reference in New Issue
Block a user