*DECK     CSSDOS
USETEXT TEXTSS; 
USETEXT TEXTCS; 
USETEXT TXTSMCS;
USETEXT TXTSUSS;
USETEXT TXTAPSS;
PROC CSSDOS;
# TITLE CSSDOS - DISPATCH OPERATOR SUPERVISION SMS. # 
  
      BEGIN # CSSDOS #
  
# 
**    CSSDOS - DISPATCH OPERATOR SUPERVISION SMS. 
* 
*     C. BRION          82/05/19. 
* 
*     PROC CSSDOS 
* 
*     ENTRY:  
* 
*       THERE EXISTS AT LEAST ONE OPERATOR SUPERVISION SM IN THE
*       OPERATOR SUPERVISION QUEUE. 
* 
*     EXIT: 
* 
*       THE OPERATOR SUPERVISION QUEUE WILLBE EXHAUSTED OF ENTRIES. 
* 
*       THE APPROPRIATE SM PROCESS WILL HAVE BEEN CALLED IN ORDER 
*       TO PROCESS THE SM.
* 
# 
  
# 
****  PROC CSSDOS XREF LIST.
# 
  
      XREF
  
        BEGIN 
        PROC SSTRQE;                     # SS-REMOVE QUEUE ENTRY #
        PROC CSSCHB;                     # COMPLETE HOST BROADCAST #
        PROC CSSCTR;                     # COMPLETE TEST REQUEST #
        PROC CSSIDC;                     # ISSUE DEBUG COMMAND #
        PROC CSSCSR;                     # COMPLETE STATUS REQ #
        END 
  
# 
****
# 
  
      ITEM I            U;               # LOOP INDUCTION VAR # 
  
  
  
  
  
# 
*     MAIN PROCEDURE START
# 
  
# 
*     THE MAIN LOOP OF THIS PROCEDURE WILL REMOVE QUEUE ENTRIES FROM
*     THE OPERATOR SUPERVISION SM QUEUE (OSQ) UNTIL ALL ENTRIES HAVE
*     BEEN REMOVED. 
*     THE PFC AND SFC OF THE INCOMING SM DICTATES WHICH OF FOUR PRO-
*     CEDURES IS CALLED TO PROCESS THE SM.
* 
*     CURRENTLY, THE HOST BROADCAST RESPONSES (NORMAL AND ABNORMAL) 
*     ARE PROCESSED BY CSSCHB. THE OVERLAY LOAD RESPONSES ARE PRO-
*     CESSED BY CSSCTR. THE STATUS RESPONSES BY CSSCSR. THE HOP 
*     DEBUG SMS BY CSSIDC.
# 
  
      FOR I = 0 WHILE OSQL NQ 0 
      DO
  
        BEGIN 
        WCB$WORD[0] = 0;                 # CLEAR WORD COUNT WORD #
        ABHWORD[0] = 0;                  # CLEAR ABH WORD # 
  
        SSTRQE(P<OSQ>,WCBUF[0],ABH[0],CSSM[0]); 
  
        IF PFC[0] EQ MSG                 # HOST BROADCAST SM #
        THEN
  
          CSSCHB; 
  
        ELSE IF (PFC[0] EQ OLD           # OVERLAY REQ RESPONSE SM #
              AND SFC[0] EQ IN) 
        THEN
  
          CSSCTR; 
  
        ELSE IF (PFC[0] EQ HOP           # HOP DEBUG SM # 
              AND (SFC[0] EQ DU 
               OR SFC[0] EQ TRACE 
               OR SFC[0] EQ NOTR
               OR SFC[0] EQ REL 
               OR SFC[0] EQ RS
               OR SFC[0] EQ DB
               OR SFC[0] EQ DE))
        THEN
  
          CSSIDC; 
  
        ELSE                             # MUST BE STATUS COMPLETE #
          CSSCSR; 
  
  
        END # FOR I LOOP #
  
      END #CSSDOS#
  
 TERM 
