         TITLE 'IKJEFT45, PUTGET SERVICE ROUTINE                       *00001000
                        '                                               00002000
IKJEFT45 CSECT ,                                                   0001 00003000
IKJPTGT  DS    0H                                                  0001 00004000
         ENTRY IKJPTGT                                                  00005000
@MAINENT DS    0H                                                  0001 00006000
         USING *,@15                                               0001 00007000
         B     @PROLOG                                             0001 00008000
         DC    AL2(@EP00001-@MAINENT)                                   00009000
         DC    AL1(16)                                             0001 00010000
         DC    C'IKJEFT45  74.131'                                 0001 00011000
         DROP  @15                                                      00012000
@PROLOG  STM   @14,@12,12(@13)                                     0001 00013000
         BALR  @12,0                                               0001 00014000
@PSTART  DS    0H                                                  0001 00015000
         USING @PSTART,@12                                         0001 00016000
         L     @00,@SIZDATD                                        0001 00017000
         GETMAIN  R,LV=(0)                                              00018000
         LR    @11,@01                                             0001 00019000
         USING @DATD,@11                                           0001 00020000
         ST    @13,@SA00001+4                                      0001 00021000
         LM    @15,@01,16(@13)                                     0001 00022000
         ST    @11,8(,@13)                                         0001 00023000
         LR    @13,@11                                             0001 00024000
         AH    @15,4(,@15)                                         0001 00025000
         BR    @15                                                 0001 00026000
@EP00001 MVC   @PC00001(16),0(@01)                                 0001 00027000
*                                                                  0026 00028000
*   /*****************************************************************/ 00029000
*   /*                                                               */ 00030000
*   /* START EXECUTABLE CODE                                         */ 00031000
*   /*                                                               */ 00032000
*   /*****************************************************************/ 00033000
*                                                                  0026 00034000
*   SAVEREG1=R1;                                                   0026 00035000
         ST    R1,SAVEREG1                                         0026 00036000
*   PGPBPTR=XPGPBPTR;               /* INITIALIZE REG PTRS           */ 00037000
         L     PGPBPTR,XPGPBPTR(,R1)                               0027 00038000
*   UPTPTR=XUPTPTR;                                                0028 00039000
         L     @14,XUPTPTR(,R1)                                    0028 00040000
         ST    @14,UPTPTR                                          0028 00041000
*   ECTPTR=XECTPTR;                                                0029 00042000
         L     ECTPTR,XECTPTR(,R1)                                 0029 00043000
*   TRMOPARM(1:12)=R1->PTGTPARM;    /* COPY 1ST 3 WORDS OF PARAMETER    00044000
*                                      LIST                          */ 00045000
         MVC   TRMOPARM(12),PTGTPARM(R1)                           0030 00046000
*   DUPRMBLK(1:16)=PGPB;            /* COPY PARM BLOCK               */ 00047000
         MVC   DUPRMBLK(16),PGPB(PGPBPTR)                          0031 00048000
*   ADPRMBLK=ADDR(DUPRMBLK);        /* POINT TO DUPLICATE PARM BLOCK    00049000
*                                      IN DUP PARM LIST              */ 00050000
         LA    @14,DUPRMBLK                                        0032 00051000
         ST    @14,ADPRMBLK                                        0032 00052000
*   IF PTGPMLEV='0'B THEN           /* IF THE MULTI LEVEL SWITCH IS     00053000
*                                      OFF                           */ 00054000
         TM    PTGPMLEV(PGPBPTR),B'00000100'                       0033 00055000
         BNZ   @RF00033                                            0033 00056000
*     TXISEGMT=PTGPAOUT;            /* THEN THE PTGPAOUT POINTS    0034 00057000
*                                      DIRECTLY TO THE OLD SO PUT  0034 00058000
*                                      ADDR IN TEXTIN PARM           */ 00059000
         L     @14,PTGPAOUT(,PGPBPTR)                              0034 00060000
         ST    @14,TXISEGMT                                        0034 00061000
*   ELSE                            /* ELSE IF THIS IS A MULTI LEVL     00062000
*                                      MSG BUMP ADDR BY 4            */ 00063000
*     DO;                                                          0035 00064000
         B     @RC00033                                            0035 00065000
@RF00033 DS    0H                                                  0036 00066000
*       NEXTLEV=PTGPAOUT->CHAINPTR; /* SAVE PTR NXT LVL              */ 00067000
         L     @14,PTGPAOUT(,PGPBPTR)                              0036 00068000
         L     NEXTLEV,CHAINPTR-1(,@14)                            0036 00069000
         LA    NEXTLEV,0(,NEXTLEV)                                 0036 00070000
*       TXISEGMT=PTGPAOUT+4;                                       0037 00071000
         AL    @14,@CF00210                                        0037 00072000
         ST    @14,TXISEGMT                                        0037 00073000
*     END;                                                         0038 00074000
*   TXIFRMSG=ADDR(DPUTAOUT);        /* THIS WILL CAUSE TEXTIN TO   0039 00075000
*                                      PLACE ADDR OF THE FORMTD MSG     00076000
*                                      IN THE PRM BLK.               */ 00077000
@RC00033 LA    @14,DPUTAOUT                                        0039 00078000
         ST    @14,TXIFRMSG                                        0039 00079000
*   DPUTAOUT=0;                     /* TURN CHAIN FLAG OFF           */ 00080000
         SLR   @14,@14                                             0040 00081000
         ST    @14,DPUTAOUT                                        0040 00082000
*   TXIFONLY=ADDR(FORMONLY);        /* FILL IN 3RD TEXTIN PARM       */ 00083000
         LA    @08,FORMONLY                                        0041 00084000
         ST    @08,TXIFONLY                                        0041 00085000
*   FORMONLY=0;                     /* ZERO FORMAT ONLY BIT          */ 00086000
         ST    @14,FORMONLY                                        0042 00087000
*   BYPSFLAG=0;                     /* TURN OFF BYPASS FLAG          */ 00088000
         STH   @14,BYPSFLAG                                        0043 00089000
*   IF PTGPMODE='1'B THEN           /* IF MODE BIT IS ON             */ 00090000
         TM    PTGPMODE(PGPBPTR),B'10000000'                       0044 00091000
         BNO   @RF00044                                            0044 00092000
*     DO;                                                          0045 00093000
*       IF PTGPATTN='1'B THEN       /* ATTN PROCESING REQUSTED       */ 00094000
         TM    PTGPATTN(PGPBPTR),B'00001000'                       0046 00095000
         BNO   @RF00046                                            0046 00096000
*         DO;                                                      0047 00097000
*           T2=ADDR(CONTMODE);      /* POINT TO RETURN TO AFTER    0048 00098000
*                                      PUTLGETL SUBROUTINE HAS     0048 00099000
*                                      FININSHED                     */ 00100000
         LA    T2,CONTMODE                                         0048 00101000
*           GOTO GETINPUT;          /* BYPASS PUTL LOGIC AND GO    0049 00102000
*                                      DIRECTLY TO GETL LOGIC        */ 00103000
         B     GETINPUT                                            0049 00104000
*         END;                                                     0050 00105000
*TERMSORC:                                                         0051 00106000
*       IF INSTERM='1'B|            /* CURRENT SOURCE TERMINAL       */ 00107000
*           PTGGTERM='1'B|          /* OR                            */ 00108000
*           INSINDD='1'B THEN       /* IF INPUT DCB PRESENT          */ 00109000
@RF00046 DS    0H                                                  0051 00110000
TERMSORC L     @14,ECTIOWA(,ECTPTR)                                0051 00111000
         L     @14,IOSTELM(,@14)                                   0051 00112000
         TM    INSTERM(@14),B'10000000'                            0051 00113000
         BO    @RT00051                                            0051 00114000
         TM    PTGGTERM(PGPBPTR),B'00010000'                       0051 00115000
         BO    @RT00051                                            0051 00116000
         TM    INSINDD(@14),B'00100000'                            0051 00117000
         BNO   @RF00051                                            0051 00118000
@RT00051 DS    0H                                                  0052 00119000
*         DO;                                                      0052 00120000
*           T2=ADDR(CONTMODE);      /* POINT TO RETURN TO AFTER    0053 00121000
*                                      PUTLGETL SUBROUTINE HAS     0053 00122000
*                                      FININSHED                     */ 00123000
         LA    T2,CONTMODE                                         0053 00124000
*           IF PTGPAOUT=0|          /* NO OUTPUT SUPPLD              */ 00125000
*               INSOTDD='1'B THEN   /* OR OUTPUT TO FILE             */ 00126000
         L     @14,PTGPAOUT(,PGPBPTR)                              0054 00127000
         LTR   @14,@14                                             0054 00128000
         BZ    @RT00054                                            0054 00129000
         L     @14,ECTIOWA(,ECTPTR)                                0054 00130000
         L     @14,IOSTELM(,@14)                                   0054 00131000
         TM    INSOTDD(@14),B'00010000'                            0054 00132000
         BO    @RT00054                                            0054 00133000
*             GOTO GETINPUT;        /* BYPASS PUTL LOGIC AND GO    0055 00134000
*                                      DIRECTLY TO GETL LOGIC        */ 00135000
*           ELSE                    /* OUTPUT LINE PROVIDED          */ 00136000
*             GOTO FORMAT;          /* GOTO PUTLGETL SUBROUTNE       */ 00137000
         B     FORMAT                                              0056 00138000
*CONTMODE:                                                         0057 00139000
*           IF PTGGADIN->INBUFTXT(1)='?' THEN                      0057 00140000
CONTMODE L     @14,PTGGADIN(,PGPBPTR)                              0057 00141000
         CLI   INBUFTXT(@14),C'?'                                  0057 00142000
         BNE   @RF00057                                            0057 00143000
*             DO;                                                  0058 00144000
*               T1=ADDR(CHAINOUT);  /* POINT TO RETURN TO AFTER    0059 00145000
*                                      FREEMAIN SUBROUTINE HAS     0059 00146000
*                                      FININSHED                     */ 00147000
         LA    T1,CHAINOUT                                         0059 00148000
*               GOTO FREEBUFF;      /* FREE QUESTION MK BUFFER       */ 00149000
         B     FREEBUFF                                            0060 00150000
*CHAINOUT:                                                         0061 00151000
*               R1=ADDR(TRMOPARM);  /* CHAINOUT PARMS                */ 00152000
CHAINOUT LA    R1,TRMOPARM                                         0061 00153000
*               CALL IKJEFT52;      /* CHAIN OUT SUBROUTINE          */ 00154000
         L     @15,@CV00222                                        0062 00155000
         BALR  @14,@15                                             0062 00156000
*               ERCODE=R15;         /* SAVE RETURN CODE              */ 00157000
         LR    ERCODE,R15                                          0063 00158000
*               IF ERCODE^=0 THEN   /* CHAINOUT ERROR                */ 00159000
         SLR   @14,@14                                             0064 00160000
         CR    ERCODE,@14                                          0064 00161000
         BNE   @RT00064                                            0064 00162000
*                 GOTO TRMOUTER;                                   0065 00163000
*               ELSE                /* IF NO CHAINOUT ERROR          */ 00164000
*                 DPUTAOUT=0;                                      0066 00165000
         ST    @14,DPUTAOUT                                        0066 00166000
*               GOTO TERMSORC;      /* WHEN PUTLGETL PROCESSING    0067 00167000
*                                      COMPLETES CONTROL WILL RETURN    00168000
*                                      TO 'CONTMODE'                 */ 00169000
         B     TERMSORC                                            0067 00170000
*             END;                  /* END '?' PROCESSING            */ 00171000
*           IF ECTSMSG^=0 THEN      /* IF A CHAIN EXISTS WHICH THE 0069 00172000
*                                      USER DOES NOT WISH TO BE    0069 00173000
*                                      DISPLAYED                     */ 00174000
@RF00057 L     @14,ECTSMSG-1(,ECTPTR)                              0069 00175000
         LA    @14,0(,@14)                                         0069 00176000
         LTR   @14,@14                                             0069 00177000
         BZ    @RF00069                                            0069 00178000
*             CALL IKJEFT53;        /* CALL UNCHAIN SUBROUTINE       */ 00179000
         L     @15,@CV00224                                        0070 00180000
         BALR  @14,@15                                             0070 00181000
*           GOTO CKLIST;                                           0071 00182000
         B     CKLIST                                              0071 00183000
*         END;                      /* END TERMINAL SOURCE PROCESSING*/ 00184000
*                                                                  0072 00185000
*       /*************************************************************/ 00186000
*       /*                                                           */ 00187000
*       /* NON-TERMINAL SOURCE PROCESSING                            */ 00188000
*       /*                                                           */ 00189000
*       /*************************************************************/ 00190000
*                                                                  0073 00191000
*       DPUTTPUT=0;                 /* CAUSE ALL OUTPUT TO HAVE    0073 00192000
*                                      DEFAULT TPUT OPTIONS          */ 00193000
@RF00051 MVI   DPUTTPUT,X'00'                                      0073 00194000
*       IF ECTMSGF>='80'X THEN                                     0074 00195000
         CLI   ECTMSGF(ECTPTR),X'80'                               0074 00196000
         BNL   @RT00074                                            0074 00197000
*         GOTO UNCHAIN;             /* CHAIN FLAGGED ?               */ 00198000
*       IF ECTSMSG=0 THEN           /* IF NO CHAIN EXISTS            */ 00199000
         L     @14,ECTSMSG-1(,ECTPTR)                              0076 00200000
         LA    @14,0(,@14)                                         0076 00201000
         LTR   @14,@14                                             0076 00202000
         BNZ   @RF00076                                            0076 00203000
*         DO;                                                      0077 00204000
*GETALINE:                                                         0078 00205000
*           ADPRMBLK=PGPBPTR+8;     /* 'GET' PARMS                   */ 00206000
GETALINE LA    @14,8                                               0078 00207000
         ALR   @14,PGPBPTR                                         0078 00208000
         ST    @14,ADPRMBLK                                        0078 00209000
*           R1=ADDR(TRMOPARM);      /* SUBROUTINE PARMS              */ 00210000
         LA    R1,TRMOPARM                                         0079 00211000
*           CALL IKJEFT55;          /* CALL GETINPUT                 */ 00212000
         L     @15,@CV00230                                        0080 00213000
         BALR  @14,@15                                             0080 00214000
*           ERCODE=R15;             /* SAVE REG 15                   */ 00215000
         LR    ERCODE,R15                                          0081 00216000
*           GETCODE=R15;            /* GETLINE RETURN CODE           */ 00217000
         LR    GETCODE,R15                                         0082 00218000
*           ADPRMBLK=ADDR(DUPRMBLK);/* D-PARMBLOCK                   */ 00219000
         LA    @14,DUPRMBLK                                        0083 00220000
         ST    @14,ADPRMBLK                                        0083 00221000
*           IF ERCODE=16 THEN       /* IF END OF DATA                */ 00222000
         C     ERCODE,@CF00103                                     0084 00223000
         BNE   @RF00084                                            0084 00224000
