IDENTIFICATION DIVISION.
PROGRAM-ID.	BRDCST.
AUTHOR.		MARLEX PETROLEUM, 2633 CHERRY AVE, SIGNAL HILL, CA 90806.
DATA DIVISION.
WORKING-STORAGE SECTION.
01	OUTPUT-STRING		PIC X(80).
01	INPUT-STRING		PIC X(79).
01	BELL-CHAR-DEFN		PIC 9(02)	COMP	VALUE 7.
01	BELL-CHAR REDEFINES BELL-CHAR-DEFN	PIC X(01).
01	CR-CHAR-DEFN		PIC 9(02)	COMP	VALUE 13.
01	CR-CHAR REDEFINES CR-CHAR-DEFN		PIC X(01).
01	NUMBER-OF-LINES	PIC S9(04)	COMP.
77	INPUT-LENGTH	PIC S9(04)	COMP.
77	OUTPUT-LENGTH	PIC S9(04)	COMP.
77	PROMPT-STRING	PIC X(05)	VALUE "MSG> ".
77	BRDCST$M_SCREEN	PIC S9(09)	COMP	VALUE EXTERNAL BRDCST$M_SCREEN.
77	BRDCST$M_BOTTOM	PIC S9(09)	COMP	VALUE EXTERNAL BRDCST$M_BOTTOM.
77	LIB$_INPSTRTRU	PIC S9(09)	COMP	VALUE EXTERNAL LIB$_INPSTRTRU.
77	SYS-STATUS	PIC S9(09)	COMP.
77	CLEAR-VALUE	PIC S9(09)	COMP.
77	SPACE-CHAR	PIC X(01)	VALUE SPACE.
PROCEDURE DIVISION.
AAA.
	CALL "LIB$GET_FOREIGN"
		USING
			BY DESCRIPTOR	INPUT-STRING, PROMPT-STRING
			BY REFERENCE	INPUT-LENGTH
		GIVING	SYS-STATUS.
	IF SYS-STATUS = LIB$_INPSTRTRU THEN GO TO BBB.
	IF SYS-STATUS IS FAILURE CALL "LIB$STOP" USING BY VALUE SYS-STATUS.
BBB.
	MOVE 1 TO NUMBER-OF-LINES.
	INSPECT INPUT-STRING TALLYING NUMBER-OF-LINES FOR ALL CR-CHAR.
	IF INPUT-LENGTH = ZERO STOP RUN.
	ADD
		NUMBER-OF-LINES,
		BRDCST$M_SCREEN, 
		BRDCST$M_BOTTOM
			GIVING CLEAR-VALUE.
	ADD 1, INPUT-LENGTH GIVING OUTPUT-LENGTH.
	STRING
			INPUT-STRING(1:INPUT-LENGTH)	DELIMITED BY SIZE
			BELL-CHAR			DELIMITED BY SIZE
		INTO OUTPUT-STRING.
	CALL "SYS$BRDCST"
		USING
			BY DESCRIPTOR	OUTPUT-STRING(1:OUTPUT-LENGTH),
			BY VALUE	0, CLEAR-VALUE, 32
		GIVING	SYS-STATUS.
	IF SYS-STATUS IS FAILURE CALL "LIB$STOP" USING BY VALUE SYS-STATUS.
	STOP RUN.
