         TITLE '      LOGSCN IFDOLT26'                                  00010000
         TITLE   'LOGSCAN IFDOLT26  '                                   00020000
         LCLA  &T,&SPN                                            0002  00030000
.@001    ANOP                                                     0002  00040000
IFDOLT26 CSECT ,                                                  0002  00050000
         BC    15,24(0,@F)                                              00060000
         DC    C'IFDOLT26 22 JUN 76'                             0002  00070000
         ST    @E,12(0,@D)                                        0002  00080000
         STM   @0,@C,20(@D)                                       0002  00090000
         BALR  @B,0                                               0002  00100000
@PSTART  DS    0H                                                 0002  00110000
         USING @PSTART+00000,@B                                   0002  00120000
         ST    @D,@SAV001+4                                       0002  00130000
         LA    @F,@SAV001                                         0002  00140000
         ST    @F,8(0,@D)                                         0002  00150000
         LR    @D,@F                                              0002  00160000
*         GEN(USING CHASCT,2);                                          00170000
         USING CHASCT,2                                                 00180000
         DS    0H                                                       00190000
*         DCL CESWT6 CHAR(1) GENERATED;  /*OLTEP SWITCHES*/             00200000
*         DCL 1 * CHAR(1) BASED(ADDR(CESWT6)),                          00210000
*           2 * BIT(2),                                                 00220000
*           2 EOJBIT BIT(1),             /*END OF JOB INDICATOR*/       00230000
*           2 * BIT(5);                                                 00240000
*         DCL PATCH CHAR(80) BDY(HWORD) INIT(' ');                      00250000
*         DCL LOGADR PTR GENERATED;                                     00260000
*         GENERATE DATA;                                                00270000
*         ADEXT=SAVEADEX;               /*PUT AD OF EXTRACTOR IN REG12* 00280000
         L     @C,SAVEADEX                                        0034  00290000
*         IF EOJBIT= '1'B THEN          /*TEST FOR LAST CALL*/          00300000
         TM    A00018,B'00100000'                                 0035  00310000
         BC    12,@9FF                                            0035  00320000
*           DO;                         /*END OF JOB ROUTINE*/          00330000
*           S='00'X;                    /*RESET SWITCHES TO 0*/         00340000
         MVI   S,X'00'                                            0037  00350000
*           EOJBIT='0'B;                /*RESET EOJBIT TO 0*/           00360000
         NI    A00018,B'11011111'                                 0038  00370000
*           LOGADR=0;                   /*ZERO LOGADR*/                 00380000
         SR    @F,@F                                              0039  00390000
         ST    @F,LOGADR                                          0039  00400000
*           RTRNPT= ADDR(ENDJOB1);        /* PUT RETURN ADDRESS IN R14* 00410000
         LA    @E,ENDJOB1                                         0040  00420000
*   EOJ:                                                                00430000
*           ENTPTR=ADEXT + 8;                                           00440000
EOJ      LA    @7,8                                               0041  00450000
         AR    @7,@C                                              0041  00460000
*           GOTO ENTPTR;                /*BRANCH TO EXTRACTOR END OF    00470000
*                                         JOB ROUTINE*/                 00480000
         BCR   15,@7                                              0042  00490000
*  ENDJOB1:                                                             00500000
*           GEN(IFDMOD DELETE='46');     /*DELETE EXTRACTOR   */        00510000
ENDJOB1  IFDMOD DELETE='46'                                             00520000
         DS    0H                                                       00530000
*           RETURN;                                                     00540000
         BC    15,@EL01                                           0044  00550000
*           END;                                                        00560000
*         SAVEREG1=PARMPTR;             /*SAVE REG 1 (ADDRESS OF MACRO  00570000
*                                         PARMLIST)*/                   00580000
@9FF     LR    @3,@1                                              0046  00590000
*         IF MACROLEV < '02'X THEN                                      00600000
         CLI   1(@3),X'02'                                        0047  00610000
         BC    10,@9FE                                            0047  00620000
*           DO;                                                         00630000
*           RTRNCODE=4;                                                 00640000
         LA    @F,4                                               0049  00650000
