mirror of
https://github.com/opentx/opentx.git
synced 2025-07-21 15:25:17 +03:00
Small flash saving in General Menus (60bytes)
Backlight brightness now supported on ARM SD card archive function continued Simu backlight support for v4
This commit is contained in:
parent
b3113fbcbc
commit
c3ddf66058
13 changed files with 82 additions and 61 deletions
|
@ -529,18 +529,30 @@ bool RlcFile::copy(uint8_t i_fileDst, uint8_t i_fileSrc)
|
||||||
#ifdef SDCARD
|
#ifdef SDCARD
|
||||||
const pm_char * eeArchiveModel(uint8_t i_fileSrc)
|
const pm_char * eeArchiveModel(uint8_t i_fileSrc)
|
||||||
{
|
{
|
||||||
char buf[15];
|
char *buf = reusableBuffer.model_name;
|
||||||
FIL archiveFile;
|
FIL archiveFile;
|
||||||
|
|
||||||
eeLoadModelName(i_fileSrc, buf);
|
FRESULT result = f_mount(0, &g_FATFS_Obj);
|
||||||
|
if (result != FR_OK) {
|
||||||
|
return PSTR("SDCARD F/S ERROR"); // TODO ...
|
||||||
|
}
|
||||||
|
|
||||||
FRESULT result = f_open(&archiveFile, buf, FA_OPEN_ALWAYS | FA_WRITE);
|
strcpy_P(buf, PSTR(LOG_PATH "/Twister.bin")); // TODO Not PSTR everywhere ...
|
||||||
|
/* eeLoadModelName(i_fileSrc, &buf[sizeof(LOG_PATH)+1]);
|
||||||
|
uint8_t i = sizeof(LOG_PATH)+1;
|
||||||
|
while (i<sizeof(LOG_PATH)+11 && buf[i]) {
|
||||||
|
buf[i] = idx2char(buf[i]);
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
strcpy_P(&buf[i], PSTR(".bin")); // TODO Not PSTR everywhere ...
|
||||||
|
*/
|
||||||
|
result = f_open(&archiveFile, buf, FA_OPEN_ALWAYS | FA_WRITE);
|
||||||
if (result != FR_OK) {
|
if (result != FR_OK) {
|
||||||
return SDCARD_ERROR(result);
|
return SDCARD_ERROR(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
EFile theFile2;
|
EFile theFile2;
|
||||||
theFile2.openRd(i_fileSrc);
|
theFile2.openRd(FILE_MODEL(i_fileSrc));
|
||||||
|
|
||||||
uint8_t len;
|
uint8_t len;
|
||||||
while ((len=theFile2.read((uint8_t *)buf, 15)))
|
while ((len=theFile2.read((uint8_t *)buf, 15)))
|
||||||
|
@ -549,7 +561,7 @@ const pm_char * eeArchiveModel(uint8_t i_fileSrc)
|
||||||
f_putc(buf[i], &g_oLogFile);
|
f_putc(buf[i], &g_oLogFile);
|
||||||
}
|
}
|
||||||
|
|
||||||
f_close(&g_oLogFile);
|
f_close(&archiveFile);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -71,13 +71,18 @@ const MenuFuncP_PROGMEM menuTabDiag[] PROGMEM = {
|
||||||
menuProcDiagCalib
|
menuProcDiagCalib
|
||||||
};
|
};
|
||||||
|
|
||||||
#define GENERAL_PARAM_OFS 17*FW
|
#define GENERAL_PARAM_OFS (2+16*FW)
|
||||||
uint8_t onoffMenuItem( uint8_t value, uint8_t y, const pm_char *s, uint8_t condition, uint8_t event )
|
NOINLINE int8_t selectMenuItem(uint8_t y, const pm_char *label, const pm_char *values, int8_t value, int8_t min, int8_t max, uint8_t condition, uint8_t event)
|
||||||
{
|
{
|
||||||
lcd_putsLeft(y, s);
|
lcd_putsLeft(y, label);
|
||||||
menu_lcd_onoff( GENERAL_PARAM_OFS, y, value, condition ) ;
|
lcd_putsiAtt(GENERAL_PARAM_OFS, y, values, value-min, condition ? INVERS:0) ;
|
||||||
if (condition) CHECK_INCDEC_GENVAR(event, value, 0, 1);
|
if (condition) CHECK_INCDEC_GENVAR(event, value, min, max);
|
||||||
return value ;
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
NOINLINE uint8_t onoffMenuItem(uint8_t value, uint8_t y, const pm_char *label, uint8_t condition, uint8_t event )
|
||||||
|
{
|
||||||
|
return selectMenuItem(y, label, STR_OFFON, value, 0, 1, condition, event);
|
||||||
}
|
}
|
||||||
|
|
||||||
enum menuProcSetupItems {
|
enum menuProcSetupItems {
|
||||||
|
@ -141,14 +146,10 @@ void menuProcSetup(uint8_t event)
|
||||||
|
|
||||||
uint8_t subN = 1;
|
uint8_t subN = 1;
|
||||||
if(s_pgOfs<subN) {
|
if(s_pgOfs<subN) {
|
||||||
lcd_putsLeft( y, STR_BEEPERMODE);
|
g_eeGeneral.beeperMode = selectMenuItem(y, STR_BEEPERMODE, STR_VBEEPMODE, g_eeGeneral.beeperMode, -2, 1, sub==subN, event);
|
||||||
lcd_putsiAtt(GENERAL_PARAM_OFS - 2*FW, y, STR_VBEEPMODE, 2+g_eeGeneral.beeperMode, (sub==subN ? INVERS:0));
|
|
||||||
if(sub==subN) {
|
|
||||||
CHECK_INCDEC_GENVAR(event, g_eeGeneral.beeperMode, -2, 1);
|
|
||||||
#if defined(FRSKY)
|
#if defined(FRSKY)
|
||||||
if (checkIncDec_Ret) FRSKY_setModelAlarms();
|
if (sub==subN && checkIncDec_Ret) FRSKY_setModelAlarms();
|
||||||
#endif
|
#endif
|
||||||
}
|
|
||||||
if((y+=FH)>7*FH) return;
|
if((y+=FH)>7*FH) return;
|
||||||
}subN++;
|
}subN++;
|
||||||
|
|
||||||
|
@ -168,9 +169,7 @@ void menuProcSetup(uint8_t event)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if(s_pgOfs<subN) {
|
if(s_pgOfs<subN) {
|
||||||
lcd_putsLeft( y, STR_BEEPERLEN);
|
g_eeGeneral.beeperLength = selectMenuItem(y, STR_BEEPERLEN, STR_VBEEPLEN, g_eeGeneral.beeperLength, -2, 2, sub==subN, event);
|
||||||
lcd_putsiAtt(GENERAL_PARAM_OFS - 2*FW, y, STR_VBEEPLEN, 2+g_eeGeneral.beeperLength, (sub==subN ? INVERS:0));
|
|
||||||
if(sub==subN) CHECK_INCDEC_GENVAR(event, g_eeGeneral.beeperLength, -2, 2);
|
|
||||||
if((y+=FH)>7*FH) return;
|
if((y+=FH)>7*FH) return;
|
||||||
}subN++;
|
}subN++;
|
||||||
|
|
||||||
|
@ -187,9 +186,7 @@ void menuProcSetup(uint8_t event)
|
||||||
|
|
||||||
#ifdef HAPTIC
|
#ifdef HAPTIC
|
||||||
if(s_pgOfs<subN) {
|
if(s_pgOfs<subN) {
|
||||||
lcd_putsLeft( y, STR_HAPTICMODE);
|
g_eeGeneral.hapticMode = selectMenuItem(y, STR_HAPTICMODE, STR_VBEEPMODE, g_eeGeneral.hapticMode, -2, 1, sub==subN, event);
|
||||||
lcd_putsiAtt(GENERAL_PARAM_OFS - 2*FW, y, STR_VBEEPMODE, 2+g_eeGeneral.hapticMode, (sub==subN ? INVERS:0));
|
|
||||||
if(sub==subN) CHECK_INCDEC_GENVAR(event, g_eeGeneral.hapticMode, -2, 1);
|
|
||||||
if((y+=FH)>7*FH) return;
|
if((y+=FH)>7*FH) return;
|
||||||
}subN++;
|
}subN++;
|
||||||
|
|
||||||
|
@ -204,7 +201,7 @@ void menuProcSetup(uint8_t event)
|
||||||
|
|
||||||
if(s_pgOfs<subN) {
|
if(s_pgOfs<subN) {
|
||||||
lcd_putsLeft( y, STR_HAPTICLENGTH);
|
lcd_putsLeft( y, STR_HAPTICLENGTH);
|
||||||
lcd_putsiAtt(GENERAL_PARAM_OFS - 2*FW, y, STR_VBEEPLEN, 2+g_eeGeneral.hapticLength, (sub==subN ? INVERS:0));
|
lcd_putsiAtt(GENERAL_PARAM_OFS, y, STR_VBEEPLEN, 2+g_eeGeneral.hapticLength, (sub==subN ? INVERS:0));
|
||||||
if(sub==subN) CHECK_INCDEC_GENVAR(event, g_eeGeneral.hapticLength, -2, 2);
|
if(sub==subN) CHECK_INCDEC_GENVAR(event, g_eeGeneral.hapticLength, -2, 2);
|
||||||
if((y+=FH)>7*FH) return;
|
if((y+=FH)>7*FH) return;
|
||||||
}subN++;
|
}subN++;
|
||||||
|
@ -257,9 +254,7 @@ void menuProcSetup(uint8_t event)
|
||||||
}subN++;
|
}subN++;
|
||||||
|
|
||||||
if(s_pgOfs<subN) {
|
if(s_pgOfs<subN) {
|
||||||
lcd_putsLeft( y,STR_FILTERADC);
|
g_eeGeneral.filterInput = selectMenuItem(y, STR_FILTERADC, STR_ADCFILTER, g_eeGeneral.filterInput, 0, 2, sub==subN, event);
|
||||||
lcd_putsiAtt(GENERAL_PARAM_OFS, y, STR_ADCFILTER, g_eeGeneral.filterInput, (sub==subN ? INVERS:0));
|
|
||||||
if(sub==subN) CHECK_INCDEC_GENVAR(event, g_eeGeneral.filterInput, 0, 2);
|
|
||||||
if((y+=FH)>7*FH) return;
|
if((y+=FH)>7*FH) return;
|
||||||
}subN++;
|
}subN++;
|
||||||
|
|
||||||
|
@ -318,9 +313,7 @@ void menuProcSetup(uint8_t event)
|
||||||
}subN++;
|
}subN++;
|
||||||
|
|
||||||
if(s_pgOfs<subN) {
|
if(s_pgOfs<subN) {
|
||||||
lcd_putsLeft( y, STR_SWITCHWARNING);
|
g_eeGeneral.switchWarning = selectMenuItem(y, STR_SWITCHWARNING, STR_WARNSW, g_eeGeneral.switchWarning, -1, 1, sub==subN, event);
|
||||||
lcd_putsiAtt(GENERAL_PARAM_OFS, y, STR_WARNSW, 1+g_eeGeneral.switchWarning, (sub==subN ? INVERS:0));
|
|
||||||
if(sub==subN) CHECK_INCDEC_GENVAR(event, g_eeGeneral.switchWarning, -1, 1);
|
|
||||||
if((y+=FH)>7*FH) return;
|
if((y+=FH)>7*FH) return;
|
||||||
}subN++;
|
}subN++;
|
||||||
|
|
||||||
|
@ -363,7 +356,7 @@ void menuProcSetup(uint8_t event)
|
||||||
uint8_t attr = sub==subN?INVERS:0;
|
uint8_t attr = sub==subN?INVERS:0;
|
||||||
lcd_putsLeft( y,STR_RXCHANNELORD);// RAET->AETR
|
lcd_putsLeft( y,STR_RXCHANNELORD);// RAET->AETR
|
||||||
for (uint8_t i=1; i<=4; i++)
|
for (uint8_t i=1; i<=4; i++)
|
||||||
putsChnLetter((16+i)*FW, y, channel_order(i), attr);
|
putsChnLetter(GENERAL_PARAM_OFS - FW + i*FW, y, channel_order(i), attr);
|
||||||
if(attr) CHECK_INCDEC_GENVAR(event, g_eeGeneral.templateSetup, 0, 23);
|
if(attr) CHECK_INCDEC_GENVAR(event, g_eeGeneral.templateSetup, 0, 23);
|
||||||
if((y+=FH)>7*FH) return;
|
if((y+=FH)>7*FH) return;
|
||||||
}subN++;
|
}subN++;
|
||||||
|
|
|
@ -49,11 +49,11 @@ void initLogs()
|
||||||
if (g_oLogFile.fs) f_close(&g_oLogFile);
|
if (g_oLogFile.fs) f_close(&g_oLogFile);
|
||||||
g_logState = 0;
|
g_logState = 0;
|
||||||
|
|
||||||
strcpy_P(g_logFilename, PSTR(LOG_PATH "M00_000.CSV"));
|
strcpy_P(g_logFilename, PSTR(LOG_PATH "/M00_000.CSV"));
|
||||||
|
|
||||||
// Set log file model number
|
// Set log file model number
|
||||||
uint8_t num = g_eeGeneral.currModel + 1;
|
uint8_t num = g_eeGeneral.currModel + 1;
|
||||||
char *n = &g_logFilename[11]; // TODO constant
|
char *n = &g_logFilename[sizeof(LOG_PATH) + 3];
|
||||||
*n = (char)((num % 10) + '0');
|
*n = (char)((num % 10) + '0');
|
||||||
*(--n) = (char)((num / 10) + '0');
|
*(--n) = (char)((num / 10) + '0');
|
||||||
|
|
||||||
|
@ -74,7 +74,7 @@ void initLogs()
|
||||||
f_close(&g_oLogFile);
|
f_close(&g_oLogFile);
|
||||||
|
|
||||||
// bump log file counter (file extension)
|
// bump log file counter (file extension)
|
||||||
n = &g_logFilename[15];
|
n = &g_logFilename[sizeof(LOG_PATH) + 7];
|
||||||
if (++*n > '9')
|
if (++*n > '9')
|
||||||
{
|
{
|
||||||
*n='0';
|
*n='0';
|
||||||
|
|
|
@ -242,12 +242,13 @@ void menuProcModelSelect(uint8_t event)
|
||||||
killEvents(event);
|
killEvents(event);
|
||||||
if (g_eeGeneral.currModel != sub) {
|
if (g_eeGeneral.currModel != sub) {
|
||||||
#if defined(SDCARD)
|
#if defined(SDCARD)
|
||||||
s_menu[s_menu_count++] = STR_LOAD_MODEL;
|
|
||||||
if (eeModelExists(sub)) {
|
if (eeModelExists(sub)) {
|
||||||
|
s_menu[s_menu_count++] = STR_LOAD_MODEL;
|
||||||
s_menu[s_menu_count++] = STR_ARCHIVE_MODEL;
|
s_menu[s_menu_count++] = STR_ARCHIVE_MODEL;
|
||||||
s_menu[s_menu_count++] = STR_DELETE_MODEL;;
|
s_menu[s_menu_count++] = STR_DELETE_MODEL;;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
s_menu[s_menu_count++] = STR_CREATE_MODEL;
|
||||||
s_menu[s_menu_count++] = STR_RESTORE_MODEL;;
|
s_menu[s_menu_count++] = STR_RESTORE_MODEL;;
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
|
@ -364,13 +365,16 @@ void menuProcModelSelect(uint8_t event)
|
||||||
if (s_sdcard_error) {
|
if (s_sdcard_error) {
|
||||||
s_warning = s_sdcard_error;
|
s_warning = s_sdcard_error;
|
||||||
displayWarning(event);
|
displayWarning(event);
|
||||||
|
if (s_warning)
|
||||||
s_warning = NULL;
|
s_warning = NULL;
|
||||||
|
else
|
||||||
|
s_sdcard_error = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s_menu_count) {
|
if (s_menu_count) {
|
||||||
const pm_char * result = displayMenu(event);
|
const pm_char * result = displayMenu(event);
|
||||||
if (result) {
|
if (result) {
|
||||||
if (result == STR_LOAD_MODEL) {
|
if (result == STR_LOAD_MODEL || result == STR_CREATE_MODEL) {
|
||||||
displayPopup(STR_LOADINGMODEL);
|
displayPopup(STR_LOADINGMODEL);
|
||||||
eeCheck(true); // force writing of current model data before this is changed
|
eeCheck(true); // force writing of current model data before this is changed
|
||||||
if (g_eeGeneral.currModel != sub) {
|
if (g_eeGeneral.currModel != sub) {
|
||||||
|
@ -381,6 +385,8 @@ void menuProcModelSelect(uint8_t event)
|
||||||
}
|
}
|
||||||
else if (result == STR_ARCHIVE_MODEL) {
|
else if (result == STR_ARCHIVE_MODEL) {
|
||||||
s_sdcard_error = eeArchiveModel(sub);
|
s_sdcard_error = eeArchiveModel(sub);
|
||||||
|
if (!s_sdcard_error)
|
||||||
|
eeDeleteModel(sub); // delete the model, it's archived!
|
||||||
}
|
}
|
||||||
else if (result == STR_RESTORE_MODEL) {
|
else if (result == STR_RESTORE_MODEL) {
|
||||||
// TODO
|
// TODO
|
||||||
|
|
|
@ -309,6 +309,7 @@ const pm_char STR_CURRENT[] PROGMEM = TR_CURRENT;
|
||||||
|
|
||||||
#if defined(SDCARD)
|
#if defined(SDCARD)
|
||||||
const pm_char STR_LOAD_MODEL[] PROGMEM = TR_LOAD_MODEL;
|
const pm_char STR_LOAD_MODEL[] PROGMEM = TR_LOAD_MODEL;
|
||||||
|
const pm_char STR_CREATE_MODEL[] PROGMEM = TR_CREATE_MODEL;
|
||||||
const pm_char STR_ARCHIVE_MODEL[] PROGMEM = TR_ARCHIVE_MODEL;
|
const pm_char STR_ARCHIVE_MODEL[] PROGMEM = TR_ARCHIVE_MODEL;
|
||||||
const pm_char STR_DELETE_MODEL[] PROGMEM = TR_DELETE_MODEL;
|
const pm_char STR_DELETE_MODEL[] PROGMEM = TR_DELETE_MODEL;
|
||||||
const pm_char STR_RESTORE_MODEL[] PROGMEM = TR_RESTORE_MODEL;
|
const pm_char STR_RESTORE_MODEL[] PROGMEM = TR_RESTORE_MODEL;
|
||||||
|
|
|
@ -368,6 +368,7 @@ extern const pm_char STR_CURRENT[];
|
||||||
|
|
||||||
#if defined(SDCARD)
|
#if defined(SDCARD)
|
||||||
extern const pm_char STR_LOAD_MODEL[];
|
extern const pm_char STR_LOAD_MODEL[];
|
||||||
|
extern const pm_char STR_CREATE_MODEL[];
|
||||||
extern const pm_char STR_ARCHIVE_MODEL[];
|
extern const pm_char STR_ARCHIVE_MODEL[];
|
||||||
extern const pm_char STR_DELETE_MODEL[];
|
extern const pm_char STR_DELETE_MODEL[];
|
||||||
extern const pm_char STR_RESTORE_MODEL[];
|
extern const pm_char STR_RESTORE_MODEL[];
|
||||||
|
|
|
@ -583,7 +583,7 @@ extern uint8_t s_eeDirtyMsk;
|
||||||
|
|
||||||
#if defined (PCBARM)
|
#if defined (PCBARM)
|
||||||
#ifndef SIMU
|
#ifndef SIMU
|
||||||
#define BACKLIGHT_ON (PWM->PWM_CH_NUM[0].PWM_CDTY = 0/*TODO g_eeGeneral.bright*/)
|
#define BACKLIGHT_ON (PWM->PWM_CH_NUM[0].PWM_CDTY = g_eeGeneral.backlightBright)
|
||||||
#define BACKLIGHT_OFF (PWM->PWM_CH_NUM[0].PWM_CDTY = 100)
|
#define BACKLIGHT_OFF (PWM->PWM_CH_NUM[0].PWM_CDTY = 100)
|
||||||
#else
|
#else
|
||||||
#define BACKLIGHT_ON
|
#define BACKLIGHT_ON
|
||||||
|
@ -835,10 +835,10 @@ union ReusableBuffer
|
||||||
{
|
{
|
||||||
#if !defined(PCBARM)
|
#if !defined(PCBARM)
|
||||||
uint8_t eefs_buffer[BLOCKS]; // used by EeFsck
|
uint8_t eefs_buffer[BLOCKS]; // used by EeFsck
|
||||||
|
|
||||||
char model_name[sizeof(g_model.name)]; // used by menuProcModelSelect
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
char model_name[42]; // used by menuProcModelSelect and for SD card archive / restore
|
||||||
|
|
||||||
struct
|
struct
|
||||||
{
|
{
|
||||||
int16_t midVals[7];
|
int16_t midVals[7];
|
||||||
|
|
|
@ -247,8 +247,13 @@ void Open9xSim::refreshDiplay()
|
||||||
{
|
{
|
||||||
if (lcd_refresh) {
|
if (lcd_refresh) {
|
||||||
lcd_refresh = false;
|
lcd_refresh = false;
|
||||||
|
#if defined(PCBV4)
|
||||||
|
if(portc & 1<<OUT_C_LIGHT) bmf->setOffColor(FXRGB(150,200,152));
|
||||||
|
else bmf->setOffColor(FXRGB(200,200,200));
|
||||||
|
#else
|
||||||
if(portb & 1<<OUT_B_LIGHT) bmf->setOffColor(FXRGB(150,200,152));
|
if(portb & 1<<OUT_B_LIGHT) bmf->setOffColor(FXRGB(150,200,152));
|
||||||
else bmf->setOffColor(FXRGB(200,200,200));
|
else bmf->setOffColor(FXRGB(200,200,200));
|
||||||
|
#endif
|
||||||
|
|
||||||
for(int x=0;x<W;x++){
|
for(int x=0;x<W;x++){
|
||||||
for(int y=0;y<H;y++)
|
for(int y=0;y<H;y++)
|
||||||
|
|
BIN
src/snapshot_01.png
Normal file
BIN
src/snapshot_01.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.5 KiB |
BIN
src/snapshot_02.png
Normal file
BIN
src/snapshot_02.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.4 KiB |
|
@ -8,11 +8,11 @@
|
||||||
#define LEN_NCHANNELS "\004"
|
#define LEN_NCHANNELS "\004"
|
||||||
#define TR_NCHANNELS "4CH 6CH 8CH 10CH12CH14CH16CH"
|
#define TR_NCHANNELS "4CH 6CH 8CH 10CH12CH14CH16CH"
|
||||||
|
|
||||||
#define LEN_VBEEPMODE "\006"
|
#define LEN_VBEEPMODE "\005"
|
||||||
#define TR_VBEEPMODE "Quiet ""Alarms""NoKey ""All "
|
#define TR_VBEEPMODE "Quiet""Alarm""NoKey""All "
|
||||||
|
|
||||||
#define LEN_VBEEPLEN "\006"
|
#define LEN_VBEEPLEN "\005"
|
||||||
#define TR_VBEEPLEN "xShort""Short ""Normal""Long ""xLong "
|
#define TR_VBEEPLEN "xShrt""Short""Norml""Long ""xLong"
|
||||||
|
|
||||||
#define LEN_ADCFILTER "\004"
|
#define LEN_ADCFILTER "\004"
|
||||||
#define TR_ADCFILTER "SING""OSMP""FILT"
|
#define TR_ADCFILTER "SING""OSMP""FILT"
|
||||||
|
@ -258,16 +258,16 @@
|
||||||
#define TR_HAPTICLENGTH "Haptic Length"
|
#define TR_HAPTICLENGTH "Haptic Length"
|
||||||
#define TR_CONTRAST "Contrast"
|
#define TR_CONTRAST "Contrast"
|
||||||
#define TR_BATTERYWARNING "Battery Warning"
|
#define TR_BATTERYWARNING "Battery Warning"
|
||||||
#define TR_INACTIVITYALARM "Inactivity alarm"
|
#define TR_INACTIVITYALARM "Inactivity alrm"
|
||||||
#define TR_FILTERADC "Filter ADC"
|
#define TR_FILTERADC "Filter ADC"
|
||||||
#define TR_THROTTLEREVERSE "Throttle reverse"
|
#define TR_THROTTLEREVERSE "Thr reverse"
|
||||||
#define TR_MINUTEBEEP "Minute beep"
|
#define TR_MINUTEBEEP "Minute beep"
|
||||||
#define TR_BEEPCOUNTDOWN "Beep countdown"
|
#define TR_BEEPCOUNTDOWN "Beep countdown"
|
||||||
#define TR_FLASHONBEEP "Flash on beep"
|
#define TR_FLASHONBEEP "Flash on beep"
|
||||||
#define TR_LIGHTSWITCH "Light switch"
|
#define TR_LIGHTSWITCH "Light switch"
|
||||||
#define TR_LIGHTOFFAFTER "Light off after"
|
#define TR_LIGHTOFFAFTER "Light off after"
|
||||||
#define TR_SPLASHSCREEN "Splash screen"
|
#define TR_SPLASHSCREEN "Splash screen"
|
||||||
#define TR_THROTTLEWARNING "Throttle Warning"
|
#define TR_THROTTLEWARNING "Thr Warning"
|
||||||
#define TR_SWITCHWARNING "Switch Warning"
|
#define TR_SWITCHWARNING "Switch Warning"
|
||||||
#define TR_MEMORYWARNING "Memory Warning"
|
#define TR_MEMORYWARNING "Memory Warning"
|
||||||
#define TR_ALARMWARNING "Alarm Warning"
|
#define TR_ALARMWARNING "Alarm Warning"
|
||||||
|
@ -355,6 +355,7 @@
|
||||||
#define TR_CURRENT_CALIB "Current Calib"
|
#define TR_CURRENT_CALIB "Current Calib"
|
||||||
#define TR_CURRENT "Current"
|
#define TR_CURRENT "Current"
|
||||||
#define TR_LOAD_MODEL "Load Model"
|
#define TR_LOAD_MODEL "Load Model"
|
||||||
|
#define TR_CREATE_MODEL "Create Model"
|
||||||
#define TR_ARCHIVE_MODEL "Archive Model"
|
#define TR_ARCHIVE_MODEL "Archive Model"
|
||||||
#define TR_DELETE_MODEL "Delete Model" // TODO merged into DELETEMODEL?
|
#define TR_DELETE_MODEL "Delete Model" // TODO merged into DELETEMODEL?
|
||||||
#define TR_RESTORE_MODEL "Restore Model"
|
#define TR_RESTORE_MODEL "Restore Model"
|
||||||
|
|
|
@ -8,11 +8,11 @@
|
||||||
#define LEN_NCHANNELS "\004"
|
#define LEN_NCHANNELS "\004"
|
||||||
#define TR_NCHANNELS "4CH 6CH 8CH 10CH12CH14CH16CH"
|
#define TR_NCHANNELS "4CH 6CH 8CH 10CH12CH14CH16CH"
|
||||||
|
|
||||||
#define LEN_VBEEPMODE "\006"
|
#define LEN_VBEEPMODE "\005"
|
||||||
#define TR_VBEEPMODE "Quiet ""Alarms""NoKey ""Tout "
|
#define TR_VBEEPMODE "Quiet""Alarm""NoKey""Tout "
|
||||||
|
|
||||||
#define LEN_VBEEPLEN "\006"
|
#define LEN_VBEEPLEN "\005"
|
||||||
#define TR_VBEEPLEN "xShort""Short ""Normal""Long ""xLong "
|
#define TR_VBEEPLEN "xShrt""Short""Norml""Long ""xLong"
|
||||||
|
|
||||||
#define LEN_ADCFILTER "\004"
|
#define LEN_ADCFILTER "\004"
|
||||||
#define TR_ADCFILTER "SING""OSMP""FILT"
|
#define TR_ADCFILTER "SING""OSMP""FILT"
|
||||||
|
@ -258,14 +258,14 @@
|
||||||
#define TR_HAPTICLENGTH "Length Vibreur"
|
#define TR_HAPTICLENGTH "Length Vibreur"
|
||||||
#define TR_CONTRAST "Contraste"
|
#define TR_CONTRAST "Contraste"
|
||||||
#define TR_BATTERYWARNING "Alarme Batterie"
|
#define TR_BATTERYWARNING "Alarme Batterie"
|
||||||
#define TR_INACTIVITYALARM "Alarme Inactivite"
|
#define TR_INACTIVITYALARM "Alarme Inactiv."
|
||||||
#define TR_FILTERADC "Filtre ADC"
|
#define TR_FILTERADC "Filtre ADC"
|
||||||
#define TR_THROTTLEREVERSE "Inversion Gaz"
|
#define TR_THROTTLEREVERSE "Inversion Gaz"
|
||||||
#define TR_MINUTEBEEP "Bip t.minutes"
|
#define TR_MINUTEBEEP "Bip t.minutes"
|
||||||
#define TR_BEEPCOUNTDOWN "Bip a rebours"
|
#define TR_BEEPCOUNTDOWN "Bip a rebours"
|
||||||
#define TR_FLASHONBEEP "Flash quand bip"
|
#define TR_FLASHONBEEP "Flash quand bip"
|
||||||
#define TR_LIGHTSWITCH "Inter eclairage"
|
#define TR_LIGHTSWITCH "Inter eclairage"
|
||||||
#define TR_LIGHTOFFAFTER "Eclair. off apres"
|
#define TR_LIGHTOFFAFTER "Duree eclairage"
|
||||||
#define TR_SPLASHSCREEN "Ecran d'accueil"
|
#define TR_SPLASHSCREEN "Ecran d'accueil"
|
||||||
#define TR_THROTTLEWARNING "Alerte Gaz"
|
#define TR_THROTTLEWARNING "Alerte Gaz"
|
||||||
#define TR_SWITCHWARNING "Alerte Inter"
|
#define TR_SWITCHWARNING "Alerte Inter"
|
||||||
|
@ -306,7 +306,7 @@
|
||||||
#define TR_MODEL "MODELE"
|
#define TR_MODEL "MODELE"
|
||||||
#define TR_FP "PV"
|
#define TR_FP "PV"
|
||||||
#define TR_EEPROMLOWMEM "EEPROM low mem"
|
#define TR_EEPROMLOWMEM "EEPROM low mem"
|
||||||
#define TR_ALERT "ALERTE"
|
#define TR_ALERT "\007ALERTE"
|
||||||
#define TR_PRESSANYKEYTOSKIP "Touche pour ignorer"
|
#define TR_PRESSANYKEYTOSKIP "Touche pour ignorer"
|
||||||
#define TR_THROTTLENOTIDLE "Gaz pas a zero"
|
#define TR_THROTTLENOTIDLE "Gaz pas a zero"
|
||||||
#define TR_RESETTHROTTLE "Reinitialisez le"
|
#define TR_RESETTHROTTLE "Reinitialisez le"
|
||||||
|
@ -352,10 +352,11 @@
|
||||||
#define TR_LONGITUDE "Longitude"
|
#define TR_LONGITUDE "Longitude"
|
||||||
#define TR_GPSCOORD "Gps Coords"
|
#define TR_GPSCOORD "Gps Coords"
|
||||||
#define TR_SHUTDOWN "ARRET EN COURS"
|
#define TR_SHUTDOWN "ARRET EN COURS"
|
||||||
#define TR_BATT_CALIB "Battery Calib"
|
#define TR_BATT_CALIB "Calib. Batterie"
|
||||||
#define TR_CURRENT_CALIB "Current Calib"
|
#define TR_CURRENT_CALIB "Calib. Amperage"
|
||||||
#define TR_CURRENT "Courant"
|
#define TR_CURRENT "Courant"
|
||||||
#define TR_LOAD_MODEL "Charger Modele"
|
#define TR_LOAD_MODEL "Charger Modele"
|
||||||
|
#define TR_CREATE_MODEL "Creer Modele"
|
||||||
#define TR_ARCHIVE_MODEL "Archiver Modele"
|
#define TR_ARCHIVE_MODEL "Archiver Modele"
|
||||||
#define TR_DELETE_MODEL "Supprimer Modele"
|
#define TR_DELETE_MODEL "Supprimer Modele"
|
||||||
#define TR_RESTORE_MODEL "Restorer Modele"
|
#define TR_RESTORE_MODEL "Restorer Modele"
|
||||||
|
|
|
@ -8,11 +8,11 @@
|
||||||
#define LEN_NCHANNELS "\004"
|
#define LEN_NCHANNELS "\004"
|
||||||
#define TR_NCHANNELS "4CH 6KN 8KN 10KN12KN14KN16KN"
|
#define TR_NCHANNELS "4CH 6KN 8KN 10KN12KN14KN16KN"
|
||||||
|
|
||||||
#define LEN_VBEEPMODE "\006"
|
#define LEN_VBEEPMODE "\005"
|
||||||
#define TR_VBEEPMODE "Tyst ""Alarm ""Ej Knp""Alla "
|
#define TR_VBEEPMODE "Tyst ""Alarm""EjKnp""Alla "
|
||||||
|
|
||||||
#define LEN_VBEEPLEN "\006"
|
#define LEN_VBEEPLEN "\005"
|
||||||
#define TR_VBEEPLEN "xKort ""Kort ""Normal""L\200ng ""xL\200ng "
|
#define TR_VBEEPLEN "xKort""Kort ""Norml""L\200ng ""xL\200ng"
|
||||||
|
|
||||||
#define LEN_ADCFILTER "\004"
|
#define LEN_ADCFILTER "\004"
|
||||||
#define TR_ADCFILTER "SING""OSMP""FILT"
|
#define TR_ADCFILTER "SING""OSMP""FILT"
|
||||||
|
@ -355,6 +355,7 @@
|
||||||
#define TR_CURRENT_CALIB "Current Calib"
|
#define TR_CURRENT_CALIB "Current Calib"
|
||||||
#define TR_CURRENT "Sp\201nning"
|
#define TR_CURRENT "Sp\201nning"
|
||||||
#define TR_LOAD_MODEL "Load Model"
|
#define TR_LOAD_MODEL "Load Model"
|
||||||
|
#define TR_CREATE_MODEL "Create Model"
|
||||||
#define TR_ARCHIVE_MODEL "Archive Model"
|
#define TR_ARCHIVE_MODEL "Archive Model"
|
||||||
#define TR_DELETE_MODEL "Delete Model"
|
#define TR_DELETE_MODEL "Delete Model"
|
||||||
#define TR_RESTORE_MODEL "Restore Model"
|
#define TR_RESTORE_MODEL "Restore Model"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue