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

⟦d1bde11c5⟧ s3xseg

    Length: 29972 (0x7514)
    Types: s3xseg
    Names: »S$E080«

Derivation

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

TextSegment

       MACRO                                                            00010000                
.********************************************************************** 00020000                
.* NAME: $E080                                                        * 00030000                
.********************************************************************** 00040000                
       $E080                                                            00050000                
       GBLB  &ONE,&NOB,&NOM,&MIN,&NDME,&NMSG,&N37,&NAPOR,&NTTSK         00060000                
       GBLB  &NPP,&NMP,&NSWL,&NCS,&NITB,&NTSP,&N32,&NAS,&NDF,&NCPU      00070000                
       LCLA  &MIX                                                       00090000                
       TEXT                                                             00100000                
* R-02,C-00 CHANGE LEVEL                                                00110000                
       AIF   (&NOB).C0470                                               00120000                
       TITLE '$E080/CMBREQ--NEW BSCA TP REQUEST HANDLING '              00130000                
*********************************************************************** 00140000                
*                                                                     * 00150000                
*  NAME--CMBREQ                                                       * 00160000                
*                                                                     * 00170000                
*  TITLE--ACCEPT NEW BSCA TP REQUEST                                  * 00180000                
*                                                                     * 00190000                
*  FUNCTION--ACCEPT NEW TP PARAMETER LIST FOR BSCA TERMINAL.          * 00200000                
*            PERFORM THE FUNCTION REQUESTED IF IT CAN BE HANDLED      * 00210000                
*            IMMEDIATELY, OTHERWISE, PLACE THE PARAMETER INTO THE     * 00220000                
*            LCB LINE QUEUE OF WORK TO BE DONE.                       * 00230000                
*                                                                     * 00240000                
*  OPERATION--                                                        * 00250000                
*            . IF THIS IS A DISCONNECT REQUEST, THEN INSURE THAT THE  * 00260000                
*              LINE IS NOT CONNECTED TO THE SPECIFIEC TERMINAL.  IF   * 00270000                
*              NO INVITE REQUEST IS INVOLVED, THEN POST TP COMPLETED  * 00280000                
*              TO THE SYSTEM.  IF AN INVITE IS INDICATED THEN TREAT   * 00290000                
*              LIKE AN INVITE ONLY REQUEST.                           * 00300000                
*                                                                     * 00310000                
*            . IF A PUT OPERATION TO A TERMINAL IN CCP ERP, IGNORE    * 00320000                
*              THE PUT OPERATION.  POST THE USER TP COMPLETE IF NO    * 00330000                
*              INPUT OPERATION INDICATED.  IF A PUT-THEN-GET TREAT    * 00340000                
*              LIKE A GET/INVITE ONLY OPERATION.                      * 00350000                
*                                                                     * 00360000                
*            . IF A STOP INVITE OR PURGE I/O CALL $CC4BP TO HANDLE.   * 00410000                
*              ON RETURN FINISH SCHEDULING. IF THE                    * 00420000                
*              BSCA TRANSIENT INDICATES AN ABORT OF THE LINE IS       * 00430000                
*              REQUIRED, SET UP THE ABORT OPERATION.                  * 00440000                
*                                                                     * 00450000                
*            . IF A REGULAR TP DATA OPERATION TO A BSCA LINE,         * 00460000                
*              CHECK TO INSURE THAT IT DOES NOT CONFLICT WITH WHAT    * 00470000                
*              IS CURRENTLY BEING PERFORMED ON THE LINE.              * 00480000                
*                                                                     * 00490000                
*            . IF PUT-NO-WAIT AND SPACE IS AVAILABLE FOR PARM LIST    * 00550000                
*              AND DATA, MOVE THE PARAMETER LIST AND DATA TO A HOLD   * 00560000                
*              BUFFER AND USE THE HOLD BUFFER FOR ANY FURTHER         * 00570000                
*              REFERENCE TO THIS OPERATION.  OTHERWISE, TREAT THE     * 00580000                
*              REQUEST LIKE A PUT-WAIT OPERATION.  NOTE: A PUT-NO-WAIT* 00590000                
*              MESSAGE TO A BSCA SWITCHED LINE IS ALSO TREATED LIKE A * 00600000                
*              PUT-WAIT.                                              * 00610000                
*                                                                     * 00620000                
*            . IF A TP REQUEST THAT REQUIRES DATA TRANSFER, THEN QUEUE* 00630000                
*              THE REQUEST ONTO THE LINE QUEUE FOR THE APPROPRIATE    * 00640000                
*              LCB.                                                   * 00650000                
*                                                                     * 00660000                
*            . AFTER QUEUEING UP A NEW TP REQUEST, CHECK THE STATUS   * 00670000                
*              OF LINE TO:                                            * 00680000                
*              - INCLUDE A NEW GET/INVITE IF POLLING IS ALREADY       * 00690000                
*                GOING ON.                                            * 00700000                
*              - STOP A POLLING SEQUENCE IF A PUT REQUEST WAS         * 00710000                
*                JUST RECEIVED.                                       * 00720000                
*              - CONTINUE OPERATION IF THE REQUEST JUST RECEIVED IS   * 00730000                
*                THE CONTINUATION OF A PREVIOUSLY STARTED BSCA LINE   * 00740000                
*                OPERATION.                                           * 00750000                
*                                                                     * 00760000                
*            . EXIT TO THE RESCHEDULE LOGIC TO:                       * 00770000                
*              - POST COMPLETION OF THE TP SCHEDULED OPERATION.       * 00780000                
*              - TO PERFORM THE NEXT PRIORITY ACTION ON THE LINE.     * 00790000                
*              - TO CHECK FOR OTHER WORK WITHIN 'CM' THAT CAN BE DONE * 00800000                
*                AT THIS TIME.                                        * 00810000                
*                                                                     * 00820000                
*   ENTRY POINTS:                                                     * 00830000                
*         CMBREQ - HANDLE NEW TP REQUEST.                             * 00840000                
*         CMBSTP - ABORT LINE (FROM CMBOPE).                          * 00850000                
*         CMBTBY - TEST IF LINE BUSY (FROM CMFRMN AND CMNWRK) .       * 00860000                
*                                                                     * 00870000                
*  INPUT--                                                            * 00880000                
*         CMSPL  - ADDRESS OF THE TP REQUEST BEING HANDLED.           * 00890000                
*         CMSDTF - ADDRESS OF THE DTF THAT PL IS FOR.                 * 00900000                
*                                                                     * 00910000                
*  OUTPUT--                                                           * 00920000                
*         LCBPLQ - NEW REQUEST ADDED TO THIS QUEUE. ANDLED.           * 00930000                
*                                                                     * 00960000                
*  EXTERNAL REFERENCES--                                              * 00970000                
*         $BSCL  - CLOSE BSCA SWITCHED LINE FOR DISCONNECT OPERATION. * 00980000                
*         $BSOB  - RE-OPEN THE BSCA SWITCHED LINE AFTER A DISCONNECT  * 00990000                
*                  OPERATION.                                         * 01000000                
*         $CC4MP - TRANSIENT TO IGNORE A PUT TO A TERMINAL IN CCP ERP.* 01010000                
*         $CC4BP - TRANSIENT TO HANDLE BSCA STOP II/PURGE I/O.        * 01020000                
*         $CC4BR - TRANSIENT TO REJECT A TP REQUEST THAT CONFLICTS    * 01030000                
*                  WITH A CURRENT LINE OPERATION.                     * 01040000                
*         $CC4BC - PRIORITY CANCEL OF READ ON LINE, PUT PENDING.      * 01050000                
*         CMIVGM - HANDLE A NEW INVITE INPUT REQUEST.                 * 01060000                
*         CMPOST - POST REQUEST REJECTED.                             * 01070000                
*         CMQUE  - QUEUE TP REQUEST ON LINE QUEUE.                    * 01080000                
*                                                                     * 01090000                
*  EXIT, NORMAL--                                                     * 01100000                
*                TO CMNOBY, TO SCHEDULE ANOTHER OP FROM OWNER OF LINE.* 01100100                
*                TO CMNOBY, TO SCHEDULE ANOTHER OP FROM OWNER OF LINE.* 01104100                
*                TO CMBSCH, THE BSCA LINE RESCHEDULING FUNCTION.      * 01110000                
*                TO CMPAII, IF LINE CAN NOT BE SCHEDULED NOW.         * 01110100                
*                TO CMPAII, IF LINE CAN NOT BE SCHEDULED NOW.         * 01114100                
*                                                                     * 01116100                
*********************************************************************** 01130000                
       EJECT                                                            01140000                
