DataMuseum.dk

Presents historical artifacts from the history of:

IBM System/3

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about IBM System/3

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦d1ec48a22⟧ s3xseg

    Length: 32004 (0x7d04)
    Types: s3xseg
    Names: »S$E070«

Derivation

└─⟦4498c64f7⟧ Bits:30009191 5704-sc2.V05.ccp
    └─⟦95ee7795b⟧ 
        └─⟦this⟧ »S$E070« 

TextSegment

       MACRO                                                            00010000                
.********************************************************************** 00020000                
.*                                                                    * 00030000                
.* NAME: $E070                                                        * 00040000                
.*                                                                    * 00050000                
.* MODIFICATION LEVEL: MODEL 15D VERSION 4, MOD LEVEL 0               * 00060000                
.*                                                                    * 00070000                
.* FUNCTION:                                                          * 00080000                
.*                                                                    * 00090000                
.*   . CCP GENERATION SECOND PASS MACRO-INSTRUCTION -- GENERATE  THE  * 00100000                
.*     COMMUNICATION MANAGEMENT TASK.  (01 0F 12).                    * 00110000                
.*                                                                    * 00120000                
.* INPUT OPERANDS: NONE.                                              * 00130000                
.*                                                                    * 00140000                
.* SYSTEM GLOBALS:                                                    * 00150000                
.*                                                                    * 00160000                
.*   &ONE - MIXTURE OF MLTA AND BSCA.  1=ONLY ONE / 2=BOTH.           * 00170000                
.*   &NDME- DATA MODE ESCAPE.          1=NOT SUPPORTED / 0=SUPPORTED. * 00180000                
.*   &MIN - MINIMUN SYSTEM.            1=MINIMUN / 0=NOT MINIMUN.     * 00190000                
.*   &NPBY- BUSY PRINTER SUPPORT.      1=NOT SUPPORTED / 0=SUPPORTED. * 00195000                
.* BSCA:                                                              * 00200000                
.*   &NOB - BSCA SUPPORTED.            1=NOT SUPPORTED / 0=SUPPORTED. * 00210000                
.*   &BSC - NUMBER OF BSCA LINES.      NUMBER OF BSCA LINES (DTFS).   * 00220000                
.*   &NPP - BSCA PT-TO-PT SUPPORTED.   1=NOT SUPPORTED / 0=SUPPORTED. * 00230000                
.*   &NMP - BSCA MULTI-PT TRIBUTARY.   1=NOT SUPPORTED / 0=SUPPORTED. * 00240000                
.*   &NSWL- BSCA SWITCHED SUPPORTED.   1=NOT SUPPORTED / 0=SUPPORTED. * 00250000                
.*   &NCS - BSCA CONTROL STATION.      1=NOT SUPPORTED / 0=SUPPORTED. * 00260000                
.*   &NITB- BSCA ITB SUPPORTED.        1=NOT SUPPORTED / 0=SUPPORTED. * 00270000                
.*   &NTSP- BSCA TRANSPARENCY.         1=NOT SUPPORTED / 0=SUPPORTED. * 00280000                
.*   &NAS - BSCA ASCII SUPPORT.        1=NOT SUPPORTED / 0=SUPPORTED. * 00290000                
.*   &N32 - BSCA 3270 SUPPORT.         1=NOT SUPPORTED / 0=SUPPORTED. * 00300000                
.*   &NRUF- 3270 PGM REQUEST UNDER FMT.1=NOT SUPPORTED / 0=SUPPORTED. * 00305000                
.*   &NDF - BSCA 3270 DFF SUPPORT.     1=NOT SUPPORTED / 0=SUPPORTED. * 00310000                
.*   &N37 - BSCA 3735 SUPPORT.         1=NOT SUPPORTED / 0=SUPPORTED. * 00320000                
.*   &N41 - BSCA 3741 SUPPORT.         1=NOT SUPPORTED / 0=SUPPORTED. * 00325000                
.*   &NCPU- BSCA CPU SUPPORT.          1=NOT SUPPORTED / 0=SUPPORTED. * 00330000                
.*   &NMSG- BSCA GET MSG SUPPORT.      1=NOT SUPPORTED / 0=SUPPORTED. * 00340000                
.*   &NINT- BSCA INTERVAL POLLING.     1=NOT SUPPORTED / 0=SUPPORTED. * 00350000                
.*   &NBDA- DISPLAY ADAPTER SUPPORT.   1=NOT SUPPORTED / 0=SUPPORTED. * 00355000                
.*   &NAPOR - BSCA PORTLINE SUPPORT.   1=NOT SUPPORTED / 0=SUPPORTED. * 00356000                
.*   &NTTSK - TASK-TO-TASK SUPPORT.    1=NOT SUPPORTED / 0=SUPPORTED. * 00357000                
.* MLTA:                                                              * 00360000                
.*   &NOM - MLTA SUPPORTED.            1=NOT SUPPORTED / 0=SUPPORTED. * 00370000                
.*   &MLA - NUMBER OF MLTA LINES.      NUMBER OF MLTA LINES (DTFS).   * 00380000                
.*   &NSW - MLTA SWITCHED LINES.       1=NOT SUPPORTED / 0=SUPPORTED. * 00390000                
.*   &NSCTL-MLTA STATION CONTROL.      1=NOT SUPPORTED / 0=SUPPORTED. * 00400000                
.*   &NBFR -MLTA BUFFERED RECEIVE.     1=NOT SUPPORTED / 0=SUPPORTED. * 00410000                
.*   &N1050-MLTA 1050 SUPPORT.         1=NOT SUPPORTED / 0=SUPPORTED. * 00420000                
.*   &N2741-MLTA 2741 SUPPORT.         1=NOT SUPPORTED / 0=SUPPORTED. * 00430000                
.*   &NMOVE-MLTA MOVE ONLY SUPPORT.    1=NOT SUPPORTED / 0=SUPPORTED. * 00440000                
.*                                                                    * 00450000                
.* MODULE LOCALS:                                                     * 00460000                
.*                                                                    * 00470000                
.*   &MIX - WORK AREA TO DETERMINE THINGS IN COMBINATION.             * 00480000                
.*   &YK  - WORK AREA TO DETERMINE IF BSCC ONLY GEN                   * 00490000                
.*   &C#NL- NUMBER OF BSCC LINES, VALUE OF 1 OR 2                     * 00493000                
.*   &CSIO- SIOC SUPPORT.              1=NOT SUPPORTED / 0=SUPPORTED. * 00496000                
.*   &CMMP- MULTIPORT SUPPORT FOR BSCA.1=NOT SUPPORTED / 0=SUPPORTED. * 00497000                
.*   &CMTT- TASK-TO-TASK SUPPORT       1=NOT SUPPORTED / 0=SUPPORTED. * 00498000                
.********************************************************************** 00500000                
       $E070                                                            00510000                
       GBLB  &ONE,&NOB,&NOM,&NDF,&NCS,&NSWL,&NINT,&N32,&CSIO,&NPBY      00530000                
       GBLB  &NAPOR,&NTTSK                                              00550000                
       GBLA  &BSC,&MLA,&YK,&C#NL                                        00570000                
       LCLA  &MIX                                                       00590000                
       TEXT                                                             00600000                
* R-04,C-00 CHANGE LEVEL                                                00610000                
CMBEG  EQU   *                                                          00613000                
       ENTRY CMBEG                                                      00616000                
CMEYE  DC    CL3'$CM'                  EYE CATCHER                      00620000                
       DC    CL2'05'                   MOD LEVEL                        00630000                
