Fix regressions affecting compilation
This fixes two regressions, caused by #1167 and #1191 .
This commit is contained in:
parent
3d1da45f3e
commit
2ec2bf1564
|
@ -26,21 +26,24 @@
|
||||||
/** Amount of free RAM
|
/** Amount of free RAM
|
||||||
* \return The number of free bytes.
|
* \return The number of free bytes.
|
||||||
*/
|
*/
|
||||||
|
#ifdef __arm__
|
||||||
|
extern "C" char* sbrk(int incr);
|
||||||
int SdFatUtil::FreeRam() {
|
int SdFatUtil::FreeRam() {
|
||||||
extern int __bss_end;
|
char top;
|
||||||
extern int* __brkval;
|
return &top - reinterpret_cast<char*>(sbrk(0));
|
||||||
int free_memory;
|
|
||||||
if (reinterpret_cast<int>(__brkval) == 0) {
|
|
||||||
// if no heap use from end of bss section
|
|
||||||
free_memory = reinterpret_cast<int>(&free_memory)
|
|
||||||
- reinterpret_cast<int>(&__bss_end);
|
|
||||||
} else {
|
|
||||||
// use from top of stack to heap
|
|
||||||
free_memory = reinterpret_cast<int>(&free_memory)
|
|
||||||
- reinterpret_cast<int>(__brkval);
|
|
||||||
}
|
|
||||||
return free_memory;
|
|
||||||
}
|
}
|
||||||
|
#else // __arm__
|
||||||
|
extern char *__brkval;
|
||||||
|
extern char __bss_end;
|
||||||
|
/** Amount of free RAM
|
||||||
|
* \return The number of free bytes.
|
||||||
|
*/
|
||||||
|
int SdFatUtil::FreeRam() {
|
||||||
|
char top;
|
||||||
|
return __brkval ? &top - __brkval : &top - &__bss_end;
|
||||||
|
}
|
||||||
|
#endif // __arm
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
/** %Print a string in flash memory.
|
/** %Print a string in flash memory.
|
||||||
*
|
*
|
||||||
|
|
|
@ -337,7 +337,7 @@ static void lcd_implementation_drawmenu_generic(uint8_t row, const char* pstr, c
|
||||||
u8g.setColorIndex(1); // restore settings to black on white
|
u8g.setColorIndex(1); // restore settings to black on white
|
||||||
}
|
}
|
||||||
|
|
||||||
static void _drawmenu_setting_edit_generic(uint8_t row, const char* pstr, char pre_char, char* data, bool pgm) {
|
static void _drawmenu_setting_edit_generic(uint8_t row, const char* pstr, char pre_char, const char* data, bool pgm) {
|
||||||
char c;
|
char c;
|
||||||
uint8_t n = LCD_WIDTH - 1 - 2 - (pgm ? strlen_P(data) : strlen(data));
|
uint8_t n = LCD_WIDTH - 1 - 2 - (pgm ? strlen_P(data) : strlen(data));
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue