Make DISPLAY_CHARSET_HD44780 a single setting

This commit is contained in:
Scott Lahteine 2016-04-26 22:25:50 -07:00
parent a5d00f755b
commit 259794c0be
23 changed files with 461 additions and 384 deletions

View file

@ -773,25 +773,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -172,8 +172,8 @@
/** /**
* Required LCD language * Required LCD language
*/ */
#if DISABLED(DOGLCD) && ENABLED(ULTRA_LCD) && DISABLED(DISPLAY_CHARSET_HD44780_JAPAN) && DISABLED(DISPLAY_CHARSET_HD44780_WESTERN) && DISABLED(DISPLAY_CHARSET_HD44780_CYRILLIC) #if DISABLED(DOGLCD) && ENABLED(ULTRA_LCD) && !defined(DISPLAY_CHARSET_HD44780)
#error You must enable either DISPLAY_CHARSET_HD44780_JAPAN or DISPLAY_CHARSET_HD44780_WESTERN or DISPLAY_CHARSET_HD44780_CYRILLIC for your LCD controller. #error You must set DISPLAY_CHARSET_HD44780 to JAPANESE, WESTERN or CYRILLIC for your LCD controller.
#endif #endif
/** /**

View file

@ -37,7 +37,8 @@
#define DOGM_LCD_IMPLEMENTATION_H #define DOGM_LCD_IMPLEMENTATION_H
/** /**
* Implementation of the LCD display routines for a DOGM128 graphic display. These are common LCD 128x64 pixel graphic displays. * Implementation of the LCD display routines for a DOGM128 graphic display.
* These are common LCD 128x64 pixel graphic displays.
*/ */
#if ENABLED(ULTIPANEL) #if ENABLED(ULTIPANEL)
@ -91,13 +92,13 @@
#define FONT_MENU_NAME ISO10646_1_5x7 #define FONT_MENU_NAME ISO10646_1_5x7
#endif #endif
#else // SIMULATE_ROMFONT #else // SIMULATE_ROMFONT
#if ENABLED(DISPLAY_CHARSET_HD44780_JAPAN) #if DISPLAY_CHARSET_HD44780 == JAPANESE
#include "dogm_font_data_HD44780_J.h" #include "dogm_font_data_HD44780_J.h"
#define FONT_MENU_NAME HD44780_J_5x7 #define FONT_MENU_NAME HD44780_J_5x7
#elif ENABLED(DISPLAY_CHARSET_HD44780_WESTERN) #elif DISPLAY_CHARSET_HD44780 == WESTERN
#include "dogm_font_data_HD44780_W.h" #include "dogm_font_data_HD44780_W.h"
#define FONT_MENU_NAME HD44780_W_5x7 #define FONT_MENU_NAME HD44780_W_5x7
#elif ENABLED(DISPLAY_CHARSET_HD44780_CYRILLIC) #elif DISPLAY_CHARSET_HD44780 == CYRILLIC
#include "dogm_font_data_HD44780_C.h" #include "dogm_font_data_HD44780_C.h"
#define FONT_MENU_NAME HD44780_C_5x7 #define FONT_MENU_NAME HD44780_C_5x7
#else // fall-back #else // fall-back

View file

@ -755,25 +755,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
//#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) //#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -752,25 +752,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
//#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) //#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -764,25 +764,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
// //
//#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) //#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -766,25 +766,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -789,25 +789,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // K8200: for Display VM8201 * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE // K8200: for Display VM8201
// //
// LCD TYPE // LCD TYPE

View file

@ -772,25 +772,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -767,25 +767,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -780,25 +780,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
//#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) //#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -793,25 +793,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -764,25 +764,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
// //
//#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) //#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -772,25 +772,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -901,25 +901,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
// //
#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -901,25 +901,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
// //
#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -905,25 +905,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -898,25 +898,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -906,25 +906,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -775,25 +775,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// //
//#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) //#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -766,25 +766,29 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
// //
//#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en) //#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
// /**
// LCD CHARACTER SET * LCD Character Set
// *
// Choose ONE of the following charset options. This selection depends on * Note: This option is NOT applicable to Graphical Displays.
// your physical hardware, so it must match your character-based LCD. *
// * All character-based LCD's provide ASCII plus one of these
// Note: This option is NOT applicable to graphical displays. * language extensions:
// *
// To find out what type of display you have: * - JAPANESE ... the most common
// - Compile and upload with the language (above) set to 'test' * - WESTERN ... with more accented characters
// - Click the controller to view the LCD menu * - CYRILLIC ... for the Russian language
// *
// The LCD will display two lines from the upper half of the character set. * To determine the language extension installed on your controller:
// *
// See also https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language * - Compile and upload with LCD_LANGUAGE set to 'test'
// * - Click the controller to view the LCD menu
#define DISPLAY_CHARSET_HD44780_JAPAN // this is the most common hardware * - The LCD will display Japanese, Western, or Cyrillic text
//#define DISPLAY_CHARSET_HD44780_WESTERN *
//#define DISPLAY_CHARSET_HD44780_CYRILLIC * See https://github.com/MarlinFirmware/Marlin/wiki/LCD-Language
*
* :['JAPANESE','WESTERN','CYRILLIC']
*/
#define DISPLAY_CHARSET_HD44780 JAPANESE
// //
// LCD TYPE // LCD TYPE