*           RETURN;                                                     00660000
         BC    15,@EL01                                           0050  00670000
*           END;                                                        00680000
*         IF MODLEV < MACROLEV THEN                                     00690000
@9FE     CLC   MODLEV(1),1(@3)                                    0052  00700000
         BC    10,@9FD                                            0052  00710000
*           DO;                                                         00720000
* RTRN4:                                                                00730000
*           RTRNCODE=4;                                                 00740000
RTRN4    LA    @F,4                                               0054  00750000
*           RETURN;                                                     00760000
         BC    15,@EL01                                           0055  00770000
*           END;                                                        00780000
*         IF ESVBIT='1'B THEN                                           00790000
@9FD     TM    16(@3),B'00000100'                                 0057  00800000
         BC    12,@9FC                                            0057  00810000
*           DO;                          /*ESV RECORDS NOT SUPPORTED*/  00820000
* RTRN16:                                                               00830000
*           RTRNCODE=16;                 /* UNSUPPORTED RECORD TYPE   * 00840000
RTRN16   LA    @F,16                                              0059  00850000
*           RETURN;                                                     00860000
         BC    15,@EL01                                           0060  00870000
*           END;                                                        00880000
*          IF SIZE= 0 &          /* BUFFER SIZE = 0 AND       @ZA09699* 00890000
*           RESETB = '0'B THEN   /*RESET IS  OFF              @ZA09699* 00900000
@9FC     SR    @F,@F                                              0062  00910000
         C     @F,8(0,@3)                                         0062  00920000
         BC    07,@9FB                                            0062  00930000
         TM    16(@3),B'00000001'                                 0062  00940000
         BC    05,@9FA                                            0062  00950000
*           DO;                          /* ERROR                     * 00960000
* ERRETRN:                               /* BRANCH ENTRY              * 00970000
*             RTRNCODE=8;                /* RETURN CODE               * 00980000
ERRETRN  LA    @F,8                                               0064  00990000
*             RETURN;                    /* RETURN TO CALLER          * 01000000
         BC    15,@EL01                                           0065  01010000
*           END;                         /* END OF DO GROUP           * 01020000
*         ADBUF=ADINAREA;               /*PUT ADDRESS OF BUFFER IN      01030000
*                                         REG 5 */                      01040000
@9FA     EQU   *                                                  0067  01050000
@9FB     L     @5,4(0,@3)                                         0067  01060000
*         IF PASSBIT ='0'B THEN         /*TEST IF EXTRACTOR MUST BE     01070000
*                                         LOADED*/                      01080000
         TM    S,B'00100000'                                      0068  01090000
         BC    05,@9F9                                            0068  01100000
*           DO;                                                         01110000
*           GENERATE (CENXTR);           /*LOAD EXTRACTOR*/             01120000
         CENXTR                                                         01130000
         DS    0H                                                       01140000
*           ADEXT = RTRNCODE;           /*STORE BASE ADDRESS OF EXTRACT 01150000
*                                         IN REG 12*/                   01160000
         LR    @C,@F                                              0071  01170000
*           IF ADEXT<100 THEN            /*WAS EXTRACTOR LOADED       * 01180000
         CH    @C,@D1                                             0072  01190000
         BC    10,@9F8                                            0072  01200000
*             DO;                                                       01210000
*             RTRNCODE=4;                /*NO ROOM FOR EXTRACTOR*/      01220000
         LA    @F,4                                               0074  01230000
*             RETURN;                                                   01240000
         BC    15,@EL01                                           0075  01250000
*             END;                                                      01260000
*           SAVEADEX=ADEXT;             /*STORE ADDRESS OF EXTRACTOR*/  01270000
@9F8     ST    @C,SAVEADEX                                        0077  01280000
*           PASSBIT='1'B;               /*SET PASSBIT SO EXTRACTOR WON' 01290000
*                                         HAVE TO BE LOADED IF CALLED   01300000
*                                         AGAIN*/                       01310000
         OI    S,B'10100000'                                      0078  01320000
