         TITLE ' RESIDENT TRANSIENT MANAGER.  IFDOLT18'                 00010000
         TITLE ' RESIDENT TRANSIENT MANAGER.  IFDOLT18'                 00020000
         LCLA  &T,&SPN                                            0002  00030000
.@001    ANOP                                                     0002  00040000
IFDOLT18 CSECT ,                                                  0002  00050000
         BC    15,24(0,@F)                                              00060000
         DC    C'IFDOLT18 17 NOV 73'                             0002  00070000
         STM   @E,@C,12(@D)                                       0002  00080000
         BALR  @B,0                                               0002  00090000
@PSTART  DS    0H                                                 0002  00100000
         USING @PSTART+00000,@B                                   0002  00110000
         ST    @D,@SAV001+4                                       0002  00120000
         LA    @F,@SAV001                                         0002  00130000
         ST    @F,8(0,@D)                                         0002  00140000
         LR    @D,@F                                              0002  00150000
*  GEN(USING CHASCT,2);                  /* COMMON AREA BASE REGISTER * 00160000
         USING CHASCT,2                                                 00170000
         DS    0H                                                       00180000
* GENERATE DATA;                                                        00190000
*  RESTRICT(2,3,4,5,6,7,8,9);                                           00200000
*  DCL R0 REG(0) PTR;                                                   00210000
*  DCL R1 REG(1) PTR;                                                   00220000
*  DCL R2 REG(2) PTR;                    /* POINTER TO COMMON AREA */   00230000
*  DCL R3 REG(3) PTR;                                                   00240000
*  DCL R4 REG(4) PTR;                                                   00250000
*  DCL R5 REG(5) PTR;                                                   00260000
*  DCL R6 REG(6) PTR;                                                   00270000
*  DCL R7 REG(7) PTR;                    /* REGISTER 7 */               00280000
*  DCL R8 REG(8) PTR;                                                   00290000
*  DCL R9 REG(9) PTR;                    /* REGISTER 9 */               00300000
*  DCL R11 REG(11) PTR;                  /* BASE REGISTER       X02008* 00310000
*  DCL R12 REG(12) PTR;                                                 00320000
*  DCL R13 REG(13) PTR;                                                 00330000
*  DCL R14 REG(14) PTR;                  /* RETURN REGISTER */          00340000
*  DCL R15 REG(15) PTR;                                                 00350000
*  DCL MSGMOD PTR GENERATED;             /* MESSAGE MODULE */           00360000
*  DCL SCHEDSA PTR GENERATED;            /* SCHEDULER SAVE AREA */      00370000
*  DCL LOGADR PTR GENERATED;             /* POINTER TO LOGSCAN MODULE * 00380000
*  DCL TRA000 CHAR(1) GENERATED;         /* PROGRAM LOCATION    X02008* 00390000
*  DCL TRA001 LABEL;                     /* INDIVIDUAL ENTRY POINTS */  00400000
*  DCL TRA002C LABEL;                                                   00410000
*  DCL TRA002 INT ENTRY;                 /* COMMON ENTRY POINT */       00420000
*  DCL IFDOLT23 EXT ENTRY;               /* COMMON AREA MODULE */       00430000
*  DCL IFDOLT39 EXT ENTRY;                                              00440000
*  DCL COMADR PTR INIT(ADDR(IFDOLT23));  /* COMMON AREA ADDRESS */      00450000
*  DCL WKSVC GENERATED;                  /* SVC WORK AREA */            00460000
*  DCL TABAD PTR GENERATED;              /* POINTER TO LINK TABLE */    00470000
*  DCL MCT CHAR(208) GENERATED;          /* MODULE CONTROL TABLE */     00480000
*  DCL CESWT2 GENERATED;                 /* OLTEP SWITCHES */           00490000
*  DCL CESWT6 GENERATED;                 /* OLTEP SWITCHES */           00500000
*  DCL COMMINT PTR GENERATED;            /* DYN COMMUNICATE */          00510000
*  DCL ECB3 FIXED GENERATED;             /* ECB FOR DYN COMMUNICATE */  00520000
*  DCL DEVTBPTR PTR GENERATED;           /* DEVICE TABLE PTR    X02008* 00530000
*  DCL LGWRTCT CHAR(2) GENERATED;        /* LARGE WRITE COUNT   X02008* 00540000
*  DCL LGWRTFLD PTR BASED(ADDR(LGWRTCT)-4); /* LARGE WRITE ADR  X02008* 00550000
*  DCL EXPAND1 FIXED GENERATED;          /* PARTITION SIZE            * 00560000
*  DCL OPFLG BIT(8) BASED(R9+48);        /* OPEN BIT                  * 00570000
*  DCL 1 * BIT(8) BASED(ADDR(CESWT2)),   /* OLTEP SWITCHES */           00580000
*         2 NDCFO BIT(1),                /* NO DYN COMMUN */            00590000
*         2 PLKMRB BIT(1),               /* PLINK OR MORECORE REQUEST * 00600000
*         2 FECOND BIT(1),               /* FIRST ERROR CONDITION */    00610000
*         2 * BIT(1);                    /* NA */                       00620000
*  DCL CESWT3 CHAR(1) GENERATED;         /* OLTEP SWITCHES       M4506* 00630000
*  DCL 1 * CHAR(1) BASED(ADDR(CESWT3)),  /* OLTEP SWITCHES       M4506* 00640000
*         2 * BIT(3),                    /* NA                   M4506* 00650000
*         2 GRBCTL BIT(1),               /* GRAB IN CONTROL      M4506* 00660000
*         2 SUSDEL BIT(1),               /* SUSPENDED DELETION   M4506* 00670000
*           3 * BIT(1);                  /* NA                   M4506* 00680000
*  DCL 1 * BIT(8) BASED(ADDR(CESWT6)),   /* OLTEP SWITCHES */           00690000
*         2 UTSCAL BIT(1);               /* UTS CALLER */               00700000
*  DCL CHASCT CHAR(80) GENERATED;        /* SCT ADDRESS */              00710000
*  DCL SECLST GENERATED;                 /* SECTION LIST */             00720000
*  DCL PARTITEM CHAR(12) GENERATED;      /* PARTITION ITEMS     X02008* 00730000
*  DCL 1 * BDY(WORD) BASED(ADDR(PARTITEM)), /* PARTITION ITEMS  X02008* 00740000
*         2 PARADR PTR,                  /* PARTITION ADDRESS   X02008* 00750000
*         2 PARSZ FIXED,                 /* PARTITION SIZE      X02008* 00760000
*               9 * CHAR(1);             /* NA                  X02008* 00770000
*  DCL OLTTAB PTR GENERATED;             /* LINK TABLE */               00780000
*  DCL SECPTR PTR GENERATED;             /* UTS GENERATED */            00790000
*  DCL HRTSEL CHAR(2) GENERATED;         /* HIGHEST ROUTINE BYTES */    00800000
*  DCL 1 * BASED(ADDR(HRTSEL)),          /* HIGHEST ROUTINE BYTES */    00810000
*         2 TERTN CHAR(1),               /* LAST ROUTINE IN UTS */      00820000
*         2 HIRTN CHAR(1);               /* HIGHEST ROUTINE SELECTED */ 00830000
*  DCL 1 * BASED(ADDR(OLTTAB)),          /* LINK TABLE */               00840000
*         2 *(8) PTR,                    /* ENTRY POINTS FOR MACROS */  00850000
*         2 TMCOMAD PTR,                 /* TRANSIENT MANAGER AREA */   00860000
*         2 SECPRF PTR,                  /* SECTION PREFACE ADDRESS */  00870000
*           3 * PTR;                     /* LAST POINTER */             00880000
*  DCL 1 * BASED(R3+4),                  /* FLAG SECTION OF ROUTINE */  00890000
*         2 RTNEXT PTR,                  /* NEXT ROUTINE ADDRESS */     00900000
*         2 RTNN CHAR(1),                /* ROUTINE NUMBER */           00910000
*         2 REFN CHAR(1),                /* REFERENCE NUMBER */         00920000
*         2 RFLG BIT(8),                 /* ROUTINE FLAGS */            00930000
*           3 MIMK BIT(1),               /* MI MASK BIT */              00940000
*           3 TERM BIT(1),               /* TERMINATION BIT */          00950000
*           3 * BIT(1);                  /* END OF BYTE */              00960000
*  DCL RTN CHAR(1) BASED(R7);            /* ROUTINE NUMBER */           00970000
*  DCL REFNUM CHAR(1) BASED(R7+17);      /* REFERENCE NUMBER */         00980000
*  DCL 1 * BASED(ADDR(CHASCT)),          /* SECTION CONTROL TABLE */    00990000
*         2 SCTW0 FIXED,                 /* SCT WORD 0 */               01000000
*           3 * CHAR(2),                 /* FIRST BYTES OF WORD */      01010000
*           3 * BIT(8),                  /* BYTE OF BITS */             01020000
*             4 * BIT(5),                /* BIT ALIGNMENT */            01030000
*             4 NPR BIT(1),              /* NO PRINT INDICATOR */       01040000
*           3 * BIT(8),                  /* FLAGS */                    01050000
*             4 ERBT BIT(1),             /* ERROR BIT FOR ROUTINE */    01060000
*             4 ASTERB BIT(1),           /* ASTERISK INDICATES ERROR */ 01070000
*             4 CATB1 BIT(1),            /* CATASTROPHIC BIT */         01080000
*             4 * BIT(3),                /* NA */                       01090000
*             4 ERLOP BIT(1),            /* ERROR LOOP */               01100000
*         2 SCTW1 FIXED,                 /* SCT WORD 1 */               01110000
*         2 SCTW2 FIXED,                 /* SCT WORD 2 */               01120000
*         2 SCTW3 FIXED,                 /* SCT WORD 3 */               01130000
*         2 SCTW4 FIXED,                 /* SCT WORD 4 */               01140000
*         2 SCTW5 FIXED,                 /* SCT WORD 5 */               01150000
*         2 SCTW6 FIXED,                 /* SCT WORD 6 */               01160000
*         2 SCTW7 FIXED,                 /* SCT WORD 7 */               01170000
*         2 SCTW8 FIXED,                 /* SCT WORD 8 */               01180000
*           3 * CHAR(1),                 /* ROUTINE MASK COUNT LENGTH * 01190000
*           3 * BIT(8),                  /* FLAGS */                    01200000
*             4 * BIT(5),                /* NA                  X02008* 01210000
*             4 CLEANUP BIT(1),          /* UTS CLEAN UP ENTRY  X02008* 01220000
*           3 SCTW82 FIXED(15),          /* UTS SIZE IN FULL WORDS */   01230000
*         2 SCTW9 FIXED,                 /* SCT WORD 9 */               01240000
*           3 * BIT(8),                  /* FLAGS */                    01250000
*             4 MIBT BIT(1),             /* MI BIT */                   01260000
*            4 CLEANRT BIT(1),           /* OLT HAS CLEANUP     X03008* 01270000
*            4 * BIT(2),                 /* NA                  X03008* 01280000
*             4 RETCODE BIT(1),          /* RETURN CODE SUPPORT X02008* 01290000
*             4 TRACE BIT(1),            /* TRACE FUNCTION      X02008* 01300000
*           3 * CHAR(1),                                                01310000
*           3 SCTW9C CHAR(2),                                           01320000
*         2 SCTW10 FIXED,                /* SCT WORD 10 TO 17 */        01330000
*         2 *(2) PTR;                    /* TOTE USE */                 01340000
*  DCL 1 * BASED(R5),                    /* ROUTINE MASK */             01350000
*         2 RTN8(32) CHAR(1);            /* ROUTINE MASK ADDRESS */     01360000
*  DCL 1 * BASED(R5),                    /* ROUTINE TO RUN */           01370000
*         2 RTNB BIT(8);                 /* INDIVIDUAL ROUTINE */       01380000
*  DCL RST15 PTR BASED(R13+16);          /* REG 15 SAVED */             01390000
*  DCL 1 * BASED(R13),                   /* SAVE AREA           X02008* 01400000
*         2 * FIXED,                     /* FIRST WORD          X02008* 01410000
*         2 CHNBK PTR,                   /* CALLER SAVE AREA    X02008* 01420000
*         2 SR13 PTR,                    /* REG 13 SAVED        X02008* 01430000
*         2 SR14 PTR,                    /* REG 14 SAVED        X02008* 01440000
*         2 SR15 PTR,                    /* REG 15 SAVED        X02008* 01450000
*         2 SR0 PTR,                     /* REG 0 SAVED         X02008* 01460000
*         2 SR1 PTR,                     /* REG 1 SAVED         X02008* 01470000
*           3 * PTR;                     /* LAST ITEM           X02008* 01480000
*  DCL 1 I FIXED,                        /* FIXED WORD WORK AREAX02008* 01490000
*         2 * CHAR(3),                   /* WORK BYTES          X02008* 01500000
*         2 I4 CHAR(1);                  /* WORK BYTE           X02008* 01510000
*  DCL RID CHAR(1) BASED(ADDR(MCT)+9);   /* ROOT ID BLOCK       X02008* 01520000
*  DCL 1 MCA BDY(WORD) BASED(R8),        /* MODULE CONTROL TABLEX02008* 01530000
*         2 MPRE PTR,                    /* PREVIOUS MCT IF ANY X02008* 01540000
*         2 MNXT PTR,                    /* NEXT MCT IF ANY     X02008* 01550000
*         2 MITEM(20) CHAR(6),           /* MCT ENTRY FORMAT    X02008* 01560000
*           3 MNM CHAR(2),               /* MODULE INDICATOR    X02008* 01570000
*             4 MNM1 CHAR(1),            /* FIRST INDICATOR BYTEX02008* 01580000
*               5 MB1 BIT(1),            /* NOT TO DELETE BIT   X02008* 01590000
*               5 MB2 BIT(1),            /* PRESENTLY ACTIVE BITX02008* 01600000
*               5 * BIT(5),              /* WORK BITS           X02008* 01610000
*               5 MB8 BIT(1),            /* WORK BIT            X02008* 01620000
*             4 MNM2 CHAR(1),            /* MODULE BLOCK ID     X02008* 01630000
*           3 MNAM CHAR(2),              /* OLTEP MODULE ID     X02008* 01640000
*             4 MN1 CHAR(1),             /* FIRST BYTE OF ID    X02008* 01650000
*           3 MMSIZ CHAR(2),             /* MODULE SIZE         X02008* 01660000
*         2 TITEM(20) PTR;               /* ADDRESS TABLE       X02008* 01670000
*  DCL MCTADS CHAR(1) BASED(R8+128);     /* MCT ADDRESSES       X02008* 01680000
*  DCL TADR(20) PTR BASED(R5);           /* MODULES ADDRESSES   X02008* 01690000
*  DCL 1 BMCT18 BIT(8),                  /* MCT INDICATORS      X02008* 01700000
*         2 BMCT12 BIT(2),               /* CORE FOR MCT        X02008* 01710000
*           3 BMCT1 BIT(1),              /* FIRST ATTEMPT MADE  X02008* 01720000
*           3 BMCT2 BIT(1),              /* SECOND ATTEMPT MADE X02008* 01730000
*         2 PLKBIT BIT(1),               /* PLINK REQUEST       X02008* 01740000
*         2 MOD8 BIT(1),                 /* EIGHT CHARACTER NAMEX02008* 01750000
*         2 BMCT45 BIT(2),               /* CORE DELETED        X02008* 01760000
*           3 BMCT4 BIT(1),              /* CORE DELETED        X02008* 01770000
*           3 BMCT5 BIT(1),              /* MORECORE REQUEST    X02008* 01780000
*         2 MINMOR BIT(1),               /* MINIMUM MORECORE    X02008* 01790000
*             4 * BIT(1);                /* LAST BIT            X02008* 01800000
*  DCL 1 SVR14 PTR BASED(CHNBK+12),      /* REG 14 SAVE AREA */         01810000
*         2 SVR141 CHAR(1);              /* 1ST BYTE OF REG 14 SAVED */ 01820000
*  DCL SV15 PTR BASED(CHNBK+16);         /* REG 15 SAVE AREA */         01830000
*  DCL SVR3 PTR BASED(CHNBK+32);         /* REG 3 SAVED */              01840000
*  DCL 1 * BASED(R3),                    /* PARAMETER LIST */           01850000
*         2 PMW1 CHAR(10),               /* PARM LIST           X02008* 01860000
*           3 * CHAR(1),                 /* NA                  X02008* 01870000
*           3 PLEV CHAR(1),              /* MACRO LEVEL         X02008* 01880000
*           3 PLID CHAR(2),              /* MACRO ID            X02008* 01890000
*             4 * CHAR(1);               /* NA                  X02008* 01900000
*  DCL MIRTNM CHAR(4) BASED(R1+20);      /* ROUTINE NUMBER      X02008* 01910000
*  DCL CLIST CHAR(16)                    /* EBCDIC CHARACTERS   X02008* 01920000
*         INIT('0123456789ABCDEF');                                     01930000
*  DCL EBCD CHAR(1) BASED(R8);           /* EBCDIC CHARACTER    X02008* 01940000
*  DCL 1 RETMSG CHAR(41)                                                01950000
*         INIT('IFD450I * RTN XXX,ID YY,AT ZZZZZZZZ,RC WW'),            01960000
*         2 * CHAR(8),                   /* MESSAGE ID          X02008* 01970000
*         2 RTAST CHAR(1),               /* ASTERISK OR BLANK   X02008* 01980000
*         2 * CHAR(4),                   /* NA                  X02008* 01990000
*         2 RTNM14 CHAR(4),              /* BYTES IN GROUP      X02008* 02000000
*           3 * CHAR(1),                 /* NA                  X02008* 02010000
*           3 RTRTNM CHAR(3),            /* ROUTINE NUMBER      X02008* 02020000
*         2 * CHAR(4),                   /* NA                  X02008* 02030000
*         2 RTMCID CHAR(2),              /* MACRO ID            X02008* 02040000
*         2 * CHAR(4),                   /* NA                  X02008* 02050000
*         2 RTLOC CHAR(8),               /* RETURN LOCATION     X02008* 02060000
*         2 * CHAR(4),                   /* NA                  X02008* 02070000
*         2 RTTERM CHAR(2);              /* RETURN CODE         X02008* 02080000
*  DCL 1 * CHAR(8) BASED(R7),            /* RETURN CODE AREA    X02008* 02090000
*         2 RTLOC1 CHAR(1),              /* 1ST LOCATION        X02008* 02100000
*         2 RTLOC2 CHAR(1),              /* 2ND LOCATION        X02008* 02110000
*         2 NXTRTL CHAR(1);              /* NEXT LOCATION       X02008* 02120000
*  DCL 1 * BASED(R5),                    /* ADDRESS TABLE */            02130000
*         2 TAB1 PTR,                    /* ADDRESS TABLE ENTRY */      02140000
*         2 TAB2 PTR;                    /* NEXT ENTRY IN TABLE */      02150000
*  DCL 1 * BASED(R4),                    /* BRANCH INSTRUCTION TABLE */ 02160000
*         2 * CHAR(4),                   /* BRANCH INSTRUCTION */       02170000
*         2 MIDOLD CHAR(2),              /* MODULE ID */                02180000
*           3 MIDOLD1 CHAR(1),           /* FIRST CHARACTER OF ID */    02190000
*         2 MAC2 CHAR(4);                /* NEXT BRANCH INSTRUCTION */  02200000
*  DCL 1 * BASED(R6),                    /* MODULE CONTROL TABLE */     02210000
*         2 *(2) PTR,                    /* MCT POINTERS */             02220000
*         2 * CHAR(1),                   /* INDICATORS */               02230000
*           3 * BIT(1),                  /* NA                   M4506* 02240000
*           3 ACTMD BIT(1),              /* ACTIVE MODULE        M4506* 02250000
*         2 MBK1 CHAR(1),                /* BLOCK ASSIGNMENT */         02260000
*         2 MID1 CHAR(2),                /* MODULE IDENTITY */          02270000
*         2 MSZ1 CHAR(2);                /* MODULE SIZE */              02280000
*  DCL MCT2 BASED(R6+6);                 /* NEXT ITEM IN MCT */         02290000
*  DCL 1 TMCOM BDY(WORD),                /* TRANSIENT MODULE COMMON */  02300000
*         2 WKAREA CHAR(60) BDY(WORD),   /* BLDL AND WORK AREA  X02008* 02310000
*           3 * FIXED(15) INIT(1),       /* NUMBER OF ENTRIES */        02320000
*           3 * FIXED(15) INIT(56),      /* SIZE OF EACH ENTRY  X02008* 02330000
*           3 WITEM CHAR(32),            /* BLDL ITEM */                02340000
*             4 WTOTNM CHAR(8),          /* MODULE NAME */              02350000
*               5 WNM CHAR(6) INIT('IFDOLT'), /* COMMON PART OF NAME */ 02360000
*               5 WNAM CHAR(2),          /* VARYING PART MODULE NAME */ 02370000
*             4 WTTRK CHAR(6),           /* MODULE LOCATION */          02380000
*               5 * CHAR(2),             /* TRACK AND CYLINDER */       02390000
*               5 WR CHAR(1),            /* RECORD */                   02400000
*             4 * CHAR(11),              /* BLDL DATA */                02410000
*             4 WMSIZ CHAR(2),           /* MODULE SIZE */              02420000
*             4 * CHAR(1),               /* SPARE BYTE */               02430000
*           3 WK24 CHAR(24) BDY(WORD),   /* WORK BYTES          X02008* 02440000
*             5 GAVL CHAR(8),            /* CORE LIST           X02008* 02450000
*             5 GSIZS CHAR(8),           /* SIZES               X02008* 02460000
*             5 GAVL1 BDY(WORD) CHAR(8), /* WORK AREA           X02008* 02470000
*         2 KNT CHAR(8)                  /* OLTEP MODULE NAME */        02480000
*               INIT('IFDOLT  '),        /* IDENTITY OF OLTEP MODULES * 02490000
*           3 KNAME CHAR(6),             /* COMMON PART MODULE NAME */  02500000
*           3 KNMV CHAR(2),              /* VARYING PART MODULE NAME */ 02510000
*         2 MODNN CHAR(8)                /* NON-OLTEP MODULE NAME */    02520000
*               INIT('IFDOLT  '),        /* INITIALLY ALL OLTEP NAMES * 02530000
*           3 MODNN6 CHAR(6),            /* FIRST SIX LETTERS OF NAME * 02540000
*         2 BDEL FIXED INIT(1),          /* BLOCK INDICATORS    S21937* 02550000
*           3 BIN CHAR(1),               /* BLOCK SEQUENCING */         02560000
*           3 WK1BYT CHAR(1),            /* WORK BYTE */                02570000
*           3 BHB CHAR(1),               /* HIGHEST BLOCK ASSIGNED */   02580000
*           3 BHLD CHAR(1),              /* LAST HIGH BLOCK DELETED */  02590000
*         2 GTCOR PTR,                   /* ADDRESS OF OBTAINED CORE */ 02600000
*         2 SVPMW1 CHAR(10),             /* DATA SAVED FROM PARM LIST * 02610000
*           3 SVP1 CHAR(2),              /* MODULE INDICATORS */        02620000
*             4 P1BITS BIT(8),           /* BIT INDICATORS */           02630000
*               5 P1B0 BIT(1),           /* EIGHT CHARACTER NAME */     02640000
*               5 P1B1 BIT(1),           /* NOT A MODULE REQUEST */     02650000
*             5 P1B23 BIT(2),            /* LOAD DELETE BITS     M4506* 02660000
*               7 P1B2 BIT(1),           /* LOAD MODULE          M4506* 02670000
*               7 P1B3 BIT(1),           /* DELETE MODULE        M4506* 02680000
*               5 P1B4 BIT(1),           /* WORK BIT */                 02690000
*               5 P1B5 BIT(1),           /* UNIT TEST MODULE */         02700000
*               5 P1B6 BIT(1),           /* ROOT MODULE */              02710000
*               5 P1B7 BIT(1),           /* OLD MODULE AND WORK BIT */  02720000
*             4 SVPL CHAR(1),            /* MACRO LEVEL */              02730000
*           3 SVP8 CHAR(8),              /* EIGHT CHARACTER NAME */     02740000
*             4 SVP2 CHAR(2);            /* TWO CHARACTER NAME */       02750000
*  DCL VID CHAR(2) BASED(ADDR(WKSVC)+2); /* MODULE ID FOR SVC USE */    02760000
*  DCL NXMCT PTR BASED(R8+4);            /* NEXT MCT */                 02770000
*  DCL MCTAD1 PTR BASED(R8+128);         /* FIRST ADDRESS IN MCT */     02780000
*  DCL 1 * BDY(WORD) BASED(ADDR(MCT)+128), /* MCT ADDRESSES */          02790000
*         2 RTADR1 PTR,                  /* ROOT MODULE ADDRESS */      02800000
*         2 TMADR1 PTR,                  /* TRANSIENT MANAGER ADDRESS * 02810000
*         2 *(18) PTR;                   /* ADDRESSES */                02820000
*  DCL OLDMAC CHAR(2) INIT('0102'X);     /* OLD MACRO INDICATORS */     02830000
*  DCL 1 * BASED(R1),                    /* WTO ADDRESS */              02840000
*         2 * CHAR(13),                  /* SET VALUES AND IDENTITY */  02850000
*         2 WTOFORM CHAR(60);            /* MESSAGE TEXT */             02860000
*  DCL 1 BLDLIST BASED(R5),              /* BLDL LIST           X02008* 02870000
*         2 LENTCT FIXED(15),            /* NUMBER OF ENTRIES */        02880000
*         2 LENTSZ FIXED(15);            /* SIZE OF EACH ENTRY */       02890000
*  DCL 1 * BDY(WORD) BASED(ADDR(WK24)),  /* NA                  X02008* 02900000
*         2 AVADR PTR,                   /* CORE LOCATION       X02008* 02910000
*         2 AVSEZ FIXED,                 /* CORE SIZE           X02008* 02920000
*           3 * CHAR(2),                 /* NA                  X02008* 02930000
*           3 AVSIZ CHAR(2),             /* SIZE LIMITED        X02008* 02940000
*         2 LOSIZ FIXED,                 /* MINIMUM CORE REQUESTX02008* 02950000
*         2 HHSIZ FIXED,                 /* MAXIMUM CORE REQUESTX02008* 02960000
*           3 HHSIZC CHAR(4),            /* MAXIMUM CORE REQUESTX02008* 02970000
*             4 * CHAR(2),               /* NA                  X02008* 02980000
*             4 HISIZ CHAR(2),           /* MAXIMUM SIZE        X02008* 02990000
*               9 * CHAR(1);             /* NA                  X02008* 03000000
*  DCL WK1PTR PTR;                       /* WORK AREA POINTER   X02008* 03010000
*  DCL SAVR8 PTR;                        /* SAVE AREA           X02008* 03020000
*  DCL 1 * BDY(WORD) BASED(ADDR(WKAREA)), /* BLDL AND WORK AREA X02008* 03030000
*         2 *(5) PTR,                    /* FIRST FIVE WORDS    X02008* 03040000
*         2 NMCT CHAR(14),               /* SIMULATE NEW MCT    X02008* 03050000
*           3 NTADR PTR;                 /* NEW ADDRESS TABLE   X02008* 03060000
*  DCL 1 BLIST1 CHAR(60) BASED(R5),      /* BLDL LIST           X02008* 03070000
*         2 * CHAR(4),                   /* ENTRY SIZE AND COUNT */     03080000
*         2 * CHAR(8),                   /* NAME OF MODULE */           03090000
*           3 LNM2 CHAR(6),              /* COMMON PART OF NAME */      03100000
*           3 LNAM2 CHAR(2),             /* VARYING PART OF NAME */     03110000
*         2 LTTRK CHAR(6),               /* DATA LOCATION */            03120000
*           3 * CHAR(2),                 /* TRACK LOCATION */           03130000
*           3 LR CHAR(1),                /* RECORD NUMBER */            03140000
*         2 * CHAR(11),                  /* USER DATA */                03150000
*         2 LSIZ CHAR(2);                /* MODULE SIZE */              03160000
*  DCL BLIST2 BASED(R5+56);              /* NEXT BLDL ITEM      X02008* 03170000
*  DCL 1 * BDY(WORD) BASED(ADDR(TMCOM)+12), /* NA               X02008* 03180000
*         2 SV1T8 CHAR(8),               /* WORK AREA           X02008* 03190000
*           3 SV1 FIXED,                 /* 1ST HEX CHAR AREA   X02008* 03200000
*           3 SV2 FIXED,                 /* 2ND HEX CHAR AREA   X02008* 03210000
*           7 * CHAR(1);                 /* NA                  X02008* 03220000
*  DCL 1 * BASED(R5),                    /* SAVE AREA           X02008* 03230000
*         2 SV1C CHAR(1),                /* 1ST CHARACTER       X02008* 03240000
*         2 NXTSVC CHAR(3),              /* NEXT CHARACTERS     X02008* 03250000
*         2 SV2C CHAR(1);                /* 2ND WORD            X02008* 03260000
*  DCL MDMASK CHAR(1) BASED(R4);         /* MODULE MASK BIT     X02008* 03270000
*  DCL FKLKTBA PTR GENERATED;            /* FAKE TABLE ADDRESS  X02008* 03280000
*  DCL 1 * BDY(WORD) BASED(R2),          /* CHASCT              X02008* 03290000
*         2 *(17) PTR,                   /* NA                  X02008* 03300000
*         2 * PTR,                       /* NA                  X02008* 03310000
*           3 * CHAR(2),                 /* NA                  X02008* 03320000
*           3 RTMASK CHAR(1),            /* RETURN CODE MASK    X02008* 03330000
*         2 *(2) PTR,                    /* NA                  X02008* 03340000
*         2 SCTW20 PTR,                  /* BRANCH TABLE ADDRESSX02008* 03350000
*           3 * PTR;                     /* NA                  X02008* 03360000
*  DCL UTRET PTR BDY(WORD) INIT(0);      /* UTS RETURN ADDRESS  X02008* 03370000
*  DCL 1 BRID CHAR(2),                   /* BRANCH ID           X02008* 03380000
*         2 BRID1 CHAR(1),               /* FIRST ID BYTE       X02008* 03390000
*           3 BRIDB14 BIT(4);            /* ID BITS             X02008* 03400000
*  DCL 1 LIST CHAR(9) LOCAL INT,         /* WORK LIST           X02008* 03410000
*         2 RR CHAR(1),                  /* WORK BYTE           X02008* 03420000
*         2 MASK(8) CHAR(1)              /* MASK BITS           X02008* 03430000
*         INIT('80'X,'40'X,'20'X,'10'X,  /* BIT SET IN EACH MASK */     03440000
*              '08'X,'04'X,'02'X,'01'X); /* BIT SET IN EACH MASK */     03450000
*  DCL 1 * BASED(MSGMOD),                /* MESSAGE MODULE */           03460000
*         2 *(14) PTR,                   /* NA                  X02008* 03470000
*         2 IFD160 PTR,                  /* POINTER TO IFD160 MESSAGE * 03480000
*         2 * PTR,                       /* NA                        * 03490000
*         2 IFD210 PTR,                  /* PTR TO IFD210 MSG         * 03500000
*         2 * PTR,                       /* NA                        * 03510000
*         2 IFD168 PTR,                 /* PTR TO IFD168 MSG    S20203* 03520000
*         2 *(18) PTR,                   /* NA                  Y02008* 03530000
*         2 IFD229 PTR,                  /* PTR TO IFD229I MSG  Y02008* 03540000
*           3 * PTR;                     /* LAST POINTER */             03550000
*  DCL 1 * BASED(R1),                   /*                      S20203* 03560000
*    2 LENGTH CHAR(1),                  /* LENGTH OF RESPONSE   S20203* 03570000
*    2 BUFAD PTR(24),                   /* ADDR OF RESP BUFFER  S20203* 03580000
*    2 MECBAD PTR;                      /* ECB ADDRESS          S20203* 03590000
*  DCL 1 * BASED(ADDR(ECB3)),            /* ECB FOR DYN COMMUNICATE */  03600000
*         2 * CHAR(1),                   /* FIRST BYTE */               03610000
*           3 * BIT(1),                  /* BIT ALIGNMENT */            03620000
*           3 ECB3POST BIT(1);           /* DYN COMMUNICATE BIT */      03630000
*  DCL 1 * BDY(WORD) BASED(ADDR(TRA000)-12), /* WORK AREA       X02008* 03640000
*         2 MCTTWO CHAR(208),            /* SECOND MCT                * 03650000
*           3 FSTMCT PTR,                /* FIRST MCT PTR             * 03660000
*           3 RMCT2 CHAR(204);           /* REST OF SECOND MCT        * 03670000
*  DCL 1 * BDY(WORD),                    /* STORAGE AREA              * 03680000
*         2 SVDYN(18) PTR,               /* DYN SAVE AREA */            03690000
*         2 SVT13 PTR,                   /* TRANSIENT MANAGER AREA */   03700000
*         2 SVU13 PTR,                   /* UTS SAVE AREA */            03710000
*           3 * PTR;                     /* NA */                       03720000
*  DCL CESWTR CHAR(1) GENERATED;        /* REI SWITCHES         S20203* 03730000
*  DCL 1 * CHAR(1) BASED(ADDR(CESWTR)),  /* REI SWITCHES        S20203* 03740000
*    2 * BIT(1),                        /* NA                   S20203* 03750000
*    2 REMERR BIT(1),                   /* ERROR FLAG           S20203* 03760000
*    2 REMNOMSG BIT(1),                 /* REMOTE NO MSG        S20203* 03770000
*     2 CENOMSG BIT(1),                  /* ONSITE NO MSG       S20203* 03780000
*         2 TRANSMSG BIT(1),             /*                     S20203* 03790000
*  2 * BIT(1),                          /*                      S20203* 03800000
*           2 * BIT(2);                  /*                     S20203* 03810000
*  DCL CESWTR1 CHAR(1) GENERATED;       /* REI SWITCHES         S20203* 03820000
*  DCL 1 * CHAR(1) BASED(ADDR(CESWTR1)),  /*                    S20203* 03830000
*           2 ILLRESP BIT(1),            /*                     S20203* 03840000
*    2 EXECANS BIT(1),                  /* ANS TO IFD104E       S20203* 03850000
*    2 * BIT(2),                        /* NA                   S20203* 03860000
*    2 RETRIEVE BIT(1),                 /* MSG IN FROM REMOTE   S20203* 03870000
*           2 REMANS BIT(1),             /*                     S20203* 03880000
*           2 * BIT(2);                  /*                     S20203* 03890000
*  DCL CESWTR2 CHAR(1) GENERATED;        /*  REI SWITCHES       S20203* 03900000
*  DCL 1 * CHAR(1) BASED(ADDR(CESWTR2)),  /* REI SWITCHES       S20203* 03910000
*         3 * BIT(2),                    /*                     S20203* 03920000
*         3 ONCOMM BIT(1),               /* ONSITE DYNCOMM      S20203* 03930000
*         3 RECOMM BIT(1),               /* REMOTE TALK IN      S20203* 03940000
*         3 * BIT(4);                    /*                     S20203* 03950000
*  DCL TALKECB FIXED GENERATED;         /* ECB FOR CE TO RE     S20203* 03960000
*  DCL 1 * BASED(ADDR(TALKECB)),        /*                      S20203* 03970000
*    2 * CHAR(1),                       /* FIRST BYTE           S20203* 03980000
*      3 * BIT(1),                      /* BIT ALIGNMENT        S20203* 03990000
*      3 TALKPOST BIT(1);               /* CE COMMUNICATION     S20203* 04000000
*  DCL REIECB FIXED GENERATED;          /* REMOTE ECB           S20203* 04010000
*  DCL 1 * BASED(ADDR(REIECB)),         /* REMOTE ECB           S20203* 04020000
*    2 * CHAR(1),                       /* FIRST BYTE           S20203* 04030000
*      3 * BIT(1),                      /* BIT ALIGNMENT        S20203* 04040000
*      3 REIPOST BIT(1);                /* REMOTE ANSWERED BIT  S20203* 04050000
*  DCL RTALKBUF PTR GENERATED;          /* PTR TO DED BUF       S20203* 04060000
*  DCL DEDBUF CHAR(72) BASED(RTALKBUF);  /* DEDICATED BUFFER    S20203* 04070000
*  DCL PRTBUFR CHAR(124) GENERATED;     /* PRINT BUFFER         S20203* 04080000
*  DCL TALKID CHAR(8) BASED(ADDR(PRTBUFR)+1);  /*               S20203* 04090000
*  DCL RPTBUF CHAR(115) BASED(ADDR(PRTBUFR)+9);   /* PRT BUF    S20203* 04100000
*  DCL RTALKID CHAR(8) INIT('IFD255I ');  /*                    S20203* 04110000
*  DCL MHRPTR PTR GENERATED;            /* PTR TO MHR           S20203* 04120000
*    GEN(EJECT);                                                        04130000
         EJECT                                                          04140000
         DS    0H                                                       04150000
* /*********************************/                                   04160000
* /***   INITIALIZE LINK TABLE   ***/                                   04170000
* /*********************************/                                   04180000
*  GEN(CNOP  0,4);                                                      04190000
         CNOP  0,4                                                      04200000
         DS    0H                                                       04210000
