'Experimental

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@8231 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Joe Taylor 2017-11-10 02:14:26 +00:00
parent 276c804c50
commit 17383ea084
2 changed files with 36 additions and 8 deletions

View File

@ -14,6 +14,7 @@ program fox_sim
character*6 MyCall character*6 MyCall
character*4 MyGrid character*4 MyGrid
character*8 arg character*8 arg
character*1 c1,c2,c3,c4
integer ntot(MAXSIG),irate(MAXSIG),ntimes(MAXSIG) integer ntot(MAXSIG),irate(MAXSIG),ntimes(MAXSIG)
logical logit logical logit
common/dxpfifo/nc,isnr,xcall,xgrid common/dxpfifo/nc,isnr,xcall,xgrid
@ -53,14 +54,32 @@ program fox_sim
! Read a file with calls and grids; insert random S/N values. ! Read a file with calls and grids; insert random S/N values.
! This is used in place of an operator-selected FIFO ! This is used in place of an operator-selected FIFO
open(10,file='xcall.txt',status='old') ! open(10,file='xcall.txt',status='old')
do i=1,NCALLS do i=1,NCALLS
read(10,1000) xcall(i),xgrid(i) ! read(10,1000) xcall(i),xgrid(i)
1000 format(a6,7x,a4) !1000 format(a6,7x,a4)
j=mod(i-1,26)
c1=char(ichar('A')+j)
k=mod((i-1)/26,26)
c2=char(ichar('A')+k)
n=mod((i-1)/260,10)
c3=char(ichar('0')+n)
xcall(i)='K'//c2//c3//c1//c1//c1
j=mod(i-1,18)
c1=char(ichar('A')+j)
k=mod((i-1)/18,18)
c2=char(ichar('A')+k)
n=mod((i-1)/10,10)
c4=char(ichar('0')+n)
n=mod((i-1)/100,10)
c3=char(ichar('0')+n)
xgrid(i)=c1//c2//c3//c4
call random_number(x) call random_number(x)
isnr(i)=-20+int(40*x) isnr(i)=-20+int(40*x)
enddo enddo
close(10) ! close(10)
! Write headings for the summary file ! Write headings for the summary file
minutes=nseq/4 minutes=nseq/4

View File

@ -16,8 +16,11 @@ subroutine fox_tx(maxtimes,fail,called,gcalled,hm,fm,ntimes,log,logit)
g4(4:4).ge.'0' .and. g4(4:4).le.'9' .and. g4(1:4).ne.'RR73' g4(4:4).ge.'0' .and. g4(4:4).le.'9' .and. g4(1:4).ne.'RR73'
logit=.false. logit=.false.
n=len(trim(hm))
g4=""
if(n.gt.8) g4=hm(n-3:n)
call random_number(r) call random_number(r)
if(r.lt.fail) hm="" !Fox failed to copy if(r.lt.fail .and. .not.isgrid(g4)) hm="" !Fox failed to copy
i2=len(trim(hm)) i2=len(trim(hm))
if(i2.gt.10) then if(i2.gt.10) then
@ -59,13 +62,19 @@ subroutine fox_tx(maxtimes,fail,called,gcalled,hm,fm,ntimes,log,logit)
if(hm.eq.'') then if(hm.eq.'') then
if(fm(1:3).ne.'CQ ') then if(fm(1:3).ne.'CQ ') then
if(ntimes.lt.maxtimes) then ! if(ntimes.lt.maxtimes) then
ntimes=ntimes+1 ntimes=ntimes+1
else ! else
! ntimes=1
! If FIFO is empty we should call CQ in this slot
! call dxped_fifo(cy,gy,isnry)
! call random_number(r)
! isnr=nint(-20+40*r)
! write(fm,1010) cy,gy,isnr
write(fm,1010) called,MyCall,isent write(fm,1010) called,MyCall,isent
1010 format(a6,1x,a6,i4.2) 1010 format(a6,1x,a6,i4.2)
if(fm(15:15).eq.' ') fm(15:15)='+' if(fm(15:15).eq.' ') fm(15:15)='+'
endif ! endif
endif endif
endif endif