*COMDECK  COMCSYS            PROCESS SYSTEM REQUEST.                     COMCSYS
 SYS      CTEXT  COMCSYS - PROCESS SYSTEM REQUEST.                       COMCSYS
 SYS      SPACE  4,10                                                    COMCSYS
          IF     -DEF,QUAL$,1                                            COMCSYS
          QUAL   COMCSYS                                                 COMCSYS
          BASE   D                                                       COMCSYS
          CODE   D                                                       COMCSYS
*         COMMENT COPYRIGHT CONTROL DATA CORPORATION. 1978.              COMCSYS
 SYS      SPACE  4,10                                                    COMCSYS
***       SYS - PROCESS SYSTEM REQUEST.                                  COMCSYS
*                                                                        COMCSYS
*         G. R. MANSFIELD.   70/09/12.                                   COMCSYS
* 
*         ******************************************************* 
*         * THIS COMMON DECK IS PART OF THE COMMON COMMON DECKS * 
*         * RESIDING ON THE COMPASS PROGRAM LIBRARY, AND BEING  * 
*         * MAINTAINED BY THE COMPASS PROJECT.  ANY CHANGES     * 
*         * REQUIRED SHOULD BE DIRECTED TO THE COMPASS PROJECT  * 
*         * THROUGH THE PROPER PROCEDURE.                       * 
*         ******************************************************* 
* 
*                                                                        COMCSYS
*         SYS ISSUES A SYSTEM MONITOR REQUEST THROUGH RA+1.              COMCSYS
 SYS      SPACE  4,10                                                    COMCSYS
***       SYS WAITS FOR RA+1 TO CLEAR, THEN ISSUES THE DESIRED REQUEST.  COMCSYS
*         CENTRAL EXCHANGE JUMP HARDWARE IS USED IF AVAILABLE.  IF NOT,  COMCSYS
*         AND THE AUTO-RECALL BIT IS SET, SYS WAITS FOR THE MONITOR TO   COMCSYS
*         PROCESS THE CALL BEFORE RETURNING.                             COMCSYS
*                                                                        COMCSYS
*         ENTRY  (X6) = SYSTEM REQUEST.                                  COMCSYS
*                                                                        COMCSYS
*         EXIT   REQUEST PROCESSED.                                      COMCSYS
*                                                                        COMCSYS
*         USES   A - 1, 6.                                               COMCSYS
*                X - 6.                                                  COMCSYS
*                                                                        COMCSYS
*         CALLS  NONE.                                                   COMCSYS
                                                                         COMCSYS
                                                                         COMCSYS
 SYSA     SA1    A1          WAIT (RA.MTR) CLEAR IF AUTO RECALL          COMCSYS
          LX1    59-40                                                   COMCSYS
          MI     X1,SYS1                                                 COMCSYS
                                                                         COMCSYS
 SYS1     EQ     SYS2        FIRST ENTRY                                 COMCSYS
                                                                         COMCSYS
 SYS=     SUBR               ENTRY/EXIT                                  COMCSYS
 +        SA1    RA.MTR      WAIT (RA.MTR) CLEAR                         COMCSYS
          NZ     X1,*                                                    COMCSYS
          SA6    A1          ENTER REQUEST                               COMCSYS
          EQ     SYS1                                                    COMCSYS
                                                                         COMCSYS
*         INITIAL ENTRY TO SET TYPE OF CALL.                             COMCSYS
                                                                         COMCSYS
 SYS2     SA1    RA.CEJ      TEST FOR CENTRAL EXCHANGE JUMP SUPPORT      COMCSYS
          MI     X1,SYS3                                                 COMCSYS
          SA1    SYSA        NO, USE WAIT LOOP                           COMCSYS
          EQ     SYS4                                                    COMCSYS
                                                                         COMCSYS
 SYS3     SX1    0130B       YES, USE XJ INSTRUCTION                     COMCSYS
          LX1    48                                                      COMCSYS
 SYS4     BX6    X6-X1       SWAP REGISTERS                              COMCSYS
          BX1    X6-X1                                                   COMCSYS
          BX6    X6-X1                                                   COMCSYS
          SA6    SYS1        SET MONITOR CALL                            COMCSYS
          BX6    X1          RESTORE (X6)                                COMCSYS
          SA1    RA.MTR      RESET (A1)                                  COMCSYS
          RJ     SYSA        CLEAR STACK                                 COMCSYS
 RCL      SPACE  4,10                                                    COMCSYS
***       RCL - PLACE PROGRAM ON RECALL.                                 COMCSYS
*                                                                        COMCSYS
*         G. R. MANSFIELD.   70/09/12.                                   COMCSYS
*                                                                        COMCSYS
*         RCL ISSUES A SINGLE SYSTEM REQUEST FOR PERIODIC RECALL.        COMCSYS
*         IF RA+1 IS BUSY, NO REQUEST IS ISSUED.                         COMCSYS
 RCL      SPACE  4,10                                                    COMCSYS
***       ENTRY  NONE.                                                   COMCSYS
*                                                                        COMCSYS
*         EXIT   REQUEST PROCESSED.                                      COMCSYS
*                                                                        COMCSYS
*         USES   A - 1.                                                  COMCSYS
*                X - 1, 6.                                               COMCSYS
*                                                                        COMCSYS
*         MACROS SYSTEM.
                                                                         COMCSYS
                                                                         COMCSYS
 RCL1     LX6    42          PROCESS REQUEST                             COMCSYS
          SYSTEM                                                         COMCSYS
 +        SA1    RA.MTR      WAIT (RA.MTR) CLEAR                         COMCSYS
          NZ     X1,*                                                    COMCSYS
                                                                         COMCSYS
 RCL=     SUBR               ENTRY/EXIT                                  COMCSYS
          SA1    RA.MTR                                                  COMCSYS
          NZ     X1,RCL=     IF (RA.MTR) NOT CLEAR, RETURN               CPSA104
          SX6    3RRCL       FORM RECALL REQUEST                         COMCSYS
          EQ     RCL1                                                    COMCSYS
 WNB      SPACE  4,10                                                    COMCSYS