*  GEN;                                                                 04220000
TRA000   DS    0F                                              X02008   04230000
         DS    0H                                                       04240000
*  TMCOMAD=ADDR(TMCOM);                  /* TRANSIENT MANAGER AREA */   04250000
         LA    @F,TMCOM                                           0130  04260000
         ST    @F,A00009+32                                       0130  04270000
*  R8=ADDR(MCT);                         /* MCT ADDRESS */              04280000
         LA    @8,MCT                                             0131  04290000
*  R5=TABAD;                             /* LINK TABLE ADDRESS */       04300000
         L     @5,TABAD                                           0132  04310000
*  R4=ADDR(TRA001);                      /* FIRST ADDRESS FOR TABLE */  04320000
         LA    @4,TRA001                                          0133  04330000
*  DO R6=8 TO 1 BY -1;                   /* INITIALIZE TABLE */         04340000
         LA    @6,8                                               0134  04350000
*    TAB1=R4;                            /* STORE ADDRESS INTO TABLE */ 04360000
@DO9FF   ST    @4,0(0,@5)                                         0135  04370000
*    R5=ADDR(TAB2);                      /* NEXT TABLE ENTRY */         04380000
         LA    @5,4(0,@5)                                         0136  04390000
*    R4=ADDR(MAC2);                      /* NEXT ADDRESS TO STORE */    04400000
         LA    @4,6(0,@4)                                         0137  04410000
*  END;                                  /* COMPLETE WHOLE TABLE */     04420000
*  R5=DEVTBPTR;                          /* BLDL LIST ADDRESS   X02008* 04430000
         BCT   @6,@DO9FF                                          0138  04440000
         L     @5,DEVTBPTR                                        0139  04450000
*  R6=R8;                                /* MCT ADDRESS */              04460000
         LR    @6,@8                                              0140  04470000
*  VID=MID1;                             /* OLTEP MODULE ID */          04480000
         MVC   VID(2),10(@6)                                      0141  04490000
*  LENTSZ=56;                            /* ENTRY SIZE IN BLDL  X02008* 04500000
         LA    @F,56                                              0142  04510000
         STH   @F,2(0,@5)                                         0142  04520000
*  LENTCT=10;                            /* ENTRIES IN BLDL */          04530000
         LA    @F,10                                              0143  04540000
         STH   @F,0(0,@5)                                         0143  04550000
*  DO R4=10 TO 1 BY -1;                  /* COUNT OF ENTRIES */         04560000
         LR    @4,@F                                              0144  04570000
*    LNM2=KNAME;                         /* COMMON PART MODULE NAME */  04580000
@DO9FB   MVC   4(6,@5),TMCOM+60                                   0145  04590000
*    LNAM2=MID1;                         /* VARYING PART MODULE NAME */ 04600000
         MVC   10(2,@5),10(@6)                                    0146  04610000
*    R5=ADDR(BLIST2);                    /* NEXT ENTRY IN BLDL */       04620000
         LA    @5,56(0,@5)                                        0147  04630000
*    R6=ADDR(MCT2);                      /* NEXT ITEM IN MCT */         04640000
         LA    @6,6(0,@6)                                         0148  04650000
*  END;                                  /* ALL OLD MODULES IN BLDL */  04660000
*  R5=DEVTBPTR;                          /* BLDL LIST ADDRESS   X02008* 04670000
         BCT   @4,@DO9FB                                          0149  04680000
         L     @5,DEVTBPTR                                        0150  04690000
*  R0=R5;                                /* LIST ADDRESS FOR BLDL */    04700000
         LR    @0,@5                                              0151  04710000
*  GEN(BLDL  0,(0));                     /* ISSUE BLDL SYSTEM MACRO */  04720000
         BLDL  0,(0)                                                    04730000
         DS    0H                                                       04740000
