
                           UMB_HEAP.TXT
                   Documentation for UMB_HEAP.PAS
         (C) Copyright 1992, Brian D. Webb & P-Machinery
                    Release 2.0, October 1, 1992


UMB_HEAP is a programing tool for extending the Turbo Pascal 6.0
dynamic heap into Upper Memory Blocks (UMB).  By using UMB_HEAP,
you can give your programs up to 200K more RAM to work with.

Making the UMB's available for heap space allows your programs more
conventional memory to work with.  For each kilobyte of heap space
you move into upper memory, you increase the memory available for
code and overlays by the same amount.

To use UMB_HEAP, just include the unit UMB_HEAP in the USES clause
of your main program and call the procedure EXTEND_HEAP.  Assuming
that your system has an XMS memory manager that can handle upper
memory, like QEMM386 or EMM386, all available UMB's will be added
to the TP6 heap.

When using debuggers, the UMB's may not have a chance to be deallocated
properly.  To address this problem, I have included a Boolean variable
called UMB_HEAP_DEBUG which forces UMB_HEAP to deallocate UMB's
immediately after allocating them while still retaining UMB address
and size information.  As long as your program does not manipulate
upper memory, this strategy works.  Set UMB_HEAP_DEBUG to TRUE while
debugging, overwise set it to FALSE.  It's default value is FALSE.

UMB_HEAP is shareware.  If you like it, please send $10 to the
address below.  This will register you for non-commercial use of
this tool and entitle you to ALL future versions of it.

The book "PC Interrupts" by Ralf Brown and Jim Kyle was my reference
for XMS drivers.  If you need to know more, buy this book, it's worth it.



Please forward comments and suggestions to:

     Brian D. Webb
     CompuServe [76436,1131]


Send registration fees to: (including your name and address)

     Brian D. Webb
     3700 Garth Road #1408
     Baytown, TX 77521