*             DO;                                                  0085 00225000
*               R1=SAVEREG1;        /* POINT TO REAL IOPL            */ 00226000
         L     R1,SAVEREG1                                         0086 00227000
*               DPUTTPUT=PTGPTPUT;  /* RESTORE USER TPUT OPTIONS     */ 00228000
         MVC   DPUTTPUT(1),PTGPTPUT(PGPBPTR)                       0087 00229000
*               GOTO TERMSORC;                                     0088 00230000
         B     TERMSORC                                            0088 00231000
*             END;                                                 0089 00232000
*           IF ERCODE>4 THEN                                       0090 00233000
@RF00084 C     ERCODE,@CF00210                                     0090 00234000
         BH    @RT00090                                            0090 00235000
*             GOTO GETINPER;        /* HANDLE ANY ERROR              */ 00236000
*CKLIST:                                                           0092 00237000
*           IF INSLIST='1'B&(INSOTDD='1'B|PTGGTERM='0'B) THEN/* LIST    00238000
*                                      OP                            */ 00239000
CKLIST   L     @14,ECTIOWA(,ECTPTR)                                0092 00240000
         L     @14,IOSTELM(,@14)                                   0092 00241000
         TM    INSLIST(@14),B'00000001'                            0092 00242000
         BNO   @RF00092                                            0092 00243000
         TM    INSOTDD(@14),B'00010000'                            0092 00244000
         BO    @RT00092                                            0092 00245000
         TM    PTGGTERM(PGPBPTR),B'00010000'                       0092 00246000
         BNZ   @RF00092                                            0092 00247000
@RT00092 DS    0H                                                  0093 00248000
*             DO;                                                  0093 00249000
*               DPUTTPUT=0;         /* DEFAULT TPUT OPTIONS          */ 00250000
         MVI   DPUTTPUT,X'00'                                      0094 00251000
*               DPUTAOUT=PTGGADIN;  /* MAKE TERMOUT'S OUTPUT LINE  0095 00252000
*                                      EQUAL GETINPUT'S LAST INPUT 0095 00253000
*                                      LINE.                         */ 00254000
         L     @14,PTGGADIN(,PGPBPTR)                              0095 00255000
         ST    @14,DPUTAOUT                                        0095 00256000
*               DPUTDATA='1'B;      /* TURN ON DATA BIT              */ 00257000
         OI    DPUTDATA,B'00100000'                                0096 00258000
*               CALL IKJEFT56;      /* GOTO TERMOUT                  */ 00259000
         L     @15,@CV00233                                        0097 00260000
         BALR  @14,@15                                             0097 00261000
*               ERCODE=R15;         /* SAVE RETURN CODE              */ 00262000
         LR    ERCODE,R15                                          0098 00263000
*               IF ERCODE^=0 THEN                                  0099 00264000
         LTR   ERCODE,ERCODE                                       0099 00265000
         BNZ   @RT00099                                            0099 00266000
*                 GOTO TRMOUTER;    /* HANDLE ERRORS                 */ 00267000
*             END;                  /* END LIST PROCESSING           */ 00268000
*           GOTO NORMEND;                                          0102 00269000
         B     NORMEND                                             0102 00270000
*         END;                      /* END NO CHAIN PROCESSING       */ 00271000
*       IF UPTPAUS='1'B THEN        /* PAUSE PROC REQUESTED          */ 00272000
@RF00076 L     @14,UPTPTR                                          0104 00273000
         TM    UPTPAUS(@14),B'00001000'                            0104 00274000
         BNO   @RF00104                                            0104 00275000
*         DO;                                                      0105 00276000
*           DPUTAOUT=ADDR(PAUSMSG); /* POINT TO PAUSE MSG            */ 00277000
         L     @14,@CA00204                                        0106 00278000
         ST    @14,DPUTAOUT                                        0106 00279000
*TELLTERM:                                                         0107 00280000
*           ADPRMBLK=ADDR(DUPRMBLK);/* POINT TO D PARMBLK            */ 00281000
TELLTERM LA    @14,DUPRMBLK                                        0107 00282000
         ST    @14,ADPRMBLK                                        0107 00283000
*           R1=ADDR(TRMOPARM);      /* SUBROUTINE PARMLIST           */ 00284000
         LA    R1,TRMOPARM                                         0108 00285000
*           CALL IKJEFT56;          /* PUT MSG TO TERMINAL           */ 00286000
         L     @15,@CV00233                                        0109 00287000
         BALR  @14,@15                                             0109 00288000
*           ERCODE=R15;             /* SAVE RETURN CODE              */ 00289000
         LR    ERCODE,R15                                          0110 00290000
*           IF ERCODE^=0 THEN       /* TERMOUT ERROR                 */ 00291000
         LTR   ERCODE,ERCODE                                       0111 00292000
         BNZ   @RT00111                                            0111 00293000
*             GOTO TRMOUTER;                                       0112 00294000
*           DGETTERM='1'B;          /* TURN ON DEMAND FROM TERM      */ 00295000
         OI    DGETTERM,B'00010000'                                0113 00296000
*           ADPRMBLK=ADDR(DUPRMBLK)+8;/* GET PARMS                   */ 00297000
         LA    @14,DUPRMBLK                                        0114 00298000
         AL    @14,@CF00075                                        0114 00299000
         ST    @14,ADPRMBLK                                        0114 00300000
*           CALL IKJEFT55;          /* CALL GETINPUT ROUTINE         */ 00301000
         L     @15,@CV00230                                        0115 00302000
         BALR  @14,@15                                             0115 00303000
*           ERCODE=R15;             /* SAVE RETURN CODE              */ 00304000
         LR    ERCODE,R15                                          0116 00305000
*           IF ERCODE^=0 THEN       /* GETINPUT ERROR                */ 00306000
         LTR   ERCODE,ERCODE                                       0117 00307000
         BNZ   @RT00117                                            0117 00308000
*             GOTO GETINPER;                                       0118 00309000
*           IF DGETADIN->INBUFTXT(1)='?' THEN/* ? RETRN              */ 00310000
         L     @14,DGETADIN                                        0119 00311000
         CLI   INBUFTXT(@14),C'?'                                  0119 00312000
         BNE   @RF00119                                            0119 00313000
*             DO;                                                  0120 00314000
*               T1=ADDR(CALLCHAN);  /* SET RETURN ADDR               */ 00315000
         LA    T1,CALLCHAN                                         0121 00316000
*FREEDUMY:                                                         0122 00317000
*               FLENGTH=DGETADIN->INBUFLL;/* LENGTH                  */ 00318000
FREEDUMY L     @14,DGETADIN                                        0122 00319000
         LH    @04,INBUFLL(,@14)                                   0122 00320000
         STCM  @04,7,FLENGTH                                       0122 00321000
*               R1=DGETADIN;        /* POINT TO ? BUFFER             */ 00322000
         LR    R1,@14                                              0123 00323000
*               GOTO FREEMAIN;      /* FREE QUESTION MARK BUF        */ 00324000
         B     FREEMAIN                                            0124 00325000
*CALLCHAN:                                                         0125 00326000
*               ADPRMBLK=ADDR(DUPRMBLK);/* D-PARMBLK                 */ 00327000
CALLCHAN LA    @14,DUPRMBLK                                        0125 00328000
         ST    @14,ADPRMBLK                                        0125 00329000
*               R1=ADDR(TRMOPARM);  /* SUBROUTINE PARMS              */ 00330000
         LA    R1,TRMOPARM                                         0126 00331000
*               CALL IKJEFT52;      /* CALL CHAIN OUT                */ 00332000
         L     @15,@CV00222                                        0127 00333000
         BALR  @14,@15                                             0127 00334000
