	SUBROUTINE BOLD

C	SETS VT BOLD TEXT.

	TYPE 10, 27,91,49,109

10	FORMAT(1H+,4A1,$)

	RETURN

	END

	SUBROUTINE CENTER(STRING,SLEN,SCRWID,IP,SORD)

C	CALCULATES START POSITION FOR SINGLE OR DOUBLE WIDTH STRING
C	CENTERED IN SCREEN SCRWID WIDE.

	CHARACTER       SORD		! Single or Double.

	CHARACTER*80    STRING

	INTEGER         IP, SLEN, SCRWID

	IF (SORD .EQ. 'S')  THEN

	IP= (SCRWID-SLEN)/2

	ELSE

	IP= (SCRWID-2*SLEN)/4

	ENDIF

	IP= IP+1

	RETURN

	END

	SUBROUTINE CUROFF

C	TURN VT CURSOR OFF.

	TYPE 10, 27,91,63,50,53,108

10	FORMAT(1H+,6A1,$)

	RETURN

	END

	SUBROUTINE CURON

C	TURN VT CURSOR ON.

	TYPE 10, 27,91,63,50,53,104

10	FORMAT(1H+,6A1,$)

	RETURN

	END

	SUBROUTINE CLRSCR

C	CLEARS SCREEN.

	TYPE 10, 27,91,50,74

10	FORMAT(1H+,4A1,$)

	RETURN

	END

	SUBROUTINE CLRHOM

C	CLEARS SCREEN; MOVES CURSOR HOME (ROW 1, COLUMN 1).

	TYPE 10,  27,91,50,74,27,91,72

10	FORMAT(1H+,7A1,$)

	RETURN

	END

	SUBROUTINE CURMOV(IR,IC)

C	MOVES VT CURSOR TO ROW IR, COLUMN IC.	! MAX IC= 99.

	INTEGER   IR, IC

	TYPE 10, 27,91,IR,59,IC,72

10	FORMAT(1H+,2A1,2(I2.2,A1),$)	! FOR IC > 99, CHANGE 2nd I2.2 -> I3.3

	RETURN

	END

	SUBROUTINE DBLWID(STRING,LS,IR,IC)

C	TYPES DOUBLE WIDE STRING.

	CHARACTER*80  STRING

	INTEGER       IR, IC, LS

	CALL CURMOV(IR,IC)

	TYPE 10, 27,35,54

10	FORMAT(1H+,3A1,$)

	TYPE 20, STRING(1:LS)

20	FORMAT(1H+,A)

	RETURN

	END

	SUBROUTINE STMLEN(STMENT,SLEN)

C	DETERMINES LENGTH OF STRING MINUS TRAILING SPACES.

	CHARACTER*100   STMENT

	INTEGER        J, SLEN

	DO 10 J= 100,1,-1

	IF (STMENT(J:J) .NE. ' ')   THEN

	SLEN= J

	RETURN

	ENDIF

10	CONTINUE

	SLEN= 0

	RETURN

	END

	SUBROUTINE TXTOFF

C	SETS VT TEXT OPTIONS TO NORMAL (NO BOLD, ETC.).

	TYPE 10, 27,91,109

10	FORMAT(1H+,3A1,$)

	RETURN

	END
