*DECK SSSESP USETEXT TEXTSS PROC SSSESP (ACTIVE); # TITLE SSSESP - EXECUTE STATUS PROGRAM. # BEGIN # SSSESP # # ** SSSESP - EXECUTE STATUS PROGRAM. * * S. H. FISCHER. 81/08/31. * * THIS ROUTINE CHECKS EACH *SWLE* FOR FIRED (NEED TO EXECUTE) * CONDITION, IF ONE HAS FIRED THEN IT IS EXECUTED. ONLY ONE *SWLE* * WILL BE EXECUTED FOR EACH CALL. * * ENTRY NONE. * * EXIT ACTIVE = TRUE IF ONE *SWLE* WAS EXECUTED. * * * METHOD FOR EACH *SWLE* COMPARE CURRENT CONTENTS WITH INITIAL * CONTENTS FOR THE PAIR OF ADDRESSED ASSOCIATED WITH * EACH ENTRY. IF THEY DIFFER THE ROUTINE ADDRESS * IN THE ENTRY MUST BE CALLED. UPON RETURN NEW * VALUES HAVE BEEN INSERTED INTO THE ENTRY BY THE * CALLED ROUTINE. * * # # **** PROC SSSESP XREF LIST. # XREF BEGIN PROC SSSCRR; # CALL REQUESTED ROUTINE # END # **** # ITEM ACTIVE B; ITEM I ; BASED ARRAY TESTW[00:00] S(1); ITEM TESTW$WORD U(00,00,60); ACTIVE = FALSE; FOR I = 0 STEP 1 UNTIL SWTA - 1 DO BEGIN P = SWT$ADDR1[I]; IF TESTW$WORD[0] NQ SWT$INIT1[I] THEN BEGIN ACTIVE = TRUE; SSSCRR (SWT[I]); RETURN; END IF SWT$ADDR2[I] NQ 0 THEN BEGIN P = SWT$ADDR2[I]; IF TESTW$WORD[0] NQ SWT$INIT2[I] THEN BEGIN ACTIVE = TRUE; SSSCRR (SWT[I]); RETURN; END END END END # SSSESP # TERM