mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-27 06:38:44 -05:00
Added band map 2.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/map65@356 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
parent
a8ac0c3551
commit
ab91d6a141
25
display.F90
25
display.F90
@ -6,6 +6,8 @@ subroutine display
|
|||||||
integer indx(MAXLINES),indx2(MX)
|
integer indx(MAXLINES),indx2(MX)
|
||||||
character*80 line(MAXLINES),line2(MX),line3(MAXLINES)
|
character*80 line(MAXLINES),line2(MX),line3(MAXLINES)
|
||||||
character out*41,cfreq0*3
|
character out*41,cfreq0*3
|
||||||
|
character callsign*6,callsign0*6,freqcall*10(100)
|
||||||
|
character*36 bm2
|
||||||
real freqkHz(MAXLINES)
|
real freqkHz(MAXLINES)
|
||||||
integer utc(MAXLINES),utc2(MX),utcz
|
integer utc(MAXLINES),utc2(MX),utcz
|
||||||
real*8 f0
|
real*8 f0
|
||||||
@ -97,7 +99,10 @@ subroutine display
|
|||||||
enddo
|
enddo
|
||||||
|
|
||||||
rewind 19
|
rewind 19
|
||||||
|
rewind 20
|
||||||
cfreq0=' '
|
cfreq0=' '
|
||||||
|
nc=0
|
||||||
|
callsign0=' '
|
||||||
do k=1,k3
|
do k=1,k3
|
||||||
out=line3(k)(5:12)//line3(k)(28:31)//line3(k)(39:67)
|
out=line3(k)(5:12)//line3(k)(28:31)//line3(k)(39:67)
|
||||||
if(out(1:3).ne.' ') then
|
if(out(1:3).ne.' ') then
|
||||||
@ -108,8 +113,28 @@ subroutine display
|
|||||||
endif
|
endif
|
||||||
write(19,1030) out
|
write(19,1030) out
|
||||||
1030 format(a41)
|
1030 format(a41)
|
||||||
|
i1=index(out(20:),' ')
|
||||||
|
callsign=out(i1+20:)
|
||||||
|
i2=index(callsign,' ')
|
||||||
|
if(i2.gt.1) callsign(i2:)=' '
|
||||||
|
if(callsign.ne.' ' .and. callsign.ne.callsign0) then
|
||||||
|
nc=nc+1
|
||||||
|
freqcall(nc)=cfreq0//' '//callsign
|
||||||
|
callsign0=callsign
|
||||||
|
endif
|
||||||
endif
|
endif
|
||||||
enddo
|
enddo
|
||||||
|
nc=nc+1
|
||||||
|
freqcall(nc)=' '
|
||||||
|
nc=nc+1
|
||||||
|
freqcall(nc)=' '
|
||||||
|
iz=(nc+2)/3
|
||||||
|
do i=1,iz
|
||||||
|
bm2=freqcall(i)//' '//freqcall(i+iz)//' '//freqcall(i+2*iz)
|
||||||
|
write(20,1040) bm2
|
||||||
|
1040 format(a36)
|
||||||
|
enddo
|
||||||
|
write(*,1040)
|
||||||
|
|
||||||
return
|
return
|
||||||
end subroutine display
|
end subroutine display
|
||||||
|
48
display.f
48
display.f
@ -1,48 +0,0 @@
|
|||||||
subroutine display
|
|
||||||
|
|
||||||
parameter (MAXLINES=500)
|
|
||||||
integer indx(MAXLINES)
|
|
||||||
character*80 line(MAXLINES)
|
|
||||||
real freqkHz(MAXLINES)
|
|
||||||
integer utc(MAXLINES)
|
|
||||||
real*8 f0
|
|
||||||
|
|
||||||
ftol=0.02
|
|
||||||
rewind 26
|
|
||||||
|
|
||||||
do i=1,MAXLINES
|
|
||||||
read(26,1010,end=10) line(i)
|
|
||||||
1010 format(a80)
|
|
||||||
read(line(i),1020) f0,ndf,utc(i)
|
|
||||||
1020 format(f7.3,i5,26x,i5)
|
|
||||||
freqkHz(i)=1000.d0*(f0-144.d0) + 0.001d0*ndf
|
|
||||||
enddo
|
|
||||||
|
|
||||||
10 nz=i-1
|
|
||||||
if(nz.lt.1) go to 999
|
|
||||||
call indexx(nz,freqkHz,indx)
|
|
||||||
|
|
||||||
nstart=1
|
|
||||||
rewind 24
|
|
||||||
write(24,3101) line(indx(1))
|
|
||||||
3101 format(a80)
|
|
||||||
do i=2,nz
|
|
||||||
j0=indx(i-1)
|
|
||||||
j=indx(i)
|
|
||||||
if(freqkHz(j)-freqkHz(j0).gt.ftol) then
|
|
||||||
if(nstart.eq.0) write(24,3101)
|
|
||||||
endfile 24
|
|
||||||
if(nstart.eq.1) then
|
|
||||||
nstart=0
|
|
||||||
else
|
|
||||||
endif
|
|
||||||
rewind 24
|
|
||||||
endif
|
|
||||||
if(i.eq.nz) write(24,3101)
|
|
||||||
write(24,3101) line(j)
|
|
||||||
j0=j
|
|
||||||
enddo
|
|
||||||
endfile 24
|
|
||||||
|
|
||||||
999 return
|
|
||||||
end
|
|
19
ftn_init.F90
19
ftn_init.F90
@ -10,7 +10,7 @@
|
|||||||
! 17 wave files written to disk
|
! 17 wave files written to disk
|
||||||
! 18 test file to be transmitted (wsjtgen.f90)
|
! 18 test file to be transmitted (wsjtgen.f90)
|
||||||
! 19 bandmap.txt
|
! 19 bandmap.txt
|
||||||
! 20
|
! 20 bandmap2.txt
|
||||||
! 21 ALL.TXT
|
! 21 ALL.TXT
|
||||||
! 22 kvasd.dat
|
! 22 kvasd.dat
|
||||||
! 23 CALL3.TXT
|
! 23 CALL3.TXT
|
||||||
@ -71,13 +71,22 @@ subroutine ftn_init
|
|||||||
|
|
||||||
#ifdef Win32
|
#ifdef Win32
|
||||||
open(19,file=appdir(:iz)//'/bandmap.txt',status='unknown', &
|
open(19,file=appdir(:iz)//'/bandmap.txt',status='unknown', &
|
||||||
share='denynone',err=910)
|
share='denynone',err=911)
|
||||||
#else
|
#else
|
||||||
open(19,file=appdir(:iz)//'/bandmap.txt',status='unknown', &
|
open(19,file=appdir(:iz)//'/bandmap.txt',status='unknown', &
|
||||||
err=910)
|
err=911)
|
||||||
#endif
|
#endif
|
||||||
endfile 19
|
endfile 19
|
||||||
|
|
||||||
|
#ifdef Win32
|
||||||
|
open(20,file=appdir(:iz)//'/bandmap2.txt',status='unknown', &
|
||||||
|
share='denynone',err=912)
|
||||||
|
#else
|
||||||
|
open(20,file=appdir(:iz)//'/bandmap2.txt',status='unknown', &
|
||||||
|
err=912)
|
||||||
|
#endif
|
||||||
|
endfile 20
|
||||||
|
|
||||||
#ifdef Win32
|
#ifdef Win32
|
||||||
open(21,file=appdir(:iz)//'/ALL.TXT',status='unknown', &
|
open(21,file=appdir(:iz)//'/ALL.TXT',status='unknown', &
|
||||||
access='append',share='denynone',err=950)
|
access='append',share='denynone',err=950)
|
||||||
@ -106,6 +115,10 @@ subroutine ftn_init
|
|||||||
|
|
||||||
910 print*,'Error opening DECODED.TXT'
|
910 print*,'Error opening DECODED.TXT'
|
||||||
stop
|
stop
|
||||||
|
911 print*,'Error opening bandmap.txt'
|
||||||
|
stop
|
||||||
|
912 print*,'Error opening bandmap2.txt'
|
||||||
|
stop
|
||||||
920 print*,'Error opening DECODED.AVE'
|
920 print*,'Error opening DECODED.AVE'
|
||||||
stop
|
stop
|
||||||
930 print*,'Error opening AZEL.DAT'
|
930 print*,'Error opening AZEL.DAT'
|
||||||
|
40
map65.py
40
map65.py
@ -51,6 +51,7 @@ idsec=0
|
|||||||
lauto=0
|
lauto=0
|
||||||
altmsg=0
|
altmsg=0
|
||||||
bm_geom=""
|
bm_geom=""
|
||||||
|
bm2_geom=""
|
||||||
cmap0="Linrad"
|
cmap0="Linrad"
|
||||||
fileopened=""
|
fileopened=""
|
||||||
font1='Helvetica'
|
font1='Helvetica'
|
||||||
@ -177,10 +178,19 @@ def bandmap(event=NONE):
|
|||||||
bmsb = Scrollbar(iframe_bm1, orient=VERTICAL, command=bmtext.yview)
|
bmsb = Scrollbar(iframe_bm1, orient=VERTICAL, command=bmtext.yview)
|
||||||
bmsb.pack(side=RIGHT, fill=Y)
|
bmsb.pack(side=RIGHT, fill=Y)
|
||||||
bmtext.configure(yscrollcommand=bmsb.set)
|
bmtext.configure(yscrollcommand=bmsb.set)
|
||||||
# bmtext.insert(END,'144.103 CQ EA3DXU JN11\n')
|
|
||||||
# bmtext.insert(END,'144.118 OH6KTL RA3AQ KO85 OOO')
|
|
||||||
iframe_bm1.pack(expand=1, fill=X, padx=4)
|
iframe_bm1.pack(expand=1, fill=X, padx=4)
|
||||||
|
|
||||||
|
#------------------------------------------------------ bandmap2
|
||||||
|
def bandmap2(event=NONE):
|
||||||
|
global Version,bm2,bm2_geom,bm2text
|
||||||
|
bm2=Toplevel(root)
|
||||||
|
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.pack(side=LEFT, fill=X, padx=1, pady=3)
|
||||||
|
iframe_bm2.pack(expand=1, fill=X, padx=4)
|
||||||
|
|
||||||
#------------------------------------------------------ logqso
|
#------------------------------------------------------ logqso
|
||||||
def logqso(event=NONE):
|
def logqso(event=NONE):
|
||||||
t=time.strftime("%Y-%b-%d,%H:%M",time.gmtime())
|
t=time.strftime("%Y-%b-%d,%H:%M",time.gmtime())
|
||||||
@ -1083,7 +1093,7 @@ def plot_yellow():
|
|||||||
def update():
|
def update():
|
||||||
global root_geom,isec0,naz,nel,ndmiles,ndkm,nopen, \
|
global root_geom,isec0,naz,nel,ndmiles,ndkm,nopen, \
|
||||||
im,pim,cmap0,isync,isync_save,idsec,first,itol,txsnrdb,tx6alt,\
|
im,pim,cmap0,isync,isync_save,idsec,first,itol,txsnrdb,tx6alt,\
|
||||||
bm_geom
|
bm_geom,bm2_geom
|
||||||
|
|
||||||
utc=time.gmtime(time.time()+0.1*idsec)
|
utc=time.gmtime(time.time()+0.1*idsec)
|
||||||
isec=utc[5]
|
isec=utc[5]
|
||||||
@ -1096,6 +1106,7 @@ def update():
|
|||||||
root_geom=root.geometry()
|
root_geom=root.geometry()
|
||||||
try:
|
try:
|
||||||
bm_geom=bm.geometry()
|
bm_geom=bm.geometry()
|
||||||
|
bm2_geom=bm2.geometry()
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
utchours=utc[3]+utc[4]/60.0 + utc[5]/3600.0
|
utchours=utc[3]+utc[4]/60.0 + utc[5]/3600.0
|
||||||
@ -1268,6 +1279,19 @@ def update():
|
|||||||
for i in range(len(lines)):
|
for i in range(len(lines)):
|
||||||
bmtext.insert(END,lines[i])
|
bmtext.insert(END,lines[i])
|
||||||
bmtext.see(END)
|
bmtext.see(END)
|
||||||
|
|
||||||
|
try:
|
||||||
|
f=open(appdir+'/bandmap2.txt',mode='r')
|
||||||
|
lines=f.readlines()
|
||||||
|
f.close()
|
||||||
|
except:
|
||||||
|
lines=""
|
||||||
|
bm2text.configure(state=NORMAL)
|
||||||
|
bm2text.delete('1.0',END)
|
||||||
|
for i in range(len(lines)):
|
||||||
|
bm2text.insert(END,lines[i])
|
||||||
|
bm2text.see(END)
|
||||||
|
|
||||||
Audio.gcom2.ndecdone=0
|
Audio.gcom2.ndecdone=0
|
||||||
if loopall: opennext()
|
if loopall: opennext()
|
||||||
nopen=0
|
nopen=0
|
||||||
@ -1383,8 +1407,8 @@ viewmenu=Menu(viewbutton,tearoff=0)
|
|||||||
viewbutton['menu']=viewmenu
|
viewbutton['menu']=viewmenu
|
||||||
viewmenu.add('command', label = 'SpecJT', command = showspecjt, \
|
viewmenu.add('command', label = 'SpecJT', command = showspecjt, \
|
||||||
accelerator='F10')
|
accelerator='F10')
|
||||||
viewmenu.add('command', label = 'Band Map', command = bandmap, \
|
viewmenu.add('command', label = 'Band Map 1', command = bandmap)
|
||||||
accelerator='Ctrl+F10')
|
viewmenu.add('command', label = 'Band Map 2', command = bandmap2)
|
||||||
viewmenu.add('command', label = 'Astronomical data', command = astro1, \
|
viewmenu.add('command', label = 'Astronomical data', command = astro1, \
|
||||||
accelerator='Shift+F10')
|
accelerator='Shift+F10')
|
||||||
|
|
||||||
@ -1519,8 +1543,6 @@ root.bind_all('<Shift-F8>', ModeJT65B)
|
|||||||
root.bind_all('<Control-F8>', ModeJT65C)
|
root.bind_all('<Control-F8>', ModeJT65C)
|
||||||
root.bind_all('<F10>', showspecjt)
|
root.bind_all('<F10>', showspecjt)
|
||||||
root.bind_all('<Shift-F10>', astro1)
|
root.bind_all('<Shift-F10>', astro1)
|
||||||
root.bind_all('<Control-F10>', bandmap)
|
|
||||||
|
|
||||||
root.bind_all('<Alt-Key-1>',btx1)
|
root.bind_all('<Alt-Key-1>',btx1)
|
||||||
root.bind_all('<Alt-Key-2>',btx2)
|
root.bind_all('<Alt-Key-2>',btx2)
|
||||||
root.bind_all('<Alt-Key-3>',btx3)
|
root.bind_all('<Alt-Key-3>',btx3)
|
||||||
@ -1781,6 +1803,7 @@ try:
|
|||||||
key,value=params[i].split()
|
key,value=params[i].split()
|
||||||
if key == 'MAP65Geometry': root.geometry(value)
|
if key == 'MAP65Geometry': root.geometry(value)
|
||||||
elif key == 'BMGeometry': bm_geom=value
|
elif key == 'BMGeometry': bm_geom=value
|
||||||
|
elif key == 'BM2Geometry': bm2_geom=value
|
||||||
elif key == 'Mode':
|
elif key == 'Mode':
|
||||||
mode.set(value)
|
mode.set(value)
|
||||||
if value=='JT65A':
|
if value=='JT65A':
|
||||||
@ -1882,6 +1905,7 @@ first=1
|
|||||||
if g.Win32: root.iconbitmap("wsjt.ico")
|
if g.Win32: root.iconbitmap("wsjt.ico")
|
||||||
root.title(' MAP65 by K1JT')
|
root.title(' MAP65 by K1JT')
|
||||||
bandmap()
|
bandmap()
|
||||||
|
bandmap2()
|
||||||
import astro
|
import astro
|
||||||
import specjt
|
import specjt
|
||||||
|
|
||||||
@ -1894,6 +1918,8 @@ root_geom=root_geom[root_geom.index("+"):]
|
|||||||
f.write("MAP65Geometry " + root_geom + "\n")
|
f.write("MAP65Geometry " + root_geom + "\n")
|
||||||
bm_geom=bm_geom[bm_geom.index("+"):]
|
bm_geom=bm_geom[bm_geom.index("+"):]
|
||||||
f.write("BMGeometry " + bm_geom + "\n")
|
f.write("BMGeometry " + bm_geom + "\n")
|
||||||
|
bm2_geom=bm2_geom[bm2_geom.index("+"):]
|
||||||
|
f.write("BM2Geometry " + bm2_geom + "\n")
|
||||||
f.write("Mode " + g.mode + "\n")
|
f.write("Mode " + g.mode + "\n")
|
||||||
f.write("MyCall " + options.MyCall.get() + "\n")
|
f.write("MyCall " + options.MyCall.get() + "\n")
|
||||||
f.write("MyGrid " + options.MyGrid.get() + "\n")
|
f.write("MyGrid " + options.MyGrid.get() + "\n")
|
||||||
|
Loading…
Reference in New Issue
Block a user