New ML support - secondary language name, language selection
This commit is contained in:
parent
8f87d75637
commit
baa66a0887
4 changed files with 26 additions and 11 deletions
|
@ -1271,11 +1271,13 @@ void setup()
|
||||||
// If they differ, an update procedure may need to be performed. At the end of this block, the current firmware version
|
// If they differ, an update procedure may need to be performed. At the end of this block, the current firmware version
|
||||||
// is being written into the EEPROM, so the update procedure will be triggered only once.
|
// is being written into the EEPROM, so the update procedure will be triggered only once.
|
||||||
|
|
||||||
/// lang_selected = eeprom_read_byte((uint8_t*)EEPROM_LANG);
|
lang_selected = eeprom_read_byte((uint8_t*)EEPROM_LANG);
|
||||||
/// if (lang_selected >= LANG_NUM){
|
if (lang_selected >= LANG_NUM)
|
||||||
/// lcd_mylang();
|
{
|
||||||
/// }
|
lcd_mylang();
|
||||||
lang_select(1);
|
}
|
||||||
|
lang_select(lang_selected);
|
||||||
|
|
||||||
puts_P(_n("\nNew ML support"));
|
puts_P(_n("\nNew ML support"));
|
||||||
printf_P(_n(" lang_selected = %d\n"), lang_selected);
|
printf_P(_n(" lang_selected = %d\n"), lang_selected);
|
||||||
printf_P(_n(" &_SEC_LANG = 0x%04x\n"), &_SEC_LANG);
|
printf_P(_n(" &_SEC_LANG = 0x%04x\n"), &_SEC_LANG);
|
||||||
|
|
|
@ -74,4 +74,12 @@ const char* lang_select(unsigned char lang)
|
||||||
ui = pgm_read_word(((uint16_t*)(((char*)lang_table + 16)))); //read relative offset of first string (language name)
|
ui = pgm_read_word(((uint16_t*)(((char*)lang_table + 16)))); //read relative offset of first string (language name)
|
||||||
return (const char*)((char*)lang_table + ui); //return calculated pointer
|
return (const char*)((char*)lang_table + ui); //return calculated pointer
|
||||||
#endif //(LANG_MODE == 0)
|
#endif //(LANG_MODE == 0)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char* lang_get_name(unsigned char lang)
|
||||||
|
{
|
||||||
|
if (lang == 0) return MSG_LANGUAGE_NAME + 2;
|
||||||
|
return lang_get_sec_lang_str(MSG_LANGUAGE_NAME);
|
||||||
|
}
|
||||||
|
|
||||||
|
const char MSG_LANGUAGE_NAME[] PROGMEM_I1 = ISTR("English"); ////c=0 r=0
|
||||||
|
|
|
@ -44,15 +44,16 @@
|
||||||
|
|
||||||
|
|
||||||
// Language indices into their particular symbol tables.
|
// Language indices into their particular symbol tables.
|
||||||
#define LANG_ID_EN 0
|
#define LANG_ID_PRI 0
|
||||||
#define LANG_ID_CZ 1
|
#define LANG_ID_SEC 1
|
||||||
|
|
||||||
// Language is not defined and it shall be selected from the menu.
|
// Language is not defined and it shall be selected from the menu.
|
||||||
#define LANG_ID_FORCE_SELECTION 254
|
#define LANG_ID_FORCE_SELECTION 254
|
||||||
// Language is not defined on a virgin RAMBo board.
|
// Language is not defined on a virgin RAMBo board.
|
||||||
#define LANG_ID_UNDEFINED 255
|
#define LANG_ID_UNDEFINED 255
|
||||||
|
|
||||||
// Default language ID, if no language is selected.
|
// Default language ID, if no language is selected.
|
||||||
#define LANG_ID_DEFAULT LANG_ID_CZ
|
#define LANG_ID_DEFAULT LANG_ID_PRI
|
||||||
|
|
||||||
// Number of languages available in the language table.
|
// Number of languages available in the language table.
|
||||||
#define LANG_NUM 2
|
#define LANG_NUM 2
|
||||||
|
@ -72,6 +73,7 @@ extern const char _SEC_LANG[LANG_SIZE_RESERVED];
|
||||||
extern const char* lang_get_translation(const char* s);
|
extern const char* lang_get_translation(const char* s);
|
||||||
extern const char* lang_get_sec_lang_str(const char* s);
|
extern const char* lang_get_sec_lang_str(const char* s);
|
||||||
extern const char* lang_select(unsigned char lang);
|
extern const char* lang_select(unsigned char lang);
|
||||||
|
extern const char* lang_get_name(unsigned char lang);
|
||||||
|
|
||||||
#if defined(__cplusplus)
|
#if defined(__cplusplus)
|
||||||
}
|
}
|
||||||
|
@ -79,9 +81,12 @@ extern const char* lang_select(unsigned char lang);
|
||||||
|
|
||||||
#define CAT2(_s1, _s2) _s1
|
#define CAT2(_s1, _s2) _s1
|
||||||
#define CAT4(_s1, _s2, _s3, _s4) _s1
|
#define CAT4(_s1, _s2, _s3, _s4) _s1
|
||||||
#define MSG_LANGUAGE_NAME_EXPLICIT(i) ((i==0)?PSTR("ENG"):PSTR("CZE"))
|
#define MSG_LANGUAGE_NAME_EXPLICIT(i) lang_get_name(i)
|
||||||
|
|
||||||
|
extern const char MSG_LANGUAGE_NAME[];
|
||||||
|
|
||||||
#include "messages.h"
|
#include "messages.h"
|
||||||
|
|
||||||
|
|
||||||
#endif //__LANGUAGE_H
|
#endif //__LANGUAGE_H
|
||||||
|
|
||||||
|
|
|
@ -28,7 +28,7 @@ LANG=$1
|
||||||
#if [ -z "$LANG" ]; then LANG='cz'; fi
|
#if [ -z "$LANG" ]; then LANG='cz'; fi
|
||||||
#
|
#
|
||||||
# Params:
|
# Params:
|
||||||
IGNORE_MISSING_TEXT=0
|
IGNORE_MISSING_TEXT=1
|
||||||
|
|
||||||
function finish
|
function finish
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue