CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC SUBROUTINE SCRWRT(TMPFLG,CUPFLG) CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C INCLUDE 'SY:ENTRY.CMN' C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C CALL DSASTR C SCRFLG = TMPFLG C IF (RECTYP.EQ.DELETD) THEN CALL MESSGE(18,NO,NOSCR,NOCUP) IF (FLAG.EQ.RESHOW) THEN SCRFLG = NOCLE ELSE SCRFLG = CLE END IF ELSE IF (ERRFLG.NE.YES) THEN CALL UVT100(CUP,24,40) CALL UVT100(EL,0) END IF C CALL GETADR(PRL,SCRDSP(1)) CALL UVT100(SCA,0,0) CALL UVT100(SCA,1,0) C DO 150 RT = 1, NUMROW(S) NUMCOL = 1 DO 130 CT = 2, SCRCOL(S,RT,1) NUMCOL = NUMCOL+1 IF (SCRTXT(S,RT,CT-1).NE.UNDERB .AND. * SCRTXT(S,RT,CT).EQ.UNDERB) THEN CCC INSERT NON-HIGHLIGHT & UNDERLINE ESCAPE SEQUENCE: SCRDSP(NUMCOL) = "033 SCRDSP(NUMCOL+1) = '[' SCRDSP(NUMCOL+2) = '0' SCRDSP(NUMCOL+3) = ';' SCRDSP(NUMCOL+4) = '4' SCRDSP(NUMCOL+5) = 'm' NUMCOL = NUMCOL+6 ELSE IF (SCRTXT(S,RT,CT-1).EQ.UNDERB .AND. * SCRTXT(S,RT,CT).NE.UNDERB) THEN CCC INSERT HIGHLIGHT ESCAPE SEQUENCE: SCRDSP(NUMCOL) = "033 SCRDSP(NUMCOL+1) = '[' SCRDSP(NUMCOL+2) = '0' SCRDSP(NUMCOL+3) = ';' SCRDSP(NUMCOL+4) = '1' SCRDSP(NUMCOL+5) = 'm' NUMCOL = NUMCOL+6 END IF IF (SCRFLG.EQ.CLE) THEN SCRDSP(NUMCOL) = SCRTXT(S,RT,CT) ELSE IF (SCRFLG.EQ.NOCLE) THEN IF (SCRTXT(S,RT,CT).EQ.UNDERB) THEN IF (BUFFER(SCRCOL(S,RT,CT)).EQ.BLANK) THEN SCRDSP(NUMCOL) = BLANK ELSE SCRDSP(NUMCOL) = BUFFER(SCRCOL(S,RT,CT)) END IF ELSE SCRDSP(NUMCOL) = SCRTXT(S,RT,CT) END IF END IF 130 CONTINUE DO 140 CT = 1,NUMCOL IF (SCRDSP(CT).EQ.UNDERB) SCRDSP(CT) = BLANK 140 CONTINUE CALL UVT100(CUP,RT,2) PRL(2) = NUMCOL CALL WTQIO(IOWVB,4,2,,,PRL) 150 CONTINUE C CCC DETERMINE CURSOR POSITION: TOP FIELD, NO MOVEMENT WITHIN CURRENT CCC FIELD, OR BEGINNING OF CURRENT FIELD IF (CUPFLG.EQ.CUPTOP) THEN R = 1 C = 1 CALL FNDFLD(FORWD,YES) ELSE IF (CUPFLG.EQ.CUPNM) THEN CALL UVT100(CUP,R,C) ELSE IF (CUPFLG.EQ.CUPBF) THEN C = C+1 CALL FNDFLD(BACKWD,YES) END IF C CALL UVT100(SCA,0,0) CALL UVT100(SCA,4,0) C RETURN END