mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2025-03-26 14:08:40 -04:00
Completed pack77/unpack77 through message Type 0.2. Still more to do!
This commit is contained in:
parent
0adcfc667f
commit
2006fde28c
@ -1,18 +0,0 @@
|
||||
subroutine chk77_01(msg,nwords,w,nw,i3,n3)
|
||||
|
||||
character*37 msg
|
||||
character*13 w(19)
|
||||
character*6 bcall_1,bcall_2
|
||||
integer nw(19)
|
||||
logical ok1,ok2
|
||||
|
||||
call chkcall(w(1),bcall_1,ok1)
|
||||
call chkcall(w(3),bcall_2,ok2)
|
||||
|
||||
if(nwords.eq.5 .and. trim(w(2)).eq.'RR73;' .and. ok1 .and. ok2) then
|
||||
i3=0 !Type 0.1: DXpedition mode
|
||||
n3=1
|
||||
endif
|
||||
|
||||
return
|
||||
end subroutine chk77_01
|
34
lib/77bit/hash10.f90
Normal file
34
lib/77bit/hash10.f90
Normal file
@ -0,0 +1,34 @@
|
||||
subroutine hash10(n10,c13,isave)
|
||||
|
||||
parameter (NMAX=20)
|
||||
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
|
||||
if(ihash(i).eq.n10) go to 900 !This one is already in the list
|
||||
enddo
|
||||
ihash(NMAX:2:-1)=ihash(NMAX-1:1:-1)
|
||||
callsign(NMAX:2:-1)=callsign(NMAX-1:1:-1)
|
||||
ihash(1)=n10
|
||||
callsign(1)=c13
|
||||
else
|
||||
do i=1,NMAX
|
||||
if(ihash(i).eq.n10) then
|
||||
c13=callsign(i)
|
||||
go to 900
|
||||
endif
|
||||
enddo
|
||||
endif
|
||||
|
||||
900 return
|
||||
end subroutine hash10
|
20
lib/77bit/ihashcall.f90
Normal file
20
lib/77bit/ihashcall.f90
Normal file
@ -0,0 +1,20 @@
|
||||
integer function ihashcall(c0,m)
|
||||
|
||||
integer*8 n8
|
||||
character*13 c0,c1
|
||||
character*38 c
|
||||
data c/' 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ/'/
|
||||
|
||||
c1=c0
|
||||
if(c1(1:1).eq.'<') c1=c1(2:)
|
||||
i=index(c1,'>')
|
||||
if(i.gt.0) c1(i:)=' '
|
||||
n8=0
|
||||
do i=1,11
|
||||
j=index(c,c1(i:i)) - 1
|
||||
n8=38*n8 + j
|
||||
enddo
|
||||
ihashcall=ishft(47055833459_8*n8,m-64)
|
||||
|
||||
return
|
||||
end function ihashcall
|
Loading…
Reference in New Issue
Block a user