Skip to content

Commit 2682b64

Browse files
committed
Optimisation: Reduce code size in rendering SD file names and folders
Change in memory: Flash: -88 bytes SRAM: 0 bytes
1 parent f399e56 commit 2682b64

File tree

1 file changed

+8
-21
lines changed

1 file changed

+8
-21
lines changed

Firmware/ultralcd.cpp

+8-21
Original file line numberDiff line numberDiff line change
@@ -297,32 +297,19 @@ const char STR_SEPARATOR[] PROGMEM = "------------";
297297

298298
static void lcd_implementation_drawmenu_sdfile(uint8_t row, const char* longFilename)
299299
{
300-
char c;
301-
uint8_t n = LCD_WIDTH - 1;
300+
uint8_t len = LCD_WIDTH - 1;
302301
lcd_set_cursor(0, row);
303-
lcd_print((lcd_encoder == menu_item)?'>':' ');
304-
while( ((c = *longFilename) != '\0') && (n>0) )
305-
{
306-
lcd_print(c);
307-
longFilename++;
308-
n--;
309-
}
310-
lcd_space(n);
302+
lcd_print((lcd_encoder == menu_item)?'>':' ');
303+
lcd_print_pad(longFilename, len);
311304
}
305+
312306
static void lcd_implementation_drawmenu_sddirectory(uint8_t row, const char* longFilename)
313307
{
314-
char c;
315-
uint8_t n = LCD_WIDTH - 2;
308+
uint8_t len = LCD_WIDTH - 2;
316309
lcd_set_cursor(0, row);
317-
lcd_print((lcd_encoder == menu_item)?'>':' ');
318-
lcd_print(LCD_STR_FOLDER[0]);
319-
while( ((c = *longFilename) != '\0') && (n>0) )
320-
{
321-
lcd_print(c);
322-
longFilename++;
323-
n--;
324-
}
325-
lcd_space(n);
310+
lcd_print((lcd_encoder == menu_item)?'>':' ');
311+
lcd_print(LCD_STR_FOLDER[0]);
312+
lcd_print_pad(longFilename, len);
326313
}
327314

328315

0 commit comments

Comments
 (0)