I've been banging my head against this for a little while now and this post follows on from my previous one (viewtopic.php?t=1413). At the moment, the memory map separates out the user code from the libraries like this:
Addr Size Used for
-----------------------------------
00000h 4k Bootloader
01000h 64k User application, slot 1
11000h 180k SDK libraries, slot 1
3E000h 8k OTA device key
40000h 4k Unused
41000h 64k User application, slot 2
51000h 180k SDK libraries, slot 2
7E000h 8k WiFi configuration.
Because the user code and the libraries are separated out into two areas there's a lot of wasted space which could be used to do other interesting things. Ideally what I'd like to be able to do is to combine the user code and libraries into one chunk of code so we could do the following:
Addr Size Used for
-----------------------------------
00000h 4k Bootloader
01000h 200k User app + libs, slot 1
33000h 56k Spare space
41000h 200k User app + libs, slot 2
73000h 44k More spare space
7E000h 8k WiFi configuration.
At the moment my user code + libs is coming in at 193k so there's enough room in the 200k of space, although this could be expanded slightly if necessary.
So, my question is: Is it possible to combine the user and libs code into one chunk of binary, without padding it with zeroes to combine it.
If anyone knows how to do this or can point me in the right direction it would be hugely appreciated.
Cheers,
Ben