From 8a0b8e4b87844c4d897192e3fbab4650d6897b40 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Fri, 29 Jun 2007 01:01:20 +0000 Subject: [PATCH] Mostly working now. Still need to fix multicast input for more than one minute of data (some index runs off the end?). Need to fully implement on-the-fly FFTs. Need to double-buffer arrays ss(), ss5(), savg(). git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/map65@435 ab8295b8-cf94-4d9e-aec4-7959e3be5d79 --- decode1.F90 | 24 +++++++++++++++++------- getfile2.F90 | 2 +- map65a.f90 | 9 ++++++++- symspec.f | 1 + 4 files changed, 27 insertions(+), 9 deletions(-) diff --git a/decode1.F90 b/decode1.F90 index e54b5c885..3b84fdf2c 100644 --- a/decode1.F90 +++ b/decode1.F90 @@ -63,14 +63,24 @@ subroutine decode1(iarg) sendingsh0=sendingsh mode0=mode endif - -#ifdef Win32 -! call sleepqq(100) - call sleepqq(1000) -#else - call usleep(100*1000) -#endif + call sleep_msec(1000) !### was 100 go to 10 end subroutine decode1 + +subroutine sleep_msec(n) + +#ifdef Win32 + use dflib +#endif + +#ifdef Win32 + call sleepqq(n) +#else + call usleep(1000*n) +#endif + + return +end subroutine sleep_msec + diff --git a/getfile2.F90 b/getfile2.F90 index c902d6856..7a96ba4f7 100644 --- a/getfile2.F90 +++ b/getfile2.F90 @@ -55,7 +55,7 @@ subroutine getfile2(fname,len) ndiskdat=1 ndecoding=4 mousebutton=0 - rxnoise=7.0 + rxnoise=8.0 go to 999 998 ierr=1001 diff --git a/map65a.f90 b/map65a.f90 index f8e01e27e..b20d8628f 100644 --- a/map65a.f90 +++ b/map65a.f90 @@ -74,6 +74,7 @@ subroutine map65a(newdat) sync20=-999. ntry=0 do i=ia,ib !Search over freq range + call sleep_msec(0) freq=0.001*((i-1)*df - 23000) + 100.0 ! Find the local base level for each polarization; update every 10 bins. @@ -189,6 +190,7 @@ subroutine map65a(newdat) endif enddo if(nqd.eq.1) then + nwrite=0 do k=1,kk decoded=msg(k) if(decoded.ne.' ') then @@ -216,11 +218,16 @@ subroutine map65a(newdat) ! ndf2=nint(a(3)) nsync1=sync1 nsync2=nint(10.0*log10(sync2)) - 40 !### empirical ### - nw=0 + nw=0 !### Fix this! ### + nwrite=nwrite+1 write(11,1010) nkHz,ndf,npol,nutc,nsync2,dt,nw,decoded,nkv,nqual 1010 format(i3,i5,i4,i5.4,i4,f5.1,i3,2x,a22,i3,i4) endif enddo + if(nwrite.eq.0) then + write(11,1010) mousefqso,mousedf,0,nutc,-33,0.0,0 !### Needs work ### + endif + write(11,*) '$EOF' call flushqqq(11) ndecdone=1 diff --git a/symspec.f b/symspec.f index 7cd4aa499..8e63b9635 100644 --- a/symspec.f +++ b/symspec.f @@ -93,6 +93,7 @@ C Compute spectra at four polarizations, using half-symbol steps. ndecoding=1 go to 999 endif + call sleep_msec(0) enddo 999 kkdone=i1-1