*               ERCODE=R15;         /* SAVE RETURN CODE              */ 00335000
         LR    ERCODE,R15                                          0128 00336000
*               IF ERCODE^=0 THEN   /* CHAIN OUT ERROR               */ 00337000
         LTR   ERCODE,ERCODE                                       0129 00338000
         BNZ   @RT00129                                            0129 00339000
*                 GOTO TRMOUTER;                                   0130 00340000
*               GOTO GETALINE;                                     0131 00341000
         B     GETALINE                                            0131 00342000
*             END;                  /* END ? PROCESSING              */ 00343000
*           IF DGETADIN->INBUFLL=4 THEN/* NULL LINE ?                */ 00344000
@RF00119 L     @14,DGETADIN                                        0133 00345000
         CLC   INBUFLL(2,@14),@CH00210                             0133 00346000
         BNE   @RF00133                                            0133 00347000
*             DO;                                                  0134 00348000
*               T1=ADDR(UNCHAIN);   /* SET RETURN ADDR               */ 00349000
         LA    T1,UNCHAIN                                          0135 00350000
*               GOTO FREEDUMY;      /* FREE DUMMY BUFFER             */ 00351000
         B     FREEDUMY                                            0136 00352000
*UNCHAIN:                                                          0137 00353000
*               CALL IKJEFT53;      /* UNCHAIN SUBROUTINE            */ 00354000
UNCHAIN  L     @15,@CV00224                                        0137 00355000
         BALR  @14,@15                                             0137 00356000
*               GOTO GETALINE;      /* GET REAL LINE                 */ 00357000
         B     GETALINE                                            0138 00358000
*             END;                  /* END OF NULL LINE PROCESSING   */ 00359000
*           DPUTAOUT=ADDR(PRMPTMSG);                               0140 00360000
@RF00133 L     @14,@CA00203                                        0140 00361000
         ST    @14,DPUTAOUT                                        0140 00362000
*           GOTO TELLTERM;          /* PROMPT FOR GOOD ANSWER        */ 00363000
         B     TELLTERM                                            0141 00364000
*         END;                      /* END PAUSE PROCESSING          */ 00365000
*       RETURNCD=12;                /* CHAIN EXISTS BUT              */ 00366000
@RF00104 LA    RETURNCD,12                                         0143 00367000
*       GOTO EXIT;                  /* NOPAUSE WAS SPECIFIED         */ 00368000
         B     EXIT                                                0144 00369000
*     END;                          /* END MODE PROCESSING           */ 00370000
*PROMPT:                                                           0146 00371000
*   IF PTGPPRMT='1'B THEN           /* PROMPT BIT ON                 */ 00372000
@RF00044 DS    0H                                                  0146 00373000
PROMPT   TM    PTGPPRMT(PGPBPTR),B'00000001'                       0146 00374000
         BNO   @RF00146                                            0146 00375000
*     DO;                                                          0147 00376000
*       IF UPTNPRM='1'B|            /* IF NO PROMPT BIT IS ON        */ 00377000
*           IOSBELM->INSPROC='1'B|  /* BOTTOM ELEMENT BAKGND         */ 00378000
*           (INSPROC='1'B&INSPROM='0'B) THEN/* OR CURRENT SRCE A PROC*/ 00379000
         L     @14,UPTPTR                                          0148 00380000
         TM    UPTNPRM(@14),B'01000000'                            0148 00381000
         BO    @RT00148                                            0148 00382000
         L     @14,ECTIOWA(,ECTPTR)                                0148 00383000
         L     @10,IOSBELM(,@14)                                   0148 00384000
         TM    INSPROC(@10),B'00000010'                            0148 00385000
         BO    @RT00148                                            0148 00386000
         L     @14,IOSTELM(,@14)                                   0148 00387000
         TM    INSPROC(@14),B'00000010'                            0148 00388000
         BNO   @RF00148                                            0148 00389000
         TM    INSPROM(@14),B'00000100'                            0148 00390000
         BNZ   @RF00148                                            0148 00391000
@RT00148 DS    0H                                                  0149 00392000
*         DO;                                                      0149 00393000
*           RETURNCD=12;            /* NO PROMPTING ALLOWED          */ 00394000
         LA    RETURNCD,12                                         0150 00395000
*           GOTO EXIT;              /* EXIT                          */ 00396000
         B     EXIT                                                0151 00397000
*         END;                      /* END NOPROMPT PROCESSING       */ 00398000
*                                                                  0152 00399000
*       /*************************************************************/ 00400000
*       /*                                                           */ 00401000
*       /* PUTL-GETL INTERFACE                                       */ 00402000
*       /*                                                           */ 00403000
*       /*************************************************************/ 00404000
*                                                                  0153 00405000
*       PTGGTERM='1'B;              /* TURN ON DEMND FROM TERM       */ 00406000
@RF00148 OI    PTGGTERM(PGPBPTR),B'00010000'                       0153 00407000
*       IF PTGPBYPS='1'B THEN       /* IF BYPASS BIT ON              */ 00408000
         TM    PTGPBYPS(PGPBPTR),B'00010000'                       0154 00409000
         BNO   @RF00154                                            0154 00410000
*         BYPSFLAG=1;                                              0155 00411000
         MVC   BYPSFLAG(2),@CH00040                                0155 00412000
*       T2=ADDR(CONTPRMT);          /* POINT TO RETURN TO AFTER    0156 00413000
*                                      PUTLGETL SUBROUTINE HAS     0156 00414000
*                                      FININSHED                     */ 00415000
@RF00154 LA    T2,CONTPRMT                                         0156 00416000
*       GEN(TCLEARQ  INPUT);                                       0157 00417000
         TCLEARQ  INPUT                                                 00418000
*       GOTO FORMAT;                /* PUT MSG & GET RESPONSE        */ 00419000
         B     FORMAT                                              0158 00420000
*CONTPRMT:                                                         0159 00421000
*       IF PTGGADIN->INBUFTXT(1)='?' THEN/* MORE INFOR WANTED        */ 00422000
CONTPRMT L     @14,PTGGADIN(,PGPBPTR)                              0159 00423000
         CLI   INBUFTXT(@14),C'?'                                  0159 00424000
         BNE   @RF00159                                            0159 00425000
*         DO;                                                      0160 00426000
*           T1=ADDR(CHEKMLEV);      /* SET RETURN ADDR               */ 00427000
         LA    T1,CHEKMLEV                                         0161 00428000
*           GOTO FREEBUFF;          /* FREE QUESTION MARK BUFR       */ 00429000
         B     FREEBUFF                                            0162 00430000
*CHEKMLEV:                                                         0163 00431000
*           IF PTGPMLEV='1'B THEN   /* MULTI LEVEL OUTPUT            */ 00432000
CHEKMLEV TM    PTGPMLEV(PGPBPTR),B'00000100'                       0163 00433000
         BNO   @RF00163                                            0163 00434000
*             DO;                                                  0164 00435000
*               IF NEXTLEV^=0 THEN  /* IF ANOTHER LEVEL MESSAGE    0165 00436000
*                                      EXISTS                        */ 00437000
         SLR   @14,@14                                             0165 00438000
         CR    NEXTLEV,@14                                         0165 00439000
         BE    @RF00165                                            0165 00440000
*                 DO;                                              0166 00441000
*                   FORMONLY=0;                                    0167 00442000
         ST    @14,FORMONLY                                        0167 00443000
*                   TXISEGMT=NEXTLEV+4;                            0168 00444000
         LA    @14,4                                               0168 00445000
         ALR   @14,NEXTLEV                                         0168 00446000
         ST    @14,TXISEGMT                                        0168 00447000
