	SUBROUTINE READST(ICHAR,LEN,NCHARS)
	LOGICAL*1 ICHAR(30)
	ISTART=1
 1	DO 100 LEN=ISTART,NCHARS
 5	IN=ITTING(IDUMMY)
	IF(IN.LT.0) GOTO 5
	IF(IN.EQ."177) GOTO 50
	IF(IN.EQ."15) GOTO 200
	IF(IN.GE."40) GOTO 90
C	  ILLEGAL CHARACTER - RING BELL
	I=ITTOUR("7)
	GOTO 5
C
C	  GOT A RUBOUT - DELETE LAST CHAR
C
 50	ISTART=LEN-1
	ICHAR(LEN)=0
	IF(ISTART.GT.0) GOTO 60
	ISTART=1
	GOTO 1
C	  ECHO A BACKSPACE AND RESTART LOOP
 60	I=ITTOUR("10)
	GOTO 1
C
C	  LEGAL CHARACTER - PLACE IN BUFFER AND ECHO IT
 90	ICHAR(LEN)=IN
	I=ITTOUR(IN)
 100	CONTINUE
C
C	  FULL BUFFER INPUT - SIMULATE A CARRIAGE-RETURN AND EXIT
C
	LEN=NCHARS+1
C	  REMOVE LINE-FEED INSERTED BY RT-11 MONITOR
 200	I=ITTINR(IDUMMY)
	CALL ENQUE("15)
	LEN=LEN-1
	RETURN
	END
