FUNCTION ICHKSTR(STR,CHR,N)

C$$$  SUBPROGRAM DOCUMENTATION BLOCK
C
C SUBPROGRAM:    ICHKSTR
C   PRGMMR: ATOR             ORG: NP12       DATE: 2005-11-29
C
C ABSTRACT: THIS FUNCTION COMPARES A SPECIFIED NUMBER OF CHARACTERS
C   FROM AN INPUT CHARACTER ARRAY AGAINST THE SAME NUMBER OF CHARACTERS
C   FROM AN INPUT CHARACTER STRING AND DETERMINES WHETHER THE TWO ARE
C   EQUIVALENT.  THE CHARACTER ARRAY IS ASSUMED TO BE IN ASCII, WHEREAS
C   THE CHARACTER STRING IS ASSUMED TO BE IN THE NATIVE CHARACTER SET
C   (I.E. ASCII OR EBCDIC) OF THE LOCAL MACHINE.
C
C PROGRAM HISTORY LOG:
C 2005-11-29  J. ATOR    -- ORIGINAL AUTHOR
C
C USAGE:    ICHKSTR (STR, CHR, N)
C   INPUT ARGUMENT LIST:
C     STR      - CHARACTER*(*): N-CHARACTER STRING IN ASCII OR EBCDIC,
C                DEPENDING ON THE NATIVE MACHINE
C     CHR      - CHARACTER*1: ARRAY OF N CHARACTERS IN ASCII
C     N        - INTEGER: NUMBER OF CHARACTERS TO BE COMPARED
C
C   OUTPUT ARGUMENT LIST:
C     ICHKSTR  - INTEGER: RETURN VALUE:
C                  0 = STR(1:N) AND (CHR(I),I=1,N) ARE EQUIVALENT
C                  1 = STR(1:N) AND (CHR(I),I=1,N) ARE NOT EQUIVALENT
C
C REMARKS:
C    THIS ROUTINE CALLS:        CHRTRNA
C    THIS ROUTINE IS CALLED BY: CRBMG    RDMSGB   READERME
C                               Normally not called by any application
C                               programs. 
C
C ATTRIBUTES:
C   LANGUAGE: FORTRAN 77
C   MACHINE:  PORTABLE TO ALL PLATFORMS
C
C$$$

	CHARACTER*(*) STR

	CHARACTER*80  CSTR
	CHARACTER*1   CHR(N)

C-----------------------------------------------------------------------
C-----------------------------------------------------------------------

C	Copy CHR into CSTR and, if necessary, convert the latter
C	to EBCDIC (i.e. if the local machine uses EBCDIC) so that
C	the subsequent comparison will always be valid.

	CALL CHRTRNA(CSTR,CHR,N)

C	Compare CSTR to STR.

	IF(CSTR(1:N).EQ.STR(1:N)) THEN
	    ICHKSTR = 0
	ELSE
	    ICHKSTR = 1
	ENDIF	

	RETURN
	END