&MIX   SETA  &NOB+&NOM                                                  00640000                
&YK    SETA  &NOB+&NOM                                                  00645000                
       AIF   (&MIX EQ '0').START                                        00650000                
&ONE   SETB  1                                                          00660000                
.START ANOP                                                             00670000                
       SPACE 2                                                          00680000                
       ENTRY $CC4CM                    ENTRY POINT FOR CM               00690000                
       ENTRY $CC4FR                    COMMON PL/RECA FREEMAIN ENTRY    00700000                
*                                      * POINT FOR TRANSIENT AND CM.    00710000                
       SPACE 1                                                          00720000                
       AIF   (&YK EQ '2').YK002                                         00725000                
*  ENTRY POINTS IN CCP $$BMCH USED FOR INITIALIZATION BY MLTA AND MLMP  00730000                
       SPACE 1                                                          00740000                
       ENTRY $$BMCH                    ENTRY FOR CCP VERSION OF COMMON  00750000                
*                                      * MLMP/MLTA CHECK ROUTINE.       00760000                
       ENTRY CHBMHL                    LOCATION FOR MLMP/MLTA STORE     00770000                
*                                      * BRACKET HALT (NOT ISSUED)      00780000                
       AIF   (&NOM).M0001                                               00790000                
       ENTRY CHBMML                    ENTRY WHERE MLTA STORES ADDR   M 00800000                
*                                      * OF MLTA CHECK ROUTINE        M 00810000                
       ENTRY CHBMPC                    ENTRY WHERE MLTA STORES ADDR   M 00820000                
*                                      * FOR PCI INTERRUPTS (NOT      M 00830000                
*                                      * EXITED TO UNDER CCP)         M 00840000                
.M0001 ANOP                                                             00850000                
       AIF   (&NOB).C0001                                               00860000                
       ENTRY CHBMBS                    ENTRY WHERE MLMP STORES ADDR   B 00870000                
       ENTRY SAVCAT                    SAVE AREA FOR CAR AND TAR        00875000                
*                                      * OF BSCA WAIT ROUTINE.        B 00880000                
       SPACE 1                                                          00890000                
       AIF   (&NSWL).C0000                                              00900000                
       ENTRY CMCLOZ                    ADDR WHERE STARTUP PLUGS MLMP.SB 00910000                
*                                      *  CLOSE AND OPEN C/S ADDRS.  SB 00920000                
.C0000 ANOP                                                             00930000                
       SPACE                                                            00940000                
*  BSCA ONLY EXTRNS:                                                    00950000                
       EXTRN $$BSMS                    SIO ENTRY FOR MLMP             B 00960000                
       EXTRN $CC4BT(3)                 EXTRN SO ENTRY TO TRACE WILL   B 00970000                
       EXTRN $CC4M1(3)                 EXTRN FOR MINI-MLMP              00975000                
       EXTRN $CC4M2(3)                 EXTRN FOR PRIVILEGED MINI-MLMP B 00977000                
*                                      * NOT CAUSE LKED HALT          B 00980000                
.C0001 ANOP                                                             00990000                
       AIF   (&NOM).C0002                                               01000000                
       SPACE 1                                                          01010000                
*  MLTA ONLY EXTRNS:                                                  M 01020000                
       EXTRN MLTIO1                    MLTA ENTRY POINT               M 01030000                
.C0002 ANOP                                                             01040000                
.YK002 ANOP                                                             01045000                
       TITLE '$E070/$CC4CM/CONTROL LOGIC '                              01050000                
*********************************************************************** 01060000                
*      C O M M U N I C A T I O N S   M A N A G E R                    * 01070000                
*********************************************************************** 01080000                
       SPACE 2                                                          01090000                
