DEFINITION MODULE Storage;

(* Product: Incremental Storage Manager

   Version: 1.0

   Author:
        Daniel B. Hankins
        143 Montgomery Street
        Poughkeepsie, NY 12601
        dan-hankins@cup.portal.com

   Creation Date: 1989

   Release  Date: November 21, 1989

   Notice of Intellectual Property:
        This material is *NOT COPYRIGHTED*.  By this notice, I hereby place
   this program and all its parts in the public domain, under the definitions
   and restrictions of United States law.

   History of Revisions:
        None yet.
*)

FROM SYSTEM IMPORT ADDRESS;

PROCEDURE ALLOCATE(VAR addr: ADDRESS; amount: LONGCARD);
(* allocate storage from the operating system.

   addr: returns where the memory portion was allocated, word aligned.
         returns NIL if no block of the requisite size could be found.
   amount: the number of bytes to allocate, will be a word multiple.
*)

PROCEDURE DEALLOCATE(VAR addr: ADDRESS; amount: LONGCARD);
(* return storage to the operating system.

   addr: the portion of memory returned by ALLOCATE.
   amount: the size of the block given to ALLOCATE.
*)

END Storage.