* /*************************************************/                   04750000
* /***   INITIALIZE FIRST MODULE CONTROL TABLE   ***/                   04760000
* /*************************************************/                   04770000
*  R6=R8;                                /* MCT ADDRESS */              04780000
         LR    @6,@8                                              0153  04790000
*  MBK1=RTADR1/2048;                     /* ROOT MODULE BLOCK ID */     04800000
         L     @E,A00057                                          0154  04810000
         SRA   @E,11                                              0154  04820000
         STC   @E,9(0,@6)                                         0154  04830000
*  LGWRTCT=LSIZ;                         /* LARGE WRITE COUNT   X02008* 04840000
         MVC   LGWRTCT(2),29(@5)                                  0155  04850000
*  IF MBK1='00'X THEN                    /* TEST ROOT MODULE BLOCK ID * 04860000
         CLI   9(@6),X'00'                                        0156  04870000
         BC    07,@9F7                                            0156  04880000
*    MBK1='01'X;                         /* REASSIGN BLOCK ID */        04890000
         MVI   9(@6),X'01'                                        0157  04900000
*  DO R4=10 TO 1 BY -1;                  /* COUNT OF ENTRIES */         04910000
@9F7     LA    @4,10                                              0158  04920000
*    IF LR^='00'X THEN                   /* TEST IF MODULE PRESENT */   04930000
@DO9F6   CLI   14(@5),X'00'                                       0159  04940000
         BC    08,@9F2                                            0159  04950000
*      MSZ1=LSIZ+48;                     /* MODULE SIZE RECORDED */     04960000
         LA    @F,48                                              0160  04970000
         MVC   @TEMP2+2(2),29(@5)                                 0160  04980000
         A     @F,@TEMP2                                          0160  04990000
         STH   @F,12(0,@6)                                        0160  05000000
*    BLIST1=BLIST1&&BLIST1;              /* ZERO OUT AREA IN BLDL */    05010000
@9F2     XC    0(60,@5),0(@5)                                     0161  05020000
*    R5=ADDR(BLIST2);                    /* NEXT ENTRY IN BLDL */       05030000
         LA    @5,56(0,@5)                                        0162  05040000
*    R6=ADDR(MCT2);                      /* NEXT ITEM IN MCT */         05050000
         LA    @6,6(0,@6)                                         0163  05060000
*  END;                                  /* ALL ENTRIES RECORDED */     05070000
*  SCTW20=FKLKTBA;                       /* LINK TABLE FOR UTS  X02008* 05080000
         BCT   @4,@DO9F6                                          0164  05090000
         MVC   80(4,@2),FKLKTBA                                   0165  05100000
*  RMCT2=RMCT2&&RMCT2;                   /* ZERO SECOND MCT           * 05110000
         XC    A00090+4(204),A00090+4                             0166  05120000
*  GOTO TRA016;                          /* RETURN */                   05130000
         BC    15,TRA016                                          0167  05140000
*  GEN;                                                                 05150000
         DS    0F                                                       05160000
FKLKTBA  DC    A(TRA000A-28)            FAKE LINK TABLE ADDRESS         05170000
TRA000A  DC    A(TRA001A)               ENTRY FROM UTS                  05180000
         DS    0H                                                       05190000
* TRA001:                                                               05200000
*  GEN;                                                                 05210000
TRA001   EQU   *                                                  0169  05220000
UN       EQU   15                                                       05230000
         BC    UN,TRA002-*(R15)         OLD EXIO                        05240000
         DC    CL2'05'                  EXIO ID                         05250000
         BC    UN,TRA002-*(R15)         OLD WAITIO                      05260000
         DC    CL2'06'                  WAITIO ID                       05270000
         BC    UN,TRA002-*(R15)         OLD COMPARE                     05280000
         DC    CL2'09'                  COMPARE ID                      05290000
         BC    UN,TRA002-*(R15)         OLD CONVERT                     05300000
         DC    CL2'10'                  CONVERT ID                      05310000
         BC    UN,TRA002-*(R15)         OLD CECOM                       05320000
         DC    CL2'13'                  CECOM ID                        05330000
         BC    UN,TRA002-*(R15)         OLD DPRINT                      05340000
         DC    CL2'08'                  DPRINT ID                       05350000
         BC    UN,TRA002-*(R15)         OLD RDATA                       05360000
         DC    CL2'11'                  RDATA ID                        05370000
         BC    UN,TRA002-*(R15)         NEW MACRO ENTRY                 05380000
         DC    XL2'0100'                NEW MODULES                     05390000
TRA001A  BC    UN,TRA002-*(R15)         UTS ENTRY                       05400000
         DC    XL2'0200'                INDICATE UTS CALL               05410000
         DS    0H                                                       05420000
*    GEN(EJECT);                                                        05430000
         EJECT                                                          05440000
         DS    0H                                                       05450000
         BC    15,@9F1                                            0171  05460000
* TRA002:                                                               05470000
*  ENTRY(X);                                                            05480000
TRA002   STM   @E,@C,12(@D)                                       0171  05490000
         BALR  @B,0                                               0171  05500000
         LA    @F,TRA002-IFDOLT18-24                              0171  05510000
         SR    @B,@F                                              0171  05520000
         ST    @D,@SAV001+4                                       0171  05530000
         LA    @F,@SAV001                                         0171  05540000
         ST    @F,8(0,@D)                                         0171  05550000
         LR    @D,@F                                              0171  05560000
*  R3=R1;                                /* PARAMETER LIST POINTER */   05570000
@9F1     LR    @3,@1                                              0172  05580000
*  R2=COMADR;                            /* COMMON AREA ADDRESS */      05590000
         L     @2,COMADR                                          0173  05600000
*  SVR141='00'X;                         /* 1ST BYTE OF REG 14 SAVED */ 05610000
         L     @C,4(0,@D)                                         0174  05620000
         MVI   12(@C),X'00'                                       0174  05630000
*  R5=SVR14;                             /* RETURN REGISTER VALUE */    05640000
         L     @5,12(0,@C)                                        0175  05650000
*  R4=SV15;                              /* ORIGINAL R15 VALUE  X02008* 05660000
         L     @4,16(0,@C)                                        0176  05670000
*  BRID=MIDOLD;                          /* SAVE BRANCH ID      X02008* 05680000
         MVC   BRID(2),4(@4)                                      0177  05690000
*  IF BRID1='02'X THEN                   /* CHECK ID            X02008* 05700000
         CLI   BRID,X'02'                                         0178  05710000
         BC    07,@9F0                                            0178  05720000
*    GEN(BAL   R9,TRA012D);              /* RETURN OR TRACE TESTX02008* 05730000
         BAL   R9,TRA012D                                               05740000
         DS    0H                                                       05750000
*  IF GRBCTL='1'B THEN                   /* IS GRAB ACTIVE       M4506* 05760000
@9F0     TM    A00002,B'00010000'                                 0180  05770000
         BC    12,@9EF                                            0180  05780000
*    UTSCAL='1'B;                        /* MODULES ACTIVE       M4506* 05790000
         OI    A00005,B'10000000'                                 0181  05800000
*  RR='00'X;                             /* ALL MODULES TO DELETE */    05810000
@9EF     MVI   LIST,X'00'                                         0182  05820000
*  IF SUSDEL='1'B THEN                   /* TEST INDICATOR       M4507* 05830000
         TM    A00002,B'00001000'                                 0183  05840000
*    GOTO TRA002B;                       /* SUSPENDED DELETION   M4507* 05850000
         BC    01,TRA002B                                         0184  05860000
*  R8=ADDR(MCT);                         /* MCT ADDRESS */              05870000
         LA    @8,MCT                                             0185  05880000
*  IF FECOND='1'B THEN                   /* TEST INDICATOR */           05890000
         TM    A00000,B'00100000'                                 0186  05900000
         BC    12,@9EE                                            0186  05910000
*    DO;                                 /* FIRST ERROR CONDITION */    05920000
*      IF CLEANUP='1'B THEN              /* IS CLEANUP RTN      Y02008* 05930000
         TM    A00014+33,B'00000100'                              0188  05940000
*                                        /* EXECUTING           Y02008* 05950000
*      GO TO TRA002D;                    /* YES, DONT ALLOW FE  Y02008* 05960000
         BC    01,TRA002D                                         0189  05970000
*                                        /* COMMUNICATION INT.  Y02008* 05980000
*      FECOND='0'B;                      /* CLEAR FIRST ERROR BIT */    05990000
         NI    A00000,B'11011111'                                 0190  06000000
*      GEN(BAL   R9,TRA002A);            /* GO TO CE COMMUNICATIONS */  06010000
         BAL   R9,TRA002A                                               06020000
         DS    0H                                                       06030000
*      IF ERLOP='1'B THEN                /* ERROR LOOP ON */            06040000
         TM    A00014+3,B'00000010'                               0192  06050000
         BC    12,@9ED                                            0192  06060000
*        CATB1='0'B;                     /* CLEAR CATASTROPHIC BIT */   06070000
         NI    A00014+3,B'11011111'                               0193  06080000
*      RETURN;                           /* RETURN */                   06090000
         BC    15,@EL01                                           0194  06100000
*    END;                                /* END FIRST ERROR CHECK */    06110000
* TRA002D:                               /*                     Y02008* 06120000
*  R6=PARADR;                            /* PARTITION STARTS    X02008* 06130000
@9EE     EQU   *                                                  0196  06140000
TRA002D  L     @6,A00006                                          0196  06150000
*  R7=PARSZ+R6;                          /* END OF PARTITION    X02008* 06160000
         LR    @7,@6                                              0197  06170000
         A     @7,A00006+4                                        0197  06180000
*  IF R5>R6&                             /* RETURN IS AFTER UTS ENTRY * 06190000
*    R5<R7 THEN                          /* RETURN IS BEFORE UTS END */ 06200000
         CR    @5,@6                                              0198  06210000
         BC    12,@9EC                                            0198  06220000
         CR    @5,@7                                              0198  06230000
         BC    10,@9EB                                            0198  06240000
*      GEN(BAL   R9,TRA012D);            /* RETURN OR TRACE TESTX02008* 06250000
         BAL   R9,TRA012D                                               06260000
         DS    0H                                                       06270000
*  ELSE GOTO TRA002B;                    /* NO DYN COMMUNICATION TEST * 06280000
*  GEN(BAL   R9,TRA029);                 /* ALLOW DELETIONS     X02008* 06290000
@9EA     EQU   *                                                  0201  06300000
         BAL   R9,TRA029                                                06310000
         DS    0H                                                       06320000
*  IF REMERR='1'B THEN                   /* REI ERROR           S20203* 06330000
         TM    A00093,B'01000000'                                 0202  06340000
*    GOTO REIERROR;                      /*                     S20203* 06350000
         BC    01,REIERROR                                        0203  06360000
*  IF NDCFO='0'B&                        /* TEST DYN INDICATOR */       06370000
*      ECB3POST='1'B THEN                /* TEST DYN COMMUNICATE */     06380000
         TM    A00000,B'10000000'                                 0204  06390000
         BC    05,@9E9                                            0204  06400000
         TM    A00087,B'01000000'                                 0204  06410000
         BC    12,@9E8                                            0204  06420000
*    DO;                                 /* BIT SET */                  06430000
*    IF CLEANUP='1'B THEN                /* IS CLEANUP RTN      Y02008* 06440000
         TM    A00014+33,B'00000100'                              0206  06450000
*                                        /* EXECUTING           Y02008* 06460000
*      GO TO TRA002C;                    /* YES, DONT ALLOW     Y02008* 06470000
         BC    01,TRA002C                                         0207  06480000
*                                        /* DYN COMM INTERVAL   Y02008* 06490000
*  REIERROR:                             /*                     S20203* 06500000
*      R9=ADDR(TRA002C);                 /* RETURN ADDRESS */           06510000
REIERROR LA    @9,TRA002C                                         0208  06520000
* TRA002A:                                                              06530000
*      SVT13=R13;                        /* NORMAL SAVE AREA */         06540000
TRA002A  ST    @D,A00091+72                                       0209  06550000
*      SVU13=CHNBK;                      /* UNIT TEST SAVE AREA */      06560000
         MVC   A00091+76(4),4(@D)                                 0210  06570000
*      R13=ADDR(SVDYN);                  /* DYN SAVE AREA */            06580000
         LA    @D,A00091                                          0211  06590000
*      R15=COMMINT;                      /* ENTRY TO CE COMMUNICATION * 06600000
         L     @F,COMMINT                                         0212  06610000
*      GEN(BALR  R14,R15);               /* LINK TO CE COMMUNICATIONS * 06620000
         BALR  R14,R15                                                  06630000
         DS    0H                                                       06640000
*      R13=SVT13;                        /* NORMAL SAVE AREA */         06650000
         L     @D,A00091+72                                       0214  06660000
*      CHNBK=SVU13;                      /* UNIT TEST SAVE AREA */      06670000
         MVC   4(4,@D),A00091+76                                  0215  06680000
*      GOTO R9;                          /* RETURN TO MAIN FLOW */      06690000
         BCR   15,@9                                              0216  06700000
*    END;                                /* END DYN COMMUNICATE TEST */ 06710000
* TRA002C:                                                              06720000
*  IF TALKPOST='1'B THEN                /* TEST CE TO RE COMM   S20203* 06730000
@9E8     EQU   *                                                  0218  06740000
@9E9     EQU   *                                                  0218  06750000
TRA002C  TM    A00103,B'01000000'                                 0218  06760000
         BC    12,@9E7                                            0218  06770000
*    DO;                                /* CE WANTS TO TALK     S20203* 06780000
*    CENOMSG='1'B;                      /* DON'T SEND ONSITE    S20203* 06790000
         OI    A00093,B'00010000'                                 0220  06800000
*  TALKID=RTALKID;                       /* MSG ID              S20203* 06810000
         MVC   TALKID(8),RTALKID                                  0221  06820000
*    RPTBUF=DEDBUF;                      /* MOVE MSG TO PRTBUFR S20203* 06830000
         L     @C,RTALKBUF                                        0222  06840000
         MVC   RPTBUF(72),0(@C)                                   0222  06850000
         MVI   RPTBUF+72,C' '                                     0222  06860000
         MVC   RPTBUF+73(42),RPTBUF+72                            0222  06870000
*         TRANSMSG='1'B;                 /*                     S20203* 06880000
         OI    A00093,B'00001000'                                 0223  06890000
*    GEN(PWRT  SIZE=72);                /* ISSUE PWRITE         S20203* 06900000
         PWRT  SIZE=72                                                  06910000
         DS    0H                                                       06920000
*         TRANSMSG='0'B;                 /*                     S20203* 06930000
         NI    A00093,B'11100111'                                 0225  06940000
*    CENOMSG='0'B;                      /* ZERO CENOMSG FLAG    S20203* 06950000
*    DEDBUF(1)=' ';                      /* CLEAR DEDBUF        S20203* 06960000
         MVI   0(@C),C' '                                         0227  06970000
*    DEDBUF(2:72)= DEDBUF(1:71);         /*                     S20203* 06980000
         MVC   1(71,@C),0(@C)                                     0228  06990000
*    R1=IFD168;                         /* ADDR OF MSG TO R1    S20203* 07000000
         L     @C,MSGMOD                                          0229  07010000
         L     @1,72(0,@C)                                        0229  07020000
*    BUFAD=RTALKBUF;                    /* ADDR OF RESP BUFFER  S20203* 07030000
         MVC   1(3,@1),RTALKBUF+1                                 0230  07040000
*    LENGTH='48'X;                      /* LENGTH OF BUFFER     S20203* 07050000
         MVI   0(@1),X'48'                                        0231  07060000
*    MECBAD=ADDR(TALKECB);              /* ADDR OF ECB          S20203* 07070000
         LA    @F,TALKECB                                         0232  07080000
         ST    @F,4(0,@1)                                         0232  07090000
*    TALKECB=0;                          /* ZERO ECB            S20203* 07100000
         SR    @F,@F                                              0233  07110000
         ST    @F,TALKECB                                         0233  07120000
*    REMNOMSG='1'B;                     /* DON'T SEND TO RE     S20203* 07130000
         OI    A00093,B'00100000'                                 0234  07140000
*    GEN(PWTOR REG=(1),WAIT=NO);        /* ISSUE WTOR           S20203* 07150000
         PWTOR REG=(1),WAIT=NO                                          07160000
         DS    0H                                                       07170000
*    REMNOMSG='0'B;                     /* ZERO REMNOMSG FLAG   S20203* 07180000
         NI    A00093,B'11011111'                                 0236  07190000
*    END;                               /*                      S20203* 07200000
*  IF REIPOST='1'B THEN                  /* RE WANTS TO TALK    S20203* 07210000
@9E7     TM    A00106,B'01000000'                                 0238  07220000
         BC    12,@9E6                                            0238  07230000
*    DO;                                /* POSTED-GOTO MHR      S20203* 07240000
*      RETRIEVE='1'B;                   /* SET TO RETRIEVE MSG  S20203* 07250000
         OI    A00097,B'00001000'                                 0240  07260000
*      SVT13=R13;                       /*NORMAL SAVE AREA      S20203* 07270000
         ST    @D,A00091+72                                       0241  07280000
*      SVU13=CHNBK;                     /* UNIT TEST SAVE AREA  S20203* 07290000
         MVC   A00091+76(4),4(@D)                                 0242  07300000
*      R13=ADDR(SVDYN);                 /* DYN SAVE AREA        S20203* 07310000
         LA    @D,A00091                                          0243  07320000
*      R15=MHRPTR;                      /* ENTRY TO MSG HANDLER S20203* 07330000
         L     @F,MHRPTR                                          0244  07340000
*      GEN(BALR R14,R15);               /* LINK TO MHR          S20203* 07350000
         BALR R14,R15                                                   07360000
         DS    0H                                                       07370000
*      R13=SVT13;                       /* NORMAL SAVEAREA      S20203* 07380000
         L     @D,A00091+72                                       0246  07390000
*      CHNBK=SVU13;                     /* UNIT TEST SAVEAREA   S20203* 07400000
         MVC   4(4,@D),A00091+76                                  0247  07410000
*      RETRIEVE='0'B;                   /*   ZERO RETRIEVE FLAG S20203* 07420000
         NI    A00097,B'11110111'                                 0248  07430000
*         CESWTR1 = CESWTR1 & 'EF'X;     /* ZERO INFOMSG FLAG    M4502* 07440000
         NI    CESWTR1,X'EF'                                      0249  07450000
*      IF REMERR='1'B THEN              /* CHECK FOR ERROR      S20203* 07460000
         TM    A00093,B'01000000'                                 0250  07470000
*         GOTO TRA002R;                  /*                      M4502* 07480000
         BC    01,TRA002R                                         0251  07490000
*     IF ILLRESP='1'B THEN              /* WAS RESPONSE OKAY    S20203* 07500000
         TM    A00097,B'10000000'                                 0252  07510000
         BC    12,@9E5                                            0252  07520000
*         DO;                           /* NO                   S20203* 07530000
*         ILLRESP='0'B;                 /* ZERO ILLRSP FLAG     S20203* 07540000
         NI    A00097,B'01111111'                                 0254  07550000
*         GOTO TRA002B;                  /* NO CONTINUE         X02008* 07560000
         BC    15,TRA002B                                         0255  07570000
*         END;                           /*                     S20203* 07580000
*      IF EXECANS='1'B THEN             /* DOES REMOTE WANT COM S20203* 07590000
@9E5     TM    A00097,B'01000000'                                 0257  07600000
         BC    12,@9E4                                            0257  07610000
*         DO;                           /* YES                  S20203* 07620000
* TRA002R:                                                              07630000
*         GEN(BAL R9,TRA002A);          /* GOTO CE COMM         S20203* 07640000
TRA002R  BAL R9,TRA002A                                                 07650000
         DS    0H                                                       07660000
*         END;                          /*                      S20203* 07670000
*      END;                             /*                      S20203* 07680000
@9E4     EQU   *                                                  0261  07690000
*         GEN(EJECT);                                                   07700000
@9E6     EQU   *                                                  0262  07710000
         EJECT                                                          07720000
         DS    0H                                                       07730000
* TRA002B:                                                              07740000
*  R8=ADDR(MCT);                         /* MCT ADDRESS */              07750000
TRA002B  LA    @8,MCT                                             0263  07760000
*  SVPMW1=PMW1;                          /* SAVE DATA FROM PARM LIST */ 07770000
         MVC   TMCOM+84(10),0(@3)                                 0264  07780000
*  R4=SV15;                              /* ENTRY POINT ADDRESS */      07790000
         L     @C,4(0,@D)                                         0265  07800000
         L     @4,16(0,@C)                                        0265  07810000