CMBREQ EQU   *                         *                              B 01150000                
       AIF   (&NSWL).S0100                                              01160000                
       TBN   PLOPM(,PL),OPDISC         DISCONNECT ?                  SB 01170000                
       JF    CMBPTG                    NO-GO HANDLE PUT-GET OP CODE. SB 01180000                
       SPACE 1                                                          01190000                
******************************************************************   SB 01200000                
*   DISCONNECT BSC SWITCHED LINE IF REQUESTED TO THE CURRENT TUB *   SB 01210000                
******************************************************************   SB 01220000                
       SBF   PL$OPM(,PL),OPPUT         SET OFF PUT OP IND.           SB 01230000                
       CLC   PLTUBA(2,PL),LCBOWN(,DTF) THIS TUB CONNECTED ?          SB 01240000                
       JE    CMBDIS                    YES - GO DO DISCONNECT        SB 01250000                
       CLI   PLOPC(,PL),OPPURG         PURGE OPERATION ?             SB 01252000                
       JE    CMBDIS                    YES - DISCONNECT THE LINE     SB 01254000                
       CLI   LCBOWN-1(,DTF),NOBIT      NO OWNER OF THE LINE ?        SB 01256000                
       JE    CMBDIS                    YES - DISCONNECT THE LINE     SB 01258000                
       L     PLTUBA(,PL),XR2           TUB ADDRESS                   SB 01260000                
       CLC   TUBTCB(2,XR2),@TMTCB      DID TERMINATION REQUEST DISC? SB 01270000                
       JNE   CMBPDI                    NO - NOT CONNECTED            SB 01280000                
*                                      YES - THE TASK OWNS THE LINE  SB 01290000                
*                                      * (MAY BE IN ID VERIFICATION) SB 01300000                
CMBDIS EQU   *                         *  LOCAL                      SB 01310000                
       LA    CMOCPL,XR2                ADDR OF MLMP OPEN/CLOSE PL    SB 01320000                
*                                      * WITH DTF ADDR AT OFFSET 3.  SB 01330000                
       SPACE 1                                                          01340000                
       SVC   0                         SVC TO LOAD CLOSE             SB 01350000                
       DC    AL1(LDRIB)                LOAD XIENT BY C/S             SB 01360000                
CMCLOZ DS    CL2                       CLOSE XIENT C/S (STARTUP SETS)SB 01370000                
       DC    AL1(NSECS)                NUMBER OF SECTORS - 1         SB 01380000                
       SPACE 1                                                          01390000                
       SVC   0                         SVC TO LOAD OPEN              SB 01400000                
       DC    AL1(LDRIB)                LOAD XIENT BY C/S             SB 01410000                
       DS    CL2                       OPEN XIENT C/S (STARTUP SETS) SB 01420000                
       DC    AL1(NSECS)                NUMBER OF SECTORS - 1         SB 01430000                
       SPACE 1                                                          01440000                
       L     CMSDTF,DTF                RESTORE DTF ADDRESS           SB 01450000                
       SBF   LCBATR(,DTF),LCBNIT       SET OFF LINE CONNECTED IND.   SB 01460000                
       SBF   LCBAT3(,DTF),LCBENB       SET OFF LINE ENABLED IND.     SB 01470000                
       SLC   LCBOWN(2,DTF),LCBOWN(,DTF) ZERO OUT TUB OWNING INDICATORSB 01480000                
       SLC   #OPEND,LCBOPE(1,DTF)      REMOVE RESIDUAL OP ENDS.      SB 01490000                
       MVI   LCBOPE(,DTF),NOBIT        ZERO LCB OP END COUNT.        SB 01500000                
       TBN   PL$OPM(,PL),OPGET         GET OPERATION REQUESTED ALSO. SB 01510000                
       BF    CMBSCH                    NO-GO RESCHEDULE THE LINE.    SB 01520000                
       J     CMBERP                    GO TO NEXT OPERATION CHECK.   SB 01530000                
       SPACE 1                                                          01540000                
******************************************************************   SB 01550000                
*   DISCONNECT  FOR  TERMINAL NOT CONNECTED                      *   SB 01560000                
******************************************************************   SB 01570000                
       SPACE 1                                                          01580000                
CMBPDI EQU   *                         *  LOCAL                      SB 01590000                
       TBN   PL$OPM(,PL),OPGET         GET REQUESTED ALSO            SB 01600000                
       JT    CMBERP                    YES - HANDLE IT.              SB 01610000                
       B     CMPAII                    NO - REQUEST FINISHED         SB 01620000                
.S0100 ANOP                                                             01630000                
CMBPTG EQU   *                         *  LOCAL                       B 01650000                
       TBN   PLOPC(,PL),OPPUT+OPGET    IS OP A PUT THEN GET           B 01660000                
       JF    CMBERP                    NO  - SKIP SET OFF GET BIT     B 01670000                
       SPACE                                                            01680000                
******************************************************************    B 01690000                
* IF PUT THEN GET - SCHEDULE A PUT                               *    B 01700000                
******************************************************************    B 01710000                
       SPACE                                                            01720000                
       SBF   PL$OPM(,PL),OPGET         SET OFF GET BIT                B 01730000                
CMBERP EQU   *                         *   LOCAL                      B 01740000                
       SPACE                                                            01750000                
