CTITLEFGFPNA -- FIND PROCESS NAME 00010000 C*********************************************************************** C COPYRIGHT ATLANTIC RICHFIELD COMPANY 1991 * C*********************************************************************** CA AUTHOR DANIEL POLAK 00020000 CA DESIGNER DANIEL POLAK 00030000 CA LANGUAGE FORTRAN H 00040000 CA SYSTEM IBM AND CRAY 00050002 CA WRITTEN 03-08-84 00060000 C REVISED 08-08-85 DJP - CONVERTED TO VS FORTRAN 00070000 C REVISED 06-11-87 DPH. CONVERT TO CRAY. 00080002 CA 00090000 CA CALL FGFPNA (CARD, START, END, PROC, PROCNO) 00100000 CA 00110000 CA IN/OUT ARGUMENT TYPE DESCRIPTION 00120000 CA 00130000 CA IN CARD CH80 PROC CARD IMAGE 00140000 CA IN/OUT START I4 STARTING COLUMN TO FIND A PROCESS NAME 00150000 CA IN/OUT END I4 END OF PROC CARD FLAG 00160000 CA OUT PROC CH4 PROCESS NAME 00170000 CA OUT PROCNO I4 PROCESS NUMBER 00180000 CA 00190000 CA 00200000 CA FGFPNA DECODES THE PROCESSES ON THE PROC CARD RETURNING ONE 00210000 CA PROCESS PER CALL. 00220000 C 00230000 SUBROUTINE FGFPNA (CARD, START, END, PROC, PROCNO) 00240000 C 00250000 IMPLICIT INTEGER (A-Z) 00260000 C 00270000 C CHARACTER VARIABLES IN THE PARAMETER LIST 00280000 C 00290000 CHARACTER*80 CARD 00300000 CHARACTER*4 PROC 00310000 C 00320000 C CHARACTER CONSTANTS -- LOCAL 00330000 C 00340000 CHARACTER BLANK 00350000 CHARACTER COMMA 00360000 C 00370000 C DATA DEFINITIONS 00380000 C 00390000 DATA BLANK /' '/ 00400000 DATA COMMA /','/ 00410000 C 00420000 C INITIALIZATION 00430000 C 00440000 PROCNO = 0 00450000 C 00460000 C CHECK FOR END OF THE CARD 00470000 C 00480000 10 IF (START .GE. 78) THEN 00490000 END = 1 00500000 GO TO 20 00510000 END IF 00520000 C 00530000 C SKIP COMMAS AND BLANKS IN SEARCHING FOR A PROCESS 00540000 C 00550000 IF (CARD(START:START) .EQ. COMMA .OR. 00560000 * CARD(START:START) .EQ. BLANK) THEN 00570000 START = START + 1 00580000 GO TO 10 00590000 END IF 00600000 C 00610000 C ISOLATE THE PROCESS FOUND 00620000 C 00630000 PROC = CARD(START:START+3) 00640000 START = START + 4 00650000 C 00660000 C CHECK FOR A PROCESS NUMBER 00670000 C 00680000 IF (CARD(START:START) .NE. COMMA .AND. 00690000 * CARD(START:START) .NE. BLANK) THEN 00700000 PROCNO = S1CVBN (CARD, START, 1) 00710000 START = START + 1 00720000 END IF 00730000 C 00740000 20 RETURN 00750000 END 00760000