mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-10-31 04:50:34 -04:00 
			
		
		
		
	Merge branch 'map65' of bitbucket.org:k1jt/wsjtx into map65
This commit is contained in:
		
						commit
						c8e64db9d4
					
				| @ -40,7 +40,7 @@ subroutine map65_mmdec(nutc,id2,nqd,nsubmode,nfa,nfb,nfqso,ntol,newdat,   & | |||||||
|   lagain=(nagain.ne.0) |   lagain=(nagain.ne.0) | ||||||
|   bVHF=.true. |   bVHF=.true. | ||||||
|   emedelay=2.5 |   emedelay=2.5 | ||||||
|   ndepth=3                       !Does this make it too slow? |   ndepth=2                       !Does this make it too slow? | ||||||
|   ntrperiod=60 |   ntrperiod=60 | ||||||
| 
 | 
 | ||||||
|   open(17,file=trim(temp_dir)//'/red.dat',status='unknown') |   open(17,file=trim(temp_dir)//'/red.dat',status='unknown') | ||||||
|  | |||||||
| @ -70,6 +70,7 @@ void Astro::astroUpdate(QDateTime t, QString mygrid, QString hisgrid, | |||||||
|             &azmoondx, &elmoondx, &ntsky, &ndop, &ndop00,&ramoon, &decmoon, |             &azmoondx, &elmoondx, &ntsky, &ndop, &ndop00,&ramoon, &decmoon, | ||||||
|             &dgrd, &poloffset, &xnr, 6, 6); |             &dgrd, &poloffset, &xnr, 6, 6); | ||||||
| 
 | 
 | ||||||
|  |   datcom_.nfast=ndop00;               //Send self Doppler to decoder, via datcom
 | ||||||
|   sprintf(cc, |   sprintf(cc, | ||||||
|           "Az:    %6.1f\n" |           "Az:    %6.1f\n" | ||||||
|           "El:    %6.1f\n" |           "El:    %6.1f\n" | ||||||
|  | |||||||
| @ -12,3 +12,15 @@ subroutine astrosub(nyear,month,nday,uth8,nfreq,mygrid,hisgrid,          & | |||||||
| 
 | 
 | ||||||
|   return   |   return   | ||||||
| end subroutine astrosub | end subroutine astrosub | ||||||
|  | 
 | ||||||
|  | subroutine astrosub00(nyear,month,nday,uth8,nfreq,mygrid,ndop00) | ||||||
|  | 
 | ||||||
|  |   implicit real*8 (a-h,o-z) | ||||||
|  |   character*6 mygrid | ||||||
|  | 
 | ||||||
|  |   call astrosub(nyear,month,nday,uth8,nfreq,mygrid,mygrid,               & | ||||||
|  |      AzSun8,ElSun8,AzMoon8,ElMoon8,AzMoonB8,ElMoonB8,ntsky,ndop,ndop00,  & | ||||||
|  |      RAMoon8,DecMoon8,Dgrd8,poloffset8,xnr8) | ||||||
|  | 
 | ||||||
|  |   return | ||||||
|  | end subroutine astrosub00 | ||||||
|  | |||||||
| @ -12,7 +12,7 @@ subroutine decode0(dd,ss,savg,nstandalone) | |||||||
|   common/npar/fcenter,nutc,idphi,mousedf,mousefqso,nagain,                & |   common/npar/fcenter,nutc,idphi,mousedf,mousefqso,nagain,                & | ||||||
|        ndepth,ndiskdat,neme,newdat,nfa,nfb,nfcal,nfshift,                 & |        ndepth,ndiskdat,neme,newdat,nfa,nfb,nfcal,nfshift,                 & | ||||||
|        mcall3,nkeep,ntol,nxant,nrxlog,nfsample,nxpol,nmode,               & |        mcall3,nkeep,ntol,nxant,nrxlog,nfsample,nxpol,nmode,               & | ||||||
|        nfast,nsave,max_drift,nhsym,mycall,mygrid,hiscall,hisgrid,datetime |        ndop00,nsave,max_drift,nhsym,mycall,mygrid,hiscall,hisgrid,datetime | ||||||
|   common/early/nhsym1,nhsym2,ldecoded(32768) |   common/early/nhsym1,nhsym2,ldecoded(32768) | ||||||
|   common/decodes/ndecodes |   common/decodes/ndecodes | ||||||
|   data neme0/-99/,mcall3b/1/ |   data neme0/-99/,mcall3b/1/ | ||||||
| @ -56,7 +56,7 @@ subroutine decode0(dd,ss,savg,nstandalone) | |||||||
|        mousedf,mousefqso,nagain,ndecdone,nfshift,ndphi,max_drift,          & |        mousedf,mousefqso,nagain,ndecdone,nfshift,ndphi,max_drift,          & | ||||||
|        nfcal,nkeep,mcall3b,nsum,nsave,nxant,mycall,mygrid,                 & |        nfcal,nkeep,mcall3b,nsum,nsave,nxant,mycall,mygrid,                 & | ||||||
|        neme,ndepth,nstandalone,hiscall,hisgrid,nhsym,nfsample,             & |        neme,ndepth,nstandalone,hiscall,hisgrid,nhsym,nfsample,             & | ||||||
|        ndiskdat,nxpol,nmode) |        ndiskdat,nxpol,nmode,ndop00) | ||||||
|   call timer('map65a  ',1) |   call timer('map65a  ',1) | ||||||
|   call timer('decode0 ',1) |   call timer('decode0 ',1) | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -10,6 +10,7 @@ subroutine ftninit(appd) | |||||||
| 
 | 
 | ||||||
|   addpfx='    ' |   addpfx='    ' | ||||||
|   call pfxdump(appd//'/prefixes.txt') |   call pfxdump(appd//'/prefixes.txt') | ||||||
|  |   open(12,file=appd//'/wb_q65.txt',status='unknown') | ||||||
|   open(13,file=appd//'/map65.log',status='unknown') |   open(13,file=appd//'/map65.log',status='unknown') | ||||||
|   open(19,file=appd//'/livecq.txt',status='unknown') |   open(19,file=appd//'/livecq.txt',status='unknown') | ||||||
|   open(21,file=appd//'/map65_rx.log',status='unknown',access='append',err=950) |   open(21,file=appd//'/map65_rx.log',status='unknown',access='append',err=950) | ||||||
|  | |||||||
| @ -7,7 +7,7 @@ program m65 | |||||||
| ! | ! | ||||||
| !   10  binary input data, *.tf2 files | !   10  binary input data, *.tf2 files | ||||||
| !   11  prefixes.txt | !   11  prefixes.txt | ||||||
| !   12 | !   12  wb_w65.txt | ||||||
| !   13  map65.log | !   13  map65.log | ||||||
| !   14   | !   14   | ||||||
| !   15 | !   15 | ||||||
| @ -41,7 +41,7 @@ program m65 | |||||||
|   common/npar/fcenter,nutc,idphi,mousedf,mousefqso,nagain,                & |   common/npar/fcenter,nutc,idphi,mousedf,mousefqso,nagain,                & | ||||||
|        ndepth,ndiskdat,neme,newdat,nfa,nfb,nfcal,nfshift,                 & |        ndepth,ndiskdat,neme,newdat,nfa,nfb,nfcal,nfshift,                 & | ||||||
|        mcall3,nkeep,ntol,nxant,nrxlog,nfsample,nxpol,nmode,               & |        mcall3,nkeep,ntol,nxant,nrxlog,nfsample,nxpol,nmode,               & | ||||||
|        nfast,nsave,max_drift,nhsym,mycall,mygrid,hiscall,hisgrid,datetime |        ndop00,nsave,max_drift,nhsym,mycall,mygrid,hiscall,hisgrid,datetime | ||||||
|   common/early/nhsym1,nhsym2,ldecoded(32768) |   common/early/nhsym1,nhsym2,ldecoded(32768) | ||||||
| 
 | 
 | ||||||
|   nargs=iargc() |   nargs=iargc() | ||||||
|  | |||||||
| @ -82,7 +82,7 @@ subroutine m65c(dd,ss,savg,nparams0) | |||||||
|   common/npar/fcenter,nutc,idphi,mousedf,mousefqso,nagain,              & |   common/npar/fcenter,nutc,idphi,mousedf,mousefqso,nagain,              & | ||||||
|        ndepth,ndiskdat,neme,newdat,nfa,nfb,nfcal,nfshift,               & |        ndepth,ndiskdat,neme,newdat,nfa,nfb,nfcal,nfshift,               & | ||||||
|        mcall3,nkeep,ntol,nxant,nrxlog,nfsample,nxpol,nmode,             & |        mcall3,nkeep,ntol,nxant,nrxlog,nfsample,nxpol,nmode,             & | ||||||
|        nfast,nsave,max_drift,nhsym,mycall,mygrid,hiscall,hisgrid,       & |        ndop00,nsave,max_drift,nhsym,mycall,mygrid,hiscall,hisgrid,       & | ||||||
|        datetime,junk1,junk2 |        datetime,junk1,junk2 | ||||||
|   common/early/nhsym1,nhsym2,ldecoded(32768) |   common/early/nhsym1,nhsym2,ldecoded(32768) | ||||||
|   equivalence (nparams,fcenter) |   equivalence (nparams,fcenter) | ||||||
|  | |||||||
| @ -2,7 +2,7 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb,        & | |||||||
|      mousedf,mousefqso,nagain,ndecdone,nfshift,ndphi,max_drift,             & |      mousedf,mousefqso,nagain,ndecdone,nfshift,ndphi,max_drift,             & | ||||||
|      nfcal,nkeep,mcall3b,nsum,nsave,nxant,mycall,mygrid,                    & |      nfcal,nkeep,mcall3b,nsum,nsave,nxant,mycall,mygrid,                    & | ||||||
|      neme,ndepth,nstandalone,hiscall,hisgrid,nhsym,nfsample,                & |      neme,ndepth,nstandalone,hiscall,hisgrid,nhsym,nfsample,                & | ||||||
|      ndiskdat,nxpol,nmode) |      ndiskdat,nxpol,nmode,ndop00) | ||||||
| 
 | 
 | ||||||
| !  Processes timf2 data from Linrad to find and decode JT65 signals. | !  Processes timf2 data from Linrad to find and decode JT65 signals. | ||||||
| 
 | 
 | ||||||
| @ -41,6 +41,7 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb,        & | |||||||
|   data nfile/0/,nutc0/-999/,nid/0/,ip000/1/,ip001/1/,mousefqso0/-999/ |   data nfile/0/,nutc0/-999/,nid/0/,ip000/1/,ip001/1/,mousefqso0/-999/ | ||||||
|   save |   save | ||||||
| 
 | 
 | ||||||
|  |   rewind 12 | ||||||
|   ndecodes=0 |   ndecodes=0 | ||||||
| 
 | 
 | ||||||
| ! Clean start for Q65 at early decode | ! Clean start for Q65 at early decode | ||||||
| @ -365,7 +366,7 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb,        & | |||||||
|               call timer('q65b    ',0) |               call timer('q65b    ',0) | ||||||
|               call q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,   & |               call q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,   & | ||||||
|                    ntol,xpol,mycall,mygrid, hiscall,hisgrid,mode_q65,f0,fqso, & |                    ntol,xpol,mycall,mygrid, hiscall,hisgrid,mode_q65,f0,fqso, & | ||||||
|                    newdat,nagain,max_drift,nhsym,idec) |                    newdat,nagain,max_drift,nhsym,ndop00,idec) | ||||||
|               call timer('q65b    ',1) |               call timer('q65b    ',1) | ||||||
|               if(idec.ge.0) candec(icand)=.true. |               if(idec.ge.0) candec(icand)=.true. | ||||||
|            enddo |            enddo | ||||||
| @ -376,7 +377,7 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb,        & | |||||||
|               call timer('q65b    ',0) |               call timer('q65b    ',0) | ||||||
|               call q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,   & |               call q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,   & | ||||||
|                    ntol,xpol,mycall,mygrid,hiscall,hisgrid,mode_q65,f0,fqso,  & |                    ntol,xpol,mycall,mygrid,hiscall,hisgrid,mode_q65,f0,fqso,  & | ||||||
|                    newdat,nagain,max_drift,nhsym,idec) |                    newdat,nagain,max_drift,nhsym,ndop00,idec) | ||||||
|               call timer('q65b    ',1) |               call timer('q65b    ',1) | ||||||
|            endif |            endif | ||||||
|         endif |         endif | ||||||
| @ -420,7 +421,7 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb,        & | |||||||
|            call timer('q65b    ',0) |            call timer('q65b    ',0) | ||||||
|            call q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,ntol, & |            call q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,ntol, & | ||||||
|                 xpol,mycall,mygrid,hiscall,hisgrid,mode_q65,f0,fqso,newdat,   & |                 xpol,mycall,mygrid,hiscall,hisgrid,mode_q65,f0,fqso,newdat,   & | ||||||
|                 nagain,max_drift,nhsym,idec) |                 nagain,max_drift,nhsym,ndop00,idec) | ||||||
|            call timer('q65b    ',1) |            call timer('q65b    ',1) | ||||||
|            if(idec.ge.0) candec(icand)=.true. |            if(idec.ge.0) candec(icand)=.true. | ||||||
|         enddo  ! icand |         enddo  ! icand | ||||||
| @ -520,6 +521,7 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb,        & | |||||||
|   ndecdone=2 |   ndecdone=2 | ||||||
| 
 | 
 | ||||||
