*DECK KSTTUPD 
USETEXT NIPDEF
USETEXT SYSTIME 
USETEXT KDIS
USETEXT KHDRX 
USETEXT NBT 
PRGM KSTTUPD ;    #  UPDATE STATISTICS IN K-DISPLAY                    #
 STARTIMS ; 
 #
*1DC  KSTTUPD 
* 
*        1. PROC NAME      AUTHOR                DATE 
*           KSTTUPD        A. BEN-ARTZI          82/08/04 
* 
*        2.FUNCTIONAL DESCRIPTION 
* 
*          UPDATE THE STATUS DISPLAY PERIODICALLY WITH STATISTICS INFO
* 
*        3.METHOD USED
* 
*          SCAN THE NBT AND FIND ACTIVE ENTRIES 
*          UPDATE THE K-DISPLAY WITH THE DIFFERANCE VALUES OF STAT FIELDS 
*          EQUATE THE VALUE FIELDS FOR NEXT COUNTING
* 
*        4.ENTRY PARAMETERS 
*          NONE 
* 
*        5.OUTPUT PARAMETERS
*          NONE 
* 
*        6.COMDECKS AND SYMPL TEXTS USED
* 
*           NIPDEF     KDIS      NBT     OPSIZE 
* 
*        7.ROUTINES CALLED
* 
*          XTRACE - TRACE THE CALL FOR DEBUG
*          KPUT   - DYNAMIC UPDATE OF K-DISPLAY 
* 
*        8.DAYFILE MESSAGES AND OTHER INFO
* 
*          THIS IS A PRIMARY OVERLAY LOADED BY XEXEC
*          W A R N I N G-THIS PROGRAM CANNOT EXCEED THE PRIMARY 
*CALL OPSIZE
* 
 #
 STOPIMS ;
# 
      EXTERNAL REFERENCES 
# 
   XREF 
      BEGIN 
      LABEL RJMAIN ;
      PROC KPUT    ;
      PROC XTRACE  ;
      END 
# 
      INTERNAL VARIABLES
# 
      ITEM K ;  # INDEX TO NBT ENTRIES                                 #
      ITEM KN ; # INDEX INTO STATUS DISPLAY BUFFER                     #
      ITEM KE ; # INDEX INTO STATUS DISPLAY BUFFER  ( EST BIAS )       #
  
      BEGIN 
        CONTROL IFEQ DEBUG,1 ;
          XTRACE("KSTUP") ; 
        CONTROL FI           ;
  
        FOR K = 0 STEP NBTFETNO UNTIL NBTMAXID
        DO
        BEGIN 
        IF NBTIUF[K]
          AND NBTKNDX[K] NQ 0 
          AND NBTKNDX[K] GQ KDESTST[0]
          AND NBTKNDX[K] LQ KDESTND[0]
        THEN
          BEGIN 
          IF KDAPPST[0] EQ 0 THEN 
             KN = NBTKNDX[K] - KDESTST[0];
          ELSE
             KN = NBTKNDX[K] + KDAPPND[0] - KDAPPST[0]; 
          KE = KHDRNP[0] ;
          KPUT(KE,KN,KPESCPS, 
               (NBTIVTCC[K+2]-NBTIVTLS[K+2]) ) ;
          KPUT(KE,KN,KPESPRS, 
               (NBTPRUCC[K+3]-NBTPRULS[K+3]) ) ;
          KPUT(KE,KN,KPESREJ,NBTNIREJ[K+4]);
          NBTIVTLS[K+2] = NBTIVTCC[K+2]        ;
          NBTPRULS[K+3] = NBTPRUCC[K+3]        ;
          END 
        END 
  
      GOTO RJMAIN ; 
      END 
TERM
