|
|
@ -402,22 +402,27 @@ void serial_echopair_P(const char *s_P, double v) |
|
|
|
void serial_echopair_P(const char *s_P, unsigned long v) |
|
|
|
{ serialprintPGM(s_P); SERIAL_ECHO(v); } |
|
|
|
|
|
|
|
extern "C"{ |
|
|
|
extern unsigned int __bss_end; |
|
|
|
extern unsigned int __heap_start; |
|
|
|
extern void *__brkval; |
|
|
|
#ifdef SDSUPPORT |
|
|
|
#include "SdFatUtil.h" |
|
|
|
int freeMemory() { return SdFatUtil::FreeRam(); } |
|
|
|
#else |
|
|
|
extern "C" { |
|
|
|
extern unsigned int __bss_end; |
|
|
|
extern unsigned int __heap_start; |
|
|
|
extern void *__brkval; |
|
|
|
|
|
|
|
int freeMemory() { |
|
|
|
int free_memory; |
|
|
|
int freeMemory() { |
|
|
|
int free_memory; |
|
|
|
|
|
|
|
if((int)__brkval == 0) |
|
|
|
free_memory = ((int)&free_memory) - ((int)&__bss_end); |
|
|
|
else |
|
|
|
free_memory = ((int)&free_memory) - ((int)__brkval); |
|
|
|
if ((int)__brkval == 0) |
|
|
|
free_memory = ((int)&free_memory) - ((int)&__bss_end); |
|
|
|
else |
|
|
|
free_memory = ((int)&free_memory) - ((int)__brkval); |
|
|
|
|
|
|
|
return free_memory; |
|
|
|
return free_memory; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
#endif //!SDSUPPORT
|
|
|
|
|
|
|
|
//adds an command to the main command buffer
|
|
|
|
//thats really done in a non-safe way.
|
|
|
|