subroutine deffgs c c----------------------------------------------------------------------- c c This routine extracts the w7 data directly from the maf1 common c block /maf1/, and the output flags are put into the commom block c /i7flgs/. These are the instrument status words. c c----------------------------------------------------------------------- c c imdf memory dump flag c c 0 = valid data all flags apply c 1 = memory dump time - no valid data available c c----------------------------------------------------------------------- c c itr z head toggle rate c c 0 = 32 samples c 1 = 16 samples c 2 = 8 samples c 3 = 4 samples c c----------------------------------------------------------------------- c c iit electrometer channel f designation c c 0 = radial electrometer c 1 = +z electrometer c 2 = -z electrometer c c----------------------------------------------------------------------- c c iiz initial setting of z head data in channels in d and e c c----------------------------------------------------------------------- c c ical calibration flag c c 0 = valid data c 1 = calibrated data c c----------------------------------------------------------------------- c c ifxs fixed (hardware) rpa settings and h+/he+ ims c c 0 = memory dump valid c 1 = hardware rpa settings and h+/he+ ims c c----------------------------------------------------------------------- c c irpac state of ims or electrometer c c 0 = ims mode (normal operation) c 1 = electrometer mode (ignore ims) and c d chan=+z elect; e chan=-z elect; c c----------------------------------------------------------------------- c c iat alternate electrometer mode (see iit for def) c c----------------------------------------------------------------------- c c iaz alternate z head mode (see defkms) c c----------------------------------------------------------------------- c c irpf rpa dump validity c c 0 = rpa dump valid c 1 = rpa dump not valid -- use 0 rpa only c c----------------------------------------------------------------------- c c imsf memory dump validity c c 0 = memory dump not valid c 1 = memory dump not valid -- use H+/HE+ pair only c c----------------------------------------------------------------------- c logical*1 iword7(2) c integer*2 dat(2812), iat(8), iaz(8), ical(8), ifxs(8), iit(8), * iiz(8), imdf(8), imsf(8), ird, irhf, irpac(8), irpf(8), * itemp, itr(8), iw7(16,8), iz1d, iz2d, iz1hf, iz2hf, * i7flgs(8,22) c equivalence (dat(125),iw7), * (iword7,itemp), * (i7flgs(1,1),imdf), * (i7flgs(1,2),itr), * (i7flgs(1,3),iit), * (i7flgs(1,4),iiz), * (i7flgs(1,5),ical), * (i7flgs(1,6),ifxs), * (i7flgs(1,7),irpac), * (i7flgs(1,8),iat), * (i7flgs(1,9),iaz), * (i7flgs(1,18),irpf), * (i7flgs(1,19),imsf) c common /i7flgs/i7flgs, * /maf1/dat c c----------------------------------------------------------------------- c----------------------------------------------------------------------- c do j = 1, 8 c itemp = iw7(1,j) call bits71 (iword7(2), imdf(j), itr(j), iit(j), iiz(j)) c itemp = iw7(2,j) call bits72 (iword7(2), ical(j), ifxs(j), irpac(j), iat(j), * iaz(j)) c itemp = iw7(4,j) call bits74 (iword7(2), iz2d, iz1d, ird, irpf(j), imsf(j), * iz2hf, iz1hf, irhf) c end do c c----------------------------------------------------------------------- c----------------------------------------------------------------------- c return end