mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-03-23 12:38:53 -04:00
Quasi-graphical display of the sync ccf(f0,DT).
This commit is contained in:
parent
6b8abe32b1
commit
8507a42655
@ -203,8 +203,8 @@ subroutine multimode_decoder(ss,id2,params,nfsample)
|
||||
call timer('dec_q65 ',0)
|
||||
call my_q65%decode(q65_decoded,id2,params%nutc,params%ntr, &
|
||||
params%nsubmode,params%nfqso,params%ntol,params%ndepth, &
|
||||
mycall,hiscall,hisgrid,params%nQSOProgress,ncontest, &
|
||||
logical(params%lapcqonly))
|
||||
params%emedelay,mycall,hiscall,hisgrid,params%nQSOProgress, &
|
||||
ncontest,logical(params%lapcqonly))
|
||||
call timer('dec_q65 ',1)
|
||||
go to 800
|
||||
endif
|
||||
|
@ -1,5 +1,5 @@
|
||||
subroutine q65_sync(nutc,iwave,nmax,mode_q65,codewords,ncw,nsps,nfqso,ntol, &
|
||||
xdt,f0,snr1,dat4,snr2,id1)
|
||||
subroutine q65_sync(nutc,iwave,nmax,mode_q65,codewords,ncw,nsps,nfqso,ntol, &
|
||||
emedelay,xdt,f0,snr1,dat4,snr2,id1)
|
||||
|
||||
! Detect and align with the Q65 sync vector, returning time and frequency
|
||||
! offsets and SNR estimate.
|
||||
@ -227,6 +227,43 @@ subroutine q65_sync(nutc,iwave,nmax,mode_q65,codewords,ncw,nsps,nfqso,ntol, &
|
||||
rms=sqrt(sq/nsq)
|
||||
smax=ccf(ipk,jpk)
|
||||
snr1=smax/rms
|
||||
call zplot_q65(ccf(-ia:ia,lag1:lag2),ia,lag1,lag2,rms,dtstep,ntol,emedelay)
|
||||
|
||||
900 return
|
||||
end subroutine q65_sync
|
||||
|
||||
subroutine zplot_q65(ccf,ia,lag1,lag2,rms,dtstep,ntol,emedelay)
|
||||
|
||||
real ccf(-ia:ia,lag1:lag2)
|
||||
character*1 line(70),mark(0:6)
|
||||
character*35 blanks
|
||||
data mark/' ',' ','.','-','+','X','#'/
|
||||
data blanks/' '/
|
||||
|
||||
! open(35,file='ccf.dat',status='unknown',access='stream')
|
||||
! write(35) ia,lag1,lag2,rms,dtstep
|
||||
! write(35) ccf
|
||||
! close(35)
|
||||
open(34,file='ccf.txt',status='unknown')
|
||||
write(34,1000) -ntol,blanks(1:ia-2),0,blanks(1:ia-2),ntol
|
||||
1000 format(5x,i3,a,i1,a,i3)
|
||||
k=0
|
||||
do j=lag2,lag1,-1
|
||||
t=j*dtstep
|
||||
if(emedelay.eq.0.0 .and. abs(t).gt.1.0) cycle
|
||||
do i=-ia,ia
|
||||
k=i+ia+2
|
||||
n=ccf(i,j)/rms
|
||||
if(n.lt.0) n=0
|
||||
if(n.gt.6) n=6
|
||||
line(k)=mark(n)
|
||||
enddo
|
||||
line(1)='|'
|
||||
line(k+1)='|'
|
||||
write(34,1010) t,line(1:k+1)
|
||||
1010 format(f5.2,1x,72a1)
|
||||
enddo
|
||||
close(34)
|
||||
|
||||
return
|
||||
end subroutine zplot_q65
|
||||
|
@ -3306,6 +3306,22 @@ void MainWindow::decodeDone ()
|
||||
{
|
||||
if(m_mode!="FT8" or dec_data.params.nzhsym==50) m_nDecodes=0;
|
||||
if(m_mode=="QRA64") m_wideGraph->drawRed(0,0);
|
||||
|
||||
if(m_mode=="Q65" and m_msgAvgWidget!=NULL) {
|
||||
if(m_msgAvgWidget->isVisible()) {
|
||||
// QFile f(m_config.temp_dir ().absoluteFilePath ("ccf.txt"));
|
||||
|
||||
QFont font("Courier New",7);
|
||||
m_msgAvgWidget->changeFont(font);
|
||||
QFile f("ccf.txt");
|
||||
if(f.open(QIODevice::ReadOnly | QIODevice::Text)) {
|
||||
QTextStream s(&f);
|
||||
QString t=s.readAll();
|
||||
m_msgAvgWidget->displayAvg(t);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ("FST4W" == m_mode)
|
||||
{
|
||||
if (m_uploadWSPRSpots
|
||||
@ -3591,7 +3607,8 @@ void MainWindow::readFromStdout() //readFromStdout
|
||||
} else {
|
||||
if (stdMsg && okToPost) pskPost(decodedtext);
|
||||
}
|
||||
if((m_mode=="JT4" or m_mode=="JT65" or m_mode=="QRA64") and m_msgAvgWidget!=NULL) {
|
||||
if((m_mode=="JT4" or m_mode=="JT65" or m_mode=="QRA64" or m_mode=="Q65") and
|
||||
m_msgAvgWidget!=NULL) {
|
||||
if(m_msgAvgWidget->isVisible()) {
|
||||
QFile f(m_config.temp_dir ().absoluteFilePath ("avemsg.txt"));
|
||||
if(f.open(QIODevice::ReadOnly | QIODevice::Text)) {
|
||||
@ -4336,7 +4353,7 @@ void MainWindow::guiUpdate()
|
||||
|
||||
//Once per second (onesec)
|
||||
if(nsec != m_sec0) {
|
||||
// qDebug() << "AAA" << nsec;
|
||||
// qDebug() << "AAA" << nsec;
|
||||
if(m_mode=="FST4") chk_FST4_freq_range();
|
||||
m_currentBand=m_config.bands()->find(m_freqNominal);
|
||||
if( SpecOp::HOUND == m_config.special_op_id() ) {
|
||||
|
Loading…
Reference in New Issue
Block a user