FTN 
      SUBROUTINE TOPAG(NODE,LU,IERR),92069-16061 REV.1912 790116
      INTEGER NODE,LU(145),IERR 
      LOGICAL IFTTY 
C 
C 
C*****************************************************************
C (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979. ALL RIGHTS RESERVED 
C NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, REPRODUCED, OR
C TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITH OUT THE PRIOR 
C WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. 
C****************************************************************** 
C 
C 
C     SOURCE:    92069-18113
C     RELOC:     92069-16060
C 
C 
C****************************************************************:
C 
C 
C 
C 
C 
C ABSTRACT: 
C 
C    TOPAG CAUSES A LIST DEVICE OR FILE TO GO TO THE TOP OF PAGE
C    IT HANDLES FILES, LOCAL DEVICES, AND REMOTE DEVICES.  IT DOES
C    NOT HANDLE REMOTE FILES. 
C 
C 
C 
C CALLING SEQUENCE: 
C 
C       CALL TOPAG(NODE,LU,IERR)
C 
C         WHERE:
C 
C             NODE
C             IS THE DISTRIBUTE NODE NUMBER.  WHEN THE NODE IS THE
C             LOCAL NODE, THEN NODE SHOULD EQUAL -1.
C 
C             LU
C             IS THE LU/DCB STRUCTURE. LU IS THE LOGICAL UNIT PLUS
C             THE FUNCTION CODE 600B, ( LU + 600B). 
C 
C               WHEN THE FIRST WORD OF LU IS GREATER THAN 0 
C               THE LIST UNIT IS CONSIDERED TO BE A DEVICE. 
C 
C               WHEN THE FIRST WORD OF LU IS -1, THEN THE LIST
C               UNIT IS CONSIDERED TO BE A FILE AND WORDS 2-145 
C               MUST BE THE DCB.
C 
C 
C             IERR
C             IS THE ERROR INDICATOR
C                0 INDICATES NO ERROR 
C               -1  INDICATES ERROR 
C 
C 
C 
C 
C 
C 
C$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
C$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
C NO COMMON IS NEEDED 
C 
C 
C 
C 
C 
C 
C BEGIN 
C 
      IERR = 0
C 
C IS THIS A REMOTE NODE?
C 
      IF(NODE .NE. -1) GOTO 20
C 
C IS THIS A FILE? 
C 
      IF(LU .NE. -1) GOTO 10
C 
C THIS IS A LOCAL FILE
C WRITE A 1 IN COLUMN 1 
C 
      CALL QRIO(2,LU,2H1 ,1)
      GOTO 30 
C 
C THIS IS A LOCAL DEVICE
C 
10    CONTINUE
      IF(IFTTY(LU)) GOTO 30 
      CALL EXEC(3+100000B,LU+1100B-600B,-1) 
      GOTO 7010 
15    GOTO 30 
C 
C THIS IS A REMOTE DEVICE 
C 
20    CONTINUE
      CALL DEXEC(NODE,3+100000B,LU+1100B,-1)
      GOTO 7010 
C 
C EXIT
C 
30    CONTINUE
      RETURN
C 
C 
C 
  
C 
C ERROR CONDITIONS
C 
7010  CONTINUE
      IERR = -1 
      GOTO 30 
      END 
                                                                                                                                                                                                                                    