	SUBROUTINE SETUP_INTERRUPT
C
C	This subroutine is used to setup the interrupt character to
C	use.  This is the character to escape to the Vaxnet command
C	prompt.  All other character are passed to the remote system.
C
	INCLUDE 'COM.INC/NOLIST'

	CHARACTER*(*) INTERRUPTQ
	CHARACTER*10 DUMMY

	PARAMETER (INTERRUPTQ =
	1 'Enter the Vaxnet interrupt character (CTRL/A): ')
	PARAMETER DEFAULT_CHAR = 1	! Default character = CTRL/A

	IF (STARTUP) THEN
		IF (GET_SYMBOL('INTERRUPT_CHAR',DUMMY,DUMMY_SIZE)) THEN
			IF (DUMMY_SIZE .EQ. 0) THEN
				INTERRUPT_CHAR(1) = DEFAULT_CHAR
				RETURN
			ENDIF
			INTERRUPT_CHAR(1) = ICHAR(DUMMY(1:1))
			IF (DUMMY_SIZE .GT. 1) THEN
				IF (DUMMY(1:1) .EQ. '^') THEN
				   INTERRUPT_CHAR(1) = ICHAR(DUMMY(2:2))-64
				ENDIF
			ENDIF
			RETURN
		ENDIF
	ENDIF
	BACKUP = .FALSE.		! Initialize backup flag.
100	CALL WRITE_USER(INTERRUPTQ)
	IF (BATCH_MODE) THEN
		READ (IN_UNIT,150,END=9900) INTERRUPT_CHAR
150		FORMAT (1A1)
	ELSE
		LOCAL_STATUS = SYS$QIOW(%VAL(LEFN_IN),%VAL(LCHAN_IN),
	1		%VAL(IO$_TTYREADALL),
	1		LIOSB,,,INTERRUPT_CHAR,%VAL(1),,NOTERM,,)
		CALL CHECK_STATUS('SETUP_INTERRUPT',LOCAL_STATUS)
	ENDIF
	CALL WRITE_USER(SS)

	IF	(INTERRUPT_CHAR(1) .EQ. ESCAPE .OR.
	1		INTERRUPT_CHAR(1) .EQ. '?') THEN ! Print help.
		CALL GET_HELP('INTERRUPT')
		CALL WRITE_USER(SS)
		GO TO 100
	ELSEIF	(INTERRUPT_CHAR(1) .EQ. CR) THEN	! Use default.
		INTERRUPT_CHAR(1) = DEFAULT_CHAR
	ELSEIF	(INTERRUPT_CHAR(1) .EQ. 33) THEN	! Set backup flag.
		BACKUP = .TRUE.
	ENDIF
	RETURN
9900	CALL FINISH()		! Exit on end of file.
	END	