*                   NEXTLEV=NEXTLEV->CHAINPTR;/* SAVE ADDR OF NEXT 0169 00448000
*                                      LEVEL                         */ 00449000
         L     @14,CHAINPTR-1(,NEXTLEV)                            0169 00450000
         LA    @14,0(,@14)                                         0169 00451000
         LR    NEXTLEV,@14                                         0169 00452000
*                   GOTO FORMAT;    /* FORMAT 2ND LEV MESSAGE        */ 00453000
         B     FORMAT                                              0170 00454000
*                 END;              /* END CHAIN PROCESSING          */ 00455000
*             END;                  /* END MULTI-LEVEL MESSAGE     0172 00456000
*                                      PROCESSING                    */ 00457000
@RF00165 DS    0H                                                  0173 00458000
*           DPUTAOUT=ADDR(NOIFRMSG);/* POINT TO 'NO INFORMATION MSG  */ 00459000
@RF00163 L     @14,@CA00202                                        0173 00460000
         ST    @14,DPUTAOUT                                        0173 00461000
*           GOTO PUTMSG;            /* PUT MESSAGE OUT               */ 00462000
         B     PUTMSG                                              0174 00463000
*         END;                      /* END ? PROCESSING              */ 00464000
*       GOTO NORMEND;               /* INDICATE NORMAL END           */ 00465000
         B     NORMEND                                             0176 00466000
*     END;                          /* END PROMPT MSG SECTION        */ 00467000
*   GOTO INVLPARM;                  /* IF NOT MODE OR PROMPT INDICATE   00468000
*                                      INVAL INPUT                   */ 00469000
         B     INVLPARM                                            0178 00470000
*FORMAT:                                                           0179 00471000
*   R1=ADDR(TXINPARM);              /* POINT OT TEXTIN PARMS         */ 00472000
FORMAT   LA    R1,TXINPARM                                         0179 00473000
*   CALL IKJEFT54;                  /* PERFORM TEXT INSERTION        */ 00474000
         L     @15,@CV00253                                        0180 00475000
         BALR  @14,@15                                             0180 00476000
*   ERCODE=R15;                     /* SAVE RETURN CODE              */ 00477000
         LR    ERCODE,R15                                          0181 00478000
*   IF ERCODE^=0 THEN               /* TEXTIN FAILURE                */ 00479000
         LTR   ERCODE,ERCODE                                       0182 00480000
         BZ    @RF00182                                            0182 00481000
*     DO;                                                          0183 00482000
*TEXTINER:                                                         0184 00483000
*       IF ERCODE=12 THEN                                          0184 00484000
TEXTINER C     ERCODE,@CF00130                                     0184 00485000
         BE    @RT00184                                            0184 00486000
*         GOTO INVLPARM;                                           0185 00487000
*       ELSE                                                       0186 00488000
*         DO;                                                      0186 00489000
*GETMNER:                                                          0187 00490000
*           RETURNCD=28;                                           0187 00491000
GETMNER  LA    RETURNCD,28                                         0187 00492000
*           GOTO EXIT;              /* BRNCH TO EXIT                 */ 00493000
         B     EXIT                                                0188 00494000
*         END;                                                     0189 00495000
*     END;                          /* END TEXTN ERROR        SECTION*/ 00496000
*PUTMSG:                                                           0191 00497000
*   R1=ADDR(TRMOPARM);              /* POINT TO TRMOUT PARMS         */ 00498000
@RF00182 DS    0H                                                  0191 00499000
PUTMSG   LA    R1,TRMOPARM                                         0191 00500000
*   CALL IKJEFT56;                  /* GO TO TERMOUT                 */ 00501000
         L     @15,@CV00233                                        0192 00502000
         BALR  @14,@15                                             0192 00503000
*   ERCODE=R15;                     /* SAVE RETURN CODE              */ 00504000
         LR    ERCODE,R15                                          0193 00505000
*   IF FRESWICH=1 THEN              /* IF BUFFER WAS OBTAINED        */ 00506000
         CLC   FRESWICH(4),@CF00040                                0194 00507000
         BNE   @RF00194                                            0194 00508000
*     DO;                                                          0195 00509000
*       FRESWICH=0;                 /* TURN OFF FREEMAIN SWICH       */ 00510000
         SLR   @14,@14                                             0196 00511000
         ST    @14,FRESWICH                                        0196 00512000
*       FLENGTH=DPUTAOUT->INBUFLL;                                 0197 00513000
         L     @14,DPUTAOUT                                        0197 00514000
         LH    @04,INBUFLL(,@14)                                   0197 00515000
         STCM  @04,7,FLENGTH                                       0197 00516000
*       R1=DPUTAOUT;                                               0198 00517000
         LR    R1,@14                                              0198 00518000
*       T1=ADDR(OUTERR);            /* POINT TO RETURN TO AFTER    0199 00519000
*                                      FREEMAIN SUBROUTINE HAS     0199 00520000
*                                      FININSHED                     */ 00521000
         LA    T1,OUTERR                                           0199 00522000
*       GOTO FREEMAIN;                                             0200 00523000
         B     FREEMAIN                                            0200 00524000
*     END;                                                         0201 00525000
*OUTERR:                                                           0202 00526000
*   IF ERCODE^=0 THEN               /* TERMINAL OUTPUT ERROR         */ 00527000
@RF00194 DS    0H                                                  0202 00528000
OUTERR   LTR   ERCODE,ERCODE                                       0202 00529000
         BZ    @RF00202                                            0202 00530000
*     DO;                                                          0203 00531000
*TRMOUTER:                                                         0204 00532000
*       IF ERCODE=20 THEN           /* WAS RETURN CODE LINEDROP    0204 00533000
*                                      Y02996                        */ 00534000
TRMOUTER C     ERCODE,@CF00206                                     0204 00535000
         BNE   @RF00204                                            0204 00536000
*         DO;                       /* Y02996                        */ 00537000
*           RETURNCD=32;            /* Y02996                        */ 00538000
         LA    RETURNCD,32                                         0206 00539000
*           GO TO EXIT;             /* Y02996                        */ 00540000
         B     EXIT                                                0207 00541000
*         END;                      /* Y02996                        */ 00542000
*       IF ERCODE=4 THEN            /* ATTN INTER-ECB POSTED         */ 00543000
@RF00204 C     ERCODE,@CF00210                                     0209 00544000
         BNE   @RF00209                                            0209 00545000
*         DO;                                                      0210 00546000
*ATTNER:                                                           0211 00547000
*           RETURNCD=8;                                            0211 00548000
ATTNER   LA    RETURNCD,8                                          0211 00549000
*           GOTO EXIT;                                             0212 00550000
         B     EXIT                                                0212 00551000
*         END;                                                     0213 00552000
*       IF ERCODE=8 THEN            /* NOWAIT REQ-NOLINE RETRN       */ 00553000
@RF00209 C     ERCODE,@CF00075                                     0214 00554000
         BNE   @RF00214                                            0214 00555000
*NWAITER:                                                          0215 00556000
*         RETURNCD=16;                                             0215 00557000
NWAITER  LA    RETURNCD,16                                         0215 00558000
*       ELSE                                                       0216 00559000
*INVLPARM:                                                         0216 00560000
*         RETURNCD=24;              /* INDICATE INVALID PARMS        */ 00561000
         B     @RC00214                                            0216 00562000
@RF00214 DS    0H                                                  0216 00563000
INVLPARM LA    RETURNCD,24                                         0216 00564000
*       GOTO EXIT;                                                 0217 00565000
         B     EXIT                                                0217 00566000