******************************************************************    B 01760000                
* IGNORE PUT TO TERMINAL IN ERP                                  *    B 01770000                
******************************************************************    B 01780000                
       SPACE                                                            01790000                
       B     CMERPC                    GO CHECK FOR AND HANDLE PUT    B 01800000                
*                                      * TO TERMINAL IN ERP.          B 01810000                
*        IF TERMINAL IS IN ERP AND OP WAS A PUT-ONLY CMERPC WILL GO   B 01820000                
*         DIRECTLY TO CMPAII. IF IN ERP AND OP WAS PUT THEN GET       B 01830000                
*         CMERPC RETURNS HERE TO SCHEDULE GET.                        B 01840000                
       SPACE                                                            01850000                
       TBN   PLOPM(,PL),OPSTOP         IS STOP BIT ON                 B 01860000                
       JF    CMBNSP                    NO-CONTINUE NON STOP CHECKING  B 01870000                
       SPACE 1                                                          01880000                
********************************************************************  B 01890000                
* STOP INVITE  REQUEST                                             *  B 01900000                
********************************************************************  B 01910000                
       SPACE                                                            01920000                
       LA    0(,PL),XR2                LOAD PL @ INTO XR2 FOR XIENT.  B 01930000                
&MIX   SETA  &NCS+&NSWL                                                 01940000                
       AIF   (&MIX EQ '2').S0125                                        01950000                
       USING CMBSKP,XR1                                                 01960000                
       LA    CMBSKP,XR1                LOAD @ OF SKIP BIT RTN.     C/SB 01970000                
       MVI   CMB#SB(,XR1),SBN1         SET OP TO SET POLL BIT ON.  C/SB 01980000                
.S0125 SVC   0                         ##### TRANSIENT CALL #####     B 01990000                
       DC    AL1(CCPRIB)               CCP SVC RIB                    B 02000000                
       DC    AL1(CC4BP)                ID FOR BSCA PURGE/STOP INVITE. B 02010000                
       SPACE                                                            02020000                
* TRANSIENT WILL RETURN HERE IF NO ABORT NEEDED, STOP SUCCESSFUL.     B 02030000                
*   $CC4BC MAY SET UP CANCEL WHICH WILL BE HANDLED ON THE NEXT CALL   B 02040000                
*   TO CCP CHECK ROUTINE (CMBMCH). #OPEND INCREMENTED TO CAUSE CALL.  B 02050000                
       SPACE 1                                                          02060000                
       B     CMRQBF                    GO SET TP REQ'T BITS OFF.      B 02070000                
       SPACE                                                            02080000                
* TRANSIENT WILL RETURN HERE IF    ABORT   OF LINE NEEDED.            B 02090000                
*        DATA WAS BEING TRANSMITTED.                                  B 02100000                
       SPACE                                                            02110000                
******************************************************************    B 02120000                
* SET UP FOR ABORT OF LINE                                       *    B 02130000                
******************************************************************    B 02140000                
       SPACE                                                            02150000                
CMBSTP EQU   *                         *  (FROM CMBOPE FOR STOP FAIL) B 02160000                
       TBN   LCBOPC(,DTF),OPPUT        ABORT OF A PUT ?               B 02170000                
       BT    CMBEOT                    YES-GO SET WRITE EOT.          B 02180000                
       L     $BDWKA(,DTF),WKA          POINT TO BSCA WORK AREA.       B 02190000                
       MVI   WKDELL+4(,WKA),CPURGE     SET CCP PURGE RETURN CODE.     B 02200000                
       SBN   BSFLGD(,WKA),FWDABT       SET FORWARD ABORT REQUEST.     B 02210000                
       L     WKIOBD(,WKA),IOB          POINT TO IOB OUT OF WORK AREA. B 02220000                
       SBF   IOBFLA(,IOB),TDLAY        SET OFF TIME DELAY SEQUENCE.   B 02230000                
       B     CMFORB                    GO TO FORM OP FOR MLMP.        B 02240000                
       SPACE 1                                                          02250000                
CMBEOT EQU   *                         *  LOCAL                       B 02260000                
       SBN   LCBAT2(,DTF),LCBSET       SET SEND EOT                   B 02270000                
       ALC   $BDBKX(2,DTF),$BDBKL(,DTF) UPDATE BLK PTR SO WONT GET    B 02280000                
*                                      * ANY MORE DATA                B 02290000                
       B     CMFORB                    FORM NEXT MLMP OPERATION       B 02300000                
       TITLE '$E080/CMBREQ--NEW BSCA TP REQUEST -- NON-STOP REQUEST'    02310000                
********************************************************************  B 02320000                
* NON-STOP REQUEST                                                 *  B 02330000                
********************************************************************  B 02340000                
       SPACE                                                            02350000                
CMBNSP EQU   *                         *  LOCAL                       B 02360000                
* IF THIS OPERATION IS TO A TUB IN CCP ERP - THEN CANNOT HAVE A PUT   B 02370000                
* THAT WILL BE SCHEDULED                                              B 02380000                
       SPACE                                                            02390000                
       TBN   TUBAT3(,XR2),TUBERP       IS TUB IN CCP ERP              B 02400000                
       L     TUBDTF(,XR2),DTF          POINT XR2 AT THE DTF           B 02410000                
       JT    CMBSOP                    JUMP IF IN CCP ERP.            B 02420000                
       TBN   PL$OPM(,PL),OPPNW         IS IT PUT NO WAIT                02480000                
       JF    CMBSOP                    IF NOT JUMP TO END OF PNW CHECK. 02490000                
       SPACE                                                            02500000                
*  PUT NO WAIT REQUESTED - CONVERT IF NOT ALLOWED                       02510000                
       SPACE                                                            02520000                
       AIF   (&NSWL).S0400                                              02530000                
       AIF   (&MIX EQ '3').S0500                                        02540000                
       TBN   $BDATR(,DTF),$BCSWI       SWITCHED, AND NOT            SLB 02550000                
       TBF   $BDATR(,DTF),$BCMPT       * MULTI-POINT ?              SLB 02560000                
       JT    CMBPW                     YES-ALL PUTS ARE PUT WAITS.  SLB 02570000                
.S0400 ANOP                                                             02580000                
       TBF   PLOPM(,PL),OP$SYS         USER REQUEST, AND              B 02590000                
       CLI   PLOPC(,PL),OPMSG          LESS THAN MESSAGE LEVEL PUT ?  B 02600000                
       JC    CMBSOP,ANY+FALSE+HI+EQ    NO- SKIP SET TO WAIT OP .      B 02610000                
.S0500 ANOP                                                             02620000                
CMBPW  EQU   *                         *  LOCAL                         02630000                
       SBF   PL$OPM(,PL),OPNOW         MAKE OPERATION A WAIT            02640000                
       SPACE 2                                                          02650000                
*******************************************************************   B 02660000                
*   REJECT INVALID BSCA OPERATION REQUEST SEQUENCES.              *   B 02670000                
*******************************************************************   B 02680000                
       SPACE 1                                                          02690000                
