*DECK FFSUCLR 
      PROC FFSUCLR (ADDR, NUM); 
*CALL COPYRITE
# TITLE FFSUCLR - UTILITY TO CLEAR AN AREA OF MEMORY.                  #
  
      BEGIN                            # FFSUCLR                       #
# 
**    FFSUCLR  UTILITY TO CLEAR AN AREA OF MEMORY.
* 
*     A. LIM                           88/01/15 
* 
*     THIS PROCEDURE CLEARS A SPECIFIED NUMBER OF WORDS OF MEMORY 
*     STARTING AT THE SPECIFIED LOCATION. 
* 
*     PROC FFSUCLR
* 
*     ENTRY    ADDR = STARTING ADDRESS TO CLEAR.
*              NUM  = NUMBER OF WORDS TO CLEAR. 
* 
*     EXIT     SPECIFIED AREA OF MEMORY CLEARED (SET TO ZEROES).
* 
# 
  
  
      ITEM ADDR          U;            # STARTING ADDRESS TO CLEAR     #
      ITEM NUM           I;            # NUMBER OF WORDS TO CLEAR      #
  
      ITEM I             I;            # LOOP INDUCTION VARIABLE       #
  
      BASED ARRAY MEMPTR[00:00] S(1);  # MEMORY ADDRESS POINTER        #
        BEGIN 
        ITEM MEM$WORD    U(00,00,60); 
        END 
      CONTROL EJECT;
  
#     START MAIN PROCEDURE                                             #
  
      P<MEMPTR> = ADDR;                # BASE MEMORY ADDRESS POINTER   #
  
      FOR I = 0 STEP 1                 # LOOP THRU ALL WORDS TO CLEAR  #
        WHILE I LS NUM
      DO
        BEGIN 
        MEM$WORD[I] = 0;               # CLEAR WORD OF MEMORY          #
        END;
  
      RETURN;                          # RETURN TO CALLER              #
  
      END                              # FFSUCLR                       #
  
      TERM