*  IF MIDOLD1^>'02'X THEN                /* CHECK ENTRY         X02008* 07820000
         CLI   4(@4),X'02'                                        0266  07830000
*    GOTO TRA003;                        /* NEW MODULE INDICATED */     07840000
         BC    12,TRA003                                          0267  07850000
*  SVP1=OLDMAC;                          /* OLD MODULE INDICATORS */    07860000
         MVC   TMCOM+84(2),OLDMAC                                 0268  07870000
*  SVP2=MIDOLD;                          /* STORE OLD MODULE ID */      07880000
         MVC   TMCOM+86(2),4(@4)                                  0269  07890000
*  KNMV=MIDOLD;                          /* OLD MODULE IDENTITY */      07900000
         MVC   TMCOM+66(2),4(@4)                                  0270  07910000
* TRA003:                                                               07920000
*  IF SVPL<'02'X THEN                    /* TEST MACRO LEVEL */         07930000
TRA003   CLI   TMCOM+85,X'02'                                     0271  07940000
*    GOTO TRA025;                        /* LEVEL NOT SUPPORTED */      07950000
         BC    04,TRA025                                          0272  07960000
*  WTOTNM=SVP8;                          /* EIGHT CHARACTER NAME */     07970000
         MVC   TMCOM+4(8),TMCOM+86                                0273  07980000
*  IF P1B0='1'B THEN                     /* TEST CHARACTERS IN NAME */  07990000
         TM    TMCOM+84,B'10000000'                               0274  08000000
*    GOTO TRA004;                        /* EIGHT CHARACTERS IN NAME */ 08010000
         BC    01,TRA004                                          0275  08020000
*  WNM=KNAME;                            /* COMMON PART OF NAME */      08030000
         MVC   TMCOM+4(6),TMCOM+60                                0276  08040000
*  WNAM=SVP2;                            /* VARYING PART OF NAME */     08050000
         MVC   TMCOM+10(2),TMCOM+86                               0277  08060000
* TRA004:                                                               08070000
*  IF WNM=KNAME THEN                     /* TEST MODULE NAME */         08080000
TRA004   CLC   TMCOM+4(6),TMCOM+60                                0278  08090000
         BC    07,@9E3                                            0278  08100000
*    DO;                                 /* OLTEP MODULE */             08110000
*      IF WNAM='40' THEN                 /* TEST FOR MODE MACRO */      08120000
         CLC   TMCOM+10(2),@C9                                    0280  08130000
         BC    07,@9E2                                            0280  08140000
*        DO;                             /* MODE MACRO NOT      Y02008* 08150000
*                                        /* SUPPORTED           Y02008* 08160000
*        R1=IFD229;                      /* PRINT MSG EXPLAININGY02008* 08170000
         L     @C,MSGMOD                                          0282  08180000
         L     @1,148(0,@C)                                       0282  08190000
*        GEN(PWTO  REG=(1));             /* THAT OLT WAS        Y02008* 08200000
         PWTO  REG=(1)                                                  08210000
         DS    0H                                                       08220000
*        GO TO TRA028;                   /* CANCELLED BECAUSE   Y02008* 08230000
         BC    15,TRA028                                          0284  08240000
*        END;                            /* MODE NOT SUPPORTED  Y02008* 08250000
*      IF WNAM='47' THEN                 /* TEST FOR ROUTINE MACRO */   08260000
@9E2     CLC   TMCOM+10(2),@C10                                   0286  08270000
*        GOTO TRA022;                    /* GO TO ROUTINE CODE */       08280000
         BC    08,TRA022                                          0287  08290000
*      IF NPR='1'B THEN                  /* TEST NO PRINT INDICATOR */  08300000
         TM    A00014+2,B'00000100'                               0288  08310000
*        GOTO TRA006;                    /* PRINTING ALLOWED */         08320000
         BC    01,TRA006                                          0289  08330000
*      IF WNAM='08' THEN                 /* TEST OLD DPRINT     X02008* 08340000
         CLC   TMCOM+10(2),@C11                                   0290  08350000
*        GOTO TRA019;                    /* SKIP PRINTING       X02008* 08360000
         BC    08,TRA019                                          0291  08370000
*      IF WNAM='39' THEN                 /* TEST NEW DPRINT     X02008* 08380000
         CLC   TMCOM+10(2),@C12                                   0292  08390000
*        GOTO TRA019;                    /* SKIP PRINTING       X02008* 08400000
         BC    08,TRA019                                          0293  08410000
*      GOTO TRA006;                      /* NO SPECIAL MODULES TO DO */ 08420000
         BC    15,TRA006                                          0294  08430000
*    END;                                /* END OF FREECORE CHECK */    08440000
*  R4=4;                                 /* NA INDICATOR */             08450000
@9E3     LA    @4,4                                               0296  08460000
*  IF MODNN6=KNAME THEN                  /* TEST A PREVIOUS MODULE */   08470000
         CLC   TMCOM+68(6),TMCOM+60                               0297  08480000
*    GOTO TRA005;                        /* ONLY OLTEP MODULES */       08490000
         BC    08,TRA005                                          0298  08500000
*  GEN(DELETE EPLOC=MODNN);              /* DELETE NON-OLTEP MODULE */  08510000
         DELETE EPLOC=MODNN                                             08520000
         DS    0H                                                       08530000
* TRA005:                                                               08540000
*  IF P1B3='1'B THEN                     /* TEST FUNCTION TO PERFORM */ 08550000
TRA005   TM    TMCOM+84,B'00010000'                               0300  08560000
         BC    12,@9E1                                            0300  08570000
*    IF WTOTNM=MODNN THEN                /* DELETION JUST MADE */       08580000
         CLC   TMCOM+4(8),TMCOM+68                                0301  08590000
*      GOTO TRA005A;                     /* CONTINUE */                 08600000
         BC    08,TRA005A                                         0302  08610000
*    ELSE DO;                                                           08620000
*           GEN(DELETE EPLOC=WTOTNM);                                   08630000
         DELETE EPLOC=WTOTNM                                            08640000
         DS    0H                                                       08650000
* TRA005A:                                                              08660000
*           MODNN=KNT;                                                  08670000
TRA005A  MVC   TMCOM+68(8),TMCOM+60                               0305  08680000
*           GOTO TRA019;                 /* RETURN */                   08690000
         BC    15,TRA019                                          0306  08700000
*         END;                                                          08710000
*  ELSE;                                                                08720000
*    GOTO TRA006;                                                       08730000
*  MODNN=WTOTNM;                         /* NON-OLTEP MODULE TO LOAD */ 08740000
         MVC   TMCOM+68(8),TMCOM+4                                0310  08750000
*         GEN(EJECT);                                                   08760000
         EJECT                                                          08770000
         DS    0H                                                       08780000
* TRA006:                                                               08790000
*  IF P1B23='11'B THEN                   /* CHECK BITS           M4506* 08800000
TRA006   TM    TMCOM+84,B'00110000'                               0312  08810000
         BC    12,@9DF                                            0312  08820000
*    SUSDEL='1'B;                        /* SUSPEND DELETION     M4506* 08830000
         OI    A00002,B'00001000'                                 0313  08840000
*  BIN='00'X;                            /* ZERO INDICATOR VALUEX02008* 08850000
@9DF     MVI   TMCOM+76,X'00'                                     0314  08860000
*  BMCT18='00'X;                         /* ZERO OUT INDICATORS X02008* 08870000
         MVI   BMCT18,X'00'                                       0315  08880000
*  R8=ADDR(MCT);                         /* MODULE CONTROL TABLEX02008* 08890000
         LA    @8,MCT                                             0316  08900000
*  HHSIZ=0;                              /* ZERO CORE SIZE REQUEST    * 08910000
         SR    @F,@F                                              0317  08920000
         ST    @F,A00061+12                                       0317  08930000
*  UTSCAL='1'B;                          /* ZERO CORE SIZE      X02008* 08940000
         OI    A00005,B'10000000'                                 0318  08950000
*  WK1BYT='00'X;                         /* ZERO ITEM INDICATOR X02008* 08960000
         MVI   TMCOM+77,X'00'                                     0319  08970000
*  IF P1B0='0'B THEN                     /* TEST NAME SIZE      X02008* 08980000
         TM    TMCOM+84,B'10000000'                               0320  08990000
*    GOTO TRA103;                        /* IFDOLT MODULE ID    X02008* 09000000
         BC    08,TRA103                                          0321  09010000
* /********************************/                                    09020000
* /***   EIGHT CHARACTER NAME   ***/                                    09030000
* /********************************/                                    09040000
*  MOD8='1'B;                            /* EIGHT CHARACTER NAMEX02008* 09050000
         OI    BMCT18,B'00010000'                                 0322  09060000
*  WTOTNM=SVP8;                          /* EIGHT CHARACTER NAMEX02008* 09070000
         MVC   TMCOM+4(8),TMCOM+86                                0323  09080000
*  R8=ADDR(NMCT);                        /* SIMULATE NEW MCT    X02008* 09090000
         LA    @8,A00065+20                                       0324  09100000
*  R5=R8;                                /* NEW ADDRESS TABLE   X02008* 09110000
         LR    @5,@8                                              0325  09120000
*  WK1BYT='01'X;                         /* FIRST NEW MCT ITEM  X02008* 09130000
         MVI   TMCOM+77,X'01'                                     0326  09140000
*  GOTO TRA021;                          /* FIND MODULE         X02008* 09150000
         BC    15,TRA021                                          0327  09160000
* /******************************/                                      09170000
* /***   TWO CHARACTER NAME   ***/                                      09180000
* /******************************/                                      09190000
* TRA103:                                                               09200000
*  WNM=KNAME;                            /* COMMON OLTEP NAME   X02008* 09210000
TRA103   MVC   TMCOM+4(6),TMCOM+60                                0328  09220000
*  WNAM=SVP2;                            /* VARYING PART NAME   X02008* 09230000
         MVC   TMCOM+10(2),TMCOM+86                               0329  09240000
* TRA017:                                                               09250000
*  DO I=1 TO 20;                         /* ITEMS PER MCT       X02008* 09260000
TRA017   LA    @F,1                                               0330  09270000
         ST    @F,I                                               0330  09280000
*    IF WNAM=MNAM(I) THEN                /* TEST FOR MODULE     X02008* 09290000
@DO9DE   L     @C,I                                               0331  09300000
         BCTR  @C,0                                               0331  09310000
         MH    @C,@D1                                             0331  09320000
         LA    @E,10(@C,@8)                                       0331  09330000
         CLC   TMCOM+10(2),0(@E)                                  0331  09340000
         BC    07,@9DA                                            0331  09350000
*      DO;                               /* NAME APPEARS IN MCT X02008* 09360000
*        WK1BYT=I4;                      /* ITEM IN MCT         X02008* 09370000
         MVC   TMCOM+77(1),I+3                                    0333  09380000
*        MB2(I)='0'B;                    /* NOT ACTIVE          X02008* 09390000
         LA    @A,8(@C,@8)                                        0334  09400000
         NI    0(@A),B'10111111'                                  0334  09410000
*        GOTO TRA027;                    /* FIND MODULE         X02008* 09420000
         BC    15,TRA027                                          0335  09430000
*      END;                                                             09440000
*    IF WK1BYT^='00'X                    /* TEST IF ITEM FOUND  X02008* 09450000
*          |MN1(I)^='00'X THEN           /* AVAILABLE ITEM TEST X02008* 09460000
@9DA     CLI   TMCOM+77,X'00'                                     0337  09470000
         BC    07,@9D9                                            0337  09480000
         L     @C,I                                               0337  09490000
         BCTR  @C,0                                               0337  09500000
         MH    @C,@D1                                             0337  09510000
         LA    @A,10(@C,@8)                                       0337  09520000
         CLI   0(@A),X'00'                                        0337  09530000
         BC    08,@9D8                                            0337  09540000
*      GOTO TRA018;                      /* ITEM ASSIGNED       X02008* 09550000
         BC    07,TRA018                                          0338  09560000
*    WK1PTR=R8;                          /* ZEROED ITEM IN MCT  X02008* 09570000
@9D8     ST    @8,WK1PTR                                          0339  09580000
*    WK1BYT=I4;                          /* ZEROED ITEM IN MCT  X02008* 09590000
         MVC   TMCOM+77(1),I+3                                    0340  09600000
* TRA018:                                                               09610000
*  END;                                                                 09620000
*  IF MNXT^=0 THEN                       /* TEST FOR NEXT MCT   X02008* 09630000
TRA018   L     @F,I                                               0341  09640000
         AH    @F,@D2                                             0341  09650000
@DO9DD   ST    @F,I                                               0341  09660000
         CH    @F,@D3                                             0341  09670000
         BC    12,@DO9DE                                          0341  09680000
         SR    @F,@F                                              0342  09690000
         C     @F,4(0,@8)                                         0342  09700000
         BC    08,@9D7                                            0342  09710000
*    DO;                                 /* ANOTHER MCT EXISTS  X02008* 09720000
*      R8=MNXT;                          /* ADDRESS OF NEXT MCT X02008* 09730000
         L     @8,4(0,@8)                                         0344  09740000
*      GOTO TRA017;                      /* RESUME TEST OF MCT  X02008* 09750000
         BC    15,TRA017                                          0345  09760000
*    END;                                                               09770000
*  IF WK1BYT^='00'X THEN                 /* TEST ITEM INDICATOR X02008* 09780000
@9D7     CLI   TMCOM+77,X'00'                                     0347  09790000
         BC    08,@9D6                                            0347  09800000
*    DO;                                 /* AVAILABLE ITEM      X02008* 09810000
*      R8=WK1PTR;                        /* MCT ADDRESS         X02008* 09820000
         L     @8,WK1PTR                                          0349  09830000
*      R5=ADDR(MCTADS);                  /* MCT ADDRESSES       X02008* 09840000
         LA    @5,128(0,@8)                                       0350  09850000
*      GOTO TRA021;                      /* FIND MODULE         X02008* 09860000
         BC    15,TRA021                                          0351  09870000
*    END;                                                               09880000
*  GEN(EJECT);                                                          09890000
@9D6     EQU   *                                                  0353  09900000
         EJECT                                                          09910000
         DS    0H                                                       09920000
* /*********************************/                                   09930000
* /***   CREATE ADDITIONAL MCT   ***/                                   09940000
* /*********************************/                                   09950000
*  LOSIZ=0;                              /* MINIMUM SIZE ZERO   X02008* 09960000
         SR    @F,@F                                              0354  09970000
         ST    @F,A00061+8                                        0354  09980000
*  HHSIZ=208;                            /* MAXIMUM SIZE REQUESTX02008* 09990000
         LA    @F,208                                             0355  10000000
         ST    @F,A00061+12                                       0355  10010000
*  I4=RID;                               /* ROOT ID BLOCK       X02008* 10020000
         MVC   I+3(1),RID                                         0356  10030000
* TRA018A:                                                              10040000
*  GEN(BAL   R6,TRA040);                 /* GET CORE ROUTINE    X02008* 10050000
TRA018A  BAL   R6,TRA040                                                10060000
         DS    0H                                                       10070000
*  IF AVSEZ^<HHSIZ THEN                  /* TEST CORE OBTAINED  X02008* 10080000
         L     @F,A00061+12                                       0358  10090000
         C     @F,A00061+4                                        0358  10100000
*    GOTO TRA020;                        /* SUCCESSFUL          X02008* 10110000
         BC    12,TRA020                                          0359  10120000
*  GEN(BAL   R6,TRA041);                 /* FREE CORE           X02008* 10130000
         BAL   R6,TRA041                                                10140000
         DS    0H                                                       10150000
*  IF BMCT2='1'B THEN                    /* TEST ATTEMPTS       X02008* 10160000
         TM    BMCT18,B'01000000'                                 0361  10170000
*    GOTO TRA032A;                       /* SECOND ATTEMPT      X02008* 10180000
         BC    01,TRA032A                                         0362  10190000
*  BMCT1='1'B;                           /* FIRST TRY TO FREE   X02008* 10200000
         OI    BMCT18,B'11000000'                                 0363  10210000
*    BMCT2='1'B;                         /* PREVIOUS ATTEMPT    X02008* 10220000
*  GOTO TRA128;                          /* DELETE MODULES      X02008* 10230000
         BC    15,TRA128                                          0365  10240000
* TRA020:                                                               10250000
*  R7=AVADR;                             /* LOCATION OF CORE    X02008* 10260000
TRA020   L     @7,A00061                                          0366  10270000
*  MNXT=R7;                              /* NEW NEXT MCT        X02008* 10280000
         ST    @7,4(0,@8)                                         0367  10290000
*  R7->MCA=R7->MCA&&R7->MCA;             /* ZERO OUT MCT        X02008* 10300000
         XC    0(208,@7),0(@7)                                    0368  10310000
*  R7->MPRE=R8;                          /* ADDRESS RECORDED    X02008* 10320000
         ST    @8,0(0,@7)                                         0369  10330000
*  R8=R7;                                /* NEW MCT ADDRESS     X02008* 10340000
         LR    @8,@7                                              0370  10350000
*  R5=ADDR(MCTADS);                      /* MCT ADDRESSES       X02008* 10360000
         LA    @5,128(0,@8)                                       0371  10370000
*  WK1BYT='01'X;                         /* FIRST ITEM IN MCT   X02008* 10380000
         MVI   TMCOM+77,X'01'                                     0372  10390000
*  GEN(EJECT);                                                          10400000
         EJECT                                                          10410000
         DS    0H                                                       10420000
* /**********************************/                                  10430000
* /***   PREPARE TO LOAD MODULE   ***/                                  10440000
* /**********************************/                                  10450000
* TRA021:                                                               10460000
*  R0=ADDR(WKAREA);                      /* BLDL LIST           X02008* 10470000
TRA021   LA    @0,TMCOM                                           0374  10480000
*  GEN(BLDL  0,(0));                     /* ISSUE BLDL          X02008* 10490000
         BLDL  0,(0)                                                    10500000
         DS    0H                                                       10510000
*  WK24=WK24&&WK24;                      /* ZERO WORK BYTES     X02008* 10520000
         XC    TMCOM+36(24),TMCOM+36                              0376  10530000
*  IF WR='00'X THEN                      /* TEST FOR MODULE     X02008* 10540000
         CLI   TMCOM+14,X'00'                                     0377  10550000
*    GOTO TRA038;                        /* NO MODULE           X02008* 10560000
         BC    08,TRA038                                          0378  10570000
*  HISIZ=WMSIZ+116;                      /* MODULE SIZE          M4507* 10580000
         LA    @F,116                                             0379  10590000
         MVC   @TEMP2+2(2),TMCOM+29                               0379  10600000
         A     @F,@TEMP2                                          0379  10610000
         STH   @F,A00061+14                                       0379  10620000
*  MMSIZ(WK1BYT)=HISIZ;                  /* MODULE SIZE         X02008* 10630000
         SR    @C,@C                                              0380  10640000
         IC    @C,TMCOM+77                                        0380  10650000
         BCTR  @C,0                                               0380  10660000
         MH    @C,@D1                                             0380  10670000
         LA    @A,12(@C,@8)                                       0380  10680000
         MVC   0(2,@A),A00061+14                                  0380  10690000
*  MNAM(WK1BYT)=WNAM;                    /* NAME INTO MCT       X02008* 10700000
         LA    @A,10(@C,@8)                                       0381  10710000
         MVC   0(2,@A),TMCOM+10                                   0381  10720000
* TRA123:                                                               10730000
*  I4=BHLD;                              /* NEXT BLOCK TO DELETEX02008* 10740000
TRA123   MVC   I+3(1),TMCOM+79                                    0382  10750000
*  BHB='00'X;                            /* FIRST PASS          X02008* 10760000
         MVI   TMCOM+78,X'00'                                     0383  10770000
*  IF HISIZ<662 THEN                                                    10780000
         CLC   A00061+14(2),@D4                                   0384  10790000
         BC    10,@9D5                                            0384  10800000
*    HISIZ=662;                                                         10810000
         MVC   A00061+14(2),@D4                                   0385  10820000
* TRA023A:                                                              10830000
*  LOSIZ=0;                              /* LOWEST MINIMUM SIZE X02008* 10840000
@9D5     EQU   *                                                  0386  10850000
TRA023A  SR    @F,@F                                              0386  10860000
         ST    @F,A00061+8                                        0386  10870000
*  IF BHB='01'X THEN                                                    10880000
         CLI   TMCOM+78,X'01'                                     0387  10890000
*    GOTO TRA023B;                                                      10900000
         BC    08,TRA023B                                         0388  10910000
*  IF BHB='03'X THEN                                                    10920000
         CLI   TMCOM+78,X'03'                                     0389  10930000
*    GOTO TRA023F;                       /*                      M4507* 10940000
         BC    08,TRA023F                                         0390  10950000
*  GEN(BAL   R6,TRA040);                 /* LINK TO OBTAIN CORE X02008* 10960000
         BAL   R6,TRA040                                                10970000
         DS    0H                                                       10980000
*  IF AVSIZ<HISIZ THEN                   /* TEST MODULE SIZE    X02008* 10990000
         CLC   A00061+6(2),A00061+14                              0392  11000000
*    GOTO TRA027A;                       /* MODULE TOO LARGE    X02008* 11010000
         BC    04,TRA027A                                         0393  11020000
*  BHB='01'X;                                                           11030000
         MVI   TMCOM+78,X'01'                                     0394  11040000
*  GAVL1=GAVL;                                                          11050000
         MVC   TMCOM+52(8),TMCOM+36                               0395  11060000
* TRA023B:                                                              11070000
*  GEN(BAL   R6,TRA040);                                                11080000
TRA023B  BAL   R6,TRA040                                                11090000
         DS    0H                                                       11100000
*  IF AVSIZ<HISIZ THEN                                                  11110000
         CLC   A00061+6(2),A00061+14                              0397  11120000
*    GOTO TRA027A;                                                      11130000
         BC    04,TRA027A                                         0398  11140000
*  BHB='02'X;                                                           11150000
         MVI   TMCOM+78,X'02'                                     0399  11160000
*  GEN(BAL   R6,TRA041);                                                11170000
         BAL   R6,TRA041                                                11180000
         DS    0H                                                       11190000
* TRA023C:                                                              11200000
*  GAVL=GAVL1;                                                          11210000
TRA023C  MVC   TMCOM+36(8),TMCOM+52                               0401  11220000
*  GEN(BAL   R6,TRA041);                                                11230000
         BAL   R6,TRA041                                                11240000
         DS    0H                                                       11250000
*  IF BHB='02'X THEN                                                    11260000
         CLI   TMCOM+78,X'02'                                     0403  11270000
*    GOTO TRA023E;                                                      11280000
         BC    08,TRA023E                                         0404  11290000
* TRA023D:                                                              11300000
*  BHB='03'X;                                                           11310000
TRA023D  MVI   TMCOM+78,X'03'                                     0405  11320000
*  GEN(BAL   R6,TRA044);                 /* GET LOAD WORK AREA  X02008* 11330000
         BAL   R6,TRA044                                                11340000
         DS    0H                                                       11350000
*  HISIZ=HISIZ+662;                                                     11360000
         LA    @F,662                                             0407  11370000
         MVC   @TEMP2+2(2),A00061+14                              0407  11380000
         A     @F,@TEMP2                                          0407  11390000
         STH   @F,A00061+14                                       0407  11400000
* TRA023F:                               /*                      M4507* 11410000
*  GEN(BAL   R6,TRA040);                                                11420000
TRA023F  BAL   R6,TRA040                                                11430000
         DS    0H                                                       11440000
*  IF AVSIZ<HISIZ THEN                                                  11450000
         CLC   A00061+6(2),A00061+14                              0409  11460000
*    GOTO TRA027A;                                                      11470000
         BC    04,TRA027A                                         0410  11480000
*  GEN(BAL   R6,TRA041);                                                11490000
         BAL   R6,TRA041                                                11500000
         DS    0H                                                       11510000
*  GEN(BAL   R6,TRA043);                 /* FREE WORK AREA      X02008* 11520000
         BAL   R6,TRA043                                                11530000
         DS    0H                                                       11540000
*         GEN(EJECT);                                                   11550000
         EJECT                                                          11560000
         DS    0H                                                       11570000
* /***********************/                                             11580000
* /***   LOAD MODULE   ***/                                             11590000
* /***********************/                                             11600000
* TRA023E:                                                              11610000
*  R0=ADDR(WITEM);                       /* MODULE NAME         X02008* 11620000
TRA023E  LA    @0,TMCOM+4                                         0414  11630000
*  GEN(LOAD  EPLOC=(0));                 /* LOAD MODULE         X02008* 11640000
         LOAD  EPLOC=(0)                                                11650000
         DS    0H                                                       11660000
*  WK1PTR=R0;                            /* MODULE ENTRY POINT  X02008* 11670000
         ST    @0,WK1PTR                                          0416  11680000
*  I=(R0/2048);                          /* BLOCK ID ASSIGNED   X02008* 11690000
         LR    @E,@0                                              0417  11700000
         SRA   @E,11                                              0417  11710000
         ST    @E,I                                               0417  11720000
*  IF I4='00'X THEN                      /* TEST BLOCK ID       X02008* 11730000
         CLI   I+3,X'00'                                          0418  11740000
         BC    07,@9D4                                            0418  11750000
*    I4='01'X;                           /* ASSIGN NEXT ID      X02008* 11760000
         MVI   I+3,X'01'                                          0419  11770000
*  MNM2(WK1BYT)=I4;                      /* BLOCK ASSIGNMENT ID X02008* 11780000
@9D4     SR    @C,@C                                              0420  11790000
         IC    @C,TMCOM+77                                        0420  11800000
         BCTR  @C,0                                               0420  11810000
         MH    @C,@D1                                             0420  11820000
         LA    @A,9(@C,@8)                                        0420  11830000
         MVC   0(1,@A),I+3                                        0420  11840000
*  MB2(WK1BYT)='1'B;                     /* MODULE IN CORE      X02008* 11850000
         LA    @A,8(@C,@8)                                        0421  11860000
         OI    0(@A),B'01000000'                                  0421  11870000
*  TADR(WK1BYT)=WK1PTR;                  /* MODULE ADDRESS      X02008* 11880000
         L     @F,WK1PTR                                          0422  11890000
         SR    @C,@C                                              0422  11900000
         IC    @C,TMCOM+77                                        0422  11910000
         BCTR  @C,0                                               0422  11920000
         SLA   @C,2                                               0422  11930000
         ST    @F,0(@C,@5)                                        0422  11940000
*  IF I4='FF'X THEN                      /* TEST BLOCK ID       X02008* 11950000
         CLI   I+3,X'FF'                                          0423  11960000
         BC    07,@9D3                                            0423  11970000
*    I4='00'X;                           /* PREPARE LOWEST ID   X02008* 11980000
         MVI   I+3,X'00'                                          0424  11990000
*  I=I+1;                                /* NEXT BLOCK ID       X02008* 12000000
@9D3     LA    @F,1                                               0425  12010000
         A     @F,I                                               0425  12020000
         ST    @F,I                                               0425  12030000
*  BHLD=I4;                              /* NEXT BLOCK TO DELETEX02008* 12040000
         MVC   TMCOM+79(1),I+3                                    0426  12050000
* TRA125:                                                               12060000
*  R4=WK1PTR;                            /* ADDRESS FOR REG 15  X02008* 12070000
TRA125   L     @4,WK1PTR                                          0427  12080000
*  IF P1B23^='00'B THEN                  /* CHECK INDICATORS    X02008* 12090000
         TM    TMCOM+84,B'00110000'                               0428  12100000
*    GOTO TRA016;                        /* RETURN TO CALLER    X02008* 12110000
         BC    05,TRA016                                          0429  12120000
* /***********************************/                                 12130000
* /***   BRANCH TO CALLED MODULE   ***/                                 12140000
* /***********************************/                                 12150000
* TRA013:                                                               12160000
*  R13=CHNBK;                            /* SAVE AREA OF CALLER X02008* 12170000
TRA013   L     @D,4(0,@D)                                         0430  12180000
*  GEN(L     R14,12(R13));               /* RESTORE REG 14      X02008* 12190000
         L     R14,12(R13)                                              12200000
         DS    0H                                                       12210000
*  R15=R4;                               /* RESTORE REG 15      X02008* 12220000
         LR    @F,@4                                              0432  12230000
*  GEN(LM    R0,R12,20(R13));            /* RESTORE REGS        X02008* 12240000
         LM    R0,R12,20(R13)                                           12250000
         DS    0H                                                       12260000
*  GOTO R15;                             /* GO TO MODULE        X02008* 12270000
         BCR   15,@F                                              0434  12280000
* /****************************/                                        12290000
* /***   RETURN TO CALLER   ***/                                        12300000
* /****************************/                                        12310000
* TRA019:                                                               12320000
*  R4=0;                                 /* RETURN CODE         X02008* 12330000
TRA019   SR    @4,@4                                              0435  12340000
* TRA016:                                                               12350000
*  SUSDEL='0'B;                          /* ZERO OUT BIT        X02008* 12360000
TRA016   NI    A00002,B'11110111'                                 0436  12370000
*  R13=CHNBK;                            /* CALLER SAVE AREA */         12380000
         L     @D,4(0,@D)                                         0437  12390000
