home *** CD-ROM | disk | FTP | other *** search
- /*
- */
-
- struct VM_FreeList {
- struct VM_FreeList *VM_Next ;
- ULONG VM_Offset ;
- ULONG VM_Length ;
- } ;
-
- #define VM_INUSE (1 << 0)
- #define VM_RESERVED (1 << 1)
- #define VM_READONLY (1 << 2)
-
- struct VM_Lock {
- struct MinNode VM_Node ;
- struct VM_Construct *VM_C ;
- struct VM_FreeList *VM_FL ;
- ULONG VM_Flags ;
- void *VM_Addr ;
- } ;
-
- struct VM_Construct {
- BPTR VM_File ;
- char *VM_FileName ;
- ULONG VM_Length ;
- ULONG VM_NumLocks ;
- struct MinList VM_LockList ;
- struct VM_FreeList *VM_FreeList ;
- } ;
-
- extern struct VM_Construct *VM_Open(char *VM_Filename) ;
- extern ULONG VM_Close(struct VM_Construct *VM_C) ;
- extern struct VM_FreeList *VM_Allocate(struct VM_FreeList **VM_F, long Size) ;
- extern void VM_Free(struct VM_FreeList **VM_F, struct VM_FreeList *VM_A) ;
- extern void *VM_Lock(struct VM_Lock *VM_L) ;
- extern ULONG VM_FlushLockList (struct VM_Construct *VM_C) ;
- extern ULONG VM_FlushLock (struct VM_Lock *VM_L) ;
- extern ULONG VM_UnLock(struct VM_Lock *VM_L) ;
- extern struct VM_Lock *VM_AllocMem(struct VM_Construct *VM_C, LONG Size) ;
- extern ULONG VM_FreeMem(struct VM_Lock *VM_L) ;
- extern ULONG VM_ReadLock(struct VM_Lock *VM_L) ;
- extern void VM_ReadOnly(struct VM_Lock *VM_L) ;
- extern void VM_FlushFreeList(struct VM_FreeList **VM_F) ;
-