*           FIRSTRD='1'B;                /* SET FIRST READ FLAG       * 01330000
*           LOGADR=ADDR(IFDOLT26);                                      01340000
         L     @8,@A1              ADDRESS OF IFDOLT26            0080  01350000
         ST    @8,LOGADR                                          0080  01360000
*           END;                                                        01370000
*          IF RESETB = '1'B THEN /* RESET REQUIRED            @ZA09699* 01380000
@9F9     TM    16(@3),B'00000001'                                 0082  01390000
         BC    12,@9F7                                            0082  01400000
*           DO;                  /*                           @ZA09699* 01410000
*            RTRNPT=ADDR(RTRNSET); /*RETURN ADDRESS           @ZA09699* 01420000
         LA    @E,RTRNSET                                         0084  01430000
*            ENTPTR=ADEXT+4;       /* INTO R14 AND GO         @ZA09699* 01440000
         LA    @7,4                                               0085  01450000
         AR    @7,@C                                              0085  01460000
*            GO TO ENTPTR;         /* TO EXTRACT              @ZA09699* 01470000
         BCR   15,@7                                              0086  01480000
* RTRNSET:                       /* RESTART                   @ZA09699* 01490000
*            RETURN;               /*                         @ZA09699* 01500000
*         END;                     /*                         @ZA09699* 01510000
*         PARMPTR=ADDR(PARMLIST);       /*PUT ADDRESS OF PARMLIST FOR   01520000
*                                         EXTRACTOR IN REG 1*/          01530000
@9F7     LA    @1,PARMLIST                                        0089  01540000
*         ADRDBUF=ADBUF;                /*SET UP PARMLIST*/             01550000
         ST    @5,PARMLIST                                        0090  01560000
*         BYTECT=SIZE;                                                  01570000
         MVC   PARMLIST+4(2),10(@3)                               0091  01580000
*         IF ANYBIT='1'B THEN            /* ANY RECORD OKAY      M1013* 01590000
         TM    16(@3),B'00000010'                                 0092  01600000
*           GOTO REAPROC;                                               01610000
         BC    01,REAPROC                                         0093  01620000
*         IF CPUBIT='1'B THEN            /* CKECK IF CPU DESIRED M1013* 01630000
         TM    16(@3),B'00010000'                                 0094  01640000
         BC    12,@9F6                                            0094  01650000
*           DO;                          /*                      M1013* 01660000
*           RECTYPE='10'X;               /* SET RECKEY           M1013* 01670000
         MVI   PARMLIST+8,X'10'                                   0096  01680000
*           GOTO REAPROC;                /* GO READ RECORD       M1013* 01690000
         BC    15,REAPROC                                         0097  01700000
*           END;                         /*                      M1013* 01710000
*         IF OBRBIT='1'B THEN           /*CHECK IF OBR DESIRED*/        01720000
@9F6     TM    16(@3),B'10000000'                                 0099  01730000
         BC    12,@9F5                                            0099  01740000
*           DO;                                                         01750000
*           RECTYPE='30'X;              /*SET CODE IN PARMLIST*/        01760000
         MVI   PARMLIST+8,X'30'                                   0101  01770000
*           GOTO REAPROC;                                               01780000
         BC    15,REAPROC                                         0102  01790000
*           END;                                                        01800000
*         IF SDRBIT='1'B THEN           /*CHECK IF SDR DESIRED*/        01810000
@9F5     TM    16(@3),B'01000000'                                 0104  01820000
*           GOTO RTRN16;                 /* RECORD UNSUPPORTED        * 01830000
         BC    01,RTRN16                                          0105  01840000
*         IF TPBIT='1'B THEN             /* CHECK FOR TP RECORD       * 01850000
         TM    16(@3),B'00001000'                                 0106  01860000
*           GOTO RTRN16;                 /* RECORD UNSUPPORTED        * 01870000
         BC    01,RTRN16                                          0107  01880000
*         IF CHIBIT='1'B THEN           /*CHECK IF CHI RECORD DESIRED*/ 01890000
         TM    16(@3),B'00100000'                                 0108  01900000
         BC    12,@9F4                                            0108  01910000
