WSJT-X/lib/ft4/ft4d.f90

84 lines
2.2 KiB
Fortran
Raw Normal View History

2019-01-25 17:01:34 -05:00
program ft4d
include 'ft4_params.f90'
character*8 arg
character*17 cdatetime
character*512 data_dir
character*12 mycall
character*12 hiscall
character*80 infile
character*61 line
2019-03-04 18:26:24 -05:00
character*4 cqstr
2019-01-25 17:01:34 -05:00
real*8 fMHz
integer ihdr(11)
integer*2 iwave(240000) !20*12000
2019-01-25 17:01:34 -05:00
fs=12000.0/NDOWN !Sample rate
dt=1/fs !Sample interval after downsample (s)
tt=NSPS*dt !Duration of "itone" symbols (s)
baud=1.0/tt !Keying rate for "itone" symbols (baud)
txt=NZ*dt !Transmission length (s)
nargs=iargc()
if(nargs.lt.1) then
print*,'Usage: ft4d [-a <data_dir>] [-f fMHz] [-n nQSOProgress] file1 [file2 ...]'
2019-01-25 17:01:34 -05:00
go to 999
endif
iarg=1
data_dir="."
call getarg(iarg,arg)
if(arg(1:2).eq.'-a') then
call getarg(iarg+1,data_dir)
iarg=iarg+2
endif
call getarg(iarg,arg)
if(arg(1:2).eq.'-f') then
call getarg(iarg+1,arg)
read(arg,*) fMHz
iarg=iarg+2
endif
nQSOProgress=0
if(arg(1:2).eq.'-n') then
call getarg(iarg+1,arg)
read(arg,*) nQSOProgress
iarg=iarg+2
endif
nfa=10
nfb=4990
ndecodes=0
nfqso=1500
mycall="K9AN"
hiscall="K1JT"
2019-03-04 18:26:24 -05:00
ncontest=4
cqstr="RU "
2019-01-25 17:01:34 -05:00
do ifile=iarg,nargs
call getarg(ifile,infile)
open(10,file=infile,status='old',access='stream')
read(10) ihdr
npts=min(ihdr(11)/2,180000)
read(10) iwave(1:npts)
2019-01-25 17:01:34 -05:00
close(10)
cdatetime=infile
j2=index(infile,'.wav')
if(j2.ge.14) cdatetime=infile(j2-13:j2)//'000'
istep=3456
nsteps=(npts-52800)/istep + 1
do n=1,nsteps
i0=(n-1)*istep + 1
2019-02-15 09:06:41 -05:00
tbuf=(i0-1)/12000.0
call ft4b(cdatetime,tbuf,nfa,nfb,nQSOProgress,ncontest, &
2019-03-09 11:03:01 -05:00
nfqso,iwave(i0),ndecodes,mycall,hiscall,cqstr,line,data_dir)
do idecode=1,ndecodes
2019-03-09 11:03:01 -05:00
call get_ft4msg(idecode,line)
write(*,'(a61)') line
enddo
enddo !steps
enddo !files
2019-01-25 17:01:34 -05:00
call four2a(xx,-1,1,-1,1) !Destroy FFTW plans to free their memory
2019-01-25 17:01:34 -05:00
999 end program ft4d