home *** CD-ROM | disk | FTP | other *** search
- type
- Node_t = unknown 14,
-
- MemChunk_t = struct {
- *MemChunk_t mc_Next;
- ulong mc_Bytes;
- },
-
- MemHeader_t = struct {
- Node_t mh_Node;
- uint mh_Attributes;
- *MemChunk_t mh_First;
- *byte mh_Lower;
- *byte mh_Upper;
- ulong mh_Free;
- },
-
- MemEntry_t = struct {
- union {
- ulong meu_Reqs;
- *byte meu_Addr;
- } me_Un;
- ulong me_Length;
- },
-
- MemList_t = struct {
- Node_t ml_Node;
- uint ml_NumEntries;
- [1]MemEntry_t ml_ME;
- };
-
- uint
- MEMF_PUBLIC = 1 << 0,
- MEMF_CHIP = 1 << 1,
- MEMF_FAST = 1 << 2;
-
- ulong
- MEMF_CLEAR = 1 << 16,
- MEMF_LARGEST = 1 << 17;
-
- uint
- MEM_BLOCKSIZE = 8,
- MEM_BLOCKMASK = 7;
-
- extern
- AddMemList(ulong size, attributes; long pri; *byte base; *char name)bool,
- AllocAbs(ulong byteSize, location)*byte,
- Allocate(*MemHeader_t freeList; ulong byteSize)*byte,
- AllocEntry(*MemList_t needed)*MemList_t,
- AllocMem(ulong byteSize, requirements)*byte,
- AvailMem(ulong requirements)ulong,
- CopyMem(*byte source, dest; ulong size)void,
- CopyMemQuick(*ulong source, dest; ulong byteSize)void,
- Deallocate(*MemHeader_t freeList; *byte memoryBlock; ulong byteSize)void,
- FreeEntry(*MemList_t memList)void,
- FreeMem(*byte memoryBlock; ulong byteSize)void,
- InitStruct(*byte initTable, memory; ulong size)void,
- TypeOfMem(*byte address)uint;
-