Browse Source

Updated the Polish language file.
Extended the langtool.pl to understand annotations
on the maximum text length and number of lines of mutli-line texts.

bubnikv 7 years ago
parent
commit
935c42fb6d

+ 1 - 1
Firmware/Firmware.sublime-project

@@ -19,7 +19,7 @@
   			// avrdude -F -v -pm168 -cstk500v1 -P\\.\COM4 -b19200 -D -Uflash:w:"file.hex":i
   			// may need add path to avrdude config file: -C"c:\utils\arduino-0016\hardware\tools\avr\etc\avrdude.conf" if Arduino IDE installed in "c:\utils\arduino-0016\"
   			// https://typeunsafe.wordpress.com/2011/07/22/programming-arduino-with-avrdude/
-			"shell_cmd": "\"c:\\Program Files (x86)\\Arduino\\arduino_debug.exe\" --pref build.path=..\\output --upload --port COM6 --board marlinAddon:avr:rambo -v --preserve-temp-files Firmware.ino"
+			"shell_cmd": "\"c:\\Program Files (x86)\\Arduino\\arduino_debug.exe\" --pref build.path=..\\output --upload --port COM9 --board marlinAddon:avr:rambo -v --preserve-temp-files Firmware.ino"
 		},
 		{
 			"name": "map-data",

+ 52 - 13
Firmware/langtool.pl

@@ -16,18 +16,23 @@ sub parselang
 	my $out = {};
 	while (my $line = <$fh>) {
 		chomp $line;
-		next if (index($line, '#define') == -1 || index($line, 'MSG') == -1);
+		next if (index($line, 'define') == -1 || index($line, 'MSG') == -1);
 		my $modifiers = {};
     	my $symbol = '';
     	my $value = '';
-		if (index($line, '#define(') == -1) {
+		if (index($line, 'define(') == -1) {
 			# Extended definition, which specifies the string formatting.
-	    	$line =~ /(?is)\#define\s*(\S*)\s*(.*)/;
+	    	$line =~ /(?is)define\s*(\S*)\s*(.*)/;
 	    	$symbol = "$1";
 	    	$value = $2;
 		} else {
-			$line =~ /(?is)\#define\((.*)\)\s*(\S*)\s*(.*)/;
+			$line =~ /(?is)define\((.*)\)\s*(\S*)\s*(.*)/;
 			my $options = $1;
+			foreach my $key_value (split /,/, $options) {
+				if ($key_value =~ /\s*(\S*)\s*=\s*(\S*)\s*/) {
+					${$modifiers}{$1} = $2;
+				}
+			}
 	    	$symbol = "$2";
 	    	$value = $3;
 		}
@@ -110,6 +115,25 @@ sub break_text_fullscreen
 my %texts;
 my %attributes;
 my $num_languages = 0;
+if (1)
+{
+	# First load the common strings.
+	my $symbols = parselang("language_common.h");
+ 	foreach my $key (keys %{$symbols}) {
+ 		if (! (exists $texts{$key})) {
+	 		my $symbol_value = ${$symbols}{$key};
+	 		# Store the symbol value for each language.
+	 		$texts{$key} = [ (${$symbol_value}{value}) x ($#langs+1) ];
+	 		# Store the possible attributes.
+			delete ${$symbol_value}{value};
+			# Store an "is common" attribute.
+			${$symbol_value}{common} = 1;
+ 			$attributes{$key} = $symbol_value;
+ 		} else {
+ 			print "Duplicate key in language_common.h: $key\n";
+ 		}
+ 	}
+}
 foreach my $lang (@langs) {
 	my $symbols = parselang("language_$lang.h");
  	foreach my $key (keys %{$symbols}) {
@@ -118,14 +142,23 @@ foreach my $lang (@langs) {
  		}
  		my $symbol_value = ${$symbols}{$key};
  		my $strings = $texts{$key};
- 		die "Symbol $key defined first in $lang, undefined in the preceding language files."
- 			if (scalar(@$strings) != $num_languages);
- 		push @$strings, ${$symbol_value}{value};
+ 		if (defined $attributes{$key} && defined ${$attributes{$key}}{common} && ${$attributes{$key}}{common} == 1) {
+ 			# Common overrides the possible definintions in the language specific files.
+ 		} else {
+	 		die "Symbol $key defined first in $lang, undefined in the preceding language files."
+	 			if (scalar(@$strings) != $num_languages);
+	 		push @$strings, ${$symbol_value}{value};
+	 		if ($lang eq 'en') {
+	 			# The english texts may contain attributes. Store them into %attributes.
+	 			delete ${$symbol_value}{value};
+	 			$attributes{$key} = $symbol_value;
+	 		}
+	 	}
  	}
  	$num_languages += 1;
  	foreach my $key (keys %texts) {
  		my $strings = $texts{$key};
- 		if (scalar(@$strings) != $num_languages) {
+ 		if (scalar(@$strings) < $num_languages) {
  			# die "Symbol $key undefined in $lang."
  			print "Symbol $key undefined in language \"$lang\". Using the english variant.\n";
  			push @$strings, ${$strings}[0];
@@ -272,21 +305,27 @@ END
 
 print ".cpp created.\nDone!\n";
 
+my $verify_only = 1;
+
 for my $lang (0 .. $#langs) {
 	print "Language: $langs[$lang]\n";
 	foreach my $key (@keys) {
 		my $strings = $texts{$key};
+		my %attrib = %{$attributes{$key}};
 		my $message = ${$strings}[$lang];
 		if ($lang == 0 || ${$strings}[0] ne $message) {
 			# If the language is not English, don't show the non-translated message.
 			my $lines = break_text_fullscreen($message);
 			my $nlines = @{$lines};
-			if ($nlines > 1) {
-				print "Multi-line message: $message. Breaking to $nlines lines:\n";
-				print "\t$_\n" foreach (@{$lines});
+			if (! $verify_only) {
+				if ($nlines > 1) {
+					print "Multi-line message: $message. Breaking to $nlines lines:\n";
+					print "\t$_\n" foreach (@{$lines});
+				}
+			}
+			if (defined $attrib{lines} && $nlines > $attrib{lines}) {
+				print "Key $key, language $langs[$lang], lines: $nlines, max lines: $attrib{lines}\n";
 			}
 		}
 	}
 }
-
-sub break_text_fullscreen

+ 37 - 496
Firmware/language_all.cpp

@@ -5,11 +5,6 @@
 #define LCD_WIDTH 20
 extern unsigned char lang_selected;
 
-const char MSG_ACC_EN[] PROGMEM = "Accel";
-const char * const MSG_ACC_LANG_TABLE[1] PROGMEM = {
-	MSG_ACC_EN
-};
-
 const char MSG_ACTIVE_EXTRUDER_EN[] PROGMEM = "Active Extruder: ";
 const char * const MSG_ACTIVE_EXTRUDER_LANG_TABLE[1] PROGMEM = {
 	MSG_ACTIVE_EXTRUDER_EN
@@ -38,21 +33,6 @@ const char * const MSG_AUTHOR_LANG_TABLE[1] PROGMEM = {
 	MSG_AUTHOR_EN
 };
 
-const char MSG_AUTORETRACT_EN[] PROGMEM = "AutoRetr.";
-const char * const MSG_AUTORETRACT_LANG_TABLE[1] PROGMEM = {
-	MSG_AUTORETRACT_EN
-};
-
-const char MSG_AUTOSTART_EN[] PROGMEM = "Autostart";
-const char * const MSG_AUTOSTART_LANG_TABLE[1] PROGMEM = {
-	MSG_AUTOSTART_EN
-};
-
-const char MSG_AUTOTEMP_EN[] PROGMEM = "Autotemp";
-const char * const MSG_AUTOTEMP_LANG_TABLE[1] PROGMEM = {
-	MSG_AUTOTEMP_EN
-};
-
 const char MSG_AUTO_HOME_EN[] PROGMEM = "Auto home";
 const char MSG_AUTO_HOME_IT[] PROGMEM = "Auto Home";
 const char MSG_AUTO_HOME_ES[] PROGMEM = "Llevar al origen";
@@ -80,14 +60,8 @@ const char * const MSG_BABYSTEPPING_Y_LANG_TABLE[1] PROGMEM = {
 };
 
 const char MSG_BABYSTEPPING_Z_EN[] PROGMEM = "Adjusting Z";
-const char MSG_BABYSTEPPING_Z_CZ[] PROGMEM = "Dostavovani Z";
-const char MSG_BABYSTEPPING_Z_PL[] PROGMEM = "Dostavovani Z";
-const char * const MSG_BABYSTEPPING_Z_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_BABYSTEPPING_Z_EN,
-	MSG_BABYSTEPPING_Z_CZ,
-	MSG_BABYSTEPPING_Z_EN,
-	MSG_BABYSTEPPING_Z_EN,
-	MSG_BABYSTEPPING_Z_PL
+const char * const MSG_BABYSTEPPING_Z_LANG_TABLE[1] PROGMEM = {
+	MSG_BABYSTEPPING_Z_EN
 };
 
 const char MSG_BABYSTEP_X_EN[] PROGMEM = "Babystep X";
@@ -335,7 +309,7 @@ const char * const MSG_BED_SKEW_OFFSET_DETECTION_POINT_NOT_FOUND_LANG_TABLE[LANG
 	MSG_BED_SKEW_OFFSET_DETECTION_POINT_NOT_FOUND_PL
 };
 
-const char MSG_BED_SKEW_OFFSET_DETECTION_SKEW_EXTREME_EN[] PROGMEM = "X/Y skewed severly. Skew will be corrected automatically.";
+const char MSG_BED_SKEW_OFFSET_DETECTION_SKEW_EXTREME_EN[] PROGMEM = "X/Z skewed severly. Skew will be corrected automatically.";
 const char MSG_BED_SKEW_OFFSET_DETECTION_SKEW_EXTREME_CZ[] PROGMEM = "X/Y osy jsou silne zkosene. Zkoseni bude automaticky vyrovnano pri tisku.";
 const char MSG_BED_SKEW_OFFSET_DETECTION_SKEW_EXTREME_ES[] PROGMEM = "X/Y muy distorsionado. La distorsion sera corregida automaticamente.";
 const char MSG_BED_SKEW_OFFSET_DETECTION_SKEW_EXTREME_PL[] PROGMEM = "Osie X/Y sa mocno skosne. Skos bedzie automatycznie wyrownany przy druku.";
@@ -468,14 +442,8 @@ const char * const MSG_CHANGING_FILAMENT_LANG_TABLE[LANG_NUM] PROGMEM = {
 };
 
 const char MSG_CNG_SDCARD_EN[] PROGMEM = "Change SD card";
-const char MSG_CNG_SDCARD_CZ[] PROGMEM = "Vymenit SD";
-const char MSG_CNG_SDCARD_PL[] PROGMEM = "Vymenit SD";
-const char * const MSG_CNG_SDCARD_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_CNG_SDCARD_EN,
-	MSG_CNG_SDCARD_CZ,
-	MSG_CNG_SDCARD_EN,
-	MSG_CNG_SDCARD_EN,
-	MSG_CNG_SDCARD_PL
+const char * const MSG_CNG_SDCARD_LANG_TABLE[1] PROGMEM = {
+	MSG_CNG_SDCARD_EN
 };
 
 const char MSG_CONFIGURATION_VER_EN[] PROGMEM = " Last Updated: ";
@@ -507,55 +475,9 @@ const char * const MSG_CONFIRM_NOZZLE_CLEAN_LANG_TABLE[LANG_NUM] PROGMEM = {
 	MSG_CONFIRM_NOZZLE_CLEAN_PL
 };
 
-const char MSG_CONTRAST_EN[] PROGMEM = "LCD contrast";
-const char * const MSG_CONTRAST_LANG_TABLE[1] PROGMEM = {
-	MSG_CONTRAST_EN
-};
-
 const char MSG_CONTROL_EN[] PROGMEM = "Control";
-const char MSG_CONTROL_CZ[] PROGMEM = "Kontrola";
-const char MSG_CONTROL_PL[] PROGMEM = "Kontrola";
-const char * const MSG_CONTROL_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_CONTROL_EN,
-	MSG_CONTROL_CZ,
-	MSG_CONTROL_EN,
-	MSG_CONTROL_EN,
-	MSG_CONTROL_PL
-};
-
-const char MSG_CONTROL_RETRACT_EN[] PROGMEM = "Retract mm";
-const char * const MSG_CONTROL_RETRACT_LANG_TABLE[1] PROGMEM = {
-	MSG_CONTROL_RETRACT_EN
-};
-
-const char MSG_CONTROL_RETRACTF_EN[] PROGMEM = "Retract  V";
-const char * const MSG_CONTROL_RETRACTF_LANG_TABLE[1] PROGMEM = {
-	MSG_CONTROL_RETRACTF_EN
-};
-
-const char MSG_CONTROL_RETRACT_RECOVER_EN[] PROGMEM = "UnRet +mm";
-const char * const MSG_CONTROL_RETRACT_RECOVER_LANG_TABLE[1] PROGMEM = {
-	MSG_CONTROL_RETRACT_RECOVER_EN
-};
-
-const char MSG_CONTROL_RETRACT_RECOVERF_EN[] PROGMEM = "UnRet  V";
-const char * const MSG_CONTROL_RETRACT_RECOVERF_LANG_TABLE[1] PROGMEM = {
-	MSG_CONTROL_RETRACT_RECOVERF_EN
-};
-
-const char MSG_CONTROL_RETRACT_RECOVER_SWAP_EN[] PROGMEM = "S UnRet+mm";
-const char * const MSG_CONTROL_RETRACT_RECOVER_SWAP_LANG_TABLE[1] PROGMEM = {
-	MSG_CONTROL_RETRACT_RECOVER_SWAP_EN
-};
-
-const char MSG_CONTROL_RETRACT_SWAP_EN[] PROGMEM = "Swap Re.mm";
-const char * const MSG_CONTROL_RETRACT_SWAP_LANG_TABLE[1] PROGMEM = {
-	MSG_CONTROL_RETRACT_SWAP_EN
-};
-
-const char MSG_CONTROL_RETRACT_ZLIFT_EN[] PROGMEM = "Hop mm";
-const char * const MSG_CONTROL_RETRACT_ZLIFT_LANG_TABLE[1] PROGMEM = {
-	MSG_CONTROL_RETRACT_ZLIFT_EN
+const char * const MSG_CONTROL_LANG_TABLE[1] PROGMEM = {
+	MSG_CONTROL_EN
 };
 
 const char MSG_COOLDOWN_EN[] PROGMEM = "Cooldown";
@@ -613,21 +535,11 @@ const char * const MSG_DWELL_LANG_TABLE[LANG_NUM] PROGMEM = {
 	MSG_DWELL_EN
 };
 
-const char MSG_E_EN[] PROGMEM = "e";
-const char * const MSG_E_LANG_TABLE[1] PROGMEM = {
-	MSG_E_EN
-};
-
 const char MSG_ENDSTOPS_HIT_EN[] PROGMEM = "endstops hit: ";
 const char * const MSG_ENDSTOPS_HIT_LANG_TABLE[1] PROGMEM = {
 	MSG_ENDSTOPS_HIT_EN
 };
 
-const char MSG_ENDSTOP_ABORT_EN[] PROGMEM = "Endstop abort";
-const char * const MSG_ENDSTOP_ABORT_LANG_TABLE[1] PROGMEM = {
-	MSG_ENDSTOP_ABORT_EN
-};
-
 const char MSG_ENDSTOP_HIT_EN[] PROGMEM = "TRIGGERED";
 const char * const MSG_ENDSTOP_HIT_LANG_TABLE[1] PROGMEM = {
 	MSG_ENDSTOP_HIT_EN
@@ -699,27 +611,11 @@ const char * const MSG_ERR_STOPPED_LANG_TABLE[1] PROGMEM = {
 	MSG_ERR_STOPPED_EN
 };
 
-const char MSG_ESTEPS_EN[] PROGMEM = "Esteps/mm";
-const char * const MSG_ESTEPS_LANG_TABLE[1] PROGMEM = {
-	MSG_ESTEPS_EN
-};
-
 const char MSG_EXTERNAL_RESET_EN[] PROGMEM = " External Reset";
 const char * const MSG_EXTERNAL_RESET_LANG_TABLE[1] PROGMEM = {
 	MSG_EXTERNAL_RESET_EN
 };
 
-const char MSG_EXTRUDE_EN[] PROGMEM = "Extrude";
-const char MSG_EXTRUDE_CZ[] PROGMEM = "Extrudovat";
-const char MSG_EXTRUDE_PL[] PROGMEM = "Extrudovat";
-const char * const MSG_EXTRUDE_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_EXTRUDE_EN,
-	MSG_EXTRUDE_CZ,
-	MSG_EXTRUDE_EN,
-	MSG_EXTRUDE_EN,
-	MSG_EXTRUDE_PL
-};
-
 const char MSG_Enqueing_EN[] PROGMEM = "enqueing \"";
 const char * const MSG_Enqueing_LANG_TABLE[1] PROGMEM = {
 	MSG_Enqueing_EN
@@ -756,21 +652,6 @@ const char * const MSG_FILAMENTCHANGE_LANG_TABLE[LANG_NUM] PROGMEM = {
 	MSG_FILAMENTCHANGE_PL
 };
 
-const char MSG_FILAMENT_SIZE_EXTRUDER_0_EN[] PROGMEM = "Fil. Dia. 1";
-const char * const MSG_FILAMENT_SIZE_EXTRUDER_0_LANG_TABLE[1] PROGMEM = {
-	MSG_FILAMENT_SIZE_EXTRUDER_0_EN
-};
-
-const char MSG_FILAMENT_SIZE_EXTRUDER_1_EN[] PROGMEM = "Fil. Dia. 2";
-const char * const MSG_FILAMENT_SIZE_EXTRUDER_1_LANG_TABLE[1] PROGMEM = {
-	MSG_FILAMENT_SIZE_EXTRUDER_1_EN
-};
-
-const char MSG_FILAMENT_SIZE_EXTRUDER_2_EN[] PROGMEM = "Fil. Dia. 3";
-const char * const MSG_FILAMENT_SIZE_EXTRUDER_2_LANG_TABLE[1] PROGMEM = {
-	MSG_FILAMENT_SIZE_EXTRUDER_2_EN
-};
-
 const char MSG_FILE_PRINTED_EN[] PROGMEM = "Done printing file";
 const char * const MSG_FILE_PRINTED_LANG_TABLE[1] PROGMEM = {
 	MSG_FILE_PRINTED_EN
@@ -831,36 +712,18 @@ const char * const MSG_FLOW_LANG_TABLE[LANG_NUM] PROGMEM = {
 };
 
 const char MSG_FLOW0_EN[] PROGMEM = "Flow 0";
-const char MSG_FLOW0_CZ[] PROGMEM = "Prutok 0";
-const char MSG_FLOW0_PL[] PROGMEM = "Prutok 0";
-const char * const MSG_FLOW0_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_FLOW0_EN,
-	MSG_FLOW0_CZ,
-	MSG_FLOW0_EN,
-	MSG_FLOW0_EN,
-	MSG_FLOW0_PL
+const char * const MSG_FLOW0_LANG_TABLE[1] PROGMEM = {
+	MSG_FLOW0_EN
 };
 
 const char MSG_FLOW1_EN[] PROGMEM = "Flow 1";
-const char MSG_FLOW1_CZ[] PROGMEM = "Prutok 1";
-const char MSG_FLOW1_PL[] PROGMEM = "Prutok 1";
-const char * const MSG_FLOW1_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_FLOW1_EN,
-	MSG_FLOW1_CZ,
-	MSG_FLOW1_EN,
-	MSG_FLOW1_EN,
-	MSG_FLOW1_PL
+const char * const MSG_FLOW1_LANG_TABLE[1] PROGMEM = {
+	MSG_FLOW1_EN
 };
 
 const char MSG_FLOW2_EN[] PROGMEM = "Flow 2";
-const char MSG_FLOW2_CZ[] PROGMEM = "Prutok 2";
-const char MSG_FLOW2_PL[] PROGMEM = "Prutok 2";
-const char * const MSG_FLOW2_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_FLOW2_EN,
-	MSG_FLOW2_CZ,
-	MSG_FLOW2_EN,
-	MSG_FLOW2_EN,
-	MSG_FLOW2_PL
+const char * const MSG_FLOW2_LANG_TABLE[1] PROGMEM = {
+	MSG_FLOW2_EN
 };
 
 const char MSG_FREE_MEMORY_EN[] PROGMEM = " Free Memory: ";
@@ -975,14 +838,8 @@ const char * const MSG_IMPROVE_BED_OFFSET_AND_SKEW_LINE3_LANG_TABLE[LANG_NUM] PR
 };
 
 const char MSG_INIT_SDCARD_EN[] PROGMEM = "Init. SD card";
-const char MSG_INIT_SDCARD_CZ[] PROGMEM = "Inic. SD";
-const char MSG_INIT_SDCARD_PL[] PROGMEM = "Inic. SD";
-const char * const MSG_INIT_SDCARD_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_INIT_SDCARD_EN,
-	MSG_INIT_SDCARD_CZ,
-	MSG_INIT_SDCARD_EN,
-	MSG_INIT_SDCARD_EN,
-	MSG_INIT_SDCARD_PL
+const char * const MSG_INIT_SDCARD_LANG_TABLE[1] PROGMEM = {
+	MSG_INIT_SDCARD_EN
 };
 
 const char MSG_INSERT_FILAMENT_EN[] PROGMEM = "Insert filament";
@@ -1067,14 +924,8 @@ const char * const MSG_LOADING_FILAMENT_LANG_TABLE[LANG_NUM] PROGMEM = {
 };
 
 const char MSG_LOAD_EPROM_EN[] PROGMEM = "Load memory";
-const char MSG_LOAD_EPROM_CZ[] PROGMEM = "Ulozit pamet";
-const char MSG_LOAD_EPROM_PL[] PROGMEM = "Ulozit pamet";
-const char * const MSG_LOAD_EPROM_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_LOAD_EPROM_EN,
-	MSG_LOAD_EPROM_CZ,
-	MSG_LOAD_EPROM_EN,
-	MSG_LOAD_EPROM_EN,
-	MSG_LOAD_EPROM_PL
+const char * const MSG_LOAD_EPROM_LANG_TABLE[1] PROGMEM = {
+	MSG_LOAD_EPROM_EN
 };
 
 const char MSG_LOAD_FILAMENT_EN[] PROGMEM = "Load filament";
@@ -1169,47 +1020,23 @@ const char * const MSG_MIN_LANG_TABLE[1] PROGMEM = {
 };
 
 const char MSG_MOTION_EN[] PROGMEM = "Motion";
-const char MSG_MOTION_CZ[] PROGMEM = "Pohyb";
-const char MSG_MOTION_PL[] PROGMEM = "Pohyb";
-const char * const MSG_MOTION_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_MOTION_EN,
-	MSG_MOTION_CZ,
-	MSG_MOTION_EN,
-	MSG_MOTION_EN,
-	MSG_MOTION_PL
+const char * const MSG_MOTION_LANG_TABLE[1] PROGMEM = {
+	MSG_MOTION_EN
 };
 
 const char MSG_MOVE_01MM_EN[] PROGMEM = "Move 0.1mm";
-const char MSG_MOVE_01MM_CZ[] PROGMEM = "Posunout o 0.1mm";
-const char MSG_MOVE_01MM_PL[] PROGMEM = "Posunout o 0.1mm";
-const char * const MSG_MOVE_01MM_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_MOVE_01MM_EN,
-	MSG_MOVE_01MM_CZ,
-	MSG_MOVE_01MM_EN,
-	MSG_MOVE_01MM_EN,
-	MSG_MOVE_01MM_PL
+const char * const MSG_MOVE_01MM_LANG_TABLE[1] PROGMEM = {
+	MSG_MOVE_01MM_EN
 };
 
 const char MSG_MOVE_10MM_EN[] PROGMEM = "Move 10mm";
-const char MSG_MOVE_10MM_CZ[] PROGMEM = "Posunout o 10mm";
-const char MSG_MOVE_10MM_PL[] PROGMEM = "Posunout o 10mm";
-const char * const MSG_MOVE_10MM_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_MOVE_10MM_EN,
-	MSG_MOVE_10MM_CZ,
-	MSG_MOVE_10MM_EN,
-	MSG_MOVE_10MM_EN,
-	MSG_MOVE_10MM_PL
+const char * const MSG_MOVE_10MM_LANG_TABLE[1] PROGMEM = {
+	MSG_MOVE_10MM_EN
 };
 
 const char MSG_MOVE_1MM_EN[] PROGMEM = "Move 1mm";
-const char MSG_MOVE_1MM_CZ[] PROGMEM = "Posunout o 1mm";
-const char MSG_MOVE_1MM_PL[] PROGMEM = "Posunout o 1mm";
-const char * const MSG_MOVE_1MM_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_MOVE_1MM_EN,
-	MSG_MOVE_1MM_CZ,
-	MSG_MOVE_1MM_EN,
-	MSG_MOVE_1MM_EN,
-	MSG_MOVE_1MM_PL
+const char * const MSG_MOVE_1MM_LANG_TABLE[1] PROGMEM = {
+	MSG_MOVE_1MM_EN
 };
 
 const char MSG_MOVE_AXIS_EN[] PROGMEM = "Move axis";
@@ -1248,16 +1075,6 @@ const char * const MSG_MOVE_E_LANG_TABLE[LANG_NUM] PROGMEM = {
 	MSG_MOVE_E_EN
 };
 
-const char MSG_MOVE_E1_EN[] PROGMEM = "Extruder2";
-const char * const MSG_MOVE_E1_LANG_TABLE[1] PROGMEM = {
-	MSG_MOVE_E1_EN
-};
-
-const char MSG_MOVE_E2_EN[] PROGMEM = "Extruder3";
-const char * const MSG_MOVE_E2_LANG_TABLE[1] PROGMEM = {
-	MSG_MOVE_E2_EN
-};
-
 const char MSG_MOVE_X_EN[] PROGMEM = "Move X";
 const char MSG_MOVE_X_CZ[] PROGMEM = "Posunout X";
 const char MSG_MOVE_X_IT[] PROGMEM = "Muovi X";
@@ -1372,25 +1189,13 @@ const char * const MSG_NOZZLE_LANG_TABLE[LANG_NUM] PROGMEM = {
 };
 
 const char MSG_NOZZLE1_EN[] PROGMEM = "Nozzle2";
-const char MSG_NOZZLE1_CZ[] PROGMEM = "Tryska2";
-const char MSG_NOZZLE1_PL[] PROGMEM = "Tryska2";
-const char * const MSG_NOZZLE1_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_NOZZLE1_EN,
-	MSG_NOZZLE1_CZ,
-	MSG_NOZZLE1_EN,
-	MSG_NOZZLE1_EN,
-	MSG_NOZZLE1_PL
+const char * const MSG_NOZZLE1_LANG_TABLE[1] PROGMEM = {
+	MSG_NOZZLE1_EN
 };
 
 const char MSG_NOZZLE2_EN[] PROGMEM = "Nozzle3";
-const char MSG_NOZZLE2_CZ[] PROGMEM = "Tryska3";
-const char MSG_NOZZLE2_PL[] PROGMEM = "Tryska3";
-const char * const MSG_NOZZLE2_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_NOZZLE2_EN,
-	MSG_NOZZLE2_CZ,
-	MSG_NOZZLE2_EN,
-	MSG_NOZZLE2_EN,
-	MSG_NOZZLE2_PL
+const char * const MSG_NOZZLE2_LANG_TABLE[1] PROGMEM = {
+	MSG_NOZZLE2_EN
 };
 
 const char MSG_NO_CARD_EN[] PROGMEM = "No SD card";
@@ -1458,26 +1263,6 @@ const char * const MSG_PICK_Z_LANG_TABLE[LANG_NUM] PROGMEM = {
 	MSG_PICK_Z_PL
 };
 
-const char MSG_PID_C_EN[] PROGMEM = "PID-C";
-const char * const MSG_PID_C_LANG_TABLE[1] PROGMEM = {
-	MSG_PID_C_EN
-};
-
-const char MSG_PID_D_EN[] PROGMEM = "PID-D";
-const char * const MSG_PID_D_LANG_TABLE[1] PROGMEM = {
-	MSG_PID_D_EN
-};
-
-const char MSG_PID_I_EN[] PROGMEM = "PID-I";
-const char * const MSG_PID_I_LANG_TABLE[1] PROGMEM = {
-	MSG_PID_I_EN
-};
-
-const char MSG_PID_P_EN[] PROGMEM = "PID-P";
-const char * const MSG_PID_P_LANG_TABLE[1] PROGMEM = {
-	MSG_PID_P_EN
-};
-
 const char MSG_PLANNER_BUFFER_BYTES_EN[] PROGMEM = "  PlannerBufferBytes: ";
 const char * const MSG_PLANNER_BUFFER_BYTES_LANG_TABLE[1] PROGMEM = {
 	MSG_PLANNER_BUFFER_BYTES_EN
@@ -1519,83 +1304,6 @@ const char * const MSG_PREHEAT_LANG_TABLE[LANG_NUM] PROGMEM = {
 	MSG_PREHEAT_PL
 };
 
-const char MSG_PREHEAT_ABS_EN[] PROGMEM = "Preheat ABS";
-const char MSG_PREHEAT_ABS_CZ[] PROGMEM = "Predehrev ABS";
-const char MSG_PREHEAT_ABS_PL[] PROGMEM = "Predehrev ABS";
-const char * const MSG_PREHEAT_ABS_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_ABS_EN,
-	MSG_PREHEAT_ABS_CZ,
-	MSG_PREHEAT_ABS_EN,
-	MSG_PREHEAT_ABS_EN,
-	MSG_PREHEAT_ABS_PL
-};
-
-const char MSG_PREHEAT_ABS0_EN[] PROGMEM = "Preheat ABS 1";
-const char MSG_PREHEAT_ABS0_CZ[] PROGMEM = "Predehrev ABS 1";
-const char MSG_PREHEAT_ABS0_PL[] PROGMEM = "Predehrev ABS 1";
-const char * const MSG_PREHEAT_ABS0_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_ABS0_EN,
-	MSG_PREHEAT_ABS0_CZ,
-	MSG_PREHEAT_ABS0_EN,
-	MSG_PREHEAT_ABS0_EN,
-	MSG_PREHEAT_ABS0_PL
-};
-
-const char MSG_PREHEAT_ABS012_EN[] PROGMEM = "Preheat ABS All";
-const char MSG_PREHEAT_ABS012_CZ[] PROGMEM = "Predehrev ABS All";
-const char MSG_PREHEAT_ABS012_PL[] PROGMEM = "Predehrev ABS All";
-const char * const MSG_PREHEAT_ABS012_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_ABS012_EN,
-	MSG_PREHEAT_ABS012_CZ,
-	MSG_PREHEAT_ABS012_EN,
-	MSG_PREHEAT_ABS012_EN,
-	MSG_PREHEAT_ABS012_PL
-};
-
-const char MSG_PREHEAT_ABS1_EN[] PROGMEM = "Preheat ABS 2";
-const char MSG_PREHEAT_ABS1_CZ[] PROGMEM = "Predehrev ABS 2";
-const char MSG_PREHEAT_ABS1_PL[] PROGMEM = "Predehrev ABS 2";
-const char * const MSG_PREHEAT_ABS1_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_ABS1_EN,
-	MSG_PREHEAT_ABS1_CZ,
-	MSG_PREHEAT_ABS1_EN,
-	MSG_PREHEAT_ABS1_EN,
-	MSG_PREHEAT_ABS1_PL
-};
-
-const char MSG_PREHEAT_ABS2_EN[] PROGMEM = "Preheat ABS 3";
-const char MSG_PREHEAT_ABS2_CZ[] PROGMEM = "Predehrev ABS 3";
-const char MSG_PREHEAT_ABS2_PL[] PROGMEM = "Predehrev ABS 3";
-const char * const MSG_PREHEAT_ABS2_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_ABS2_EN,
-	MSG_PREHEAT_ABS2_CZ,
-	MSG_PREHEAT_ABS2_EN,
-	MSG_PREHEAT_ABS2_EN,
-	MSG_PREHEAT_ABS2_PL
-};
-
-const char MSG_PREHEAT_ABS_BEDONLY_EN[] PROGMEM = "Preheat ABS Bed";
-const char MSG_PREHEAT_ABS_BEDONLY_CZ[] PROGMEM = "Predehrev ABS Bed";
-const char MSG_PREHEAT_ABS_BEDONLY_PL[] PROGMEM = "Predehrev ABS Bed";
-const char * const MSG_PREHEAT_ABS_BEDONLY_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_ABS_BEDONLY_EN,
-	MSG_PREHEAT_ABS_BEDONLY_CZ,
-	MSG_PREHEAT_ABS_BEDONLY_EN,
-	MSG_PREHEAT_ABS_BEDONLY_EN,
-	MSG_PREHEAT_ABS_BEDONLY_PL
-};
-
-const char MSG_PREHEAT_ABS_SETTINGS_EN[] PROGMEM = "Preheat ABS conf";
-const char MSG_PREHEAT_ABS_SETTINGS_CZ[] PROGMEM = "Predehrev ABS conf";
-const char MSG_PREHEAT_ABS_SETTINGS_PL[] PROGMEM = "Predehrev ABS conf";
-const char * const MSG_PREHEAT_ABS_SETTINGS_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_ABS_SETTINGS_EN,
-	MSG_PREHEAT_ABS_SETTINGS_CZ,
-	MSG_PREHEAT_ABS_SETTINGS_EN,
-	MSG_PREHEAT_ABS_SETTINGS_EN,
-	MSG_PREHEAT_ABS_SETTINGS_PL
-};
-
 const char MSG_PREHEAT_NOZZLE_EN[] PROGMEM = "Preheat the nozzle!";
 const char MSG_PREHEAT_NOZZLE_CZ[] PROGMEM = "Predehrejte trysku!";
 const char MSG_PREHEAT_NOZZLE_IT[] PROGMEM = "Preris. ugello!";
@@ -1609,94 +1317,6 @@ const char * const MSG_PREHEAT_NOZZLE_LANG_TABLE[LANG_NUM] PROGMEM = {
 	MSG_PREHEAT_NOZZLE_PL
 };
 
-const char MSG_PREHEAT_PLA_EN[] PROGMEM = "Preheat PLA";
-const char MSG_PREHEAT_PLA_CZ[] PROGMEM = "Predehrev PLA";
-const char MSG_PREHEAT_PLA_PL[] PROGMEM = "Predehrev PLA";
-const char * const MSG_PREHEAT_PLA_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_PLA_EN,
-	MSG_PREHEAT_PLA_CZ,
-	MSG_PREHEAT_PLA_EN,
-	MSG_PREHEAT_PLA_EN,
-	MSG_PREHEAT_PLA_PL
-};
-
-const char MSG_PREHEAT_PLA0_EN[] PROGMEM = "Preheat PLA 1";
-const char MSG_PREHEAT_PLA0_CZ[] PROGMEM = "Predehrev PLA 1";
-const char MSG_PREHEAT_PLA0_PL[] PROGMEM = "Predehrev PLA 1";
-const char * const MSG_PREHEAT_PLA0_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_PLA0_EN,
-	MSG_PREHEAT_PLA0_CZ,
-	MSG_PREHEAT_PLA0_EN,
-	MSG_PREHEAT_PLA0_EN,
-	MSG_PREHEAT_PLA0_PL
-};
-
-const char MSG_PREHEAT_PLA012_EN[] PROGMEM = "Preheat PLA All";
-const char MSG_PREHEAT_PLA012_CZ[] PROGMEM = "Predehrev PLA All";
-const char MSG_PREHEAT_PLA012_PL[] PROGMEM = "Predehrev PLA All";
-const char * const MSG_PREHEAT_PLA012_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_PLA012_EN,
-	MSG_PREHEAT_PLA012_CZ,
-	MSG_PREHEAT_PLA012_EN,
-	MSG_PREHEAT_PLA012_EN,
-	MSG_PREHEAT_PLA012_PL
-};
-
-const char MSG_PREHEAT_PLA1_EN[] PROGMEM = "Preheat PLA 2";
-const char MSG_PREHEAT_PLA1_CZ[] PROGMEM = "Predehrev PLA 2";
-const char MSG_PREHEAT_PLA1_PL[] PROGMEM = "Predehrev PLA 2";
-const char * const MSG_PREHEAT_PLA1_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_PLA1_EN,
-	MSG_PREHEAT_PLA1_CZ,
-	MSG_PREHEAT_PLA1_EN,
-	MSG_PREHEAT_PLA1_EN,
-	MSG_PREHEAT_PLA1_PL
-};
-
-const char MSG_PREHEAT_PLA2_EN[] PROGMEM = "Preheat PLA 3";
-const char MSG_PREHEAT_PLA2_CZ[] PROGMEM = "Predehrev PLA 3";
-const char MSG_PREHEAT_PLA2_PL[] PROGMEM = "Predehrev PLA 3";
-const char * const MSG_PREHEAT_PLA2_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_PLA2_EN,
-	MSG_PREHEAT_PLA2_CZ,
-	MSG_PREHEAT_PLA2_EN,
-	MSG_PREHEAT_PLA2_EN,
-	MSG_PREHEAT_PLA2_PL
-};
-
-const char MSG_PREHEAT_PLA_BEDONLY_EN[] PROGMEM = "Preheat PLA Bed";
-const char MSG_PREHEAT_PLA_BEDONLY_CZ[] PROGMEM = "Predehrev PLA Bed";
-const char MSG_PREHEAT_PLA_BEDONLY_PL[] PROGMEM = "Predehrev PLA Bed";
-const char * const MSG_PREHEAT_PLA_BEDONLY_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_PLA_BEDONLY_EN,
-	MSG_PREHEAT_PLA_BEDONLY_CZ,
-	MSG_PREHEAT_PLA_BEDONLY_EN,
-	MSG_PREHEAT_PLA_BEDONLY_EN,
-	MSG_PREHEAT_PLA_BEDONLY_PL
-};
-
-const char MSG_PREHEAT_PLA_SETTINGS_EN[] PROGMEM = "Preheat PLA conf";
-const char MSG_PREHEAT_PLA_SETTINGS_CZ[] PROGMEM = "Predehrev PLA conf";
-const char MSG_PREHEAT_PLA_SETTINGS_PL[] PROGMEM = "Predehrev PLA conf";
-const char * const MSG_PREHEAT_PLA_SETTINGS_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREHEAT_PLA_SETTINGS_EN,
-	MSG_PREHEAT_PLA_SETTINGS_CZ,
-	MSG_PREHEAT_PLA_SETTINGS_EN,
-	MSG_PREHEAT_PLA_SETTINGS_EN,
-	MSG_PREHEAT_PLA_SETTINGS_PL
-};
-
-const char MSG_PREPARE_EN[] PROGMEM = "Prepare";
-const char MSG_PREPARE_CZ[] PROGMEM = "Priprava";
-const char MSG_PREPARE_PL[] PROGMEM = "Priprava";
-const char * const MSG_PREPARE_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_PREPARE_EN,
-	MSG_PREPARE_CZ,
-	MSG_PREPARE_EN,
-	MSG_PREPARE_EN,
-	MSG_PREPARE_PL
-};
-
 const char MSG_PRESS_EN[] PROGMEM = "And press the knob";
 const char MSG_PRESS_CZ[] PROGMEM = "A stisknete tlacitko";
 const char MSG_PRESS_IT[] PROGMEM = "Y pulse el mando";
