N5REG $(1) . GENWLR TZ,S2 U1110A . REENTRANT LIBRARY J GNWLR GENWLD TNZ GENWLJ J GENWKA SLJ GEN PCI 0,LINK2 MI 1,(+P1) EX $+1 GENWKB L,H1 AA1,N5ERLA SEQUENCE NUMBER S,H1 AA1,OLDITM+1 TNZ,S2 U1110A . COMPLETE SEQUENCE NUMBER SZ,S1 OLDITM+1 SEQUENCE NUMBERS ARE MOD 4096 L,S1 AA1,OLDITM L AA2,(0130003,0) TZ,S2 U1110A REENTRANT LIBRARY TZ,H2 IOWLK J $+2 L AA2,(0130004,0) STATIC DIAGNOSTIC WALKBACK S AA2,OLDITM S,S2 AA1,OLDITM SAVE OLD RELOCATION TYPE L,M AA1,$ S AA1,WALKBK PREVENT TWO WALKBACKS L AA1,IOWLK SZ IOWLK JNZ AA1,*GENWLK TNZ,S2 U1110A . REEENTRANT LIBRARY J *GENWLK LMJ B11,FILE61 +RDCGCR . RETURN TO PREVIOUS COUNTER J *GENWLK GENWKA SLJ GEN MI 1,(0),ABS EX $+1 TNZ,H2 IOWLK . IO STMTS HAVE NORMAL WALKBACK TNZ,S2 U1110A . REENTRANT LIBRARY J GENWKB L AA1,(0777777) S,H2 AA1,OLDITM+1 J GENWKB GNWLR TZ IOWLK . IO STMTS HAVE NORMAL WALKBACK J GENWLD L A1,LCN .COUNTER CURRENTLY UNDER S,S2 AA2,GNWLA+1 . WALKBACK CODE S,S3 A1,GNWLA . SHOW WHICH COUNTER TO RETURN TO S,H2 A1,RDCGCR . COUNTER TO RESTORE TO L AA1,LRSTC1,A1 CURRENT POSITION UNDER COUNTER S,H2 AA1,GNWLA+1 LMJ B11,FILE61 +RDCGCT . CHANGE COUNTER TO RANDOM STORAGE LMJ B11,FILE61 +GNWLA TNZ GENWLJ IN MAIN PROGRAM ? J GENWKA YES SLJ GEN PCI 0,LINK4 . REENTRANT WALKBACK MI 1,(+P1) EX GENWKB WBACKR L,M AA1,$ S AA1,WALKBK PREVENT TWO WALKBACKS TZ,S2 U1110A REENTRANT LIBRARY TNZ,S1 CRFLGS COMPILER (RETN=NOP) J WBACK2 L,S4 AA1,CRFLGS . FLAG TO SUPPRESS NOP SZ,S4 CRFLGS . RESET FLAG FOR NOP NEXT TIME JNZ AA1,WBACK2 . IF NON ZERO SKIP NOP THIS TIME TZ GENWLJ MAIN PROGRAM? J WBACK3 NO SLJ GEN MI 1,(NOP 0,0),ABS EX WKBACK WBACK3 SLJ GEN PCI 0,LINK2 MI 1,(NOP 0,P1) EX WKBACK WBACK2 TNZ,S2 U1110A REENTRANT LIBRARY SLJ GENWLK J *WKBACK . SECTION 1.28.0 . THIS SECTION GENERATES THE CALL FOR ALL INPUT-OUTPUT . STATEMENTS. STIO* LA,M AA1,IONAME-22,BB1 GET IO NAME S,H2 AA1,IOWLK . FLAG FOR ORDINARY WALKBACK TZ,S2 U1110A . REENTRANT LIBRARY LA,M AA1,RIONME-22,BB1 SZ CDCFLG DO 1-JPL , PROC L,M AA2,0,BB1 TNE,M AA2,42 S AA2,CDCFLG TNE,M AA2,43 . TEST FOR ENCODE/DECODE S AA2,CDCFLG DO JPL , PROC END S AA1,STIOFL SHOW START OF IO RETIND S,H2 AA1,B11FL SHOW B11 DESTROYED SA,H2 AA1,STIO1 PUT INTO LMJ TLEM,M BB1,25 TEST FOR POSSIBLE LIST J STIOA+1 NO LIST FOLLOWS THESE STATEMENTS SZ ABNORF L AA2,(021100370000) LDSL AA1,15 DSC AA1,0,BB1 . JNB AA2,STIOA TEST FOR READS S BB1,ABNORF READS ACT LIKE ABNORMAL CALLS S,H1 BB1,STIOFL . SHOW INPUT LIST IN PROCESS GENIOL STIOA SX B1,AREGF USE ONLY NON-DEST A-REGS SLJ CLOB1 CLOBBER VOLATILE REGISTERS SZ ABNORF TZ,S2 U1110A . REENTRANT LIBRARY J STIOAR SLJ GEN GENERATE LMJ PCI 0,(((11))-3) MI 1,STIO1,NAME EX $+1 STIORA L,M AA1,STIOJB S,H2 AA1,RTNARG L,S3 AA1,ITEM NUMBER OF CONTINGENCIES S AA1,ITEMCT TLE,M AA1,3 J STIOA3 NOT 3/4 ARG ENCODE-DECODE L,T1 AA1,ITEM+3 L,S2 AA4,ITEM GET STATEMENT TYPE TG,M AA4,42 ENCODE IS 42, DECODE IS 43 TE,M AA1,0705 SIZE ARGUMENT J STIOA3 S AA1,CDCFLG CDC ENCODE/DECODE FLAG L AA1,ITEMCT AN,M AA1,1 ADJUST FOR SIZE L,S3 AA2,ITEM . NUMBER ITEMS ASSOCIATED WITH STATEMENT TLE,M AA2,4 . TEST IF 4 ARG DECODE POSSIBLE J STIOQ1 L,T1 AA2,ITEM+4 TNE,M AA2,0711 TRANS ARGUMENT AN,M AA1,1 ADJUST FOR TRANS STIOQ1 . S AA1,ITEMCT NUMBER OF CONTINGENCIES S,H1 AA1,CDCFLG INDICATE SIZE WAS PRESENT L,M AA1,497 SIZE CODE J STJA1 STIOA3 SLJ GEN GENERATE N-1,(FIRST INPUT PARM) PCI 0,ITEM+1 TE,ID P1,STIOJA,7 TEST SIMULATED ARGUMENT MI 1,(+P1) EX $+1 STIOJB . SZ R1 DL AA1,(0146000016330166600016330) L,S2 BB1,ITEM SUBTYPE DSC AA1,0,BB1 AA2 HAS BIT FOR FORMATED I/O JNB AA1,$+2 L,M R1,1 NONZERO FOR (U,F) TYPE I/O XOR AA2,R1 . AA3 IS ZERO WHEN FIRST ARG IS UNIT NO. L,H1 R2,(0130002,0) JB AA3,$+2 L,H1 R2,(0120002,0) L,S1 AA1,OLDITM S,H1 R2,OLDITM S,S2 AA1,OLDITM L AA1,ITEMCT TZ R1 NO. OF ERROR CONTINGENCIES IN AA1 AN,M AA1,1 S R1,SVR1 SVR1 L,S2 AA4,ITEM STMT TYPE DO LMSC , TZ,S2 U1110A . REENTRANT LIBRARY LSSL AA1,6 S,H1 AA1,OLDITM+1 TNZ CDCFLG . 3 OR 4 ARG. ENCODE/DECODE TLE,M AA4,42 ENCODE OR DECODE ? J STAA NO L,M AA1,1 TNZ,S2 U1110A REENTRANT LIBRARY J $+3 S,S1 AA1,OLDITM+1 J STAA DO LMSC , S,S2 AA4,OLDITM+1 . TELL LIBRARY (BUFFER,FORMAT) STAA . SZ N0RGSA INDICATE NO FORMAT TLE,M AA4,45 DIRECT ACCESS IO J STAB2 L,M AA1,0100 S,H1 AA1,OLDITM+1 ASSUME NO CONTINGENCIES TNE,M AA4,45 DEFINE FILE J STIOA1 L AA3,ITEMCT TLE,M AA3,3 . 3 OR MORE ARGS MAY HAVE FORMAT J STIOA1 NO FORMAT L,M AA3,2 L,S1 AA1,ITEM+3 TNE,M AA1,015 CODE FOR CONTINGENCY ITEM J STAB3 ONE CONT. - NO FORMAT L,M AA1,040 FORMATED FLAG TO LIBRARY S,S3 AA1,OLDITM+1 TELL LIBRARY FORMAT PRESENT L,M BB2,2 S BB2,SVR1 S BB2,N0RGSA INDICATE FORMAT PRESENT L AA1,ITEMCT TE,M AA1,4 J STAB2 FORMAT - NO CONTINGENCY S,S2 AA3,OLDITM+1 ONE CONT. AND ONE FORMAT STAB2 . JNB AA2,STIOA1 SKIP NEXT CODE UNLESS FORMATTED L BB2,SVR1 BB2 POINTS TO FORMAT SVR1 TZ CDCFLG . 3 OR 4 ARG. ENCODE/DECODE L,M BB2,0 STAB1 L,S1 AA1,ITEM+1,BB2 TE,M AA1,2 TEST FOR VARIABLE J STIOA1 L,H2 BB2,ITEM+1,BB2 TP,XM 0,BB2 AN,M BB2,0,*0 L,S3 AA1,2,BB2 AND,M AA1,7 TE,M AA2,5 J STIOA1 L,M AA1,010 OR,S1 AA1,1,BB2 CAUSE CALL BY NAME S,S1 AA2,1,BB2 STIOA1 TLE,M AA4,44 DIRECT ACCESS IO J STIOA7 L,M AA1,STIOA2 RECORD NO. IS SIMULATED WITH SIZE S,H2 AA1,RTNARG L,M AA1,497 J STJA1 STIOA2 L,M BB2,1 TZ N0RGSA NON ZERO IS FORMATTED J STIOA6 PUT OUT FORMAT L,S2 AA4,ITEM TE,M AA4,45 DEFINE FILE J STIOB GET CONTINGENCIES L,M BB2,3 THREE MORE ITEMS TO OUTPUT L,M AA1,STDF2 S,H2 AA1,RTNARG STDF1 L AA1,ITEM,BB2 S AA1,STIO9+2 S BB2,SIOBB2 SLJ GEN PCI 0,STIO9+2 OUTPUT THE REMAINING THREE TE,ID P1,STIODE,7 MI 1,(+P1) DEFINE FILE ITEMS EX $+1 STDF2 L BB2,SIOBB2 A,M BB2,1 L AA1,BB2 TLE,M AA1,6 J STDF1 SLJ GENWLK GENERATE WALKBACK J STIOC STAB3 S,S2 AA3,OLDITM+1 J STIOA1 STIOA7 TNZ SVR1 NON ZERO IS FORMATTED J STIOB TNZ,H1 CDCFLG WAS THERE A SIZE J STIOA5 L,M AA1,STIOA5 PUT OUT ENCODE FORMAT S,H2 AA1,RTNARG SLJ GEN PCI 0,ITEM+1 TE,ID P1,STIOJA,7 MI 1,(+P1) EX $+1 STIOA4 L,H1 R2,(0130002,0) L,S1 AA1,OLDITM S,H1 R2,OLDITM S,S2 AA1,OLDITM STIOA5 L,M BB2,0 STIOA6 L,M AA1,STIOJD S,H2 AA1,RTNARG L AA1,ITEM+2,BB2 S AA1,STIO9+2 SLJ GEN N.GT.1 SO OUTPUT PCI 0,STIO9+2 TE,ID P1,STIOJC,7 MI 1,(+P1) EX $+1 L,M AA2,021 . FLAG FOR 18 BIT ADDRESSING TZ,S1 BSTC1+4 SZ AA2 . NO 18 BIT WITH BANKIN L,S1 AA1,STIO9+2 TNE,M AA1,2 S,S2 AA2,OLDITM STIOJD . L,S3 AA1,ITEM TLE,M AA1,4 J STIOB L,T1 AA1,ITEM+4 TZ CDCFLG CDC ENCODE/DECODE TE,M AA1,0711 TRANS ARGUMENT J STIOB L,M AA1,STIOB S,H2 AA1,RTNARG L,M AA1,496 CODE FOR TRANS J STJA1 STIOB . OUTPUT WALK BACK INFORMATION SLJ GENWLK GENERATE LINK TO WALKBACK L BB2,(1,1) A BB2,SVR1 SVR1 L AA1,ITEMCT NO. OF CONTINGENCIES AN,M AA1,0,BB2 MINUS UNIT AND/OR FORMAT S AA1,R4 IS LOOP COUNT AX,S3 BB2,ITEM ANX BB2,ITEMCT STIOBB JGD R4,$+2 J STIOC DONE L AA1,ITEM+1,*BB2 GET EACH ITEM FOR GEN S BB2,SIOBB2 SA AA1,STIO9+2 SZ,S2 STIO9+2 L,M AA1,STIOBL S,H2 AA1,RTNARG SLJ GEN N.GT.2 PCI 0,STIO9+2 TE,ID P1,STIOBJ,7 MI 1,(+P1) FOR FIRST VARIABLE OPTION EX $+1 STIOBL L BB2,SIOBB2 L,S2 AA1,ITEM,BB2 CONTINGENCY NO. AND,M AA1,7 . TZ,S2 U1110A REENTRANT LIBRARY J $+3 TNZ CRLBCM J $+3 S,S3 AA2,OLDITM+1 OLD STYLE CONTINGENCY J $+2 S,S2 AA2,OLDITM+1 INTO GENERATED INSTRUCTION AND,M AA1,020 GET INDIRECT FLAG IF ANY S,S1 AA2,OLDITM+1 AND STORE IN WORD L,H1 AA2,(0130001,0) S,H1 AA2,OLDITM CHANGE ID TO 11 L,H2 BB1,ITEM,BB2 GET SYM L,S3 AA1,2,BB1 GET MODE AND,M AA1,7 GET CLASS TE,M AA2,5 DUMMY ARG J STIOBB L,M AA1,010 SET OR,S1 AA1,1,BB1 G1 FLAG S,S1 AA2,1,BB1 IN SYM J STIOBB STIOC S R4,IOFLX S R4,IOFLX1 L,S2 AA1,ITEM STATEMENT TYPE TG,M AA1,25 NO END OF LIST ITEM FOLLOWS DEFINE FILE TNE,M AA1,45 BACKSPACE, REWIND OR ENDFILE J EOLR2 SWITCH LOC COUNTERS TO INSTRUCTION BANK TNE,M AA1,48 FIND (R'N,U) J EOLR2 TE,M AA1,047 . NO END OF LIST AFTER NAMELIST TNE,M AA1,050 J EOLR2 . SWITCH LOCATION COUNTERS BACK J PHS5G EXIT STIOJA EX $+1 L,M AA1,498 CODE FOR UNIT L AA3,(020600000000) READ, PUNCH OR PRINT SZ AA2 L,S2 BB1,ITEM DSC AA2,0,BB1 TEST TO SEE IF IO HAS JB AA3,$+2 IMPLIED UNIT. IF SO, SEARCH FOR FORMAT TZ CDCFLG L,M AA1,499 STJA1 . S AA1,N5CLAG FORCE NORMAL CALLING SEQUENCES SZ ARGX L,M R1,200 S R1,OP16NA SET MAX POSSIBLE NUMBER OF ARGS L,M B11,$+3 S B11,SPIOAU J OP1631 SZ,T1 OLDITM+1 SZ SPIOAU J *RTNARG STIOJC EX $+1 L,M AA1,499 CODE FOR FORMAT TZ CDCFLG L,M AA1,498 J STJA1 STIOBJ EX $+1 L,M AA1,436 A,H2 AA1,ITEM,BB2 COMPUTE TYPR OF ARGUMENT J STJA1 STIODE EX $+1 L BB2,SIOBB2 L AA1,DAFINE-3,BB2 J STJA1 STIOAR L,S2 BB1,ITEM . GET LIBRARY INDEX NUMBER L AA1,RIONME-22,BB1 . REENTRANT LIBRARY NAME S AA1,SIOBB2 SLJ GEN PCI 1,IODBNK EX $+1 SLJ GEN PCI 0,(((11))-3) PCI 0,(((12))-3) PCI 0,N0LA . COMMON BLOCK FOR IO SCRATCH PCI 0,IODBNK . LOC FOR LIST CODE IN DBANK MI 1,N5NIOCB,NAME . LXI,M P1,NIOCB$ EX $+1 L,M AA1,021 S,S2 AA1,OLDITM 18 BIT RELOCATION SLJ GENR MI 1,(LA P2,P4,0,M) EX $+1 TNZ,S1 BSTC1+4 S,S2 AA1,OLDITM . 18 BIT RELOCATION SLJ GENR MI 1,(LXI P2,P3,0,M) EX $+1 S,S2 AA1,OLDITM . 18 BIT RELOCATION L,H1 AA1,OLDITM+1 . REMOVE J FACTOR AND AA1,(0770377) . IF ROUTINE WILL BE TZ,S1 CRNCCB . USED IN A COMMON BANK S,H1 AA2,OLDITM+1 . SLJ GENR MI 1,(LIJ P1,SIOBB2),NAME EX $+1 S,S2 AA1,OLDITM . 18 BIT RELOCATION LMJ B11,FILE61 +CIOCTR CHANGE TO DBANK INSTRUCTIONS L BB2,IODBNK SLJ EVALLB L,H1 AA1,N5ERLA S AA1,0,BB2 . CURRENT SEQUENCE NUMBER L,M AA1,'D' . USE AS EDITAL CODE FOR LABEL S,S1 AA1,0,BB2 L,M AA1,0107 CODE FOR LABEL S,H1 AA1,2,BB2 J STIORA . SECTION 1.32.0 . THIS SECTION PERFORMS THE 'START OF PROGRAM' PROCESSING . AT THE 'START OF PROGRAM' ITEM. . STRT* L,S2 AA1,ITEM EVER1 L AA2,GOTOFL TEST FOR JUMP BEFORE START OF SUBROUTINE SZ GOTOFL SSL AA1,3 EVER1 S AA1,GENWLJ REENT TNE,M AA1,7 EVER1 J STRTB SZ MEXIT PREVENT GENERATION OF INDIRECT RETURN RETIND JZ AA1,STRTJ SET GLDMFL ON FIRST FUNCTION OR SUBROUTINE L,H1 AA1,GLDMFL S,H2 AA1,GLDMFL SET NON ZERO ON SECOND MAIN PROGRAM ITEM A,14 AA1,1 S,H1 AA1,GLDMFL JNZ AA2,STRTJ TLE,M AA1,2 J STRTJ IGNORE FIRST FUCTION IF NOT MAIN PROGRAM L,H1 AA1,N5ERLA S,H1 AA1,STP2D LMJ B11,ERFP + STP2D STRTJ L AA1,(2,0) SA AA1,PROLX SZ ENTFL LMJ B11,FILE61 . OUTPUT START OF PROG ITEM EVER1 + STRTM EVER1 SLJ GEN . MAKE SYM ENTRIES EVER1 PCI 1,KEXIT PCI 1,CEXIT PCI 1,BEXIT PCI 1,LINK4 EX $+1 RETIND SLJ GEN LIMIT NUMBER OF PARAMETERS RETIND PCI 1,MEXIT RETIND PCI 1,LINK1 PCI 1,LINK2 PCI 1,LINK3 EX $+1 L,M AA1,2 S,S1 AA1,LINK2 CHANGE TO VARIABLE REFERENCE S,S1 AA1,LINK3 SO BANK 2 LOCATIONS WILL BE RECOGINZED S,S1 AA1,LINK1 S,S1 AA1,LINK4 S,S1 AA1,KEXIT S,S1 AA1,CEXIT S,S1 AA1,BEXIT TNZ,S1 CRVRSQ J STRT3 . NO VARIABLE LENGTH SEQUENCES TZ,H2 CRVRSQ J STRT3 L AA1,LINK1 TZ,S2 U1110A . TEST FOR 1110 REENTERENT CODE L AA1,LINK3 S AA1,CRVRSQ STRT3 L AA1,ITEM S AA1,M1 . SAVE START OF PGM ITEM EVER1 SSC AA1,27 SSL AA1,27 A,M AA1,1 S,H2 AA1,UALJMP NUMBER OF ARGS LMJ B11,BPRO EVER1 L,S2 AA1,M1 EVER1 SSL AA1,3 EVER1 TE,M AA1,3 . CHECK FOR INTERNAL FUNC EVER1 J STRT1 EVER1 LMJ B11,FILE50 . READ IN ITEM WITH FUNC EVER1 + M2 NAME SYM REF EVER1 STRT1 L,S2 AA1,M1 EVER1 SSL AA1,3 EVER1 JZ AA1,PHS5G . BRANCH IF MAIN PROGRAM EVER1 L,H1 AA1,EPPTR INITIALIZE ENTRY POINTS TNZ EPTIG GLOBAL INDEX S,H1 AA1,EPTIG TO EP TABLE IN SYM TNZ,H2 EPTIG S,H2 AA1,EPTIG LX BB4,EPTIG CURRENT LOC IN GLOBAL TABLE S BB4,EPPST S BB4,EPTIL START OF ENTRIES FOR THIS SUB STRTAZ L,H2 BB4,6,BB4 TNZ BB4 J STRTAQ L,S3 AA1,1,BB4 TNE,M AA1,2 2 IS ENTRY J STRTAZ STRTAQ S,H2 BB4,EPTIG STRTA . LA AA1,ITEM EVER1 L BB1,EPTIL AND AA1,(07777777777) . LEAVE S1 FREE FOR FLAG OR AA2,2,BB1 S AA3,2,BB1 . FOR MARKING VAR LENGTH SEQUENCE L,S3 AA1,1,BB1 . 1=SUB, 2=ENTRY, 3=FUNCTION TE,M AA1,3 J STRT6 L,H1 AA1,0,BB1 GET SYMBOL TABLE ADDRESS TE,H2 AA1,2,BB1 IS IT NOT INTERNAL J STRT6 SLJ TSCSYM IS THERE SPACE IN SYM L AA1,CRSYM AU,M AA1,4 S AA2,CRSYM S,H2 AA1,2,BB1 CREAT NEW SYM ENTRY L BB2,AA1 L,H1 BB4,0,BB1 GET ADDRESS OF NAME L AA1,0,BB4 GET SYM NAME S AA1,0,BB2 STORE NEW NAME SZ 1,BB2 SZ 2,BB2 SZ 3,BB2 STRT6 . L BB2,LCN L AA1,LRSTC1,BB2 S AA1,4,BB1 SET FIRST EXECUT INST L AA1,CRSTC1,BB2 S,H1 AA1,4,BB1 L,H2 BB1,6,BB1 S,H2 BB1,EPTIL STRT4 J PHS5G START5 LMJ B11,ERFP + STX5Z J EOF50 STRTB LMJ B11,RPLAB . DEASSIGN REGS FOR ENTER S B11,ENTFL S,H2 B11,B11FL ARGS MUST BE TRANSFERED IN AT ENTRY SLJ TSCSYM L AA1,CRSYM AU,M AA1,4 S AA2,CRSYM L BB1,EPTIL L,H1 BB2,0,BB1 . GET SYM POINTER TO NAME L AA2,0,BB2 . NAME OF ENTRY L BB2,AA1 . NAME OF ENTRY FOR LABEL S AA2,0,BB2 SZ 2,BB2 . CLEAR SYM TABLE ENTRY SZ 3,BB2 . CLEAR SYM TABLE ENTRY SLJ EVALLB J STRTA . SECTION 1.34.0 . 'FIRST EXECUTABLE' ITEM PROCESSING. . FEX* SX BB1,JAPFLG L,S2 AA1,ITEM TEST FOR CHANGING CODE GENERATION JNZ AA1,FEXA LMJ B11,RPLAB SZ STATF J PHS5G 142400 FEXA L,S3 BB2,ITEM LOGICAL COUNTER TO SWITCH TO L AA1,CRSTC1,BB2 S,H2 AA1,FEXCNG SLJ GEN PCI 1,IODBNK PCI 0,IODBNK MI 1,(J P2) EX $+1 LMJ B11,FILE61 +FEXCNG L BB2,IODBNK SLJ EVALLB L,H1 AA1,N5ERLA S AA1,0,BB2 CURRENT SEQ. NO. L,M AA1,'D' S,S1 AA1,0,BB2 L,M AA1,0107 CODE FOR LABEL S,H1 AA1,2,BB2 J PHS5G . SECTION 1.35.0 . 'END OF PROGRAM' ITEM PROCESSING. . EOP* . LMJ B11,RPLAB DEASSIGN INDEX REGISTERS IF ANY L,S2 AA1,M1 SSL AA1,3 IS THIS A MAIN PROG 142700 JZ AA1,EOP3 YES 142800 LA,H1 AA1,N5ERLA . SEQ. NUMBER TNE,H1 AA1,ST19B+1 J EOPD RETURN WAS LAST STATEMENT SA,H1 AA1,ST19B+1 SZ,S1 ST19B+1 LA,M AA1,EOPD-1 SA,H2 AA1,ST19E J ST193 FABRICATE RETURN BLANK LA,H1 AA1,N5ERLA EOPD SA,H1 AA1,ST19B+1 SZ,S1 ST19B+1 LA,S6 AA1,EXTYP JZ AA1,EOPB . GENERATE FOR RETURN BLANK EVER1 TZ,S2 U1110A REENTRANT LIBRARY J $+3 TNE,M AA1,1 EVER1 J EOPC . GENERATE FOR RETURN CONSTANT EVER1 L BB2,KEXIT L AA1,('KEXIT ') S AA1,0,BB2 SLJ EVALLB TZ,S2 U1110A . REENTRANT LIBRARY J UEOPD SLJ GEN PCI 0,(((A2))-3) MI 1,(JZ P1,('NERR6$')),NAME TRACE MI 1,(JN P1,('NERR5$')),NAME TRACE EX $+1 EVER1 EOPC L BB2,CEXIT L AA1,('CEXIT ') S AA1,0,BB2 SLJ EVALLB L,S4 AA1,N5RGFA TNE,M AA1,7 . TEST FOR LIJ ENTRANCE J LIJRET S B11,ENTFL NUMBER OF ARGS MUST BE TRANFERED IN EACH TIME TNZ,H1 CRMON MONITOR STMT. J EOPC3 TNZ,S2 U1110A REENTRANT LIBRARY J EOPC1 SLJ GEN MI 1,(SLJ ('TRAC9$')),NAME EX EOPC2 EOPC1 SLJ GEN MI 1,(SLJ ('NER21$')),NAME EX $+1 EOPC2 S,H2 B11,IOWLK SLJ GENWLK EOPC3 TZ,S2 U1110A REENTRANT LIBRARY J UEOPC SLJ GEN EVER1 PCI 0,(((A2))-3) PCI 0,LINK1 MI 1,(TG P1,P2,0,1) MI 1,(J ('NERR4$')),NAME EX $+1 RETIND UEOPC1 TZ CR360C . TEST 360 COMPATIBILTY J EOP3CA RETIND TZ,S2 U1110A . REENTRANT LIBRARY J EOPB SLJ GENR RETIND MI 1,(ANA P1,1,0,016),ABS EOP3CB . RETIND MI 1,(SA P1,P2,0,1) EX $+1 EVER1 EOPB L BB2,BEXIT L AA1,('BEXIT ') S AA1,0,BB2 SLJ EVALLB TNZ,S1 MEXIT TZ CRDBUG E J $+3 E TNZ B11FL J EOPB1 B11 NOT DESTROYED NO RELOAD TZ,S2 U1110A . REENTRANT LIBRARY J UEOPB2 . NEVER RECORD B11 WITH REENTANT LIB. SLJ GEN EVER1 PCI 0,((( B11))-3) PCI 0,LINK3 MI 1,(LX P1,P2,0,H2) REGIST EX $+1 EVER1 UEOPB2 TNZ,S1 MEXIT J EOPBM . TEST FOR INDIRECT RETURN IN PROGRAM RETIND L BB2,MEXIT L AA1,('MEXIT ') S AA1,0,BB2 SLJ EVALLB EOPBM . RETIND DO 1-JPL , PROC TNZ,S1 BSTC1+4 TZ,S6 CRAGDG . TEST FOR ABSENCE OF DIAGNOSTIC CODE J EOPB1 SLJ GEN PCI 0,(((B11))-3) MI 1,(SX P1,('NER10$'),,H2),NAME EX $+1 DO JPL , PROC END EOPB1 TNZ CRDBUG E J EOPB1B TZ,S2 U1110A J EOPB1B SLJ GEN E MI 1,(SLJ ('NER16$')),NAME . DEBUGGING WALKBACK E EX $+1 E EOPB1B TNZ,H1 CRMON MONITOR OPTION - CHECK CALLING SEQUENCE J EOPB2Q MONITO TNZ,S2 U1110A REENTRANT LIBRARY J EOPB1C SLJ GEN MI 1,(SLJ ('TRAC8$')),NAME EX EOPB1D EOPB1C SLJ GEN MI 1,(SLJ ('NER19$')),NAME MONITO EX $+1 MONITO EOPB1D S,H2 B11,IOWLK NON REENTRANT WALKBACK SLJ GENWLK MONITO EOPB2Q . MONITO TNZ,S1 N0RGTB+12 TEST IF B11 SAVED REGIST J EOPB1Q REGIST SLJ GEN REGIST PCI 0,(((B11))-3) REGIST PCI 0,LINK1 REGIST MI 1,(AX P1,P2,0,H2) ADD NUMBER OF ARGS REGIST MI 1,(SX P1,P2) REGIST EX $+1 REGIST EOPB1Q . REGIST TNZ,S2 U1110A . REENTRANT LIBRARY J UPB1Q SLJ GEN PCI 0,LINK3 . DYN$ PCI 0,(((11))-3) MI 1,(LX P2,P1,0,S2) . NUMBER OF ARGS EX $+1 TNZ CRDBUG J UPB1Q SLJ GEN MI 1,(SLJ ('TRAC6$')),NAME EX $+1 UPB1Q . LMJ B11,RESTR2 E SZ EXTYP LA,S2 AA1,M1 EVER1 SSL AA1,3 EVER1 LX BB1,M1 EVER1 TNE,M AA1,1 EVER1 J EOPB2 EVER1 TE,M AA1,3 EVER1 J EOPB3 EVER1 LX BB1,M2 FOR INTERNAL FUNCTION EOPB2 SX BB1,EOP11 EVER1 L,S3 AA1,2,BB1 AND,M AA1,7 . TEST FOR CHARACTER FUNCTION TNE,M AA2,5 . WHICH APPEARS AS DUMMY ARGUMENT J EOPB3 LA,M AA1,02 EVER1 SA,S1 AA1,EOP11 EVER1 SZ,S2 EOP11 EVER1 LA,S3 AA1,2,BB1 EVER1 SSL AA1,3 EVER1 SA,S3 AA1,EOP11 EVER1 LA,M AA1,PZERO EVER1 SA AA1,PZERO EVER1 LA,M AA1,A0 EVER1 SA AA1,PZERO+3 EVER1 SLJ GEN EVER1 PCI 0,EOP11 EVER1 SLJ N5LOAD EVER1 PCI 0,P1 EVER1 EX $+1 MONITO TZ,S1 BSTC1+4 J EOPB3 L,M AA1,021 EENT TZ CRUAL FOR REENTERENT CODE FORCE 18 BIT ADDRESSIN EENT S,S2 AA1,OLDITM TO REMOVE B1 EENT J EOPB3 MONITO EOPULB L,H2 BB1,EPPST L,H1 BB1,0,BB1 L AA1,0,BB1 EOPB31 SA AA1,EOPB4+1 LX BB1,LINK2 L AA3,CRSTC3 LX BB2,LINK3 S,H1 AA3,1,BB1 S,H1 AA3,1,BB2 L AA1,LRSTC1+2 S,H2 AA1,1,BB1 A,M AA1,1 S,H2 AA1,1,BB2 SZ,H1 2,BB1 SZ,H1 2,BB2 L AA1,('(W.B.)') S AA1,0,BB1 S AA1,0,BB2 TZ,S1 BSTC1+4 . TEST FOR BANKING SZ,S2 EXAD . REMOVE 18 BIT LMJ B11,FILE61 + EOPB4 SZ,H2 ST19B+1 LMJ B11,FILE61 + ST19B TNZ CRLIBR TRACE J $+5 TRACE L AA1,BEXIT S AA1,EXAD+1,0,H2 LMJ B11,FILE61 +EXAD LMJ B11,FILE61 +RSTCTR SLJ PROLOG EOP4 J PHS5G EOP3 LA,M AA1,('NSTOP$') SA,H2 AA1,ST179 SLJ GEN PCI 0,(((B11))-3) MI 1,ST179,NAME MI 1,(+ (('ENDPRG'))),CON EX $+1 TRACE TNZ CRTRAC IS TRACE ACTIVE J EOP4 S,H2 B11,IOWLK GIVE NORMAL WALKBACK SLJ GENWLK PROVIDE WLAKBACK WITH STOP TRACE J EOP4 TRACE EOPB3 L,S4 AA1,N5RGFA . TEST FOR LIJ ENTRANCE TNE,M AA1,7 . LIJ IS 7 J EOPB3L TZ,S2 U1110A . REENTRANT LIBRARY J UEPB4 SLJ GEN PCI 0,LINK1 PCI 0,(((B11))-3) EPB3K . TRACE MI 1,*(J P1) EX $+1 UEPB3 . TZ,S1 BSTC1+4 J UEPB3J L,M AA1,021 EENT TZ,T3 CR131K . REMOVE B1 IN LARGE CORE S,S2 AA1,OLDITM TO REMOVE B1 EENT UEPB3J TZ,S2 U1110A . REENTRANT LIBRARY J UEB3K UEJPB4 . LX BB1,LINK1 L AA1,LRSTC1+2 . RSA OF CONST+TEMP S,H2 AA1,1,BB1 SZ,H1 2,BB1 MAKE LOOK LIKE INTEGER L AA1,('(INJP)') S AA1,0,BB1 GIVE NON LISTABLE NAME L AA1,CRSTC3 S,H1 AA1,1,BB1 UEJPB3 . TZ ENTFL SZ,H2 UALJMP LMJ B11,FILE61 CHANGE TO BANK TWO CODE GENERATION +CNGCTR LMJ B11,FILE61 +UALJMP TNZ CRLBCM J EOPULB LMJ B11,FILE61 +UALJMP TNZ,S2 U1110A . TEST FOR A OPTION J EOPULB J UEB3K UEPB4 SLJ GEN PCI 0,LINK3 MI 1,*(J P1) EX $+1 L,M AA1,021 . REMOVE B1 FROM INSTRUCTION TZ,S6 CR131K . REMOVE B1 WHEN G OPTION IS SET S,S2 AA1,OLDITM J UEPB3J EOPB3L SLJ GEN PCI 0,LINK1 MI 1,(TZ P1,0,H1) EX $+1 L,M AA1,1 . SET SMALL OFFSET TO S,S3 AA1,OLDITM . ONE TO ADDRESS LINK1+1 L AA1,(LIJ B0,0,B0) . SET UP RETURN TO CALLER L,S6 AA2,N5RGFA SSC AA2,14 A AA1,AA2 . ADD USER SPECIFIED REGISTER TO A FIELD SSC AA2,4 A AA1,AA2 . ADD IN TO INDEX FIELD S AA1,EOP11 LMJ B11,FILE61 +EOP11F L AA1,(LMJ B0,0,B0) . ALTERNATE RETURN TO CALLER L,S6 AA2,N5RGFA SSC AA2,14 A AA1,AA2 . ADD USER SPECIFIED REGISTER TO A FIELD SSC AA2,4 A AA1,AA2 . ADD TO INDEX FIELD S AA1,EOP11 LMJ B11,FILE61 +EOP11F J UEJPB4 UEOPC SLJ GEN PCI 0,(((A2))-3) PCI 0,LINK3 . DYN$ MI 1,(TG P1,P2,0,S2) MI 1,(J ('NER4$ ')),NAME MI 1,(SA P1,P2,0,S2) EX UEOPC1 UEOPD SLJ GEN PCI 0,(((A2+12))-3) PCI 0,LINK3 . DYN$ MI 1,(JGD P1,2),SREL MI 1,(J ('NER4$ ')),NAME EX EOPC EOP3CA SLJ GEN MONITO PCI 0,(((B11))-3) MONITO PCI 0,LINK3 MONITO MI 1,(LX P1,P2,0,H2) . LOAD B11 FOR 360 CODE MONITO MI 1,(SLJ ('C360$ ')),NAME MONITO EX $+1 MONITO SLJ GENWLK MONITO SLJ GEN MONITO PCI 0,(((A2))-3) MONITO PCI 0,LINK1 MONITO J EOP3CB MONITO UEB3K L BB2,LINK3 S,H2 BB2,UE3KB+1 L AA1,('DYN$ ') S AA1,0,BB2 L AA1,CRSTC3 . STC FOR CONSTANTS S,H1 AA1,1,BB2 L AA1,LRSTC1+2 . RSA FOR CONSTANTS S,H2 AA1,1,BB2 A,M AA1,1 S AA1,LRSTC1+2 SZ,H1 2,BB2 L A1,LCN S,S3 A1,UE3KA L AA1,LRSTC1,A1 S,H2 AA1,UE3KA+1 LMJ B11,FILE61 +RDCGCT . SWITCH TO RANDOM STORAGE L BB2,LINK4 L AA1,('(S.D.)') S AA1,0,BB2 SLJ EVALLB LMJ B11,FILE61 +UE3KA . 0776003 START OF FUNCTION LMJ B11,FILE61 +UE3KB . LOC OF DYN$ L,H2 BB1,EPPST L,H1 BB1,0,BB1 L AA1,0,BB1 S AA1,EOPB4+1 . NAME OF FUNCTION LMJ B11,FILE61 +EOPB4 LMJ B11,FILE61 . STOP GENERATION ON RANDOM STORAGE +RDCGCR LMJ B11,FILE61 +CNGCTR GO TO COUNTER 0 L BB2,LINK2 L AA1,('(W.B.)') S AA1,0,BB2 SLJ EVALLB LMJ B11,FILE61 +EOPB4 LMJ B11,FILE61 +RSTCTR SLJ PROLOG J PHS5G LIJRET L,H2 AA1,TEMPN . TEMP WHERE B11 SAVED A,M AA1,2 . POINT WHERE LOC OF ARGSSAVED A AA1,(A A2,0) . FORM INSTRUCTION TO ADD S AA1,EOPLIJ+1 . START OF CALLING SEQUENCE LMJ B11,FILE61 +EOPLIJ L AA1,(AN A2,1,0,M) S AA1,EOP11F+1 LMJ B11,FILE61 +EOP11F L AA1,(L A2,0,A2) . INSTRUCTION TO LOAD ADDRESS OF RETURN S AA1,EOP11F+1 LMJ B11,FILE61 +EOP11F L,H2 AA1,TEMPN . TEMP WHERE X11 SAVED A,M AA1,1 A AA1,(S A2,0,0,H2) . PUT RETURN ADDRESS ON TOP OF X11 S AA1,EOPLIJ+1 LMJ B11,FILE61 +EOPLIJ J EOPB . SECTION 1.38.0 . 'END OF LIST' ITEM PROCESSING . EOL* SZ AREGF RESET AREGF SZ STIOFL SHOW END OF LIST MONITO TZ,S2 U1110A REENTRANT LIBRARY J EOLR TZ,S3 ITEM T=0 IF NOT NRNL$ OR NWNL$ J PHS5G SLJ CLOB1 SLJ GEN MI 1,(SLJ ('NIO2$ ')),NAME EX PHS5G EOLR TZ,S3 ITEM NON ZERO IS NAMELIST J PHS5G TZ,S6 ITEM J PHS5G IT'S AN ENTRY STATEMENT SLJ CLOB1 DESTROY VOLATILE REGISTERS SLJ GEN PCI 0,(((B11))-3) MI 1,(LMJ P1,0,P1),ABS EX $+1 EOLR2 SZ STIOFL LMJ B11,FILE61 +RSTCTR J PHS5G $(2) . REENT DAFINE +496 . TRANS CODE, ITEM (071100,0) +499 . FORMAT CODE, ITEM (070000,0) STIO9* + 0130000,0 ID=11 FOR WALK BACK OUTPUT + 0 +0 SVR1 +0 SVR1 STRTM + 070000,0 + 0 UALJMP +040000,0 +0373,0 FLAG FOR WALKBACK, INDIRECT JUMP N,B11 EXAD +02100,0 +0123456,0 CNGCTR* +0150000,LC3 . SET TO CONSTANT AND TEMP +0 RSTCTR* +0150000,LC1 . SET TO INSTRUCTIONS +0 RSTCTQ* +0150000,0 . SET BY INITIALIZED TEMP +0 EOPB4 +0140000,0 USED TO TRANSMIT SUBPROGRAM NAME FOR WALKBACK +0 GNWLA +0240000,0 +0775302,0 RDCGCT* +0150000,LC7 +0 RDCGCR* +0150000,0 +0 UE3KA +0240000,0 +0776003,$-$ UE3KB +0 +0,LINK3 . POINT AT DYN$ FEXCNG +0150000,0 +0 CIOCTR* +0150000,LC8 . DBANK INSTRUCTION AREA +0 GENWLK* J $-$ REENT J GENWLR REENT GENWLJ* +0 RTNARG J $-$ ITEMCT +0 . NUMBER OF CONTINGENCIES +1 EOPLIJ +010000,0 . RELOCATE RELATIVE TO TEMP +0 EOP11F +040000,0 . MUST PRECEDE EOP11 EOP11 +0 STX5Z +025004 . TOO MANY DUMMY ARGUMENTS STP2D +05013 SIOBB2 +0 CDCFLG +0 IOWLK* +0 . FLAG FOR NORMAL WALKBACK WKBACK* J $-$ J WBACKR END