diff --git a/decode1a.f b/decode1a.f index ea9e2ac99..71fa17488 100644 --- a/decode1a.f +++ b/decode1a.f @@ -1,5 +1,5 @@ subroutine decode1a(id,newdat,nfilt,freq,nflip, - + mycall,hiscall,hisgrid,neme,ndepth,nqd,dphi, + + mycall,hiscall,hisgrid,neme,ndepth,nqd,dphi,ndphi, + ipol,sync2,a,dt,pol,nkv,nhist,qual,decoded) C Apply AFC corrections to a candidate JT65 signal, and then try @@ -12,7 +12,7 @@ C to decode it. complex c3x(NMAX/16),c3y(NMAX/16) !After 1/16 filter and downsample complex c4x(NMAX/64),c4y(NMAX/64) !After 1/64 filter and downsample complex cx(NMAX/64), cy(NMAX/64) !Data at 1378.125 samples/s - complex c5x(NMAX/256),c5y(NMAX/256) + complex c5x(NMAX/256),c5y(NMAX/256),c5y0(NMAX/256) complex c5a(256), c5b(256) complex z @@ -74,12 +74,12 @@ C Find best DF, f1, f2, DT, and pol ! + ccfbest,dtbest) call fil6521(cx,n5,c5x,n6) - call fil6521(cy,n5,c5y,n6) + call fil6521(cy,n5,c5y0,n6) ! Adjust for cable length difference: z=cmplx(cos(dphi),sin(dphi)) do i=1,n6 - c5y(i)=z*c5y(i) + c5y(i)=z*c5y0(i) enddo fsample=1378.125/4. diff --git a/map65.py b/map65.py index a6405080b..431da2687 100644 --- a/map65.py +++ b/map65.py @@ -166,6 +166,15 @@ def testmsgs(): tx5.insert(0,"@1000") tx6.insert(0,"@2000") +#------------------------------------------------------ delta_phi +def delta_phi(): + global lauto + Audio.gcom2.monitoring=0 + lauto=0 + Audio.gcom2.lauto=0 + Audio.gcom2.ndphi=1 + decode() + #------------------------------------------------------ def messages(event=NONE): global Version,bm,bm_geom,msgtext @@ -188,19 +197,19 @@ def messages(event=NONE): #------------------------------------------------------ bandmap def bandmap(event=NONE): - global Version,bm2,bm2_geom,bm2text + global Version,bm2,bm2_geom,bmtext bm2=Toplevel(root) bm2.title("Band Map") bm2.geometry(bm2_geom) if g.Win32: bm2.iconbitmap("wsjt.ico") iframe_bm2 = Frame(bm2, bd=1, relief=SUNKEN) - bm2text=Text(iframe_bm2, height=24, width=36, bg="Navy", fg="yellow") - bm2text.bind('',dbl_click_bm2text) - bm2text.pack(side=LEFT, fill=X, padx=1, pady=3) - bm2text.tag_configure('age0',foreground='red') - bm2text.tag_configure('age1',foreground='yellow') - bm2text.tag_configure('age2',foreground='gray75') - bm2text.tag_configure('age3',foreground='gray50') + bmtext=Text(iframe_bm2, height=24, width=36, bg="Navy", fg="yellow") + bmtext.bind('',dbl_click_bmtext) + bmtext.pack(side=LEFT, fill=X, padx=1, pady=3) + bmtext.tag_configure('age0',foreground='red') + bmtext.tag_configure('age1',foreground='yellow') + bmtext.tag_configure('age2',foreground='gray75') + bmtext.tag_configure('age3',foreground='gray50') iframe_bm2.pack(expand=1, fill=X, padx=4,pady=5) #------------------------------------------------------ logqso @@ -240,10 +249,10 @@ def dbl_click_msgtext(event): t=msgtext.get('1.0',END) #Entire contents of text box t1=msgtext.get('1.0',CURRENT) #Contents from start to cursor dbl_click_call(t,t1,event) -#------------------------------------------------------ dbl_click_bm2text -def dbl_click_bm2text(event): - t=bm2text.get('1.0',END) #Entire contents of text box - t1=bm2text.get('1.0',CURRENT) #Contents from start to cursor +#------------------------------------------------------ dbl_click_bmtext +def dbl_click_bmtext(event): + t=bmtext.get('1.0',END) #Entire contents of text box + t1=bmtext.get('1.0',CURRENT) #Contents from start to cursor dbl_click_call(t,t1,event) #------------------------------------------------------ dbl_click_ave def dbl_click_ave(event): @@ -788,7 +797,7 @@ def del_all(): def clr_all(): Audio.gcom2.nrw26=1 #Request rewind of tmp26.txt msgtext.delete('1.0',END) - bm2text.delete('1.0',END) + bmtext.delete('1.0',END) #------------------------------------------------------ toggleauto def toggleauto(event=NONE): @@ -1107,8 +1116,8 @@ def update(): f.close() except: lines="" - bm2text.configure(state=NORMAL) - bm2text.delete('1.0',END) + bmtext.configure(state=NORMAL) + bmtext.delete('1.0',END) for i in range(len(lines)): for j in range(3): ka=14*j @@ -1124,8 +1133,9 @@ def update(): if nage==1: attr='age1' if nage==2: attr='age2' if nage>=3: attr='age3' - bm2text.insert(END,t,attr) - bm2text.see(END) +# print i,j,t + bmtext.insert(END,t,attr) + bmtext.see(END) Audio.gcom2.ndecdone=0 if loopall: opennext() @@ -1221,6 +1231,7 @@ setupmenu.add('command', label = 'Options', command = options1, \ accelerator='F2') setupmenu.add_separator() setupmenu.add('command', label = 'Generate messages for test tones', command=testmsgs) +setupmenu.add('command', label = 'Find Delta Phi', command=delta_phi) setupmenu.add_separator() setupmenu.add_checkbutton(label = 'F4 sets Tx6',variable=kb8rq) setupmenu.add_checkbutton(label = 'Double-click on callsign sets TxFirst', diff --git a/map65a.f90 b/map65a.f90 index 66bded453..4f41bafbb 100644 --- a/map65a.f90 +++ b/map65a.f90 @@ -155,12 +155,12 @@ subroutine map65a(newdat) ! Keep only the best candidate within ftol. ! (Am I deleting any good decodes by doing this?) - if(freq-freq0.le.ftol .and. sync1.gt.sync10 .and. & + if(freq-freq0.le.ftol .and. sync1.gt.sync10 .and. & nkm.eq.1) km=km-1 if(freq-freq0.gt.ftol .or. sync1.gt.sync10) then nflip=nint(flipk) - call decode1a(id(1,1,kbuf),newdat,nfilt,freq,nflip, & - mycall,hiscall,hisgrid,neme,ndepth,nqd,dphi, & + call decode1a(id(1,1,kbuf),newdat,nfilt,freq,nflip, & + mycall,hiscall,hisgrid,neme,ndepth,nqd,dphi,ndphi, & ipol,sync2,a,dt,pol,nkv,nhist,qual,decoded) km=km+1 sig(km,1)=nfile