SUBROUTINE PROMPT ( luntrm, cmdbuf, lencmd, pmpt, ier ) C CHARACTER*80 cmdbuf C LOGICAL pmpt C INTEGER*2 lencmd INTEGER*2 ids INTEGER*2 ier INTEGER*2 itmp C C Executable begins here. C CALL GETMCR ( cmdbuf, ids ) ! Get MCR command line. IF ( ids .GT. 0 ) THEN ! itmp = MAX ( INDEX ( cmdbuf(1:ids), ' ' ), ! Look for blank or + INDEX ( cmdbuf(1:ids), '/' ) ) ! slash. END IF ! IF ( ids .LE. 0 .OR. itmp .LE. 0 ) THEN ! No command line, so pmpt = .TRUE. ! Flag that we prompted. 5 CONTINUE ! Prompt again here. WRITE ( luntrm, 10 ) ! Issue prompt. 10 FORMAT ( '$SBT> ') ! Prompt. READ ( luntrm, 20, END = 9100 ) lencmd, ! + cmdbuf(1:lencmd) ! 20 FORMAT ( Q, A ) ! IF ( lencmd .LE. 0 ) GO TO 5 ! Prompt again. CALL UPCASE ( cmdbuf, lencmd ) ! Convert to upper case. cmdbuf(5:lencmd+4) = cmdbuf(1:lencmd) ! Push on to the start cmdbuf(1:4) = 'SBT ' ! of string SBT. lencmd = lencmd + 4 ! ELSE ! lencmd = ids ! Save length. END IF ! ier = 1 ! Success flag. 9000 CONTINUE RETURN 9100 CONTINUE ier = -1 ! Exit requested. GO TO 9000 END