.startData 14 R 0x193D 0x194A ROM.init 221 R 0x1860 0x193C ROMHEAP_SEGMENT 2000 R/W 0xED 0x8BC RAM.common 168 R/W 0x8BD 0x964 RAM.stack 64 R/W 0x965 0x9A4 RAM.copy 2 R 0x28D1 0x28D2 ROMSummary of section sizes per section type:READ_ONLY (R): 10A9 (dec: 4265)READ_WRITE (R/W): 915 (dec: 2325)NO_INIT (N/I): 8B (dec: 139)
Memory Management - malloc(), free(),
calloc(), realloc(); alloc.c, and heap.c
File alloc.c provides a full implementation of these functions. You must specify heap
location, heap size, and heap overrun processes.
Address all of these points in the heap.c file. View the heap as a large array with a
default error handling function. Feel free to modify this function or the size of the heap to
suit the needs of the application. Define the heap size in libdefs.h,
LIBDEF_HEAPSIZE.
I understand what Daniel is saying but the documentation tells something different.
So I tried the first method and I do get a warning "L1919: Duplicate defination of _heap_. Ignoring defination from heap.c.o(ansiis.lib), using definition from heap.c.o" Other than this warning it seems to fix the allocation issue.
Anyways I will disable the GUI function that usues malloc() until I understand better how much _heap_ space I need to allocate.