DATA DIVISION. WORKING-STORAGE SECTION. 01 CTR PIC 9(5). 01 LCTR PIC 99. 01 DURATION COMP-1. 01 DISP-DURATION PIC Z(6)9. 01 CNTRL-FLAG PIC 9(5) COMP. 01 DISP-CNTRL-FLAG PIC Z(9)9. 01 FLOAT-TYPE PIC 9(5) COMP. 01 DISP-FLOAT-TYPE PIC Z(9)9. 01 RET-STATUS PIC S9(9) COMP. 01 DISP-RET-STATUS PIC Z(9)9. 01 SS$_NORMAL PIC S9(5) COMP VALUE EXTERNAL SS$_NORMAL. 01 LIB$_INVARG PIC S9(5) COMP VALUE EXTERNAL LIB$_INVARG. 01 LIB$_WRONUMARG PIC S9(5) COMP VALUE EXTERNAL LIB$_WRONUMARG. PROCEDURE DIVISION. 000-BEGIN. DISPLAY SPACE LINE 1 COLUMN 1 ERASE SCREEN. DISPLAY "SECONDS" LINE 1 COLUMN 1. DISPLAY "CNTRL-FLAG" LINE 1 COLUMN 10. DISPLAY "FLOAT-TYPE" LINE 1 COLUMN 25. DISPLAY "RET-STATUS" LINE 1 COLUMN 48. MOVE DURATION TO DISP-DURATION. MOVE CNTRL-FLAG TO DISP-CNTRL-FLAG. MOVE FLOAT-TYPE TO DISP-FLOAT-TYPE. MOVE 5 TO DURATION. MOVE DURATION TO DISP-DURATION. MOVE 0 TO CNTRL-FLAG. MOVE CNTRL-FLAG TO DISP-CNTRL-FLAG. MOVE 0 TO CTR. MOVE 2 TO LCTR. PERFORM UNTIL CTR GREATER THAN OR EQUAL TO 6 MOVE CTR TO FLOAT-TYPE DISPLAY DISP-DURATION LINE LCTR COLUMN 1 DISPLAY DISP-CNTRL-FLAG LINE LCTR COLUMN 10 MOVE FLOAT-TYPE TO DISP-FLOAT-TYPE DISPLAY DISP-FLOAT-TYPE LINE LCTR COLUMN 25 CALL "LIB$WAIT" USING BY REFERENCE DURATION, CNTRL-FLAG, FLOAT-TYPE GIVING RET-STATUS MOVE RET-STATUS TO DISP-RET-STATUS DISPLAY DISP-RET-STATUS LINE LCTR COLUMN 40 EVALUATE RET-STATUS WHEN SS$_NORMAL DISPLAY "NORMAL" LINE LCTR COLUMN 55 WHEN LIB$_INVARG DISPLAY "INVARG" LINE LCTR COLUMN 55 WHEN LIB$_WRONUMARG DISPLAY "WRONUMARG" LINE LCTR COLUMN 55 WHEN OTHER DISPLAY "OTHER" LINE LCTR COLUMN 55 END-EVALUATE ADD 1 TO CTR ADD 1 TO LCTR END-PERFORM. STOP RUN. SECONDS CNTRL-FLAG FLOAT-TYPE RET-STATUS 5 0 0 1409588 INVARG 5 0 1 1 NORMAL 5 0 2 1 NORMAL 5 0 3 1 NORMAL 5 0 4 1 NORMAL 5 0 5 1 NORMAL