From 9cfe3c3c076281b9029e6760a13be3909b2ef483 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Tue, 17 Jan 2017 14:23:18 +0000 Subject: [PATCH] Do 45-deg steps for QRA64 decode. Tweaks to GUI. git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/map65@7519 ab8295b8-cf94-4d9e-aec4-7959e3be5d79 --- libm65/qra64c.f90 | 12 ++++++------ mainwindow.cpp | 4 ++++ mainwindow.ui | 6 ++++++ 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/libm65/qra64c.f90 b/libm65/qra64c.f90 index 146ecf5bb..be235b962 100644 --- a/libm65/qra64c.f90 +++ b/libm65/qra64c.f90 @@ -70,11 +70,11 @@ subroutine qra64c(cx,cy,nutc,nqd,ikhz,nfqso,ntol,xpol,mycall_12, & naptype=maxaptype npts2=NFFT2 - do ip=0,1 -!### + do ip=0,3 if(ip.eq.0) c00(0:NFFT2-1)=conjg(cx) - if(ip.eq.1) c00(0:NFFT2-1)=conjg(cy) -!### + if(ip.eq.1) c00(0:NFFT2-1)=conjg(cx+cy) + if(ip.eq.2) c00(0:NFFT2-1)=conjg(cy) + if(ip.eq.3) c00(0:NFFT2-1)=conjg(cx-cy) call sync64(c00,nf1,nf2,nfqso,ntol,mode64,emedelay,dtx,f0,jpk0,sync, & sync2,width) @@ -124,7 +124,7 @@ subroutine qra64c(cx,cy,nutc,nqd,ikhz,nfqso,ntol,xpol,mycall_12, & dtxkeep=jpk/6000.0 - 1.0 itry0keep=itry0 iterkeep=iter - npolkeep=ip*90 + npolkeep=ip*45 endif enddo if(irc.eq.0) goto 5 @@ -144,7 +144,7 @@ subroutine qra64c(cx,cy,nutc,nqd,ikhz,nfqso,ntol,xpol,mycall_12, & 10 decoded=' ' if(irc.ge.0) then - if(irc.eq.0) npol=ip*90 + if(irc.eq.0) npol=ip*45 call unpackmsg(dat4,decoded) !Unpack the user message call fmtmsg(decoded,iz) if(index(decoded,"000AAA ").ge.1) then diff --git a/mainwindow.cpp b/mainwindow.cpp index 956ffae7a..11972cd4a 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -382,6 +382,7 @@ void MainWindow::writeSettings() settings.setValue("Mode",m_mode); settings.setValue("nModeJT65",m_modeJT65); settings.setValue("nModeQRA64",m_modeQRA64); + settings.setValue("TxMode",m_modeTx); settings.setValue("SaveNone",ui->actionNone->isChecked()); settings.setValue("SaveAll",ui->actionSave_all->isChecked()); settings.setValue("NDepth",m_ndepth); @@ -468,12 +469,15 @@ void MainWindow::readSettings() m_mode=settings.value("Mode","JT65B").toString(); m_modeJT65=settings.value("nModeJT65",2).toInt(); m_modeQRA64=settings.value("nModeQRA64",2).toInt(); + m_modeTx=settings.value("TxMode","JT65").toString(); if(m_modeQRA64==0) ui->actionNoQRA64->setChecked(true); if(m_modeQRA64==1) ui->actionQRA64A->setChecked(true); if(m_modeQRA64==2) ui->actionQRA64B->setChecked(true); if(m_modeQRA64==3) ui->actionQRA64C->setChecked(true); if(m_modeQRA64==4) ui->actionQRA64D->setChecked(true); if(m_modeQRA64==5) ui->actionQRA64E->setChecked(true); + if(m_modeTx=="JT65") ui->pbTxMode->setText("Tx JT65 #"); + if(m_modeTx=="QRA64") ui->pbTxMode->setText("Tx QRA64 #"); ui->actionNone->setChecked(settings.value("SaveNone",true).toBool()); ui->actionSave_all->setChecked(settings.value("SaveAll",false).toBool()); diff --git a/mainwindow.ui b/mainwindow.ui index b76c482fc..0679a7b8f 100644 --- a/mainwindow.ui +++ b/mainwindow.ui @@ -508,6 +508,12 @@ p, li { white-space: pre-wrap; } 0 + + + 80 + 16777215 + + Tx QRA64 $