*********************************************************************** 01100000                
*                                                                     * 01110000                
*  MODULE  - $CC4CM                                                   * 01120000                
*                                                                     * 01130000                
*  FUNCTION - SCHEDULE AND CONTROL ALL TELEPROCESSING COMMUNICATION   * 01140000                
*         TO AND FROM MLTA AND BSCA TERMINALS ATTACHED TO CCP.        * 01150000                
*         SCHEDULE AND CONTROL ALL I/O TO THE SYSTEM CONSOLE.         * 01160000                
*                                                                     * 01170000                
*  ENTRY POINTS :                                                     * 01180000                
*         $CC4CM - MAIN ENTRY POINT.                                  * 01190000                
*                  DISPATCHED BY STARTUP AT THIS POINT.  AFTER INITIAL* 01200000                
*                  DISPATCH $CC4CM WILL WAIT FOR MORE WORK JUST       * 01210000                
*                  FOLLOWING THIS POINT AND WILL RECEIVE CONTROL      * 01220000                
*                  AT THIS WAIT POINT AFTER OP END OR NEW REQUEST     * 01230000                
*                  CAUSES $CMECB TO BE POSTED.                        * 01240000                
*                                                                     * 01250000                
*         $CC4FR - FREEMAIN PL AND HOLD BUFFER ENTRY POINT.           * 01260000                
*                  BRANCHED TO BY $CC4CM AND CM TRANSIENTS.           * 01270000                
*                                                                     * 01280000                
*  GENERATION - THIS MODULE IS ASSEMBLED AT CCP GENERATION.           * 01290000                
*         $CC4CM IS CREATED BY MACROS WHICH ARE NAMED $E0NN WHERE     * 01300000                
*         NN IS A NUMERIC IDENTIFIER OF THE MACRO.                    * 01310000                
*                                                                     * 01320000                
*         CODE IN EACH MACRO IS EITHER INCLUDED OR EXCLUDED BASED     * 01330000                
*         ON THE GLOBALS SET BY THE FIRST PASS OF GENERATION. THE     * 01340000                
*         CODE IS IDENTIFIED IN COLUMNS 69-71 BY ALPHABETICS WHICH    * 01350000                
*         IDENTIFIES THE GENERATION OPTION THAT CAUSES ITS INCLUSION  * 01360000                
*                                                                     * 01370000                
*      THE ALPHABETIC IDENTIFIERS ARE AS FOLLOWS:                     * 01380000                
*                                                                     * 01390000                
*         COLUMN 71 :                                                 * 01400000                
*           B - BSCA                                                  * 01410000                
*           M - MLTA                                                  * 01420000                
*           2 - TEST FOR MLTA OR BSCA                                 * 01430000                
*                                                                     * 01440000                
*         COLUMN 68-70 MAY INCLUDE IN ANY ORDER OR COMBINATION:       * 01450000                
*           C - BSCA OR MLTA CONTROL STATION OR STATION CONTROL       * 01470000                
*           D - BSCA OR MLTA DATA MODE ESCAPE                         * 01480000                
*           L - CODE NECESSARY FOR COMBINATION OF LINE TYPES          * 01500000                
*           MIN - CODE PRESENT ON MINRES SYSTEM ONLY.                 * 01505000                
*           R - RESIDENT CODE MADE TRANSIENT FOR  MINRES-YES.         * 01510000                
*           S - BSCA OR MLTA SWITCHED LINE SUPPORT.                   * 01520000                
*           Y - CODE TO HANDLE MULTIPLE DTFS. EXCLUDED IN 1 LINE SYS. * 01530000                
*           / - OR   (FOR COMBINATION OF 2 OTHER IDENTIFIERS          * 01535000                
*                                                                     * 01540000                
*           A - BSCA ASCII SUPPORT                                    * 01590000                
*           F - BSCA 3270 DFF SUPPORT                                 * 01610000                
*           G - BSCA GET MESSAGE SUPPORT                              * 01640000                
*           I - BSCA ITB (INTERMEDIATE TEXT BLOCK) SUPPORT            * 01645000                
*           N - BSCA INTERVAL POLLING                                 * 01650000                
*           P - BSCA POINT TO POINT SUPPORT                           * 01651000                
*           T - BSCA MULTI POINT TRIBUTARY SUPPORT                    * 01652000                
*           U - BSCA CPU TO CPU SUPPORT                               * 01653000                
*           W - BSCA 3270 PROGRAM REQUEST UNDER FORMAT (PRUF)         * 01654000                
*           X - BSCA TRANSPARENCY SUPPORT                             * 01655000                
*           0 - BSCA 3270 SUPPORT                                     * 01656000                
*           5 - BSCA 3735 SUPPORT                                     * 01657000                
*           7 - BSCA 3741 SUPPORT                                     * 01658000                
*                                                                     * 01660000                
*           B - MLTA BUFFERED RECEIVE SUPPORT                         * 01670000                
*           V - MLTA MOVE SUPPORT (NO TRANSLATE)                      * 01675000                
*           1 - MLTA 1050 SUPPORT                                     * 01680000                
*           4 - MLTA 2741 SUPPORT                                     * 01690000                
*                                                                     * 01710000                
* EXTERNAL REFERENCES:                                                * 01720000                
*           $CCCOM:                                                   * 01730000                
*              FIELDS IN $CMWK                                        * 01740000                
*              @CMTCB,@CPTCB                                          * 01750000                
*              @CKLST                                                 * 01760000                
*              @LCB#1                                                 * 01770000                
*              @PRLQ                                                    01780000                
*              #CMERP                                                 * 01790000                
*              #GMS                                                   * 01800000                
*              #OPEND                                                 * 01810000                
*                                                                     * 01820000                
* CHANGE ACTIVITY - $CC4CM.                                           * 01820500                
*  RELEASE 1 :                                                        * 01821400                
*  @01/S309284/CORRECTS A -09 (WAIT TIME EXCEEDED) ERROR.             * 01822300                
*  @02/S309280/ENSURES A RVI IS SENT ON GET/RVI OPERATION.            * 01823200                
*  @03/S309527/ENSURES THE CORRECT TERMINAL IS POLLED ON CPU-TO-CPU.  * 01824100                
*  @04/       /CORRECTS DATA TRUNCATED INDICATOR SETTING.             * 01825000                
*  @05/S309470/CORRECTS TERMINALS DROPPING FROM POLL LIST.            * 01825900                
*  @06/S309822/CORRECTS CONTINUOUS -14 RETURN CODE FROM 3270X PRINTER.* 01826800                
*  @07/S309525/CANCELS A 2 SECOND TIME OUT WITH NO P.L.'S ON DA.      * 01827700                
*  @08/       /CORRECTS A LOOP IN $CC4NQ.                             * 01828600                
*  RELEASE 3 :                                                        * 01829800                
*  @09/OS0309 /SUPPORT FOR BUSY 328X PRINTERS.                        * 01829820                
*  @10/OS0330 /SUPPORT FOR LOWER CASE INPUT WITH THE PF1 KEY.         * 01829840                
*  @11/OS0311 /SUPPORT FOR AUTOMATIC ERP BYPASS.                      * 01829860                
*  @12/S311275/GIVES USER AN OPTION TO SET OFF TUBRUF AT ACCEPT INPUT.* 01829880                
*  @13/S311871/CORRECTS A -10 ON A BSCC ONLY GEN.                     * 01829900                
*  @14/S3     /CORRECTS PROCCHK IF STOP INVITE AND CLEAR KEY.         * 01829920                
*  @15/S310611/CORRECTS A SYSTEM HANG CONDITION AFTER PUT OPERATION.  * 01829940                
*  @16/OS0364 /TERMINATES THE SYSTEM IF A POLL FOR STATUS FAILS.      * 01829960                
*  @17/S312525/CORRECTS TRANSPARENCY HANDLING.                        * 01829980                
*  RELEASE 4 :                                                        * 01829985                
*  @18/OS4102 /PORTLINE AND MULTIPORT ENHANCEMENT FOR RELEASE 4.      * 01829990                
*  @19/INCR/OS4301 - TP BUFFER IMPROVEMENTS FOR RELEASE 4             * 01829995                
*  RELEASE 5                                                        @20 01829996                
*  @20/INCR/OS5107 - U-NS ERROR RECOVERY IMPROVEMENT          $E072 @20 01829997                
*  @21/APAR/S315205- LOOP IN CM                               $E092 @21 01829998                
*  @22/APAR/S315705- U-GE ON TASK TO TASK                     $E093 @22 01830000                
*  @23/APAR/S315837- U-FE ON TASK TO TASK                     $E093 @23 01831000                
*  @24/APAR/S315721- U-GE ON TASK TO TASK                     $E080 @24 01832000                
*  @25/APAR/S316069- PREVENT RED LIGHT WITH EXTRA OPEND       $E093 @25 01833000                
*  @26/APAR/S316097- SPANNING RECORDS                         $E093 @26 01834000                
*  @27/APAR/S316347- LOSE RECORD NON-DFF PRINT                $E085 @27 01835000                
*  @28/APAR/S315667- ICF CHANGES (SYSTEM/3 TO SYSTEM/34)      $E092 @30 01836000                
*  @29/APAR/S316540- DA STOPS POLLING                         $E080 @29 01837000                
*  @30/APAR/S316650- U-GE HALT                                $E092 @30 01838000                
*********************************************************************** 01839000                
       EJECT                                                            01840000                
*********************************************************************** 01850000                
*      $CC4CM ENTRY POINT                                             * 01860000                
*********************************************************************** 01870000                
       SPACE 2                                                          01880000                
$CC4CM EQU   *                         'CM' ENTRY POINT.                01890000                
       AIF   (&YK EQ '2').YK003                                         01895000                
       SBF   CMSWIT,CMSPSI+CMFMPS      RESET STOP II AND FM POST FLAGS  01900000                
       SBN   #CMSWT,#CMFMD             RESET $CC4GR TO 1ST LCB.         01910000                
       CLI   CORCNT,NOBIT              CM WAITING FOR CORE ?            01911000                
       JE    CMNWAT                    NO - EXECUTE WAIT.               01912000                
       SBF   $CMFM,SKIP                SET TO EXECUTE FREE MAIN POST.   01913000                
CMNWAT EQU   *                         * LOCAL                          01914000                
.YK003 ANOP                                                             01915000                
       LA    ECBLST,XR1                ADDRESS OF ECB WAIT LIST         01920000                
       SVC   0                         WAIT FOR WORK - RECEIVE CONTROL  01930000                
       DC    AL1(WAITRB)               * WHEN:                          01940000                
*                                      *    NEW TP REQUEST ($CC4II/IS)  01950000                
       AIF   (&NDF).D0030                                               01960000                
*                                      *                   ($CC4DF)  FB 01970000                
.D0030 ANOP                                                             01980000                
*                                      *    TP OP END      ($CC4IB/IM)  01990000                
*                                      *    FREEMAIN DONE AND           02000000                
*                                      *      REQUEST WAITING           02010000                
*                                      *      FOR SPACE.   ($CC4FM)     02020000                
*      SET OFF WAIT BITS TO PREVENT TASK FROM BEING DISPATCHED AT       02030000                
*        ANOTHER WAIT POINT BECAUSE OF A POST TO ONE OF THESE ECBS.     02040000                
       SPACE 1                                                          02050000                
       AIF   (&YK EQ '2').YK004                                         02055000                
       TBN   $CMFM,POST                IF FREEMAIN HAS OCCURRED AND     02060000                
       CLI   CORCNT,NOBIT              * CM IS WAITING FOR ONE,         02070000                
       JC    CMCKCN,FLSOEQ             NO-GO CHECK COUNT                02080000                
       SBN   CMSWIT,CMFMPS             YES- SET INTERNAL FREEMAIN BIT.  02090000                
CMCKCN EQU   *                         * LOCAL                          02110000                
       SBF   $CMFM,WAIT+POST           RESET FREEMAIN ECB WAIT/POST.    02120000                
.YK004 ANOP                                                             02125000                
       SBF   $CMECB,WAIT+POST          RESET GENERAL ECB WAIT/POST.     02130000                
       AIF   (&YK EQ '2').YK005                                         02135000                
       AIF   (&NINT).C0008                                              02140000                
       MVI   TIMIOB+7,SKIP             SET TO SKIP TIMER POSTING     NB 02150000                
.C0008 ANOP                                                             02160000                
       JNE   CMNOZ0                    IF CORE COUNT > 0 - JUMP         02162000                
       MVI   $CMFM,SKIP                SET TO SKIP FREE MAIN POST       02164000                
CMNOZ0 EQU   *                         *                                02166000                
*    BEGIN BY CHECKING FOR OP ENDS                                      02170000                
       TITLE '$E070/CMOPND/CONTROL LOGIC  -  CHECK OP ENDS '            02180000                
*********************************************************************** 02190000                
*  TITLE-- CONTROL LOGIC FOR $CC4CM.                                  * 02230000                
*                                                                     * 02240000                
*  FUNCTION--DISPATCH WORK TO SECTIONS OF RESIDENT $CC4CM.            * 02250000                
*                                                                     * 02260000                
*  OPERATION--                                                        * 02270000                
*      .   IF OPERATION HAS COMPLETED:                                * 02280000                
*            . SET UP BSCA DTF                                        * 02290000                
*            . CALL IOCS CHECK ROUTINE TO GET DATA.                   * 02300000                
*            . IF '56' RETURN CODE (NOT COMPLETE), ADJUST OP END      * 02310000                
*               COUNT AND CHECK FOR OTHER OP ENDS.                    * 02320000                
*            . IF DATA RECEIVED, EXIT TO CMBOPE (BSCA) OR CMMOPE (MLTA) 02330000                
*      .   IF NEW PUT REQUEST ON QUEUED,                              * 02340000                
*            . DEQUEUE PL.                                            * 02350000                
*            . EXIT TO CMBREQ (BSCA) OR CMMREQ (MLTA).                * 02360000                
*      .   IF REQUEST WAITING FOR GETMAIN CAN BE RETRIED:             * 02370000                
*            . IF GETMAIN FAILED AT QUEUE TIME, EXIT TO               * 02380000                
*                CMBSOX (BSCA) OR CMPNWX (MLTA).                      * 02390000                
*            . IF GETMAIN FAILED AT SCHEDULE TIME, EXIT TO            * 02400000                
*                CMBTBY (BSCA), OR CMMTBY (MLTA).                     * 02410000                
*      .   IF NEW READ REQUEST IS ON QUEUE:                           * 02420000                
*            . DEQUEUE PL.                                            * 02430000                
*            . IF ACCEPT, GO TO CMACI.                                * 02440000                
*            . EXIT TO CMBREQ (BSCA) OR CMMREQ (MLTA).                * 02450000                
*      .   IF LINE WAS IN ERP AND NOW CAN BE RESCHEDULED, DO IT.      * 02460000                
*      .   IF INTERVAL POLLING, SET INTERVAL AS NECESSARY.            * 02470000                
*                                                                     * 02480000                
*  ENTRY POINTS--                                                     * 02490000                
*         CMOPND - CHECK FOR OP ENDS.                                 * 02500000                
*         CMFRMN,CMREQ - CHECK FOR REQUESTS TO HANDLE.                * 02505000                
*                                                                     * 02510000                
*  INPUT--                                                            * 02520000                
*         #OPEND - OP END PENDING COUNT.                              * 02530000                
*         @CKLST - ADDRESS IF CCP CHECK LIST.                         * 02540000                
*         @PRLQ  - QUEUE OF NEW REQUESTS FROM $CC4II OR $CC4DF.       * 02545000                
*                                                                     * 02550000                
*  OUTPUT--                                                           * 02560000                
*         #OPEND - ADJUSTED FOR OP ENDS HANDLED.                      * 02570000                
*         CMSDTF - DTF TO BE HANDLED.                                 * 02580000                
*         CMSPL  - PL TO BE HANDLED.                                  * 02585000                
*                                                                     * 02590000                
*  EXTERNAL REFERENCES--                                              * 02600000                
*         CMDTFS  - SETUP BSCA DTFS FOR CHECK ROUTINE                 * 02610000                
*         CMBMCH  - CHECK ROUTINE                                     * 02620000                
*         CMBSKP - BSCA SKIP BIT ON/OFF ROUTINE.                      * 02630000                
*         $CC4GR - GETMAIN FAIL RECOVERY TRANSINET.                   * 02632000                
*         CMPRLS - SEARCH @PRLQ FOR NEW PL.                           * 02634000                
*         $@TMIH - START/STOP INTERVAL TIMER.                         * 02636000                
*         $TRACE - SYSTEM TRACE ROUTINE.                              * 02638000                
*                                                                     * 02640000                
*  EXIT, NORMAL--                                                     * 02650000                
*                TO CMBOPE OR CMMOPE TO HANDLE OP END                 * 02660000                
*                TO CMACI IF NEW ACCEPT REQUEST.                      * 02670000                
*                TO CMBREQ OR CMMREQ TO HANDLE NEW REQUESTS.          * 02672000                
*                TO CMBSOX OR CMPNWX IF GETMAIN RETRY AT QUEUE TIME.  * 02674000                
*                TO CMBTBY OR CMMTBY IF GETMAIN RETRY AT SCHED TIME.  * 02676000                
*                                                                     * 02680000                
*********************************************************************** 02690000                
       SPACE 5                                                          02692000                
********************************************************************    02694000                
*    CHECK FOR IOCS OP ENDS.                                       *    02696000                
********************************************************************    02698000                
       SPACE 1                                                          02700000                
CMOPND EQU   *                         TEST OP END COUNT                02710000                
       CLI   #OPEND,NOBIT              CHECK OP END COUNT FOR ZERO      02720000                
       BE    CMFRMN                    IF ZERO, BR TO FREEMAIN ANALYSIS 02730000                
       SPACE 1                                                          02740000                
       AIF   (&NOB).C0010                                               02750000                
********************************************************************  B 02760000                
*   SETUP ANY BSCA DTF WITH OP END                                 *  B 02770000                
********************************************************************  B 02780000                
       SPACE 1                                                          02790000                
CMOPNT EQU   *                         ENTRY POINT USED BY TTASK    @18 02795000                
       B     CMDTFS                    DTF SETUP FOR BSCA LINES       B 02800000                
       AIF   (&NTTSK).TT010                                             02800800                
       SPACE 1                                                          02801600                
******************************************************************* @18 02802400                
*************                                                           02803200                
*************                                                           02804000                
       TBN   PLSWIT,CMSOPE             IS THIS TASK-TO-TASK ?           02804800                
       SBF   PLSWIT,CMSOPE             TURN THE TTASK INDICATOR OFF     02805200                
       JT    CMTTSK                    YES - SET UP THE SAVE AREA       02805600                
*************                                                           02806400                
*************                                                           02807200                
******************************************************************* @18 02808000                
.TT010 ANOP                                                             02808800                
       SPACE 1                                                          02810000                
.C0010 ANOP                                                             02820000                
********************************************************************    02830000                
*    CALL CHECK ROUTINE  (CCP VERSION OF $$BMCH)                   *    02840000                
********************************************************************    02850000                
       SPACE 1                                                          02860000                
       B     CMBMCH                    CALL OP END CHECK ROUTINE        02870000                
       SPACE                                                            02880000                
       SLC   #OPEND,X$0001(1)          SUBTRACT 1 FROM OP END COUNT     02890000                
       AIF   (&ONE).H4450                                               02900000                
       TBF   CMSWIT,CMBSCK             IS IT MLTA OR BSCA               02910000                
       CLI   $BDCMP(,DTF),$BCACD       CHECK FOR NOTHING COMPLETE       02920000                
       BC    CMOPND,NONE+HI+LO+FALSE   BRANCH IF MLTA NOT COMPLETE      02930000                
.H4450 ANOP                                                             02940000                
       AIF   (&NOB).C0015                                               02950000                
       CLI   $BDCMP(,DTF),$BCCMP       '56' COMPLETION CODE ?         B 02960000                
       JNE   CMNT56                    NO-NOT 56, CHECK OTHERS.       B 02970000                
       SPACE                                                            02980000                
&MIX   SETA  (&BSC+&MLA)                                                02990000                
       AIF   (&MIX LE '1').Y0100                                        03000000                
*---------------------------------------------------------------*    YB 03010000                
*    NO OP ENDS TO HANDLE - '56' CODE FROM CHECK ROUTINE        *    YB 03020000                
*---------------------------------------------------------------*    YB 03030000                
       SPACE 1                                                          03040000                
*  SEARCH CHECKLIST FOR BSC DTF AND DECREMENT ITS OP END COUNT       YB 03050000                
       SPACE 1                                                          03060000                
       L     @CKLST,XR1                POINT TO THE CHECK LIST.      YB 03070000                
CMEXSK EQU   *                         *  LOCAL                      YB 03080000                
       TBF   CKLSTS(,XR1),CKLSKP       SKIP BIT OFF, AND             YB 03090000                
       L     CKLDTF(,XR1),DTF          POINT TO THE DTF.             YB 03100000                
       AIF   (&ONE).C0007                                               03110000                
       TBN   $BDDEV(,DTF),BSCA         * BSCA DTF, AND               Y2 03120000                
.C0007 ANOP                                                             03130000                
       JF    CMEXNX                    NO-GO EXAMINE NEXT ENTRY.     YB 03140000                
.Y0100 ANOP                                                             03150000                
       SLC   LCBOPE(1,DTF),X$0001      DECREMENT OP END BY ONE.       B 03160000                
       L     LCBPL@(,DTF),PL           POINT TO THE PARM LIST.        B 03170000                
       B     CMTRCE                    CALL TRACE TO LOG THISOP END.  B 03180000                
       DC    AL1(CCPRIB)               CCP RIB                          03190000                
       DC    AL1(TRRIB)                TRACE SUB RIB                    03200000                
       DC    AL1(TTMOPN)               TRACE OP END ID.               B 03210000                
       SPACE 1                                                          03220000                
&MIX   SETA  (&BSC+&MLA)                                                03230000                
       AIF   (&MIX LE '1').Y0250                                        03240000                
       J     CMEXOP                    GO CHECK FOR MORE OP ENDS.    YB 03250000                
       SPACE 1                                                          03260000                
CMEXNX EQU   *                         *  LOCAL                      YB 03270000                
       TBN   CKLSTS(,XR1),CKLAST       LAST ENTRY IN THE LIST ?      YB 03280000                
       LA    CKLEN(,XR1),XR1           POINT TO THE NEXT ENTRY.      YB 03290000                
       BF    CMEXSK                    NO-GO CHECK THE NEXT          YB 03300000                
.Y0250 ANOP                                                             03310000                
CMEXOP EQU   *                         *  LOCAL                       B 03320000                
       B     CMOPND                    GO CHECK FOR MORE OP ENDS.     B 03330000                
       SPACE 1                                                          03340000                
CMNT56 EQU   *                         *  LOCAL                       B 03350000                
*------------------------------------------------------------------*    03480000                
*    OP END TO HANDLE (NOT '56')  - GO TO BSCA OR MLTA OP END ROUT.*    03490000                
*------------------------------------------------------------------*    03500000                
       SPACE 1                                                          03510000                
       ST    CMSDTF,XR2                SAVE DTF ADDR                  B 03520000                
       AIF   (&ONE).C0012                                               03530000                
       TBN   $BDDEV(,DTF),BSCA         BSCA DTF ?                     2 03540000                
       BF    CMMOPE                    NO-GO TO CHECK MLTA ABORT.     2 03550000                
.C0012 ANOP                                                             03560000                
       SLC   LCBOPE(1,DTF),X$0001      DECREMENT LINE OP END COUNT.   B 03580000                
       L     LCBPL@(,DTF),PL           POINT TO THE PARM LIST.        B 03590000                
&MIX   SETA  &NCS+&NSWL+&NTTSK+&NAPOR                                   03600000                
       AIF   (&MIX EQ '4').S0150                                        03610000                
       TBN   LCBAT2(,DTF),LCBRCI       RECEIVE INITIAL ?              B 03620000                
       BF    CMBOPE                    NO-GO CHECK BSCA ABORT.        B 03630000                
&MIX   SETA  &NCS+&NSWL                                                 03633000                
       AIF   (&MIX EQ '2').S0150                                        03636000                
       MVI   CMB#SB,SBN1               SET FOR POLL SKIP BIT ON.      B 03640000                
       SPACE                                                            03650000                
       B     CMBSKP                    SKIP TO POLL SKIP BIT RTN.     B 03660000                
.S0150 ANOP                                                             03670000                
       AIF   (&NTTSK).TT030                                             03670500                
       AGO   .TT040                                                     03671000                
.TT030 ANOP                                                             03671500                
       AIF   (&NAPOR).PT010                                             03672000                
.TT040 ANOP                                                             03672500                
       SPACE 1                                                          03673000                
******************************************************************* @18 03673500                
*************                                                           03674000                
*************                                                           03674500                
CMTTSK EQU   *                                                          03675000                
       TBN   LCBAT3(,DTF),LCBPOR       IS THIS A PORTLINE OPERATION ?   03675500                
       BT    CMZSSA                    YES - SET UP THE SAVE AREA       03676000                
*************                                                           03676500                
*************                                                           03677000                
******************************************************************* @18 03677500                
       SPACE 1                                                          03678000                
.PT010 ANOP                                                             03678500                
       B     CMBOPE                    GO HANDLE BSCA OP END          B 03680000                
       AGO   .C0025                                                     03680900                
.C0015 ANOP                                                             03681800                
       SPACE 1                                                          03682700                
* XR2 NOW POINTS AT DTF FOR WHICH OP END OCCURRED                     M 03683600                
* ANALYZE THE COMPLETION CODE AND ACT ACCORDINGLY                     M 03684500                
       SPACE                                                            03685400                
       CLI   $MDCMP(,XR2),$MCRET       EVENT NOT COMPLETE             M 03686300                
       BNL   CMOPND                    RETEST OP END COUNT.           M 03687200                
       ST    CMSDTF,XR2                SAVE DTF ADDR                    03688100                
       B     CMMOPE                    GO HANDLE THE OP END.          M 03689000                
.C0025 ANOP                                                             03690000                
$CC4CM TITLE '$E070/CMFRMN/ CONTROL LOGIC  - GETMAIN FAIL RECOVERY'     03700000                
********************************************************************    03710000                
*   CHECK FOR NEW PUT REQUEST.                                     *    03720000                
********************************************************************    03730000                
       SPACE 1                                                          03770000                
CMFRMN EQU   *                         FREEMAIN ANALYSIS ROUTINE        04140000                
       CLI   @PRLQ-1,NOBIT             ANY NEW TP REQUESTS ?            04150000                
       JE    CMFRPS                    NO - CHECK FOR FREEMAINS         04160000                
       SPACE                                                            04170000                
* HAVE TP REQUEST -IF PUT REQUEST HANDLE IT BEFORE CHECKING TO SEE      04180000                
*          IF REQUESTS WAITING FOR FREEMAIN CAN BE SATISFIED NOW.       04190000                
       SPACE                                                            04200000                
       B     CMPRLS                    SEARCH PRLQ FOR PUT              04210000                
*                                      *   XR1 - PL FOUND               04220000                
*                                      *   XR2 - LEFT BYTE OF CHAIN     04230000                
*                                      *     ADDR POINTING TO PL FOUND. 04240000                
       TBN   PLOPC(,PL),OPPUT          DOES IT INVOLVE PUT              04250000                
       JT    CMRDEQ                    YES - JUMP TO HANDLE NOW         04260000                
       SPACE                                                            04261000                
********************************************************************    04262000                
*    CHECK FOR REQUEST WAITING GETMAIN THAT CAN BE RETRIED.        *    04263000                
********************************************************************    04264000                
       SPACE 1                                                          04265000                
CMFRPS EQU   *                         *  LOCAL                         04270000                
       TBN   CMSWIT,CMFMPS             HAS FREEMAIN BEEN POSTED         04280000                
       JF    CMREQ                     IF NOT, JUMP TO HANDLE TP REQST  04290000                
       SPACE                                                            04292000                
*   HAVE HAD FREEMAIN - FIND REQUEST AWAITING TPBUF SPACE.              04294000                
       SPACE                                                            04296000                
       SVC   0                         ***** TRANSIENT CALL ******      04350000                
       DC    AL1(CCPRIB)               CCP RIB                          04360000                
       DC    AL1(CC4GR)                GETMAIN RECOVERY TRANSIENT       04370000                
       SPACE 1                                                          04380000                
* --->  RETURN HERE IF NO REQUEST NEEDING GETMAIN WAS FOUND             04390000                
       J     CMFMGG                                                     04400000                
       SPACE 1                                                          04410000                
* --->  RETURN HERE IF REQUEST NEEDS TO BE RETRIED (XR1 POINTS TO IT)   04420000                
*                 XR1-PL ADDRESS, XR2-DTF TO BE RESCHEDULED.            04430000                
       ST    CMSDTF,DTF                SAVE THIS DTF @                  04440000                
       ST    CMSPL,PL                  SAVE THIS PL  @                  04450000                
       TBN   PL$OPM(,PL),OPGETQ        DOES REQ NEED GM AT QUEUE TIME   04460000                
       SBF   PL$OPM(,PL),OPGETM+OPGETQ RESET GETMAIN NEEDED BITS        04470000                
       AIF   (&ONE).E0403                                               04480000                
       JF    CMGMBF                    NO- NEED BUFFER AT SCHED TIME    04490000                
       AGO   .C0175                                                     04500000                
.E0403 ANOP                                                             04510000                
       AIF   (&NOM).M0780                                               04520000                
       BF    CMMTBY                    NO- NEED BUF AT SCHED TIME.    M 04530000                
       AGO   .C0175                                                     04540000                
.M0780 ANOP                                                             04550000                
       BF    CMBTBY                    NO- NEED BUF AT SCHED TIME.    B 04560000                
.C0175 ANOP                                                             04570000                
       SPACE 1                                                          04580000                
*   GETMAIN NEEDED AT REQUEST QUEUE TIME                                04590000                
       ST    CMNWPL,PL                 SAVE ORIG PL @ FOR NO WAIT POST  04600000                
       B     CMDEQ                     DEQUEUE PL IN TCB                04610000                
       SBN   CMSWIT,CMTPRQ             NEW REQUEST                      04620000                
       AIF   (&ONE).E0405                                               04630000                
       TBN   $BDDEV(,DTF),BSCA         IS REQUEST FOR BSCA            2 04640000                
       BT    CMBSOX                    YES - GO HANDLE                2 04650000                
.E0405 ANOP                                                             04660000                
       AIF   (&NOM).M0790                                               04670000                
       B     CMPNWX                    NO - MLTA NEW REQUEST          M 04680000                
       AGO   .C0200                                                     04690000                
.M0790 ANOP                                                             04700000                
       AIF   (&NOB).C0200                                               04710000                
       B     CMBSOX                    BSCA NEW REQUEST         ONLY  B 04720000                
.C0200 ANOP                                                             04730000                
       AIF   (&ONE).E0410                                               04740000                
       SPACE 1                                                          04750000                
*   GETMAIN NEEDED AT NEW REQUEST SCHEDULE TIME                         04760000                
CMGMBF EQU   *                         *  LOCAL                         04770000                
       TBN   $BDDEV(,DTF),BSCA         BSCA DTF ?                     2 04780000                
       BT    CMBTBY                    YES - GO SEE IF LINE IS BUSY   2 04790000                
       B     CMMTBY                    JUMP IF NOT BUSY OR NON-READ   M 04800000                
.E0410 ANOP                                                             04810000                
       SPACE 1                                                          04820000                
CMFMGG EQU   *                         *   LOCAL                        04830000                
       SBF   CMSWIT,CMFMPS             TURN OFF FREEMAIN POSTED FLAG    04840000                
       SPACE 2                                                          04850000                
********************************************************************    04860000                
*    CHECK FOR NEW READ REQUEST ON @PRLQ.                          *    04870000                
********************************************************************    04880000                
       SPACE 1                                                          04890000                
.YK005 ANOP                                                             04900000                
CMREQ  EQU   *                         HANDLE TP REQUESTS               04920000                
       CLI   @PRLQ-1,NOBIT             ANY NEW TP REQUESTS TO HANDLE ?  04930000                
       JE    CMNWRK                    NO - CHECK FOR TERMINAL IN       04940000                
*                                      ERROR RECOVERY                   04950000                
       SPACE 1                                                          04960000                
* CM HAS BEEN POSTED WITH A TP REQUEST, FIND THE NEW REQ AND HANDLE IT. 04970000                
       SPACE                                                            04980000                
       B     CMPRLS                    SEARCH PRLQ FOR PUT              04990000                
*                                      *   XR1 - PL FOUND               05000000                
*                                      *   XR2 - LEFT BYTE OF CHAIN     05010000                
*                                      *     ADDR POINTING TO PL FOUND. 05020000                
CMRDEQ EQU   *                         *  LOCAL                         05030000                
       ST    CMSPL,PL                  SAVE THE PARM LIST ADDRESS       05030500                
       ST    CMNWPL,PL                 SAVE PL TO POST FOR NO WAIT OP   05031000                
       AIF   (&NAPOR).PT030                                             05031500                
       SPACE 1                                                          05032000                
******************************************************************* @18 05032500                
*************                                                           05033000                
*************                                                           05033500                
       L     PLTUBA(,PL),XR1           XR1 --> PORT TUB                 05034000                
       TBN   TUBAT2(,XR1),TUBOWN       DOES THIS PORT OWN THE LINE ?    05034500                
       TBN   TUBPHY(,XR1),TUBAPT       AND - IS THIS A PORTLINE OP ?    05035000                
       L     CMSPL,PL                  RESTORE XR1 TO THE PARM LIST     05035500                
       TBF   PLOPM(,PL),OPSTOP         AND - IS THIS NOT STOP PARM ?    05036000                
       BT    CMOPND                    YES - THE NEW REQUEST CANNOT     05036500                
*                                      BE HANDLED YET - RETURN          05037000                
*************                                                           05037500                
*************                                                           05038000                
******************************************************************* @18 05038500                
       SPACE 1                                                          05039000                
.PT030 ANOP                                                             05039500                
       MVC   1(2,XR2),PLCHN(,PL)       DEQUEUE PL OFF PRLQ              05040000                
       SLC   PLCHN(2,PL),PLCHN(,PL)    ZERO CHAIN FIELD                 05050000                
       L     PLTUBA(,PL),XR2           POINT XR2 AT THE TUB             05090000                
       AIF   (&YK EQ '2').YK006                                         05090100                
       AIF   (&N32).C0305                                               05090200                
       AIF   (&ONE).C0303                                               05090300                
       TBN   TUBCHR(,XR2),TUBLNE       BSCA LINE  AND -               B 05090400                
.C0303 ANOP                                                             05090500                
       AIF   (&NOB).C0305                                               05091000                
       TBN   PLOPC(,PL),OPGET          INVITE/GET OP ?                B 05092000                
*                                      -START-----------------------@14 05092200                
       TBF   PLOPM(,PL),OPSTOP         AND NOT STOP?                  B 05092400                
*                                      --END------------------------@14 05092600                
       JF    CMRSCL                    NO - CONTINUE                  B 05093000                
       SPACE 1                                                          05094000                
*  SET OFF THE CLEAR INDICATOR IN THE TUB FOR ANY GET TYPE OP         B 05095000                
*  THAT IS NOT A STOP INVITE.                                           05095500                
       SPACE 1                                                          05096000                
       SBF   TUBSCS(,XR2),TUBCLR       SET OFF CLEAR INDICATOR        B 05097000                
       AIF   (&NPBY).NBY01             BUSY PRINTER SUPPORTED?          05097040                
*            --------------------------START------------------------@09 05097080                
       SPACE 1                                                          05097120                
* SET POLL LOOP COUNT TO PROPER VALUE FOR BUSY PRINTER STATUS OPS.      05097160                
       SPACE 1                                                          05097200                
       TBN   TUBAT4(,XR2),TUBBSY       IS THIS A PRINTER TUB?           05097240                
       JF    CMNDA                     NO - JUMP                        05097280                
       L     TUBDTF(,XR2),DTF          XR2 --> DTF.                     05097320                
       TBN   $BDDEV(,DTF),BSCA         THIS BSCA DTF?                   05097360                
       JF    CMNDA                     NO - LEAVE COUNT ALONE.          05097400                
       SBN   LCBAT3(,DTF),LCBBYP       INDICATE POLLING BUSY PRINTER.   05097440                
       CLI   $BDCNT(,DTF),ALLBIT       LOOP COUNT = CONTINUOUS?         05097480                
       JNE   CMNDA                     NO - LEAVE THIS COUNT.           05097560                
       MVC   $BDCNT-1(1,DTF),$BDCNT(,DTF)  SAVE LOOP COUNT.             05097580                
       MVI   $BDCNT(,DTF),X'02'        ELSE -- SET LOOP COUNT = 2.      05097600                
       L     $BDWKA(,DTF),XR2          XR2 --> WORKAREA.                05097640                
       TBN   $BWKMC(,XR2),$BDAON       DA RUNNING ?                     05097680                
       JF    CMNDA                     NO LEAVE $BDCNT = 2.             05097720                
       L     WKDTFD(,XR2),DTF          XR2 --> DTF.                     05097760                
       MVI   $BDCNT(,DTF),X'FF'        ELSE - SET CONTINUOUS POLL.      05097800                
CMNDA  EQU   *                         * LOCAL                          05097840                
       L     PLTUBA(,PL),XR2           AND FIND THE TUB AGAIN.          05097880                
*            --------------------------END--------------------------@09 05097920                
.NBY01 ANOP                            *                                05097960                
CMRSCL EQU   *                         *                              B 05098000                
.C0305 ANOP                                                             05099000                
       TBF   TUBAT1(,XR2),TUBKNM       THIS A CONSOLE TUB OR            05099300                
       AIF   (&CSIO EQ '0').YKA10                                       05099330                
       AIF   (&C#NL EQ '0').YKA05                                       05099370                
.YKA10 ANOP                                                             05099400                
       TBF   TUBAT4(,XR2),TUBYUK       A BSCC TUB OR                    05099440                
.YKA05 ANOP                                                             05099510                
       TBF   TUBAT4(,XR2),TUBCHN       * A DUMMY TASKCHAIN TUB ?        05099600                
       L     TUBDTF(,XR2),DTF          SAVE DTF ADDRESS                 05100000                
       ST    CMSDTF,DTF                *  FOR THIS REQUEST.             05110000                
       JF    CMRNDQ                    YES-DON'T DECREMENT REQ COUNT    05115000                
       SPACE 1                                                          05120000                
       SLC   LCBNW#(,DTF),X$0001       DECREMENT NEW REQ COUNT FOR LINE 05130000                
       SPACE 1                                                          05140000                
.YK006 ANOP                                                             05145000                
*---------------------------------------------------------------------* 05150000                
*    SET INTERNAL OP CODE   AND   ROUTE NEW REQUEST.                  * 05160000                
*---------------------------------------------------------------------* 05170000                
       SPACE 1                                                          05180000                
CMRNDQ EQU   *                         * LOCAL                          05185000                
       SBF   PL$OPM(,PL),ALLBIT        SET ALL OP MOD BITS OFF          05190000                
       MNN   PL$OPM(,PL),PLOPC(,PL)    MOVE LAST 4 BITS OF OP CODE      05200000                
       SPACE 1                                                          05210000                
       CLI   PLOPC(,PL),OPACI          IS OP IS ACCEPT INPUT ?          05220000                
       TBF   PLOPM(,PL),OPOLT          AND NOT OLT ?                    05230000                
       BC    CMACI,TRUAEQ              YES - GO HANDLE.                 05240000                
       AIF   (&YK EQ '2').YK007                                         05245000                
       SPACE 1                                                          05250000                
       SBN   CMSWIT,CMTPRQ             SET SWITCH TO INDICATE TP        05260000                
*                                      REQUEST IS NOW BEING HANDLED     05270000                
       AIF   (&NTTSK).TT020                                             05270400                
       SPACE 1                                                          05270800                
******************************************************************* @18 05271200                
*************                                                           05271600                
*************                                                           05272000                
       CLI   $BDDEV(,DTF),X'60'        IS THIS A TTASK OPERATION ?      05272400                
       JNE   CMRNTS                    NO - CONTINUE                    05272800                
       TBN   PLOPM(,PL),OPSTOP         IS THIS A STOP INVITE ?          05273200                
       BT    CMZNWR                    YES - GO DIRECTLY TO NEW REQUEST 05273600                
       TBN   PLOPC(,PL),OPPUT          IS THIS AN OUTPUT OPERATION ?    05274000                
       JF    CMTT01                    NO - DO NOT MAKE IT A NO-WAIT    05274400                
       SBN   PL$OPM(,PL),OPNOW         MAKE THIS A NO-WAIT OPERATION    05274800                
CMTT01 EQU   *                                                          05275200                
       B     CMQIT                     GO TO QUEUE THE TTASK DATA       05275600                
CMRNTS EQU   *                                                          05276000                
*************                                                           05276400                
*************                                                           05276800                
******************************************************************* @18 05277200                
       SPACE 1                                                          05277600                
.TT020 ANOP                                                             05278000                
       AIF   (&NOB).C0310                                               05280000                
       AIF   (&ONE).C0300                                               05290000                
       TBN   $BDDEV(,DTF),BSCA         BSCA LINE ?                    2 05300000                
       BF    CMMREQ                    NO-GO PROCESS MLTA REQUEST     2 05310000                
.C0300 ANOP                                                             05320000                
       B     CMBREQ                    PROCESS THE BSCA REQUEST. ONLY B 05330000                
       AGO   .C0320                                                     05340000                
.C0310 ANOP                                                             05350000                
       B     CMMREQ                    PROCESS THE MLTA REQUEST. ONLY M 05360000                
.C0320 ANOP                                                             05370000                
       EJECT                                                            05380000                
*******************************************************************     05382000                
*    RESCHEDULE DTF THAT WAS IN ERP.                              *     05384000                
*******************************************************************     05386000                
       SPACE 1                                                          05388000                
.YK007 ANOP                                                             05389000                
CMNWRK EQU   *                         *  LOCAL                         05390000                
       AIF   (&YK EQ '2').YK008                                         05400000                
       CLI   #CMERP-1,NOBIT            IS THERE A DTF THAT WAS IN ERP   05410000                
*                                      *  TO RESCHEDULE ?               05420000                
       JE    CMWTST                    NO- CHECK FOR TIMER RESCHED.     05430000                
       L     #CMERP,DTF                XR2--> ERP DTF ADDRESS           05460000                
       MVI   #CMERP-1,NOBIT            CLEAR ERP DTF ADDRESS            05490000                
       ST    CMSDTF,DTF                SAVE DTF ADDRESS                 05510000                
       AIF   (&NOB).C0440                                               05520000                
       AIF   (&ONE).C0600                                               05530000                
       TBN   $BDDEV(,DTF),BSCA         MLTA DTF                       2 05540000                
       BF    CMMTBY                    YES - GO CHECK FOR MLTA BUSY   2 05550000                
.C0600 ANOP                                                             05560000                
       B     CMBTBY                    GO TEST LINE FOR BUSY          B 05570000                
       AGO   .C0480                                                     05580000                
.C0440 ANOP                                                             05590000                
       B     CMMTBY                    GO SEE IF MLTA LINE BUSY. ONLY M 05600000                
.C0480 ANOP                                                             05610000                
       SPACE 1                                                          05620000                
********************************************************************    05630000                
*  NO WORK                                                         *    05640000                
********************************************************************    05650000                
       SPACE 1                                                          05660000                
CMWTST EQU   *                         *   LOCAL                        05670000                
       SPACE 1                                                          05690000                
*   RESTART POLLING IF NECESSARY                                     NB 05700000                
       SPACE 1                                                          05710000                
       AIF   (&C#NL EQ '0').YK011                                       05712000                
       CLI   @LCB#1-1,NOBIT            ANY BSCA OR MLTA LCB'S ?         05714000                
       JE    CMWAIT                    NO - JUMP                        05716000                
.YK011 ANOP                                                             05718000                
       L     @LCB#1,DTF                XR2-->FIRST LCB               NB 05720000                
CMWTS1 EQU   *                         *                             NB 05730000                
       TBN   LCBATR(,DTF),LCBTIM       RESCHEDULE NEEDED?               05740000                
       AIF   (&ONE).C0483                                               05743000                
       JF    CMWOTR                    NO-CONTINUE                      05746000                
       TBN   $BDDEV(,XR2),BSCA         BSC DTF AND -                2NB 05750000                
.C0483 AIF   (&NOB).C0486                                               05750700                
       TBF   LCBAT2(,DTF),LCBACT       LINE ACTIVE ?                    05751400                
       JT    CMTMRS                    YES-GO RESCHEDULE THIS LINE      05752100                
.C0486 ANOP                                                             05752800                
       AIF   (&ONE).C0489                                               05753500                
       TBF   $MDDEV(,DTF),BSCA         MLTA DEVICE?                     05754200                
.C0489 ANOP                                                             05754900                
       AIF   (&NOM).C0492                                               05755600                
       JT    CMTMRS                    YES-GO RESCHEDULE                05756300                
.C0492 ANOP                                                             05757000                
CMWOTR EQU   *                         *                                05757700                
       SPACE 1                                                          05800000                
&MIX   SETA  (&BSC+&MLA)                                                05810000                
       AIF   (&MIX LE '1').Y0800                                        05820000                
       CLI   LCBCHN-1(,XR2),NOBIT      ANY MORE DTF'S               YNB 05830000                
       JE    CMWAIT                    NO-GO WAIT                   YNB 05840000                
       SPACE 1                                                          05850000                
       L     LCBCHN(,XR2),XR2          XR2--->NEXT DTF              YNB 05860000                
       B     CMWTS1                    GO CHECK AGAIN               YNB 05870000                
       AGO   .Y0810                                                     05880000                
.Y0800 ANOP                                                             05890000                
       J     CMWAIT                    GO WAIT                       NB 05900000                
.Y0810 ANOP                                                             05910000                
       SPACE 1                                                          05920000                
CMTMRS EQU   *                         *                             NB 05930000                
       ST    CMSDTF,XR2                SAVE DTF ADDRESS FOR CM          05940000                
       AIF   (&ONE).Y0820                                               05940200                
       TBF   $MDDEV(,XR2),BSCA         MLTA DTF?                      2 05940400                
       BT    CMMSCH                    YES-GO RESCHEDULE MLTA         2 05940600                
.Y0820 ANOP                                                             05940800                
       AIF   (&NINT).Y0830                                              05941000                
       SBN   TIMOPE,POL1MN             INDICATE POLL 1 MINUTE        NB 05941100                
       SBN   $FLGC,#NTRAC              INDICATE NO TRACE             NB 05941200                
* PUT TWO SECONDS IN TIMER IOB BEFORE RESCHEDULE(RESCHEDULE WILL     NB 05941400                
*             ACTUALLY START THE TIMER RUNNIG)                       NB 05941600                
       SPACE 1                                                          05941800                
       LA    TIMIOB,XR2                XR2-->TIMER IOB               NB 05942000                
       MVC   TITIME(4,XR2),PLTIME      SET TIME INTERVAL AS SPEC'ED  NB 05942200                
.Y0830 ANOP                                                             05942400                
       AIF   (&NOB).Y0840                                               05942600                
       B     CMBSCH                    GO RESCHEDULE BSCA LINE      2/B 05942800                
       AGO   .Y0850                                                     05943000                
.Y0840 ANOP                                                             05943200                
       B     CMMSCH                    GO RESCHEDULE MLTA           2/M 05943400                
.Y0850 ANOP                                                             05943600                
CMWAIT EQU   *                         *                                05943800                
       AIF   (&NINT).Y0860                                              05944000                
       MVI   TIMIOB+7,NOBIT            SET TO WAIT ON TIMER ALSO     NB 05944200                
.Y0860 ANOP                                                             05944400                
.YK008 ANOP                                                             05944600                
       B     $CC4CM                                                     05944800                
       MEND                                                             06070000