SUBROUTINE EXRGLV(LEVEL,SAVTYP) INTEGER LEVEL,SAVTYP INTEGER ACADDR (11), ACTYPE (11), ACSUBS (11) INTEGER ACSBTY (11), ACBIAS (11) INTEGER REGSTK(120) COMMON /RMCOM/ ACADDR, ACTYPE, ACSUBS, ACSBTY, ACBIAS COMMON /RMCOM/ REGSTK INTEGER CLRACV INTEGER CLRACX INTEGER CLRSTA INTEGER TRAREG INTEGER SAVREG INTEGER CTFREE INTEGER SETREG INTEGER ICLP11 COMMON /RMCODE/ CLRACV, CLRACX, CLRSTA, TRAREG, SAVREG COMMON /RMCODE/ CTFREE, SETREG COMMON /RMCODE/ ICLP11 INTEGER AREG, XREG, YREG, NRREGS INTEGER STATUS (10), STAREG, STXREG, STYREG INTEGER REGS (10) INTEGER ACTREG (2), ACTLO, ACTHI INTEGER NZREG INTEGER ICLP10 COMMON / REGS / AREG, XREG, YREG, NRREGS COMMON / REGS / STATUS, REGS, ACTREG, NZREG COMMON / REGS / ICLP10 EQUIVALENCE (ACTLO, ACTREG (1)) EQUIVALENCE (ACTHI, ACTREG (2)) EQUIVALENCE (STAREG, STATUS (1)) EQUIVALENCE (STXREG, STATUS (2)) EQUIVALENCE (STYREG, STATUS (3)) INTEGER LBUF (66) INTEGER LCOUNT INTEGER PGECNT INTEGER UHEAD (15) INTEGER CHEAD (8) INTEGER ICLP09 COMMON /PRT/ LBUF COMMON /PRT/ LCOUNT COMMON /PRT/ PGECNT COMMON /PRT/ UHEAD COMMON /PRT/ CHEAD COMMON /PRT/ ICLP09 INTEGER NI, NJ, NK INTEGER NSIZE INTEGER NLX, FNLX, REMNLX, OVNLX, TNAME INTEGER NLSTRT, NLSTOP, NLSIZE, SRCHST INTEGER NTSTRT INTEGER NTSTOP INTEGER NTSIZE INTEGER PARFLG INTEGER SPARFL INTEGER NLWRDS INTEGER TX INTEGER NLENO INTEGER STDMD INTEGER MSHIFT INTEGER REGCNT INTEGER NULLX INTEGER STPTRX INTEGER SPMODE INTEGER DPMODE INTEGER SPECMD INTEGER ENFLAG INTEGER DFINED INTEGER CVALUE INTEGER NLXLCI INTEGER ENEXTD INTEGER NAMAT0 INTEGER NAMCON INTEGER NLMODE INTEGER PARBIT INTEGER OPBIT INTEGER LOCALB INTEGER REGBIT INTEGER EXTBIT INTEGER STRBIT INTEGER DPBIT INTEGER CBIT INTEGER PBIT INTEGER EPBIT INTEGER IOBIT INTEGER ARBIT INTEGER EXDBIT INTEGER TPLBIT INTEGER USEBIT INTEGER LCMASK INTEGER MDMASK INTEGER NAMLOC, REGNUM COMMON /NLIST/ NI COMMON /NLIST/ NJ COMMON /NLIST/ NK COMMON /NLIST/ NSIZE COMMON /NLIST/ NLX COMMON /NLIST/ FNLX COMMON /NLIST/ REMNLX COMMON /NLIST/ OVNLX COMMON /NLIST/ TNAME COMMON /NLIST/ NLSTRT COMMON /NLIST/ NLSTOP COMMON /NLIST/ NLSIZE COMMON /NLIST/ SRCHST COMMON /NLIST/ NTSTRT COMMON /NLIST/ NTSTOP COMMON /NLIST/ NTSIZE COMMON /NLIST/ PARFLG COMMON /NLIST/ SPARFL COMMON /NLIST/ NLWRDS COMMON /NLIST/ TX COMMON /NLIST/ NLENO COMMON /NLIST/ STDMD COMMON /NLIST/ MSHIFT COMMON /NLIST/ REGCNT COMMON /NLIST/ NULLX COMMON /NLIST/ STPTRX COMMON /NLIST/ SPMODE COMMON /NLIST/ DPMODE COMMON /NLIST/ SPECMD COMMON /NLIST/ ENFLAG COMMON /NLIST/ DFINED COMMON /NLIST/ CVALUE COMMON /NLIST/ NLXLCI COMMON /NLIST/ ENEXTD COMMON /NLIST/ NAMAT0 COMMON /NLIST/ NAMCON COMMON /NLIST/ NLMODE COMMON /NLIST/ PARBIT COMMON /NLIST/ OPBIT COMMON /NLIST/ LOCALB COMMON /NLIST/ REGBIT COMMON /NLIST/ EXTBIT COMMON /NLIST/ STRBIT COMMON /NLIST/ DPBIT COMMON /NLIST/ CBIT COMMON /NLIST/ PBIT COMMON /NLIST/ EPBIT COMMON /NLIST/ IOBIT COMMON /NLIST/ ARBIT COMMON /NLIST/ EXDBIT COMMON /NLIST/ TPLBIT COMMON /NLIST/ USEBIT COMMON /NLIST/ LCMASK COMMON /NLIST/ MDMASK COMMON /NLIST/ NAMLOC, REGNUM INTEGER LISTF, SNLPRT, SUMPRT, SYMFLG INTEGER PRINTF, SKIP, COMPFL (2) INTEGER LOCPRT, USFLGS, NEGFLG, SKNAME (8) INTEGER ORGFLG, CTLUSE, CTLERR, TTL (8) INTEGER DUMFLG INTEGER ICLP01 COMMON /CTLCOM/ LISTF, SNLPRT, SUMPRT, SYMFLG COMMON /CTLCOM/ PRINTF, SKIP, COMPFL COMMON /CTLCOM/ LOCPRT, USFLGS, NEGFLG, SKNAME COMMON /CTLCOM/ ORGFLG, CTLUSE, CTLERR, TTL COMMON /CTLCOM/ DUMFLG COMMON /CTLCOM/ ICLP01 INTEGER ADDR, ADRFLG, CUROP, NEXTOP, CFLAG INTEGER PI, XBBL, XA, XF, XZERO, DPVFLG INTEGER LC, LCI, LODLCI, LODLCV, LDLCVO, MAXLCV INTEGER NEXT, NUMBER, I, IOTYPE INTEGER J, K, L, LABNLX, M, N INTEGER PSYMB, SYMBOL, TOP, VALFLG, QVALUE INTEGER OPTOPX, OPNXTX, TOPX, NEXTX INTEGER DUMMY, OVCHN, PEEKS INTEGER LO, CI, CO, LOGICF, LOCSUP INTEGER VAREF, INPUTJ, LCTS, CRUCNT, FLTCNT INTEGER ICLP05 LOGICAL ENDOK,CONEND COMMON /LOGOS/ ADDR, ADRFLG, CUROP, NEXTOP, CFLAG COMMON /LOGOS/ PI, XBBL, XA, XF, XZERO, DPVFLG COMMON /LOGOS/ LC, LCI, LODLCI, LODLCV, LDLCVO, MAXLCV COMMON /LOGOS/ NEXT, NUMBER, I, IOTYPE COMMON /LOGOS/ J, K, L, LABNLX, M, N COMMON /LOGOS/ PSYMB, SYMBOL, TOP, VALFLG, QVALUE COMMON /LOGOS/ OPTOPX, OPNXTX, TOPX, NEXTX COMMON /LOGOS/ DUMMY, OVCHN, PEEKS COMMON /LOGOS/ LO, CI, CO, LOGICF, LOCSUP COMMON /LOGOS/ VAREF, INPUTJ, LCTS, CRUCNT, FLTCNT COMMON /LOGOS/ ICLP05 COMMON /LOGOS/ ENDOK,CONEND INTEGER BASE,SCRBAS,SCRX,CNTX,STKX INTEGER SAVSIZ INTEGER MAXLEV(2) INTEGER SCRLEV INTEGER LEVST(2) DATA SAVSIZ/15/ DATA MAXLEV/6,2/ DATA SCRLEV/7/ DATA LEVST/-2,4/ IF (.NOT. (DUMFLG .NE. 0))GO TO 13014 CALL EST('EXRGLV',LBUF,1,6) CALL ESP(LEVEL,LBUF,10,12) CALL ESP(SAVTYP,LBUF,14,16) CALL SGLPRT 13014 CONTINUE IF (.NOT. (LEVEL .GT. MAXLEV(SAVTYP)))GO TO 13016 CALL REGMAN(CLRACV,0,0) RETURN 13016 CONTINUE BASE=SAVSIZ*(LEVEL+LEVST(SAVTYP))+1 CALL RSTDMP(BASE) CALL REGMAN(CLRACX,XREG,0) CALL REGMAN(CLRACX,NZREG,0) SCRBAS=SCRLEV*SAVSIZ+1 STKX=BASE CNTX=SAVSIZ-1+SCRBAS DO 13018 SCRX=SCRBAS,CNTX REGSTK(SCRX)=REGSTK(STKX) STKX=STKX+1 13018 CONTINUE CALL STKREG(LEVEL,SAVTYP) ACADDR(AREG)=REGSTK(SCRBAS) ACTYPE(AREG)=REGSTK(SCRBAS+1) ACSUBS(AREG)=REGSTK(SCRBAS+2) ACSBTY(AREG)=REGSTK(SCRBAS+3) ACBIAS(AREG)=REGSTK(SCRBAS+4) ACADDR(YREG)=REGSTK(SCRBAS+5) ACTYPE(YREG)=REGSTK(SCRBAS+6) ACSUBS(YREG)=0 ACSBTY(YREG)=0 ACBIAS(YREG)=REGSTK(SCRBAS+7) STKX=SCRBAS+8 DO 13020 CNTX=4,10 CALL REGMAN(CLRACX,CNTX,0) IF (.NOT. (REGSTK(STKX) .NE. 0))GO TO 13022 ACADDR(CNTX)=NULLX ACTYPE(CNTX)=ADRFLG ACSUBS(CNTX)=REGSTK(STKX) ACSBTY(CNTX)=DPMODE 13022 CONTINUE STKX=STKX+1 13020 CONTINUE CALL RSTDMP(BASE) END