C+ C NAME: UPCASE C AUTHOR: T. R. Wyant C CREATION DATE: 13-Nov-1986 C$ 20-NOV-1986 T. R. WYANT Debugged. C C REVISION: DATE NAME DESCRIPTION C C DESCRIPTION: C UPCASE will convert a string to uppercase. C C MODULE DICTIONARY: C C INPUTS: C STRLEN INTEGER*2 length of string to convert. C C STRING LOGICAL*1 string to convert. C C OUTPUTS: C STRING LOGICAL*1 converted string. Only C characters up to STRLEN are C touched. C C TASK COMMUNICATION: C None. C C FILE AND COMMON I/O: C C FILENAME INCOMING ACCESS LUNS OUTGOING C STATUS TYPE STATUS C CMC C CMWC C C- SUBROUTINE UPCASE(STRLEN,STRING) INTEGER*2 STRLEN ! Length of string. LOGICAL*1 STRING(255) ! String to convert. PARAMETER LCAYE = 'a' ! Lower case 'a'. PARAMETER LCZED = 'z' ! Lower case 'z'. PARAMETER UCAYE = 'A' ! Upper case 'A'. INTEGER*2 ITER8 ! Iteration. CC C FOR (every character in the string) DO C IF (a lower case alphanumeric) THEN C Convert to uppercase; C IF (STRLEN .LE. 0) GO TO 900 DO 100 ITER8 = 1,STRLEN IF (STRING(ITER8) .GE. LCAYE .AND. 1 STRING(ITER8) .LE. LCZED) 2 STRING (ITER8) = STRING(ITER8) - LCAYE + UCAYE 100 CONTINUE 900 RETURN END