@@ -1774,14 +1394,8 @@ const char * const MSG_RECTRACT_LANG_TABLE[1] PROGMEM = {
 };
 
 const char MSG_REFRESH_EN[] PROGMEM = "\xF8" "Refresh";
-const char MSG_REFRESH_CZ[] PROGMEM = "\xF8" "Obnovit";
-const char MSG_REFRESH_PL[] PROGMEM = "\xF8" "Obnovit";
-const char * const MSG_REFRESH_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_REFRESH_EN,
-	MSG_REFRESH_CZ,
-	MSG_REFRESH_EN,
-	MSG_REFRESH_EN,
-	MSG_REFRESH_PL
+const char * const MSG_REFRESH_LANG_TABLE[1] PROGMEM = {
+	MSG_REFRESH_EN
 };
 
 const char MSG_RESEND_EN[] PROGMEM = "Resend: ";
@@ -1790,14 +1404,8 @@ const char * const MSG_RESEND_LANG_TABLE[1] PROGMEM = {
 };
 
 const char MSG_RESTORE_FAILSAFE_EN[] PROGMEM = "Restore failsafe";
-const char MSG_RESTORE_FAILSAFE_CZ[] PROGMEM = "Obnovit vychozi";
-const char MSG_RESTORE_FAILSAFE_PL[] PROGMEM = "Obnovit vychozi";
-const char * const MSG_RESTORE_FAILSAFE_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_RESTORE_FAILSAFE_EN,
-	MSG_RESTORE_FAILSAFE_CZ,
-	MSG_RESTORE_FAILSAFE_EN,
-	MSG_RESTORE_FAILSAFE_EN,
-	MSG_RESTORE_FAILSAFE_PL
+const char * const MSG_RESTORE_FAILSAFE_LANG_TABLE[1] PROGMEM = {
+	MSG_RESTORE_FAILSAFE_EN
 };
 
 const char MSG_RESUME_PRINT_EN[] PROGMEM = "Resume print";
@@ -1826,11 +1434,6 @@ const char * const MSG_RESUMING_LANG_TABLE[LANG_NUM] PROGMEM = {
 	MSG_RESUMING_PL
 };
 
-const char MSG_RETRACT_EN[] PROGMEM = "Retract";
-const char * const MSG_RETRACT_LANG_TABLE[1] PROGMEM = {
-	MSG_RETRACT_EN
-};
-
 const char MSG_SD_CANT_ENTER_SUBDIR_EN[] PROGMEM = "Cannot enter subdir: ";
 const char * const MSG_SD_CANT_ENTER_SUBDIR_LANG_TABLE[1] PROGMEM = {
 	MSG_SD_CANT_ENTER_SUBDIR_EN
@@ -2203,25 +1806,13 @@ const char * const MSG_SETTINGS_LANG_TABLE[LANG_NUM] PROGMEM = {
 };
 
 const char MSG_SET_HOME_OFFSETS_EN[] PROGMEM = "Set home offsets";
-const char MSG_SET_HOME_OFFSETS_CZ[] PROGMEM = "Nastav pocatek home";
-const char MSG_SET_HOME_OFFSETS_PL[] PROGMEM = "Nastav pocatek home";
-const char * const MSG_SET_HOME_OFFSETS_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_SET_HOME_OFFSETS_EN,
-	MSG_SET_HOME_OFFSETS_CZ,
-	MSG_SET_HOME_OFFSETS_EN,
-	MSG_SET_HOME_OFFSETS_EN,
-	MSG_SET_HOME_OFFSETS_PL
+const char * const MSG_SET_HOME_OFFSETS_LANG_TABLE[1] PROGMEM = {
+	MSG_SET_HOME_OFFSETS_EN
 };
 
 const char MSG_SET_ORIGIN_EN[] PROGMEM = "Set origin";
-const char MSG_SET_ORIGIN_CZ[] PROGMEM = "Nastav pocatek";
-const char MSG_SET_ORIGIN_PL[] PROGMEM = "Nastav pocatek";
-const char * const MSG_SET_ORIGIN_LANG_TABLE[LANG_NUM] PROGMEM = {
-	MSG_SET_ORIGIN_EN,
-	MSG_SET_ORIGIN_CZ,
-	MSG_SET_ORIGIN_EN,
-	MSG_SET_ORIGIN_EN,
-	MSG_SET_ORIGIN_PL
+const char * const MSG_SET_ORIGIN_LANG_TABLE[1] PROGMEM = {
+	MSG_SET_ORIGIN_EN
 };
 
 const char MSG_SHOW_END_STOPS_EN[] PROGMEM = "Show end stops";
@@ -2503,16 +2094,6 @@ const char * const MSG_USERWAIT_LANG_TABLE[LANG_NUM] PROGMEM = {
 	MSG_USERWAIT_EN
 };
 
-const char MSG_VE_JERK_EN[] PROGMEM = "Ve-jerk";
-const char * const MSG_VE_JERK_LANG_TABLE[1] PROGMEM = {
-	MSG_VE_JERK_EN
-};
-
-const char MSG_VMAX_EN[] PROGMEM = "Vmax ";
-const char * const MSG_VMAX_LANG_TABLE[1] PROGMEM = {
-	MSG_VMAX_EN
-};
-
 const char MSG_VMIN_EN[] PROGMEM = "Vmin";
 const char * const MSG_VMIN_LANG_TABLE[1] PROGMEM = {
 	MSG_VMIN_EN
@@ -2533,16 +2114,6 @@ const char * const MSG_VTRAV_MIN_LANG_TABLE[1] PROGMEM = {
 	MSG_VTRAV_MIN_EN
 };
 
-const char MSG_VXY_JERK_EN[] PROGMEM = "Vxy-jerk";
-const char * const MSG_VXY_JERK_LANG_TABLE[1] PROGMEM = {
-	MSG_VXY_JERK_EN
-};
-
-const char MSG_VZ_JERK_EN[] PROGMEM = "Vz-jerk";
-const char * const MSG_VZ_JERK_LANG_TABLE[1] PROGMEM = {
-	MSG_VZ_JERK_EN
-};
-
 const char MSG_WATCH_EN[] PROGMEM = "Info screen";
 const char MSG_WATCH_CZ[] PROGMEM = "Informace";
 const char MSG_WATCH_IT[] PROGMEM = "Guarda";
@@ -2561,16 +2132,6 @@ const char * const MSG_WATCHDOG_RESET_LANG_TABLE[1] PROGMEM = {
 	MSG_WATCHDOG_RESET_EN
 };
 
-const char MSG_X_EN[] PROGMEM = "x";
-const char * const MSG_X_LANG_TABLE[1] PROGMEM = {
-	MSG_X_EN
-};
-
-const char MSG_XSTEPS_EN[] PROGMEM = "Xsteps/mm";
-const char * const MSG_XSTEPS_LANG_TABLE[1] PROGMEM = {
-	MSG_XSTEPS_EN
-};
-
 const char MSG_X_MAX_EN[] PROGMEM = "x_max: ";
 const char * const MSG_X_MAX_LANG_TABLE[1] PROGMEM = {
 	MSG_X_MAX_EN
@@ -2581,11 +2142,6 @@ const char * const MSG_X_MIN_LANG_TABLE[1] PROGMEM = {
 	MSG_X_MIN_EN
 };
 
-const char MSG_Y_EN[] PROGMEM = "y";
-const char * const MSG_Y_LANG_TABLE[1] PROGMEM = {
-	MSG_Y_EN
-};
-
 const char MSG_YES_EN[] PROGMEM = "Yes";
 const char MSG_YES_CZ[] PROGMEM = "Ano";
 const char MSG_YES_IT[] PROGMEM = "Si";
@@ -2599,11 +2155,6 @@ const char * const MSG_YES_LANG_TABLE[LANG_NUM] PROGMEM = {
 	MSG_YES_PL
 };
 
-const char MSG_YSTEPS_EN[] PROGMEM = "Ysteps/mm";
-const char * const MSG_YSTEPS_LANG_TABLE[1] PROGMEM = {
-	MSG_YSTEPS_EN
-};
-
 const char MSG_Y_MAX_EN[] PROGMEM = "y_max: ";
 const char * const MSG_Y_MAX_LANG_TABLE[1] PROGMEM = {
 	MSG_Y_MAX_EN
@@ -2614,11 +2165,6 @@ const char * const MSG_Y_MIN_LANG_TABLE[1] PROGMEM = {
 	MSG_Y_MIN_EN
 };
 
-const char MSG_Z_EN[] PROGMEM = "z";
-const char * const MSG_Z_LANG_TABLE[1] PROGMEM = {
-	MSG_Z_EN
-};
-
 const char MSG_ZPROBE_OUT_EN[] PROGMEM = "Z probe out. bed";
 const char * const MSG_ZPROBE_OUT_LANG_TABLE[1] PROGMEM = {
 	MSG_ZPROBE_OUT_EN
@@ -2629,11 +2175,6 @@ const char * const MSG_ZPROBE_ZOFFSET_LANG_TABLE[1] PROGMEM = {
 	MSG_ZPROBE_ZOFFSET_EN
 };
 
-const char MSG_ZSTEPS_EN[] PROGMEM = "Zsteps/mm";
-const char * const MSG_ZSTEPS_LANG_TABLE[1] PROGMEM = {
-	MSG_ZSTEPS_EN
-};
-
 const char MSG_Z_MAX_EN[] PROGMEM = "z_max: ";
 const char * const MSG_Z_MAX_LANG_TABLE[1] PROGMEM = {
 	MSG_Z_MAX_EN

+ 36 - 138
Firmware/language_all.h

@@ -24,8 +24,6 @@ extern unsigned char lang_selected;
 #define LANG_TABLE_SELECT_EXPLICIT(TABLE, LANG) ((const char*)(pgm_read_ptr(TABLE + (LANG))))
 #define LANG_TABLE_SELECT(TABLE) LANG_TABLE_SELECT_EXPLICIT(TABLE, lang_selected)
 
-extern const char* const MSG_ACC_LANG_TABLE[1];
-#define MSG_ACC LANG_TABLE_SELECT_EXPLICIT(MSG_ACC_LANG_TABLE, 0)
 extern const char* const MSG_ACTIVE_EXTRUDER_LANG_TABLE[1];
 #define MSG_ACTIVE_EXTRUDER LANG_TABLE_SELECT_EXPLICIT(MSG_ACTIVE_EXTRUDER_LANG_TABLE, 0)
 extern const char* const MSG_ADJUSTZ_LANG_TABLE[LANG_NUM];
@@ -34,12 +32,6 @@ extern const char* const MSG_AMAX_LANG_TABLE[1];
 #define MSG_AMAX LANG_TABLE_SELECT_EXPLICIT(MSG_AMAX_LANG_TABLE, 0)
 extern const char* const MSG_AUTHOR_LANG_TABLE[1];
 #define MSG_AUTHOR LANG_TABLE_SELECT_EXPLICIT(MSG_AUTHOR_LANG_TABLE, 0)
-extern const char* const MSG_AUTORETRACT_LANG_TABLE[1];
-#define MSG_AUTORETRACT LANG_TABLE_SELECT_EXPLICIT(MSG_AUTORETRACT_LANG_TABLE, 0)
-extern const char* const MSG_AUTOSTART_LANG_TABLE[1];
-#define MSG_AUTOSTART LANG_TABLE_SELECT_EXPLICIT(MSG_AUTOSTART_LANG_TABLE, 0)
-extern const char* const MSG_AUTOTEMP_LANG_TABLE[1];
-#define MSG_AUTOTEMP LANG_TABLE_SELECT_EXPLICIT(MSG_AUTOTEMP_LANG_TABLE, 0)
 extern const char* const MSG_AUTO_HOME_LANG_TABLE[LANG_NUM];
 #define MSG_AUTO_HOME LANG_TABLE_SELECT(MSG_AUTO_HOME_LANG_TABLE)
 extern const char* const MSG_A_RETRACT_LANG_TABLE[1];
@@ -48,8 +40,8 @@ extern const char* const MSG_BABYSTEPPING_X_LANG_TABLE[1];
 #define MSG_BABYSTEPPING_X LANG_TABLE_SELECT_EXPLICIT(MSG_BABYSTEPPING_X_LANG_TABLE, 0)
 extern const char* const MSG_BABYSTEPPING_Y_LANG_TABLE[1];
 #define MSG_BABYSTEPPING_Y LANG_TABLE_SELECT_EXPLICIT(MSG_BABYSTEPPING_Y_LANG_TABLE, 0)
-extern const char* const MSG_BABYSTEPPING_Z_LANG_TABLE[LANG_NUM];
-#define MSG_BABYSTEPPING_Z LANG_TABLE_SELECT(MSG_BABYSTEPPING_Z_LANG_TABLE)
+extern const char* const MSG_BABYSTEPPING_Z_LANG_TABLE[1];
+#define MSG_BABYSTEPPING_Z LANG_TABLE_SELECT_EXPLICIT(MSG_BABYSTEPPING_Z_LANG_TABLE, 0)
 extern const char* const MSG_BABYSTEP_X_LANG_TABLE[1];
 #define MSG_BABYSTEP_X LANG_TABLE_SELECT_EXPLICIT(MSG_BABYSTEP_X_LANG_TABLE, 0)
 extern const char* const MSG_BABYSTEP_Y_LANG_TABLE[1];
@@ -118,32 +110,16 @@ extern const char* const MSG_CHANGE_SUCCESS_LANG_TABLE[LANG_NUM];
 #define MSG_CHANGE_SUCCESS LANG_TABLE_SELECT(MSG_CHANGE_SUCCESS_LANG_TABLE)
 extern const char* const MSG_CHANGING_FILAMENT_LANG_TABLE[LANG_NUM];
 #define MSG_CHANGING_FILAMENT LANG_TABLE_SELECT(MSG_CHANGING_FILAMENT_LANG_TABLE)
-extern const char* const MSG_CNG_SDCARD_LANG_TABLE[LANG_NUM];
-#define MSG_CNG_SDCARD LANG_TABLE_SELECT(MSG_CNG_SDCARD_LANG_TABLE)
+extern const char* const MSG_CNG_SDCARD_LANG_TABLE[1];
+#define MSG_CNG_SDCARD LANG_TABLE_SELECT_EXPLICIT(MSG_CNG_SDCARD_LANG_TABLE, 0)
 extern const char* const MSG_CONFIGURATION_VER_LANG_TABLE[1];
 #define MSG_CONFIGURATION_VER LANG_TABLE_SELECT_EXPLICIT(MSG_CONFIGURATION_VER_LANG_TABLE, 0)
 extern const char* const MSG_CONFIRM_CARRIAGE_AT_THE_TOP_LANG_TABLE[LANG_NUM];
 #define MSG_CONFIRM_CARRIAGE_AT_THE_TOP LANG_TABLE_SELECT(MSG_CONFIRM_CARRIAGE_AT_THE_TOP_LANG_TABLE)
 extern const char* const MSG_CONFIRM_NOZZLE_CLEAN_LANG_TABLE[LANG_NUM];
 #define MSG_CONFIRM_NOZZLE_CLEAN LANG_TABLE_SELECT(MSG_CONFIRM_NOZZLE_CLEAN_LANG_TABLE)
-extern const char* const MSG_CONTRAST_LANG_TABLE[1];
-#define MSG_CONTRAST LANG_TABLE_SELECT_EXPLICIT(MSG_CONTRAST_LANG_TABLE, 0)
-extern const char* const MSG_CONTROL_LANG_TABLE[LANG_NUM];
-#define MSG_CONTROL LANG_TABLE_SELECT(MSG_CONTROL_LANG_TABLE)
-extern const char* const MSG_CONTROL_RETRACT_LANG_TABLE[1];
-#define MSG_CONTROL_RETRACT LANG_TABLE_SELECT_EXPLICIT(MSG_CONTROL_RETRACT_LANG_TABLE, 0)
-extern const char* const MSG_CONTROL_RETRACTF_LANG_TABLE[1];
-#define MSG_CONTROL_RETRACTF LANG_TABLE_SELECT_EXPLICIT(MSG_CONTROL_RETRACTF_LANG_TABLE, 0)
-extern const char* const MSG_CONTROL_RETRACT_RECOVER_LANG_TABLE[1];
-#define MSG_CONTROL_RETRACT_RECOVER LANG_TABLE_SELECT_EXPLICIT(MSG_CONTROL_RETRACT_RECOVER_LANG_TABLE, 0)
-extern const char* const MSG_CONTROL_RETRACT_RECOVERF_LANG_TABLE[1];
-#define MSG_CONTROL_RETRACT_RECOVERF LANG_TABLE_SELECT_EXPLICIT(MSG_CONTROL_RETRACT_RECOVERF_LANG_TABLE, 0)
-extern const char* const MSG_CONTROL_RETRACT_RECOVER_SWAP_LANG_TABLE[1];
-#define MSG_CONTROL_RETRACT_RECOVER_SWAP LANG_TABLE_SELECT_EXPLICIT(MSG_CONTROL_RETRACT_RECOVER_SWAP_LANG_TABLE, 0)
-extern const char* const MSG_CONTROL_RETRACT_SWAP_LANG_TABLE[1];
-#define MSG_CONTROL_RETRACT_SWAP LANG_TABLE_SELECT_EXPLICIT(MSG_CONTROL_RETRACT_SWAP_LANG_TABLE, 0)
-extern const char* const MSG_CONTROL_RETRACT_ZLIFT_LANG_TABLE[1];
-#define MSG_CONTROL_RETRACT_ZLIFT LANG_TABLE_SELECT_EXPLICIT(MSG_CONTROL_RETRACT_ZLIFT_LANG_TABLE, 0)
+extern const char* const MSG_CONTROL_LANG_TABLE[1];
+#define MSG_CONTROL LANG_TABLE_SELECT_EXPLICIT(MSG_CONTROL_LANG_TABLE, 0)
 extern const char* const MSG_COOLDOWN_LANG_TABLE[LANG_NUM];
 #define MSG_COOLDOWN LANG_TABLE_SELECT(MSG_COOLDOWN_LANG_TABLE)
 extern const char* const MSG_CORRECTLY_LANG_TABLE[LANG_NUM];
@@ -154,12 +130,8 @@ extern const char* const MSG_DISABLE_STEPPERS_LANG_TABLE[LANG_NUM];
 #define MSG_DISABLE_STEPPERS LANG_TABLE_SELECT(MSG_DISABLE_STEPPERS_LANG_TABLE)
 extern const char* const MSG_DWELL_LANG_TABLE[LANG_NUM];
 #define MSG_DWELL LANG_TABLE_SELECT(MSG_DWELL_LANG_TABLE)
-extern const char* const MSG_E_LANG_TABLE[1];
-#define MSG_E LANG_TABLE_SELECT_EXPLICIT(MSG_E_LANG_TABLE, 0)
 extern const char* const MSG_ENDSTOPS_HIT_LANG_TABLE[1];
 #define MSG_ENDSTOPS_HIT LANG_TABLE_SELECT_EXPLICIT(MSG_ENDSTOPS_HIT_LANG_TABLE, 0)
-extern const char* const MSG_ENDSTOP_ABORT_LANG_TABLE[1];
-#define MSG_ENDSTOP_ABORT LANG_TABLE_SELECT_EXPLICIT(MSG_ENDSTOP_ABORT_LANG_TABLE, 0)
 extern const char* const MSG_ENDSTOP_HIT_LANG_TABLE[1];
 #define MSG_ENDSTOP_HIT LANG_TABLE_SELECT_EXPLICIT(MSG_ENDSTOP_HIT_LANG_TABLE, 0)
 extern const char* const MSG_ENDSTOP_OPEN_LANG_TABLE[1];
@@ -186,12 +158,8 @@ extern const char* const MSG_ERR_NO_THERMISTORS_LANG_TABLE[1];
 #define MSG_ERR_NO_THERMISTORS LANG_TABLE_SELECT_EXPLICIT(MSG_ERR_NO_THERMISTORS_LANG_TABLE, 0)
 extern const char* const MSG_ERR_STOPPED_LANG_TABLE[1];
 #define MSG_ERR_STOPPED LANG_TABLE_SELECT_EXPLICIT(MSG_ERR_STOPPED_LANG_TABLE, 0)
-extern const char* const MSG_ESTEPS_LANG_TABLE[1];
-#define MSG_ESTEPS LANG_TABLE_SELECT_EXPLICIT(MSG_ESTEPS_LANG_TABLE, 0)
 extern const char* const MSG_EXTERNAL_RESET_LANG_TABLE[1];
 #define MSG_EXTERNAL_RESET LANG_TABLE_SELECT_EXPLICIT(MSG_EXTERNAL_RESET_LANG_TABLE, 0)
-extern const char* const MSG_EXTRUDE_LANG_TABLE[LANG_NUM];
-#define MSG_EXTRUDE LANG_TABLE_SELECT(MSG_EXTRUDE_LANG_TABLE)
 extern const char* const MSG_Enqueing_LANG_TABLE[1];
 #define MSG_Enqueing LANG_TABLE_SELECT_EXPLICIT(MSG_Enqueing_LANG_TABLE, 0)
 extern const char* const MSG_FACTOR_LANG_TABLE[1];
@@ -200,12 +168,6 @@ extern const char* const MSG_FAN_SPEED_LANG_TABLE[LANG_NUM];
 #define MSG_FAN_SPEED LANG_TABLE_SELECT(MSG_FAN_SPEED_LANG_TABLE)
 extern const char* const MSG_FILAMENTCHANGE_LANG_TABLE[LANG_NUM];
 #define MSG_FILAMENTCHANGE LANG_TABLE_SELECT(MSG_FILAMENTCHANGE_LANG_TABLE)
-extern const char* const MSG_FILAMENT_SIZE_EXTRUDER_0_LANG_TABLE[1];
-#define MSG_FILAMENT_SIZE_EXTRUDER_0 LANG_TABLE_SELECT_EXPLICIT(MSG_FILAMENT_SIZE_EXTRUDER_0_LANG_TABLE, 0)
-extern const char* const MSG_FILAMENT_SIZE_EXTRUDER_1_LANG_TABLE[1];
-#define MSG_FILAMENT_SIZE_EXTRUDER_1 LANG_TABLE_SELECT_EXPLICIT(MSG_FILAMENT_SIZE_EXTRUDER_1_LANG_TABLE, 0)
-extern const char* const MSG_FILAMENT_SIZE_EXTRUDER_2_LANG_TABLE[1];
-#define MSG_FILAMENT_SIZE_EXTRUDER_2 LANG_TABLE_SELECT_EXPLICIT(MSG_FILAMENT_SIZE_EXTRUDER_2_LANG_TABLE, 0)
 extern const char* const MSG_FILE_PRINTED_LANG_TABLE[1];
 #define MSG_FILE_PRINTED LANG_TABLE_SELECT_EXPLICIT(MSG_FILE_PRINTED_LANG_TABLE, 0)
 extern const char* const MSG_FILE_SAVED_LANG_TABLE[1];
@@ -218,12 +180,12 @@ extern const char* const MSG_FIND_BED_OFFSET_AND_SKEW_LINE3_LANG_TABLE[LANG_NUM]
 #define MSG_FIND_BED_OFFSET_AND_SKEW_LINE3 LANG_TABLE_SELECT(MSG_FIND_BED_OFFSET_AND_SKEW_LINE3_LANG_TABLE)
 extern const char* const MSG_FLOW_LANG_TABLE[LANG_NUM];
 #define MSG_FLOW LANG_TABLE_SELECT(MSG_FLOW_LANG_TABLE)
-extern const char* const MSG_FLOW0_LANG_TABLE[LANG_NUM];
-#define MSG_FLOW0 LANG_TABLE_SELECT(MSG_FLOW0_LANG_TABLE)
-extern const char* const MSG_FLOW1_LANG_TABLE[LANG_NUM];
-#define MSG_FLOW1 LANG_TABLE_SELECT(MSG_FLOW1_LANG_TABLE)
-extern const char* const MSG_FLOW2_LANG_TABLE[LANG_NUM];
-#define MSG_FLOW2 LANG_TABLE_SELECT(MSG_FLOW2_LANG_TABLE)
+extern const char* const MSG_FLOW0_LANG_TABLE[1];
+#define MSG_FLOW0 LANG_TABLE_SELECT_EXPLICIT(MSG_FLOW0_LANG_TABLE, 0)
+extern const char* const MSG_FLOW1_LANG_TABLE[1];
+#define MSG_FLOW1 LANG_TABLE_SELECT_EXPLICIT(MSG_FLOW1_LANG_TABLE, 0)
+extern const char* const MSG_FLOW2_LANG_TABLE[1];
+#define MSG_FLOW2 LANG_TABLE_SELECT_EXPLICIT(MSG_FLOW2_LANG_TABLE, 0)
 extern const char* const MSG_FREE_MEMORY_LANG_TABLE[1];
 #define MSG_FREE_MEMORY LANG_TABLE_SELECT_EXPLICIT(MSG_FREE_MEMORY_LANG_TABLE, 0)
 extern const char* const MSG_HEATING_LANG_TABLE[LANG_NUM];
@@ -244,8 +206,8 @@ extern const char* const MSG_IMPROVE_BED_OFFSET_AND_SKEW_LINE2_LANG_TABLE[LANG_N
 #define MSG_IMPROVE_BED_OFFSET_AND_SKEW_LINE2 LANG_TABLE_SELECT(MSG_IMPROVE_BED_OFFSET_AND_SKEW_LINE2_LANG_TABLE)
 extern const char* const MSG_IMPROVE_BED_OFFSET_AND_SKEW_LINE3_LANG_TABLE[LANG_NUM];
 #define MSG_IMPROVE_BED_OFFSET_AND_SKEW_LINE3 LANG_TABLE_SELECT(MSG_IMPROVE_BED_OFFSET_AND_SKEW_LINE3_LANG_TABLE)
-extern const char* const MSG_INIT_SDCARD_LANG_TABLE[LANG_NUM];
-#define MSG_INIT_SDCARD LANG_TABLE_SELECT(MSG_INIT_SDCARD_LANG_TABLE)
+extern const char* const MSG_INIT_SDCARD_LANG_TABLE[1];
+#define MSG_INIT_SDCARD LANG_TABLE_SELECT_EXPLICIT(MSG_INIT_SDCARD_LANG_TABLE, 0)
 extern const char* const MSG_INSERT_FILAMENT_LANG_TABLE[LANG_NUM];
 #define MSG_INSERT_FILAMENT LANG_TABLE_SELECT(MSG_INSERT_FILAMENT_LANG_TABLE)
 extern const char* const MSG_INVALID_EXTRUDER_LANG_TABLE[1];
@@ -262,8 +224,8 @@ extern const char* const MSG_LOADING_COLOR_LANG_TABLE[LANG_NUM];
 #define MSG_LOADING_COLOR LANG_TABLE_SELECT(MSG_LOADING_COLOR_LANG_TABLE)
 extern const char* const MSG_LOADING_FILAMENT_LANG_TABLE[LANG_NUM];
 #define MSG_LOADING_FILAMENT LANG_TABLE_SELECT(MSG_LOADING_FILAMENT_LANG_TABLE)
-extern const char* const MSG_LOAD_EPROM_LANG_TABLE[LANG_NUM];
-#define MSG_LOAD_EPROM LANG_TABLE_SELECT(MSG_LOAD_EPROM_LANG_TABLE)
+extern const char* const MSG_LOAD_EPROM_LANG_TABLE[1];
+#define MSG_LOAD_EPROM LANG_TABLE_SELECT_EXPLICIT(MSG_LOAD_EPROM_LANG_TABLE, 0)
 extern const char* const MSG_LOAD_FILAMENT_LANG_TABLE[LANG_NUM];
 #define MSG_LOAD_FILAMENT LANG_TABLE_SELECT(MSG_LOAD_FILAMENT_LANG_TABLE)
 extern const char* const MSG_M104_INVALID_EXTRUDER_LANG_TABLE[1];
@@ -292,24 +254,20 @@ extern const char* const MSG_MESH_BED_LEVELING_LANG_TABLE[1];
 #define MSG_MESH_BED_LEVELING LANG_TABLE_SELECT_EXPLICIT(MSG_MESH_BED_LEVELING_LANG_TABLE, 0)
 extern const char* const MSG_MIN_LANG_TABLE[1];
 #define MSG_MIN LANG_TABLE_SELECT_EXPLICIT(MSG_MIN_LANG_TABLE, 0)
-extern const char* const MSG_MOTION_LANG_TABLE[LANG_NUM];
-#define MSG_MOTION LANG_TABLE_SELECT(MSG_MOTION_LANG_TABLE)
-extern const char* const MSG_MOVE_01MM_LANG_TABLE[LANG_NUM];
-#define MSG_MOVE_01MM LANG_TABLE_SELECT(MSG_MOVE_01MM_LANG_TABLE)
-extern const char* const MSG_MOVE_10MM_LANG_TABLE[LANG_NUM];
-#define MSG_MOVE_10MM LANG_TABLE_SELECT(MSG_MOVE_10MM_LANG_TABLE)
-extern const char* const MSG_MOVE_1MM_LANG_TABLE[LANG_NUM];
-#define MSG_MOVE_1MM LANG_TABLE_SELECT(MSG_MOVE_1MM_LANG_TABLE)
+extern const char* const MSG_MOTION_LANG_TABLE[1];
+#define MSG_MOTION LANG_TABLE_SELECT_EXPLICIT(MSG_MOTION_LANG_TABLE, 0)
+extern const char* const MSG_MOVE_01MM_LANG_TABLE[1];
+#define MSG_MOVE_01MM LANG_TABLE_SELECT_EXPLICIT(MSG_MOVE_01MM_LANG_TABLE, 0)
+extern const char* const MSG_MOVE_10MM_LANG_TABLE[1];
+#define MSG_MOVE_10MM LANG_TABLE_SELECT_EXPLICIT(MSG_MOVE_10MM_LANG_TABLE, 0)
+extern const char* const MSG_MOVE_1MM_LANG_TABLE[1];
+#define MSG_MOVE_1MM LANG_TABLE_SELECT_EXPLICIT(MSG_MOVE_1MM_LANG_TABLE, 0)
 extern const char* const MSG_MOVE_AXIS_LANG_TABLE[LANG_NUM];
 #define MSG_MOVE_AXIS LANG_TABLE_SELECT(MSG_MOVE_AXIS_LANG_TABLE)
 extern const char* const MSG_MOVE_CARRIAGE_TO_THE_TOP_LANG_TABLE[LANG_NUM];
 #define MSG_MOVE_CARRIAGE_TO_THE_TOP LANG_TABLE_SELECT(MSG_MOVE_CARRIAGE_TO_THE_TOP_LANG_TABLE)
 extern const char* const MSG_MOVE_E_LANG_TABLE[LANG_NUM];
 #define MSG_MOVE_E LANG_TABLE_SELECT(MSG_MOVE_E_LANG_TABLE)
-extern const char* const MSG_MOVE_E1_LANG_TABLE[1];
-#define MSG_MOVE_E1 LANG_TABLE_SELECT_EXPLICIT(MSG_MOVE_E1_LANG_TABLE, 0)
-extern const char* const MSG_MOVE_E2_LANG_TABLE[1];
-#define MSG_MOVE_E2 LANG_TABLE_SELECT_EXPLICIT(MSG_MOVE_E2_LANG_TABLE, 0)
 extern const char* const MSG_MOVE_X_LANG_TABLE[LANG_NUM];
 #define MSG_MOVE_X LANG_TABLE_SELECT(MSG_MOVE_X_LANG_TABLE)
 extern const char* const MSG_MOVE_Y_LANG_TABLE[LANG_NUM];
@@ -328,10 +286,10 @@ extern const char* const MSG_NOT_LOADED_LANG_TABLE[LANG_NUM];
 #define MSG_NOT_LOADED LANG_TABLE_SELECT(MSG_NOT_LOADED_LANG_TABLE)
 extern const char* const MSG_NOZZLE_LANG_TABLE[LANG_NUM];
 #define MSG_NOZZLE LANG_TABLE_SELECT(MSG_NOZZLE_LANG_TABLE)
-extern const char* const MSG_NOZZLE1_LANG_TABLE[LANG_NUM];
-#define MSG_NOZZLE1 LANG_TABLE_SELECT(MSG_NOZZLE1_LANG_TABLE)
-extern const char* const MSG_NOZZLE2_LANG_TABLE[LANG_NUM];
-#define MSG_NOZZLE2 LANG_TABLE_SELECT(MSG_NOZZLE2_LANG_TABLE)
+extern const char* const MSG_NOZZLE1_LANG_TABLE[1];
+#define MSG_NOZZLE1 LANG_TABLE_SELECT_EXPLICIT(MSG_NOZZLE1_LANG_TABLE, 0)
+extern const char* const MSG_NOZZLE2_LANG_TABLE[1];
+#define MSG_NOZZLE2 LANG_TABLE_SELECT_EXPLICIT(MSG_NOZZLE2_LANG_TABLE, 0)
 extern const char* const MSG_NO_CARD_LANG_TABLE[LANG_NUM];
 #define MSG_NO_CARD LANG_TABLE_SELECT(MSG_NO_CARD_LANG_TABLE)
 extern const char* const MSG_NO_MOVE_LANG_TABLE[LANG_NUM];
@@ -346,14 +304,6 @@ extern const char* const MSG_PAUSE_PRINT_LANG_TABLE[LANG_NUM];
 #define MSG_PAUSE_PRINT LANG_TABLE_SELECT(MSG_PAUSE_PRINT_LANG_TABLE)
 extern const char* const MSG_PICK_Z_LANG_TABLE[LANG_NUM];
 #define MSG_PICK_Z LANG_TABLE_SELECT(MSG_PICK_Z_LANG_TABLE)
-extern const char* const MSG_PID_C_LANG_TABLE[1];
-#define MSG_PID_C LANG_TABLE_SELECT_EXPLICIT(MSG_PID_C_LANG_TABLE, 0)
-extern const char* const MSG_PID_D_LANG_TABLE[1];
-#define MSG_PID_D LANG_TABLE_SELECT_EXPLICIT(MSG_PID_D_LANG_TABLE, 0)
-extern const char* const MSG_PID_I_LANG_TABLE[1];
-#define MSG_PID_I LANG_TABLE_SELECT_EXPLICIT(MSG_PID_I_LANG_TABLE, 0)
-extern const char* const MSG_PID_P_LANG_TABLE[1];
-#define MSG_PID_P LANG_TABLE_SELECT_EXPLICIT(MSG_PID_P_LANG_TABLE, 0)
 extern const char* const MSG_PLANNER_BUFFER_BYTES_LANG_TABLE[1];
 #define MSG_PLANNER_BUFFER_BYTES LANG_TABLE_SELECT_EXPLICIT(MSG_PLANNER_BUFFER_BYTES_LANG_TABLE, 0)
 extern const char* const MSG_PLEASE_WAIT_LANG_TABLE[LANG_NUM];
@@ -364,38 +314,8 @@ extern const char* const MSG_POWERUP_LANG_TABLE[1];
 #define MSG_POWERUP LANG_TABLE_SELECT_EXPLICIT(MSG_POWERUP_LANG_TABLE, 0)
 extern const char* const MSG_PREHEAT_LANG_TABLE[LANG_NUM];
 #define MSG_PREHEAT LANG_TABLE_SELECT(MSG_PREHEAT_LANG_TABLE)
-extern const char* const MSG_PREHEAT_ABS_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_ABS LANG_TABLE_SELECT(MSG_PREHEAT_ABS_LANG_TABLE)
-extern const char* const MSG_PREHEAT_ABS0_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_ABS0 LANG_TABLE_SELECT(MSG_PREHEAT_ABS0_LANG_TABLE)
-extern const char* const MSG_PREHEAT_ABS012_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_ABS012 LANG_TABLE_SELECT(MSG_PREHEAT_ABS012_LANG_TABLE)
-extern const char* const MSG_PREHEAT_ABS1_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_ABS1 LANG_TABLE_SELECT(MSG_PREHEAT_ABS1_LANG_TABLE)
-extern const char* const MSG_PREHEAT_ABS2_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_ABS2 LANG_TABLE_SELECT(MSG_PREHEAT_ABS2_LANG_TABLE)
-extern const char* const MSG_PREHEAT_ABS_BEDONLY_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_ABS_BEDONLY LANG_TABLE_SELECT(MSG_PREHEAT_ABS_BEDONLY_LANG_TABLE)
-extern const char* const MSG_PREHEAT_ABS_SETTINGS_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_ABS_SETTINGS LANG_TABLE_SELECT(MSG_PREHEAT_ABS_SETTINGS_LANG_TABLE)
 extern const char* const MSG_PREHEAT_NOZZLE_LANG_TABLE[LANG_NUM];
 #define MSG_PREHEAT_NOZZLE LANG_TABLE_SELECT(MSG_PREHEAT_NOZZLE_LANG_TABLE)
-extern const char* const MSG_PREHEAT_PLA_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_PLA LANG_TABLE_SELECT(MSG_PREHEAT_PLA_LANG_TABLE)
-extern const char* const MSG_PREHEAT_PLA0_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_PLA0 LANG_TABLE_SELECT(MSG_PREHEAT_PLA0_LANG_TABLE)
-extern const char* const MSG_PREHEAT_PLA012_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_PLA012 LANG_TABLE_SELECT(MSG_PREHEAT_PLA012_LANG_TABLE)
-extern const char* const MSG_PREHEAT_PLA1_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_PLA1 LANG_TABLE_SELECT(MSG_PREHEAT_PLA1_LANG_TABLE)
-extern const char* const MSG_PREHEAT_PLA2_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_PLA2 LANG_TABLE_SELECT(MSG_PREHEAT_PLA2_LANG_TABLE)
-extern const char* const MSG_PREHEAT_PLA_BEDONLY_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_PLA_BEDONLY LANG_TABLE_SELECT(MSG_PREHEAT_PLA_BEDONLY_LANG_TABLE)
-extern const char* const MSG_PREHEAT_PLA_SETTINGS_LANG_TABLE[LANG_NUM];
-#define MSG_PREHEAT_PLA_SETTINGS LANG_TABLE_SELECT(MSG_PREHEAT_PLA_SETTINGS_LANG_TABLE)
-extern const char* const MSG_PREPARE_LANG_TABLE[LANG_NUM];
-#define MSG_PREPARE LANG_TABLE_SELECT(MSG_PREPARE_LANG_TABLE)
 extern const char* const MSG_PRESS_LANG_TABLE[LANG_NUM];
 #define MSG_PRESS LANG_TABLE_SELECT(MSG_PRESS_LANG_TABLE)
 extern const char* const MSG_PRINT_ABORTED_LANG_TABLE[LANG_NUM];
@@ -410,18 +330,16 @@ extern const char* const MSG_REBOOT_LANG_TABLE[LANG_NUM];
 #define MSG_REBOOT LANG_TABLE_SELECT(MSG_REBOOT_LANG_TABLE)
 extern const char* const MSG_RECTRACT_LANG_TABLE[1];
 #define MSG_RECTRACT LANG_TABLE_SELECT_EXPLICIT(MSG_RECTRACT_LANG_TABLE, 0)
-extern const char* const MSG_REFRESH_LANG_TABLE[LANG_NUM];
-#define MSG_REFRESH LANG_TABLE_SELECT(MSG_REFRESH_LANG_TABLE)
+extern const char* const MSG_REFRESH_LANG_TABLE[1];
+#define MSG_REFRESH LANG_TABLE_SELECT_EXPLICIT(MSG_REFRESH_LANG_TABLE, 0)
 extern const char* const MSG_RESEND_LANG_TABLE[1];
 #define MSG_RESEND LANG_TABLE_SELECT_EXPLICIT(MSG_RESEND_LANG_TABLE, 0)
-extern const char* const MSG_RESTORE_FAILSAFE_LANG_TABLE[LANG_NUM];
-#define MSG_RESTORE_FAILSAFE LANG_TABLE_SELECT(MSG_RESTORE_FAILSAFE_LANG_TABLE)
+extern const char* const MSG_RESTORE_FAILSAFE_LANG_TABLE[1];
+#define MSG_RESTORE_FAILSAFE LANG_TABLE_SELECT_EXPLICIT(MSG_RESTORE_FAILSAFE_LANG_TABLE, 0)
 extern const char* const MSG_RESUME_PRINT_LANG_TABLE[LANG_NUM];
 #define MSG_RESUME_PRINT LANG_TABLE_SELECT(MSG_RESUME_PRINT_LANG_TABLE)
 extern const char* const MSG_RESUMING_LANG_TABLE[LANG_NUM];
 #define MSG_RESUMING LANG_TABLE_SELECT(MSG_RESUMING_LANG_TABLE)
-extern const char* const MSG_RETRACT_LANG_TABLE[1];
-#define MSG_RETRACT LANG_TABLE_SELECT_EXPLICIT(MSG_RETRACT_LANG_TABLE, 0)
 extern const char* const MSG_SD_CANT_ENTER_SUBDIR_LANG_TABLE[1];
 #define MSG_SD_CANT_ENTER_SUBDIR LANG_TABLE_SELECT_EXPLICIT(MSG_SD_CANT_ENTER_SUBDIR_LANG_TABLE, 0)
 extern const char* const MSG_SD_CANT_OPEN_SUBDIR_LANG_TABLE[1];
@@ -502,10 +420,10 @@ extern const char* const MSG_SERIAL_ERROR_MENU_STRUCTURE_LANG_TABLE[1];
 #define MSG_SERIAL_ERROR_MENU_STRUCTURE LANG_TABLE_SELECT_EXPLICIT(MSG_SERIAL_ERROR_MENU_STRUCTURE_LANG_TABLE, 0)
 extern const char* const MSG_SETTINGS_LANG_TABLE[LANG_NUM];
 #define MSG_SETTINGS LANG_TABLE_SELECT(MSG_SETTINGS_LANG_TABLE)
-extern const char* const MSG_SET_HOME_OFFSETS_LANG_TABLE[LANG_NUM];
-#define MSG_SET_HOME_OFFSETS LANG_TABLE_SELECT(MSG_SET_HOME_OFFSETS_LANG_TABLE)
-extern const char* const MSG_SET_ORIGIN_LANG_TABLE[LANG_NUM];
-#define MSG_SET_ORIGIN LANG_TABLE_SELECT(MSG_SET_ORIGIN_LANG_TABLE)
+extern const char* const MSG_SET_HOME_OFFSETS_LANG_TABLE[1];
+#define MSG_SET_HOME_OFFSETS LANG_TABLE_SELECT_EXPLICIT(MSG_SET_HOME_OFFSETS_LANG_TABLE, 0)
+extern const char* const MSG_SET_ORIGIN_LANG_TABLE[1];
+#define MSG_SET_ORIGIN LANG_TABLE_SELECT_EXPLICIT(MSG_SET_ORIGIN_LANG_TABLE, 0)
 extern const char* const MSG_SHOW_END_STOPS_LANG_TABLE[LANG_NUM];
 #define MSG_SHOW_END_STOPS LANG_TABLE_SELECT(MSG_SHOW_END_STOPS_LANG_TABLE)
 extern const char* const MSG_SILENT_MODE_OFF_LANG_TABLE[LANG_NUM];
@@ -558,10 +476,6 @@ extern const char* const MSG_USB_PRINTING_LANG_TABLE[LANG_NUM];
 #define MSG_USB_PRINTING LANG_TABLE_SELECT(MSG_USB_PRINTING_LANG_TABLE)
 extern const char* const MSG_USERWAIT_LANG_TABLE[LANG_NUM];
 #define MSG_USERWAIT LANG_TABLE_SELECT(MSG_USERWAIT_LANG_TABLE)
-extern const char* const MSG_VE_JERK_LANG_TABLE[1];
-#define MSG_VE_JERK LANG_TABLE_SELECT_EXPLICIT(MSG_VE_JERK_LANG_TABLE, 0)
-extern const char* const MSG_VMAX_LANG_TABLE[1];
-#define MSG_VMAX LANG_TABLE_SELECT_EXPLICIT(MSG_VMAX_LANG_TABLE, 0)
 extern const char* const MSG_VMIN_LANG_TABLE[1];
 #define MSG_VMIN LANG_TABLE_SELECT_EXPLICIT(MSG_VMIN_LANG_TABLE, 0)
 extern const char* const MSG_VOLUMETRIC_LANG_TABLE[1];
@@ -570,40 +484,24 @@ extern const char* const MSG_VOLUMETRIC_ENABLED_LANG_TABLE[1];
 #define MSG_VOLUMETRIC_ENABLED LANG_TABLE_SELECT_EXPLICIT(MSG_VOLUMETRIC_ENABLED_LANG_TABLE, 0)
 extern const char* const MSG_VTRAV_MIN_LANG_TABLE[1];
 #define MSG_VTRAV_MIN LANG_TABLE_SELECT_EXPLICIT(MSG_VTRAV_MIN_LANG_TABLE, 0)
-extern const char* const MSG_VXY_JERK_LANG_TABLE[1];
-#define MSG_VXY_JERK LANG_TABLE_SELECT_EXPLICIT(MSG_VXY_JERK_LANG_TABLE, 0)
-extern const char* const MSG_VZ_JERK_LANG_TABLE[1];
-#define MSG_VZ_JERK LANG_TABLE_SELECT_EXPLICIT(MSG_VZ_JERK_LANG_TABLE, 0)
 extern const char* const MSG_WATCH_LANG_TABLE[LANG_NUM];
 #define MSG_WATCH LANG_TABLE_SELECT(MSG_WATCH_LANG_TABLE)
 extern const char* const MSG_WATCHDOG_RESET_LANG_TABLE[1];
 #define MSG_WATCHDOG_RESET LANG_TABLE_SELECT_EXPLICIT(MSG_WATCHDOG_RESET_LANG_TABLE, 0)
-extern const char* const MSG_X_LANG_TABLE[1];
-#define MSG_X LANG_TABLE_SELECT_EXPLICIT(MSG_X_LANG_TABLE, 0)
-extern const char* const MSG_XSTEPS_LANG_TABLE[1];
-#define MSG_XSTEPS LANG_TABLE_SELECT_EXPLICIT(MSG_XSTEPS_LANG_TABLE, 0)
 extern const char* const MSG_X_MAX_LANG_TABLE[1];
 #define MSG_X_MAX LANG_TABLE_SELECT_EXPLICIT(MSG_X_MAX_LANG_TABLE, 0)
 extern const char* const MSG_X_MIN_LANG_TABLE[1];
 #define MSG_X_MIN LANG_TABLE_SELECT_EXPLICIT(MSG_X_MIN_LANG_TABLE, 0)
-extern const char* const MSG_Y_LANG_TABLE[1];
-#define MSG_Y LANG_TABLE_SELECT_EXPLICIT(MSG_Y_LANG_TABLE, 0)
 extern const char* const MSG_YES_LANG_TABLE[LANG_NUM];
 #define MSG_YES LANG_TABLE_SELECT(MSG_YES_LANG_TABLE)
-extern const char* const MSG_YSTEPS_LANG_TABLE[1];
-#define MSG_YSTEPS LANG_TABLE_SELECT_EXPLICIT(MSG_YSTEPS_LANG_TABLE, 0)
 extern const char* const MSG_Y_MAX_LANG_TABLE[1];
 #define MSG_Y_MAX LANG_TABLE_SELECT_EXPLICIT(MSG_Y_MAX_LANG_TABLE, 0)
 extern const char* const MSG_Y_MIN_LANG_TABLE[1];
 #define MSG_Y_MIN LANG_TABLE_SELECT_EXPLICIT(MSG_Y_MIN_LANG_TABLE, 0)
-extern const char* const MSG_Z_LANG_TABLE[1];
-#define MSG_Z LANG_TABLE_SELECT_EXPLICIT(MSG_Z_LANG_TABLE, 0)
 extern const char* const MSG_ZPROBE_OUT_LANG_TABLE[1];
 #define MSG_ZPROBE_OUT LANG_TABLE_SELECT_EXPLICIT(MSG_ZPROBE_OUT_LANG_TABLE, 0)
 extern const char* const MSG_ZPROBE_ZOFFSET_LANG_TABLE[1];
 #define MSG_ZPROBE_ZOFFSET LANG_TABLE_SELECT_EXPLICIT(MSG_ZPROBE_ZOFFSET_LANG_TABLE, 0)
-extern const char* const MSG_ZSTEPS_LANG_TABLE[1];
-#define MSG_ZSTEPS LANG_TABLE_SELECT_EXPLICIT(MSG_ZSTEPS_LANG_TABLE, 0)
 extern const char* const MSG_Z_MAX_LANG_TABLE[1];
 #define MSG_Z_MAX LANG_TABLE_SELECT_EXPLICIT(MSG_Z_MAX_LANG_TABLE, 0)
 extern const char* const MSG_Z_MIN_LANG_TABLE[1];

+ 110 - 0
Firmware/language_common.h

@@ -0,0 +1,110 @@
+// These are the system messages, which shall always be in English.
+
++define MSG_Enqueing                        "enqueing \""
++define MSG_POWERUP                         "PowerUp"
+define MSG_EXTERNAL_RESET                  " External Reset"
+define MSG_BROWNOUT_RESET                  " Brown out Reset"
+define MSG_WATCHDOG_RESET                  " Watchdog Reset"
+define MSG_SOFTWARE_RESET                  " Software Reset"
+define MSG_AUTHOR                          " | Author: "
++define MSG_CONFIGURATION_VER               " Last Updated: "
++define MSG_FREE_MEMORY                     " Free Memory: "
++define MSG_PLANNER_BUFFER_BYTES            "  PlannerBufferBytes: "
++define MSG_OK                              "ok"
+define MSG_FILE_SAVED                      "Done saving file."
+define MSG_ERR_LINE_NO                     "Line Number is not Last Line Number+1, Last Line: "
++define MSG_ERR_CHECKSUM_MISMATCH           "checksum mismatch, Last Line: "
++define MSG_ERR_NO_CHECKSUM                 "No Checksum with line number, Last Line: "
+define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "No Line Number with checksum, Last Line: "
+define MSG_FILE_PRINTED                    "Done printing file"
++define MSG_BEGIN_FILE_LIST                 "Begin file list"
++define MSG_END_FILE_LIST                   "End file list"
++define MSG_M104_INVALID_EXTRUDER           "M104 Invalid extruder "
++define MSG_M105_INVALID_EXTRUDER           "M105 Invalid extruder "
++define MSG_M200_INVALID_EXTRUDER           "M200 Invalid extruder "
++define MSG_M218_INVALID_EXTRUDER           "M218 Invalid extruder "
++define MSG_M221_INVALID_EXTRUDER           "M221 Invalid extruder "
++define MSG_ERR_NO_THERMISTORS              "No thermistors - no temperature"
++define MSG_M109_INVALID_EXTRUDER           "M109 Invalid extruder "
++define MSG_M115_REPORT                     "FIRMWARE_NAME:Marlin V1.0.2; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" CUSTOM_MENDEL_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n"
+define MSG_COUNT_X                         " Count X: "
++define MSG_ERR_KILLED                      "Printer halted. kill() called!"
++define MSG_ERR_STOPPED                     "Printer stopped due to errors. Fix the error and use M999 to restart. (Temperature is reset. Set it after restarting)"
++define MSG_RESEND                          "Resend: "
+define MSG_UNKNOWN_COMMAND                 "Unknown command: \""
+define MSG_ACTIVE_EXTRUDER                 "Active Extruder: "
+define MSG_INVALID_EXTRUDER                "Invalid extruder"
+
+define MSG_X_MIN                           "x_min: "
+define MSG_X_MAX                           "x_max: "
+define MSG_Y_MIN                           "y_min: "
+define MSG_Y_MAX                           "y_max: "
+define MSG_Z_MIN                           "z_min: "
+define MSG_Z_MAX                           "z_max: "
+
++define MSG_M119_REPORT                     "Reporting endstop status"
++define MSG_ENDSTOP_HIT                     "TRIGGERED"
++define MSG_ENDSTOP_OPEN                    "open"
++define MSG_HOTEND_OFFSET                   "Hotend offsets:"
++define MSG_SD_CANT_OPEN_SUBDIR             "Cannot open subdir"
++define MSG_SD_INIT_FAIL                    "SD init fail"
++define MSG_SD_VOL_INIT_FAIL                "volume.init failed"
++define MSG_SD_OPENROOT_FAIL                "openRoot failed"
++define MSG_SD_CARD_OK                      "SD card ok"
++define MSG_SD_WORKDIR_FAIL                 "workDir open failed"
++define MSG_SD_OPEN_FILE_FAIL               "open failed, File: "
++define MSG_SD_FILE_OPENED                  "File opened: "
+define MSG_SD_SIZE                         " Size: "
++define MSG_SD_FILE_SELECTED                "File selected"
++define MSG_SD_WRITE_TO_FILE                "Writing to file: "
++define MSG_SD_PRINTING_BYTE                "SD printing byte "
++define MSG_SD_NOT_PRINTING                 "Not SD printing"
++define MSG_SD_ERR_WRITE_TO_FILE            "error writing to file"
++define MSG_SD_CANT_ENTER_SUBDIR            "Cannot enter subdir: "
++define MSG_STEPPER_TOO_HIGH                "Steprate too high: "
++define MSG_ENDSTOPS_HIT                    "endstops hit: "
++define MSG_ERR_COLD_EXTRUDE_STOP           " cold extrusion prevented"
+define MSG_ERR_LONG_EXTRUDE_STOP           " too long extrusion prevented"
++define MSG_BABYSTEPPING_X                  "Babystepping X"
++define MSG_BABYSTEPPING_Y                  "Babystepping Y"
++define MSG_BABYSTEPPING_Z                  "Adjusting Z"
++define MSG_SERIAL_ERROR_MENU_STRUCTURE     "Error in menu structure"
++define MSG_SET_HOME_OFFSETS                "Set home offsets"
++define MSG_SET_ORIGIN                      "Set origin"
+define MSG_ON                              "On "
+define MSG_OFF                             "Off"
+
++define MSG_VMIN                            "Vmin"
++define MSG_VTRAV_MIN                       "VTrav min"
++define MSG_AMAX                            "Amax "
++define MSG_A_RETRACT                       "A-retract"
++define MSG_MOVE_01MM                       "Move 0.1mm"
++define MSG_MOVE_1MM                        "Move 1mm"
++define MSG_MOVE_10MM                       "Move 10mm"
+
+
++define MSG_NOZZLE1                         "Nozzle2"
++define MSG_NOZZLE2                         "Nozzle3"
++define MSG_FLOW0                           "Flow 0"
++define MSG_FLOW1                           "Flow 1"
++define MSG_FLOW2                           "Flow 2"
++define MSG_CONTROL                         "Control"
++define MSG_MIN                             " \002 Min"
++define MSG_MAX                             " \002 Max"
++define MSG_FACTOR                          " \002 Fact"
++define MSG_MOTION                          "Motion"
++define MSG_VOLUMETRIC                      "Filament"
++define MSG_VOLUMETRIC_ENABLED		        "E in mm3"
++define MSG_STORE_EPROM                     "Store memory"
++define MSG_LOAD_EPROM                      "Load memory"
++define MSG_RESTORE_FAILSAFE                "Restore failsafe"
++define MSG_REFRESH                         "\xF8" "Refresh"
+
++define MSG_INIT_SDCARD                     "Init. SD card"
++define MSG_CNG_SDCARD                      "Change SD card"
+define MSG_ZPROBE_OUT                      "Z probe out. bed"
+define MSG_POSITION_UNKNOWN                "Home X/Y before Z"
+define MSG_ZPROBE_ZOFFSET                  "Z Offset"
++define MSG_BABYSTEP_X                      "Babystep X"
++define MSG_BABYSTEP_Y                      "Babystep Y"
++define MSG_RECTRACT                        "Rectract"

+ 0 - 90
Firmware/language_cz.h

@@ -5,47 +5,22 @@
  * Please note these are limited to 17 characters!
  *
  */
-#ifndef LANGUAGE_CZ_H
-#define LANGUAGE_CZ_H
-
 #define WELCOME_MSG                         CUSTOM_MENDEL_NAME " ok"
 #define MSG_SD_INSERTED                     "Karta vlozena"
 #define MSG_SD_REMOVED                      "Karta vyjmuta"
 #define MSG_MAIN                            "Hlavni nabidka"
-#define MSG_AUTOSTART                       "Autostart"
 #define MSG_DISABLE_STEPPERS                "Vypnout motory"
 #define MSG_AUTO_HOME                       "Auto home"
 #define MSG_SET_HOME_OFFSETS                "Nastav pocatek home"
 #define MSG_SET_ORIGIN                      "Nastav pocatek"
-#define MSG_PREHEAT_PLA                     "Predehrev PLA"
-#define MSG_PREHEAT_PLA0                    "Predehrev PLA 1"
-#define MSG_PREHEAT_PLA1                    "Predehrev PLA 2"
-#define MSG_PREHEAT_PLA2                    "Predehrev PLA 3"
-#define MSG_PREHEAT_PLA012                  "Predehrev PLA All"
-#define MSG_PREHEAT_PLA_BEDONLY             "Predehrev PLA Bed"
-#define MSG_PREHEAT_PLA_SETTINGS            "Predehrev PLA conf"
-#define MSG_PREHEAT_ABS                     "Predehrev ABS"
-#define MSG_PREHEAT_ABS0                    "Predehrev ABS 1"
-#define MSG_PREHEAT_ABS1                    "Predehrev ABS 2"
-#define MSG_PREHEAT_ABS2                    "Predehrev ABS 3"
-#define MSG_PREHEAT_ABS012                  "Predehrev ABS All"
-#define MSG_PREHEAT_ABS_BEDONLY             "Predehrev ABS Bed"
-#define MSG_PREHEAT_ABS_SETTINGS            "Predehrev ABS conf"
 #define MSG_COOLDOWN                        "Zchladit"
 #define MSG_SWITCH_PS_ON                    "Vypnout zdroj"
 #define MSG_SWITCH_PS_OFF                   "Zapnout zdroj"
-#define MSG_EXTRUDE                         "Extrudovat"
-#define MSG_RETRACT                         "Retract"
 #define MSG_MOVE_AXIS                       "Posunout osu"
 #define MSG_MOVE_X                          "Posunout X"
 #define MSG_MOVE_Y                          "Posunout Y"
 #define MSG_MOVE_Z                          "Posunout Z"
 #define MSG_MOVE_E                          "Extruder"
-#define MSG_MOVE_E1                         "Extruder2"
-#define MSG_MOVE_E2                         "Extruder3"
-#define MSG_MOVE_01MM                       "Posunout o 0.1mm"
-#define MSG_MOVE_1MM                        "Posunout o 1mm"
-#define MSG_MOVE_10MM                       "Posunout o 10mm"
 #define MSG_SPEED                           "Rychlost"
 #define MSG_NOZZLE                          "Tryska"
 #define MSG_NOZZLE1                         "Tryska2"
@@ -60,44 +35,15 @@
 #define MSG_MIN                             " \002 Min"
 #define MSG_MAX                             " \002 Max"
 #define MSG_FACTOR                          " \002 Fact"
-#define MSG_AUTOTEMP                        "Autotemp"
-#define MSG_ON                              "On "
-#define MSG_OFF                             "Off"
-#define MSG_PID_P                           "PID-P"
-#define MSG_PID_I                           "PID-I"
-#define MSG_PID_D                           "PID-D"
-#define MSG_PID_C                           "PID-C"
-#define MSG_ACC                             "Accel"
-#define MSG_VXY_JERK                        "Vxy-jerk"
-#define MSG_VZ_JERK                         "Vz-jerk"
-#define MSG_VE_JERK                         "Ve-jerk"
-#define MSG_VMAX                            "Vmax "
-#define MSG_X                               "x"
-#define MSG_Y                               "y"
-#define MSG_Z                               "z"
-#define MSG_E                               "e"
-#define MSG_VMIN                            "Vmin"
-#define MSG_VTRAV_MIN                       "VTrav min"
-#define MSG_AMAX                            "Amax "
-#define MSG_A_RETRACT                       "A-retract"
-#define MSG_XSTEPS                          "Xsteps/mm"
-#define MSG_YSTEPS                          "Ysteps/mm"
-#define MSG_ZSTEPS                          "Zsteps/mm"
-#define MSG_ESTEPS                          "Esteps/mm"
 #define MSG_TEMPERATURE                     "Teplota"
 #define MSG_MOTION                          "Pohyb"
 #define MSG_VOLUMETRIC                      "Filament"
 #define MSG_VOLUMETRIC_ENABLED		        "E in mm3"
-#define MSG_FILAMENT_SIZE_EXTRUDER_0        "Fil. Dia. 1"
-#define MSG_FILAMENT_SIZE_EXTRUDER_1        "Fil. Dia. 2"
-#define MSG_FILAMENT_SIZE_EXTRUDER_2        "Fil. Dia. 3"
-#define MSG_CONTRAST                        "LCD contrast"
 #define MSG_STORE_EPROM                     "Store memory"
 #define MSG_LOAD_EPROM                      "Ulozit pamet"
 #define MSG_RESTORE_FAILSAFE                "Obnovit vychozi"
 #define MSG_REFRESH                         "\xF8" "Obnovit"
 #define MSG_WATCH                           "Informace"
-#define MSG_PREPARE                         "Priprava"
 #define MSG_TUNE                            "Ladit"
 #define MSG_PAUSE_PRINT                     "Pozastavit tisk"
 #define MSG_RESUME_PRINT                    "Pokracovat"
@@ -111,24 +57,12 @@
 #define MSG_NO_MOVE                         "No move."
 #define MSG_KILLED                          "KILLED. "
 #define MSG_STOPPED                         "STOPPED. "
-#define MSG_CONTROL_RETRACT                 "Retract mm"
-#define MSG_CONTROL_RETRACT_SWAP            "Swap Re.mm"
-#define MSG_CONTROL_RETRACTF                "Retract  V"
-#define MSG_CONTROL_RETRACT_ZLIFT           "Hop mm"
-#define MSG_CONTROL_RETRACT_RECOVER         "UnRet +mm"
-#define MSG_CONTROL_RETRACT_RECOVER_SWAP    "S UnRet+mm"
-#define MSG_CONTROL_RETRACT_RECOVERF        "UnRet  V"
-#define MSG_AUTORETRACT                     "AutoRetr."
 #define MSG_FILAMENTCHANGE                  "Vymenit filament"
 #define MSG_INIT_SDCARD                     "Inic. SD"
 #define MSG_CNG_SDCARD                      "Vymenit SD"
-#define MSG_ZPROBE_OUT                      "Z probe out. bed"
-#define MSG_POSITION_UNKNOWN                "Home X/Y before Z"
-#define MSG_ZPROBE_ZOFFSET                  "Z Offset"
 #define MSG_BABYSTEP_X                      "Babystep X"
 #define MSG_BABYSTEP_Y                      "Babystep Y"
 #define MSG_BABYSTEP_Z                      "Doladeni osy Z"
-#define MSG_ENDSTOP_ABORT                   "Endstop abort"
 #define MSG_ADJUSTZ							"Auto doladit Z ?"
 #define MSG_PICK_Z							"Vyberte vytisk"
 
@@ -165,21 +99,12 @@
 
 #define MSG_Enqueing                        "enqueing \""
 #define MSG_POWERUP                         "PowerUp"
-#define MSG_EXTERNAL_RESET                  " External Reset"
-#define MSG_BROWNOUT_RESET                  " Brown out Reset"
-#define MSG_WATCHDOG_RESET                  " Watchdog Reset"
-#define MSG_SOFTWARE_RESET                  " Software Reset"
-#define MSG_AUTHOR                          " | Author: "
 #define MSG_CONFIGURATION_VER               " Last Updated: "
 #define MSG_FREE_MEMORY                     " Free Memory: "
 #define MSG_PLANNER_BUFFER_BYTES            "  PlannerBufferBytes: "
 #define MSG_OK                              "ok"
-#define MSG_FILE_SAVED                      "Done saving file."
-#define MSG_ERR_LINE_NO                     "Line Number is not Last Line Number+1, Last Line: "
 #define MSG_ERR_CHECKSUM_MISMATCH           "checksum mismatch, Last Line: "
 #define MSG_ERR_NO_CHECKSUM                 "No Checksum with line number, Last Line: "
-#define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "No Line Number with checksum, Last Line: "
-#define MSG_FILE_PRINTED                    "Done printing file"
 #define MSG_BEGIN_FILE_LIST                 "Begin file list"
 #define MSG_END_FILE_LIST                   "End file list"
 #define MSG_M104_INVALID_EXTRUDER           "M104 Invalid extruder "
@@ -194,23 +119,12 @@
 #define MSG_BED_HEATING                     "Zahrivani bed"
 #define MSG_BED_DONE                        "Bed OK."
 #define MSG_M115_REPORT                     "FIRMWARE_NAME:Marlin V1.0.2; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" CUSTOM_MENDEL_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n"
-#define MSG_COUNT_X                         " Count X: "
 #define MSG_ERR_KILLED                      "Printer halted. kill() called!"
 #define MSG_ERR_STOPPED                     "Printer stopped due to errors. Fix the error and use M999 to restart. (Temperature is reset. Set it after restarting)"
 #define MSG_RESEND                          "Resend: "
-#define MSG_UNKNOWN_COMMAND                 "Unknown command: \""
-#define MSG_ACTIVE_EXTRUDER                 "Active Extruder: "
-#define MSG_INVALID_EXTRUDER                "Invalid extruder"
-#define MSG_X_MIN                           "x_min: "
-#define MSG_X_MAX                           "x_max: "
-#define MSG_Y_MIN                           "y_min: "
-#define MSG_Y_MAX                           "y_max: "
-#define MSG_Z_MIN                           "z_min: "
-#define MSG_Z_MAX                           "z_max: "
 #define MSG_M119_REPORT                     "Reporting endstop status"
 #define MSG_ENDSTOP_HIT                     "TRIGGERED"
 #define MSG_ENDSTOP_OPEN                    "open"
-#define MSG_HOTEND_OFFSET                   "Hotend offsets:"
 
 #define MSG_SD_CANT_OPEN_SUBDIR             "Cannot open subdir"
 #define MSG_SD_INIT_FAIL                    "SD init fail"
@@ -220,7 +134,6 @@
 #define MSG_SD_WORKDIR_FAIL                 "workDir open failed"
 #define MSG_SD_OPEN_FILE_FAIL               "open failed, File: "
 #define MSG_SD_FILE_OPENED                  "File opened: "
-#define MSG_SD_SIZE                         " Size: "
 #define MSG_SD_FILE_SELECTED                "File selected"
 #define MSG_SD_WRITE_TO_FILE                "Writing to file: "
 #define MSG_SD_PRINTING_BYTE                "SD printing byte "
@@ -231,7 +144,6 @@
 #define MSG_STEPPER_TOO_HIGH                "Steprate too high: "
 #define MSG_ENDSTOPS_HIT                    "endstops hit: "
 #define MSG_ERR_COLD_EXTRUDE_STOP           " cold extrusion prevented"
-#define MSG_ERR_LONG_EXTRUDE_STOP           " too long extrusion prevented"
 #define MSG_BABYSTEPPING_X                  "Babystepping X"
 #define MSG_BABYSTEPPING_Y                  "Babystepping Y"
 #define MSG_BABYSTEPPING_Z                  "Dostavovani Z"
@@ -322,5 +234,3 @@
 
 
 #define MSG_MENU_CALIBRATION									"Kalibrace"
-
-#endif // LANGUAGE_EN_H

+ 22 - 111
Firmware/language_en.h

@@ -5,47 +5,23 @@
  * Please note these are limited to 17 characters!
  *
  */
-#ifndef LANGUAGE_EN_H
-#define LANGUAGE_EN_H
 
 #define WELCOME_MSG                         CUSTOM_MENDEL_NAME " ready."
 #define MSG_SD_INSERTED                     "Card inserted"
 #define MSG_SD_REMOVED                      "Card removed"
 #define MSG_MAIN                            "Main"
-#define MSG_AUTOSTART                       "Autostart"
 #define MSG_DISABLE_STEPPERS                "Disable steppers"
 #define MSG_AUTO_HOME                       "Auto home"
 #define MSG_SET_HOME_OFFSETS                "Set home offsets"
 #define MSG_SET_ORIGIN                      "Set origin"
-#define MSG_PREHEAT_PLA                     "Preheat PLA"
-#define MSG_PREHEAT_PLA0                    "Preheat PLA 1"
-#define MSG_PREHEAT_PLA1                    "Preheat PLA 2"
-#define MSG_PREHEAT_PLA2                    "Preheat PLA 3"
-#define MSG_PREHEAT_PLA012                  "Preheat PLA All"
-#define MSG_PREHEAT_PLA_BEDONLY             "Preheat PLA Bed"
-#define MSG_PREHEAT_PLA_SETTINGS            "Preheat PLA conf"
-#define MSG_PREHEAT_ABS                     "Preheat ABS"
-#define MSG_PREHEAT_ABS0                    "Preheat ABS 1"
-#define MSG_PREHEAT_ABS1                    "Preheat ABS 2"
-#define MSG_PREHEAT_ABS2                    "Preheat ABS 3"
-#define MSG_PREHEAT_ABS012                  "Preheat ABS All"
-#define MSG_PREHEAT_ABS_BEDONLY             "Preheat ABS Bed"
-#define MSG_PREHEAT_ABS_SETTINGS            "Preheat ABS conf"
 #define MSG_COOLDOWN                        "Cooldown"
 #define MSG_SWITCH_PS_ON                    "Switch power on"
 #define MSG_SWITCH_PS_OFF                   "Switch power off"
-#define MSG_EXTRUDE                         "Extrude"
-#define MSG_RETRACT                         "Retract"
 #define MSG_MOVE_AXIS                       "Move axis"
 #define MSG_MOVE_X                          "Move X"
 #define MSG_MOVE_Y                          "Move Y"
 #define MSG_MOVE_Z                          "Move Z"
 #define MSG_MOVE_E                          "Extruder"
-#define MSG_MOVE_E1                         "Extruder2"
-#define MSG_MOVE_E2                         "Extruder3"
-#define MSG_MOVE_01MM                       "Move 0.1mm"
-#define MSG_MOVE_1MM                        "Move 1mm"
-#define MSG_MOVE_10MM                       "Move 10mm"
 #define MSG_SPEED                           "Speed"
 #define MSG_NOZZLE                          "Nozzle"
 #define MSG_NOZZLE1                         "Nozzle2"
@@ -60,44 +36,15 @@
 #define MSG_MIN                             " \002 Min"
 #define MSG_MAX                             " \002 Max"
 #define MSG_FACTOR                          " \002 Fact"
-#define MSG_AUTOTEMP                        "Autotemp"
-#define MSG_ON                              "On "
-#define MSG_OFF                             "Off"
-#define MSG_PID_P                           "PID-P"
-#define MSG_PID_I                           "PID-I"
-#define MSG_PID_D                           "PID-D"
-#define MSG_PID_C                           "PID-C"
-#define MSG_ACC                             "Accel"
-#define MSG_VXY_JERK                        "Vxy-jerk"
-#define MSG_VZ_JERK                         "Vz-jerk"
-#define MSG_VE_JERK                         "Ve-jerk"
-#define MSG_VMAX                            "Vmax "
-#define MSG_X                               "x"
-#define MSG_Y                               "y"
-#define MSG_Z                               "z"
-#define MSG_E                               "e"
-#define MSG_VMIN                            "Vmin"
-#define MSG_VTRAV_MIN                       "VTrav min"
-#define MSG_AMAX                            "Amax "
-#define MSG_A_RETRACT                       "A-retract"
-#define MSG_XSTEPS                          "Xsteps/mm"
-#define MSG_YSTEPS                          "Ysteps/mm"
-#define MSG_ZSTEPS                          "Zsteps/mm"
-#define MSG_ESTEPS                          "Esteps/mm"
 #define MSG_TEMPERATURE                     "Temperature"
 #define MSG_MOTION                          "Motion"
 #define MSG_VOLUMETRIC                      "Filament"
 #define MSG_VOLUMETRIC_ENABLED		        "E in mm3"
-#define MSG_FILAMENT_SIZE_EXTRUDER_0        "Fil. Dia. 1"
-#define MSG_FILAMENT_SIZE_EXTRUDER_1        "Fil. Dia. 2"
-#define MSG_FILAMENT_SIZE_EXTRUDER_2        "Fil. Dia. 3"
-#define MSG_CONTRAST                        "LCD contrast"
 #define MSG_STORE_EPROM                     "Store memory"
 #define MSG_LOAD_EPROM                      "Load memory"
 #define MSG_RESTORE_FAILSAFE                "Restore failsafe"
 #define MSG_REFRESH                         "\xF8" "Refresh"
 #define MSG_WATCH                           "Info screen"
-#define MSG_PREPARE                         "Prepare"
 #define MSG_TUNE                            "Tune"
 #define MSG_PAUSE_PRINT                     "Pause print"
 #define MSG_RESUME_PRINT                    "Resume print"
@@ -111,24 +58,12 @@
 #define MSG_NO_MOVE                         "No move."
 #define MSG_KILLED                          "KILLED. "
 #define MSG_STOPPED                         "STOPPED. "
-#define MSG_CONTROL_RETRACT                 "Retract mm"
-#define MSG_CONTROL_RETRACT_SWAP            "Swap Re.mm"
-#define MSG_CONTROL_RETRACTF                "Retract  V"
-#define MSG_CONTROL_RETRACT_ZLIFT           "Hop mm"
-#define MSG_CONTROL_RETRACT_RECOVER         "UnRet +mm"
-#define MSG_CONTROL_RETRACT_RECOVER_SWAP    "S UnRet+mm"
-#define MSG_CONTROL_RETRACT_RECOVERF        "UnRet  V"
-#define MSG_AUTORETRACT                     "AutoRetr."
 #define MSG_FILAMENTCHANGE                  "Change filament"
 #define MSG_INIT_SDCARD                     "Init. SD card"
 #define MSG_CNG_SDCARD                      "Change SD card"
-#define MSG_ZPROBE_OUT                      "Z probe out. bed"
-#define MSG_POSITION_UNKNOWN                "Home X/Y before Z"
-#define MSG_ZPROBE_ZOFFSET                  "Z Offset"
 #define MSG_BABYSTEP_X                      "Babystep X"
 #define MSG_BABYSTEP_Y                      "Babystep Y"
 #define MSG_BABYSTEP_Z                      "Live adjust Z"
-#define MSG_ENDSTOP_ABORT                   "Endstop abort"
 #define MSG_ADJUSTZ							"Auto adjust Z ?"
 #define MSG_PICK_Z							"Pick print"
 
@@ -162,21 +97,12 @@
 
 #define MSG_Enqueing                        "enqueing \""
 #define MSG_POWERUP                         "PowerUp"
-#define MSG_EXTERNAL_RESET                  " External Reset"
-#define MSG_BROWNOUT_RESET                  " Brown out Reset"
-#define MSG_WATCHDOG_RESET                  " Watchdog Reset"
-#define MSG_SOFTWARE_RESET                  " Software Reset"
-#define MSG_AUTHOR                          " | Author: "
 #define MSG_CONFIGURATION_VER               " Last Updated: "
 #define MSG_FREE_MEMORY                     " Free Memory: "
 #define MSG_PLANNER_BUFFER_BYTES            "  PlannerBufferBytes: "
 #define MSG_OK                              "ok"
-#define MSG_FILE_SAVED                      "Done saving file."
-#define MSG_ERR_LINE_NO                     "Line Number is not Last Line Number+1, Last Line: "
 #define MSG_ERR_CHECKSUM_MISMATCH           "checksum mismatch, Last Line: "
 #define MSG_ERR_NO_CHECKSUM                 "No Checksum with line number, Last Line: "
-#define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "No Line Number with checksum, Last Line: "
-#define MSG_FILE_PRINTED                    "Done printing file"
 #define MSG_BEGIN_FILE_LIST                 "Begin file list"
 #define MSG_END_FILE_LIST                   "End file list"
 #define MSG_M104_INVALID_EXTRUDER           "M104 Invalid extruder "
@@ -191,23 +117,12 @@
 #define MSG_BED_HEATING                     "Bed Heating"
 #define MSG_BED_DONE                        "Bed done"
 #define MSG_M115_REPORT                     "FIRMWARE_NAME:Marlin V1.0.2; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" CUSTOM_MENDEL_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n"
-#define MSG_COUNT_X                         " Count X: "
 #define MSG_ERR_KILLED                      "Printer halted. kill() called!"
 #define MSG_ERR_STOPPED                     "Printer stopped due to errors. Fix the error and use M999 to restart. (Temperature is reset. Set it after restarting)"
 #define MSG_RESEND                          "Resend: "
-#define MSG_UNKNOWN_COMMAND                 "Unknown command: \""
-#define MSG_ACTIVE_EXTRUDER                 "Active Extruder: "
-#define MSG_INVALID_EXTRUDER                "Invalid extruder"
-#define MSG_X_MIN                           "x_min: "
-#define MSG_X_MAX                           "x_max: "
-#define MSG_Y_MIN                           "y_min: "
-#define MSG_Y_MAX                           "y_max: "
-#define MSG_Z_MIN                           "z_min: "
-#define MSG_Z_MAX                           "z_max: "
 #define MSG_M119_REPORT                     "Reporting endstop status"
 #define MSG_ENDSTOP_HIT                     "TRIGGERED"
 #define MSG_ENDSTOP_OPEN                    "open"
-#define MSG_HOTEND_OFFSET                   "Hotend offsets:"
 
 #define MSG_SD_CANT_OPEN_SUBDIR             "Cannot open subdir"
 #define MSG_SD_INIT_FAIL                    "SD init fail"
@@ -217,7 +132,6 @@
 #define MSG_SD_WORKDIR_FAIL                 "workDir open failed"
 #define MSG_SD_OPEN_FILE_FAIL               "open failed, File: "
 #define MSG_SD_FILE_OPENED                  "File opened: "
-#define MSG_SD_SIZE                         " Size: "
 #define MSG_SD_FILE_SELECTED                "File selected"
 #define MSG_SD_WRITE_TO_FILE                "Writing to file: "
 #define MSG_SD_PRINTING_BYTE                "SD printing byte "
@@ -228,7 +142,6 @@
 #define MSG_STEPPER_TOO_HIGH                "Steprate too high: "
 #define MSG_ENDSTOPS_HIT                    "endstops hit: "
 #define MSG_ERR_COLD_EXTRUDE_STOP           " cold extrusion prevented"
-#define MSG_ERR_LONG_EXTRUDE_STOP           " too long extrusion prevented"
 #define MSG_BABYSTEPPING_X                  "Babystepping X"
 #define MSG_BABYSTEPPING_Y                  "Babystepping Y"
 #define MSG_BABYSTEPPING_Z                  "Adjusting Z"
@@ -275,37 +188,37 @@
 #define MSG_CALIBRATE_BED					"Calibrate XYZ"
 #define MSG_CALIBRATE_BED_RESET				"Reset XYZ calibr."
 
-#define MSG_MOVE_CARRIAGE_TO_THE_TOP 		"Calibrating XYZ. Move Z carriage up to the end stoppers. Click when done."
-#define MSG_CONFIRM_NOZZLE_CLEAN			"Please clean the nozzle for calibration. Click when done."
-#define MSG_CONFIRM_CARRIAGE_AT_THE_TOP		"Are left and right Z~carriages all up?"
+#define(length=20,lines=4) MSG_MOVE_CARRIAGE_TO_THE_TOP 	"Calibrating XYZ. Move Z carriage up to the end stoppers. Click when done."
+#define(length=20,lines=4) MSG_CONFIRM_NOZZLE_CLEAN			"Please clean the nozzle for calibration. Click when done."
+#define(length=20,lines=2) MSG_CONFIRM_CARRIAGE_AT_THE_TOP	"Are left and right Z~carriages all up?"
 
 #define MSG_FIND_BED_OFFSET_AND_SKEW_LINE1	"Searching bed"
 #define MSG_FIND_BED_OFFSET_AND_SKEW_LINE2	"calibration point"
-#define MSG_FIND_BED_OFFSET_AND_SKEW_LINE3	" of 4"
+#define(length=14) MSG_FIND_BED_OFFSET_AND_SKEW_LINE3	" of 4"
 #define MSG_IMPROVE_BED_OFFSET_AND_SKEW_LINE1	"Improving bed"
 #define MSG_IMPROVE_BED_OFFSET_AND_SKEW_LINE2	"calibration point"
-#define MSG_IMPROVE_BED_OFFSET_AND_SKEW_LINE3	" of 9"
+#define(length=14) MSG_IMPROVE_BED_OFFSET_AND_SKEW_LINE3	" of 9"
 
-#define MSG_BED_SKEW_OFFSET_DETECTION_POINT_NOT_FOUND			"XYZ calibration failed. Bed calibration point was not found."
-#define MSG_BED_SKEW_OFFSET_DETECTION_FITTING_FAILED			"XYZ calibration failed. Please consult the manual."
-#define MSG_BED_SKEW_OFFSET_DETECTION_PERFECT					"XYZ calibration ok. X/Y axes are perpendicular."
-#define MSG_BED_SKEW_OFFSET_DETECTION_SKEW_MILD					"XYZ calibration all right. X/Y axes are slightly skewed."
-#define MSG_BED_SKEW_OFFSET_DETECTION_SKEW_EXTREME				"X/Y skewed severly. Skew will be corrected automatically."
-#define MSG_BED_SKEW_OFFSET_DETECTION_FAILED_FRONT_LEFT_FAR		"XYZ calibration failed. Left front calibration point not reachable."
-#define MSG_BED_SKEW_OFFSET_DETECTION_FAILED_FRONT_RIGHT_FAR	"XYZ calibration failed. Right front calibration point not reachable."
-#define MSG_BED_SKEW_OFFSET_DETECTION_FAILED_FRONT_BOTH_FAR		"XYZ calibration failed. Front calibration points not reachable."
-#define MSG_BED_SKEW_OFFSET_DETECTION_WARNING_FRONT_LEFT_FAR	"XYZ calibration compromised. Left front calibration point not reachable."
-#define MSG_BED_SKEW_OFFSET_DETECTION_WARNING_FRONT_RIGHT_FAR	"XYZ calibration compromised. Right front calibration point not reachable."
-#define MSG_BED_SKEW_OFFSET_DETECTION_WARNING_FRONT_BOTH_FAR	"XYZ calibration compromised. Front calibration points not reachable."
+#define(length=20,lines=4) MSG_BED_SKEW_OFFSET_DETECTION_POINT_NOT_FOUND			"XYZ calibration failed. Bed calibration point was not found."
+#define(length=20,lines=4) MSG_BED_SKEW_OFFSET_DETECTION_FITTING_FAILED				"XYZ calibration failed. Please consult the manual."
+#define(length=20,lines=4) MSG_BED_SKEW_OFFSET_DETECTION_PERFECT					"XYZ calibration ok. X/Y axes are perpendicular."
+#define(length=20,lines=4) MSG_BED_SKEW_OFFSET_DETECTION_SKEW_MILD					"XYZ calibration all right. X/Y axes are slightly skewed."
+#define(length=20,lines=4) MSG_BED_SKEW_OFFSET_DETECTION_SKEW_EXTREME				"X/Z skewed severly. Skew will be corrected automatically."
+#define(length=20,lines=4) MSG_BED_SKEW_OFFSET_DETECTION_FAILED_FRONT_LEFT_FAR		"XYZ calibration failed. Left front calibration point not reachable."
+#define(length=20,lines=4) MSG_BED_SKEW_OFFSET_DETECTION_FAILED_FRONT_RIGHT_FAR		"XYZ calibration failed. Right front calibration point not reachable."
+#define(length=20,lines=4) MSG_BED_SKEW_OFFSET_DETECTION_FAILED_FRONT_BOTH_FAR		"XYZ calibration failed. Front calibration points not reachable."
+#define(length=20,lines=4) MSG_BED_SKEW_OFFSET_DETECTION_WARNING_FRONT_LEFT_FAR		"XYZ calibration compromised. Left front calibration point not reachable."
+#define(length=20,lines=4) MSG_BED_SKEW_OFFSET_DETECTION_WARNING_FRONT_RIGHT_FAR	"XYZ calibration compromised. Right front calibration point not reachable."
+#define(length=20,lines=4) MSG_BED_SKEW_OFFSET_DETECTION_WARNING_FRONT_BOTH_FAR		"XYZ calibration compromised. Front calibration points not reachable."
 
-#define MSG_BED_LEVELING_FAILED_POINT_LOW						"Bed leveling failed. Sensor didnt trigger. Debris on nozzle? Waiting for reset."
-#define MSG_BED_LEVELING_FAILED_POINT_HIGH						"Bed leveling failed. Sensor triggered too high. Waiting for reset."
-#define MSG_BED_LEVELING_FAILED_PROBE_DISCONNECTED				"Bed leveling failed. Sensor disconnected or cable broken. Waiting for reset."
+#define(length=20,lines=4) MSG_BED_LEVELING_FAILED_POINT_LOW						"Bed leveling failed. Sensor didnt trigger. Debris on nozzle? Waiting for reset."
+#define(length=20,lines=4) MSG_BED_LEVELING_FAILED_POINT_HIGH						"Bed leveling failed. Sensor triggered too high. Waiting for reset."
+#define(length=20,lines=4) MSG_BED_LEVELING_FAILED_PROBE_DISCONNECTED				"Bed leveling failed. Sensor disconnected or cable broken. Waiting for reset."
 
-#define MSG_NEW_FIRMWARE_AVAILABLE								"New firmware version available:"
-#define MSG_NEW_FIRMWARE_PLEASE_UPGRADE							"Please upgrade."
+#define MSG_NEW_FIRMWARE_AVAILABLE													"New firmware version available:"
+#define MSG_NEW_FIRMWARE_PLEASE_UPGRADE												"Please upgrade."
 
-#define MSG_BABYSTEP_Z_NOT_SET									"Printer has not been calibrated yet. Run calibration G-code to adjust Z height."
+#define(length=20,lines=4) MSG_BABYSTEP_Z_NOT_SET									"Printer has not been calibrated yet. Run calibration G-code to adjust Z height."
 
 #define MSG_BED_CORRECTION_MENU									"Bed level correct"
 #define MSG_BED_CORRECTION_LEFT									"Left side  um"
@@ -318,5 +231,3 @@
 #define MSG_MENU_CALIBRATION									"Calibration"
 #define MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_OFF					"SD card [normal]"
 #define MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_ON					"SD card [FlshAir]"
-
-#endif // LANGUAGE_EN_H

+ 0 - 89
Firmware/language_es.h

@@ -5,8 +5,6 @@
  * Please note these are limited to 17 characters!
  *
  */
-#ifndef LANGUAGE_ES_H
-#define LANGUAGE_ES_H
 
 #define WELCOME_MSG                         CUSTOM_MENDEL_NAME " lista"
 #define MSG_SD_INSERTED                     "Tarjeta colocada"
@@ -83,21 +81,12 @@
 
 #define MSG_Enqueing                        "enqueing \""
 #define MSG_POWERUP                         "PowerUp"
-#define MSG_EXTERNAL_RESET                  " External Reset"
-#define MSG_BROWNOUT_RESET                  " Brown out Reset"
-#define MSG_WATCHDOG_RESET                  " Watchdog Reset"
-#define MSG_SOFTWARE_RESET                  " Software Reset"
-#define MSG_AUTHOR                          " | Author: "
 #define MSG_CONFIGURATION_VER               " Last Updated: "
 #define MSG_FREE_MEMORY                     " Free Memory: "
 #define MSG_PLANNER_BUFFER_BYTES            "  PlannerBufferBytes: "
 #define MSG_OK                              "ok"
-#define MSG_FILE_SAVED                      "Done saving file."
-#define MSG_ERR_LINE_NO                     "Line Number is not Last Line Number+1, Last Line: "
 #define MSG_ERR_CHECKSUM_MISMATCH           "checksum mismatch, Last Line: "
 #define MSG_ERR_NO_CHECKSUM                 "No Checksum with line number, Last Line: "
-#define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "No Line Number with checksum, Last Line: "
-#define MSG_FILE_PRINTED                    "Done printing file"
 #define MSG_BEGIN_FILE_LIST                 "Begin file list"
 #define MSG_END_FILE_LIST                   "End file list"
 #define MSG_M104_INVALID_EXTRUDER           "M104 Invalid extruder "
@@ -108,23 +97,12 @@
 #define MSG_ERR_NO_THERMISTORS              "No thermistors - no temperature"
 #define MSG_M109_INVALID_EXTRUDER           "M109 Invalid extruder "
 #define MSG_M115_REPORT                     "FIRMWARE_NAME:Marlin V1.0.2; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" CUSTOM_MENDEL_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n"
-#define MSG_COUNT_X                         " Count X: "
 #define MSG_ERR_KILLED                      "Printer halted. kill() called!"
 #define MSG_ERR_STOPPED                     "Printer stopped due to errors. Fix the error and use M999 to restart. (Temperature is reset. Set it after restarting)"
 #define MSG_RESEND                          "Resend: "
-#define MSG_UNKNOWN_COMMAND                 "Unknown command: \""
-#define MSG_ACTIVE_EXTRUDER                 "Active Extruder: "
-#define MSG_INVALID_EXTRUDER                "Invalid extruder"
-#define MSG_X_MIN                           "x_min: "
-#define MSG_X_MAX                           "x_max: "
-#define MSG_Y_MIN                           "y_min: "
-#define MSG_Y_MAX                           "y_max: "
-#define MSG_Z_MIN                           "z_min: "
-#define MSG_Z_MAX                           "z_max: "
 #define MSG_M119_REPORT                     "Reporting endstop status"
 #define MSG_ENDSTOP_HIT                     "TRIGGERED"
 #define MSG_ENDSTOP_OPEN                    "open"
-#define MSG_HOTEND_OFFSET                   "Hotend offsets:"
 #define MSG_SD_CANT_OPEN_SUBDIR             "Cannot open subdir"
 #define MSG_SD_INIT_FAIL                    "SD init fail"
 #define MSG_SD_VOL_INIT_FAIL                "volume.init failed"
@@ -133,7 +111,6 @@
 #define MSG_SD_WORKDIR_FAIL                 "workDir open failed"
 #define MSG_SD_OPEN_FILE_FAIL               "open failed, File: "
 #define MSG_SD_FILE_OPENED                  "File opened: "
-#define MSG_SD_SIZE                         " Size: "
 #define MSG_SD_FILE_SELECTED                "File selected"
 #define MSG_SD_WRITE_TO_FILE                "Writing to file: "
 #define MSG_SD_PRINTING_BYTE                "SD printing byte "
@@ -143,61 +120,14 @@
 #define MSG_STEPPER_TOO_HIGH                "Steprate too high: "
 #define MSG_ENDSTOPS_HIT                    "endstops hit: "
 #define MSG_ERR_COLD_EXTRUDE_STOP           " cold extrusion prevented"
-#define MSG_ERR_LONG_EXTRUDE_STOP           " too long extrusion prevented"
 #define MSG_BABYSTEPPING_X                  "Babystepping X"
 #define MSG_BABYSTEPPING_Y                  "Babystepping Y"
 #define MSG_BABYSTEPPING_Z                  "Adjusting Z"
 #define MSG_SERIAL_ERROR_MENU_STRUCTURE     "Error in menu structure"
 #define MSG_SET_HOME_OFFSETS                "Set home offsets"
 #define MSG_SET_ORIGIN                      "Set origin"
-#define MSG_PREHEAT_PLA                     "Preheat PLA"
-#define MSG_PREHEAT_PLA0                    "Preheat PLA 1"
-#define MSG_PREHEAT_PLA1                    "Preheat PLA 2"
-#define MSG_PREHEAT_PLA2                    "Preheat PLA 3"
-#define MSG_PREHEAT_PLA012                  "Preheat PLA All"
-#define MSG_PREHEAT_PLA_BEDONLY             "Preheat PLA Bed"
-#define MSG_PREHEAT_PLA_SETTINGS            "Preheat PLA conf"
-#define MSG_PREHEAT_ABS                     "Preheat ABS"
-#define MSG_PREHEAT_ABS0                    "Preheat ABS 1"
-#define MSG_PREHEAT_ABS1                    "Preheat ABS 2"
-#define MSG_PREHEAT_ABS2                    "Preheat ABS 3"
-#define MSG_PREHEAT_ABS012                  "Preheat ABS All"
-#define MSG_PREHEAT_ABS_BEDONLY             "Preheat ABS Bed"
-#define MSG_PREHEAT_ABS_SETTINGS            "Preheat ABS conf"
 #define MSG_SWITCH_PS_ON                    "Switch power on"
 #define MSG_SWITCH_PS_OFF                   "Switch power off"
-#define MSG_AUTOTEMP                        "Autotemp"
-#define MSG_ON                              "On "
-#define MSG_OFF                             "Off"
-#define MSG_PID_P                           "PID-P"
-#define MSG_PID_I                           "PID-I"
-#define MSG_PID_D                           "PID-D"
-#define MSG_PID_C                           "PID-C"
-#define MSG_ACC                             "Accel"
-#define MSG_VXY_JERK                        "Vxy-jerk"
-#define MSG_VZ_JERK                         "Vz-jerk"
-#define MSG_VE_JERK                         "Ve-jerk"
-#define MSG_VMAX                            "Vmax "
-#define MSG_X                               "x"
-#define MSG_Y                               "y"
-#define MSG_Z                               "z"
-#define MSG_E                               "e"
-#define MSG_VMIN                            "Vmin"
-#define MSG_VTRAV_MIN                       "VTrav min"
-#define MSG_AMAX                            "Amax "
-#define MSG_A_RETRACT                       "A-retract"
-#define MSG_XSTEPS                          "Xsteps/mm"
-#define MSG_YSTEPS                          "Ysteps/mm"
-#define MSG_ZSTEPS                          "Zsteps/mm"
-#define MSG_ESTEPS                          "Esteps/mm"
-#define MSG_RETRACT                         "Retract"
-#define MSG_EXTRUDE                         "Extrude"
-#define MSG_AUTOSTART                       "Autostart"
-#define MSG_MOVE_E1                         "Extruder2"
-#define MSG_MOVE_E2                         "Extruder3"
-#define MSG_MOVE_01MM                       "Move 0.1mm"
-#define MSG_MOVE_1MM                        "Move 1mm"
-#define MSG_MOVE_10MM                       "Move 10mm"
 #define MSG_NOZZLE1                         "Nozzle2"
 #define MSG_NOZZLE2                         "Nozzle3"
 #define MSG_FLOW0                           "Flow 0"
@@ -210,31 +140,14 @@
 #define MSG_MOTION                          "Motion"
 #define MSG_VOLUMETRIC                      "Filament"
 #define MSG_VOLUMETRIC_ENABLED		        "E in mm3"
-#define MSG_FILAMENT_SIZE_EXTRUDER_0        "Fil. Dia. 1"
-#define MSG_FILAMENT_SIZE_EXTRUDER_1        "Fil. Dia. 2"
-#define MSG_FILAMENT_SIZE_EXTRUDER_2        "Fil. Dia. 3"
-#define MSG_CONTRAST                        "LCD contrast"
 #define MSG_STORE_EPROM                     "Store memory"
 #define MSG_LOAD_EPROM                      "Load memory"
 #define MSG_RESTORE_FAILSAFE                "Restore failsafe"
 #define MSG_REFRESH                         "\xF8" "Refresh"
-#define MSG_PREPARE                         "Prepare"
-#define MSG_CONTROL_RETRACT                 "Retract mm"
-#define MSG_CONTROL_RETRACT_SWAP            "Swap Re.mm"
-#define MSG_CONTROL_RETRACTF                "Retract  V"
-#define MSG_CONTROL_RETRACT_ZLIFT           "Hop mm"
-#define MSG_CONTROL_RETRACT_RECOVER         "UnRet +mm"
-#define MSG_CONTROL_RETRACT_RECOVER_SWAP    "S UnRet+mm"
-#define MSG_CONTROL_RETRACT_RECOVERF        "UnRet  V"
-#define MSG_AUTORETRACT                     "AutoRetr."
 #define MSG_INIT_SDCARD                     "Init. SD card"
 #define MSG_CNG_SDCARD                      "Change SD card"
-#define MSG_ZPROBE_OUT                      "Z probe out. bed"
-#define MSG_POSITION_UNKNOWN                "Home X/Y before Z"
-#define MSG_ZPROBE_ZOFFSET                  "Z Offset"
 #define MSG_BABYSTEP_X                      "Babystep X"
 #define MSG_BABYSTEP_Y                      "Babystep Y"
-#define MSG_ENDSTOP_ABORT                   "Endstop abort"
 #define MSG_RECTRACT                        "Rectract"
 
 #define MSG_HOMEYZ                          "Calibrar Z"
@@ -308,5 +221,3 @@
 #define MSG_BED_CORRECTION_REAR                                 "Hacia atras  um"
 #define MSG_BED_CORRECTION_RESET                                "Reset"
 
-#endif // LANGUAGE_EN_H
-

+ 0 - 90
Firmware/language_it.h

@@ -5,8 +5,6 @@
  * Please note these are limited to 17 characters!
  *
  */
-#ifndef LANGUAGE_IT_H
-#define LANGUAGE_IT_H
 
 #define WELCOME_MSG                         CUSTOM_MENDEL_NAME " pronto."
 #define MSG_SD_INSERTED                     "SD Card inserita"
@@ -82,21 +80,12 @@
 
 #define MSG_Enqueing                        "enqueing \""
 #define MSG_POWERUP                         "PowerUp"
-#define MSG_EXTERNAL_RESET                  " External Reset"
-#define MSG_BROWNOUT_RESET                  " Brown out Reset"
-#define MSG_WATCHDOG_RESET                  " Watchdog Reset"
-#define MSG_SOFTWARE_RESET                  " Software Reset"
-#define MSG_AUTHOR                          " | Author: "
 #define MSG_CONFIGURATION_VER               " Last Updated: "
 #define MSG_FREE_MEMORY                     " Free Memory: "
 #define MSG_PLANNER_BUFFER_BYTES            "  PlannerBufferBytes: "
 #define MSG_OK                              "ok"
-#define MSG_FILE_SAVED                      "Done saving file."
-#define MSG_ERR_LINE_NO                     "Line Number is not Last Line Number+1, Last Line: "
 #define MSG_ERR_CHECKSUM_MISMATCH           "checksum mismatch, Last Line: "
 #define MSG_ERR_NO_CHECKSUM                 "No Checksum with line number, Last Line: "
-#define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "No Line Number with checksum, Last Line: "
-#define MSG_FILE_PRINTED                    "Done printing file"
 #define MSG_BEGIN_FILE_LIST                 "Begin file list"
 #define MSG_END_FILE_LIST                   "End file list"
 #define MSG_M104_INVALID_EXTRUDER           "M104 Invalid extruder "
@@ -107,23 +96,12 @@
 #define MSG_ERR_NO_THERMISTORS              "No thermistors - no temperature"
 #define MSG_M109_INVALID_EXTRUDER           "M109 Invalid extruder "
 #define MSG_M115_REPORT                     "FIRMWARE_NAME:Marlin V1.0.2; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" CUSTOM_MENDEL_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n"
-#define MSG_COUNT_X                         " Count X: "
 #define MSG_ERR_KILLED                      "Printer halted. kill() called!"
 #define MSG_ERR_STOPPED                     "Printer stopped due to errors. Fix the error and use M999 to restart. (Temperature is reset. Set it after restarting)"
 #define MSG_RESEND                          "Resend: "
-#define MSG_UNKNOWN_COMMAND                 "Unknown command: \""
-#define MSG_ACTIVE_EXTRUDER                 "Active Extruder: "
-#define MSG_INVALID_EXTRUDER                "Invalid extruder"
-#define MSG_X_MIN                           "x_min: "
-#define MSG_X_MAX                           "x_max: "
-#define MSG_Y_MIN                           "y_min: "
-#define MSG_Y_MAX                           "y_max: "
-#define MSG_Z_MIN                           "z_min: "
-#define MSG_Z_MAX                           "z_max: "
 #define MSG_M119_REPORT                     "Reporting endstop status"
 #define MSG_ENDSTOP_HIT                     "TRIGGERED"
 #define MSG_ENDSTOP_OPEN                    "open"
-#define MSG_HOTEND_OFFSET                   "Hotend offsets:"
 #define MSG_SD_CANT_OPEN_SUBDIR             "Cannot open subdir"
 #define MSG_SD_INIT_FAIL                    "SD init fail"
 #define MSG_SD_VOL_INIT_FAIL                "volume.init failed"
@@ -132,7 +110,6 @@
 #define MSG_SD_WORKDIR_FAIL                 "workDir open failed"
 #define MSG_SD_OPEN_FILE_FAIL               "open failed, File: "
 #define MSG_SD_FILE_OPENED                  "File opened: "
-#define MSG_SD_SIZE                         " Size: "
 #define MSG_SD_FILE_SELECTED                "File selected"
 #define MSG_SD_WRITE_TO_FILE                "Writing to file: "
 #define MSG_SD_PRINTING_BYTE                "SD printing byte "
@@ -142,61 +119,14 @@
 #define MSG_STEPPER_TOO_HIGH                "Steprate too high: "
 #define MSG_ENDSTOPS_HIT                    "endstops hit: "
 #define MSG_ERR_COLD_EXTRUDE_STOP           " cold extrusion prevented"
-#define MSG_ERR_LONG_EXTRUDE_STOP           " too long extrusion prevented"
 #define MSG_BABYSTEPPING_X                  "Babystepping X"
 #define MSG_BABYSTEPPING_Y                  "Babystepping Y"
 #define MSG_BABYSTEPPING_Z                  "Adjusting Z"
 #define MSG_SERIAL_ERROR_MENU_STRUCTURE     "Error in menu structure"
 #define MSG_SET_HOME_OFFSETS                "Set home offsets"
 #define MSG_SET_ORIGIN                      "Set origin"
-#define MSG_PREHEAT_PLA                     "Preheat PLA"
-#define MSG_PREHEAT_PLA0                    "Preheat PLA 1"
-#define MSG_PREHEAT_PLA1                    "Preheat PLA 2"
-#define MSG_PREHEAT_PLA2                    "Preheat PLA 3"
-#define MSG_PREHEAT_PLA012                  "Preheat PLA All"
-#define MSG_PREHEAT_PLA_BEDONLY             "Preheat PLA Bed"
-#define MSG_PREHEAT_PLA_SETTINGS            "Preheat PLA conf"
-#define MSG_PREHEAT_ABS                     "Preheat ABS"
-#define MSG_PREHEAT_ABS0                    "Preheat ABS 1"
-#define MSG_PREHEAT_ABS1                    "Preheat ABS 2"
-#define MSG_PREHEAT_ABS2                    "Preheat ABS 3"
-#define MSG_PREHEAT_ABS012                  "Preheat ABS All"
-#define MSG_PREHEAT_ABS_BEDONLY             "Preheat ABS Bed"
-#define MSG_PREHEAT_ABS_SETTINGS            "Preheat ABS conf"
 #define MSG_SWITCH_PS_ON                    "Switch power on"
 #define MSG_SWITCH_PS_OFF                   "Switch power off"
-#define MSG_AUTOTEMP                        "Autotemp"
-#define MSG_ON                              "On "
-#define MSG_OFF                             "Off"
-#define MSG_PID_P                           "PID-P"
-#define MSG_PID_I                           "PID-I"
-#define MSG_PID_D                           "PID-D"
-#define MSG_PID_C                           "PID-C"
-#define MSG_ACC                             "Accel"
-#define MSG_VXY_JERK                        "Vxy-jerk"
-#define MSG_VZ_JERK                         "Vz-jerk"
-#define MSG_VE_JERK                         "Ve-jerk"
-#define MSG_VMAX                            "Vmax "
-#define MSG_X                               "x"
-#define MSG_Y                               "y"
-#define MSG_Z                               "z"
-#define MSG_E                               "e"
-#define MSG_VMIN                            "Vmin"
-#define MSG_VTRAV_MIN                       "VTrav min"
-#define MSG_AMAX                            "Amax "
-#define MSG_A_RETRACT                       "A-retract"
-#define MSG_XSTEPS                          "Xsteps/mm"
-#define MSG_YSTEPS                          "Ysteps/mm"
-#define MSG_ZSTEPS                          "Zsteps/mm"
-#define MSG_ESTEPS                          "Esteps/mm"
-#define MSG_RETRACT                         "Retract"
-#define MSG_EXTRUDE                         "Extrude"
-#define MSG_AUTOSTART                       "Autostart"
-#define MSG_MOVE_E1                         "Extruder2"
-#define MSG_MOVE_E2                         "Extruder3"
-#define MSG_MOVE_01MM                       "Move 0.1mm"
-#define MSG_MOVE_1MM                        "Move 1mm"
-#define MSG_MOVE_10MM                       "Move 10mm"
 #define MSG_NOZZLE1                         "Nozzle2"
 #define MSG_NOZZLE2                         "Nozzle3"
 #define MSG_FLOW0                           "Flow 0"
@@ -209,31 +139,14 @@
 #define MSG_MOTION                          "Motion"
 #define MSG_VOLUMETRIC                      "Filament"
 #define MSG_VOLUMETRIC_ENABLED		        "E in mm3"
-#define MSG_FILAMENT_SIZE_EXTRUDER_0        "Fil. Dia. 1"
-#define MSG_FILAMENT_SIZE_EXTRUDER_1        "Fil. Dia. 2"
-#define MSG_FILAMENT_SIZE_EXTRUDER_2        "Fil. Dia. 3"
-#define MSG_CONTRAST                        "LCD contrast"
 #define MSG_STORE_EPROM                     "Store memory"
 #define MSG_LOAD_EPROM                      "Load memory"
 #define MSG_RESTORE_FAILSAFE                "Restore failsafe"
 #define MSG_REFRESH                         "\xF8" "Refresh"
-#define MSG_PREPARE                         "Prepare"
-#define MSG_CONTROL_RETRACT                 "Retract mm"
-#define MSG_CONTROL_RETRACT_SWAP            "Swap Re.mm"
-#define MSG_CONTROL_RETRACTF                "Retract  V"
-#define MSG_CONTROL_RETRACT_ZLIFT           "Hop mm"
-#define MSG_CONTROL_RETRACT_RECOVER         "UnRet +mm"
-#define MSG_CONTROL_RETRACT_RECOVER_SWAP    "S UnRet+mm"
-#define MSG_CONTROL_RETRACT_RECOVERF        "UnRet  V"
-#define MSG_AUTORETRACT                     "AutoRetr."
 #define MSG_INIT_SDCARD                     "Init. SD card"
 #define MSG_CNG_SDCARD                      "Change SD card"
-#define MSG_ZPROBE_OUT                      "Z probe out. bed"
-#define MSG_POSITION_UNKNOWN                "Home X/Y before Z"
-#define MSG_ZPROBE_ZOFFSET                  "Z Offset"
 #define MSG_BABYSTEP_X                      "Babystep X"
 #define MSG_BABYSTEP_Y                      "Babystep Y"
-#define MSG_ENDSTOP_ABORT                   "Endstop abort"
 #define MSG_RECTRACT                        "Rectract"
 
 #define MSG_HOMEYZ                          "Calibra Z"
@@ -270,6 +183,3 @@
 
 #define MSG_STATISTICS                      "Statistiche"
 #define MSG_USB_PRINTING                    "Stampa da USB"
-
-
-#endif // LANGUAGE_EN_H

+ 2 - 101
Firmware/language_pl.h

@@ -5,8 +5,6 @@
  * Please note these are limited to 17 characters!
  *
  */
-#ifndef LANGUAGE_PL_H
-#define LANGUAGE_PL_H
 
 #define WELCOME_MSG                         CUSTOM_MENDEL_NAME " gotowa"
 #define MSG_SD_INSERTED                     "Karta wlozona"
@@ -82,21 +80,12 @@
  
 #define MSG_Enqueing                        "enqueing \""
 #define MSG_POWERUP                         "PowerUp"
-#define MSG_EXTERNAL_RESET                  " External Reset"
-#define MSG_BROWNOUT_RESET                  " Brown out Reset"
-#define MSG_WATCHDOG_RESET                  " Watchdog Reset"
-#define MSG_SOFTWARE_RESET                  " Software Reset"
-#define MSG_AUTHOR                          " | Author: "
 #define MSG_CONFIGURATION_VER               " Last Updated: "
 #define MSG_FREE_MEMORY                     " Free Memory: "
 #define MSG_PLANNER_BUFFER_BYTES            "  PlannerBufferBytes: "
 #define MSG_OK                              "ok"
-#define MSG_FILE_SAVED                      "Done saving file."
-#define MSG_ERR_LINE_NO                     "Line Number is not Last Line Number+1, Last Line: "
 #define MSG_ERR_CHECKSUM_MISMATCH           "checksum mismatch, Last Line: "
 #define MSG_ERR_NO_CHECKSUM                 "No Checksum with line number, Last Line: "
-#define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "No Line Number with checksum, Last Line: "
-#define MSG_FILE_PRINTED                    "Done printing file"
 #define MSG_BEGIN_FILE_LIST                 "Begin file list"
 #define MSG_END_FILE_LIST                   "End file list"
 #define MSG_M104_INVALID_EXTRUDER           "M104 Invalid extruder "
@@ -107,23 +96,12 @@
 #define MSG_ERR_NO_THERMISTORS              "No thermistors - no temperature"
 #define MSG_M109_INVALID_EXTRUDER           "M109 Invalid extruder "
 #define MSG_M115_REPORT                     "FIRMWARE_NAME:Marlin V1.0.2; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" CUSTOM_MENDEL_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n"
-#define MSG_COUNT_X                         " Count X: "
 #define MSG_ERR_KILLED                      "Printer halted. kill() called!"
 #define MSG_ERR_STOPPED                     "Printer stopped due to errors. Fix the error and use M999 to restart. (Temperature is reset. Set it after restarting)"
 #define MSG_RESEND                          "Resend: "
-#define MSG_UNKNOWN_COMMAND                 "Unknown command: \""
-#define MSG_ACTIVE_EXTRUDER                 "Active Extruder: "
-#define MSG_INVALID_EXTRUDER                "Invalid extruder"
-#define MSG_X_MIN                           "x_min: "
-#define MSG_X_MAX                           "x_max: "
-#define MSG_Y_MIN                           "y_min: "
-#define MSG_Y_MAX                           "y_max: "
-#define MSG_Z_MIN                           "z_min: "
-#define MSG_Z_MAX                           "z_max: "
 #define MSG_M119_REPORT                     "Reporting endstop status"
 #define MSG_ENDSTOP_HIT                     "TRIGGERED"
 #define MSG_ENDSTOP_OPEN                    "open"
-#define MSG_HOTEND_OFFSET                   "Hotend offsets:"
 #define MSG_SD_CANT_OPEN_SUBDIR             "Cannot open subdir"
 #define MSG_SD_INIT_FAIL                    "SD init fail"
 #define MSG_SD_VOL_INIT_FAIL                "volume.init failed"
@@ -132,7 +110,6 @@
 #define MSG_SD_WORKDIR_FAIL                 "workDir open failed"
 #define MSG_SD_OPEN_FILE_FAIL               "open failed, File: "
 #define MSG_SD_FILE_OPENED                  "File opened: "
-#define MSG_SD_SIZE                         " Size: "
 #define MSG_SD_FILE_SELECTED                "File selected"
 #define MSG_SD_WRITE_TO_FILE                "Writing to file: "
 #define MSG_SD_PRINTING_BYTE                "SD printing byte "
@@ -142,71 +119,17 @@
 #define MSG_STEPPER_TOO_HIGH                "Steprate too high: "
 #define MSG_ENDSTOPS_HIT                    "endstops hit: "
 #define MSG_ERR_COLD_EXTRUDE_STOP           " cold extrusion prevented"
-#define MSG_ERR_LONG_EXTRUDE_STOP           " too long extrusion prevented"
 #define MSG_BABYSTEPPING_X                  "Babystepping X"
 #define MSG_BABYSTEPPING_Y                  "Babystepping Y"
 #define MSG_BABYSTEPPING_Z                  "Dostavovani Z"
 #define MSG_SERIAL_ERROR_MENU_STRUCTURE     "Error in menu structure"
 #define MSG_SET_HOME_OFFSETS                "Nastav pocatek home"
 #define MSG_SET_ORIGIN                      "Nastav pocatek"
-#define MSG_PREHEAT_PLA                     "Predehrev PLA"
-#define MSG_PREHEAT_PLA0                    "Predehrev PLA 1"
-#define MSG_PREHEAT_PLA1                    "Predehrev PLA 2"
-#define MSG_PREHEAT_PLA2                    "Predehrev PLA 3"
-#define MSG_PREHEAT_PLA012                  "Predehrev PLA All"
-#define MSG_PREHEAT_PLA_BEDONLY             "Predehrev PLA Bed"
-#define MSG_PREHEAT_PLA_SETTINGS            "Predehrev PLA conf"
-#define MSG_PREHEAT_ABS                     "Predehrev ABS"
-#define MSG_PREHEAT_ABS0                    "Predehrev ABS 1"
-#define MSG_PREHEAT_ABS1                    "Predehrev ABS 2"
-#define MSG_PREHEAT_ABS2                    "Predehrev ABS 3"
-#define MSG_PREHEAT_ABS012                  "Predehrev ABS All"
-#define MSG_PREHEAT_ABS_BEDONLY             "Predehrev ABS Bed"
-#define MSG_PREHEAT_ABS_SETTINGS            "Predehrev ABS conf"
 
 #define MSG_SWITCH_PS_ON                    "Vypnout zdroj"
 #define MSG_SWITCH_PS_OFF                   "Zapnout zdroj"
 
-#define MSG_AUTOTEMP                        "Autotemp"
-#define MSG_ON                              "On "
-#define MSG_OFF                             "Off"
-#define MSG_PID_P                           "PID-P"
-#define MSG_PID_I                           "PID-I"
-#define MSG_PID_D                           "PID-D"
-#define MSG_PID_C                           "PID-C"
-#define MSG_ACC                             "Accel"
-#define MSG_VXY_JERK                        "Vxy-jerk"
-#define MSG_VZ_JERK                         "Vz-jerk"
-#define MSG_VE_JERK                         "Ve-jerk"
-#define MSG_VMAX                            "Vmax "
-#define MSG_X                               "x"
-#define MSG_Y                               "y"
-#define MSG_Z                               "z"
-#define MSG_E                               "e"
-#define MSG_VMIN                            "Vmin"
-#define MSG_VTRAV_MIN                       "VTrav min"
-#define MSG_AMAX                            "Amax "
-#define MSG_A_RETRACT                       "A-retract"
-#define MSG_XSTEPS                          "Xsteps/mm"
-#define MSG_YSTEPS                          "Ysteps/mm"
-#define MSG_ZSTEPS                          "Zsteps/mm"
-#define MSG_ESTEPS                          "Esteps/mm"
-
-#define MSG_RETRACT                         "Retract"
-
-#define MSG_EXTRUDE                         "Extrudovat"
-
-#define MSG_AUTOSTART                       "Autostart"
-
-
-#define MSG_MOVE_E1                         "Extruder2"
-#define MSG_MOVE_E2                         "Extruder3"
-
-#define MSG_MOVE_01MM                       "Posunout o 0.1mm"
-#define MSG_MOVE_1MM                        "Posunout o 1mm"
-#define MSG_MOVE_10MM                       "Posunout o 10mm"
-
- #define MSG_NOZZLE1                         "Tryska2"
+#define MSG_NOZZLE1                         "Tryska2"
 #define MSG_NOZZLE2                         "Tryska3"
 
 
@@ -221,36 +144,16 @@
  #define MSG_MOTION                          "Pohyb"
 #define MSG_VOLUMETRIC                      "Filament"
 #define MSG_VOLUMETRIC_ENABLED                  "E in mm3"
-#define MSG_FILAMENT_SIZE_EXTRUDER_0        "Fil. Dia. 1"
-#define MSG_FILAMENT_SIZE_EXTRUDER_1        "Fil. Dia. 2"
-#define MSG_FILAMENT_SIZE_EXTRUDER_2        "Fil. Dia. 3"
-#define MSG_CONTRAST                        "LCD contrast"
 #define MSG_STORE_EPROM                     "Store memory"
 #define MSG_LOAD_EPROM                      "Ulozit pamet"
 #define MSG_RESTORE_FAILSAFE                "Obnovit vychozi"
 #define MSG_REFRESH                         "\xF8" "Obnovit"
 
- #define MSG_PREPARE                         "Priprava"
-
- #define MSG_CONTROL_RETRACT                 "Retract mm"
-#define MSG_CONTROL_RETRACT_SWAP            "Swap Re.mm"
-#define MSG_CONTROL_RETRACTF                "Retract  V"
-#define MSG_CONTROL_RETRACT_ZLIFT           "Hop mm"
-#define MSG_CONTROL_RETRACT_RECOVER         "UnRet +mm"
-#define MSG_CONTROL_RETRACT_RECOVER_SWAP    "S UnRet+mm"
-#define MSG_CONTROL_RETRACT_RECOVERF        "UnRet  V"
-#define MSG_AUTORETRACT                     "AutoRetr."
-
- #define MSG_INIT_SDCARD                     "Inic. SD"
+#define MSG_INIT_SDCARD                     "Inic. SD"
 #define MSG_CNG_SDCARD                      "Vymenit SD"
-#define MSG_ZPROBE_OUT                      "Z probe out. bed"
-#define MSG_POSITION_UNKNOWN                "Home X/Y before Z"
-#define MSG_ZPROBE_ZOFFSET                  "Z Offset"
 #define MSG_BABYSTEP_X                      "Babystep X"
 #define MSG_BABYSTEP_Y                      "Babystep Y"
 
- #define MSG_ENDSTOP_ABORT                   "Endstop abort"
-
  #define MSG_RECTRACT                        "Rectract"
 
 #define MSG_HOMEYZ                          "Kalibruj Z"
@@ -329,5 +232,3 @@
 #define MSG_BED_CORRECTION_FRONT								"Do przodu [um]"
 #define MSG_BED_CORRECTION_REAR									"Do tylu  [um]"
 #define MSG_BED_CORRECTION_RESET								"Reset"
-
-#endif // LANGUAGE_EN_H