*  GEN(L     R14,12(R13));               /* RESTORE REG 14 */           12400000
         L     R14,12(R13)                                              12410000
         DS    0H                                                       12420000
*  R15=R4;                               /* REG 15 VALUE */             12430000
         LR    @F,@4                                              0439  12440000
*  GEN(LM    R0,R12,20(R13));            /* RESTORE REGS 0 THRU 12 */   12450000
         LM    R0,R12,20(R13)                                           12460000
         DS    0H                                                       12470000
*  GOTO R14;                             /* RETURN */                   12480000
         BCR   15,@E                                              0441  12490000
*         GEN(EJECT);                                                   12500000
         EJECT                                                          12510000
         DS    0H                                                       12520000
* /**************************************/                              12530000
* /***   TRACE OR RETURN CODE SETUP   ***/                              12540000
* /**************************************/                              12550000
* TRA012D:                               /* RETURN OR TRACE TESTX02008* 12560000
*  IF TRACE='1'B THEN                    /* CHECK FOR TRACE     X02008* 12570000
TRA012D  TM    A00014+36,B'00000100'                              0443  12580000
*    GOTO TRA012F;                       /* TRACE REQUESTED     X02008* 12590000
         BC    01,TRA012F                                         0444  12600000
*  IF CLEANUP='0'B&                      /* CHECK FOR NO CLEANUPX02008* 12610000
*    RTMASK^='00'X THEN                  /* CHECK RETURN MASK   X02008* 12620000
         TM    A00014+33,B'00000100'                              0445  12630000
         BC    05,@9D2                                            0445  12640000
         CLI   70(@2),X'00'                                       0445  12650000
         BC    08,@9D1                                            0445  12660000
*      DO;                               /* RETURN CODE SET UP  X02008* 12670000
* TRA012F:                               /* PREPARE RETURN      X02008* 12680000
*        IF BRIDB14='0000'B THEN         /* CHECK MACRO         X02008* 12690000
TRA012F  TM    BRID,B'11110000'                                   0447  12700000
         BC    05,@9D0                                            0447  12710000
*          DO;                           /* NEW MACRO CALL      X02008* 12720000
*            RTMCID=PLID;                /* MACRO ID            X02008* 12730000
         MVC   RETMSG+21(2),2(@3)                                 0449  12740000
*            GOTO TRA012G;               /* SKIP STATEMENTS     X02008* 12750000
         BC    15,TRA012G                                         0450  12760000
*          END;                          /* END MACRO CHECK     X02008* 12770000
*        RTMCID=BRID;                    /* OLD MACRO ID        X02008* 12780000
@9D0     MVC   RETMSG+21(2),BRID                                  0452  12790000
*        RTNM14(2:4)=RTNM14(1:3);        /* CLEAR ROUTINE NUM   X02008* 12800000
         MVC   RETMSG+14(3),RETMSG+13                             0453  12810000
* TRA012G:                                                              12820000
*        UTRET=R5;                       /* SAVE UTS RETURN     X02008* 12830000
TRA012G  ST    @5,UTRET                                           0454  12840000
*        SVR14=ADDR(TRA130);             /* RETURN CODE HANDLER X02008* 12850000
         LA    @F,TRA130                                          0455  12860000
         L     @C,4(0,@D)                                         0455  12870000
         ST    @F,12(0,@C)                                        0455  12880000
*      END;                              /* END CHECK           X02008* 12890000
*  UTSCAL='0'B;                          /* UTS CALL            X02008* 12900000
@9D1     EQU   *                                                  0457  12910000
@9D2     NI    A00005,B'01111111'                                 0457  12920000
*  GOTO R9;                              /* RETURN TO MAIN FLOW X02008* 12930000
         BCR   15,@9                                              0458  12940000
* /*************************************/                               12950000
* /***   MODULE ID RECORDED IN MCT   ***/                               12960000
* /*************************************/                               12970000
* TRA027:                                                               12980000
*  IF SUSDEL='1'B THEN                   /* CHECK INDICATOR     X02008* 12990000
TRA027   TM    A00002,B'00001000'                                 0459  13000000
*    GOTO TRA019;                        /* SUSPEND DELETION    X02008* 13010000
         BC    01,TRA019                                          0460  13020000
*  IF P1B3='1'B THEN                     /* CHECK FUNCTION      X02008* 13030000
         TM    TMCOM+84,B'00010000'                               0461  13040000
         BC    12,@9CF                                            0461  13050000
*    DO;                                 /* DELETE FUNCTION     X02008* 13060000
*      IF MB1(WK1BYT)='1'B THEN          /*IS THIS MODULE PER- X03008*/ 13070000
         SR    @C,@C                                              0463  13080000
         IC    @C,TMCOM+77                                        0463  13090000
         BCTR  @C,0                                               0463  13100000
         MH    @C,@D1                                             0463  13110000
         LA    @A,8(@C,@8)                                        0463  13120000
         TM    0(@A),B'10000000'                                  0463  13130000
*                                        /* MANENTLY RESIDENT. X03008*/ 13140000
*        GO TO TRA019;                   /* YES, BYPASS DELETE X03008*/ 13150000
         BC    01,TRA019                                          0464  13160000
