*DECK,TIMADT
USETEXT COMCBEG 
USETEXT COMQDEF 
FUNC TIMADT ((OLDTIME), (BASE)) U;
# TITLE   TIMADT - ADJUST TIMER  #
  
      BEGIN  # TIMADT # 
  
# 
**    TIMADT   - ADJUST TIMER.
* 
* 
*     FUNC TIMADT ((OLDTIME), (BASE)) 
* 
*     ENTRY    - OLDTIME = OLD VALUE OF TIMER,
*                BASE = BASE RTIME, 
*                TIMT = CURRENT RTIME.
* 
*     EXIT     - TIMADT = ADJUSTED TIME 
* 
* 
# 
  
      ITEM OLDTIME    I;           # OLD TIMER VALUE #
      ITEM BASE       I;           # OLD BASE RTIME # 
  
# 
****  XREF
# 
  
# 
****  XREF END
# 
  
      IF OLDTIME NE 0 
      THEN
        BEGIN 
        BASE = TIMT - BASE; 
        IF BASE LT 0
        THEN
          BEGIN 
          BASE = BASE + 2**18;
          END 
  
        OLDTIME = OLDTIME - BASE; 
        IF OLDTIME LT 0 
        THEN
          BEGIN 
          OLDTIME = 0;
          END 
  
        END 
  
      TIMADT = OLDTIME; 
  
      END  # TIMADT # 
    TERM