*           RECTYPE='20'X;              /*SET REC TYPE CODE IN PARMLST* 01920000
         MVI   PARMLIST+8,X'20'                                   0109  01930000
*  REAPROC:                                                             01940000
*           REAUSED='1'B;                                               01950000
@9F4     EQU   *                                                  0110  01960000
REAPROC  OI    S,B'00010000'                                      0110  01970000
*           RTRNPT=ADDR(RTRNREA);       /*PUT RETURN ADDRESS IN REG14*/ 01980000
         LA    @E,RTRNREA                                         0111  01990000
*           GOTO ADEXT;                 /*BRANCH TO EXTRACTOR FOR READ  02000000
*                                         FROM REA ROUTINE*/            02010000
         BCR   15,@C                                              0112  02020000
*  RTRNREA:                                                             02030000
*           COMPREG=12;                  /* CHECK FOR BOTH OPENS      * 02040000
RTRNREA  LA    @9,12                                              0113  02050000
*           IF RTRNCODE=COMPREG THEN     /* FAILING                   * 02060000
         CR    @F,@9                                              0114  02070000
*             GOTO RTRN4;                /* ERROR                     * 02080000
         BC    08,RTRN4                                           0115  02090000
*           COMPREG=4;                                                  02100000
         LA    @9,4                                               0116  02110000
*           IF RTRNCODE=COMPREG THEN    /*CHECK FOR END OF DATA*/       02120000
         CR    @F,@9                                              0117  02130000
         BC    07,@9F3                                            0117  02140000
*           DO;                                                         02150000
*  TESTMORE:                                                            02160000
*             RTRNPT=ADDR(RTRNTEST);     /*PUT RETURN ADDR IN REG(14)*/ 02170000
TESTMORE LA    @E,RTRNTEST                                        0119  02180000
*             ENTPTR = ADEXT + 28;                                      02190000
         LA    @7,28                                              0120  02200000
         AR    @7,@C                                              0120  02210000
*             GOTO ENTPTR;              /*BRANCH TO EXTRACTOR FOR TEST  02220000
*                                         FOR ADDITIONAL RECORDS        02230000
*                                         ROUTINE*/                     02240000
         BCR   15,@7                                              0121  02250000
*  RTRNTEST:                                                            02260000
*             COMPREG=48;                                               02270000
RTRNTEST LA    @9,48                                              0122  02280000
*             IF RTRNCODE=COMPREG THEN                                  02290000
         CR    @F,@9                                              0123  02300000
*               GOTO REAPROC;                                           02310000
         BC    08,REAPROC                                         0124  02320000
*           IF FIRSTRD='1'B THEN         /* IS THIS FIRST READ        * 02330000
         TM    S,B'10000000'                                      0125  02340000
         BC    12,@9F2                                            0125  02350000
*             RTRNCODE=16;               /* EMPTY DATA SET            * 02360000
         LA    @F,16                                              0126  02370000
         BC    15,@9F1                                            0127  02380000
*           ELSE RTRNCODE=12;            /* NO. END OF DATA SET       * 02390000
@9F2     LA    @F,12                                              0127  02400000
*           FIRSTRD='0'B;                /* RESET FLAG                * 02410000
@9F1     NI    S,B'01111111'                                      0128  02420000
*           RETURN;                                                     02430000
         BC    15,@EL01                                           0129  02440000
*           END;                                                        02450000
*           FIRSTRD='0'B;                /* RESET FLAG                * 02460000
@9F3     NI    S,B'01111111'                                      0131  02470000
*           COMPREG=0;                                                  02480000
         SR    @9,@9                                              0132  02490000
*           IF RTRNCODE^=COMPREG THEN   /*CHECK FOR ERROR IN READ*/     02500000
         CR    @F,@9                                              0133  02510000