CMBSOP EQU   *                         *  LOCAL                       B 02700000                
*  XR1 CONTAINS ADDRESS OF PARM LIST TO BE SCHEDULED.                 B 02702000                
       SPACE                                                            02704000                
       TBN   $BDDEV(,DTF),BSCA         BSCA LINE ?                    B 02704600                
       BF    CMBSOX                    NO-GO TO END OF BSCA OP CHECK  B 02705200                
       B     CMTASV                    GO SET UP TAS SAVE AREAS.      B 02706000                
       SPACE                                                            02708000                
       MNN   CMTOPT+1,LCBOPC(,DTF)     USE LAST OP ON LINE FOR CHECK. B 02710000                
       SBF   CMTOPT+1,OPNOW            SET OFF NO WAIT BIT.           B 02720000                
       MVC   CMTOP2+1(1),CMTOPT+1      SET UP TEST FOR BUSY CHECK.    B 02730000                
       AIF   (&NSWL).S0200                                              02740000                
&MIX   SETA  &NMP+&NPP+&NCS                                             02750000                
       AIF   (&MIX EQ '3').S0150                                        02760000                
       TBN   $BDATR(,DTF),$BCSWI       SWITCHED, AND                SLB 02770000                
       TBF   $BDATR(,DTF),$BCMPT       * NOT MULTI-POINT ?          SLB 02780000                
       JF    CMBACT                    NO-GO CHECK FOR LINE ACTIVE. SLB 02790000                
.S0150 ANOP                                                             02800000                
       SPACE 1                                                          02810000                
*------------------------------------------------------------------* SB 02820000                
*       SWITCHED                                                   * SB 02830000                
*------------------------------------------------------------------* SB 02840000                
       SPACE 1                                                          02850000                
       TBN   PLOPM(,PL),OP$SYS         SYSTEM                        SB 02860000                
       TBN   PLOPC(,PL),OPPUT          *      PUT TO                 SB 02870000                
       CLC   PLTUBA(2,PL),LCBOWN(,DTF) * NON-CONNECTED LINE ?        SB 02880000                
       JC    CMBSII,FLSOEQ             NO-GO CHECK FOR SYSTEM II.    SB 02890000                
       SBF   PL$OPM(,PL),OPPUT         SET OFF PUT OPERATION.        SB 02900000                
       SBF   LCBAT2(,DTF),LCBPUT       SET PUT OPERATION IND OFF     SB 02903000                
       SBN   PL$OPM(,PL),OPNOW         SET NO WAIT IND FOR POST      SB 02906000                
       TBN   PLOPC(,PL),OPGET          GET OPERATION ALSO REQUESTED. SB 02910000                
       BF    CMPAII                    NO-GO POST COMPLETION.        SB 02920000                
       SBN   PL$OPM(,PL),OPINV         SET ON INVITE OP CODE BITS.   SB 02930000                
CMBSII EQU   *                         *   LOCAL                     SB 02940000                
       TBN   PLOPM(,PL),OP$SYS         SYSTEM                        SB 02950000                
       TBN   PL$OPM(,PL),OPINV         *      INVITE INPUT OP ?      SB 02960000                
       JF    CMBENB                    NO-GO CHECK ENABLED STATUS.   SB 02970000                
       TBN   PLOPC(,PL),OPJRSH         OPERATION TO RESCHEDULE ONLY? SB 02971000                
       JF    CMBNJR                    NO-CONTINUE OP CHECKING       SB 02972000                
       TBF   LCBAT3(,DTF),LCBENB       LINE ENABLED ?                SB 02973000                
       BT    CMBSCH                    NO-GO TO RESCHEDULE           SB 02974000                
       B     CMPAII                    GO TO POST REQUEST            SB 02975000                
CMBNJR EQU   *                         * LOCAL                       SB 02976000                
       L     PLTUBA(,PL),XR2           POINT TO THE TUB.             SB 02980000                
       TBN   TUBCHR(,XR2),TUBCMN       COMMAND CAPABLE TERMINAL ?    SB 02990000                
       JT    CMBRLD                    YES-GO CHECK ENABLED STATUS.  SB 03000000                
       SBF   TUBAT2(,XR2),TUBIIS       SET OFF INVITE SCHEDULED.     SB 03010000                
       L     TUBDTF(,XR2),DTF          POINT TO THE DTF.             SB 03020000                
       TBN   LCBAT3(,DTF),LCBENB       LINE ENABLED ?                SB 03030000                
       BT    CMPAII                    YES-GO POST REQUEST RESULTS.  SB 03040000                
       B     CMBSCH                    GO TO RESCHEDULE THE LINE.    SB 03050000                
       SPACE 1                                                          03060000                
CMBRLD EQU   *                         *  LOCAL                      SB 03070000                
       L     TUBDTF(,XR2),DTF          POINT TO THE DTF.             SB 03080000                
CMBENB EQU   *                         *  LOCAL                      SB 03090000                
       TBN   LCBAT3(,DTF),LCBENB       LINE ENABLED ?                SB 03100000                
       JF    CMBSOX                    NO-GO TO END OF BSCA OP CHECK.SB 03110000                
       CLC   PLTUBA(2,PL),LCBOWN(,DTF) THIS TUB CONNECTED ON LINE ?  SB 03120000                
       JNE   CMBCNT                    NO-GO CHECK CONNECTION TYPE.  SB 03130000                
       TBN   LCBAT2(,DTF),LCBACT       LINE ACTIVE WITH DATA ?       SB 03140000                
       JF    CMBSOX                    NO - FREE TO BE USED.         SB 03150000                
       TBN   PLOPC(,PL),OPPUT          PUT TO HANDLE AND,            SB 03154100                
       TBN   LCBAT2(,DTF),LCBRCI       * INITIAL RECEIVE ON LINE ?   SB 03160000                
       BT    CMBSOX                    YES - ACCEPT THE REQUEST. THE SB 03170000                
*                                      * ONLY WAY A PUT COULD GET    SB 03180000                
*                                      * THRU TO CM WOULD BE A SYS   SB 03190000                
*                                      * OLT TO CPU. CANCEL RECV.    SB 03200000                
       J     CMTOPT                    NO- GO CHECK OP CODE MATCH.   SB 03210000                
       SPACE 1                                                          03220000                
CMBCNT EQU   *                         *  LOCAL                      SB 03230000                
       TBN   PLOPM(,PL),OP$SYS         SYSTEM REQUEST ?              SB 03240000                
       JT    CMBSOX                    YES-GO TO END OF BSCA OP CHK. SB 03250000                
       L     PLTUBA(,PL),TUB           POINT TO THE NEW REQUEST TUB. SB 03260000                
       L     LCBOWN(,DTF),XR2          POINT TO ACTIVE TUB.          SB 03270000                
       TBF   TUBTA1(,TUB),TASCNC       BOTH                          SB 03280000                
       TBF   TUBTA1(,XR2),TASCNC       *    ANSWER ?                 SB 03290000                
       TBF   TUBTA2(,TUB),TASVFY       BOTH                          SB 03300000                
       TBF   TUBTA2(,XR2),TASVFY       *    VERIFY ID'S ?            SB 03310000                
       L     TUBDTF(,TUB),DTF          POINT TO THE DTF.             SB 03320000                
       L     CMSPL,PL                  POINT TO THE PARM LIST.       SB 03330000                
       JF    CMTREJ                    NO-GO REJECT LAST OP REQUEST. SB 03340000                
       J     CMBSOX                    GO TO END OF BSCA OP CHECK.   SB 03350000                
       SPACE                                                            03360000                