*                                        /* REQUEST.           X03008*/ 13170000
*      GEN(DELETE EPLOC=WTOTNM);         /* DELETE MODULE       X02008* 13180000
         DELETE EPLOC=WTOTNM                                            13190000
         DS    0H                                                       13200000
*      TITEM(WK1BYT)=0;                  /* ZERO ADDRESS        X02008* 13210000
         SR    @F,@F                                              0466  13220000
         SR    @C,@C                                              0466  13230000
         IC    @C,TMCOM+77                                        0466  13240000
         BCTR  @C,0                                               0466  13250000
         SLA   @C,2                                               0466  13260000
         ST    @F,128(@C,@8)                                      0466  13270000
*      MNM2(WK1BYT)='00'X;               /* BLOCK ID            X02008* 13280000
         SR    @C,@C                                              0467  13290000
         IC    @C,TMCOM+77                                        0467  13300000
         BCTR  @C,0                                               0467  13310000
         MH    @C,@D1                                             0467  13320000
         LA    @A,9(@C,@8)                                        0467  13330000
         MVI   0(@A),X'00'                                        0467  13340000
*      GOTO TRA019;                      /* RETURN              X02008* 13350000
         BC    15,TRA019                                          0468  13360000
*    END;                                /* END CHECKING        X02008* 13370000
*  IF TITEM(WK1BYT)^=0 THEN              /* TEST MODULE IN CORE X02008* 13380000
@9CF     SR    @F,@F                                              0470  13390000
         SR    @C,@C                                              0470  13400000
         IC    @C,TMCOM+77                                        0470  13410000
         BCTR  @C,0                                               0470  13420000
         SLA   @C,2                                               0470  13430000
         C     @F,128(@C,@8)                                      0470  13440000
         BC    08,@9CE                                            0470  13450000
*    DO;                                 /* MODULE IN CORE      X02008* 13460000
*      WK1PTR=TITEM(WK1BYT);             /* ADDRESS OF MODULE   X02008* 13470000
         L     @F,128(@C,@8)                                      0472  13480000
         ST    @F,WK1PTR                                          0472  13490000
*      MB2(WK1BYT)='1'B;                 /* MODULE ACTIVE       X02008* 13500000
         SR    @C,@C                                              0473  13510000
         IC    @C,TMCOM+77                                        0473  13520000
         BCTR  @C,0                                               0473  13530000
         MH    @C,@D1                                             0473  13540000
         LA    @A,8(@C,@8)                                        0473  13550000
         OI    0(@A),B'01000000'                                  0473  13560000
*      GOTO TRA125;                      /* GO TO MODULE        X02008* 13570000
         BC    15,TRA125                                          0474  13580000
*    END;                                                               13590000
*  HISIZ=MMSIZ(WK1BYT)+48;               /* MAXIMUM REQUEST     X02008* 13600000
@9CE     LA    @F,48                                              0476  13610000
         SR    @C,@C                                              0476  13620000
         IC    @C,TMCOM+77                                        0476  13630000
         BCTR  @C,0                                               0476  13640000
         MH    @C,@D1                                             0476  13650000
         LA    @A,12(@C,@8)                                       0476  13660000
         MVC   @TEMP2+2(2),0(@A)                                  0476  13670000
         A     @F,@TEMP2                                          0476  13680000
         STH   @F,A00061+14                                       0476  13690000
*  R5=ADDR(MCTADS);                      /* MCT ADDRESSES       X02008* 13700000
         LA    @5,128(0,@8)                                       0477  13710000
*  GOTO TRA123;                          /* CHECK FOR SIZE      X02008* 13720000
         BC    15,TRA123                                          0478  13730000
*  GEN(EJECT);                                                          13740000
         EJECT                                                          13750000
         DS    0H                                                       13760000
* /********************************/                                    13770000
* /***   DELETE OLTEP MODULES   ***/                                    13780000
* /********************************/                                    13790000
* TRA027A:                                                              13800000
*  GEN(BAL   R6,TRA041);                 /* LINK TO FREE CORE   X02008* 13810000
TRA027A  BAL   R6,TRA041                                                13820000
         DS    0H                                                       13830000
* TRA128:                                                               13840000
*  BMCT4='0'B;                           /* NO DELETIONS        X02008* 13850000
TRA128   NI    BMCT18,B'11110111'                                 0481  13860000
* TRA029:                                                               13870000
*  SAVR8=R8;                             /* SAVE REG 8 VALUE    X02008* 13880000
TRA029   ST    @8,SAVR8                                           0482  13890000
* TRA030:                                                               13900000
*  R8=ADDR(MCT);                         /* MCT ADDRESS         X02008* 13910000
TRA030   LA    @8,MCT                                             0483  13920000
* TRA031:                                                               13930000
*  DO R4=20 TO 1 BY -1;                  /* ITEMS IN MCT        X02008* 13940000
TRA031   LA    @4,20                                              0484  13950000
*    IF UTSCAL='0'B THEN                 /* TEST IF UTS CALL    X02008* 13960000
@DO9CD   TM    A00005,B'10000000'                                 0485  13970000
         BC    05,@9C9                                            0485  13980000
*      DO;                               /* CALL FROM UTS       X02008* 13990000
*        MB2(R4)='0'B;                   /* NOT ACTIVE FOR UTS  X02008* 14000000
         LR    @C,@4                                              0487  14010000
         BCTR  @C,0                                               0487  14020000
         MH    @C,@D1                                             0487  14030000
         LA    @A,8(@C,@8)                                        0487  14040000
         NI    0(@A),B'10111111'                                  0487  14050000
*        GOTO TRA032;                    /* ZERO ALL ACTIVE BITSX02008* 14060000
         BC    15,TRA032                                          0488  14070000
*      END;                              /* END OF BIT UPDATE   X02008* 14080000
*    IF MNM2(R4)=I4                      /* TEST FOR BLOCK ID   X02008* 14090000
*          &MB1(R4)='0'B                 /* TEST NO DELETE BIT  X02008* 14100000
*          &MB2(R4)='0'B THEN            /* TEST ACTIVE FOR UTS X02008* 14110000
@9C9     LR    @C,@4                                              0490  14120000
         BCTR  @C,0                                               0490  14130000
         MH    @C,@D1                                             0490  14140000
         LA    @A,9(@C,@8)                                        0490  14150000
         CLC   0(1,@A),I+3                                        0490  14160000
         BC    07,@9C8                                            0490  14170000
         LA    @A,8(@C,@8)                                        0490  14180000
         TM    0(@A),B'10000000'                                  0490  14190000
         BC    05,@9C7                                            0490  14200000
         TM    0(@A),B'01000000'                                  0490  14210000
         BC    05,@9C6                                            0490  14220000
*      DO;                               /* DELETE MODULE OK    X02008* 14230000
*        KNMV=MNAM(R4);                  /* VARYING PART OF NAMEX02008* 14240000
         LA    @E,10(@C,@8)                                       0492  14250000
         MVC   TMCOM+66(2),0(@E)                                  0492  14260000
*        IF LOGADR^=0 THEN               /* CHECK LOGSCAN       X02008* 14270000
         SR    @F,@F                                              0493  14280000
         C     @F,LOGADR                                          0493  14290000
         BC    08,@9C5                                            0493  14300000
*          DO;                           /* LOGSCAN ACTIVE      X02008* 14310000
*            IF KNMV='26' THEN           /* LOGSCAN ID          X02008* 14320000
         CLC   TMCOM+66(2),@C18                                   0495  14330000
*              GOTO TRA032;              /* SKIP DELETIONS      X02008* 14340000
         BC    08,TRA032                                          0496  14350000
*            IF KNMV='46' THEN           /* EXTRACTOR ID        X02008* 14360000
         CLC   TMCOM+66(2),@C19                                   0497  14370000
*              GOTO TRA032;              /* SKIP DELETIONS      X02008* 14380000
         BC    08,TRA032                                          0498  14390000
*          END;                          /* DELETE MODULES      X02008* 14400000
*        MNM2(R4)='00'X;                 /* ZERO OUT BLOCK ID   X02008* 14410000
@9C5     LR    @C,@4                                              0500  14420000
         BCTR  @C,0                                               0500  14430000
         MH    @C,@D1                                             0500  14440000
         LA    @A,9(@C,@8)                                        0500  14450000
         MVI   0(@A),X'00'                                        0500  14460000
*        R0=ADDR(KNT);                   /* MODULE NAME         X02008* 14470000
         LA    @0,TMCOM+60                                        0501  14480000
*        GEN(DELETE EPLOC=(0));          /* DELETE MODULE       X02008* 14490000
         DELETE EPLOC=(0)                                               14500000
         DS    0H                                                       14510000
*        TITEM(R4)=0;                    /* MODULE NOT IN CORE  X02008* 14520000
         SR    @F,@F                                              0503  14530000
         LR    @C,@4                                              0503  14540000
         BCTR  @C,0                                               0503  14550000
         SLA   @C,2                                               0503  14560000
         ST    @F,128(@C,@8)                                      0503  14570000
*        BMCT4='1'B;                     /* INDICATE DELETIONS  X02008* 14580000
         OI    BMCT18,B'00001000'                                 0504  14590000
*      END;                              /* END UPDATING MODULE X02008* 14600000
* TRA032:                                                               14610000
*  END;                                  /* COMPLETE MCT TESTED X02008* 14620000
@9C6     EQU   *                                                  0506  14630000
@9C7     EQU   *                                                  0506  14640000
@9C8     EQU   *                                                  0506  14650000
*  R8=MNXT;                              /* NEXT MCT IF ANY     X02008* 14660000
TRA032   BCT   @4,@DO9CD                                          0506  14670000
         L     @8,4(0,@8)                                         0507  14680000
*  IF R8^=0 THEN                         /* TEST NEXT MCT       X02008* 14690000
         LTR   @8,@8                                              0508  14700000
*    GOTO TRA031;                        /* TEST NEXT MCT       X02008* 14710000
         BC    07,TRA031                                          0509  14720000
*  R8=SAVR8;                             /* RESTORE REG 8 VALUE X02008* 14730000
         L     @8,SAVR8                                           0510  14740000
*  GEN(EJECT);                                                          14750000
         EJECT                                                          14760000
         DS    0H                                                       14770000
* /*******************************/                                     14780000
* /***   RETURN TO MAIN FLOW   ***/                                     14790000
* /*******************************/                                     14800000
*  IF UTSCAL='0'B THEN                   /* TEST FIRST UTS CALL X02008* 14810000
         TM    A00005,B'10000000'                                 0512  14820000
*    GOTO R9;                            /* CALL FROM UTS       X02008* 14830000
         BCR   08,@9                                              0513  14840000
*  IF I4=BHLD THEN                       /* TEST BLOCK ID       X02008* 14850000
         CLC   I+3(1),TMCOM+79                                    0514  14860000
         BC    07,@9C4                                            0514  14870000
*    BIN=BIN+1;                          /* BLOCK COUNT STARTS  X02008* 14880000
         LA    @F,1                                               0515  14890000
         SR    @0,@0                                              0515  14900000
         IC    @0,TMCOM+76                                        0515  14910000
         AR    @F,@0                                              0515  14920000
         STC   @F,TMCOM+76                                        0515  14930000
*  I=I+1;                                /* NEXT BLOCK ID       X02008* 14940000
@9C4     LA    @F,1                                               0516  14950000
         A     @F,I                                               0516  14960000
         ST    @F,I                                               0516  14970000
*  IF I4='00'X THEN                      /* TEST FOR VALID ID   X02008* 14980000
         CLI   I+3,X'00'                                          0517  14990000
         BC    07,@9C3                                            0517  15000000
*    I4='01'X;                           /* LOWEST VALID ID     X02008* 15010000
         MVI   I+3,X'01'                                          0518  15020000
*  IF BMCT4='0'B&                        /* NO DELETIONS MADE   X02008* 15030000
*    BIN^>'02'X THEN                     /* INCOMPLETE PASS      M4506* 15040000
@9C3     TM    BMCT18,B'00001000'                                 0519  15050000
         BC    05,@9C2                                            0519  15060000
         CLI   TMCOM+76,X'02'                                     0519  15070000
*      GOTO TRA030;                      /* DELETE NEXT BLOCK   X02008* 15080000
         BC    13,TRA030                                          0520  15090000
*  IF BMCT1='1'B THEN                    /* TEST REQUEST        X02008* 15100000
@9C1     EQU   *                                                  0521  15110000
@9C2     TM    BMCT18,B'10000000'                                 0521  15120000
*    GOTO TRA018A;                       /* MCT CORE REQUEST    X02008* 15130000
         BC    01,TRA018A                                         0522  15140000
*  IF BMCT4='1'B THEN                    /* TEST DELETION BIT   X02008* 15150000
         TM    BMCT18,B'00001000'                                 0523  15160000
*    GOTO TRA023A;                       /* DELETIONS MADE      X02008* 15170000
         BC    01,TRA023A                                         0524  15180000
*  IF BIN^>'02'X THEN                    /* TEST DELETIONS       M4506* 15190000
         CLI   TMCOM+76,X'02'                                     0525  15200000
*    GOTO TRA030;                        /* DELETE MORE MODULES X02008* 15210000
         BC    12,TRA030                                          0526  15220000
*  IF BHB='00'X THEN                                                    15230000
         CLI   TMCOM+78,X'00'                                     0527  15240000
*    GOTO TRA023D;                                                      15250000
         BC    08,TRA023D                                         0528  15260000
*  IF BHB='01'X THEN                                                    15270000
         CLI   TMCOM+78,X'01'                                     0529  15280000
*    GOTO TRA023C;                                                      15290000
         BC    08,TRA023C                                         0530  15300000
*  GEN(BAL   R6,TRA043);                 /* FREE WORK AREA      X02008* 15310000
         BAL   R6,TRA043                                                15320000
         DS    0H                                                       15330000
* /***************************/                                         15340000
* /***   NOT ENOUGH CORE   ***/                                         15350000
* /***************************/                                         15360000
* TRA032A:                                                              15370000
*  R1=IFD160;                            /* INSUFFICIENT CORE   X02008* 15380000
TRA032A  L     @C,MSGMOD                                          0532  15390000
         L     @1,56(0,@C)                                        0532  15400000
* TRA024A:                                                              15410000
*  GEN(PWTO  REG=(1));                   /* ISSUE A WTO         X02008* 15420000
TRA024A  PWTO  REG=(1)                                                  15430000
         DS    0H                                                       15440000
* TRA025:                                                               15450000
*  R4=4;                                 /* MODULE NOT AVAILABLEX02008* 15460000
TRA025   LA    @4,4                                               0534  15470000
*  GOTO TRA016;                          /* RETURN TO CALLER    X02008* 15480000
         BC    15,TRA016                                          0535  15490000
* TRA038:                                                               15500000
*  IF MOD8='1'B THEN                     /* TEST MODULE NAME    X02008* 15510000
TRA038   TM    BMCT18,B'00010000'                                 0536  15520000
         BC    12,@9C0                                            0536  15530000
*    MODNN=KNT;                          /* NON OLTEP MODULE    X02008* 15540000
         MVC   TMCOM+68(8),TMCOM+60                               0537  15550000
*  GOTO TRA025;                          /* MODULE NOT FOUND    X02008* 15560000
         BC    15,TRA025                                          0538  15570000
* /*****************************************/                           15580000
* /***   GETMAIN AND FREEMAIN ROUTINES   ***/                           15590000
* /*****************************************/                           15600000
* TRA040:                                                               15610000
*  GAVL=GAVL&&GAVL;                      /* ZERO OUT WORK AREA  X02008* 15620000
TRA040   XC    TMCOM+36(8),TMCOM+36                               0539  15630000
*  IF HHSIZ=0 THEN                       /* TEST SIZE           X02008* 15640000
         SR    @F,@F                                              0540  15650000
         C     @F,A00061+12                                       0540  15660000
*    GOTO R6;                            /* SIZE IS ZERO        X02008* 15670000
         BCR   08,@6                                              0541  15680000
*  GEN(GETMAIN VC,LA=GSIZS,A=GAVL);      /* GET AVAILABLE CORE  X02008* 15690000
         GETMAIN VC,LA=GSIZS,A=GAVL                                     15700000
         DS    0H                                                       15710000
*  GOTO R6;                              /* BRANCH BACK         X02008* 15720000
         BCR   15,@6                                              0543  15730000
* TRA041:                                                               15740000
*  IF AVSEZ=0 THEN                       /* TEST SIZE           X02008* 15750000
TRA041   SR    @F,@F                                              0544  15760000
         C     @F,A00061+4                                        0544  15770000
*    GOTO R6;                            /* MISSING VALUE       X02008* 15780000
         BCR   08,@6                                              0545  15790000
*  IF AVADR=0 THEN                       /* TEST ADDRESS        X02008* 15800000
         C     @F,A00061                                          0546  15810000
*    GOTO R6;                            /* MISSING VALUE       X02008* 15820000
         BCR   08,@6                                              0547  15830000
*  GEN(FREEMAIN V,A=GAVL);               /* FREE OBTAINED CORE  X02008* 15840000
         FREEMAIN V,A=GAVL                                              15850000
         DS    0H                                                       15860000
*  GAVL=GAVL&&GAVL;                      /* ZERO OUT WORK AREA  X02008* 15870000
         XC    TMCOM+36(8),TMCOM+36                               0549  15880000
*  GOTO R6;                              /* BRANCH BACK         X02008* 15890000
         BCR   15,@6                                              0550  15900000
* TRA043:                                                               15910000
*  AVADR=GTCOR;                          /* GOTTEN CORE ADDRESS X02008* 15920000
TRA043   MVC   A00061(4),TMCOM+80                                 0551  15930000
*  IF GTCOR=0 THEN                       /* TEST SIZE           X02008* 15940000
         SR    @F,@F                                              0552  15950000
         C     @F,TMCOM+80                                        0552  15960000
*    GOTO R6;                            /* MISSING VALUE       X02008* 15970000
         BCR   08,@6                                              0553  15980000
*  GEN(FREEMAIN E,LV=656,A=AVADR);       /* FREE CORE           X02008* 15990000
         FREEMAIN E,LV=656,A=AVADR                                      16000000
         DS    0H                                                       16010000
*  GTCOR=0;                              /* NO CORE             X02008* 16020000
         SR    @F,@F                                              0555  16030000
         ST    @F,TMCOM+80                                        0555  16040000
*  GOTO R6;                              /* BRANCH BACK         X02008* 16050000
         BCR   15,@6                                              0556  16060000
* TRA044:                                                               16070000
*  AVADR=0;                              /* NO CORE             X02008* 16080000
TRA044   SR    @F,@F                                              0557  16090000
         ST    @F,A00061                                          0557  16100000
*  GEN(GETMAIN EC,LV=656,A=AVADR);       /* OBTAIN CORE         X02008* 16110000
         GETMAIN EC,LV=656,A=AVADR                                      16120000
         DS    0H                                                       16130000
*  IF R15^=0 THEN                        /* TEST CONDITION CODE X02008* 16140000
         LTR   @F,@F                                              0559  16150000
         BC    08,@9BF                                            0559  16160000
*    AVADR=0;                            /* NOT SUCCESSFUL      X02008* 16170000
         SR    @F,@F                                              0560  16180000
         ST    @F,A00061                                          0560  16190000
*  GTCOR=AVADR;                          /* SAVE CORE ADDRESS   X02008* 16200000
@9BF     MVC   TMCOM+80(4),A00061                                 0561  16210000
*  GOTO R6;                              /* BRANCH BACK         X02008* 16220000
         BCR   15,@6                                              0562  16230000
*    GEN(EJECT);                                                        16240000
         EJECT                                                          16250000
         DS    0H                                                       16260000
* /***************************/                                         16270000
* /***   ROUTINE HANDLER   ***/                                         16280000
* /***************************/                                         16290000
* TRA022:                                                               16300000
*  SVR14=R5;                             /* UTS RETURN ADDRESS  X02008* 16310000
TRA022   L     @C,4(0,@D)                                         0564  16320000
         ST    @5,12(0,@C)                                        0564  16330000
*  RTMASK='00'X;                         /* CLEAR RETURN MASK   X02008* 16340000
         MVI   70(@2),X'00'                                       0565  16350000
*  IF SVPL>'02'X THEN                    /* CHECK MACRO LEVEL */        16360000
         CLI   TMCOM+85,X'02'                                     0566  16370000
*    GOTO TRA025;                        /* LEVEL NOT SUPPORTED */      16380000
         BC    02,TRA025                                          0567  16390000
*  R4=RTNN;                              /* ROUTINE NUMBER */           16400000
         SR    @4,@4                                              0568  16410000
         IC    @4,8(0,@3)                                         0568  16420000
*  GEN(CVD   R4,64(R13));                /* ROUTINE IN DECIMAL        * 16430000
         CVD   R4,64(R13)                                               16440000
         DS    0H                                                       16450000
*  GEN(UNPK  RTLOC(4),64(8,R13));        /* UNPACK              X02008* 16460000
         UNPK  RTLOC(4),64(8,R13)                                       16470000
         DS    0H                                                       16480000
*  GEN(MVZ   RTLOC+3(1),RTLOC+2);        /* MOVE ZONE           X02008* 16490000
         MVZ   RTLOC+3(1),RTLOC+2                                       16500000
         DS    0H                                                       16510000
*  RTRTNM=RTLOC(2:4);                    /* ROUTINE NUMBER      X02008* 16520000
         MVC   RETMSG+14(3),RETMSG+28                             0572  16530000
*  IF RTNN>TERTN THEN                    /* CHECK ROUTINE NUMBER      * 16540000
         CLC   8(1,@3),A00008                                     0573  16550000
         BC    12,@9BE                                            0573  16560000
*                                        /*                     A45731* 16570000
*    TERTN=RTNN;                         /* INSERT HIGHEST NUMBER     * 16580000
         MVC   A00008(1),8(@3)                                    0574  16590000
*                                        /*                     A45731* 16600000
*  R6=R4/8;                              /* MULTIPLES OF EIGHT */       16610000
@9BE     LR    @E,@4                                              0575  16620000
         SRA   @E,3                                               0575  16630000
         LR    @6,@E                                              0575  16640000
*  R4=R4-(R6*8);                         /* BIT COUNT */                16650000
         LA    @F,8                                               0576  16660000
         MR    @E,@6                                              0576  16670000
         LCR   @F,@F                                              0576  16680000
         AR    @4,@F                                              0576  16690000
*  IF R4=0 THEN                          /* TEST BIT COUNT */           16700000
         LTR   @4,@4                                              0577  16710000
         BC    07,@9BD                                            0577  16720000
*    R4=8;                               /* EIGHTH BIT OF BYTE */       16730000
         LA    @4,8                                               0578  16740000
         BC    15,@9BC                                            0579  16750000
*  ELSE R6=R6+1;                         /* BYTE COUNT */               16760000
@9BD     AH    @6,@D2                                             0579  16770000
*  IF R6>2 THEN                          /* TEST ROUTINE NUMBER */      16780000
@9BC     CH    @6,@D5                                             0580  16790000
         BC    12,@9BB                                            0580  16800000
*    R5=ADDR(SCTW9C);                    /* MASK FOR ABOVE ROUTINE 2 */ 16810000
         LA    @5,A00014+38                                       0581  16820000
         BC    15,@9BA                                            0582  16830000
*  ELSE R5=ADDR(SCTW1);                  /* MASK FOR ROUTINES 1 OR 2 */ 16840000
@9BB     LA    @5,A00014+4                                        0582  16850000
*  RR=MASK(R4)&RTN8(R6);                 /* MASK OUT ROUTINE BIT */     16860000
@9BA     LR    @C,@6                                              0583  16870000
         BCTR  @C,0                                               0583  16880000
         LA    @E,0(@C,@5)                                        0583  16890000
         MVC   LIST(1),0(@E)                                      0583  16900000
         LR    @C,@4                                              0583  16910000
         LA    @E,LIST(@C)                                        0583  16920000
         NC    LIST(1),0(@E)                                      0583  16930000
*  IF RR='00'X THEN                      /* TEST ROUTINE TO GO TO */    16940000
         CLI   LIST,X'00'                                         0584  16950000
*    GOTO TRA023;                        /* GO TO NEXT ROUTINE */       16960000
         BC    08,TRA023                                          0585  16970000
*  IF MIMK='1'B&                         /* TEST MASK BIT IN MACRO */   16980000
*    MIBT='0'B THEN                      /* TEST MI BIT IN SCT */       16990000
         TM    10(@3),B'10000000'                                 0586  17000000
         BC    12,@9B9                                            0586  17010000
         TM    A00014+36,B'10000000'                              0586  17020000
         BC    05,@9B8                                            0586  17030000
*      DO;                               /* SKIP ROUTINE              * 17040000
*        R1=IFD210;                      /* PTR TO IFD210 MSG         * 17050000
         L     @C,MSGMOD                                          0588  17060000
         L     @1,64(0,@C)                                        0588  17070000
*        MIRTNM=RTLOC(1:4);              /* ROUTINE NUMBER      X02008* 17080000
         MVC   20(4,@1),RETMSG+27                                 0589  17090000
*        GEN(PWTO  REG=(1));             /* ISSUE WTO                 * 17100000
         PWTO  REG=(1)                                                  17110000
         DS    0H                                                       17120000
* TRA023:                                                               17130000
*        R4=RTNEXT;                      /* NEXT ROUTINE        X02008* 17140000
TRA023   L     @4,4(0,@3)                                         0591  17150000
*        GOTO TRA013;                    /* GO TO ROUTINE       X02008* 17160000
         BC    15,TRA013                                          0592  17170000
*      END;                              /* END SKIPPING              * 17180000
*        R7=SECPRF;                      /* ROUTINE NUMBER ADDRESS */   17190000
@9B8     EQU   *                                                  0594  17200000
@9B9     L     @7,A00009+36                                       0594  17210000
*        ERBT='0'B;                      /* ZERO ERROR BIT IN SCT */    17220000
         NI    A00014+3,B'01111111'                               0595  17230000
*        RTN=RTNN;                       /* RTN INTO SECTION PREFACE */ 17240000
         MVC   0(1,@7),8(@3)                                      0596  17250000
*        IF REFN^='00'X THEN             /* TEST FOR REFERENCE NUMBER * 17260000
         CLI   9(@3),X'00'                                        0597  17270000
         BC    08,@9B7                                            0597  17280000
*          REFNUM=REFN;                  /* NUMBER INTO SECTION */      17290000
         MVC   17(1,@7),9(@3)                                     0598  17300000
*        RETURN;                         /* NORMAL RETURN */            17310000
         BC    15,@EL01                                           0599  17320000
* TRA028:                                                               17330000
*  IF CLEANRT='1'B THEN                  /* DOES OLT HAVE CLN-UPX03008* 17340000
TRA028   TM    A00014+36,B'01000000'                              0600  17350000
         BC    12,@9B6                                            0600  17360000
*    CLEANUP='1'B;                       /* YES, MAKE SURE      X03008* 17370000
         OI    A00014+33,B'00000100'                              0601  17380000
*                                        /* CLEANUP EXECUTED    X03008* 17390000
*  ASTERB='1'B;                          /* INDICATE ASTERISK */        17400000
@9B6     OI    A00014+3,B'01000000'                               0602  17410000
*  CHNBK=SCHEDSA;                        /* SCHEDULER SAVE AREA */      17420000
         MVC   4(4,@D),SCHEDSA                                    0603  17430000
*  RETURN;                               /* RETURN TO SCHEDULER */      17440000
         BC    15,@EL01                                           0604  17450000