*             GOTO ERRETRN;             /*AN ERROR HAS OCCURRED-RETURN* 02520000
         BC    07,ERRETRN                                         0134  02530000
*               IF RECOUNT > '11'X THEN  /* IF PART OF MULTIPLE X02906* 02540000
         CLI   14(@5),X'11'                                       0135  02550000
*                 GOTO REAPROC;          /* RECORD, READ ANOTHERX02906* 02560000
         BC    02,REAPROC                                         0136  02570000
*           IF ANYBIT='1'B THEN                                         02580000
         TM    16(@3),B'00000010'                                 0137  02590000
*                GOTO A;                 /* CHK FOR PARAMETERS  X02906* 02600000
         BC    01,A                                               0138  02610000
*         VALIDREC=RECTYPE | '0F'X;      /* GET UPPER LIMIT      M1013* 02620000
         MVI   VALIDREC,X'0F'                                     0139  02630000
         OC    VALIDREC(1),PARMLIST+8                             0139  02640000
*         IF RECKEY < RECTYPE |          /* LESS THAN LOWER LIM  M1013* 02650000
*           RECKEY > VALIDREC THEN       /* GREATER THAN UPPER   M1013* 02660000
         CLC   8(1,@5),PARMLIST+8                                 0140  02670000
         BC    04,@9F0                                            0140  02680000
         CLC   8(1,@5),VALIDREC                                   0140  02690000
         BC    12,@9EF                                            0140  02700000
*           GOTO REAPROC;                /* READ ANOTHER REC     M1013* 02710000
         BC    03,REAPROC                                         0141  02720000
*         IF CPUBIT = '1'B THEN          /* SUCCESSFUL READ CPU X02906* 02730000
@9EF     TM    16(@3),B'00010000'                                 0142  02740000
*             GOTO RTRNZERO;                                            02750000
         BC    01,RTRNZERO                                        0143  02760000
*  A:                                                                   02770000
*           IF SRCHAD ^='FFFF'X THEN                                    02780000
A        CLC   14(2,@3),@X10                                      0144  02790000
         BC    08,@9EE                                            0144  02800000
*             DO;                        /*SEARCH ON DEVICE ADDRESS*/   02810000
*           IF RECKEY >= '20'X &         /*   CHI REC            M1013* 02820000
*               RECKEY <='2F'X THEN      /*                      M1013* 02830000
         CLI   8(@5),X'20'                                        0146  02840000
         BC    04,@9ED                                            0146  02850000
         CLI   8(@5),X'2F'                                        0146  02860000
         BC    02,@9EC                                            0146  02870000
*               DO;                      /*CHI RECORD*/                 02880000
*               IF SRCHAD=CHIDEVAD THEN                                 02890000
         CLC   14(2,@3),82(@5)                                    0148  02900000
*                 GOTO CLTYPCHK;         /* CHECK FOR CLASS&TYPEX02906* 02910000
         BC    08,CLTYPCHK                                        0149  02920000
*               ELSE GOTO REAPROC;       /* WRONG ADR-READ ANOTHR X0290 02930000
*                                          RECORD*/                     02940000
         BC    15,REAPROC                                         0150  02950000
*               END;                                                    02960000
*                                                                       02970000
*           IF RECKEY >= '30'X &         /* IF OBR REC READ (ON X02906* 02980000
*             RECKEY <= '3F'X THEN       /* ANY REQ) CHK DEVADR X02906* 02990000
@9EC     EQU   *                                                  0152  03000000
@9ED     CLI   8(@5),X'30'                                        0152  03010000
         BC    04,@9EB                                            0152  03020000
         CLI   8(@5),X'3F'                                        0152  03030000
         BC    02,@9EA                                            0152  03040000
*               IF SRCHAD ^= OBRDEVAD THEN /* IF DEV ADDR       X02906* 03050000
         CLC   14(2,@3),66(@5)                                    0153  03060000
*               GOTO REAPROC;            /*WRONG ADDR -READ ANOTHER     03070000
*                                          RECORD*/                     03080000
         BC    07,REAPROC                                         0154  03090000