*------------------------------------------------------------------* SB 03370000                
*       NON - SWITCHED                                             * SB 03380000                
*------------------------------------------------------------------* SB 03390000                
       SPACE 1                                                          03400000                
       AIF   (&MIX EQ '3').S0250                                        03410000                
CMBACT EQU   *                         *  LOCAL                      SB 03420000                
.S0200 ANOP                                                             03430000                
       TBN   LCBAT2(,DTF),LCBACT       LINE ACTIVE WITH DATA ?        B 03440000                
       JF    CMBSOX                    NO-GO TO END OF BSCA OP CHECK. B 03450000                
       SPACE 1                                                          03460000                
*   LINE ACTIVE                                                       B 03470000                
       SPACE 1                                                          03480000                
       TBN   LCBAT2(,DTF),LCBRCI       RECEIVE INITIAL ?              B 03490000                
       JT    CMBSOX                    YES-TREAT LIKE LINE NOT ACTIVE.B 03500000                
       L     PLTUBA(,PL),TUB           LOAD TUB @ INTO REG.           B 03510000                
       CLC   TUBTCB(2,TUB),LCBOWN(,DTF) THIS TASK OWN THE LINE ?      B 03520000                
       L     CMSPL,PL                  RELOAD PARM LIST REG.          B 03530000                
       JNE   CMBSOX                    NO-NO OP CONFLICT, SKIP CHECKS.B 03540000                
       SPACE 1                                                          03550000                
*   ACCEPT THE OPERATION IF AN INVITE OR PUT-NO-WAIT MESSAGE.         B 03560000                
       SPACE 1                                                          03570000                
       CLI   PLOPC(,PL),OPINV          INVITE INPUT ?                 B 03580000                
       TBF   PLOPM(,PL),OP$SYS         * OR SYSTEM REQUEST ?          B 03590000                
       JC    CMBSOX,FLSOEQ             YES-OP OK, SKIP OTHER CHECKS.  B 03600000                
       TBN   PLOPC(,PL),OPMSG+OPPNW    PUT-NO WAIT/MESSAGE, AND       B 03610000                
       TBN   PL$OPM(,PL),OPPNW         * STILL A PUT-NO WAIT ?        B 03620000                
       JT    CMBSOX                    YES-ACCEPT THE OPERATION.      B 03630000                
       SPACE 1                                                          03640000                
*   ACCEPT THE OPERATION IF THE CURRENT LINE OP IS INVITE-MESSAGE, OR B 03650000                
*     PUT-NO-WAIT-MESSAGE.                                            B 03660000                
       SPACE 1                                                          03670000                
       TBN   LCBOPC(,DTF),OPINV        INVITE OP ON LINE, AND         B 03680000                
       TBN   SAVTA2,TASMSG             * IS IT MESSAGE MODE ?         B 03690000                
       JT    CMBSOX                    YES-ACCEPT THIS OP REQUEST.    B 03700000                
       TBF   LCBAT1(,DTF),LCBNTQ       PARM LIST QUEUED, AND          B 03710000                
       L     LCBPL@(,DTF),XR2          POINT TO CURRENT PARM LIST.    B 03720000                
       TBN   PLOPC(,XR2),OPPNW+OPMSG   * IS IT A PUT-NO-WAIT-MESSAGE ?B 03730000                
       JT    CMBSOX                    YES-ACCEPT THIS OP REQUEST.    B 03740000                
       TBF   PL$OPC(,XR2),OPRFSH       NOT ACTIVE WAITING REFRESH OR  B 03744000                
       TBF   PLOPM(,XR2),OP$SYS        NO A SYSTEM REQUEST ?          B 03745000                
       JF    CMBSOX                    YES-ACCEPT THIS OP REQUEST     B 03746000                
       L     PLTUBA(,PL),XR2           POINT TO THE TUB.              B 03750000                
       TBN   TUBAT2(,XR2),TUBOWN       THIS TUB OWN THE LINE, AND     B 03760000                
       L     TUBDTF(,XR2),DTF          POINT TO THE DTF.              B 03770000                
.S0250 ANOP                                                             03780000                
       SPACE 1                                                          03790000                
*   LINE ACTIVE WITH SAME TERMINAL AS THIS OP IS FOR  - ONLY OK IF    B 03800000                
*    THIS IS ANOTHER SUCH OPERATION  ( E.G. PUT BLOCK, GET BLOCK)     B 03810000                
       SPACE 1                                                          03820000                
CMTOPT EQU   *                         *  LOCAL AND MODIFICATION      B 03830000                
       TBN   PL$OPM(,PL),#             SAME TYPE OP AS LAST TIME ?    B 03840000                
       JT    CMBSOX                    YES-GO CONTINUE,PARM LIST OK.  B 03850000                
       SPACE 1                                                          03860000                
******************************************************************      03870000                
*   SET  REJECTED OPERATION COMPLETION RETURN CODE, ALSO GO TO DEQ IT.  03880000                
******************************************************************      03890000                
       SPACE 1                                                          03900000                
CMTREJ EQU   *                         *   LOCAL                      B 03910000                
*                                      *  XR1-PL,XR2-DTF FOR BR       B 03920000                
       SVC   0                         ##### TRANSIENT CALL #####     B 03930000                
       DC    AL1(CCPRIB)               CCP SVC RIB                    B 03940000                
       DC    AL1(CC4BR)                * BSCA REJECT CLEAN-UP.        B 03950000                
BLANKC DC    XL1'40'                   CONSTANT OF A BLANK,           B 03960000                
*                                      AND, INLINE PARM VALUE FOR     B 03970000                
*                                      REJECT PARM LIST NOT Q'D.      B 03980000                
       SBF   CMSWIT,CMTPRQ             TURN OFF TP REQUEST SWITCH.    B 03990000                
       B     CMREDO                    PREPARE TO RESCHEDULE          B 04000000                
       SPACE 2                                                          04010000                
*******************************************************************   B 04020000                
*   REQUEST ACCEPTED                                              *   B 04030000                
*******************************************************************   B 04040000                
       SPACE                                                            04050000                
CMBSOX EQU   *                         *                              B 04060000                
       AIF   (&NDF).B0075                                               04070000                
       L     PLTUBA(,PL),XR2           ADDRESS OF TUB                FB 04080000                
       TBN   TUBTA1(,XR2),TASDFF       IS IT A DFF REQUEST           FB 04090000                
       TBF   PLOPM(,PL),OP$SYS         AND A USER REQUEST            FB 04100000                
       TBF   PLRECA-1(,PL),ALLBIT      AND GETMAIN NOT DONE YET      FB 04110000                
