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

View File

@ -114,15 +114,11 @@ contains
mycall13=mycall
if(ncontest.eq.1) then
! NA VHF, WW-Digi, or ARRL Digi Contest
! open(24,file=trim(data_dir)//'/tsil.3q',status='unknown', &
! form='unformatted')
open(24,file=trim(data_dir)//'/tsil.3q',status='unknown')
! read(24,end=2) nhist2
read(24,*,end=2) nhist2
open(24,file=trim(data_dir)//'/tsil.3q',status='unknown', &
form='unformatted')
read(24,end=2) nhist2
if(nhist2.ge.1 .and. nhist2.le.40) then
! read(24,end=2) callers(1:nhist2)
read(24,3001,end=2) callers(1:nhist2)
3001 format(a6,2x,a4,2x,i11,2i5)
read(24,end=2) callers(1:nhist2)
now=time()
do i=1,nhist2
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
newcall=.false.
callers(i)%nsec=time()
callers(i)%nfreq=nfreq
exit
endif
enddo
@ -914,12 +915,10 @@ subroutine q65_hist2(nfreq,msg0,callers,nhist2)
endif
if(nhist2.ge.1 .and. nhist2.le.40) then
! open(24,file=trim(data_dir)//'/tsil.3q',status='unknown', &
! form='unformatted')
open(24,file=trim(data_dir)//'/tsil.3q',status='unknown')
write(24,*) nhist2
write(24,3001) callers(1:nhist2)
3001 format(a6,2x,a4,2x,i11,2i5)
open(24,file=trim(data_dir)//'/tsil.3q',status='unknown', &
form='unformatted')
write(24) nhist2
write(24) callers(1:nhist2)
close(24)
endif

View File

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

View File

@ -3790,7 +3790,7 @@ void MainWindow::callSandP2(int n)
n=qAbs(n)-1;
if(m_mode!="Q65" and m_ready2call[n]=="") return;
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
w=m_callers[n].split(' ', SkipEmptyParts);
m_deCall=w[2];

View File

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