*             END;                                                      03100000
@9EA     EQU   *                                                  0155  03110000
@9EB     EQU   *                                                  0155  03120000
*                                                                       03130000
*   CLTYPCHK:                            /*                     X02906* 03140000
*           IF RECKEY >= '20'X &         /*   CHI REC            M1013* 03150000
*               RECKEY <='2F'X THEN      /*                      M1013* 03160000
@9EE     EQU   *                                                  0156  03170000
CLTYPCHK CLI   8(@5),X'20'                                        0156  03180000
         BC    04,@9E9                                            0156  03190000
         CLI   8(@5),X'2F'                                        0156  03200000
         BC    02,@9E8                                            0156  03210000
*             DO;                                                       03220000
*           IF DEVCL = '00'X THEN        /* IF NO CLASS SPEC,   X02906* 03230000
         CLI   12(@3),X'00'                                       0158  03240000
*             GOTO TYPONLY1;             /* CHECK FOR TYPE      X02906* 03250000
         BC    08,TYPONLY1                                        0159  03260000
*           IF CHIDEVCL ^= DEVCL THEN    /* NO MATCH            X02906* 03270000
         CLC   78(1,@5),12(@3)                                    0160  03280000
*             GOTO REAPROC;              /* READ ANOTHER RECCORDX02906* 03290000
         BC    07,REAPROC                                         0161  03300000
*   TYPONLY1:                            /*                     X02906* 03310000
*           IF DEVTYPE='00'X THEN        /* NO TYPE SPECIFIED   X02906* 03320000
TYPONLY1 CLI   13(@3),X'00'                                       0162  03330000
*             GOTO RTRNZERO;             /* GOOD RETURN         X02906* 03340000
         BC    08,RTRNZERO                                        0163  03350000
*           IF CHIDEVTP = DEVTYPE THEN   /* DO TYPES MATCH      X02906* 03360000
         CLC   79(1,@5),13(@3)                                    0164  03370000
*               GOTO RTRNZERO;           /* GOOD RETURN         X02906* 03380000
         BC    08,RTRNZERO                                        0165  03390000
*             ELSE GOTO REAPROC;         /* WRONG TYP-READ ANTHRX02906* 03400000
         BC    15,REAPROC                                         0166  03410000
*             END;                                                      03420000
*         IF RECKEY >= '30'X &           /* IF OBR REC READ (ON X02906* 03430000
*           RECKEY <= '3F'X THEN         /* ANY REQ) CHK CL&TYP X02906* 03440000
@9E8     EQU   *                                                  0168  03450000
@9E9     CLI   8(@5),X'30'                                        0168  03460000
         BC    04,@9E7                                            0168  03470000
         CLI   8(@5),X'3F'                                        0168  03480000
         BC    02,@9E6                                            0168  03490000
*           DO;                          /*                     X02906* 03500000
*           IF DEVCL = '00'X THEN        /* IF NO CLASS SPEC,   X02906* 03510000
         CLI   12(@3),X'00'                                       0170  03520000
*             GOTO TYPONLY2;             /* CHECK FOR TYPE      X02906* 03530000
         BC    08,TYPONLY2                                        0171  03540000
*         IF OBRDEVCL ^= DEVCL THEN      /* CLASSES DONT MATCH  X02906* 03550000
         CLC   62(1,@5),12(@3)                                    0172  03560000
*           GOTO REAPROC;                /* READ ANOTHER REC    X02906* 03570000
         BC    07,REAPROC                                         0173  03580000
*   TYPONLY2:                            /*                     X02906* 03590000
*         IF DEVTYPE='00'X THEN          /* NO DEVICE TYPE      X02906* 03600000
TYPONLY2 CLI   13(@3),X'00'                                       0174  03610000
*           GOTO RTRNZERO;               /* GOOD RETURN         X02906* 03620000
         BC    08,RTRNZERO                                        0175  03630000
*         IF OBRDEVTP ^= DEVTYPE THEN    /* IF TYPES NOT SAME   X02906* 03640000
         CLC   63(1,@5),13(@3)                                    0176  03650000
*         GOTO REAPROC;                  /* GO READ ANOTHER REC X02906* 03660000
         BC    07,REAPROC                                         0177  03670000
*           END;                                                        03680000
*   RTRNZERO:                                                           03690000
*         FIRSTRD='0'B;                  /* RESET FLAG                * 03700000
@9E6     EQU   *                                                  0179  03710000
@9E7     EQU   *                                                  0179  03720000
RTRNZERO NI    S,B'01111111'                                      0179  03730000
*         RTRNCODE=0;                    /*RETURN CODE*/                03740000
         SR    @F,@F                                              0180  03750000