*                                      * (HAVE NOT BEEN TO DFF YET)  FB 04120000                
       TBN   PLOPC(,PL),OPPUT          * AND A PUT OR COPY,THEN THIS FB 04130000                
*                                      * REQUEST MUST GO TO DFF FOR  FB 04140000                
*                                      * DATA FORMATING.             FB 04150000                
       JF    CMQIT                     NO  - GO QUEUE REQUEST.       FB 04160000                
       SBF   CMSWIT,CMTPRQ             NEW REQUEST PROCESSING DONE   FB 04170000                
       L     CMSDTF,DTF                LOCATE BSCA LCB              @19 04170060                
       TBN   LCBATA(,DTF),LCBDFF       Q-DFF BUFFER SUPPORTED?      @19 04170120                
       JF    CMGMMV                    NO-BRANCH                    @19 04170180                
       SPACE 1                                                          04170240                
CMBDFF TBN   LCBATA(,DTF),LCBDFB       Q-DFF BUFFER BUSY?           @19 04170300                
       JT    CMQREQ                    YES-QUEUE THE REQUEST.       @19 04170360                
       SPACE 1                                                          04170420                
       SBN   LCBATA(,DTF),LCBDFB       MAKE DFF BUFFER BUSY         @19 04170480                
       MVC   PLRECA(,PL),@LOBND(2)     BUILD DFF BUFFER......       @19 04170540                
       ALC   PLRECA(,PL),RND2K(2)      ...START....                 @19 04170600                
       SBF   PLRECA(,PL),ALLBIT        ....ADDRESS...               @19 04170660                
       SBF   PLRECA-1(,PL),BND2K       .....IN PLRECA.              @19 04170720                
       J     CMQDFF                    POST DFF                     @19 04170780                
       SPACE 1                                                          04170840                
       SPACE 1                                                          04171000                
* IF CURRENT LARGEST SIZE TP BUFF IS NOT BIG ENOUGH TO DO THE           04173000                
*  DFF PUT THEN DECREMENT PLOUTL UNTIL IT IS OR UNTIL IT IS ZERO        04174000                
       SPACE 1                                                          04175000                
CMGMMV EQU   *                         *                                04176000                
       MVC   GMLIST+GMSIZE(2),PLOUTL(,PL) LENGTH OF RECORD AREA      FB 04180000                
       ALC   GMLIST+GMSIZE(2),X$0004   ADD 4 FOR FREEMAIN LIST       FB 04190000                
       CLC   #GMS+1(2),GMLIST+GMSIZE   ENOUGH CORE?                  FB 04190400                
       JNL   CMGMCR                    YES-GO DO GETMAIN             FB 04190800                
       SBF   PLOUTL(,PL),ALLBIT        MAKE LNGTH=256 INCREMENT      FB 04191200                
       TBF   #GMS+1,FC                 GREATER THAN 3?               FB 04191600                
       JF    CMGMCK                    YES-JUMP                      FB 04192000                
CMGMAG EQU   *                         *                             FB 04192400                
       SLC   PLOUTL-1(1,PL),X$0001     DECREMENT BY 256              FB 04192800                
       JL    CMROUT                    PLOUTL < 256 - JUMP           FB 04193200                
CMGMCK EQU   *                         *                             FB 04193600                
       CLI   PLOUTL-1(,PL),HEX512      OUTL LESS THAN 512?           FB 04194000                
       JL    CMROUT                    YES-JUMP                      FB 04194400                
       CLC   #GMS+1,PLOUTL(2,PL)       ENOUGH CORE NOW?              FB 04194800                
       BNH   CMGMAG                    NO-GO AGAIN                   FB 04195200                
       B     CMGMMV                    YES-GO DO GETMAIN             FB 04195600                
CMROUT EQU   *                         *                             FB 04196000                
       MVC   PLOUTL(2,PL),GMLIST+GMSIZE RESTORE ORIGINAL-            FB 04196400                
       SLC   PLOUTL(2,PL),X$0004       LENGTH OF OUTL                FB 04196800                
CMGMCR EQU   *                         *                             FB 04197200                
       SBN   $FLGC,#PUTTP              SET IND.-GET FROM ANYWHERE       04197600                
       B     CMGMRT                    GETMAIN HOLD BUFFER           FB 04200000                
       JNOL  CMDFFP                    IF GETMAIN SUCCESSFUL,POST DF.FB 04210000                
CMQREQ SBN   PL$OPM(,PL),OPGETQ        GETMAIN NEEDED TO QUEUE REQ .@19 04220000                
       J     CMQIT                     QUEUE TEMPORARILY TO WAIT.    FB 04230000                
       SPACE 1                                                          04240000                
CMDFFP EQU   *                         *  LOCAL                      FB 04250000                
       MVC   PLRECA(2,PL),GMLIST+GMADDR @  OF GETMAINED BUFF INTO PL FB 04260000                
       ALC   PLRECA(2,PL),X$0004       BYPASS FREEMAIN LIST          FB 04270000                
       SPACE 1                                                          04280000                
*    USER PUT MESSAGE TO DFF TERMINAL - QUEUE FOR DFF TASK           FB 04290000                
       SPACE 1                                                          04300000                
CMQDFF B     CMDFFQ                    GO QUEUE FOR DFF AND POST    @19 04310000                
       B     CMREDO                    GO SEE IF LINE NEEDS SCHED    FB 04320000                
.B0075 ANOP                                                             04330000                
       SPACE 1                                                          04340000                
*******************************************************************   B 04350000                
*   QUEUE THE REQUEST  (NON- DFF)                                 *   B 04360000                
*******************************************************************   B 04370000                
       SPACE                                                            04380000                
CMQIT  EQU   *                         *  QUEUE NEW REQUEST          FB 04400000                
       B     CMQUE                     QUEUE REQUEST ON LINE QUEUE      04430000                
       SPACE                                                            04440000                
       MNN   PL$OPC(,PL),PL$OPM(,PL)   SAVE INTERNAL OP CODE.         B 04450000                
       TBN   PLOPC(,PL),OPPUT          PUT OPERATION ?                B 04450100                
       JF    CMBTBY                    NO-SKIP SETTING PUT PENDING.   B 04450200                
       L     CMSDTF,DTF                XR2 --> DTF                    B 04450250                
       SBN   LCBAT2(,DTF),LCBPUT       SET IND. PUT PENDING Q'D.      B 04450300                
       TITLE '$E080/CMBREQ---BSCA NEW REQUEST---LINE BUSY CHECK'      B 04460000                
*******************************************************************   B 04470000                
*            CHECK THE TP LINE AND SEE IF IT IS BUSY              *   B 04480000                
*******************************************************************   B 04490000                
       SPACE                                                            04500000                
CMBTBY EQU   *                         *  ( FROM CMRQBF, CMFRMN)      B 04510000                
       AIF   (&NTTSK).TT010                                             04510500                
       AGO   .TT020                                                     04511000                
