diff --git a/Marlin/ultralcd_impl_DOGM.h b/Marlin/ultralcd_impl_DOGM.h index 3ab0b17e7..22a86a5da 100644 --- a/Marlin/ultralcd_impl_DOGM.h +++ b/Marlin/ultralcd_impl_DOGM.h @@ -58,6 +58,8 @@ #include "ultralcd_st7920_u8glib_rrd.h" #include "Configuration.h" +#include "timestamp_t.h" + #if DISABLED(MAPPER_C2C3) && DISABLED(MAPPER_NON) && ENABLED(USE_BIG_EDIT_FONT) #undef USE_BIG_EDIT_FONT #endif @@ -387,12 +389,12 @@ static void lcd_implementation_status_screen() { } u8g.setPrintPos(80,48); - millis_t time = print_job_timer.duration() / 60; - if (time != 0) { - lcd_print(itostr2(time/60)); - lcd_print(':'); - lcd_print(itostr2(time%60)); - } + + char buffer[10]; + timestamp_t time(print_job_timer.duration()); + time.toString(buffer, true); + if (time.timestamp != 0) lcd_print(buffer); + else lcd_printPGM(PSTR("--:--")); #endif // Extruders diff --git a/Marlin/ultralcd_impl_HD44780.h b/Marlin/ultralcd_impl_HD44780.h index 16159b1fc..271cb3ff9 100644 --- a/Marlin/ultralcd_impl_HD44780.h +++ b/Marlin/ultralcd_impl_HD44780.h @@ -27,6 +27,8 @@ * Implementation of the LCD display routines for a Hitachi HD44780 display. These are common LCD character displays. **/ +#include "timestamp_t.h" + extern volatile uint8_t buttons; //an extended version of the last checked buttons in a bit array. //////////////////////////////////// @@ -760,15 +762,11 @@ static void lcd_implementation_status_screen() { lcd.setCursor(LCD_WIDTH - 6, 2); lcd.print(LCD_STR_CLOCK[0]); - uint16_t time = print_job_timer.duration() / 60; - if (time != 0) { - lcd.print(itostr2(time / 60)); - lcd.print(':'); - lcd.print(itostr2(time % 60)); - } - else { - lcd_printPGM(PSTR("--:--")); - } + char buffer[10]; + timestamp_t time(print_job_timer.duration()); + time.toString(buffer, true); + if (time.timestamp != 0) lcd_print(buffer); + else lcd_printPGM(PSTR("--:--")); #endif // LCD_HEIGHT > 3