LOGICAL FUNCTION QUEST(TEXT,LUN,BOLD,NORM) C C INPUT PARAMETERS: C C TEXT - A literal text string (eg. 'OK') C LUN - Logical unit number of TI: C BOLD - Escape sequence to make the Y or N bold (this C must have been set up by SETVID before hand) C NORM - The inverse of BOLD C C RETURNING LOGICAL STATE OF QUEST C C .TRUE. - If answer to 'TEXT' is 'Y' or 'YES' C or 'y' or 'yes' C .FALSE. - If answer is anything else (eg. just a ) C C C NOTE: A null TEXT implies .TRUE., sans any dialogue C BYTE TEXT(80),BOLD(4),NORM(4),ANS NUMCHR = 80 DO 5 I=1,NUMCHR IF (TEXT(I).EQ.0) GO TO 10 5 CONTINUE I = NUMCHR+1 10 NUMCHR = I-1 QUEST = NUMCHR.LE.0 IF (QUEST) RETURN 15 WRITE (LUN,16) (TEXT(I),I=1,NUMCHR),BOLD,NORM,BOLD,NORM 16 FORMAT ('$',A1,' (',4A1,'Y',4A1,' or ',4A1,'N',4A1,') ? ') READ (LUN,17,ERR=15,END=20) ANS 17 FORMAT (1A1) QUEST = ANS.EQ.'Y'.OR.ANS.EQ.'y' RETURN 20 CLOSE(UNIT=LUN) CALL ASSIGN(LUN,'TI:',3) QUEST = .FALSE. RETURN END