.TT010 ANOP                                                             04511500                
       AIF   (&NAPOR).PT010                                             04512000                
.TT020 ANOP                                                             04512500                
       SPACE 1                                                          04513000                
******************************************************************* @18 04513500                
*************                                                           04514000                
*************                                                           04514500                
       L     PLTUBA(,PL),XR2           XR2 --> TUB (PORT)               04515000                
       TBN   TUBPHY(,XR2),TUBAPT       IS THIS A PORTLINE OPERATION ?   04515500                
       BT    CMZNWR                    YES - GO TO PORTLINE NEW REQUEST 04516000                
*************                                                           04516500                
*************                                                           04517000                
******************************************************************* @18 04517500                
.PT010 ANOP                                                             04518000                
       AIF   (&NSWL).S0700                                              04520000                
       SPACE 1                                                          04530000                
*   IF SWITCHED BSCA, AND A USER OWNS THE LINE, THEN JUST Q SYSTEM   SB 04540000                
*     REQUESTS.                                                      SB 04550000                
       SPACE 1                                                          04560000                
       L     PLTUBA(,PL),XR2           TUB ADDRESS                   SB 04570000                
       AIF   (&MIX EQ '3').S0600                                        04580000                
       TBN   TUBAT1(,XR2),TUBSWC       SWITCHED LINE ?              SLB 04590000                
       JF    CMBTAC                    NO-GO CHECK ACT  STATUS.     SLB 04600000                
.S0600 ANOP                                                             04610000                
       TBN   PLOPM(,PL),OP$SYS         SYSTEM REQUEST ?              SB 04620000                
       JF    CMBTAC                    NO-GO CHECK ACT  STATUS.      SB 04630000                
       L     TUBDTF(,XR2),DTF          POINT TO THE DTF.             SB 04640000                
       CLC   LCBTCB(2,DTF),X$0000      SWITCHED LINE UNOWNED ?       SB 04650000                
       JE    CMBTAC                    YES-GO CHECK ACT  STATUS.     SB 04660000                
       CLC   LCBTCB(2,DTF),@CPTCB      CP OWN THE LINE ?             SB 04670000                
       JE    CMBTAC                    YES-GO CHECK ACT  STATUS.     SB 04680000                
       CLC   LCBOWN(2,DTF),PLTUBA(,PL) THIS TERMINAL OWN THE LINE ?  SB 04683000                
       JE    CMBTAC                    YES - GO CHECK ACTIVE STATUS  SB 04686000                
       TBN   LCBAT3(,DTF),LCBENB       LINE ENABLED ?                SB 04690000                
       BT    CMPAII                    YES-GO POST OP ACCEPTED.      SB 04700000                
       B     CMBSCH                    GO TO RESCHEDULE THE LINE.    SB 04710000                
.S0700 ANOP                                                             04720000                
       SPACE 1                                                          04730000                
* IF LINE IS NOT ACT  WE CAN START AN OPERATION NOW - ELSE WILL HAVE TO 04740000                
* WAIT FOR AN OP END BEFORE RESCHEDULING THE LINE                       04750000                
       SPACE                                                            04760000                
CMBTAC EQU   *                         *  LOCAL                       B 04770000                
       L     CMSDTF,DTF                POINT XR2 AT LCB               B 04810000                
       TBN   LCBAT2(,DTF),LCBACT       LINE ACTIVE ?                  B 04820000                
       JF    CMBSCH                    NO-GO SCHEDULE WORK ON LINE.   B 04830000                
       TBN   LCBAT2(,DTF),LCBRCI       RECEIVE INITIAL ON LINE ?      B 04840000                
       JF    CMTPLQ                    NO-GO CHECK PARM LIST Q'D.     B 04850000                
       TBN   PL$OPM(,PL),OPPUT         THIS A PUT REQUEST ?           B 04860000                
       JT    CMTRYC                    YES-GO TO TRY PRIORITY CANCEL. B 04870000                
       SPACE 1                                                          04880000                
*******************************************************************   B 04890000                
*     READ REQUEST - LINE BUSY WITH RECEIVE INITIAL               *   B 04900000                
*******************************************************************   B 04910000                
       SPACE                                                            04920000                
       ST    CMSPL,PL                  SAVE PARM LIST ADDR            B 04926000                
       B     CMIVGM                    GO ASSURE SIZE FOR NEW READ.   B 04930000                
       SPACE                                                            04940000                
       L     CMSPL,PL                  POINT TO PARM LIST             B 04941000                
       TBN   PL$OPM(,PL),OPGETM        GETMAIN ALREADY INDICATED ?    B 04942000                
       JT    CMNOID                    YES - DON'T START 2 SEC T.O.   B 04943000                
       L     $BDWKA(,DTF),WKA          XR1--> BSC WORK AREA           B 04944000                
       TBN   $BWKMC(,WKA),X'01'        IDA RUNNING NOW ?              B 04945000                
       JT    CMTRYC                    YES  - GO TRY PROIRITY CANCEL  B 04946000                
CMNOID EQU   *                         *                              B 04947000                
       B     CMPAII                    GO TO POST RESULTS.            B 04950000                
       SPACE 1                                                          04960000                
*******************************************************************   B 04970000                
*     LINE BUSY WITH NON-RECEIVE INITIAL                          *   B 04980000                
*******************************************************************   B 04990000                
       SPACE                                                            05000000                
CMTPLQ EQU   *                         *  LOCAL                       B 05010000                
       TBN   LCBAT1(,DTF),LCBNTQ       PARM LIST NOT QUEUED, AND      B 05020000                
       L     PLTUBA(,PL),XR2           POINT TO THE TUB.              B 05030000                
       TBN   TUBAT2(,XR2),TUBOWN       * THIS REQUEST FOR LINE OWNER? B 05040000                
       L     TUBDTF(,XR2),DTF          POINT TO THE DTF.              B 05050000                
CMTOP2 TBN   PL$OPM(,PL),#             SAME OP AS ON THE LINE ?       B 05060000                
       JF    CMBBSY                    NO-GO TO CHECK LINE FOR BUSY.  B 05070000                
       SPACE 1                                                          05080000                
*-----------------------------------------------------------------*   B 05090000                
*    ANOTHER  BLOCK OR RECORD OPERATION TO THE OWNED TERMINAL.    *   B 05100000                
*    IF A READ JUST GO SCHEDULE IT ON THE LINE (POLL IT).         *   B 05110000                
*-----------------------------------------------------------------*   B 05120000                
       SPACE 1                                                          05130000                
       SBF   LCBAT1(,DTF),LCBNTQ       PARM LIST IS BACK IN QUE.      B 05140000                
       TBN   PL$OPM(,PL),OPGET         IF A READ                      B 05150000                
       JF    CMNNGT                    GO DO PUT OPERATION            B 05150100                
       TBN   LCBAT1(,DTF),LCBINT       OP END WITH NO PARM LIST QUED ?B 05150200                
       SBF   LCBAT1(,DTF),LCBINT       SET OFF OP END QUE'D IND.      B 05150300                
       JF    CMNPLQ                    NO - DON'T FAKE OP END.        B 05150400                
       ALC   #OPEND(1),X$0001          UP OP END COUNT BY ONE.        B 05150500                
       ALC   LCBOPE(1,DTF),X$0001      BUMP LINE OP END COUNT.        B 05150600                
