From 2d7fe9dc7828db2370693a3bae123e81582d139f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20Zahradn=C3=ADk=20junior?= <junior@zahradnik.cz>
Date: Fri, 15 Jul 2016 13:17:27 +0200
Subject: [PATCH] LCD Longer print

---
 Marlin/language_cz.h |  3 +++
 Marlin/language_en.h | 10 ++++++++--
 Marlin/ultralcd.cpp  | 12 +++++++++---
 3 files changed, 20 insertions(+), 5 deletions(-)

diff --git a/Marlin/language_cz.h b/Marlin/language_cz.h
index 54a8ae5de5d..3b53d90a2a3 100644
--- a/Marlin/language_cz.h
+++ b/Marlin/language_cz.h
@@ -189,6 +189,9 @@
 #define MSG_ERR_MINTEMP_BED                 "NIZ. TEPL. PODL."
 #define MSG_HALTED                          "TISK. ZASTAVENA"
 #define MSG_PLEASE_RESET                    "Provedte reset"
+#define MSG_SHORT_DAY                       "d"
+#define MSG_SHORT_HOUR                      "h"
+#define MSG_SHORT_MINUTE                    "m"
 #define MSG_HEATING                         "Zahrivani..."
 #define MSG_HEATING_COMPLETE                "Zahrati hotovo."
 #define MSG_BED_HEATING                     "Zahrivani podl."
diff --git a/Marlin/language_en.h b/Marlin/language_en.h
index a1b38a1a93e..efb48f55312 100644
--- a/Marlin/language_en.h
+++ b/Marlin/language_en.h
@@ -488,8 +488,14 @@
 #ifndef MSG_PLEASE_RESET
   #define MSG_PLEASE_RESET                    "Please reset"
 #endif
-#ifndef MSG_END_DAY
-  #define MSG_END_DAY                         "days"
+#ifndef MSG_SHORT_DAY
+  #define MSG_SHORT_DAY                       "d" // One character only
+#endif
+#ifndef MSG_SHORT_HOUR
+  #define MSG_SHORT_HOUR                      "h" // One character only
+#endif
+#ifndef MSG_SHORT_MINUTE
+  #define MSG_SHORT_MINUTE                    "m" // One character only
 #endif
 #ifndef MSG_PRINT_TIME
   #define MSG_PRINT_TIME                      "Print time"
diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp
index 37f139dee61..e637c780e60 100755
--- a/Marlin/ultralcd.cpp
+++ b/Marlin/ultralcd.cpp
@@ -1969,13 +1969,19 @@ void kill_screen(const char* lcd_msg) {
         print_job_counter.loadStats();
         printStatistics stats = print_job_counter.getStats();
 
-        char timeString[8];
-        sprintf_P(timeString, PSTR("%i:%02i"), int(stats.printTime / 60 / 60), int(stats.printTime / 60) % 60);
+        char timeString[14];
+        sprintf_P(timeString,
+        PSTR("%i" MSG_SHORT_DAY " %i" MSG_SHORT_HOUR " %i" MSG_SHORT_MINUTE),
+          int(stats.printTime / 60 / 60 / 24),
+          int((stats.printTime / 60 / 60) % 24),
+          int((stats.printTime / 60) % 60)
+        );
 
         START_SCREEN();                                                                              // 12345678901234567890
         STATIC_ITEM(MSG_INFO_PRINT_COUNT ": ", false, false, itostr3left(stats.totalPrints));        // Print Count: 999
         STATIC_ITEM(MSG_INFO_COMPLETED_PRINTS": ", false, false, itostr3left(stats.finishedPrints)); // Completed  : 666
-        STATIC_ITEM(MSG_INFO_PRINT_TIME ": ", false, false, timeString);                             // Total Time : 123:45
+        STATIC_ITEM(MSG_INFO_PRINT_TIME ": ", false, false);                                         // Total Time :
+        STATIC_ITEM("  ", false, false, timeString);                                                 //   12345d 12h 34m
         END_SCREEN();
       }
     #endif // PRINTCOUNTER