home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Misc / M2V11-1.LHA / modula / amiga / NonVolatile.def < prev    next >
Encoding:
Text File  |  1993-10-28  |  1.5 KB  |  64 lines

  1. DEFINITION FOR C MODULE NonVolatile ;
  2.  
  3. FROM SYSTEM IMPORT STRING, ADDRESS, LONGSET ;
  4. FROM Exec   IMPORT MinNode, MinListPtr ;
  5.  
  6. TYPE
  7.   NVInfoPtr  = POINTER TO NVInfo ;
  8.   NVEntryPtr = POINTER TO NVEntry ;
  9.  
  10.   NVInfo = RECORD
  11.     nvi_MaxStorage  : LONGINT ;
  12.     nvi_FreeStorage : LONGINT ;
  13.   END ;
  14.  
  15.   NVEntry = RECORD
  16.     nve_Node : MinNode ;
  17.     nve_Name : STRING ;
  18.     nve_Size : LONGINT ;
  19.     nve_Protection : LONGSET ;
  20.   END ;
  21.  
  22. (* bit definitions for mask in SetNVProtection().  Also used for *)
  23. (* NVEntry.nve_Protection.                     *)
  24.  
  25. CONST
  26.   NVEB_DELETE    =  0 ;
  27.   NVEB_APPNAME    = 31 ;
  28.  
  29.   NVEF_DELETE    = {NVEB_DELETE} ;
  30.   NVEF_APPNAME    = {NVEB_APPNAME} ;
  31.  
  32.  
  33. CONST
  34.   (* errors from StoreNV() *)
  35.   NVERR_BADNAME        = 1 ;
  36.   NVERR_WRITEPROT    = 2 ;
  37.   NVERR_FAIL        = 3 ;
  38.   NVERR_FATAL        = 4 ;
  39.  
  40. (*--- functions in V40 or higher (Release 3.1) ---*)
  41.  
  42. PROCEDURE GetCopyNV( ppName , itemName : STRING ;
  43.              killRequesters    : BOOLEAN ) : ADDRESS ;
  44.  
  45. PROCEDURE FreeNVData( data : ADDRESS ) ;
  46.  
  47. PROCEDURE StoreNV( appName , itemName : STRING ;
  48.            data      : ADDRESS ;
  49.            length : LONGINT ;
  50.            killRequesters : BOOLEAN ) : CARDINAL ;
  51.  
  52. PROCEDURE DeleteNV( appName , itemName : STRING ;
  53.             killRequesters : BOOLEAN ) : BOOLEAN ;
  54.  
  55. PROCEDURE GetNVInfo( killRequesters : BOOLEAN ) : NVInfoPtr ;
  56.  
  57. PROCEDURE GetNVList( appName : STRING ; killRequesters : BOOLEAN ) : MinListPtr;
  58.  
  59. PROCEDURE SetNVProtection( appName , itemName : STRING ;
  60.                mask : LONGSET ;
  61.                killRequesters : BOOLEAN ) : BOOLEAN ;
  62.  
  63. END NonVolatile.
  64.