CMNPLQ EQU   *                         * LOCAL                          05150700                
       CLI   PLRECA-1(,PL),NOBIT       GETMAIN NEEDED ?               B 05151000                
       JNE   CMNOBY                    GO SCHEDULE GET OPERATION.     B 05153000                
CMNYGM EQU   *                         * LOCAL                        B 05155000                
       ST    CMSPL,PL                  SAVE PARM LIST ADDR            B 05156000                
       B     CMIVGM                    GO ASSURE SIZE FOR NEW GET.    B 05157000                
       SPACE                                                            05158000                
       L     CMSPL,PL                  POINT TO PARM LIST             B 05159000                
       J     CMNOBY                    GO SCHEDULE GET OPERATION.     B 05160000                
CMNNGT EQU   *                         * LOCAL                        B 05165000                
       SPACE 1                                                          05170000                
*-----------------------------------------------------------------*   B 05180000                
*    ANOTHER  PUT BLOCK OR RECORD  - GETMAIN AND START OPERATION  *   B 05190000                
*-----------------------------------------------------------------*   B 05200000                
       SPACE                                                            05210000                
       L     PLTUBA(,PL),XR2           TUB ADDRESS                    B 05220000                
       TBN   TUBTA1(,XR2),TASDFF       IF DFF SKIP GETMAIN            B 05230000                
       JT    CMNOBY                    YES - ALREADY HAVE BUFFER      B 05240000                
       TBN   PL$OPM(,PL),OPNOW         IF NO WAIT                     B 05250000                
       JT    CMNOBY                    YES - ALREADY HAVE BUFFER      B 05260000                
       SPACE 1                                                          05270000                
       B     CMGMPT                    GETMAIN BUFFER, MOVE DATA IN   B 05280000                
       SPACE                                                            05290000                
       J     CMNOBY                    GO START OPERATION             B 05300000                
       SPACE 3                                                          05310000                
********************************************************************  B 05320000                
*     BSCA   TP LINE BUSY - DETERMINE IF ABORT NEEDED              *  B 05330000                
********************************************************************  B 05340000                
       SPACE                                                            05350000                
* LINE IS BUSY AND MAY HAVE MORE HONORABLE REQUEST WAITING IN THE Q   B 05360000                
       SPACE                                                            05370000                
* IF PREVIOUS OP WAS READ - TRY TO ABORT                              B 05380000                
* DON'T CARE IF STARTED OR NOT BECAUSE RETURN CODE OF 44 OR NON-44    B 05390000                
* WILL REFLECT THIS.                                                  B 05400000                
       SPACE                                                            05410000                
CMBBSY EQU   *                         *  LOCAL                       B 05420000                
       TBN   LCBAT2(,DTF),LCBRCI+LCBPUT RECEIVE INIT AND PUT PENDING. B 05430000                
       BF    CMPAII                    NO-GO POST AS NECESSARY.       B 05440000                
       SPACE                                                            05450000                
********************************************************************  B 05460000                
*    PUT REQUEST  - LINE BUSY WITH RECEIVE INITIAL - PRIORITY CANCEL  B 05470000                
********************************************************************  B 05480000                
       SPACE                                                            05490000                
CMTRYC EQU   *                         *                                05490400                
&MIX   SETA  &NPP+&NMP+&NSWL                                            05490800                
       AIF   (&NCS).S0750                                               05491200                
*  FOR CONTROL STATION LINES PERFORM THE CANCEL FROM RESIDENT CODE C/LB 05492000                
*  FOR OTHER LINE TYPES - CALL $CC4BC TO STOP THE LINE             C/LB 05492400                
       SPACE 1                                                          05492800                
       AIF   (&MIX EQ '3').S0760                                        05493200                
       TBN   $BDATR(,DTF),$BCMCN       CONTROL STATION LINE?       C/LB 05493600                
       JF    CMNCSL                    NO-CALL $CC4BC              C/LB 05494000                
.S0760 ANOP                                                             05494400                
       TBF   LCBAT1(,DTF),LCBCRI+LCBPRI CANCEL ALREADY STARTED?      CB 05494800                
       SBN   LCBAT1(,DTF),LCBPRI       SET CANCEL STARTED            CB 05495200                
       JF    CMGPST                    YES-JUST GO POST              CB 05495600                
       L     $BDWKA(,DTF),WKA          XR1--> BSC WORK AREA          CB 05496000                
       TBN   $BWKMC(,WKA),X'01'        IDA RUNNING NOW ?             CB 05496080                
       JF    CMNIDA                    NO - GO SET CANCEL FOR MLMP   CB 05496120                
       SBN   $BPOLD(,WKA),$BPRES       SET CANCEL FLAG FOR MLMP      CB 05496160                
       CLI   LCBOPE(,DTF),X'00'        ANY OPENDS FOR DA LINE       @29 05496170                
       JNE   CMNODA                    YES- ALREADY OPENDED ON POLL @29 05496180                
       DC    XL3'F38806'               NO- DO A STOP POLL OPERATION @29 05496200                
       J     CMNODA                    JUMP OVER CANCEL SETTING      CB 05496240                
CMNIDA EQU   *                         *                             CB 05496280                
       SBN   $BPOLD(,WKA),$BPRES       SET CANCEL FLAG FOR MLMP      CB 05496400                
CMNODA EQU   *                         *  LOCAL                      CB 05496600                
       AIF   (&MIX EQ '3').S0770                                        05496800                
       J     CMGPST                    GO POST                       CB 05497200                
.S0750 ANOP                                                             05497600                
       AIF   (&MIX EQ '3').S0770                                        05498000                
CMNCSL EQU   *                         NOT CONTROL STATION LINE    C/LB 05498400                
       SVC   0                         ###### TRANSIENT CALL #####    B 05500000                
       DC    AL1(CCPRIB)               CCP SVC RIB                    B 05510000                
       DC    AL1(CC4BC)                CANCEL OPERATION TRANSIENT.    B 05520000                
       DC    AL1(OPPUT)                REFRESH OP CODE VALUE.         B 05530000                
*                                      LINKAGE INDICATOR TO 'BC', CALLB 05540000                
*                                      IS FROM RESIDENT CODE.         B 05550000                
*      TRANSIENT ONLY RETURNS HERE                                    B 05560000                
.S0770 ANOP                                                             05561000                
CMGPST EQU   *                         *                              B 05562000                
       AIF   (&NCS).S0780                                               05563000                
.S0780 ANOP                                                             05565000                
       B     CMPAII                    GO TO POST USER.               B 05570000                
.C0470 ANOP                                                             05580000                
       MEND                                                             05590000