CTITLEJSEGEN - JOBGEN REGION & BLANK COMMMON FOR PROCESSES EGEN C*********************************************************************** C COPYRIGHT ATLANTIC RICHFIELD COMPANY 1991 * C*********************************************************************** CA AUTHOR J. J. CHEN CA DESIGNER J. J. CHEN CA LANGUAGE FORTRAN CA SYSTEM IBM / CRAY CA WRITTEN 04-16-90 C C REVISED 07-17-90 CLJ INCREASED WORK SPACE TO ALLOW A C MAXIMUM OF 50 EVENTS UP FROM 5 CA CA CA CALL JSEGEN (KPNA, KPRNO, OCCUR, PSIZE, CSIZE, UCSIZE, ERCODE) CA CA INPUT KPNA = PROCESS NAME A4 CA INPUT KPRNO = PROCESS NUMBER I4 CA INPUT OCCUR = OCCURRENCE NUMBER FOR PROCESS KPNA WITH I4 CA KPRNO CA OUTPUT PSIZE = REGION SIZE OF PROGRAM IN -KBYTES I4 CA OUTPUT CSIZE = RESERVED BLANK COMMON SIZE IN WORDS I4 CA OUTPUT UCSIZE = UNRESERVED BLANK COMMON SIZE IN WORDS I4 CA OUTPUT ERCODE = ERROR CODE (=16 IF NOT ABLE TO COMPUTE I4 CA THE REQUIRED PARAMETERS) CA CA CA COMPUTES THE PROGRAM SIZE (PSIZE) AND AMOUNT OF BLANK COMMON CA (CSIZE) NEEDED BY SPARC DEVELOPMENT PROCESS EGEN REQUIRING CA SPECIAL CALCULATIONS. CA JSEGEN IS AN EXTENSION OF SUBROUTINE JSRND. C C C C EJECT C SUBROUTINE JSEGEN (KPNA, KPRNO, OCCUR, PSIZE, CSIZE, UCSIZE, * ERCODE) C IMPLICIT INTEGER (A-Z) C C CHARACTER*4 KPNA CHARACTER*80 CARD C C DATA FCF / 1 / DATA IPR / 98 / DATA THL / 190 / C DA = 1 01760000 NOC = 0 10 CALL FORC (KPNA, KPRNO, DA, CARD, * 20 ) 01770000 C 01780000 NOC = NOC + 1 IF (S1CPCH(CARD, 8, ' ', 1, 3) .NE. 0) GO TO 10 NE = S1CVBN (CARD, 21, 5) 01790000 IF (NE .EQ. 0) GO TO 30 C C SET PROGRAM CODE SIZE TO 20 KILOBYTES C PSIZE = 20 C C INITIALIZE START OF RESERVED COMMON SIZE C IC = 1 C C ALLOCATE STORAGE FOR REEL INFORMATION USED BY SHELL DRIVER C WHETHER OUTPUT PROCESS OR NOT C ICC = IC + 55 * NE C C CSIZE = ICC C C PART 3. COMPUTE UNRESERVED BLANK COMMON SIZE IN WORDS (UCSIZE) C UCSIZE = 0 C WRITE(IPR,9000) PSIZE,CSIZE,UCSIZE GO TO 9500 C 20 IF (NOC .EQ. 0) WRITE (IPR, 9100) GO TO 9500 C 30 WRITE (IPR, 9200) C C 9500 RETURN C C ERROR MESSAGES C 9000 FORMAT(/5X,'JSEGEN COMPLETED PSIZE = ',I5,' CSIZE = ',I10, + ' UCSIZE = ',I5) C 9100 FORMAT (/' *** FROM JSEGEN ERROR IN CORE CALCULATION',/ + ' *** MISSING CARD (1) ' ) C 9200 FORMAT (/' *** ERROR IN CORE CALCULATION FROM JSEGEN ',/ + ' *** NO. OF EVENT IS REQUIRED IN CARD (1). ') C C END