         MACRO                                                          00010010
         IEDQVCON &SUB,&RTN                                             00020010
.*A-000000-999999                                              @Y17XAMN 00030010
.* &IEDQZL(64) - INDEX VALUE INTO IEDQMSGS                              00040010
.* &IEDQZL(256) - INDEX VALUE INTO IEDQNVCN                             00050010
.* &IEDQZLC - NEXT AVAILABLE INDEX INTO IEDQNVCN                        00060010
.* &IN - INDEX INTO IEDQZL                                              00070010
         GBLA  &IEDQZE(64),&IEDQZL(256),&IEDQZLC                        00080010
         LCLA  &IX,&IN                                                  00090010
         LCLC  &C                                                       00100010
.LOOP    ANOP                                                           00110010
.* CHECK IF SECOND LEVEL INDEX TABLE IS NEEDED (&SUB>64).               00120010
&IX      SETA  &IX+1                    INDEX INTO SUB ENTRIES          00130010
         AIF   (&SUB(&IX) GT 64).CONNUT SUB>64?                         00140010
.* CHECK IF FIRST LEVEL INDEX POSITION HAS BEEN ASSIGNED.               00150010
         AIF   (&IEDQZE(&SUB(&IX)) NE 0).NEXT                           00160010
&C       SETC  '&SYSECT'                ASSIGN POSITION                 00170010
IEDQMSGS CSECT                                                          00180010
         DC    V(&RTN(&IX))                                             00190010
&C       CSECT                                                          00200010
&IEDQZE(&SUB(&IX)) SETA &IEDQZE(1)                                      00210010
&IEDQZE(1) SETA &IEDQZE(1)+4                                            00220010
         AGO   .NEXT                                           @YM06460 00230010
.* CHECK IF CODE TO SETUP SECOND LEVEL POINTER TO MODULE                00240010
.* DESIRED HAS BEEN GENERATED AND BRANCH TO THAT MODULE.                00250010
.CONNUT  AIF   (&IEDQZLC NE 0).CONOVCN                                  00260010
&C       SETC  '&SYSECT'                GENERATE THE CODE               00270010
IEDQMSGS CSECT                                                          00280010
         DC    A(IEDQNWMH)                                              00290010
&IEDQZE(48) SETA &IEDQZE(1)                                             00300010
&IEDQZE(1) SETA &IEDQZE(1)+4                                            00310010
IEDQNWMH CSECT                                                          00320010
         LTR   15,15                    FROM BD                @YM06135 00322010
         BZ    16(12)                   NO, BRANCH             @YM06135 00324010
*        CODE EXECUTED WHEN ENTERING FROM IEDQBD               @YM06135 00326010
         SR    15,15                                           @YM06135 00328010
         IC    15,2(8)                  USE REG 8 FOR PARM LIST ADDR    00330010
         B     20(12)                                          @YM06135 00332010
*        CODE EXECUTED WHEN ENTERING FROM IEDQUI               @YM06135 00334010
         IC    15,2(1)                  USE REG 1 FOR PARM LIST ADDR    00340010
*        COMMONLY EXECUTED CODE                                @YM06135 00345010
         SLL   15,2                     CALCULATE DISPL TO ADDR         00350010
         L     12,IEDQNVCN-4-IEDQNWMH(15,12) LOAD ROUTINE ADDR @YM05674 00360010
         SR    15,15                    ZERO REGISTER 15                00370010
         BR    12                       BRANCH TO ROUTINE               00380010
IEDQNVCN DS    0F                                                       00390010
&C       CSECT                                                          00400010
&IEDQZLC SETA  1                        SET PRESENT INDEX               00410010
.CONOVCN ANOP                                                           00420010
&IN      SETA  &SUB(&IX)-64             DETERMINE 2ND LVL NUM           00430010
.* CHECK IF SECOND LEVEL INDEX POSITION HAS BEEN ASSIGNED.              00440010
         AIF   (&IEDQZL(&IN) NE 0).NEXT                                 00450010
&C       SETC  '&SYSECT'                ASSIGN POSITION                 00460010
IEDQNWMH CSECT                                                          00470010
         DC    V(&RTN(&IX))                                             00480010
&C       CSECT                                                          00490010
&IEDQZL(&IN) SETA &IEDQZLC                                              00500010
&IEDQZLC SETA &IEDQZLC+1                SET NEXT INDEX                  00510010
.NEXT    AIF   (&IX LT N'&SUB).LOOP     MORE SUB ENTRIES?               00520010
         MEND                                                           00530010
