*DECK CMM$SLF 
          IDENT  S$CMSLF
          TITLE  S$CMSLF -  SHRINK AT LWA A FIXED BLOCK 
          COMMENT  SHRINK AT LWA A FIXED BLOCK
          LIST   F
          SPACE  4
**        S$CMSLF -  SHRINK AT LWA A FIXED BLOCK
* 
*     CALLING SEQUENCE- 
*         S$CMSLF(ARRAY, UNUSED); 
* 
*     GIVEN-
*         ARRAY = ADDRESS OF AN ARRAY WHOSE FIRST WORD STARTS THE FIXED BLOCK.
*         UNUSED = NUMBER OF UNUSED WORDS AT THE END OF THE FIXED BLOCK TO BE 
*          DELETED FROM THE BLOCK.
* 
*     DOES- 
*         SHRINKS THE FIXED BLOCK BY *UNUSED* WORDS FROM LWA. 
  
  
          ENTRY  S$CMSLF
 S$CMSLF  SUBR
  
*     WRITE DYNAMIC MEMORY MAP (OPTION) 
  
          IFMAP              IF DYNAMIC MEMORY MAP WANTED,
            SX6    A1          SAVE ADDRESS OF ACTUAL PARAMETER LIST
            SA6    SAVEA1 
            SA1    =0          POINT TO ZERO-WORD APLIST TERMINATOR 
            CALL   MAP         WRITE MAP TO SPYLIST 
            SA1    SAVEA1    RESTORE ADDRESS OF ACTUAL PARAMETER LIST 
            SA1    X1 
            ENDIF 
          SA2    A1+1        ADDRESS OF *UNUSED*
          SA2    X2          VALUE OF *UNUSED*
          CALL   CMM.SLF     SHRINK THE BLOCK 
          EXIT
  
  
          IFMAP              IF DYNAMIC MEMORY MAP WANTED,
 SAVEA1     BSS    1           ADDRESS OF ACTUAL PARAMETER LIST 
            ENDIF 
          SPACE  4
          END 