| 900 close(23) | 900 close(23) | ||||||
|  |   call flush(12) | ||||||
|   ndphi=0 |   ndphi=0 | ||||||
|   mcall3b=mcall3a |   mcall3b=mcall3a | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| subroutine q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, & | subroutine q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, & | ||||||
|      mycall0,mygrid,hiscall0,hisgrid,mode_q65,f0,fqso,newdat,nagain,          & |      mycall0,mygrid,hiscall0,hisgrid,mode_q65,f0,fqso,newdat,nagain,          & | ||||||
|      max_drift,nhsym,idec) |      max_drift,nhsym,ndop00,idec) | ||||||
| 
 | 
 | ||||||
| ! This routine provides an interface between MAP65 and the Q65 decoder | ! This routine provides an interface between MAP65 and the Q65 decoder | ||||||
| ! in WSJT-X.  All arguments are input data obtained from the MAP65 GUI. | ! in WSJT-X.  All arguments are input data obtained from the MAP65 GUI. | ||||||
| @ -181,11 +181,16 @@ subroutine q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, & | |||||||
|      if(nutc.ne.nutc00 .or. msg0(1:28).ne.msg00 .or. freq1.ne.freq1_00) then |      if(nutc.ne.nutc00 .or. msg0(1:28).ne.msg00 .or. freq1.ne.freq1_00) then | ||||||
| ! Write to file map65_rx.log: | ! Write to file map65_rx.log: | ||||||
|         ndecodes=ndecodes+1 |         ndecodes=ndecodes+1 | ||||||
|         write(21,1110)  freq1,ndf,xdt0,npol,nsnr0,nutc,msg0(1:28),cq0 |         write(21,1110)  freq1,ndf,xdt0,npol,nsnr0,nutc,msg0(1:28),   & | ||||||
| 1110    format(f8.3,i5,f5.1,2i4,i5.4,2x,a28,': A',2x,a3) |              cmode(2:2),cq0 | ||||||
|  | 1110    format(f8.3,i5,f5.1,2i4,i5.4,2x,a28,': ',a1,2x,a3) | ||||||
|         nutc00=nutc |         nutc00=nutc | ||||||
|         msg00=msg0(1:28) |         msg00=msg0(1:28) | ||||||
|         freq1_00=freq1 |         freq1_00=freq1 | ||||||
|  |         frx=0.001*k0*df+nkhz_center-48.0+1.0 - 0.001*nfcal | ||||||
|  |         fsked=frx - 0.001*ndop00/2.0 - 1.5 | ||||||
|  |         write(12,1120) nutc,fsked,xdt0,nsnr0,trim(msg0) | ||||||
|  | 1120    format(i4.4,f9.3,f7.2,i5,2x,a,i6) | ||||||
|      endif |      endif | ||||||
|   endif |   endif | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1293,7 +1293,25 @@ void MainWindow::decode()                                       //decode() | |||||||
|   datcom_.mousefqso=m_wide_graph_window->QSOfreq(); |   datcom_.mousefqso=m_wide_graph_window->QSOfreq(); | ||||||
|   datcom_.ndepth=m_ndepth; |   datcom_.ndepth=m_ndepth; | ||||||
|   datcom_.ndiskdat=0; |   datcom_.ndiskdat=0; | ||||||
|   if(m_diskData) datcom_.ndiskdat=1; |   if(m_diskData) { | ||||||
|  |     datcom_.ndiskdat=1; | ||||||
|  |     int i0=m_path.indexOf(".tf2"); | ||||||
|  |     if(i0<0) i0=m_path.indexOf(".iq"); | ||||||
|  |     if(i0>0) { | ||||||
|  |       // Compute self Doppler using the filename for Date and Time
 | ||||||
|  |       int nyear=m_path.mid(i0-11,2).toInt()+2000; | ||||||
|  |       int month=m_path.mid(i0-9,2).toInt(); | ||||||
|  |       int nday=m_path.mid(i0-7,2).toInt(); | ||||||
|  |       int nhr=m_path.mid(i0-4,2).toInt(); | ||||||
|  |       int nmin=m_path.mid(i0-2,2).toInt(); | ||||||
|  |       double uth=nhr + nmin/60.0; | ||||||
|  |       int nfreq=(int)datcom_.fcenter; | ||||||
|  |       int ndop00; | ||||||
|  | 
 | ||||||
|  |       astrosub00_(&nyear, &month, &nday, &uth, &nfreq, m_myGrid.toLatin1(),&ndop00,6); | ||||||
|  |       datcom_.nfast=ndop00;               //Send self Doppler to decoder, via datcom
 | ||||||
|  |     } | ||||||
|  |   } | ||||||
|   datcom_.neme=0; |   datcom_.neme=0; | ||||||
|   if(ui->actionOnly_EME_calls->isChecked()) datcom_.neme=1; |   if(ui->actionOnly_EME_calls->isChecked()) datcom_.neme=1; | ||||||
| 
 | 
 | ||||||
