hudson wrote:
How much RAM is really available to the user apps?
Stubbing out all of the inpulse calls so that I can link locally, my app is well within the 32 KB flash / 8 KB RAM limitations:
arm-elf-size ./pulse_app.elf
text data bss dec hex filename
1387 0 2056 3443 d73 ./pulse_app.elf
But compileandload.py reports:
home/ubuntu/arm-2010q1/bin/../lib/gcc/arm-none-eabi/4.4.1/../../../../arm-none-eabi/bin/ld: region `flash' overflowed by 21608 bytes
/home/ubuntu/arm-2010q1/bin/../lib/gcc/arm-none-eabi/4.4.1/../../../../arm-none-eabi/bin/ld: region `ram' overflowed by 1172 bytes
Building a completely empty app (just stubs for the functions) looks like 23 KB of flash are used by the pulse framework, leaving only 5 KB free for the user app.
Through binary search (sorry about hitting your compile server so many times), it looks like there is only 3060 bytes available in the data segment / BSS. Pushing an array into the text segment and redoing the test, it looks like 5200 bytes are available for user code. Is there a way to slim down the framework if there are parts that are not required?
EDIT: my build tree is
https://bitbucket.org/hudson/inpulse