INTEGER FUNCTION INPH(BUF,MAX) C C FUNCTION TO TURN A STRING OF INTEGER NUMERALS C INTO A BINARY NUMBER C QUITS WHEN IT FINDS THE MAXTH PLUS ONE CHARACTER, OR WHEN C IT FINDS A NON-DECIMAL NUMERAL. C IMPLICIT INTEGER (A-Z) LOGICAL*1 DELIM(3),BUF(80) COMMON /ERROUT/OUT DATA DELIM/" 40," 54," 55/ RES=0 IF (MAX .EQ. 0) GOTO 20 DO 5 J=1,MAX IF (BUF(J) .NE. "40) GOTO 6 5 CONTINUE GOTO 20 6 DO 10 I=J,MAX C=BUF(I)-" 60 IF ((C .GE. 0) .AND. (C .LE. 9)) GOTO 10 C=C+"60-"101+10 IF ((C .GE. 10) .AND .(C .LE. 15)) GOTO 10 DO 30 K=1,3 IF (BUF(I) .EQ. DELIM(K)) GOTO 20 30 CONTINUE WRITE(OUT,100)RES,(BUF(J),J=1,MAX) 100 FORMAT('-HEX CONVERSION ERROR. ',I5, 1 ' RETURNED FOR THE INPUT: ',10A1) GOTO 20 10 RES=ISHFT(RES,4)+C 20 INPH=RES RETURN END