| @ -1322,7 +1340,7 @@ void MainWindow::decode()                                       //decode() | |||||||
|   datcom_.nxpol=0; |   datcom_.nxpol=0; | ||||||
|   if(m_xpol) datcom_.nxpol=1; |   if(m_xpol) datcom_.nxpol=1; | ||||||
|   datcom_.nmode=10*m_modeQ65 + m_modeJT65; |   datcom_.nmode=10*m_modeQ65 + m_modeJT65; | ||||||
|   datcom_.nfast=1;                               //No longer used
 | //  datcom_.nfast=1;                               //No longer used
 | ||||||
|   datcom_.nsave=m_nsave; |   datcom_.nsave=m_nsave; | ||||||
|   datcom_.max_drift=ui->sbMaxDrift->value(); |   datcom_.max_drift=ui->sbMaxDrift->value(); | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -322,6 +322,9 @@ extern "C" { | |||||||
|               int len1, int len2); |               int len1, int len2); | ||||||
| 
 | 
 | ||||||
|   int ptt_(int* nport, int* itx, int* iptt); |   int ptt_(int* nport, int* itx, int* iptt); | ||||||
|  | 
 | ||||||
|  |   void astrosub00_ (int* nyear, int* month, int* nday, double* uth, int* nfreq, | ||||||
|  |                     const char* mygrid, int* ndop00, int len1); | ||||||
|   } |   } | ||||||
| 
 | 
 | ||||||
