V10/cmd/pfort/RDLIST.f

      SUBROUTINE RDLIST(HEAD, L, N, M)
C
C     HEAD IS THE HEAD OF A LINEAR LINKED LIST IN DSA
C     L IS  MAX NUMBER OF ITEMS DESIRED
C     N IS NUMBER OF ITEMS RETURNED
C     M IS END OF LIST MARKER
C
      INTEGER HEAD, STACK, DSA, PDSA
      COMMON /CTABL/ LDSA, PDSA, DSA(5000)
      COMMON /CEXPRS/ LSTACK, STACK(620)
      N = 0
   10 IF (HEAD.EQ.M .OR. N.GE.L) GO TO 20
      N = N + 1
      STACK(N) = DSA(HEAD)
      HEAD = DSA(HEAD+1)
      GO TO 10
   20 RETURN
      END