*         END;                                                          03760000
@EL01    L     @D,4(0,@D)                                         0181  03770000
         L     @E,12(0,@D)                                        0181  03780000
         LM    @0,@C,20(@D)                                       0181  03790000
         BCR   15,@E                                              0181  03800000
@DATA1   EQU   *                                                        03810000
@0       EQU   00                  EQUATES FOR REGISTERS 0-15           03820000
@1       EQU   01                                                       03830000
@2       EQU   02                                                       03840000
@3       EQU   03                                                       03850000
@4       EQU   04                                                       03860000
@5       EQU   05                                                       03870000
@6       EQU   06                                                       03880000
@7       EQU   07                                                       03890000
@8       EQU   08                                                       03900000
@9       EQU   09                                                       03910000
@A       EQU   10                                                       03920000
@B       EQU   11                                                       03930000
@C       EQU   12                                                       03940000
@D       EQU   13                                                       03950000
@E       EQU   14                                                       03960000
@F       EQU   15                                                       03970000
@D1      DC    H'100'                                                   03980000
@A1      DC    A(IFDOLT26)                                              03990000
         DS    0F                                                       04000000
@X10     DC    X'FFFF'                                                  04010000
         DS    0D                                                       04020000
@DATA    EQU   *                                                        04030000
@SAV001  EQU   @DATA+00000000      72 BYTE(S) ON WORD                   04040000
         ORG   @DATA+00000072                                           04050000
MODLEV   EQU   *                   1 BYTE(S)                            04060000
         DC    X'02'                                                    04070000
R1       EQU   00000001            FULLWORD POINTER REGISTER            04080000
PARMPTR  EQU   00000001            FULLWORD POINTER REGISTER            04090000
R2       EQU   00000002            FULLWORD POINTER REGISTER            04100000
SAVEREG1 EQU   00000003            FULLWORD POINTER REGISTER            04110000
ADBUF    EQU   00000005            FULLWORD POINTER REGISTER            04120000
ENTPTR   EQU   00000007            FULLWORD POINTER REGISTER            04130000
COMPREG  EQU   00000009            FULLWORD INTEGER REGISTER            04140000
ADEXT    EQU   00000012            FULLWORD POINTER REGISTER            04150000
R14      EQU   00000014            FULLWORD POINTER REGISTER            04160000
RTRNPT   EQU   00000014            FULLWORD POINTER REGISTER            04170000
R15      EQU   00000015            FULLWORD POINTER REGISTER            04180000
RTRNCODE EQU   00000015            FULLWORD INTEGER REGISTER            04190000
A00000   EQU   00000000            17 BYTE(S) ON WORD                   04200000
A00001   EQU   A00000+00000000     1 BYTE(S)                            04210000
MACROLEV EQU   A00000+00000001     1 BYTE(S)                            04220000
A00002   EQU   A00000+00000002     2 BYTE(S)                            04230000
ADINAREA EQU   A00000+00000004     FULLWORD POINTER                     04240000
SIZE     EQU   A00000+00000008     FULLWORD INTEGER                     04250000
DEVCL    EQU   A00000+00000012     1 BYTE(S)                            04260000
DEVTYPE  EQU   A00000+00000013     1 BYTE(S)                            04270000
SRCHAD   EQU   A00000+00000014     2 BYTE(S)                            04280000
DATA     EQU   A00000+00000016     1 BYTE(S)                            04290000
OBRBIT   EQU   A00000+00000016     1 BIT(S)                             04300000
SDRBIT   EQU   A00000+00000016     1 BIT(S)                             04310000
CHIBIT   EQU   A00000+00000016     1 BIT(S)                             04320000
CPUBIT   EQU   A00000+00000016     1 BIT(S)                             04330000
TPBIT    EQU   A00000+00000016     1 BIT(S)                             04340000
ESVBIT   EQU   A00000+00000016     1 BIT(S)                             04350000
ANYBIT   EQU   A00000+00000016     1 BIT(S)                             04360000
RESETB   EQU   A00000+00000016     1 BIT(S)                             04370000
PARMLIST EQU   @DATA+00000076      10 BYTE(S) ON WORD                   04380000
ADRDBUF  EQU   PARMLIST+00000000   FULLWORD POINTER                     04390000
BYTECT   EQU   PARMLIST+00000004   HALFWORD INTEGER                     04400000
         ORG   PARMLIST+00000006                                        04410000
