2018-06-28 11:48:42 -04:00
|
|
|
subroutine hash22(n22,c13,isave)
|
2018-06-27 11:08:39 -04:00
|
|
|
|
2018-06-28 11:48:42 -04:00
|
|
|
parameter (NMAX=22)
|
2018-06-27 11:08:39 -04:00
|
|
|
character*13 c13,callsign(NMAX)
|
|
|
|
integer ihash(NMAX)
|
|
|
|
logical first
|
|
|
|
data first/.true./
|
|
|
|
save first,ihash,callsign
|
|
|
|
|
|
|
|
if(first) then
|
|
|
|
ihash=-1
|
|
|
|
callsign=' '
|
|
|
|
first=.false.
|
|
|
|
endif
|
|
|
|
|
|
|
|
if(isave.ge.0) then
|
|
|
|
do i=1,NMAX
|
2018-06-28 11:48:42 -04:00
|
|
|
if(ihash(i).eq.n22) go to 900 !This one is already in the list
|
2018-06-27 11:08:39 -04:00
|
|
|
enddo
|
|
|
|
ihash(NMAX:2:-1)=ihash(NMAX-1:1:-1)
|
|
|
|
callsign(NMAX:2:-1)=callsign(NMAX-1:1:-1)
|
2018-06-28 11:48:42 -04:00
|
|
|
ihash(1)=n22
|
2018-06-27 11:08:39 -04:00
|
|
|
callsign(1)=c13
|
|
|
|
else
|
2018-06-28 11:48:42 -04:00
|
|
|
c13='<...>'
|
2018-06-27 11:08:39 -04:00
|
|
|
do i=1,NMAX
|
2018-06-28 11:48:42 -04:00
|
|
|
if(ihash(i).eq.n22) then
|
2018-06-27 11:08:39 -04:00
|
|
|
c13=callsign(i)
|
|
|
|
go to 900
|
|
|
|
endif
|
|
|
|
enddo
|
|
|
|
endif
|
|
|
|
|
|
|
|
900 return
|
2018-06-28 11:48:42 -04:00
|
|
|
end subroutine hash22
|