*     END;                          /* END TERMOUT ERR        SECTION*/ 00567000
*   IF BYPSFLAG=1 THEN              /* IS BYPASS BIT ON              */ 00568000
@RF00202 CLC   BYPSFLAG(2),@CH00040                                0219 00569000
         BNE   @RF00219                                            0219 00570000
*     DO;                                                          0220 00571000
*BYPAS:                                                            0221 00572000
*       R1=ADDR(BYPASS);            /* POINT TO BYPASS CHAR          */ 00573000
BYPAS    LA    R1,BYPASS                                           0221 00574000
*       R0=1;                       /* LENGTH OF OUTPUT              */ 00575000
         LA    R0,1                                                0222 00576000
*       GEN(TPUT (1),(0),CONTROL);                                 0223 00577000
         TPUT (1),(0),CONTROL                                           00578000
*     END;                          /* END BYPASS PROCESSING         */ 00579000
*GETINPUT:                                                         0225 00580000
*   ADPRMBLK=PGPBPTR+8;             /* UPDATE SUBROUTINE PARM TO   0225 00581000
*                                      POINT TO GTPB PART OF PGPB FOR   00582000
*                                      IKJEFT55                      */ 00583000
@RF00219 DS    0H                                                  0225 00584000
GETINPUT LA    @14,8                                               0225 00585000
         ALR   @14,PGPBPTR                                         0225 00586000
         ST    @14,ADPRMBLK                                        0225 00587000
*   R1=ADDR(TRMOPARM);              /* POINT TO MODIFIED IOPL        */ 00588000
         LA    R1,TRMOPARM                                         0226 00589000
*   CALL IKJEFT55;                  /* CALL GETINPUT                 */ 00590000
         L     @15,@CV00230                                        0227 00591000
         BALR  @14,@15                                             0227 00592000
*   ERCODE=R15;                     /* SAVE RETURN CODE              */ 00593000
         LR    ERCODE,R15                                          0228 00594000
*   GETCODE=R15;                    /* SAVE GETLINE CODE      Y30PQJM*/ 00595000
         LR    GETCODE,R15                                         0229 00596000
*   ADPRMBLK=ADDR(DUPRMBLK);        /* RESTORE PARMADDR              */ 00597000
         LA    @14,DUPRMBLK                                        0230 00598000
         ST    @14,ADPRMBLK                                        0230 00599000
*   IF BYPSFLAG=1 THEN              /* BYPASS INDICATED WAS BYPASS 0231 00600000
*                                      CHAR SENT                     */ 00601000
         LA    @14,1                                               0231 00602000
         CH    @14,BYPSFLAG                                        0231 00603000
         BNE   @RF00231                                            0231 00604000
*     DO;                                                          0232 00605000
*       R1=ADDR(RESTORE);           /* POINT TO RESTORE CHAR         */ 00606000
         LA    R1,RESTORE                                          0233 00607000
*       R0=1;                       /* LENGTH OF OUTPUT              */ 00608000
         LR    R0,@14                                              0234 00609000
*       GEN(TPUT (1),(0),CONTROL);                                 0235 00610000
         TPUT (1),(0),CONTROL                                           00611000
*     END;                          /* END RESTORE PROCESSING        */ 00612000
*   IF ERCODE>4 THEN                /* GETINPUT ERROR                */ 00613000
@RF00231 C     ERCODE,@CF00210                                     0237 00614000
         BNH   @RF00237                                            0237 00615000
*     DO;                                                          0238 00616000
*GETINPER:                                                         0239 00617000
*       IF ERCODE=28                /* LINEDROP                Y02996*/ 00618000
*         THEN                      /*                         Y02996*/ 00619000
GETINPER C     ERCODE,@CF00257                                     0239 00620000
         BNE   @RF00239                                            0239 00621000
*         DO;                       /*                         Y02996*/ 00622000
*           RETURNCD=32;            /* SET RETURNCD            Y02996*/ 00623000
         LA    RETURNCD,32                                         0241 00624000
*           GO TO EXIT;             /* END                     Y02996*/ 00625000
         B     EXIT                                                0242 00626000
*         END;                      /*                         Y02996*/ 00627000
*       IF ERCODE=8 THEN            /* ATTN ECB POSTED               */ 00628000
@RF00239 C     ERCODE,@CF00075                                     0244 00629000
         BE    @RT00244                                            0244 00630000
*         GOTO ATTNER;                                             0245 00631000
*       IF ERCODE=16 THEN                                          0246 00632000
         C     ERCODE,@CF00103                                     0246 00633000
         BNE   @RF00246                                            0246 00634000
*         DO;                       /* IF END OF FILE                */ 00635000
*           R1=SAVEREG1;            /* GO GET ANOTHER LINE           */ 00636000
         L     R1,SAVEREG1                                         0248 00637000
*           DPUTTPUT=PTGPTPUT;                                     0249 00638000
         MVC   DPUTTPUT(1),PTGPTPUT(PGPBPTR)                       0249 00639000
*           GOTO TERMSORC;                                         0250 00640000
         B     TERMSORC                                            0250 00641000
*         END;                                                     0251 00642000
*       IF ERCODE=12 THEN           /* NOWAIT-NOLINE                 */ 00643000
@RF00246 C     ERCODE,@CF00130                                     0252 00644000
         BNE   @RF00252                                            0252 00645000
*         DO;                                                      0253 00646000
*           RETURNCD=20;            /* NOWAIT-TGET                   */ 00647000
         LA    RETURNCD,20                                         0254 00648000
*           GOTO EXIT;                                             0255 00649000
         B     EXIT                                                0255 00650000
*         END;                      /* END NOWAIT PROCESSING         */ 00651000
*       IF ERCODE=20 THEN           /* INVALID PARMS                 */ 00652000
@RF00252 C     ERCODE,@CF00206                                     0257 00653000
         BE    @RT00257                                            0257 00654000
*         GOTO INVLPARM;                                           0258 00655000
*       ELSE                                                       0259 00656000
*         GOTO GETMNER;             /* GETMAIN FAILURE               */ 00657000
         B     GETMNER                                             0259 00658000
*     END;                          /* END GETINPUT ERROR            */ 00659000
*EXITPLGL:                                                         0261 00660000
*   GOTO T2->ALABEL;                /* RETURN TO CALLER              */ 00661000
*                                                                  0261 00662000
@RF00237 DS    0H                                                  0261 00663000
EXITPLGL BR    T2                                                  0261 00664000
*   /*****************************************************************/ 00665000
*   /*                                                               */ 00666000
*   /* FREEMAIN INTERNAL SUBROUTINE                                  */ 00667000
*   /*                                                               */ 00668000
*   /*****************************************************************/ 00669000
*                                                                  0262 00670000
*FREEBUFF:                                                         0262 00671000
*   ADPRMBLK=ADDR(DUPRMBLK);        /* RESTORE PARMLIST FOR TERMOUT     00672000
*                                      AND CHAINOUT                  */ 00673000
FREEBUFF LA    @14,DUPRMBLK                                        0262 00674000
         ST    @14,ADPRMBLK                                        0262 00675000
*   FLENGTH=PTGGADIN->INBUFLL;                                     0263 00676000
         L     @14,PTGGADIN(,PGPBPTR)                              0263 00677000
         LH    @04,INBUFLL(,@14)                                   0263 00678000
         STCM  @04,7,FLENGTH                                       0263 00679000
*   R1=PTGGADIN;                    /* POINT TO ? BUFFER             */ 00680000
         LR    R1,@14                                              0264 00681000