***       WNB - WAIT NOT BUSY.                                           COMCSYS
*                                                                        COMCSYS
*         G. R. MANSFIELD.   70/09/12.                                   COMCSYS
*                                                                        COMCSYS
*         WAIT FOR STATUS WORD BIT 0 TO BE SET.                          COMCSYS
*         IF WORD IS INITIALLY 0, RETURN.                                COMCSYS
 WNB      SPACE  4,10                                                    COMCSYS
***       ENTRY  (X2) = ADDRESS OF STATUS WORD.                          COMCSYS
*                                                                        COMCSYS
*         EXIT   RETURN WHEN BIT 0 OF STATUS WORD IS SET.                COMCSYS
*                                                                        COMCSYS
*         USES   A - 1.                                                  COMCSYS
*                X - 1, 6.                                               COMCSYS
*                                                                        COMCSYS
*         MACROS SYSTEM.
                                                                         COMCSYS
                                                                         COMCSYS
 WNB2     LX1    40          SET AUTO RECALL FLAG                        COMCSYS
          IX6    X6+X1                                                   COMCSYS
          SYSTEM             PROCESS REQUEST                             COMCSYS
                                                                         COMCSYS
 WNB=     SUBR               ENTRY/EXIT                                  COMCSYS
          SX6    3RRCL       FORM RECALL REQUEST                         COMCSYS
          LX6    42                                                      COMCSYS
          IX6    X6+X2                                                   COMCSYS
 WNB1     SA1    X6          CHECK STATUS WORD                           COMCSYS
          LX1    59                                                      COMCSYS
          MI     X1,WNB=     IF COMPLETE BIT SET, RETURN                 CPSA104
          ZR     X1,WNB=     IF BLANK STATUS, RETURN                     CPSA104
          SA1    RA.MTR      WAIT (RA.MTR) CLEAR                         COMCSYS
          NZ     X1,WNB1                                                 COMCSYS
          SX1    1           CONTINUE RECALL                             COMCSYS
          EQ     WNB2                                                    COMCSYS
 MSG      SPACE  4,10                                                    COMCSYS
***       MSG - SEND MESSAGE.                                            COMCSYS
*                                                                        COMCSYS
*         G. R. MANSFIELD.   70/09/12.                                   COMCSYS
*                                                                        COMCSYS
*         MSG FORMATS AND ISSUES A SYSTEM REQUEST TO SEND A DAYFILE      COMCSYS
*         MESSAGE.                                                       COMCSYS
 MSG      SPACE  4,10                                                    COMCSYS
***       ENTRY  (X1) = ADDRESS OF DATA.                                 COMCSYS
*                (X6) = MESSAGE OPTION(S).                               COMCSYS
*                            BIT 16 = AUTO RECALL (IF ON)                COMCSYS
*                            BITS 11 - 0 = MESSAGE OPTION CODE.          COMCSYS
*                                                                        COMCSYS
*         EXIT   RETURN WHEN OPERATION COMPLETE.                         COMCSYS
*                                                                        COMCSYS
*         USES   A - 1, 6.                                               COMCSYS
*         USES   X - 1, 6.                                               COMCSYS
*                                                                        COMCSYS
*         MACROS SYSTEM.
                                                                         COMCSYS
                                                                         COMCSYS
 MSG1     SX6    3RMSG*2     FORM MESSAGE REQUEST                        COMCSYS
          BX6    X6+X1                                                   COMCSYS
          LX6    40-59                                                   COMCSYS
          SYSTEM             PROCESS REQUEST                             COMCSYS
                                                                         COMCSYS
 MSG=     SUBR               ENTRY/EXIT                                  COMCSYS
          SX6    X6          THROW AWAY BIT 22 (OLD RECALL BIT)          COMCSYS
          LX6    24          MERGE OPTION(S) AND ADDRESS                 COMCSYS
          BX1    X6+X1                                                   COMCSYS
          SX6    X1                                                      COMCSYS
          LX1    59-40                                                   COMCSYS
          PL     X1,MSG1     IF NO AUTO RECALL                           COMCSYS
          LX1    40-59                                                   COMCSYS
          BX1    X1-X6       REMOVE MESSAGE ADDRESS                      COMCSYS
          LX6    30                                                      COMCSYS
          SA6    MSGA        STORE STATUS WORD                           COMCSYS
          SX6    A6                                                      COMCSYS
          IX1    X1+X6       SET INDIRECT ADDRESS                        COMCSYS
          LX1    59-40                                                   COMCSYS
          EQ     MSG1                                                    COMCSYS
                                                                         COMCSYS
 MSGA     VFD    30/**,30/0  STATUS WORD FOR MESSAGE WITH AUTO RECALL    COMCSYS
 SYS      SPACE  4,10                                                    COMCSYS
          BASE   *                                                       COMCSYS
          CODE   *                                                       COMCSYS
 QUAL$    IF     -DEF,QUAL$                                              COMCSYS
          QUAL   *                                                       COMCSYS
 SYS=     EQU    /COMCSYS/SYS=                                           COMCSYS
 RCL=     EQU    /COMCSYS/RCL=                                           COMCSYS
 WNB=     EQU    /COMCSYS/WNB=                                           COMCSYS
 MSG=     EQU    /COMCSYS/MSG=                                           COMCSYS
 QUAL$    ENDIF                                                          COMCSYS
 SYS      ENDX                                                           COMCSYS
