*DECK SM5OWN4 
          PROC SM5OWN4(PROCA);
#**       SM5OWN4 -  SET RAW PARAMETER OF OWN4                         #
#                                                                      #
#     CALLING SEQUENCE-                                                #
#         CALL SM5OWN4(PROCA)                                          #
#                                                                      #
#     GIVEN-                                                           #
#         PROCA = ADDRESS OF THE OWNCODE PROCEDURE TO BE EXECUTED.     #
#                                                                      #
#     DOES-                                                            #
#         IF CALLED IN THE WRONG ORDER,                                #
#             ISSUE A DIAGNOSTIC, AND                                  #
#             RETURN.                                                  #
#         SAVE RAW PARAMETER OF TYPE "OWN4".                           #
  
  
          BEGIN 
          ITEM  PROCA        I;        # ADD. OWNCODE PROCEDURE        #
  
          XREF
              BEGIN 
              PROC  S$ERROR;           # HANDLE A USER ERROR           #
              FUNC  S$INSEQ  B;        # TRUE IFF CALL IN SEQUENCE     #
              PROC  S$SVREL;           # SAVE RAW PARAM. FROM RELOC.   #
              END 
  
  
*CALL A 
  
*CALL E$
  
*CALL RP$ 
  
*CALL SQ$ 
  
CONTROL DISJOINT; 
  
CONTROL INERT;
  
CONTROL EJECT;
  
  
#     IF CALLED IN THE WRONG ORDER,                                    #
#         ISSUE A DIAGNOSTIC, AND                                      #
#         RETURN.                                                      #
  
          IF NOT S$INSEQ(SQ$"SM5OWN4")  THEN
              BEGIN 
              S$ERROR(E$110);          # CALL OUT OF SEQUENCE          #
#***#         RETURN; 
              END 
  
#     SET ADDRESS OF OWNCODE PROCEDURE TO BE EXECUTED.                 #
  
          RP$TYPE = RP$T"OWN4"; 
          RP$VALUE = LOC(PROCA);
          S$SVREL(RP$); 
  
          END # SM5OWN4 # 
          TERM