A00003   EQU   *                   16 BIT(S) ON BYTE                    04420000
         DC    X'0020'                                                  04430000
A00004   EQU   PARMLIST+00000006   8 BIT(S)                             04440000
SELRECT  EQU   PARMLIST+00000007   1 BIT(S)                             04450000
FULLKEY  EQU   PARMLIST+00000007   1 BIT(S)                             04460000
CONCAT   EQU   PARMLIST+00000007   1 BIT(S)                             04470000
A00005   EQU   PARMLIST+00000007   5 BIT(S)                             04480000
RECTYPE  EQU   PARMLIST+00000008   1 BYTE(S)                            04490000
         ORG   PARMLIST+00000009                                        04500000
A00006   EQU   *                   1 BYTE(S)                            04510000
         DC    X'00'                                                    04520000
S        EQU   *                   8 BIT(S) ON BYTE                     04530000
         DC    X'00'                                                    04540000
FIRSTRD  EQU   S+00000000          1 BIT(S)                             04550000
A00007   EQU   S+00000000          1 BIT(S)                             04560000
PASSBIT  EQU   S+00000000          1 BIT(S)                             04570000
REAUSED  EQU   S+00000000          1 BIT(S)                             04580000
A00008   EQU   S+00000000          4 BIT(S)                             04590000
A00009   EQU   00000000            84 BYTE(S) ON WORD                   04600000
A00010   EQU   A00009+00000000     78 BYTE(S)                           04610000
CHIDEVCL EQU   A00009+00000078     1 BYTE(S)                            04620000
CHIDEVTP EQU   A00009+00000079     1 BYTE(S)                            04630000
A00011   EQU   A00009+00000080     2 BYTE(S)                            04640000
CHIDEVAD EQU   A00009+00000082     2 BYTE(S)                            04650000
A00012   EQU   00000000            68 BYTE(S) ON WORD                   04660000
A00013   EQU   A00012+00000000     62 BYTE(S)                           04670000
OBRDEVCL EQU   A00012+00000062     1 BYTE(S)                            04680000
OBRDEVTP EQU   A00012+00000063     1 BYTE(S)                            04690000
A00014   EQU   A00012+00000064     2 BYTE(S)                            04700000
OBRDEVAD EQU   A00012+00000066     2 BYTE(S)                            04710000
A00015   EQU   00000000            15 BYTE(S)                           04720000
A00016   EQU   A00015+00000000     8 BYTE(S)                            04730000
RECKEY   EQU   A00015+00000008     1 BYTE(S)                            04740000
A00017   EQU   A00015+00000009     5 BYTE(S)                            04750000
RECOUNT  EQU   A00015+00000014     1 BYTE(S)                            04760000
VALIDREC EQU   @DATA+00000087      1 BYTE(S)                            04770000
SAVEADEX EQU   @DATA+00000088      FULLWORD POINTER                     04780000
         ORG   @DATA+00000092                                           04790000
PATCH    EQU   *                   80 BYTE(S) ON HWORD                  04800000
         DC    C' '                                                     04810000
         DC    00079C' '                                                04820000
         ORG   @DATA                                                    04830000
         DS    00000172C                                                04840000
@TEMPS   DS    0F                                                       04850000
COMAREA  IFDCOM                                                         04860000
A00018   EQU   CESWT6+00000000     1 BYTE(S)                            04870000
A00019   EQU   A00018+00000000     2 BIT(S)                             04880000
EOJBIT   EQU   A00018+00000000     1 BIT(S)                             04890000
A00020   EQU   A00018+00000000     5 BIT(S)                             04900000
@DATEND  EQU   *                                                        04910000
RTRNSET  EQU   @EL01                                                    04920000
@9F0     EQU   REAPROC                                                  04930000
         END    ,(C'PL/S',1400,76174)                                   04940000