*         GEN(EJECT);                                                   17460000
         EJECT                                                          17470000
         DS    0H                                                       17480000
         BC    15,@9B5                                            0606  17490000
* TRA130:                                                               17500000
*  ENTRY(X);                             /* RETURN CODE HANDLER X02008* 17510000
TRA130   STM   @E,@C,12(@D)                                       0606  17520000
         BALR  @B,0                                               0606  17530000
         LA    @F,TRA130-IFDOLT18-24                              0606  17540000
         SR    @B,@F                                              0606  17550000
         ST    @D,@SAV001+4                                       0606  17560000
         LA    @F,@SAV001                                         0606  17570000
         ST    @F,8(0,@D)                                         0606  17580000
         LR    @D,@F                                              0606  17590000
*  SVR14=UTRET;                          /* UTS RETURN ADDRESS  X02008* 17600000
@9B5     L     @C,4(0,@D)                                         0607  17610000
         MVC   12(4,@C),UTRET                                     0607  17620000
*  R4=SV15;                              /* RETURN CODE         X02008* 17630000
         L     @4,16(0,@C)                                        0608  17640000
*  R5=R4;                                /* RETURN CODE SAVED   X02008* 17650000
         LR    @5,@4                                              0609  17660000
*  RTAST=' ';                            /* BLANK CHARACTER     X02008* 17670000
         MVI   RETMSG+8,C' '                                      0610  17680000
*  IF CLEANUP='1'B THEN                  /* CHECK FOR CLEANUP   X02008* 17690000
         TM    A00014+33,B'00000100'                              0611  17700000
*    GOTO TRA035;                        /* CHECK TRACE REQUEST X02008* 17710000
         BC    01,TRA035                                          0612  17720000
*  IF RTMASK='00'X THEN                  /* TEST RETURN CODE    X02008* 17730000
         CLI   70(@2),X'00'                                       0613  17740000
*    GOTO TRA035;                        /* NO RETURN CODE MASK X02008* 17750000
         BC    08,TRA035                                          0614  17760000
*  IF R4=0 THEN                          /* CHECK RETURN CODE   X02008* 17770000
         LTR   @4,@4                                              0615  17780000
*    GOTO TRA035;                        /* GOOD RETURN CODE    X02008* 17790000
         BC    08,TRA035                                          0616  17800000
*  IF R4>32 THEN                         /* CHECK RETURN CODE   X02008* 17810000
         CH    @4,@D6                                             0617  17820000
*    GOTO TRA035;                        /* ILLEGAL RETURN CODE X02008* 17830000
         BC    02,TRA035                                          0618  17840000
*  R4=R4/4;                              /* MULTIPLE OF FOUR    X02008* 17850000
         LR    @E,@4                                              0619  17860000
         SRA   @E,2                                               0619  17870000
         LR    @4,@E                                              0619  17880000
*  RR=RTMASK;                            /* MASK BITS FROM SCT  X02008* 17890000
         MVC   LIST(1),70(@2)                                     0620  17900000
*  R4=R4+ADDR(LIST);                     /* MASK BIT RETURNED   X02008* 17910000
         LA    @F,LIST                                            0621  17920000
         AR    @4,@F                                              0621  17930000
*  RR=RR&MDMASK;                         /* AND MASK TOGETHER   X02008* 17940000
         NC    LIST(1),0(@4)                                      0622  17950000
*  IF RR^=MDMASK THEN                    /* CHECK IF BITS MATCH X02008* 17960000
         CLC   LIST(1),0(@4)                                      0623  17970000
*    GOTO TRA035;                        /* CHECK TRACE REQUEST X02008* 17980000
         BC    07,TRA035                                          0624  17990000
*  RTAST='*';                            /* RETCODE REQUEST     X02008* 18000000
         MVI   RETMSG+8,C'*'                                      0625  18010000
*  GOTO TRA037;                          /* RETCODE REQUEST     X02008* 18020000
         BC    15,TRA037                                          0626  18030000
* TRA035:                                                               18040000
*    IF TRACE='0'B THEN                  /* CHECK TRACE         X02008* 18050000
TRA035   TM    A00014+36,B'00000100'                              0627  18060000
*    RETURN;                             /* RETURN TO UTS       X02008* 18070000
         BC    10,@EL01                                           0628  18080000
* TRA037:                                                               18090000
*  GEN(BAL   R9,TRA039);                 /* HEX TO EBCDIC       X02008* 18100000
@9B4     EQU   *                                                  0629  18110000
TRA037   BAL   R9,TRA039                                                18120000
         DS    0H                                                       18130000
*  RTTERM=RTLOC(7:8);                    /* RETURN CODE TO PRINTX02008* 18140000
         MVC   RETMSG+39(2),RETMSG+33                             0630  18150000
*  R5=UTRET;                             /* UTS RETURN ADDRESS  X02008* 18160000
         L     @5,UTRET                                           0631  18170000
*  GEN(BAL   R9,TRA039);                 /* HEX TO EBCDIC       X02008* 18180000
         BAL   R9,TRA039                                                18190000
         DS    0H                                                       18200000
*  PRTBUFR(1)=' ';                       /* CLEAR PRINT LOCATIONX02008* 18210000
         MVI   PRTBUFR,C' '                                       0633  18220000
*  PRTBUFR(2:124)=PRTBUFR(1:123);        /* CLEAR PRINT BUFFER  X02008* 18230000
         MVC   PRTBUFR+1(123),PRTBUFR                             0634  18240000
*  PRTBUFR(2:42)=RETMSG;                 /* MESSAGE INTO BUFFER X02008* 18250000
         MVC   PRTBUFR+1(41),RETMSG                               0635  18260000
*  R1=42;                                /* MESSAGE SIZE        X02008* 18270000
         LA    @1,42                                              0636  18280000
*  GEN(PWRT  SIZE=(1));                  /* PRINT MESSAGE       X02008* 18290000
         PWRT  SIZE=(1)                                                 18300000
         DS    0H                                                       18310000
*  IF RTAST=' ' THEN                     /* CHECK FOR TRACE     X02008* 18320000
         CLI   RETMSG+8,C' '                                      0638  18330000
*    RETURN;                             /* RETURN TO UTS       X02008* 18340000
         BC    08,@EL01                                           0639  18350000
*  GOTO TRA028;                          /* RETURN TO SCHEDULER X02008* 18360000
         BC    15,TRA028                                          0640  18370000
* TRA039:                                                               18380000
*  SV1T8(1)='0F'X;                       /* INITIALIZE          X02008* 18390000
TRA039   MVI   A00071,X'0F'                                       0641  18400000
*  SV1T8(2:8)=SV1T8(1:7);                /* INITIALIZE          X02008* 18410000
         MVC   A00071+1(7),A00071                                 0642  18420000
*  SV2=R5&SV2;                           /* EVEN HEX CHARACTERS X02008* 18430000
         L     @F,A00071+4                                        0643  18440000
         NR    @F,@5                                              0643  18450000
         ST    @F,A00071+4                                        0643  18460000
*  R5=R5/16;                             /* SHIFT A HEX CHAR    X02008* 18470000
         LR    @E,@5                                              0644  18480000
         SRA   @E,4                                               0644  18490000
         LR    @5,@E                                              0644  18500000
*  SV1=R5&SV1;                           /* ODD HEX CHARACTERS  X02008* 18510000
         L     @F,A00071                                          0645  18520000
         NR    @F,@5                                              0645  18530000
         ST    @F,A00071                                          0645  18540000
*  R5=ADDR(SV1T8);                       /* SAVE AREA           X02008* 18550000
         LA    @5,A00071                                          0646  18560000
*  R6=ADDR(CLIST);                       /* LIST ADDRESS        X02008* 18570000
         LA    @6,CLIST                                           0647  18580000
*  R7=ADDR(RTLOC);                       /* RETURN LOCATION     X02008* 18590000
         LA    @7,RETMSG+27                                       0648  18600000
*  DO R4=4 TO 1 BY -1;                   /* CONVERT ROUTINE     X02008* 18610000
         LA    @4,4                                               0649  18620000
*    R8=R6+SV1C;                         /* CHARACTER ADDRESS   X02008* 18630000
@DO9B2   SR    @8,@8                                              0650  18640000
         IC    @8,0(0,@5)                                         0650  18650000
         AR    @8,@6                                              0650  18660000
*    RTLOC1=EBCD;                        /* CHARACTER TO PRINT  X02008* 18670000
         MVC   0(1,@7),0(@8)                                      0651  18680000
*    R8=R6+SV2C;                         /* CHARACTER ADDRESS   X02008* 18690000
         SR    @8,@8                                              0652  18700000
         IC    @8,4(0,@5)                                         0652  18710000
         AR    @8,@6                                              0652  18720000
*    RTLOC2=EBCD;                        /* CHARACTER TO PRINT  X02008* 18730000
         MVC   1(1,@7),0(@8)                                      0653  18740000
*    R7=ADDR(NXTRTL);                    /* NEXT LOCATION       X02008* 18750000
         LA    @7,2(0,@7)                                         0654  18760000
*    R5=ADDR(NXTSVC);                    /* NEXT CHARACTER      X02008* 18770000
         LA    @5,1(0,@5)                                         0655  18780000
*  END;                                  /* END ROUTINE         X02008* 18790000
*  GOTO R9;                              /* RETURN TO MAIN FLOW X02008* 18800000
         BCT   @4,@DO9B2                                          0656  18810000
         BCR   15,@9                                              0657  18820000
* END;                                                                  18830000
@EL01    L     @D,4(0,@D)                                         0658  18840000
         LM    @E,@C,12(@D)                                       0658  18850000
         BCR   15,@E                                              0658  18860000
@DATA1   EQU   *                                                        18870000
@0       EQU   00                  EQUATES FOR REGISTERS 0-15           18880000
@1       EQU   01                                                       18890000
@2       EQU   02                                                       18900000
@3       EQU   03                                                       18910000
@4       EQU   04                                                       18920000
@5       EQU   05                                                       18930000
@6       EQU   06                                                       18940000
@7       EQU   07                                                       18950000
@8       EQU   08                                                       18960000
@9       EQU   09                                                       18970000
@A       EQU   10                                                       18980000
@B       EQU   11                                                       18990000
@C       EQU   12                                                       19000000
@D       EQU   13                                                       19010000
@E       EQU   14                                                       19020000
@F       EQU   15                                                       19030000
@D1      DC    H'6'                                                     19040000
@D2      DC    H'1'                                                     19050000
@D3      DC    H'20'                                                    19060000
@D4      DC    H'662'                                                   19070000
@D5      DC    H'2'                                                     19080000
@D6      DC    H'32'                                                    19090000
         DS    0F                                                       19100000
@C9      DC    C'40'                                                    19110000
@C10     DC    C'47'                                                    19120000
@C11     DC    C'08'                                                    19130000
@C12     DC    C'39'                                                    19140000
@C18     DC    C'26'                                                    19150000
@C19     DC    C'46'                                                    19160000
         DS    0D                                                       19170000
@DATA    EQU   *                                                        19180000
@SAV001  EQU   @DATA+00000000      72 BYTE(S) ON WORD                   19190000
X        EQU   00000000            FULLWORD INTEGER                     19200000
R0       EQU   00000000            FULLWORD POINTER REGISTER            19210000
R1       EQU   00000001            FULLWORD POINTER REGISTER            19220000
R2       EQU   00000002            FULLWORD POINTER REGISTER            19230000
R3       EQU   00000003            FULLWORD POINTER REGISTER            19240000
R4       EQU   00000004            FULLWORD POINTER REGISTER            19250000
R5       EQU   00000005            FULLWORD POINTER REGISTER            19260000
R6       EQU   00000006            FULLWORD POINTER REGISTER            19270000
R7       EQU   00000007            FULLWORD POINTER REGISTER            19280000
R8       EQU   00000008            FULLWORD POINTER REGISTER            19290000
R9       EQU   00000009            FULLWORD POINTER REGISTER            19300000
R11      EQU   00000011            FULLWORD POINTER REGISTER            19310000
R12      EQU   00000012            FULLWORD POINTER REGISTER            19320000
R13      EQU   00000013            FULLWORD POINTER REGISTER            19330000
R14      EQU   00000014            FULLWORD POINTER REGISTER            19340000
R15      EQU   00000015            FULLWORD POINTER REGISTER            19350000
         ORG   @DATA+00000072                                           19360000
COMADR   EQU   *                   FULLWORD POINTER                     19370000
         DC    VL4(IFDOLT23)                                            19380000
OPFLG    EQU   00000048            8 BIT(S) ON BYTE                     19390000
A00012   EQU   00000004            7 BYTE(S) ON WORD                    19400000
RTNEXT   EQU   A00012+00000000     FULLWORD POINTER                     19410000
RTNN     EQU   A00012+00000004     1 BYTE(S)                            19420000
REFN     EQU   A00012+00000005     1 BYTE(S)                            19430000
RFLG     EQU   A00012+00000006     8 BIT(S)                             19440000
MIMK     EQU   A00012+00000006     1 BIT(S)                             19450000
TERM     EQU   A00012+00000006     1 BIT(S)                             19460000
A00013   EQU   A00012+00000006     1 BIT(S)                             19470000
RTN      EQU   00000000            1 BYTE(S)                            19480000
REFNUM   EQU   00000017            1 BYTE(S)                            19490000
A00027   EQU   00000000            32 BYTE(S) ON WORD                   19500000
RTN8     EQU   A00027+00000000     32*1 BYTE(S)                         19510000
A00028   EQU   00000000            1 BYTE(S) ON WORD                    19520000
RTNB     EQU   A00028+00000000     8 BIT(S)                             19530000
RST15    EQU   00000016            FULLWORD POINTER                     19540000
A00029   EQU   00000000            28 BYTE(S) ON WORD                   19550000
A00030   EQU   A00029+00000000     FULLWORD INTEGER                     19560000
CHNBK    EQU   A00029+00000004     FULLWORD POINTER                     19570000
SR13     EQU   A00029+00000008     FULLWORD POINTER                     19580000
SR14     EQU   A00029+00000012     FULLWORD POINTER                     19590000
SR15     EQU   A00029+00000016     FULLWORD POINTER                     19600000
SR0      EQU   A00029+00000020     FULLWORD POINTER                     19610000
SR1      EQU   A00029+00000024     FULLWORD POINTER                     19620000
A00031   EQU   A00029+00000024     FULLWORD POINTER                     19630000
I        EQU   @DATA+00000076      FULLWORD INTEGER                     19640000
A00032   EQU   I+00000000          3 BYTE(S)                            19650000
I4       EQU   I+00000003          1 BYTE(S)                            19660000
MCA      EQU   00000000            208 BYTE(S) ON WORD                  19670000
MPRE     EQU   MCA+00000000        FULLWORD POINTER                     19680000
MNXT     EQU   MCA+00000004        FULLWORD POINTER                     19690000
MITEM    EQU   MCA+00000008        20*6 BYTE(S)                         19700000
MNM      EQU   MCA+00000008        2 BYTE(S)                            19710000
MNM1     EQU   MCA+00000008        1 BYTE(S)                            19720000
MB1      EQU   MCA+00000008        1 BIT(S)                             19730000
MB2      EQU   MCA+00000008        1 BIT(S)                             19740000
A00033   EQU   MCA+00000008        5 BIT(S)                             19750000
MB8      EQU   MCA+00000008        1 BIT(S)                             19760000
MNM2     EQU   MCA+00000009        1 BYTE(S)                            19770000
MNAM     EQU   MCA+00000010        2 BYTE(S)                            19780000
MN1      EQU   MCA+00000010        1 BYTE(S)                            19790000
MMSIZ    EQU   MCA+00000012        2 BYTE(S)                            19800000
TITEM    EQU   MCA+00000128        20*FULLWORD POINTER                  19810000
MCTADS   EQU   00000128            1 BYTE(S)                            19820000
TADR     EQU   00000000            20*FULLWORD POINTER                  19830000
BMCT18   EQU   @DATA+00000080      8 BIT(S) ON BYTE                     19840000
BMCT12   EQU   BMCT18+00000000     2 BIT(S)                             19850000
BMCT1    EQU   BMCT18+00000000     1 BIT(S)                             19860000
BMCT2    EQU   BMCT18+00000000     1 BIT(S)                             19870000
PLKBIT   EQU   BMCT18+00000000     1 BIT(S)                             19880000
MOD8     EQU   BMCT18+00000000     1 BIT(S)                             19890000
BMCT45   EQU   BMCT18+00000000     2 BIT(S)                             19900000
BMCT4    EQU   BMCT18+00000000     1 BIT(S)                             19910000
BMCT5    EQU   BMCT18+00000000     1 BIT(S)                             19920000
MINMOR   EQU   BMCT18+00000000     1 BIT(S)                             19930000
A00034   EQU   BMCT18+00000000     1 BIT(S)                             19940000
SVR14    EQU   00000012            FULLWORD POINTER                     19950000
SVR141   EQU   SVR14+00000000      1 BYTE(S)                            19960000
SV15     EQU   00000016            FULLWORD POINTER                     19970000
SVR3     EQU   00000032            FULLWORD POINTER                     19980000
A00035   EQU   00000000            10 BYTE(S) ON WORD                   19990000
PMW1     EQU   A00035+00000000     10 BYTE(S)                           20000000
A00036   EQU   A00035+00000000     1 BYTE(S)                            20010000
PLEV     EQU   A00035+00000001     1 BYTE(S)                            20020000
PLID     EQU   A00035+00000002     2 BYTE(S)                            20030000
A00037   EQU   A00035+00000002     1 BYTE(S)                            20040000
MIRTNM   EQU   00000020            4 BYTE(S)                            20050000
         ORG   @DATA+00000081                                           20060000
CLIST    EQU   *                   16 BYTE(S)                           20070000
         DC    C'0123456789ABCDEF'                                      20080000
EBCD     EQU   00000000            1 BYTE(S)                            20090000
RETMSG   EQU   *                   41 BYTE(S)                           20100000
         DC    C'IFD450I * RTN XXX,ID YY,AT ZZZZZZZZ,RC WW'             20110000
A00038   EQU   RETMSG+00000000     8 BYTE(S)                            20120000
RTAST    EQU   RETMSG+00000008     1 BYTE(S)                            20130000
A00039   EQU   RETMSG+00000009     4 BYTE(S)                            20140000
RTNM14   EQU   RETMSG+00000013     4 BYTE(S)                            20150000
A00040   EQU   RETMSG+00000013     1 BYTE(S)                            20160000
RTRTNM   EQU   RETMSG+00000014     3 BYTE(S)                            20170000
A00041   EQU   RETMSG+00000017     4 BYTE(S)                            20180000
RTMCID   EQU   RETMSG+00000021     2 BYTE(S)                            20190000
A00042   EQU   RETMSG+00000023     4 BYTE(S)                            20200000
RTLOC    EQU   RETMSG+00000027     8 BYTE(S)                            20210000
A00043   EQU   RETMSG+00000035     4 BYTE(S)                            20220000
RTTERM   EQU   RETMSG+00000039     2 BYTE(S)                            20230000
A00044   EQU   00000000            8 BYTE(S)                            20240000
RTLOC1   EQU   A00044+00000000     1 BYTE(S)                            20250000
RTLOC2   EQU   A00044+00000001     1 BYTE(S)                            20260000
NXTRTL   EQU   A00044+00000002     1 BYTE(S)                            20270000
A00045   EQU   00000000            8 BYTE(S) ON WORD                    20280000
TAB1     EQU   A00045+00000000     FULLWORD POINTER                     20290000
TAB2     EQU   A00045+00000004     FULLWORD POINTER                     20300000
A00046   EQU   00000000            10 BYTE(S) ON WORD                   20310000
A00047   EQU   A00046+00000000     4 BYTE(S)                            20320000
MIDOLD   EQU   A00046+00000004     2 BYTE(S)                            20330000
MIDOLD1  EQU   A00046+00000004     1 BYTE(S)                            20340000
MAC2     EQU   A00046+00000006     4 BYTE(S)                            20350000
A00048   EQU   00000000            14 BYTE(S) ON WORD                   20360000
A00049   EQU   A00048+00000000     2*FULLWORD POINTER                   20370000
A00050   EQU   A00048+00000008     1 BYTE(S)                            20380000
A00051   EQU   A00048+00000008     1 BIT(S)                             20390000
ACTMD    EQU   A00048+00000008     1 BIT(S)                             20400000
MBK1     EQU   A00048+00000009     1 BYTE(S)                            20410000
MID1     EQU   A00048+00000010     2 BYTE(S)                            20420000
MSZ1     EQU   A00048+00000012     2 BYTE(S)                            20430000
MCT2     EQU   00000006            FULLWORD INTEGER                     20440000
TMCOM    EQU   @DATA+00000140      94 BYTE(S) ON WORD                   20450000
WKAREA   EQU   TMCOM+00000000      60 BYTE(S) ON WORD                   20460000
         ORG   TMCOM+00000000                                           20470000
A00052   EQU   *                   HALFWORD INTEGER                     20480000
         DC    FL2'1'                                                   20490000
A00053   EQU   *                   HALFWORD INTEGER                     20500000
         DC    FL2'56'                                                  20510000
WITEM    EQU   TMCOM+00000004      32 BYTE(S)                           20520000
WTOTNM   EQU   TMCOM+00000004      8 BYTE(S)                            20530000
WNM      EQU   *                   6 BYTE(S)                            20540000
         DC    C'IFDOLT'                                                20550000
WNAM     EQU   TMCOM+00000010      2 BYTE(S)                            20560000
WTTRK    EQU   TMCOM+00000012      6 BYTE(S)                            20570000
A00054   EQU   TMCOM+00000012      2 BYTE(S)                            20580000
WR       EQU   TMCOM+00000014      1 BYTE(S)                            20590000
A00055   EQU   TMCOM+00000018      11 BYTE(S)                           20600000
WMSIZ    EQU   TMCOM+00000029      2 BYTE(S)                            20610000
A00056   EQU   TMCOM+00000031      1 BYTE(S)                            20620000
WK24     EQU   TMCOM+00000036      24 BYTE(S) ON WORD                   20630000
GAVL     EQU   TMCOM+00000036      8 BYTE(S)                            20640000
GSIZS    EQU   TMCOM+00000044      8 BYTE(S)                            20650000
GAVL1    EQU   TMCOM+00000052      8 BYTE(S) ON WORD                    20660000
         ORG   TMCOM+00000060                                           20670000
KNT      EQU   *                   8 BYTE(S)                            20680000
         DC    C'IFDOLT  '                                              20690000
KNAME    EQU   TMCOM+00000060      6 BYTE(S)                            20700000
KNMV     EQU   TMCOM+00000066      2 BYTE(S)                            20710000
MODNN    EQU   *                   8 BYTE(S)                            20720000
         DC    C'IFDOLT  '                                              20730000
MODNN6   EQU   TMCOM+00000068      6 BYTE(S)                            20740000
BDEL     EQU   *                   FULLWORD INTEGER                     20750000
         DC    FL4'1'                                                   20760000
BIN      EQU   TMCOM+00000076      1 BYTE(S)                            20770000
WK1BYT   EQU   TMCOM+00000077      1 BYTE(S)                            20780000
BHB      EQU   TMCOM+00000078      1 BYTE(S)                            20790000
BHLD     EQU   TMCOM+00000079      1 BYTE(S)                            20800000
GTCOR    EQU   TMCOM+00000080      FULLWORD POINTER                     20810000
SVPMW1   EQU   TMCOM+00000084      10 BYTE(S)                           20820000
SVP1     EQU   TMCOM+00000084      2 BYTE(S)                            20830000
P1BITS   EQU   TMCOM+00000084      8 BIT(S)                             20840000
P1B0     EQU   TMCOM+00000084      1 BIT(S)                             20850000
P1B1     EQU   TMCOM+00000084      1 BIT(S)                             20860000
P1B23    EQU   TMCOM+00000084      2 BIT(S)                             20870000
P1B2     EQU   TMCOM+00000084      1 BIT(S)                             20880000
P1B3     EQU   TMCOM+00000084      1 BIT(S)                             20890000
P1B4     EQU   TMCOM+00000084      1 BIT(S)                             20900000
P1B5     EQU   TMCOM+00000084      1 BIT(S)                             20910000
P1B6     EQU   TMCOM+00000084      1 BIT(S)                             20920000
P1B7     EQU   TMCOM+00000084      1 BIT(S)                             20930000
SVPL     EQU   TMCOM+00000085      1 BYTE(S)                            20940000
SVP8     EQU   TMCOM+00000086      8 BYTE(S)                            20950000
SVP2     EQU   TMCOM+00000086      2 BYTE(S)                            20960000
NXMCT    EQU   00000004            FULLWORD POINTER                     20970000
MCTAD1   EQU   00000128            FULLWORD POINTER                     20980000
         ORG   @DATA+00000234                                           20990000
OLDMAC   EQU   *                   2 BYTE(S)                            21000000
         DC    X'0102'                                                  21010000
A00059   EQU   00000000            73 BYTE(S) ON WORD                   21020000
A00060   EQU   A00059+00000000     13 BYTE(S)                           21030000
WTOFORM  EQU   A00059+00000013     60 BYTE(S)                           21040000
BLDLIST  EQU   00000000            4 BYTE(S) ON WORD                    21050000
LENTCT   EQU   BLDLIST+00000000    HALFWORD INTEGER                     21060000
LENTSZ   EQU   BLDLIST+00000002    HALFWORD INTEGER                     21070000
A00061   EQU   @DATA+00000176      16 BYTE(S) ON WORD                   21080000
AVADR    EQU   A00061+00000000     FULLWORD POINTER                     21090000
AVSEZ    EQU   A00061+00000004     FULLWORD INTEGER                     21100000
A00062   EQU   A00061+00000004     2 BYTE(S)                            21110000
AVSIZ    EQU   A00061+00000006     2 BYTE(S)                            21120000
LOSIZ    EQU   A00061+00000008     FULLWORD INTEGER                     21130000
HHSIZ    EQU   A00061+00000012     FULLWORD INTEGER                     21140000
HHSIZC   EQU   A00061+00000012     4 BYTE(S)                            21150000
A00063   EQU   A00061+00000012     2 BYTE(S)                            21160000
HISIZ    EQU   A00061+00000014     2 BYTE(S)                            21170000
A00064   EQU   A00061+00000014     1 BYTE(S)                            21180000
WK1PTR   EQU   @DATA+00000236      FULLWORD POINTER                     21190000
SAVR8    EQU   @DATA+00000240      FULLWORD POINTER                     21200000
A00065   EQU   @DATA+00000140      34 BYTE(S) ON WORD                   21210000
A00066   EQU   A00065+00000000     5*FULLWORD POINTER                   21220000
NMCT     EQU   A00065+00000020     14 BYTE(S)                           21230000
NTADR    EQU   A00065+00000020     4  BYTE  POINTER                     21240000
BLIST1   EQU   00000000            60 BYTE(S)                           21250000
A00067   EQU   BLIST1+00000000     4 BYTE(S)                            21260000
A00068   EQU   BLIST1+00000004     8 BYTE(S)                            21270000
LNM2     EQU   BLIST1+00000004     6 BYTE(S)                            21280000
LNAM2    EQU   BLIST1+00000010     2 BYTE(S)                            21290000
LTTRK    EQU   BLIST1+00000012     6 BYTE(S)                            21300000
A00069   EQU   BLIST1+00000012     2 BYTE(S)                            21310000
LR       EQU   BLIST1+00000014     1 BYTE(S)                            21320000
A00070   EQU   BLIST1+00000018     11 BYTE(S)                           21330000
LSIZ     EQU   BLIST1+00000029     2 BYTE(S)                            21340000
BLIST2   EQU   00000056            FULLWORD INTEGER                     21350000
A00071   EQU   @DATA+00000152      8 BYTE(S) ON WORD                    21360000
SV1T8    EQU   A00071+00000000     8 BYTE(S)                            21370000
SV1      EQU   A00071+00000000     4  BYTE  INTEGER                     21380000
SV2      EQU   A00071+00000004     4  BYTE  INTEGER                     21390000
A00072   EQU   A00071+00000004     1 BYTE(S)                            21400000
A00073   EQU   00000000            5 BYTE(S) ON WORD                    21410000
SV1C     EQU   A00073+00000000     1 BYTE(S)                            21420000
NXTSVC   EQU   A00073+00000001     3 BYTE(S)                            21430000
SV2C     EQU   A00073+00000004     1 BYTE(S)                            21440000
MDMASK   EQU   00000000            1 BYTE(S)                            21450000
A00074   EQU   00000000            84 BYTE(S) ON WORD                   21460000
A00075   EQU   A00074+00000000     17*FULLWORD POINTER                  21470000
A00076   EQU   A00074+00000068     FULLWORD POINTER                     21480000
A00077   EQU   A00074+00000068     2 BYTE(S)                            21490000
RTMASK   EQU   A00074+00000070     1 BYTE(S)                            21500000
A00078   EQU   A00074+00000072     2*FULLWORD POINTER                   21510000
SCTW20   EQU   A00074+00000080     FULLWORD POINTER                     21520000
A00079   EQU   A00074+00000080     FULLWORD POINTER                     21530000
         ORG   @DATA+00000244                                           21540000
UTRET    EQU   *                   FULLWORD POINTER                     21550000
         DC    AL4(0)                                                   21560000
BRID     EQU   @DATA+00000248      2 BYTE(S)                            21570000
BRID1    EQU   BRID+00000000       1 BYTE(S)                            21580000
BRIDB14  EQU   BRID+00000000       4 BIT(S)                             21590000
LIST     EQU   @DATA+00000250      9 BYTE(S)                            21600000
RR       EQU   LIST+00000000       1 BYTE(S)                            21610000
         ORG   LIST+00000001                                            21620000
MASK     EQU   *                   8*1 BYTE(S)                          21630000
         DC    X'80'                                                    21640000
         DC    X'40'                                                    21650000
         DC    X'20'                                                    21660000
         DC    X'10'                                                    21670000
         DC    X'08'                                                    21680000
         DC    X'04'                                                    21690000
         DC    X'02'                                                    21700000
         DC    X'01'                                                    21710000
A00080   EQU   00000000            152 BYTE(S) ON WORD                  21720000
A00081   EQU   A00080+00000000     14*FULLWORD POINTER                  21730000
IFD160   EQU   A00080+00000056     FULLWORD POINTER                     21740000
A00082   EQU   A00080+00000060     FULLWORD POINTER                     21750000
IFD210   EQU   A00080+00000064     FULLWORD POINTER                     21760000
A00083   EQU   A00080+00000068     FULLWORD POINTER                     21770000
IFD168   EQU   A00080+00000072     FULLWORD POINTER                     21780000
A00084   EQU   A00080+00000076     18*FULLWORD POINTER                  21790000
IFD229   EQU   A00080+00000148     FULLWORD POINTER                     21800000
A00085   EQU   A00080+00000148     FULLWORD POINTER                     21810000
A00086   EQU   00000000            8 BYTE(S) ON WORD                    21820000
LENGTH   EQU   A00086+00000000     1 BYTE(S)                            21830000
BUFAD    EQU   A00086+00000001     3  BYTE  POINTER ON WORD+1           21840000
MECBAD   EQU   A00086+00000004     FULLWORD POINTER                     21850000
A00091   EQU   @DATA+00000260      80 BYTE(S) ON WORD                   21860000
SVDYN    EQU   A00091+00000000     18*FULLWORD POINTER                  21870000
SVT13    EQU   A00091+00000072     FULLWORD POINTER                     21880000
SVU13    EQU   A00091+00000076     FULLWORD POINTER                     21890000
A00092   EQU   A00091+00000076     FULLWORD POINTER                     21900000
DEDBUF   EQU   00000000            72 BYTE(S)                           21910000
         ORG   @DATA+00000340                                           21920000
RTALKID  EQU   *                   8 BYTE(S)                            21930000
         DC    C'IFD255I '                                              21940000
         ENTRY TRA130                                                   21950000
         ORG   @DATA                                                    21960000
         DS    00000352C                                                21970000
@TEMPS   DS    0F                                                       21980000
@TEMP2   DC    F'0'                                                     21990000
DSECT18  IFDCOM                                                         22000000
IFDOLT18 CSECT                                                          22010000
LGWRTFLD EQU   LGWRTCT-00000004    FULLWORD POINTER                     22020000
A00000   EQU   CESWT2+00000000     8 BIT(S) ON BYTE                     22030000
NDCFO    EQU   A00000+00000000     1 BIT(S)                             22040000
PLKMRB   EQU   A00000+00000000     1 BIT(S)                             22050000
FECOND   EQU   A00000+00000000     1 BIT(S)                             22060000
A00001   EQU   A00000+00000000     1 BIT(S)                             22070000
A00002   EQU   CESWT3+00000000     1 BYTE(S)                            22080000
A00003   EQU   A00002+00000000     3 BIT(S)                             22090000
GRBCTL   EQU   A00002+00000000     1 BIT(S)                             22100000
SUSDEL   EQU   A00002+00000000     1 BIT(S)                             22110000
A00004   EQU   A00002+00000000     1 BIT(S)                             22120000
A00005   EQU   CESWT6+00000000     8 BIT(S) ON BYTE                     22130000
UTSCAL   EQU   A00005+00000000     1 BIT(S)                             22140000
A00006   EQU   PARTITEM+00000000   8 BYTE(S) ON WORD                    22150000
PARADR   EQU   A00006+00000000     FULLWORD POINTER                     22160000
PARSZ    EQU   A00006+00000004     FULLWORD INTEGER                     22170000
A00007   EQU   A00006+00000004     1 BYTE(S)                            22180000
A00008   EQU   HRTSEL+00000000     2 BYTE(S) ON WORD                    22190000
TERTN    EQU   A00008+00000000     1 BYTE(S)                            22200000
HIRTN    EQU   A00008+00000001     1 BYTE(S)                            22210000
A00009   EQU   OLTTAB+00000000     40 BYTE(S) ON WORD                   22220000
A00010   EQU   A00009+00000000     8*FULLWORD POINTER                   22230000
TMCOMAD  EQU   A00009+00000032     FULLWORD POINTER                     22240000
SECPRF   EQU   A00009+00000036     FULLWORD POINTER                     22250000
A00011   EQU   A00009+00000036     FULLWORD POINTER                     22260000
A00014   EQU   CHASCT+00000000     52 BYTE(S) ON WORD                   22270000
SCTW0    EQU   A00014+00000000     FULLWORD INTEGER                     22280000
A00015   EQU   A00014+00000000     2 BYTE(S)                            22290000
A00016   EQU   A00014+00000002     8 BIT(S)                             22300000
A00017   EQU   A00014+00000002     5 BIT(S)                             22310000
NPR      EQU   A00014+00000002     1 BIT(S)                             22320000
A00018   EQU   A00014+00000003     8 BIT(S)                             22330000
ERBT     EQU   A00014+00000003     1 BIT(S)                             22340000
ASTERB   EQU   A00014+00000003     1 BIT(S)                             22350000
CATB1    EQU   A00014+00000003     1 BIT(S)                             22360000
A00019   EQU   A00014+00000003     3 BIT(S)                             22370000
ERLOP    EQU   A00014+00000003     1 BIT(S)                             22380000
SCTW1    EQU   A00014+00000004     FULLWORD INTEGER                     22390000
SCTW2    EQU   A00014+00000008     FULLWORD INTEGER                     22400000
SCTW3    EQU   A00014+00000012     FULLWORD INTEGER                     22410000
SCTW4    EQU   A00014+00000016     FULLWORD INTEGER                     22420000
SCTW5    EQU   A00014+00000020     FULLWORD INTEGER                     22430000
SCTW6    EQU   A00014+00000024     FULLWORD INTEGER                     22440000
SCTW7    EQU   A00014+00000028     FULLWORD INTEGER                     22450000
SCTW8    EQU   A00014+00000032     FULLWORD INTEGER                     22460000
A00020   EQU   A00014+00000032     1 BYTE(S)                            22470000
A00021   EQU   A00014+00000033     8 BIT(S)                             22480000
A00022   EQU   A00014+00000033     5 BIT(S)                             22490000
CLEANUP  EQU   A00014+00000033     1 BIT(S)                             22500000
SCTW82   EQU   A00014+00000034     HALFWORD INTEGER                     22510000
SCTW9    EQU   A00014+00000036     FULLWORD INTEGER                     22520000
A00023   EQU   A00014+00000036     8 BIT(S)                             22530000
MIBT     EQU   A00014+00000036     1 BIT(S)                             22540000
CLEANRT  EQU   A00014+00000036     1 BIT(S)                             22550000
A00024   EQU   A00014+00000036     2 BIT(S)                             22560000
RETCODE  EQU   A00014+00000036     1 BIT(S)                             22570000
TRACE    EQU   A00014+00000036     1 BIT(S)                             22580000
A00025   EQU   A00014+00000037     1 BYTE(S)                            22590000
SCTW9C   EQU   A00014+00000038     2 BYTE(S)                            22600000
SCTW10   EQU   A00014+00000040     FULLWORD INTEGER                     22610000
A00026   EQU   A00014+00000044     2*FULLWORD POINTER                   22620000
RID      EQU   MCT+00000009        1 BYTE(S)                            22630000
VID      EQU   WKSVC+00000002      2 BYTE(S)                            22640000
A00057   EQU   MCT+00000128        80 BYTE(S) ON WORD                   22650000
RTADR1   EQU   A00057+00000000     FULLWORD POINTER                     22660000
TMADR1   EQU   A00057+00000004     FULLWORD POINTER                     22670000
A00058   EQU   A00057+00000008     18*FULLWORD POINTER                  22680000
A00087   EQU   ECB3+00000000       1 BYTE(S) ON WORD                    22690000
A00088   EQU   A00087+00000000     1 BYTE(S)                            22700000
A00089   EQU   A00087+00000000     1 BIT(S)                             22710000
ECB3POST EQU   A00087+00000000     1 BIT(S)                             22720000
A00090   EQU   TRA000-00000012     208 BYTE(S) ON WORD                  22730000
MCTTWO   EQU   A00090+00000000     208 BYTE(S)                          22740000
FSTMCT   EQU   A00090+00000000     4  BYTE  POINTER                     22750000
RMCT2    EQU   A00090+00000004     204 BYTE(S)                          22760000
A00093   EQU   CESWTR+00000000     1 BYTE(S)                            22770000
A00094   EQU   A00093+00000000     1 BIT(S)                             22780000
REMERR   EQU   A00093+00000000     1 BIT(S)                             22790000
REMNOMSG EQU   A00093+00000000     1 BIT(S)                             22800000
CENOMSG  EQU   A00093+00000000     1 BIT(S)                             22810000
TRANSMSG EQU   A00093+00000000     1 BIT(S)                             22820000
A00095   EQU   A00093+00000000     1 BIT(S)                             22830000
A00096   EQU   A00093+00000000     2 BIT(S)                             22840000
A00097   EQU   CESWTR1+00000000    1 BYTE(S)                            22850000
ILLRESP  EQU   A00097+00000000     1 BIT(S)                             22860000
EXECANS  EQU   A00097+00000000     1 BIT(S)                             22870000
A00098   EQU   A00097+00000000     2 BIT(S)                             22880000
RETRIEVE EQU   A00097+00000000     1 BIT(S)                             22890000
REMANS   EQU   A00097+00000000     1 BIT(S)                             22900000
A00099   EQU   A00097+00000000     2 BIT(S)                             22910000
A00100   EQU   CESWTR2+00000000    1 BYTE(S)                            22920000
A00101   EQU   A00100+00000000     2 BIT(S)                             22930000
ONCOMM   EQU   A00100+00000000     1 BIT(S)                             22940000
RECOMM   EQU   A00100+00000000     1 BIT(S)                             22950000
A00102   EQU   A00100+00000000     4 BIT(S)                             22960000
A00103   EQU   TALKECB+00000000    1 BYTE(S) ON WORD                    22970000
A00104   EQU   A00103+00000000     1 BYTE(S)                            22980000
A00105   EQU   A00103+00000000     1 BIT(S)                             22990000
TALKPOST EQU   A00103+00000000     1 BIT(S)                             23000000
A00106   EQU   REIECB+00000000     1 BYTE(S) ON WORD                    23010000
A00107   EQU   A00106+00000000     1 BYTE(S)                            23020000
A00108   EQU   A00106+00000000     1 BIT(S)                             23030000
REIPOST  EQU   A00106+00000000     1 BIT(S)                             23040000
TALKID   EQU   PRTBUFR+00000001    8 BYTE(S)                            23050000
RPTBUF   EQU   PRTBUFR+00000009    115 BYTE(S)                          23060000
@DATEND  EQU   *                                                        23070000
@9ED     EQU   @EL01                                                    23080000
@9EC     EQU   TRA002B                                                  23090000
@9EB     EQU   TRA002B                                                  23100000
@9E0     EQU   TRA006                                                   23110000
@9E1     EQU   TRA006                                                   23120000
@9D9     EQU   TRA018                                                   23130000
@9C0     EQU   TRA025                                                   23140000
@9B7     EQU   @EL01                                                    23150000
@9B3     EQU   TRA028                                                   23160000
         END                                                            23170000