| #endif // MAINWINDOW_H
 | #endif // MAINWINDOW_H
 | ||||||
|  | |||||||
| @ -4781,6 +4781,14 @@ void MainWindow::guiUpdate() | |||||||
|   if(nsec != m_sec0) { |   if(nsec != m_sec0) { | ||||||
| //    qDebug() << "AAA" << nsec << int(m_specOp) << ui->labDXped->text();
 | //    qDebug() << "AAA" << nsec << int(m_specOp) << ui->labDXped->text();
 | ||||||
| 
 | 
 | ||||||
|  |     if(m_mode=="Q65") { | ||||||
|  |       QFileInfo fi(m_appDir+"/wb_q65.txt"); | ||||||
|  |       QDateTime fileTime=fi.lastModified(); | ||||||
|  |       QDateTime now = QDateTime::currentDateTimeUtc (); | ||||||
|  |       int age=fileTime.msecsTo(now)/1000; | ||||||
|  |       if(age==1) readWidebandDecodes(); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     if(m_mode=="FST4") chk_FST4_freq_range(); |     if(m_mode=="FST4") chk_FST4_freq_range(); | ||||||
|     m_currentBand=m_config.bands()->find(m_freqNominal); |     m_currentBand=m_config.bands()->find(m_freqNominal); | ||||||
|     if( SpecOp::HOUND == m_specOp ) { |     if( SpecOp::HOUND == m_specOp ) { | ||||||
| @ -9152,6 +9160,63 @@ void MainWindow::write_transmit_entry (QString const& file_name) | |||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | void MainWindow::readWidebandDecodes() | ||||||
|  | { | ||||||
|  | // Update "m_wEMECall" by reading wb_dec.txt
 | ||||||
|  |   int nhr=0; | ||||||
|  |   int nmin=0; | ||||||
|  |   QFile f(m_appDir+"/wb_q65.txt"); | ||||||
|  |   f.open(QIODevice::ReadOnly); | ||||||
|  |   if(f.isOpen()) { | ||||||
|  |     QTextStream in(&f); | ||||||
|  |     QString line,callsign; | ||||||
|  |     for(int i=0; i<99999; i++) { | ||||||
|  |       line=in.readLine(); | ||||||
|  |       if(line.length()<=0) break; | ||||||
|  |       nhr=line.mid(0,2).toInt(); | ||||||
|  |       nmin=line.mid(2,2).toInt(); | ||||||
|  |       double fsked=line.mid(4,9).toDouble(); | ||||||
|  |       QString msg=line.mid(27,-1); | ||||||
|  |       int i1=msg.indexOf(" "); | ||||||
|  |       int i2=i1 +1 + msg.mid(i1+1,-1).indexOf(" "); | ||||||
|  |       QString call=msg.mid(i1+1,i2-i1); | ||||||
|  |       QString w3=msg.mid(i2+1,-1); | ||||||
|  |       m_EMECall[call].fsked=fsked; | ||||||
|  |       m_EMECall[call].t=60*nhr + nmin; | ||||||
|  |       m_EMECall[call].worked=false; | ||||||
|  |       if(w3.contains(grid_regexp)) m_EMECall[call].grid4=w3; | ||||||
|  |     } | ||||||
|  |     f.close(); | ||||||
|  | 
 | ||||||
|  |     /*
 | ||||||
|  |      if(m_ActiveStationsWidget != NULL) m_ActiveStationsWidget->erase(); | ||||||
|  | 
 | ||||||
|  |      if(m_ActiveStationsWidget!=NULL) m_ActiveStationsWidget->displayRecentStations(t); | ||||||
|  |      QString t1; | ||||||
|  |      if(!bReady) t1 = t1.asprintf("  %3d  %+2.2d  %4d  %1d %2d %4d",az,snr,freq,itx,age,points); | ||||||
|  |      */ | ||||||
|  | 
 | ||||||
|  |     QMap<QString,EMECall>::iterator i; | ||||||
|  |     QString t=""; | ||||||
|  |     QString t1; | ||||||
|  |     for(i=m_EMECall.begin(); i!=m_EMECall.end(); i++) { | ||||||
|  |       int age=60*nhr + nmin - (i->t); | ||||||
|  |       if(age<0) age += 1440; | ||||||
|  |       if(i->worked) { | ||||||
|  |         t1=t1.asprintf("%5.1f   %8s %4d\n",i->fsked,i.key().toLatin1().constData(),age); | ||||||
|  |       } else { | ||||||
|  |         t1=t1.asprintf("%5.1f * %8s %4d\n",i->fsked,i.key().toLatin1().constData(),age); | ||||||
|  |       } | ||||||
|  |       t+=t1; | ||||||
|  |     } | ||||||
|  |     qDebug() << "bb" << t; | ||||||
|  |     if(m_ActiveStationsWidget != NULL) { | ||||||
|  |       m_ActiveStationsWidget->erase(); | ||||||
|  |       m_ActiveStationsWidget->displayRecentStations(t); | ||||||
|  |     } | ||||||
|  |   } | ||||||
|  | } | ||||||
|  | 
 | ||||||
| // -------------------------- Code for FT8 DXpedition Mode ---------------------------
 | // -------------------------- Code for FT8 DXpedition Mode ---------------------------
 | ||||||
| 
 | 
 | ||||||
| void MainWindow::hound_reply () | void MainWindow::hound_reply () | ||||||
|  | |||||||
| @ -373,6 +373,7 @@ private: | |||||||
|   void setColorHighlighting(); |   void setColorHighlighting(); | ||||||
|   void chkFT4(); |   void chkFT4(); | ||||||
|   bool elide_tx1_not_allowed () const; |   bool elide_tx1_not_allowed () const; | ||||||
|  |   void readWidebandDecodes(); | ||||||
| 
 | 
 | ||||||
|   QProcessEnvironment const& m_env; |   QProcessEnvironment const& m_env; | ||||||
|   NetworkAccessManager m_network_manager; |   NetworkAccessManager m_network_manager; | ||||||
| @ -701,6 +702,15 @@ private: | |||||||
|   }; |   }; | ||||||
|   QMap<QString,ActiveCall> m_activeCall;   //Key = callsign, value = grid4, az, points for ARRL_DIGI
 |   QMap<QString,ActiveCall> m_activeCall;   //Key = callsign, value = grid4, az, points for ARRL_DIGI
 | ||||||
| 
 | 
 | ||||||
|  |   struct EMECall | ||||||
|  |   { | ||||||
|  |     QString grid4; | ||||||
|  |     double fsked; | ||||||
|  |     qint32 t; | ||||||
|  |     bool worked; | ||||||
|  |   }; | ||||||
|  |   QMap<QString,EMECall> m_EMECall; | ||||||
|  | 
 | ||||||
|   struct RecentCall |   struct RecentCall | ||||||
|   { |   { | ||||||
|     qint64 dialFreq; |     qint64 dialFreq; | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user