*FREEMAIN:                                                         0265 00682000
*   SPOOL=1;                        /* INDICATE NON SHARED SPL       */ 00683000
FREEMAIN MVI   SPOOL,X'01'                                         0265 00684000
*   R0=FREEREG0;                    /* FILL IN FREEMAIN REG          */ 00685000
         L     R0,FREEREG0                                         0266 00686000
*   GEN(FREEMAIN R,LV=(0),A=(1));                                  0267 00687000
         FREEMAIN R,LV=(0),A=(1)                                        00688000
*   R1=SAVEREG1;                    /* RESTORE PARM REG              */ 00689000
         L     R1,SAVEREG1                                         0268 00690000
*   GOTO T1->ALABEL;                /* RETURN TO CALLER              */ 00691000
         BR    T1                                                  0269 00692000
*NORMEND:                                                          0270 00693000
*   RETURNCD=GETCODE;               /* PASS ON GETLINE CODE   Y30PQJM*/ 00694000
NORMEND  LR    RETURNCD,GETCODE                                    0270 00695000
*EXIT:                                                             0271 00696000
*   RETURN CODE(RETURNCD);                                         0271 00697000
EXIT     L     @13,4(,@13)                                         0271 00698000
         L     @00,@SIZDATD                                        0271 00699000
         LR    @01,@11                                             0271 00700000
         FREEMAIN R,LV=(0),A=(1)                                        00701000
         LR    @15,@05                                             0271 00702000
         L     @14,12(,@13)                                        0271 00703000
         LM    @00,@12,20(@13)                                     0271 00704000
         BR    @14                                                 0271 00705000
*   END IKJEFT45                                                   0272 00706000
*                                                                  0272 00707000
*/* THE FOLLOWING INCLUDE STATEMENTS WERE FOUND IN THIS PROGRAM.     */ 00708000
*/*%INCLUDE SYSLIB  (IKJUPT  )                                       */ 00709000
*/*%INCLUDE SYSLIB  (IKJECT  )                                       */ 00710000
*                                                                  0272 00711000
*       ;                                                          0272 00712000
@DATA    DS    0H                                                       00713000
@DATD    DSECT                                                          00714000
         DS    0F                                                       00715000
@SA00001 DS    18F                                                      00716000
@PC00001 DS    4F                                                       00717000
IKJEFT45 CSECT                                                          00718000
         DS    0F                                                       00719000
@CF00040 DC    F'1'                                                     00720000
@CH00040 EQU   @CF00040+2                                               00721000
@CF00210 DC    F'4'                                                     00722000
@CH00210 EQU   @CF00210+2                                               00723000
@CF00075 DC    F'8'                                                     00724000
@CF00130 DC    F'12'                                                    00725000
@CF00103 DC    F'16'                                                    00726000
@CF00206 DC    F'20'                                                    00727000
@CF00257 DC    F'28'                                                    00728000
@DATD    DSECT                                                          00729000
         DS    0D                                                       00730000
UPTPTR   DS    A                                                        00731000
SAVEREG1 DS    F                                                        00732000
FORMONLY DS    A                                                        00733000
FREEREG0 DS    AL4                                                      00734000
         ORG   FREEREG0                                                 00735000
SPOOL    DS    AL1                                                      00736000
FLENGTH  DS    AL3                                                      00737000
         ORG   FREEREG0+4                                               00738000
BYPSFLAG DS    H                                                        00739000
         DS    CL2                                                      00740000
TXINPARM DS    CL12                                                     00741000
         ORG   TXINPARM                                                 00742000
TXISEGMT DS    AL4                                                      00743000
TXIFRMSG DS    AL4                                                      00744000
TXIFONLY DS    AL4                                                      00745000
         ORG   TXINPARM+12                                              00746000
TRMOPARM DS    CL16                                                     00747000
DUPRMBLK DS    CL16                                                     00748000
         ORG   DUPRMBLK                                                 00749000
DPUTPARM DS    AL4                                                      00750000
         ORG   DPUTPARM                                                 00751000
@NM00009 DS    BL1                                                      00752000
DPUTDATA EQU   DPUTPARM+0                                               00753000
@NM00010 EQU   DPUTPARM+0                                               00754000
         DS    CL1                                                      00755000
DPUTTPUT DS    AL1                                                      00756000
         ORG   DUPRMBLK+4                                               00757000
DPUTAOUT DS    AL4                                                      00758000
DGETPARM DS    AL4                                                      00759000
         ORG   DGETPARM                                                 00760000
@NM00011 DS    BL1                                                      00761000
DGETTERM EQU   DGETPARM+0                                               00762000
         ORG   DUPRMBLK+12                                              00763000
DGETADIN DS    AL4                                                      00764000
         ORG   DUPRMBLK+16                                              00765000
         ORG   *+1-(*-@DATD)/(*-@DATD) INSURE DSECT DATA                00766000
@ENDDATD EQU   *                                                        00767000
IKJEFT45 CSECT                                                          00768000
         DS    0F                                                       00769000
@SIZDATD DC    AL1(1)                                                   00770000
         DC    AL3(@ENDDATD-@DATD)                                      00771000
@CA00202 DC    A(NOIFRMSG)                                              00772000
@CA00203 DC    A(PRMPTMSG)                                              00773000
@CA00204 DC    A(PAUSMSG)                                               00774000
@CV00222 DC    V(IKJEFT52)                                              00775000
@CV00224 DC    V(IKJEFT53)                                              00776000
@CV00230 DC    V(IKJEFT55)                                              00777000
@CV00233 DC    V(IKJEFT56)                                              00778000
@CV00253 DC    V(IKJEFT54)                                              00779000
         DS    0D                                                       00780000
BYPASS   DC    X'24'                                                    00781000
RESTORE  DC    X'14'                                                    00782000
         DS    CL2                                                      00783000
PATCH    DC    20F'0'                                                   00784000
@00      EQU   00                      EQUATES FOR REGISTERS 0-15       00785000
@01      EQU   01                                                       00786000
@02      EQU   02                                                       00787000
@03      EQU   03                                                       00788000
@04      EQU   04                                                       00789000
@05      EQU   05                                                       00790000
@06      EQU   06                                                       00791000
@07      EQU   07                                                       00792000
@08      EQU   08                                                       00793000
@09      EQU   09                                                       00794000
@10      EQU   10                                                       00795000
@11      EQU   11                                                       00796000
@12      EQU   12                                                       00797000
@13      EQU   13                                                       00798000
@14      EQU   14                                                       00799000
@15      EQU   15                                                       00800000
NEXTLEV  EQU   @09                                                      00801000
ERCODE   EQU   @05                                                      00802000
RETURNCD EQU   @05                                                      00803000
GETCODE  EQU   @08                                                      00804000
T2       EQU   @10                                                      00805000
T1       EQU   @08                                                      00806000
PGPBPTR  EQU   @06                                                      00807000
ECTPTR   EQU   @07                                                      00808000
R1       EQU   @01                                                      00809000
R15      EQU   @15                                                      00810000
R0       EQU   @00                                                      00811000
         EXTRN NOIFRMSG                                                 00812000
         EXTRN PRMPTMSG                                                 00813000
         EXTRN PAUSMSG                                                  00814000
