*DECK CSEDEQ USETEXT TEXTCS USETEXT TEXTSS USETEXT TXTAPSS USETEXT TXTSMCS PROC CSEDEQ; # TITLE - DISPATCH EVENT QUEUE ENTRY. # BEGIN # ** CSEDEQ - DISPATCH EVENT QUEUE ENTRY. * * D.K. ENDO 82/03/12 * * THIS PROCEDURE REMOVES ENTRIES FROM THE EVENT QUEUE AND CALLS THE * APPROPRIATE PROC TO PROCESS THE ENTRY. * * PROC CSEDEQ * * ENTRY 1. THE EVENT QUEUE WITH ONE OR MORE ENTRIES. * * EXIT 2. EMPTY EVENT QUEUE. * # # **** PROC CSEDEQ - XREF LIST BEGINS. # XREF BEGIN PROC CSESAM; # SEND ALARM (AND ERROR LOG) MESSAGE # PROC CSESCM; # SEND (OPERATOR) CONTROL MESSAGE # PROC CSESCS; # SEND COUPLER STATUS # PROC CSESCT; # SEND COMMAND TEXT # PROC CSESDA; # SEND DI ACCOUNTING DATA # PROC CSESDE; # SEND DIAGNOSTICS END MESSAGE # PROC CSESDM; # SEND (STATUS) DONE MESSAGE # PROC CSESDS; # SEND DEBUG SIGNAL # PROC CSESEC; # SEND (DISABLED) ELEMENT COUNT # PROC CSESES; # SEND ELEMENT-S STATISTICS # PROC CSESIM; # SEND IDLE-DOWN MESSAGE # PROC CSESLL; # SEND LOGICAL LINK STATUS # PROC CSESLS; # SEND LINE STATUS # PROC CSESNS; # SEND NPU STATUS # PROC CSESOD; # SEND ONLINE DIAGNOSTIC # PROC CSESOM; # SEND OPERATOR MESSAGE # PROC CSESSM; # SEND SUPERVISION MESSAGE # PROC CSESTR; # SEND TRUNK STATUS # PROC CSESTS; # SEND TERMINAL STATUS # PROC CSESVC; # SEND ARCHETYPE SVC STATUS # PROC SSTRQE; # REMOVE QUEUE ENTRY # END # **** # ITEM I; # LOOP INDUCTION VARIABLE # ITEM J; # LOOP INDUCTION VARIABLE # CONTROL EJECT; # # # CSEDEQ CODE BEGINS HERE # # # # * FOR EACH ENTRY IN THE EVENT QUEUE, ROUTE IT TO THE APPROPRIATE * ROUTINE TO PROCESS THE ENTRY. # FOR I=0 WHILE EVQL GR 0 DO BEGIN FOR J=0 STEP 1 UNTIL MSBFAPL - 1 DO BEGIN MSG$WORD[J] = 0; END SSTRQE(P,WCBUF[0],ABH[0],CSSM[0]); IF WCB$SMID[0] EQ SMID"STUTE" OR WCB$SMID[0] EQ SMID"STUTEN" OR WCB$SMID[0] EQ SMID"MSGTEA" THEN BEGIN CSESTS; END ELSE IF WCB$SMID[0] EQ SMID"STULI" OR WCB$SMID[0] EQ SMID"STULIN" OR WCB$SMID[0] EQ SMID"MSGLIA" THEN BEGIN CSESLS; END ELSE IF WCB$SMID[0] EQ SMID"STUNP" OR WCB$SMID[0] EQ SMID"STUNPN" THEN BEGIN CSESNS; END ELSE IF WCB$SMID[0] EQ SMID"STULL" OR WCB$SMID[0] EQ SMID"STULLN" OR WCB$SMID[0] EQ SMID"MSGLLA" THEN BEGIN CSESLL; END ELSE IF WCB$SMID[0] EQ SMID"STUTR" OR WCB$SMID[0] EQ SMID"STUTRN" THEN BEGIN CSESTR; END ELSE IF WCB$SMID[0] EQ SMID"STUCP" OR WCB$SMID[0] EQ SMID"STUCPN" THEN BEGIN CSESCS; END ELSE IF WCB$SMID[0] EQ SMID"STUVC" OR WCB$SMID[0] EQ SMID"STUVCN" THEN BEGIN CSESVC; END ELSE IF WCB$SMID[0] EQ SMID"STUFIN" THEN BEGIN CSESDM; END ELSE IF WCB$SMID[0] EQ SMID"CMDTXT" THEN BEGIN CSESCT; END ELSE IF WCB$SMID[0] EQ SMID"OLDDT" THEN BEGIN CSESOD; END ELSE IF WCB$SMID[0] EQ SMID"OLDINN" OR WCB$SMID[0] EQ SMID"OLDINA" THEN BEGIN CSESDE; END ELSE IF WCB$SMID[0] EQ SMID"SUPINN" OR WCB$SMID[0] EQ SMID"SUPCB" OR WCB$SMID[0] EQ SMID"SUPINA" OR WCB$SMID[0] EQ SMID"SUPGO" OR WCB$SMID[0] EQ SMID"SUPGOI" OR WCB$SMID[0] EQ SMID"SUPINUN" THEN BEGIN CSESSM; END ELSE IF WCB$SMID[0] EQ SMID"SHUINS" THEN BEGIN CSESIM; END ELSE IF WCB$SMID[0] EQ SMID"CTRLOFF" OR WCB$SMID[0] EQ SMID"CTRLON" THEN BEGIN CSESCM; END ELSE IF WCB$SMID[0] EQ SMID"ALMOP" OR WCB$SMID[0] EQ SMID"LOGER" THEN BEGIN CSESAM; END ELSE IF WCB$SMID[0] EQ SMID"CDITE" OR WCB$SMID[0] EQ SMID"CDILI" OR WCB$SMID[0] EQ SMID"CDILL" OR WCB$SMID[0] EQ SMID"CDITR" THEN BEGIN CSESEC; END ELSE IF WCB$SMID[0] EQ SMID"MSGOP" THEN BEGIN CSESOM; END ELSE IF WCB$SMID[0] EQ SMID"STINP" OR WCB$SMID[0] EQ SMID"STITR" OR WCB$SMID[0] EQ SMID"STILI" THEN BEGIN CSESES; END ELSE IF WCB$SMID[0] EQ SMID"STIAP" OR WCB$SMID[0] EQ SMID"STITE" THEN BEGIN CSESDA; END ELSE # * IF THIS SM IS NOT RECOGNIZABLE OR IS AN ERR/LGL SM, THEN SEND AN * UNSOLICITED STATUS REPORT TO THE HOP AND THE CONTROLLING NOP, AND * MAKE AN ENTRY IN THE NETWORK LOG FILE TO RECORD THE ANOMALY. # BEGIN CSESDS; END END # FOR LOOP # RETURN; # **** RETURN **** # END # CSEDEQ # TERM