MT MicroSYSTEMS, Inc.
Errata in Pascal/MT+ Release 5 User's Guide for CP/M 80
November 11, 1981
Page 61
The third line from the top of the page has a /O missing due to the hole punch.
The explanation of the actions of MEMAVAIL is not clear. MEMAVAIL returns the entire amount of unallocated memory. This is the sum of deallocated fragments and never allocated heap-space. MAXAVAIL returns the largest available space after performing a garbage collection. If an attempt is made to allocate space on the heap which is larger than the space available (as returned by MAXAVAIL), no allocation is performed and the global system BOQLEAN @HERR is set to TRUE. This is normally set to FALSE at the end of a successful heap operation. To access @HERR it should be declared as :
VAR @HERR : EXTERNAL BOOLEAN;
@HERR is not available without the use of FULLHEAP.ERL.
The smallest unit which can be allocated with FULLHEAP is four bytes. This is due to the manner in which garbage collection is performed. For example, allocating an item less than four bytes takes four bytes on the heap. Allocating an item larger than four bytes uses exactly as many bytes as necessary.
Page 106
The program INT_DEMO calls a procedure named ENABLE which has not been defined. It is merely an INLINE procedure containing the instruction 'EI'. DISABLE may be implemented in the same way:
PROCEDURE ENABLE; PROCEDURE DISABLE; BEGIN BEGIN INLINE("EI) INLINE("DI) END; END;
Page 113 : This section, RECURSION AND NON-RECURSION, is incorrectly numbered. It should be 3.9 rather than 3.10. The Table of Contents is correct.