XPRMLIST EQU   0                                                        00815000
XUPTPTR  EQU   XPRMLIST                                                 00816000
XECTPTR  EQU   XPRMLIST+4                                               00817000
XPGPBPTR EQU   XPRMLIST+12                                              00818000
UPT      EQU   0                                                        00819000
UPTSWS   EQU   UPT+12                                                   00820000
UPTNPRM  EQU   UPTSWS                                                   00821000
UPTPAUS  EQU   UPTSWS                                                   00822000
ECT      EQU   0                                                        00823000
ECTIOWA  EQU   ECT+4                                                    00824000
ECTMSGF  EQU   ECT+8                                                    00825000
ECTSMSG  EQU   ECT+9                                                    00826000
ECTSWS   EQU   ECT+28                                                   00827000
PGPB     EQU   0                                                        00828000
PTGPCNTL EQU   PGPB                                                     00829000
PTGPMLEV EQU   PTGPCNTL                                                 00830000
PTGPPRMT EQU   PTGPCNTL                                                 00831000
PTGPMODE EQU   PTGPCNTL+1                                               00832000
PTGPBYPS EQU   PTGPCNTL+1                                               00833000
PTGPATTN EQU   PTGPCNTL+1                                               00834000
@NM00006 EQU   PGPB+2                                                   00835000
PTGPTPUT EQU   @NM00006                                                 00836000
PTGPAOUT EQU   PGPB+4                                                   00837000
PTGGCNTL EQU   PGPB+8                                                   00838000
PTGGTERM EQU   PTGGCNTL                                                 00839000
PTGGADIN EQU   PGPB+12                                                  00840000
IOSRL    EQU   0                                                        00841000
IOSTELM  EQU   IOSRL                                                    00842000
IOSBELM  EQU   IOSRL+4                                                  00843000
INSTACK  EQU   0                                                        00844000
INSCODE  EQU   INSTACK                                                  00845000
INSTERM  EQU   INSCODE                                                  00846000
INSINDD  EQU   INSCODE                                                  00847000
INSOTDD  EQU   INSCODE                                                  00848000
INSPROM  EQU   INSCODE                                                  00849000
INSPROC  EQU   INSCODE                                                  00850000
INSLIST  EQU   INSCODE                                                  00851000
PTGTPARM EQU   0                                                        00852000
INBUF    EQU   0                                                        00853000
INBUFLL  EQU   INBUF                                                    00854000
INBUFTXT EQU   INBUF+4                                                  00855000
CHAIN    EQU   0                                                        00856000
CHAINPTR EQU   CHAIN+1                                                  00857000
ALABEL   EQU   0                                                        00858000
UPTX     EQU   0                                                        00859000
ECTX     EQU   0                                                        00860000
ECB      EQU   0                                                        00861000
PGPBX    EQU   0                                                        00862000
FRESWICH EQU   FORMONLY                                                 00863000
DUPPRMLS EQU   TRMOPARM                                                 00864000
ADPRMBLK EQU   DUPPRMLS+12                                              00865000
         AGO   .@UNREFD                START UNREFERENCED COMPONENTS    00866000
@NM00008 EQU   DUPPRMLS                                                 00867000
ECBCOMPC EQU   ECB                                                      00868000
ECBCBIT  EQU   ECB                                                      00869000
ECBWBIT  EQU   ECB                                                      00870000
CHAINTXT EQU   CHAIN+8                                                  00871000
CHAINOO  EQU   CHAIN+6                                                  00872000
CHAINLL  EQU   CHAIN+4                                                  00873000
@NM00012 EQU   CHAIN                                                    00874000
INBUFOO  EQU   INBUF+2                                                  00875000
INSADLSD EQU   INSTACK+1                                                00876000
INSRSVD  EQU   INSCODE                                                  00877000
INSSTOR  EQU   INSCODE                                                  00878000
IOSUNUSD EQU   IOSRL+12                                                 00879000
IOSNELM  EQU   IOSRL+10                                                 00880000
IOSTLEN  EQU   IOSRL+8                                                  00881000
PTGGTGET EQU   PGPB+10                                                  00882000
PTGGBRSV EQU   PTGGCNTL                                                 00883000
PTGGPHYS EQU   PTGGCNTL                                                 00884000
PTGGGET  EQU   PTGGCNTL                                                 00885000
PTGGBIT0 EQU   PTGGCNTL                                                 00886000
@NM00007 EQU   @NM00006+1                                               00887000
PTGPUNUS EQU   PTGPCNTL+1                                               00888000
PTGPFORM EQU   PTGPCNTL+1                                               00889000
PTGPDMND EQU   PTGPCNTL+1                                               00890000
PTGPIFOR EQU   PTGPCNTL                                                 00891000
PTGPMLIN EQU   PTGPCNTL                                                 00892000
PTGPSNGL EQU   PTGPCNTL                                                 00893000
PTGPDTMS EQU   PTGPCNTL                                                 00894000
PTGPPUT  EQU   PTGPCNTL                                                 00895000
PTGPBT0  EQU   PTGPCNTL                                                 00896000
ECTBKPB  EQU   ECT+36                                                   00897000
ECTUSER  EQU   ECT+32                                                   00898000
ECTDDNUM EQU   ECT+29                                                   00899000
@NM00005 EQU   ECTSWS                                                   00900000
ECTBKGRD EQU   ECTSWS                                                   00901000
ECTNNOT  EQU   ECTSWS                                                   00902000
ECTNMAL  EQU   ECTSWS                                                   00903000
ECTLOGF  EQU   ECTSWS                                                   00904000
ECTATRM  EQU   ECTSWS                                                   00905000
@NM00004 EQU   ECTSWS                                                   00906000
ECTNOPD  EQU   ECTSWS                                                   00907000
ECTSCMD  EQU   ECT+20                                                   00908000
ECTPCMD  EQU   ECT+12                                                   00909000
ECTRTCD  EQU   ECT+1                                                    00910000
ECTRCDF  EQU   ECT                                                      00911000
UPTPREFL EQU   UPT+23                                                   00912000
UPTPREFX EQU   UPT+16                                                   00913000
@NM00003 EQU   UPT+15                                                   00914000
UPTLDEL  EQU   UPT+14                                                   00915000
UPTCDEL  EQU   UPT+13                                                   00916000
UPTWTP   EQU   UPTSWS                                                   00917000
UPTMODE  EQU   UPTSWS                                                   00918000
UPTALD   EQU   UPTSWS                                                   00919000
UPTNCOM  EQU   UPTSWS                                                   00920000
UPTMID   EQU   UPTSWS                                                   00921000
@NM00002 EQU   UPTSWS                                                   00922000
UPTUSER  EQU   UPT+2                                                    00923000
@NM00001 EQU   UPT                                                      00924000
XECBPTR  EQU   XPRMLIST+8                                               00925000
.@UNREFD ANOP                          END UNREFERENCED COMPONENTS      00926000
@RT00054 EQU   GETINPUT                                                 00927000
@RF00054 EQU   FORMAT                                                   00928000
@RT00064 EQU   TRMOUTER                                                 00929000
@RF00069 EQU   CKLIST                                                   00930000
@RT00074 EQU   UNCHAIN                                                  00931000
@RT00090 EQU   GETINPER                                                 00932000
@RT00099 EQU   TRMOUTER                                                 00933000
@RF00092 EQU   NORMEND                                                  00934000
@RT00111 EQU   TRMOUTER                                                 00935000
@RT00117 EQU   GETINPER                                                 00936000
@RT00129 EQU   TRMOUTER                                                 00937000
@RF00159 EQU   NORMEND                                                  00938000
@RF00146 EQU   INVLPARM                                                 00939000
@RT00184 EQU   INVLPARM                                                 00940000
@RC00214 EQU   EXIT                                                     00941000
@RT00244 EQU   ATTNER                                                   00942000
@RT00257 EQU   INVLPARM                                                 00943000
@RF00257 EQU   GETMNER                                                  00944000
@ENDDATA EQU   *                                                        00945000
         END   IKJEFT45                                                 00946000
