mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-25 21:58:38 -05:00
Merge branch 'feat-map65-integration' of bitbucket.org:k1jt/wsjtx into feat-map65-integration
This commit is contained in:
commit
9626703daa
@ -38,6 +38,8 @@ extern struct { //This is "common/datcom/..." in Fortran
|
||||
char hiscall[12];
|
||||
char hisgrid[6];
|
||||
char datetime[20];
|
||||
char datadir[200];
|
||||
char tempdir[200];
|
||||
} datcom_;
|
||||
}
|
||||
|
||||
|
@ -8,16 +8,16 @@ subroutine decode0(dd,ss,savg,nstandalone)
|
||||
integer hist(0:32768)
|
||||
character mycall*12,hiscall*12,mygrid*6,hisgrid*6,datetime*20
|
||||
character mycall0*12,hiscall0*12,hisgrid0*6
|
||||
character*300 datadir,tempdir
|
||||
common/npar/fcenter,nutc,idphi,mousedf,mousefqso,nagain, &
|
||||
ndepth,ndiskdat,neme,newdat,nfa,nfb,nfcal,nfshift, &
|
||||
mcall3,nkeep,ntol,nxant,nrxlog,nfsample,nxpol,nmode, &
|
||||
nfast,nsave,mycall,mygrid,hiscall,hisgrid,datetime
|
||||
nfast,nsave,mycall,mygrid,hiscall,hisgrid,datetime,datadir,tempdir
|
||||
common/tracer/ limtrace,lu
|
||||
data neme0/-99/,mcall3b/1/
|
||||
save
|
||||
|
||||
call timer('decode0 ',0)
|
||||
|
||||
if(newdat.ne.0) then
|
||||
nz=52*96000
|
||||
hist=0
|
||||
|
@ -13,12 +13,13 @@ program m65
|
||||
common/tracer/limtrace,lu
|
||||
real*8 fc0,fcenter
|
||||
character*80 arg,infile
|
||||
character*300 datadir,tempdir
|
||||
character mycall*12,hiscall*12,mygrid*6,hisgrid*6,datetime*20
|
||||
common/datcom/dd(4,5760000),ss(4,322,NFFT),savg(4,NFFT),fc0,nutc0,junk(36)
|
||||
common/npar/fcenter,nutc,idphi,mousedf,mousefqso,nagain, &
|
||||
ndepth,ndiskdat,neme,newdat,nfa,nfb,nfcal,nfshift, &
|
||||
mcall3,nkeep,ntol,nxant,nrxlog,nfsample,nxpol,nmode, &
|
||||
nfast,nsave,mycall,mygrid,hiscall,hisgrid,datetime
|
||||
nfast,nsave,mycall,mygrid,hiscall,hisgrid,datetime,datadir,tempdir
|
||||
|
||||
nargs=iargc()
|
||||
if(nargs.ne.1 .and. nargs.lt.5) then
|
||||
|
@ -63,18 +63,41 @@ subroutine m65c(dd,ss,savg,nparams0)
|
||||
integer*1 detach_m65
|
||||
real*4 dd(4,5760000),ss(4,322,32768),savg(4,32768)
|
||||
real*8 fcenter
|
||||
integer nparams0(40),nparams(40)
|
||||
integer nparams0(189),nparams(189)
|
||||
character*12 mycall,hiscall
|
||||
character*6 mygrid,hisgrid
|
||||
character*20 datetime
|
||||
character*300 datadir,tempdir
|
||||
character*1 c0
|
||||
common/npar/fcenter,nutc,idphi,mousedf,mousefqso,nagain, &
|
||||
ndepth,ndiskdat,neme,newdat,nfa,nfb,nfcal,nfshift, &
|
||||
mcall3,nkeep,ntol,nxant,nrxlog,nfsample,nxpol,nmode, &
|
||||
nfast,nsave,mycall,mygrid,hiscall,hisgrid,datetime
|
||||
nfast,nsave,mycall,mygrid,hiscall,hisgrid,datetime,datadir,tempdir
|
||||
equivalence (nparams,fcenter)
|
||||
|
||||
nparams=nparams0 !Copy parameters into common/npar/
|
||||
npatience=1
|
||||
i0=index(mycall,c0)
|
||||
if(i0.gt.0) mycall=mycall(1:i0-1)
|
||||
|
||||
i0=index(mygrid,c0)
|
||||
if(i0.gt.0) mygrid=mygrid(1:i0-1)
|
||||
|
||||
i0=index(hiscall,c0)
|
||||
if(i0.gt.0) hiscall=hiscall(1:i0-1)
|
||||
|
||||
i0=index(hisgrid,c0)
|
||||
if(i0.gt.0) hisgrid=hisgrid(1:i0-1)
|
||||
|
||||
i0=index(datetime,c0)
|
||||
if(i0.gt.0) datetime=datetime(1:i0-1)
|
||||
|
||||
i0=index(datadir,c0)
|
||||
if(i0.gt.0) datadir=datadir(1:i0-1)
|
||||
|
||||
i0=index(tempdir,c0)
|
||||
if(i0.gt.0) tempdir=tempdir(1:i0-1)
|
||||
|
||||
if(iand(nrxlog,1).ne.0) then
|
||||
write(21,1000) datetime(:17)
|
||||
1000 format(/'UTC Date: 'a17/78('-'))
|
||||
|
@ -38,15 +38,6 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb, &
|
||||
nwrite_q65=0
|
||||
bq65=mode_q65.gt.0
|
||||
|
||||
!###
|
||||
write(71,3071) newdat,nutc,ntol,idphi,nfa,nfb, &
|
||||
mousedf,mousefqso,nagain,ndecdone,ndiskdat,nfshift,ndphi, &
|
||||
nfcal,nkeep,mcall3b,nsum,nsave,nxant,neme,ndepth, &
|
||||
nhsym,nfsample,nxpol,nmode,mycall,mygrid,hiscall,hisgrid, &
|
||||
sum(dd),sum(ss),sum(savg)
|
||||
3071 format(16i5/9i6/a12,a6,2x,a12,a6/3e15.6)
|
||||
!###
|
||||
|
||||
mcall3a=mcall3b
|
||||
mousefqso0=mousefqso
|
||||
xpol=(nxpol.ne.0)
|
||||
@ -69,7 +60,6 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb, &
|
||||
nqdz=1
|
||||
if(bq65 .and. (nutc0.ge.0 .or. (nstandalone.eq.1))) nqdz=2
|
||||
! if(bq65) nqdz=2
|
||||
write(69,*) nqdz,mousefqso
|
||||
if(nutc.ne.nutc0) nfile=nfile+1
|
||||
nutc0=nutc
|
||||
|
||||
|
@ -25,9 +25,6 @@ subroutine q65b(nutc,nqd,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, &
|
||||
data first/.true./
|
||||
save
|
||||
|
||||
write(72,*) nutc,nqd,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, &
|
||||
mycall0,hiscall0,hisgrid,mode_q65
|
||||
|
||||
if(first) then
|
||||
open(9,file='wsjtx_dir.txt',status='old')
|
||||
read(9,*) wsjtx_dir
|
||||
|
@ -292,6 +292,10 @@ MainWindow::MainWindow(QWidget *parent) :
|
||||
if(ui->actionCuteSDR->isChecked()) on_actionCuteSDR_triggered();
|
||||
if(ui->actionAFMHot->isChecked()) on_actionAFMHot_triggered();
|
||||
if(ui->actionBlue->isChecked()) on_actionBlue_triggered();
|
||||
|
||||
m_dataDir = QStandardPaths::writableLocation (QStandardPaths::DataLocation);
|
||||
m_tempDir = QStandardPaths::writableLocation (QStandardPaths::TempLocation) + "/map65";
|
||||
|
||||
// End of MainWindow constructor
|
||||
}
|
||||
|
||||
@ -307,6 +311,7 @@ MainWindow::~MainWindow()
|
||||
soundOutThread.quitExecution=true;
|
||||
soundOutThread.wait(3000);
|
||||
}
|
||||
PaError paerr=Pa_Terminate();
|
||||
if(!m_decoderBusy) {
|
||||
QFile lockFile(m_appDir + "/.lock");
|
||||
lockFile.remove();
|
||||
@ -950,7 +955,6 @@ void MainWindow::OnExit()
|
||||
{
|
||||
g_pWideGraph->saveSettings();
|
||||
m_killAll=true;
|
||||
mem_m65.detach();
|
||||
QFile quitFile(m_appDir + "/.quit");
|
||||
quitFile.open(QIODevice::ReadWrite);
|
||||
QFile lockFile(m_appDir + "/.lock");
|
||||
@ -958,6 +962,7 @@ void MainWindow::OnExit()
|
||||
bool b=proc_m65.waitForFinished(1000);
|
||||
if(!b) proc_m65.kill();
|
||||
quitFile.remove();
|
||||
mem_m65.detach();
|
||||
qApp->exit(0); // Exit the event loop
|
||||
}
|
||||
|
||||
@ -1313,7 +1318,8 @@ void MainWindow::decode() //decode()
|
||||
memcpy(datcom_.hiscall, hcall.toLatin1(), 12);
|
||||
memcpy(datcom_.hisgrid, hgrid.toLatin1(), 6);
|
||||
memcpy(datcom_.datetime, m_dateTime.toLatin1(), 20);
|
||||
|
||||
memcpy(datcom_.datadir, m_dataDir.toLatin1(),m_dataDir.length());
|
||||
memcpy(datcom_.tempdir, m_tempDir.toLatin1(),m_tempDir.length());
|
||||
//newdat=1 ==> this is new data, must do the big FFT
|
||||
//nagain=1 ==> decode only at fQSO +/- Tol
|
||||
|
||||
@ -1326,6 +1332,7 @@ void MainWindow::decode() //decode()
|
||||
from += noffset;
|
||||
size -= noffset;
|
||||
}
|
||||
|
||||
memcpy(to, from, qMin(mem_m65.size(), size));
|
||||
datcom_.nagain=0;
|
||||
datcom_.ndiskdat=0;
|
||||
|
@ -256,6 +256,8 @@ private:
|
||||
QString m_colors;
|
||||
QString m_editorCommand;
|
||||
QString m_modeTx;
|
||||
QString m_dataDir;
|
||||
QString m_tempDir;
|
||||
|
||||
QHash<QString,bool> m_worked;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user