| 
 |  | 
                         Get or Set Handle Attributes                         
  
    | 
       Input  | 
    
       Output  | 
   
  
    | 
       AX  | 
    52h | 
    00h=Get 01h=Set | 
    Error
      Code | 
    Attribute (1/2) | 
    AX | 
   
  
    | 
       BX  | 
     New
      Attribute (see table) | 
      | 
      | 
    BX | 
   
  
    | 
       CX  | 
      | 
      | 
      | 
      | 
    CX | 
   
  
    | 
       DX  | 
     EMM
      Handle | 
      | 
      | 
    DX | 
   
 Attributes:    00h = Make Handle Volatile
               01h = Make Handle Non-Volatile
               02h = Get Attribute Capability
     Notes:
     *  A volatile handle attribute instructs the memory  manager to
        deallocate both the handle and  the  pages  allocated  to it
        after  a  warm  boot.  If  all  handles  have  the  volatile
        attribute (default) at warm boot the  handle  directory will
        be empty and all expanded memory will be initialized to zero
        immediately after a warm boot.
     *  If the  handle's attribute has been set to non-volatile, the
        handle, its name (if it is assigned one),  and  the contents
        of  the pages allocated to the  handle  are  all  maintained
        after a warm boot.
     *  Most PCs disable  RAM  refresh  signals  for  a considerable
        period during a warm boot. This can corrupt some of the data
        in memory boards.  Non-  volatile handles should not be used
        unless it is definitely known that the EMS board will retain
        proper function through a warm boot.
     *  Subfunction 02h  can be used to determine whether the memory
        manager can support the non-volatile attribute.
     *  Currently  the  only  attribute  supported  is  non-volatile
        handles and pages, indicated by the least significant bit. |