View file

@ -27,6 +27,10 @@
#define GENERATE_LANGUAGE_INCLUDE(M) STRINGIFY_(language_##M.h) #define GENERATE_LANGUAGE_INCLUDE(M) STRINGIFY_(language_##M.h)
// For character-based LCD controllers (DISPLAY_CHARSET_HD44780)
#define JAPANESE 1
#define WESTERN 2
#define CYRILLIC 3
// NOTE: IF YOU CHANGE LANGUAGE FILES OR MERGE A FILE WITH CHANGES // NOTE: IF YOU CHANGE LANGUAGE FILES OR MERGE A FILE WITH CHANGES
// //
@ -232,10 +236,6 @@
// LCD Menu Messages // LCD Menu Messages
#if DISABLED(DISPLAY_CHARSET_HD44780_JAPAN) && DISABLED(DISPLAY_CHARSET_HD44780_WESTERN) && DISABLED(DISPLAY_CHARSET_HD44780_CYRILLIC)
#define DISPLAY_CHARSET_HD44780_JAPAN
#endif
#include LANGUAGE_INCLUDE #include LANGUAGE_INCLUDE
#include "language_en.h" #include "language_en.h"

View file

@ -40,7 +40,7 @@
#define MAPPER_ONE_TO_ONE #define MAPPER_ONE_TO_ONE
#endif #endif
#else // SIMULATE_ROMFONT #else // SIMULATE_ROMFONT
#if ENABLED(DISPLAY_CHARSET_HD44780_JAPAN) #if DISPLAY_CHARSET_HD44780 == JAPANESE
#if ENABLED(MAPPER_C2C3) #if ENABLED(MAPPER_C2C3)
const PROGMEM uint8_t utf_recode[] = const PROGMEM uint8_t utf_recode[] =
{ // 0 1 2 3 4 5 6 7 8 9 a b c d e f This is fair for symbols { // 0 1 2 3 4 5 6 7 8 9 a b c d e f This is fair for symbols
@ -77,7 +77,7 @@
#error( "Cyrillic on a japanese dsplay makes no sense. There are no matching symbols."); #error( "Cyrillic on a japanese dsplay makes no sense. There are no matching symbols.");
#endif #endif
#elif ENABLED(DISPLAY_CHARSET_HD44780_WESTERN) #elif DISPLAY_CHARSET_HD44780 == WESTERN
#if ENABLED(MAPPER_C2C3) #if ENABLED(MAPPER_C2C3)
const PROGMEM uint8_t utf_recode[] = const PROGMEM uint8_t utf_recode[] =
{ // 0 1 2 3 4 5 6 7 8 9 a b c d e f This is relative complete. { // 0 1 2 3 4 5 6 7 8 9 a b c d e f This is relative complete.
@ -111,28 +111,28 @@
#error( "Katakana on a western display makes no sense. There are no matching symbols." ); #error( "Katakana on a western display makes no sense. There are no matching symbols." );
#endif #endif
#elif ENABLED(DISPLAY_CHARSET_HD44780_CYRILLIC) #elif DISPLAY_CHARSET_HD44780 == CYRILLIC
#if ENABLED(MAPPER_D0D1) #if ENABLED(MAPPER_D0D1)
#define MAPPER_D0D1_MOD #define MAPPER_D0D1_MOD
// it is a Russian alphabet translation // it is a Russian alphabet translation
// except 0401 --> 0xa2 = Ё, 0451 --> 0xb5 = ё // except 0401 --> 0xa2 = Ё, 0451 --> 0xb5 = ё
const PROGMEM uint8_t utf_recode[] = const PROGMEM uint8_t utf_recode[] =
{ 0x41,0xa0,0x42,0xa1,0xe0,0x45,0xa3,0xa4, // unicode U+0400 to U+047f { 0x41,0xa0,0x42,0xa1,0xe0,0x45,0xa3,0xa4, // unicode U+0400 to U+047f
// A Б->Ё B Г Д E Ж З // 0 Ѐ Ё Ђ Ѓ Є Ѕ І Ї // A Б->Ё B Г Д E Ж З // 0 Ѐ Ё Ђ Ѓ Є Ѕ І Ї
0xa5,0xa6,0x4b,0xa7,0x4d,0x48,0x4f,0xa8, // Ј Љ Њ Ћ Ќ Ѝ Ў Џ 0xa5,0xa6,0x4b,0xa7,0x4d,0x48,0x4f,0xa8, // Ј Љ Њ Ћ Ќ Ѝ Ў Џ
// И Й K Л M H O П // 1 А Б В Г Д Е Ж З // И Й K Л M H O П // 1 А Б В Г Д Е Ж З
0x50,0x43,0x54,0xa9,0xaa,0x58,0xe1,0xab, // И Й К Л М Н О П 0x50,0x43,0x54,0xa9,0xaa,0x58,0xe1,0xab, // И Й К Л М Н О П
// P C T У Ф X Ч ч // 2 Р С Т У Ф Х Г Ч // P C T У Ф X Ч ч // 2 Р С Т У Ф Х Г Ч
0xac,0xe2,0xad,0xae,0x62,0xaf,0xb0,0xb1, // Ш Щ Ъ Ы Ь Э Ю Я 0xac,0xe2,0xad,0xae,0x62,0xaf,0xb0,0xb1, // Ш Щ Ъ Ы Ь Э Ю Я
// Ш Щ Ъ Ы b Э Ю Я // 3 а б в г д е ж з // Ш Щ Ъ Ы b Э Ю Я // 3 а б в г д е ж з
0x61,0xb2,0xb3,0xb4,0xe3,0x65,0xb6,0xb7, // и й к л м н о п 0x61,0xb2,0xb3,0xb4,0xe3,0x65,0xb6,0xb7, // и й к л м н о п
// a б->ё в г д e ж з // 4 р с т у ф х ц ч // a б->ё в г д e ж з // 4 р с т у ф х ц ч
0xb8,0xb9,0xba,0xbb,0xbc,0xbd,0x6f,0xbe, // ш щ ъ ы ь э ю я 0xb8,0xb9,0xba,0xbb,0xbc,0xbd,0x6f,0xbe, // ш щ ъ ы ь э ю я
// и й к л м н o п // 5 ѐ ё ђ ѓ є ѕ і ї // и й к л м н o п // 5 ѐ ё ђ ѓ є ѕ і ї
0x70,0x63,0xbf,0x79,0xe4,0x78,0xe5,0xc0, // ј љ њ ћ ќ ѝ ў џ 0x70,0x63,0xbf,0x79,0xe4,0x78,0xe5,0xc0, // ј љ њ ћ ќ ѝ ў џ
// p c т y ф x ц ч // 6 Ѡ ѡ Ѣ ѣ Ѥ ѥ Ѧ ѧ // p c т y ф x ц ч // 6 Ѡ ѡ Ѣ ѣ Ѥ ѥ Ѧ ѧ
0xc1,0xe6,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7 // Ѫ ѩ Ѫ ѫ Ѭ ѭ Ѯ ѯ 0xc1,0xe6,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7 // Ѫ ѩ Ѫ ѫ Ѭ ѭ Ѯ ѯ
// ш щ ъ ы ь э ю я // 7 Ѱ ѱ Ѳ ѳ Ѵ ѵ Ѷ ѷ // ш щ ъ ы ь э ю я // 7 Ѱ ѱ Ѳ ѳ Ѵ ѵ Ѷ ѷ
}; // ѻ ѹ Ѻ ѻ Ѽ ѽ Ѿ ѿ }; // ѻ ѹ Ѻ ѻ Ѽ ѽ Ѿ ѿ
#elif ENABLED(MAPPER_C2C3) #elif ENABLED(MAPPER_C2C3)
#error( "Western languages on a cyrillic display makes no sense. There are no matching symbols." ); #error( "Western languages on a cyrillic display makes no sense. There are no matching symbols." );
@ -140,8 +140,8 @@
#error( "Katakana on a cyrillic display makes no sense. There are no matching symbols." ); #error( "Katakana on a cyrillic display makes no sense. There are no matching symbols." );
#endif #endif
#else #else
#error("Something went wrong in the selection of DISPLAY_CHARSET_HD44780's"); #error("Something went wrong in the setting of DISPLAY_CHARSET_HD44780");
#endif // DISPLAY_CHARSET_HD44780_CYRILLIC #endif // DISPLAY_CHARSET_HD44780
#endif // SIMULATE_ROMFONT #endif // SIMULATE_ROMFONT
#if ENABLED(MAPPER_NON) #if ENABLED(MAPPER_NON)