Clean up several aspects of Q65-pileup operation.

This commit is contained in:
Joe Taylor 2023-03-02 14:10:18 -05:00
parent f15ad2b9a2
commit 77f14560ff
6 changed files with 22 additions and 34 deletions

View File

@ -22,14 +22,10 @@ subroutine get_q3list(fname,bDiskData,nlist,list)
common/lu24com/file24name common/lu24com/file24name
nhist2=0 nhist2=0
! open(24,file=fname,status='unknown',form='unformatted') open(24,file=fname,status='unknown',form='unformatted')
open(24,file=fname,status='unknown') read(24,end=1) nhist2
! read(24,end=1) nhist2
read(24,*,end=1) nhist2
if(nhist2.ge.1 .and. nhist2.le.40) then if(nhist2.ge.1 .and. nhist2.le.40) then
! read(24,end=1) ctmp(1:nhist2) read(24,end=1) ctmp(1:nhist2)
read(24,3001,end=1) ctmp(1:nhist2)
3001 format(a6,2x,a4,2x,i11,2i5)
else else
nhist2=0 nhist2=0
endif endif
@ -57,10 +53,8 @@ subroutine get_q3list(fname,bDiskData,nlist,list)
enddo enddo
nhist2=j nhist2=j
! write(24) nhist2 write(24) nhist2
write(24,*) nhist2 write(24) callers(1:nhist2)
! write(24) callers(1:nhist2)
write(24,3001) callers(1:nhist2)
call indexx(callers(1:nhist2)%nfreq,nhist2,indx) call indexx(callers(1:nhist2)%nfreq,nhist2,indx)
do i=1,nhist2 do i=1,nhist2
@ -104,10 +98,9 @@ subroutine rm_q3list(dxcall0)
common/lu24com/file24name common/lu24com/file24name
dxcall=dxcall0 dxcall=dxcall0
open(24,file=trim(file24name),status='unknown') open(24,file=trim(file24name),status='unknown',form='unformatted')
read(24,*) nhist2 read(24) nhist2
read(24,3001) callers(1:nhist2) read(24) callers(1:nhist2)
3001 format(a6,2x,a4,2x,i11,2i5)
if(nhist2.eq.MAX_CALLERS .and. dxcall.eq.callers(nhist2)%call) then if(nhist2.eq.MAX_CALLERS .and. dxcall.eq.callers(nhist2)%call) then
nhist2=MAX_CALLERS - 1 nhist2=MAX_CALLERS - 1
@ -124,8 +117,8 @@ subroutine rm_q3list(dxcall0)
enddo enddo
10 rewind 24 10 rewind 24
write(24,*) nhist2 write(24) nhist2
write(24,3001) callers(1:nhist2) write(24) callers(1:nhist2)
close(24) close(24)
return return

View File

@ -114,15 +114,11 @@ contains
mycall13=mycall mycall13=mycall
if(ncontest.eq.1) then if(ncontest.eq.1) then
! NA VHF, WW-Digi, or ARRL Digi Contest ! NA VHF, WW-Digi, or ARRL Digi Contest
! open(24,file=trim(data_dir)//'/tsil.3q',status='unknown', & open(24,file=trim(data_dir)//'/tsil.3q',status='unknown', &
! form='unformatted') form='unformatted')
open(24,file=trim(data_dir)//'/tsil.3q',status='unknown') read(24,end=2) nhist2
! read(24,end=2) nhist2
read(24,*,end=2) nhist2
if(nhist2.ge.1 .and. nhist2.le.40) then if(nhist2.ge.1 .and. nhist2.le.40) then
! read(24,end=2) callers(1:nhist2) read(24,end=2) callers(1:nhist2)
read(24,3001,end=2) callers(1:nhist2)
3001 format(a6,2x,a4,2x,i11,2i5)
now=time() now=time()
do i=1,nhist2 do i=1,nhist2
hours=(now - callers(i)%nsec)/3600.0 hours=(now - callers(i)%nsec)/3600.0

View File

@ -896,6 +896,7 @@ subroutine q65_hist2(nfreq,msg0,callers,nhist2)
if(callers(i)%call .eq. c6) then if(callers(i)%call .eq. c6) then
newcall=.false. newcall=.false.
callers(i)%nsec=time() callers(i)%nsec=time()
callers(i)%nfreq=nfreq
exit exit
endif endif
enddo enddo
@ -914,12 +915,10 @@ subroutine q65_hist2(nfreq,msg0,callers,nhist2)
endif endif
if(nhist2.ge.1 .and. nhist2.le.40) then if(nhist2.ge.1 .and. nhist2.le.40) then
! open(24,file=trim(data_dir)//'/tsil.3q',status='unknown', & open(24,file=trim(data_dir)//'/tsil.3q',status='unknown', &
! form='unformatted') form='unformatted')
open(24,file=trim(data_dir)//'/tsil.3q',status='unknown') write(24) nhist2
write(24,*) nhist2 write(24) callers(1:nhist2)
write(24,3001) callers(1:nhist2)
3001 format(a6,2x,a4,2x,i11,2i5)
close(24) close(24)
endif endif

View File

@ -22,7 +22,7 @@ subroutine q65_set_list2(mycall,hiscall,hisgrid,callers,nhist2,codewords,ncw)
call stdcall(hiscall,std) call stdcall(hiscall,std)
jmax=nhist2 jmax=nhist2
if(std .and. isgrid(hisgrid(1:4))) then if(std .and. isgrid(hisgrid(1:4))) then
jmax=nhist2+1 jmax=min(MAX_CALLERS,nhist2+1)
do j=1,nhist2 do j=1,nhist2
if(callers(j)%call .eq. hiscall(1:6)) then if(callers(j)%call .eq. hiscall(1:6)) then
jmax=nhist2 jmax=nhist2

View File

@ -3790,7 +3790,7 @@ void MainWindow::callSandP2(int n)
n=qAbs(n)-1; n=qAbs(n)-1;
if(m_mode!="Q65" and m_ready2call[n]=="") return; if(m_mode!="Q65" and m_ready2call[n]=="") return;
QStringList w=m_ready2call[n].split(' ', SkipEmptyParts); QStringList w=m_ready2call[n].split(' ', SkipEmptyParts);
if(m_mode=="Q65" and m_specOp==SpecOp::Q65_PILEUP and n <= m_callers->size()) { if(m_mode=="Q65" and m_specOp==SpecOp::Q65_PILEUP and n < 40) {
// This code is for 6m EME DXpedition operator // This code is for 6m EME DXpedition operator
w=m_callers[n].split(' ', SkipEmptyParts); w=m_callers[n].split(' ', SkipEmptyParts);
m_deCall=w[2]; m_deCall=w[2];

View File

@ -669,7 +669,7 @@ private:
QString m_deCall; QString m_deCall;
QString m_deGrid; QString m_deGrid;
QString m_ready2call[50]; QString m_ready2call[50];
QString m_callers[40]; QString m_callers[50];
QSet<QString> m_pfx; QSet<QString> m_pfx;
QSet<QString> m_sfx; QSet<QString> m_sfx;