*DECK KHOPMSG 
USETEXT NIPDEF
USETEXT DISTAIL 
USETEXT KDIS
 PROC KHOPMSG(MSGFWA);       # ISSUE K DISPLAY HOP MESSAGE             #
  
 STARTIMS;
 STOPIMS; 
  
# 
      FORMAL PARAMETERS 
# 
      ITEM MSGFWA;           # FWA OF HOP ALERT MESSAGE                #
# 
      EXTERNAL REFERENCES 
# 
      XREF
        BEGIN 
        PROC DAYTIME;        # GET TIME OF DAY                         #
        PROC MGETS;          # GET BUFFER                              #
        PROC MRELS;          # RELEASE BUFFER                          #
        PROC XTRACE;         # TRACE CALL                              #
        END 
# 
      INTERNAL VARIABLES
# 
      ITEM BUFADDR;          # FWA OF HOP MESSAGE BUFFER               #
      ITEM TIMEOFDAY;        # TIME OF DAY IN DISPLAY CODE             #
  
      DEF L$HOPMSG   #7#;    # LENGTH OF HOP MESSAGE                   #
      BASED ARRAY HOPMSG [0:0] S(L$HOPMSG); 
        BEGIN                # HOP MESSAGE FORMAT                      #
        ITEM HOPMS$MSG  C(00,00,60);
        ITEM HOPMS$TIME U(00,00,60); # TIME OF DAY HH.MM.SS            #
        ITEM HOPMS$TEXT C(01,00,50); # HOP MESSAGE TEXT                #
        ITEM HOPMS$KPTR U(06,00,60); # K DISPLAY POINTER WORD          #
        END 
  
      BASED ARRAY MSGBLK [0:0] S(5);
        BEGIN                # HOP MESSAGE                             #
        ITEM MSGTEXT    C(00,00,50);
        END 
  
      CONTROL EJECT;
  
      BEGIN # KHOPMSG # 
  
  
      CONTROL IFEQ DEBUG,1; 
      XTRACE("KHOPM");       # TRACE CALL                              #
      CONTROL FI; 
  
      DAYTIME(TIMEOFDAY);    # GET TIME OF DAY                         #
      P<MSGBLK> = MSGFWA;    # FWA OF HOP ALERT MESSAGE                #
      MGETS(L$HOPMSG+BLKHSIZE,BUFADDR,TRUE); # BUFFER FOR HOP MSG      #
      P<HOPMSG> = BUFADDR+BLKHSIZE; # FWA OF HOP MESSAGE TO DISPLAY    #
      HOPMS$TIME[0] = TIMEOFDAY; # SET TIME STAMP                      #
      HOPMS$TEXT[0] = MSGTEXT[0]; # SET HOP MESSAGE TEXT               #
      KDTLHOPM[0] = HOPMS$MSG[0]; # DISPLAY HOP MESSAGE                #
      MRELS(BUFADDR); # RELEASE HOP MESSAGE BUFFER                     #
  
      IF NOT KDVW[0]
      THEN                   # K DISPLAY NOT BEING VIEWED              #
        KDALERT[0] = TRUE;   # SET OPERATOR ALERT FLAG                 #
  
      RETURN; 
      END # KHOPMSG # 
      TERM
