C******************************************************************************* C IECHAR C C This is the EBCDIC version of Fortran function IACHAR. It returns the C position of a character in the EBCDIC collating sequence. C C Given an EBCDIC character E, this function returns the corresponding integer. C C Author: Dr. David G. Simpson, NASA Goddard Space Flight Center, Greenbelt, C MD USA - June 1, 2020 C******************************************************************************* INTEGER FUNCTION IECHAR (E) CHARACTER E INTEGER I LOGICAL FOUND CHARACTER EBCDIC_TBL DIMENSION EBCDIC_TBL(0:255) C 0 1 2 3 4 5 6 7 C 8 9 A B C D E F DATA EBCDIC_TBL / $ '.','.','.','.','.','.','.','.', $ '.','.','.','.','.','.','.','.', $ '.','.','.','.','.','.','.','.', $ '.','.','.','.','.','.','.','.', $ '.','.','.','.','.','.','.','.', $ '.','.','.','.','.','.','.','.', $ '.','.','.','.','.','.','.','.', $ '.','.','.','.','.','.','.','.', $ ' ','.','.','.','.','.','.','.', $ '.','.','.','.','<','(','+','.', $ '&','.','.','.','.','.','.','.', $ '.','.','!','$','*',')',';','.', $ '-','/','.','.','.','.','.','.', $ '.','.','|',',','%','_','>','?', $ '.','.','.','.','.','.','.','.', $ '.','.',':','#','@',"'",'=','"', $ '.','a','b','c','d','e','f','g', $ 'h','i','.','.','.','.','.','.', $ '.','j','k','l','m','n','o','p', $ 'q','r','.','.','.','.','.','.', $ '.','~','s','t','u','v','w','x', $ 'y','z','.','.','.','.','.','.', $ '.','.','.','.','.','.','.','.', $ '.','`','.','.','.','.','.','.', $ '{','A','B','C','D','E','F','G', $ 'H','I','.','.','.','.','.','.', $ '}','J','K','L','M','N','O','P', $ 'Q','R','.','.','.','.','.','.', $ '\','.','S','T','U','V','W','X', $ 'Y','Z','.','.','.','.','.','.', $ '0','1','2','3','4','5','6','7', $ '8','9','.','.','.','.','.','.' / FOUND = .FALSE. DO I = 0, 255 IF (E .EQ. EBCDIC_TBL(I)) THEN FOUND = .TRUE. EXIT END IF END DO IF (FOUND) THEN IECHAR = I ELSE IECHAR = -1 END IF RETURN END