Working toward a new *.qm file type for QMAP.

This commit is contained in:
Joe Taylor 2024-01-03 17:36:46 -05:00
parent 986eaf5d40
commit b5bbf4a860
4 changed files with 16 additions and 8 deletions

View File

@ -26,6 +26,7 @@ set (libq65_FSRCS
q65_sync.f90
qmapa.f90
recvpkt.f90
save_qm.f90
sun.f90
symspec.f90
timf2.f90

View File

@ -1,9 +1,10 @@
subroutine save_qm(nutc,dd,ntx30a,ntx30b)
subroutine save_qm(fname,nutc,dd,ntx30a,ntx30b)
parameter(NMAX=60*96000)
character*(*) fname
real*4 dd(2,NMAX)
integer*1 id1(2,NMAX)
ia=1
ib=NMAX
if(ntx30a.gt.5) ia=NMAX/2+1
@ -12,14 +13,17 @@ subroutine save_qm(nutc,dd,ntx30a,ntx30b)
sq=0.
do i=ia,ib
x=dd(1,i)
y=dd92,i)
y=dd(2,i)
sq=sq + x*x + y*y
enddo
nsum=ib-ia+1
nsum=2*(ib-ia+1)
rms=sqrt(sq/nsum)
write(*,3001) nutc,rms
3001 format(i4.4,f10.2)
jz=len(fname)
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
end subroutine save_qm

View File

@ -403,6 +403,8 @@ void MainWindow::dataSink(int k)
fname += ".iq";
*future2 = QtConcurrent::run(save_iq, fname);
watcher2->setFuture(*future2);
int len1=fname.length();
save_qm_(fname.toLatin1(), &datcom2_.nutc, datcom2_.d4,&m_nTx30a,&m_nTx30b,len1);
}
if(ihsym==m_hsymStop) {
m_nTx30a=0;
@ -870,7 +872,6 @@ void MainWindow::decode() //decode()
char *from = (char*) datcom_.d4;
memcpy(to, from, sizeof(datcom_));
// datcom_.nagain=0;
datcom_.ndiskdat=0;
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_.nQDecoderDone=0;
if(m_nTx30a<5 or m_nTx30b<5 ) {
watcher3.setFuture(QtConcurrent::run (std::bind (q65c_, &m_zero)));
decodeBusy(true);
@ -989,7 +991,6 @@ void MainWindow::guiUpdate()
lab2->setStyleSheet("");
}
if(m_monitoring) {
lab1->setStyleSheet("QLabel{background-color: #00ff00}");
m_nrx=soundInThread.nrx();

View File

@ -201,6 +201,8 @@ extern "C" {
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