SPL,L,O,M 
!     NAME:   REA.C 
!     SOURCE: 92070-18010 
!     RELOC:  92070-16010 
!     PGMR:   G.A.A.
! 
!  ***************************************************************
!  * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979.  ALL RIGHTS     *
!  * RESERVED.  NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED,      *
!  * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT*
!  * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY.       *
!  ***************************************************************
! 
      NAME REA.C(8) "  92070-1X010  REV.1941  790712" 
!      READ COMMAND SUBROUTINE
! 
!  EXTERNAL SUBROUTINES 
      LET MSS.      BE SUBROUTINE,EXTERNAL
      LET PNAME     BE SUBROUTINE,EXTERNAL
      LET READF     BE SUBROUTINE,EXTERNAL
      LET WRITF     BE SUBROUTINE,EXTERNAL
!  EXTERNAL INTEGERS
      LET .E.R      BE INTEGER,EXTERNAL 
      LET C.BUF     BE INTEGER,EXTERNAL 
      LET CAM.I     BE INTEGER,EXTERNAL 
      LET ECH       BE INTEGER,EXTERNAL 
      LET INT.      BE INTEGER,EXTERNAL 
!  INTERNAL VARIBLES
      LET RPRMT     BE INTEGER
      LET PRMPT(4)  BE INTEGER
          INITIALIZE RPRMT,PRMPT TO 20015K,0,0,0,20137K 
! 
REA.C:SUBROUTINE GLOBAL 
!     IF TTY THEN PROMPT
READ1:IF INT. THEN[                                \WRITE PROMPT
         PNAME(PRMPT);                             \GET PROGRAM'S NAME
         PRMPT(3)_ PRMPT(3) + 32K;                 \ADD IN COLON
         WRITF(CAM.I,.E.R,PRMPT,4)]                !WRITE OUT 
! 
READ2:READF(CAM.I,.E.R,C.BUF,36,ECH)             !READ THE COMMAND
! 
      IF .E.R < 0 THEN[                          \IF READ ERROR 
         MSS.(.E.R-2000);                        \REPORT ERROR BUT DON'T TR 
         ECH_ 0;                                 \SET ZERO TRANSMISSION 
         RETURN]                                 !NOW EXIT
      IF INT. THEN[ IF ECH= -1 THEN[             \IF CTRL-D OR TO, RE-PROMPT
                       WRITF(CAM.I,.E.R,RPRMT,5);\WITH "CRFMGR : "
                       GOTO READ2]]              !NOW READ
      IF ECH <0 THEN[                            \IF EOF, SET 
         C.BUF_ [IF INT. THEN ": ", ELSE "::"];  \IN A TRANSFER CMND
         ECH_ 1]                                 !
! 
! 
      RETURN
      END 
! 
      END 
      END$
                                                                                                                                                                                                                                      