feat: stick inversion (#6394)
Co-authored-by: philmoz <phil.a.mitchell@gmail.com>
This commit is contained in:
@@ -98,6 +98,7 @@ YamlStickConfig::YamlStickConfig(const GeneralSettings::InputConfig* rhs)
|
||||
for (int i = 0; i < Boards::getCapability(getCurrentBoard(), Board::Inputs); i++) {
|
||||
config[i].tag = std::to_string(i);
|
||||
config[i].type = rhs[i].type;
|
||||
config[i].inverted = rhs[i].inverted;
|
||||
memcpy(config[i].name, rhs[i].name, sizeof(HARDWARE_NAME_LEN));
|
||||
}
|
||||
}
|
||||
@@ -160,10 +161,10 @@ Node convert<InputConfig>::encode(const InputConfig& rhs)
|
||||
{
|
||||
Node node;
|
||||
node["name"] = rhs.name;
|
||||
node["inv"] = (int)rhs.inverted;
|
||||
|
||||
if (rhs.type != Board::AIT_STICK) {
|
||||
node["type"] = potConfigLut << rhs.flexType;
|
||||
node["inv"] = (int)rhs.inverted;
|
||||
}
|
||||
|
||||
return node;
|
||||
|
||||
@@ -430,6 +430,11 @@ void HardwarePanel::addStick(int index)
|
||||
name->setValidator(new NameValidator(board, this));
|
||||
name->setField(config.name, HARDWARE_NAME_LEN, this);
|
||||
params->append(name);
|
||||
|
||||
AutoCheckBox *inverted = new AutoCheckBox(this);
|
||||
inverted->setField(config.inverted, this);
|
||||
params->append(inverted);
|
||||
|
||||
addParams();
|
||||
}
|
||||
|
||||
|
||||
@@ -83,11 +83,11 @@ static inline void check_struct()
|
||||
#endif
|
||||
|
||||
#if defined(PCBXLITES)
|
||||
CHKSIZE(RadioData, 872);
|
||||
CHKSIZE(RadioData, 873);
|
||||
#elif defined(COLORLCD)
|
||||
CHKSIZE(RadioData, 966);
|
||||
CHKSIZE(RadioData, 967);
|
||||
#else
|
||||
CHKSIZE(RadioData, 870);
|
||||
CHKSIZE(RadioData, 871);
|
||||
#endif
|
||||
|
||||
#if defined(RADIO_TPRO) || defined(RADIO_TPROV2) || defined(RADIO_BUMBLEBEE)
|
||||
|
||||
@@ -965,6 +965,7 @@ PACK(struct RadioData {
|
||||
|
||||
CUST_ARRAY(sticksConfig, struct_stickConfig, MAX_STICKS, stick_name_valid);
|
||||
CUST_ARRAY(slidersConfig, struct_sliderConfig, MAX_POTS, nullptr);
|
||||
uint8_t stickInvert SKIP;
|
||||
potconfig_t potsConfig ARRAY(4,struct_potConfig,nullptr);
|
||||
swconfig_t switchConfig ARRAY(2,struct_switchConfig,nullptr);
|
||||
CUST_ARRAY(flexSwitches, struct_flexSwitch, MAX_FLEX_SWITCHES, flex_sw_valid);
|
||||
|
||||
@@ -25,6 +25,11 @@
|
||||
|
||||
void menuRadioCalibration(event_t event)
|
||||
{
|
||||
if (reusableBuffer.calib.state == CALIB_FINISHED) {
|
||||
menuCalibrationState = CALIB_START;
|
||||
popMenu();
|
||||
}
|
||||
|
||||
check_submenu_simple(event, 0);
|
||||
title(STR_MENUCALIBRATION);
|
||||
menuCommonCalib(event);
|
||||
|
||||
@@ -49,6 +49,11 @@ void drawPotsBars()
|
||||
|
||||
void menuRadioCalibration(event_t event)
|
||||
{
|
||||
if (reusableBuffer.calib.state == CALIB_FINISHED) {
|
||||
menuCalibrationState = CALIB_START;
|
||||
popMenu();
|
||||
}
|
||||
|
||||
check_submenu_simple(event, 0);
|
||||
title(STR_MENUCALIBRATION);
|
||||
menuCommonCalib(event);
|
||||
|
||||
@@ -56,25 +56,34 @@ static const lv_coord_t pots_col_dsc[] = {LV_GRID_FR(13), LV_GRID_FR(7),
|
||||
|
||||
static const lv_coord_t row_dsc[] = {LV_GRID_CONTENT, LV_GRID_TEMPLATE_LAST};
|
||||
|
||||
HWSticks::HWSticks(Window* parent) : Window(parent, rect_t{})
|
||||
HWSticks::HWSticks(Window* parent) : Window(parent, {0, 0, LV_PCT(100), LV_SIZE_CONTENT})
|
||||
{
|
||||
padAll(PAD_TINY);
|
||||
|
||||
FlexGridLayout grid(col_two_dsc, row_dsc, PAD_TINY);
|
||||
setFlexLayout();
|
||||
new StaticText(this, {S_NM_X, -PAD_TINY, 0, 0}, STR_NAME, COLOR_THEME_PRIMARY1_INDEX, FONT(XS));
|
||||
new StaticText(this, {S_INV_X, -PAD_TINY, 0, 0}, STR_MENU_INVERT, COLOR_THEME_PRIMARY1_INDEX, FONT(XS));
|
||||
|
||||
coord_t yo = EdgeTxStyles::STD_FONT_HEIGHT - PAD_TINY;
|
||||
|
||||
auto max_sticks = adcGetMaxInputs(ADC_INPUT_MAIN);
|
||||
for (int i = 0; i < max_sticks; i++) {
|
||||
auto line = newLine(grid);
|
||||
new StaticText(line, rect_t{}, analogGetCanonicalName(ADC_INPUT_MAIN, i));
|
||||
new HWInputEdit(line, (char*)analogGetCustomLabel(ADC_INPUT_MAIN, i),
|
||||
LEN_ANA_NAME);
|
||||
new StaticText(this, {0, S_Y(i) + yo + PAD_MEDIUM, S_LBL_W, 0},
|
||||
analogGetCanonicalName(ADC_INPUT_MAIN, i));
|
||||
new HWInputEdit(this, (char*)analogGetCustomLabel(ADC_INPUT_MAIN, i),
|
||||
LEN_ANA_NAME, S_NM_X, S_Y(i) + yo);
|
||||
|
||||
new ToggleSwitch(
|
||||
this, {S_INV_X, S_Y(i) + yo, S_INV_W, 0},
|
||||
[=]() -> uint8_t { return (uint8_t)getStickInversion(i); },
|
||||
[=](int8_t newValue) {
|
||||
setStickInversion(i, newValue);
|
||||
SET_DIRTY();
|
||||
});
|
||||
}
|
||||
|
||||
#if defined(STICK_DEAD_ZONE)
|
||||
auto line = newLine(grid);
|
||||
new StaticText(line, rect_t{}, STR_DEAD_ZONE);
|
||||
auto dz = new Choice(line, rect_t{}, 0, 7,
|
||||
new StaticText(this, {0, S_Y(max_sticks) + yo + PAD_MEDIUM}, STR_DEAD_ZONE);
|
||||
auto dz = new Choice(this, {S_INV_X, S_Y(max_sticks) + yo}, 0, 7,
|
||||
GET_SET_DEFAULT(g_eeGeneral.stickDeadZone));
|
||||
dz->setTextHandler([](uint8_t value) {
|
||||
return std::to_string(value ? 2 << (value - 1) : 0);
|
||||
@@ -83,7 +92,7 @@ HWSticks::HWSticks(Window* parent) : Window(parent, rect_t{})
|
||||
}
|
||||
|
||||
HWPots::HWPots(Window* parent) :
|
||||
Window(parent, rect_t{0, 0, LV_PCT(100), LV_SIZE_CONTENT})
|
||||
Window(parent, {0, 0, LV_PCT(100), LV_SIZE_CONTENT})
|
||||
{
|
||||
padAll(PAD_TINY);
|
||||
|
||||
@@ -111,15 +120,14 @@ HWPots::HWPots(Window* parent) :
|
||||
// #if !defined(SIMU) && defined(RADIO_FAMILY_T16)
|
||||
// if (!globalData.flyskygimbals && (i >= (NUM_POTS - 2))) continue;
|
||||
// #endif
|
||||
new StaticText(this,
|
||||
rect_t{0, P_Y(i) + yo + PAD_MEDIUM, P_LBL_W, 0},
|
||||
new StaticText(this, {0, P_Y(i) + yo + PAD_MEDIUM, P_LBL_W, 0},
|
||||
adcGetInputLabel(ADC_INPUT_FLEX, i));
|
||||
|
||||
new HWInputEdit(this, (char*)analogGetCustomLabel(ADC_INPUT_FLEX, i),
|
||||
LEN_ANA_NAME, P_NM_X, P_Y(i) + yo);
|
||||
|
||||
auto pot = new Choice(
|
||||
this, rect_t{P_TYP_X, P_Y(i) + P_OFST_Y + yo, P_TYP_W, 0},
|
||||
this, {P_TYP_X, P_Y(i) + P_OFST_Y + yo, P_TYP_W, 0},
|
||||
STR_POTTYPES, FLEX_NONE, FLEX_SWITCH,
|
||||
[=]() -> int { return getPotType(i); },
|
||||
[=](int newValue) {
|
||||
@@ -136,7 +144,7 @@ HWPots::HWPots(Window* parent) :
|
||||
pot->setAvailableHandler([=](int val) { return isPotTypeAvailable(val); });
|
||||
|
||||
auto tgl = new ToggleSwitch(
|
||||
this, rect_t{P_INV_X, P_Y(i) + yo, P_INV_W, 0},
|
||||
this, {P_INV_X, P_Y(i) + yo, P_INV_W, 0},
|
||||
[=]() -> uint8_t { return (uint8_t)getPotInversion(i); },
|
||||
[=](int8_t newValue) {
|
||||
setPotInversion(i, newValue);
|
||||
@@ -155,7 +163,7 @@ class SwitchDynamicLabel : public StaticText
|
||||
{
|
||||
public:
|
||||
SwitchDynamicLabel(Window* parent, uint8_t index, coord_t x, coord_t y, coord_t w) :
|
||||
StaticText(parent, rect_t{x, y, w, 0}, ""),
|
||||
StaticText(parent, {x, y, w, 0}, ""),
|
||||
index(index)
|
||||
{
|
||||
checkEvents();
|
||||
|
||||
@@ -33,6 +33,16 @@ class HWSticks : public Window
|
||||
{
|
||||
public:
|
||||
HWSticks(Window* parent);
|
||||
|
||||
// Absolute layout for Pots popup - due to performance issues with lv_textarea
|
||||
// in a flex layout
|
||||
static LAYOUT_VAL_SCALED(S_LBL_W, 60)
|
||||
static constexpr coord_t S_NM_X = S_LBL_W + PAD_SMALL;
|
||||
static LAYOUT_VAL_SCALED(S_NM_W, 64)
|
||||
static constexpr coord_t S_INV_X = S_NM_X + S_NM_W + PAD_LARGE * 3;
|
||||
static constexpr coord_t S_INV_W = ToggleSwitch::TOGGLE_W;
|
||||
static constexpr coord_t S_ROW_H = EdgeTxStyles::UI_ELEMENT_HEIGHT + PAD_OUTLINE;
|
||||
#define S_Y(i) (i * S_ROW_H + PAD_TINY)
|
||||
};
|
||||
|
||||
class HWPots : public Window
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
#include "edgetx.h"
|
||||
#include "sliders.h"
|
||||
#include "view_main_decoration.h"
|
||||
#include "hw_inputs.h"
|
||||
|
||||
#include <memory>
|
||||
|
||||
@@ -66,8 +67,8 @@ class StickCalibrationWindow : public Window
|
||||
StaticLZ4Image *calibStick = nullptr;
|
||||
};
|
||||
|
||||
RadioCalibrationPage::RadioCalibrationPage(bool initial) :
|
||||
Page(ICON_RADIO_CALIBRATION), initial(initial)
|
||||
RadioCalibrationPage::RadioCalibrationPage() :
|
||||
Page(ICON_RADIO_CALIBRATION)
|
||||
{
|
||||
buildHeader(header);
|
||||
buildBody(body);
|
||||
@@ -76,7 +77,8 @@ RadioCalibrationPage::RadioCalibrationPage(bool initial) :
|
||||
void RadioCalibrationPage::buildHeader(Window *window)
|
||||
{
|
||||
header->setTitle(STR_MENUCALIBRATION);
|
||||
text = header->setTitle2(STR_MENUTOSTART);
|
||||
title2 = header->setTitle2("");
|
||||
etx_font(title2->getLvObj(), FONT_BOLD_INDEX);
|
||||
}
|
||||
|
||||
void RadioCalibrationPage::buildBody(Window *window)
|
||||
@@ -106,13 +108,54 @@ void RadioCalibrationPage::buildBody(Window *window)
|
||||
|
||||
std::unique_ptr<ViewMainDecoration> deco(new ViewMainDecoration(window, false, true, false));
|
||||
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
new TextButton(window, {LCD_W - 120, LCD_H - 140, 90, 40}, "Next",
|
||||
axisBtn = new TextButton(window, {AXIS_X, PAD_LARGE, AXIS_W, 0}, STR_STICKS,
|
||||
[=]() -> uint8_t {
|
||||
new HWInputDialog<HWSticks>(STR_STICKS);
|
||||
return 0;
|
||||
});
|
||||
|
||||
potsBtn = new TextButton(window, {POTS_X, PAD_LARGE, POTS_W, 0}, STR_POTS,
|
||||
[=]() -> uint8_t {
|
||||
new HWInputDialog<HWPots>(STR_POTS, HWPots::POTS_WINDOW_WIDTH);
|
||||
return 0;
|
||||
});
|
||||
|
||||
nxtBtn = new TextButton(window, {NXT_X, PAD_LARGE, NXT_W, 0}, "",
|
||||
[=]() -> uint8_t {
|
||||
nextStep();
|
||||
return 0;
|
||||
});
|
||||
#endif
|
||||
|
||||
setState();
|
||||
}
|
||||
|
||||
void RadioCalibrationPage::setState()
|
||||
{
|
||||
axisBtn->hide();
|
||||
potsBtn->hide();
|
||||
|
||||
switch (menuCalibrationState) {
|
||||
case CALIB_START:
|
||||
title2->setText("");
|
||||
nxtBtn->setText(STR_START);
|
||||
break;
|
||||
case CALIB_SET_MIDPOINT:
|
||||
title2->setText(STR_SETMIDPOINT);
|
||||
nxtBtn->setText(STR_NEXT);
|
||||
break;
|
||||
case CALIB_MOVE_STICKS:
|
||||
title2->setText(STR_MOVESTICKSPOTS);
|
||||
nxtBtn->setText(STR_NEXT);
|
||||
axisBtn->show();
|
||||
potsBtn->show();
|
||||
break;
|
||||
case CALIB_STORE:
|
||||
title2->setText(STR_CALIB_DONE);
|
||||
nxtBtn->setText(STR_EXIT);
|
||||
break;
|
||||
case CALIB_FINISHED:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void RadioCalibrationPage::checkEvents()
|
||||
@@ -126,14 +169,12 @@ void RadioCalibrationPage::checkEvents()
|
||||
}
|
||||
}
|
||||
|
||||
void RadioCalibrationPage::onClicked() { nextStep(); }
|
||||
|
||||
void RadioCalibrationPage::onCancel()
|
||||
{
|
||||
if (menuCalibrationState != CALIB_START &&
|
||||
menuCalibrationState != CALIB_FINISHED) {
|
||||
menuCalibrationState != CALIB_STORE) {
|
||||
menuCalibrationState = CALIB_START;
|
||||
text->setText(STR_MENUTOSTART);
|
||||
setState();
|
||||
} else {
|
||||
Page::onCancel();
|
||||
}
|
||||
@@ -141,34 +182,15 @@ void RadioCalibrationPage::onCancel()
|
||||
|
||||
void RadioCalibrationPage::nextStep()
|
||||
{
|
||||
if (menuCalibrationState == CALIB_FINISHED) deleteLater();
|
||||
|
||||
menuCalibrationState++;
|
||||
|
||||
switch (menuCalibrationState) {
|
||||
case CALIB_SET_MIDPOINT:
|
||||
text->setText(STR_SETMIDPOINT);
|
||||
break;
|
||||
if (menuCalibrationState == CALIB_FINISHED)
|
||||
deleteLater();
|
||||
|
||||
case CALIB_MOVE_STICKS:
|
||||
text->setText(STR_MOVESTICKSPOTS);
|
||||
break;
|
||||
if (menuCalibrationState == CALIB_STORE)
|
||||
adcCalibStore();
|
||||
|
||||
case CALIB_STORE:
|
||||
text->setText(STR_CALIB_DONE);
|
||||
adcCalibStore();
|
||||
menuCalibrationState = CALIB_FINISHED;
|
||||
|
||||
// initial calibration completed
|
||||
// -> exit
|
||||
if (initial) deleteLater();
|
||||
break;
|
||||
|
||||
default:
|
||||
text->setText(STR_MENUTOSTART);
|
||||
menuCalibrationState = CALIB_START;
|
||||
break;
|
||||
}
|
||||
setState();
|
||||
}
|
||||
|
||||
void startCalibration() { new RadioCalibrationPage(true); }
|
||||
void startCalibration() { new RadioCalibrationPage(); }
|
||||
|
||||
@@ -27,19 +27,27 @@ class StaticText;
|
||||
|
||||
class RadioCalibrationPage: public Page {
|
||||
public:
|
||||
explicit RadioCalibrationPage(bool initial = false);
|
||||
explicit RadioCalibrationPage();
|
||||
|
||||
void checkEvents() override;
|
||||
void onClicked() override;
|
||||
void onCancel() override;
|
||||
|
||||
protected:
|
||||
StaticText * text = nullptr;
|
||||
TextButton * button = nullptr;
|
||||
bool initial;
|
||||
StaticText* title2 = nullptr;
|
||||
TextButton* nxtBtn = nullptr;
|
||||
TextButton* axisBtn = nullptr;
|
||||
TextButton* potsBtn = nullptr;
|
||||
void nextStep();
|
||||
void buildHeader(Window * window);
|
||||
void buildBody(Window * window);
|
||||
void setState();
|
||||
|
||||
static LAYOUT_VAL_SCALED(NXT_W, 80);
|
||||
static constexpr coord_t NXT_X = LCD_W - NXT_W - PAD_LARGE * 4;
|
||||
static LAYOUT_VAL_SCALED(AXIS_W, 80);
|
||||
static constexpr coord_t AXIS_X = PAD_LARGE * 4;
|
||||
static LAYOUT_VAL_SCALED(POTS_W, 80);
|
||||
static constexpr coord_t POTS_X = AXIS_X + AXIS_W + PAD_LARGE;
|
||||
};
|
||||
|
||||
void startCalibration();
|
||||
|
||||
@@ -21,9 +21,33 @@
|
||||
|
||||
#include "edgetx.h"
|
||||
#include "calibration.h"
|
||||
#include "analogs.h"
|
||||
|
||||
#include "hal/adc_driver.h"
|
||||
|
||||
void menuCommonCalibOptions(event_t event)
|
||||
{
|
||||
SIMPLE_SUBMENU(STR_AXISDIR, HEADER_LINE+4);
|
||||
uint8_t sub = menuVerticalPosition;
|
||||
|
||||
coord_t y = MENU_HEADER_HEIGHT + 1;
|
||||
lcdDrawTextAlignedLeft(y, STR_STICKS);
|
||||
lcdDrawText(LCD_W / 3 * 2, y, STR_MENU_INVERT, CENTERED);
|
||||
y+=FH;
|
||||
for(uint8_t i = 0; i < 4; i++) {
|
||||
uint8_t k = i + menuVerticalOffset;
|
||||
LcdFlags attr = (sub == k) ? INVERS : 0;
|
||||
|
||||
lcdDrawTextIndented(y, STR_CHAR_STICK);
|
||||
lcdDrawText(lcdNextPos, y, analogGetCanonicalName(ADC_INPUT_MAIN, i), 0);
|
||||
bool stickInversion = getStickInversion(i);
|
||||
lcdDrawChar(LCD_W / 3 * 2, y, stickInversion ? 127 : 126, attr);
|
||||
if (attr) stickInversion = checkIncDec(event, stickInversion, 0, 1, EE_GENERAL);
|
||||
setStickInversion(i, stickInversion);
|
||||
y+=FH;
|
||||
}
|
||||
}
|
||||
|
||||
void menuCommonCalib(event_t event)
|
||||
{
|
||||
// make sure we don't scroll while calibrating
|
||||
@@ -35,6 +59,11 @@ void menuCommonCalib(event_t event)
|
||||
reusableBuffer.calib.state = CALIB_START;
|
||||
break;
|
||||
|
||||
case EVT_KEY_LONG(KEY_ENTER):
|
||||
killEvents(event);
|
||||
pushMenu(menuCommonCalibOptions);
|
||||
break;
|
||||
|
||||
case EVT_KEY_BREAK(KEY_ENTER):
|
||||
reusableBuffer.calib.state++;
|
||||
break;
|
||||
@@ -55,7 +84,8 @@ void menuCommonCalib(event_t event)
|
||||
|
||||
case CALIB_MOVE_STICKS:
|
||||
// MOVE STICKS/POTS
|
||||
lcdDrawText(LCD_W/2, MENU_HEADER_HEIGHT+FH, STR_MOVESTICKSPOTS, INVERS|CENTERED);
|
||||
lcdDrawText(LCD_W/2, MENU_HEADER_HEIGHT, STR_MOVESTICKSPOTS, INVERS|CENTERED);
|
||||
lcdDrawText(LCD_W/2, MENU_HEADER_HEIGHT+FH, STR_MENUAXISDIR, CENTERED);
|
||||
lcdDrawText(LCD_W/2, MENU_HEADER_HEIGHT+2*FH, STR_MENUWHENDONE, CENTERED);
|
||||
adcCalibSetMinMax();
|
||||
break;
|
||||
|
||||
@@ -138,7 +138,7 @@ static void _init_menu_tab_array(uint8_t* tab, size_t len)
|
||||
auto max_sticks = adcGetMaxInputs(ADC_INPUT_MAIN);
|
||||
for (int i = ITEM_RADIO_HARDWARE_STICK; i <= ITEM_RADIO_HARDWARE_STICK_END; i++) {
|
||||
uint8_t idx = i - ITEM_RADIO_HARDWARE_STICK;
|
||||
tab[i] = idx < max_sticks ? 0 : HIDDEN_ROW;
|
||||
tab[i] = idx < max_sticks ? 1 : HIDDEN_ROW;
|
||||
}
|
||||
|
||||
auto max_pots = adcGetMaxInputs(ADC_INPUT_FLEX);
|
||||
@@ -480,9 +480,17 @@ void menuRadioHardware(event_t event)
|
||||
default:
|
||||
if (k <= ITEM_RADIO_HARDWARE_STICK_END) {
|
||||
// Sticks
|
||||
int idx = k - ITEM_RADIO_HARDWARE_STICK;
|
||||
|
||||
LcdFlags flags = menuHorizontalPosition == 0 ? attr : 0;
|
||||
editStickHardwareSettings(HW_SETTINGS_COLUMN1, y,
|
||||
k - ITEM_RADIO_HARDWARE_STICK, event,
|
||||
attr, old_editMode);
|
||||
idx, event, flags, old_editMode);
|
||||
// ADC inversion
|
||||
flags = menuHorizontalPosition == 1 ? attr : 0;
|
||||
bool stickinversion = getStickInversion(idx);
|
||||
lcdDrawChar(LCD_W - 8, y, stickinversion ? 127 : 126, flags);
|
||||
if (flags & (~RIGHT)) stickinversion = checkIncDec(event, stickinversion, 0, 1, EE_GENERAL);
|
||||
setStickInversion(idx, stickinversion);
|
||||
|
||||
} else if (k <= ITEM_RADIO_HARDWARE_POT_END) {
|
||||
// Pots & sliders
|
||||
|
||||
@@ -1352,6 +1352,16 @@ bool isFlexSwitchSourceValid(int source)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool getStickInversion(int index)
|
||||
{
|
||||
return bfGet<uint8_t>(g_eeGeneral.stickInvert, index, STICK_CFG_INV_BITS);
|
||||
}
|
||||
|
||||
void setStickInversion(int index, bool value)
|
||||
{
|
||||
g_eeGeneral.stickInvert = bfSet<uint8_t>(g_eeGeneral.stickInvert, value, index, STICK_CFG_INV_BITS);
|
||||
}
|
||||
|
||||
bool getPotInversion(int index)
|
||||
{
|
||||
return bfGet<potconfig_t>(g_eeGeneral.potsConfig, (POT_CFG_BITS * index) + POT_CFG_TYPE_BITS, POT_CFG_INV_BITS);
|
||||
|
||||
@@ -85,6 +85,8 @@ bool isAssignableFunctionAvailable(int function, bool modelFunctions);
|
||||
bool isPotTypeAvailable(uint8_t type);
|
||||
bool isFlexSwitchSourceValid(int source);
|
||||
bool getPotInversion(int index);
|
||||
bool getStickInversion(int index);
|
||||
void setStickInversion(int index, bool value);
|
||||
void setPotInversion(int index, bool value);
|
||||
uint8_t getPotType(int index);
|
||||
void setPotType(int index, int value);
|
||||
|
||||
@@ -443,6 +443,10 @@ void getADC()
|
||||
}
|
||||
|
||||
// 2nd: apply inversion
|
||||
if (x < pot_offset && getStickInversion(inputMappingConvertMode(x))) {
|
||||
v = 4 * RESX - v;
|
||||
}
|
||||
|
||||
if (is_flex_input && getPotInversion(x - pot_offset)) {
|
||||
v = 4 * RESX - v;
|
||||
}
|
||||
|
||||
@@ -69,6 +69,9 @@
|
||||
#define MODEL_GVAR_MIN(idx) (CFN_GVAR_CST_MIN + g_model.gvars[idx].min)
|
||||
#define MODEL_GVAR_MAX(idx) (CFN_GVAR_CST_MAX - g_model.gvars[idx].max)
|
||||
|
||||
// stick config
|
||||
#define STICK_CFG_INV_BITS 1
|
||||
|
||||
// pots config
|
||||
#define POT_CFG_TYPE_BITS 3
|
||||
#define POT_CFG_INV_BITS 1
|
||||
|
||||
@@ -338,6 +338,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 8, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -355,6 +355,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 16, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -774,16 +774,34 @@ static bool w_stick_name(void* user, uint8_t* data, uint32_t bitoffs,
|
||||
return _write_analog_name(ADC_INPUT_MAIN, user, data, bitoffs, wf, opaque);
|
||||
}
|
||||
|
||||
static void r_stick_inv(void* user, uint8_t* data, uint32_t bitoffs,
|
||||
const char* val, uint8_t val_len)
|
||||
{
|
||||
auto tw = reinterpret_cast<YamlTreeWalker*>(user);
|
||||
uint16_t idx = tw->getElmts(1);
|
||||
setStickInversion(idx, val[0] != '0');
|
||||
}
|
||||
|
||||
static bool w_stick_inv(void* user, uint8_t* data, uint32_t bitoffs,
|
||||
yaml_writer_func wf, void* opaque)
|
||||
{
|
||||
auto tw = reinterpret_cast<YamlTreeWalker*>(user);
|
||||
uint16_t idx = tw->getElmts(1);
|
||||
return wf(opaque, getStickInversion(idx) ? "1" : "0", 1);
|
||||
}
|
||||
|
||||
static bool stick_name_valid(void* user, uint8_t* data, uint32_t bitoffs)
|
||||
{
|
||||
auto tw = reinterpret_cast<YamlTreeWalker*>(user);
|
||||
uint16_t idx = tw->getElmts();
|
||||
if (getStickInversion(idx)) return true;
|
||||
return analogHasCustomLabel(ADC_INPUT_MAIN, idx);
|
||||
}
|
||||
|
||||
static const struct YamlNode struct_stickConfig[] = {
|
||||
YAML_IDX,
|
||||
YAML_CUSTOM( "name", r_stick_name, w_stick_name),
|
||||
YAML_CUSTOM("inv", r_stick_inv, w_stick_inv),
|
||||
YAML_END
|
||||
};
|
||||
|
||||
|
||||
@@ -339,6 +339,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 8, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -348,6 +348,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 16, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -355,6 +355,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 16, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -355,6 +355,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 16, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -348,6 +348,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 16, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -355,6 +355,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 16, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -355,6 +355,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 16, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -339,6 +339,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 8, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -339,6 +339,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 8, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -354,6 +354,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 16, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -338,6 +338,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 8, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -338,6 +338,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 8, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -338,6 +338,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 8, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -338,6 +338,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 8, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -340,6 +340,7 @@ static const struct YamlNode struct_RadioData[] = {
|
||||
YAML_ARRAY("serialPort", 8, 4, struct_serialConfig, nullptr),
|
||||
YAML_ARRAY("sticksConfig", 0, MAX_STICKS, struct_stickConfig, stick_name_valid),
|
||||
YAML_ARRAY("slidersConfig", 0, MAX_POTS, struct_sliderConfig, nullptr),
|
||||
YAML_PADDING( 8 ),
|
||||
YAML_ARRAY("potsConfig", 4, 8, struct_potConfig, nullptr),
|
||||
YAML_ARRAY("switchConfig", 2, 32, struct_switchConfig, nullptr),
|
||||
YAML_ARRAY("flexSwitches", 0, MAX_FLEX_SWITCHES, struct_flexSwitch, flex_sw_valid),
|
||||
|
||||
@@ -154,6 +154,7 @@ const char STR_NO_PICTURE[] = TR_NO_PICTURE;
|
||||
const char STR_TIMER[] = TR_TIMER;
|
||||
const char STR_NO_TIMERS[] = TR_NO_TIMERS;
|
||||
const char STR_START[] = TR_START;
|
||||
const char STR_NEXT[] = TR_NEXT;
|
||||
const char STR_ELIMITS[] = TR_ELIMITS;
|
||||
const char STR_ETRIMS[] = TR_ETRIMS;
|
||||
const char STR_TRIMINC[] = TR_TRIMINC;
|
||||
@@ -286,9 +287,15 @@ const char STR_MULTIPLIER[] = TR_MULTIPLIER;
|
||||
const char STR_CAL[] = TR_CAL;
|
||||
const char STR_CALIB_DONE[] = TR_CALIB_DONE;
|
||||
const char STR_VTRIM[] = TR_VTRIM;
|
||||
#if !defined(COLORLCD)
|
||||
const char STR_MENUTOSTART[] = TR_MENUTOSTART;
|
||||
#endif
|
||||
const char STR_SETMIDPOINT[] = TR_SETMIDPOINT;
|
||||
const char STR_MOVESTICKSPOTS[] = TR_MOVESTICKSPOTS;
|
||||
#if !defined(COLORLCD)
|
||||
const char STR_AXISDIR[] = TR_AXISDIR;
|
||||
const char STR_MENUAXISDIR[] = TR_MENUAXISDIR;
|
||||
#endif
|
||||
const char STR_TX[] = TR_TXnRX;
|
||||
const char STR_NODATA[] = TR_NODATA;
|
||||
const char STR_US[] = TR_US;
|
||||
|
||||
@@ -278,6 +278,7 @@ extern const char STR_NO_PICTURE[];
|
||||
extern const char STR_TIMER[];
|
||||
extern const char STR_NO_TIMERS[];
|
||||
extern const char STR_START[];
|
||||
extern const char STR_NEXT[];
|
||||
extern const char STR_ELIMITS[];
|
||||
extern const char STR_ETRIMS[];
|
||||
extern const char STR_TRIMINC[];
|
||||
@@ -471,6 +472,8 @@ extern const char STR_MENUTOSTART[];
|
||||
extern const char STR_SETMIDPOINT[];
|
||||
extern const char STR_MOVESTICKSPOTS[];
|
||||
extern const char STR_TX[];
|
||||
extern const char STR_AXISDIR[];
|
||||
extern const char STR_MENUAXISDIR[];
|
||||
#define STR_RX (STR_TX+OFS_RX)
|
||||
extern const char STR_NODATA[];
|
||||
extern const char STR_US[];
|
||||
|
||||
@@ -233,6 +233,7 @@
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#endif
|
||||
|
||||
#if defined(COLORLCD)
|
||||
@@ -268,6 +269,7 @@
|
||||
#define TR_TIMER TR("计时器", "计时器 ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "开始"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("扩展行程", "扩展通道行程")
|
||||
#define TR_ETRIMS TR("扩展微调", "扩展微调量")
|
||||
#define TR_TRIMINC "微调步幅"
|
||||
@@ -416,12 +418,7 @@
|
||||
#define TR_CALIBRATION "校准"
|
||||
#define TR_VTRIM "微调-+"
|
||||
#define TR_CALIB_DONE "校准完成"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "按[Enter]键开始校准"
|
||||
#define TR_SETMIDPOINT "校准中点:摇杆(轴)、旋钮、滑块,按[Enter]保存"
|
||||
#define TR_MOVESTICKSPOTS "校准边界:摇杆(轴)、旋钮、滑块,按[Enter]保存并完成"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART "按[Enter]键开始"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "校准中点,按[Enter]保存"
|
||||
#define TR_MOVESTICKSPOTS "校准边界,按[Enter]保存并完成"
|
||||
#else
|
||||
@@ -434,8 +431,10 @@
|
||||
#define TR_MOVESTICKSPOTS "校准边界"
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " 完成"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "NO DATA"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -245,6 +245,7 @@
|
||||
#define TR_ENTER "[DALŠÍ]"
|
||||
#else
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#endif
|
||||
|
||||
#if defined(PCBHORUS)
|
||||
@@ -261,7 +262,6 @@
|
||||
#define TR_POPUPS_ENTER_EXIT TR_ENTER "\010" TR_EXIT
|
||||
#endif
|
||||
|
||||
#define TR_MENUWHENDONE TR_ENTER " > DALŠÍ"
|
||||
#define TR_FREE TR("volné:", "volných")
|
||||
#define TR_YES "Ano"
|
||||
#define TR_NO "Ne"
|
||||
@@ -281,6 +281,7 @@
|
||||
#define TR_TIMER "Stopky"
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Start"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("Limit +25%", "Kanál +/- 125%")
|
||||
#define TR_ETRIMS TR("širší Trim", "Široký trim")
|
||||
#define TR_TRIMINC TR("Krok Trimu", "Krok trimu")
|
||||
@@ -431,12 +432,7 @@
|
||||
#define TR_CALIBRATION "Kalibrace"
|
||||
#define TR_VTRIM "Trim - +"
|
||||
#define TR_CALIB_DONE "Kalibrace dokončena"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Stiskem [ENTER] začneme"
|
||||
#define TR_SETMIDPOINT "Vycentruj páky/poty/slidery a stiskni [ENTER]"
|
||||
#define TR_MOVESTICKSPOTS "Hýbat osy/poty/slidery a stisknout [Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER "= START"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "VYCENTROVAT OSY/SLIDERY"
|
||||
#define TR_MOVESTICKSPOTS "HÝBAT OSY/POTY"
|
||||
#else
|
||||
@@ -448,8 +444,11 @@
|
||||
#define TR_SETMIDPOINT TR("NASTAVIT STŘED OSY", "STŘED OSY/SLIDERU")
|
||||
#define TR_MOVESTICKSPOTS "HÝBAT OSY/POTY"
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " > DALŠÍ"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "ŽÁDNÁ DATA"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -238,6 +238,7 @@
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NÆSTE]"
|
||||
#else
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
@@ -274,6 +275,7 @@
|
||||
#define TR_TIMER TR("Tid", "Tid ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Start"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("Udv.Grænser", "Udvidet grænser")
|
||||
#define TR_ETRIMS TR("Udv.Trim", "Udvidet trim")
|
||||
#define TR_TRIMINC "Trim øge"
|
||||
@@ -425,21 +427,23 @@
|
||||
#define TR_CALIBRATION "Kalibrering"
|
||||
#define TR_VTRIM "Trim - +"
|
||||
#define TR_CALIB_DONE "Kalibrering færdig"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Tryk [Enter] for start"
|
||||
#define TR_SETMIDPOINT "Centrer pinde/drejekontakter/skydere og tryk [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Flyt pinde/drejekontakter/skydere og tryk [Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " FOR START"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "CENTRER PINDE/SKYDER"
|
||||
#define TR_MOVESTICKSPOTS "FLYT PINDE/DREJEKONTAKT"
|
||||
#else
|
||||
#define TR_MENUTOSTART TR_ENTER " FOR START"
|
||||
#if defined(SURFACE_RADIO)
|
||||
#define TR_SETMIDPOINT "SET POTS MIDPOINT"
|
||||
#define TR_MOVESTICKSPOTS "MOVE ST/TH/POTS/AXIS"
|
||||
#else
|
||||
#define TR_SETMIDPOINT TR("SÆT PINDE I MIDT", "CENTRER PINDE/SKYDERE")
|
||||
#define TR_MOVESTICKSPOTS "FLYT PINDE/DREJEKONTAKTER"
|
||||
#define TR_MENUWHENDONE TR_ENTER " NÅR FÆRDIG"
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_MENUWHENDONE TR_ENTER " NÅR FÆRDIG"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "INGEN DATA"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -236,6 +236,7 @@
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#endif
|
||||
|
||||
#if defined(PCBHORUS)
|
||||
@@ -272,6 +273,7 @@
|
||||
#define TR_TIMER "Timer"
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Start"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("Erw. Limit", "Erw. Wege auf 150%")
|
||||
#define TR_ETRIMS TR("Erw. Trims", "Erw. Trim auf 100%")
|
||||
#define TR_TRIMINC TR("Trimschritt", "Trimmschritte")
|
||||
@@ -421,15 +423,9 @@
|
||||
#define TR_CAL "Kal."
|
||||
#define TR_VTRIM "Trim - +"
|
||||
#define TR_CALIB_DONE "Kalibrierung fertig"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Drücke [Enter] zum Start"
|
||||
#define TR_SETMIDPOINT "Knüppel/Schieber zentrieren und [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Bewege Knüppel/Poti/Schieber und drücke [Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " Zum Start"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "Knüppel/Schieber zentrieren"
|
||||
#define TR_MOVESTICKSPOTS "Knüppel/Schieber bewegen"
|
||||
#define TR_MENUWHENDONE TR_ENTER " wenn fertig"
|
||||
#else
|
||||
#define TR_MENUTOSTART TR_ENTER " Zum START"
|
||||
#if defined(SURFACE_RADIO)
|
||||
@@ -440,8 +436,10 @@
|
||||
#define TR_MOVESTICKSPOTS "BEWEGE KNÜPPEL/SCHIEBER"
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " wenn fertig"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "Keine Daten"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -235,6 +235,7 @@
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
@@ -271,6 +272,7 @@
|
||||
#define TR_TIMER TR("Timer", "Timer ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Start"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("E.Limits", "Extended limits")
|
||||
#define TR_ETRIMS TR("E.Trims", "Extended trims")
|
||||
#define TR_TRIMINC "Trim Step"
|
||||
@@ -420,12 +422,7 @@
|
||||
#define TR_CALIBRATION "Calibration"
|
||||
#define TR_VTRIM "Trim - +"
|
||||
#define TR_CALIB_DONE "Calibration completed"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Press [Enter] to start"
|
||||
#define TR_SETMIDPOINT "Center sticks/pots/sliders and press [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Move axis/pots/sliders and press [Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " TO START"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "CENTER AXIS/SLIDERS"
|
||||
#define TR_MOVESTICKSPOTS "MOVE AXIS/POTS"
|
||||
#else
|
||||
@@ -438,8 +435,10 @@
|
||||
#define TR_MOVESTICKSPOTS "MOVE AXIS/POTS"
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " WHEN DONE"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "NO DATA"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -231,6 +231,7 @@
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
@@ -249,7 +250,6 @@
|
||||
#define TR_POPUPS_ENTER_EXIT TR_ENTER "\010" TR_EXIT
|
||||
#endif
|
||||
|
||||
#define TR_MENUWHENDONE TR_ENTER " AL ACABAR "
|
||||
#define TR_FREE "libre"
|
||||
#define TR_YES "Yes"
|
||||
#define TR_NO "No"
|
||||
@@ -269,6 +269,7 @@
|
||||
#define TR_TIMER TR("Timer", "Timer ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Start"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("E.Límite", "Ampliar límites")
|
||||
#define TR_ETRIMS TR("E.Trims", "Ampliar trims")
|
||||
#define TR_TRIMINC "Paso trim"
|
||||
@@ -417,16 +418,23 @@
|
||||
#define TR_CAL "Cal"
|
||||
#define TR_VTRIM "Trim - +"
|
||||
#define TR_CALIB_DONE "Calibration completed"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Presiona [Enter] para empezar"
|
||||
#define TR_SETMIDPOINT "Centra sticks/pots/sliders y presiona [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Mueve sticks, pots and sliders y presiona [Enter]"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "Centra sticks/pots/sliders"
|
||||
#define TR_MOVESTICKSPOTS "Mueve sticks, pots and sliders"
|
||||
#else
|
||||
#define TR_MENUTOSTART TR_ENTER " EMPEZAR"
|
||||
#if defined(SURFACE_RADIO)
|
||||
#define TR_SETMIDPOINT "SET POTS MIDPOINT"
|
||||
#define TR_MOVESTICKSPOTS "MOVE ST/TH/POTS/AXIS"
|
||||
#else
|
||||
#define TR_SETMIDPOINT TR("STICKS AL CENTRO", "STICKS AL CENTRO")
|
||||
#define TR_MOVESTICKSPOTS "MOVER STICKS/POTS"
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_MENUWHENDONE TR_ENTER " AL ACABAR "
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "SIN DATOS"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -240,6 +240,7 @@
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
@@ -258,7 +259,6 @@
|
||||
#define TR_POPUPS_ENTER_EXIT TR_ENTER "\010" TR_EXIT
|
||||
#endif
|
||||
|
||||
#define TR_MENUWHENDONE TR_ENTER " WHEN DONE"
|
||||
#define TR_FREE "free"
|
||||
#define TR_YES "Yes"
|
||||
#define TR_NO "No"
|
||||
@@ -282,6 +282,7 @@
|
||||
#define TR_TIMER "Timer"
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Start"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("E.Limits", "Extended Limits")
|
||||
#define TR_ETRIMS TR("E.Trims", "Extended Trims")
|
||||
#define TR_TRIMINC "Trim Step"
|
||||
@@ -431,16 +432,23 @@
|
||||
#define TR_CALIBRATION "Calibration"
|
||||
#define TR_VTRIM "Trim - +"
|
||||
#define TR_CALIB_DONE "Calibration completed"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Press [Enter] to start"
|
||||
#define TR_SETMIDPOINT "Center sticks/pots/sliders and press [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Move sticks, pots and sliders and press [Enter]"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "CENTER AXIS/SLIDERS"
|
||||
#define TR_MOVESTICKSPOTS "MOVE AXIS/POTS"
|
||||
#else
|
||||
#define TR_MENUTOSTART TR_ENTER " TO START"
|
||||
#if defined(SURFACE_RADIO)
|
||||
#define TR_SETMIDPOINT "SET POTS MIDPOINT"
|
||||
#define TR_MOVESTICKSPOTS "MOVE ST/TH/POTS/AXIS"
|
||||
#else
|
||||
#define TR_SETMIDPOINT TR("SET STICKS MIDPOINT", "CENTER STICKS/SLIDERS")
|
||||
#define TR_MOVESTICKSPOTS "MOVE STICKS/POTS"
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_MENUWHENDONE TR_ENTER " WHEN DONE"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "NO DATA"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -240,6 +240,7 @@
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[SUIVANT]"
|
||||
#else
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
@@ -257,7 +258,6 @@
|
||||
#define TR_POPUPS_ENTER_EXIT TR_ENTER "\010" TR_EXIT
|
||||
#endif
|
||||
|
||||
#define TR_MENUWHENDONE TR_ENTER " QUAND PRÊT"
|
||||
#define TR_FREE "disp."
|
||||
#define TR_YES "Oui"
|
||||
#define TR_NO "Non"
|
||||
@@ -277,6 +277,7 @@
|
||||
#define TR_TIMER "Chrono "
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Start"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("Limites ét.", "Limites étendues")
|
||||
#define TR_ETRIMS TR("Trims ét.", "Trims étendus")
|
||||
#define TR_TRIMINC TR("Pas Trim", "Pas du trim")
|
||||
@@ -427,20 +428,23 @@
|
||||
#define TR_CALIBRATION "Calibration"
|
||||
#define TR_VTRIM "Trim - +"
|
||||
#define TR_CALIB_DONE "Calibration terminée"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Appui [Enter] pour commencer"
|
||||
#define TR_SETMIDPOINT "Centrer manches/pots/curseurs puis [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Bouger manches/pots/curseurs puis [Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " POUR DÉBUTER"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "RÉGLER NEUTRES"
|
||||
#define TR_MOVESTICKSPOTS "BOUGER STICKS/POTS"
|
||||
#else
|
||||
#define TR_MENUTOSTART TR_ENTER " POUR DÉBUT"
|
||||
#if defined(SURFACE_RADIO)
|
||||
#define TR_SETMIDPOINT "SET POTS MIDPOINT"
|
||||
#define TR_MOVESTICKSPOTS "MOVE ST/TH/POTS/AXIS"
|
||||
#else
|
||||
#define TR_SETMIDPOINT "REGLER NEUTRES"
|
||||
#define TR_MOVESTICKSPOTS "BOUGER STICKS/POTS"
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_MENUWHENDONE TR_ENTER " QUAND PRÊT"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "NO DATA"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -239,6 +239,7 @@
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
@@ -275,6 +276,7 @@
|
||||
#define TR_TIMER TR("שעון", "שעון ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "התחלה"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("E.Limits", "הרחב תצוגות")
|
||||
#define TR_ETRIMS TR("E.Trims", "הרחב תצוגות")
|
||||
#define TR_TRIMINC "רגישות קיזוז"
|
||||
@@ -424,21 +426,23 @@
|
||||
#define TR_CALIBRATION "כיול"
|
||||
#define TR_VTRIM "קיזוז - +"
|
||||
#define TR_CALIB_DONE "כיול הושלם"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Press [Enter] to start"
|
||||
#define TR_SETMIDPOINT "Center sticks/pots/sliders and press [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Move sticks/pots/sliders and press [Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " TO START"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "CENTER STICKS/SLIDERS"
|
||||
#define TR_MOVESTICKSPOTS "MOVE STICKS/POTS"
|
||||
#else
|
||||
#define TR_MENUTOSTART TR_ENTER " TO START"
|
||||
#if defined(SURFACE_RADIO)
|
||||
#define TR_SETMIDPOINT "SET POTS MIDPOINT"
|
||||
#define TR_MOVESTICKSPOTS "MOVE ST/TH/POTS/AXIS"
|
||||
#else
|
||||
#define TR_SETMIDPOINT TR("SET STICKS MIDPOINT", "CENTER STICKS/SLIDERS")
|
||||
#define TR_MOVESTICKSPOTS "MOVE STICKS/POTS"
|
||||
#define TR_MENUWHENDONE TR_ENTER " WHEN DONE"
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_MENUWHENDONE TR_ENTER " WHEN DONE"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "NO DATA"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -235,6 +235,7 @@
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
@@ -271,6 +272,7 @@
|
||||
#define TR_TIMER TR("Timer", "Timer ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Avvio"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("Lim. Est.", "Limiti Estesi")
|
||||
#define TR_ETRIMS TR("Trim Est.", "Trim Estesi")
|
||||
#define TR_TRIMINC "Fasi Trim"
|
||||
@@ -420,12 +422,7 @@
|
||||
#define TR_CALIBRATION "Calibrazione"
|
||||
#define TR_VTRIM "Trim - +"
|
||||
#define TR_CALIB_DONE "Calibratione completa"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Premi [ENT] per iniziare"
|
||||
#define TR_SETMIDPOINT "Centra sticks/pots/sliders e premi [ENT]"
|
||||
#define TR_MOVESTICKSPOTS "Muovi sticks/pots/sliders e premi [ENT]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " PER INIZIO"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "CENTRA STICKS/SLIDERS"
|
||||
#define TR_MOVESTICKSPOTS "MUOVI STICKS/POTS"
|
||||
#else
|
||||
@@ -438,8 +435,10 @@
|
||||
#define TR_MOVESTICKSPOTS "MUOVI ASSI/POTS"
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " PER FINIRE"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "DATI ASSENTI"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -234,6 +234,7 @@
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
@@ -270,6 +271,7 @@
|
||||
#define TR_TIMER TR("タイマー", "タイマー ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "スタート"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("E.Limit", "リミット拡張")
|
||||
#define TR_ETRIMS TR("E.Trims", "トリム拡張")
|
||||
#define TR_TRIMINC "トリムステップ"
|
||||
@@ -419,12 +421,7 @@
|
||||
#define TR_CALIBRATION "キャリブレーション"
|
||||
#define TR_VTRIM "トリム - +"
|
||||
#define TR_CALIB_DONE "キャリブレーション 完了"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "[Enter]を押してスタート"
|
||||
#define TR_SETMIDPOINT "スティック/ダイヤル/スライダーを中央にして[Enter]"
|
||||
#define TR_MOVESTICKSPOTS "スティック/ダイヤル/スライダーを動かして[Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " スタート"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "スティック/スライダーを中央に合わせます"
|
||||
#define TR_MOVESTICKSPOTS "スティック/スライダーを動かします"
|
||||
#else
|
||||
@@ -437,8 +434,10 @@
|
||||
#define TR_MOVESTICKSPOTS "MOVE AXIS/POTS"
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " WHEN DONE"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "NO DATA"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -275,6 +275,7 @@
|
||||
#define TR_TIMER TR("타이머", "타이머 ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "시작"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("확장 제한", "익스텐디드 리밋")
|
||||
#define TR_ETRIMS TR("확장 트림", "익스텐디드 트림")
|
||||
#define TR_TRIMINC "트림 단계"
|
||||
@@ -440,13 +441,7 @@
|
||||
#define TR_VTRIM "트림 - +"
|
||||
#define TR_CALIB_DONE "보정 완료"
|
||||
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "시작하려면 [ENTER]를 누르세요"
|
||||
#define TR_SETMIDPOINT "스틱/포트/슬라이더를 중앙에 맞춘 후 [ENTER]"
|
||||
#define TR_MOVESTICKSPOTS "스틱/포트/슬라이더를 움직이고 [ENTER]"
|
||||
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " -> 시작"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "스틱/슬라이더 중앙 정렬"
|
||||
#define TR_MOVESTICKSPOTS "스틱/포트 이동"
|
||||
#else
|
||||
@@ -459,9 +454,10 @@
|
||||
#define TR_MOVESTICKSPOTS "스틱/포트 이동"
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " -> 완료"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "데이터 없음"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -232,6 +232,7 @@
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
@@ -268,6 +269,7 @@
|
||||
#define TR_TIMER TR("Timer", "Timer ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Start"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("E.Limits", "Extended Limits")
|
||||
#define TR_ETRIMS TR("E.Trims", "Extended Trims")
|
||||
#define TR_TRIMINC "Trim Step"
|
||||
@@ -418,22 +420,23 @@
|
||||
#define TR_CALIBRATION "Calibration"
|
||||
#define TR_VTRIM "Trim - +"
|
||||
#define TR_CALIB_DONE "Calibration completed"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Geef [Enter] om te starten"
|
||||
#define TR_SETMIDPOINT "Centreer sticks/pots/schuiven en geef [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Beweeg sticks/pots/schuiven en geef [Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " VOOR START"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "CENTREER STICKS/SLIDERS"
|
||||
#define TR_MOVESTICKSPOTS "BEWEEG STICKS/POTS"
|
||||
#define TR_MENUWHENDONE TR_ENTER " BIJ GEREED"
|
||||
#else
|
||||
#define TR_MENUTOSTART TR_ENTER " VOOR START"
|
||||
#if defined(SURFACE_RADIO)
|
||||
#define TR_SETMIDPOINT "SET POTS MIDPOINT"
|
||||
#define TR_MOVESTICKSPOTS "MOVE ST/TH/POTS/AXIS"
|
||||
#else
|
||||
#define TR_SETMIDPOINT TR("ZET STICKS NAAR HET MIDDEN", "CENTREER STICKS/SLIDERS")
|
||||
#define TR_MOVESTICKSPOTS "BEWEEG STICKS/POTS"
|
||||
#define TR_MENUWHENDONE TR_ENTER " BIJ GEREED"
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_MENUWHENDONE TR_ENTER " BIJ GEREED"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "Geen Data"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -231,9 +231,9 @@
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_EXIT "RTN"
|
||||
#define TR_OK TR_ENTER
|
||||
@@ -268,6 +268,7 @@
|
||||
#define TR_TIMER TR("Timer", "Timer ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Start"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("Limi+25%", "Kanał +/- 125% ")
|
||||
#define TR_ETRIMS TR("E.Trym ", "Poszer Trymery")
|
||||
#define TR_TRIMINC "Krok Trym"
|
||||
@@ -417,12 +418,7 @@
|
||||
#define TR_CALIBRATION "Kalibracja"
|
||||
#define TR_VTRIM "Trym - +"
|
||||
#define TR_CALIB_DONE "Kalibracja zakończona"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Naciśnij [Enter] aby zacząć"
|
||||
#define TR_SETMIDPOINT "Centruj drążki/pot./suwaki i naciśnij [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Poruszaj drążki/pot./suwaki i naciśnij [Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " TO START"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "CENTRUJ DRĄŻKI/SUWAKI"
|
||||
#define TR_MOVESTICKSPOTS "RUSZAJ DRĄŻKI/SUWAKI"
|
||||
#else
|
||||
@@ -435,8 +431,10 @@
|
||||
#define TR_MOVESTICKSPOTS "RUSZAJ DRĄŻKI/POT."
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " = KONIEC"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "Brak Danych"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -238,6 +238,7 @@
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
@@ -274,6 +275,7 @@
|
||||
#define TR_TIMER "Crono"
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Iniciar"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("E.Limites", "Limites extend.")
|
||||
#define TR_ETRIMS TR("E.Trims", "Trims extend.")
|
||||
#define TR_TRIMINC "PassoTrim"
|
||||
@@ -423,12 +425,7 @@
|
||||
#define TR_CALIBRATION "Calibração"
|
||||
#define TR_VTRIM "Trim - +"
|
||||
#define TR_CALIB_DONE "Calibração completa"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Press [Enter] p/ iniciar"
|
||||
#define TR_SETMIDPOINT "Centrar eixos/pots/sliders e press. [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Mova eixos/pots/sliders e press. [Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " P/ INICIAR"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "CENTRE EIXO/SLIDERS"
|
||||
#define TR_MOVESTICKSPOTS "MOVA EIXO/POTS"
|
||||
#else
|
||||
@@ -441,8 +438,10 @@
|
||||
#define TR_MOVESTICKSPOTS "MOVA AXIS/POTS"
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " QUANDO TERM."
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "SEM DADOS"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -235,6 +235,7 @@
|
||||
#endif
|
||||
|
||||
#if defined(PCBFRSKY)
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENT]"
|
||||
#elif defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[ДАЛЕЕ]"
|
||||
@@ -275,6 +276,7 @@
|
||||
#define TR_TIMER TR("Таймер", "Таймер ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Старт"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("расш лимит", "Расш лимит")
|
||||
#define TR_ETRIMS TR("Расш трим", "Расш тримы")
|
||||
#define TR_TRIMINC "Шаг трима"
|
||||
@@ -424,12 +426,7 @@
|
||||
#define TR_CALIBRATION "Калибровка"
|
||||
#define TR_VTRIM "Трим - +"
|
||||
#define TR_CALIB_DONE "Калибровка заверш"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Наж [Enter] для прод"
|
||||
#define TR_SETMIDPOINT "Выставить по центру стики/потенц/слайдеры и нажать [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Перемещ стики/потенц/слайдеры и нажать [Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " СТАРТ"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "ЦЕНТР СТИКИ/СЛАЙДЕРЫ"
|
||||
#define TR_MOVESTICKSPOTS "Перемещ СТИКИ/ПОТЕНЦ"
|
||||
#else
|
||||
@@ -442,8 +439,10 @@
|
||||
#define TR_MOVESTICKSPOTS "ДВИГ СТИКИ/ПОТЕНЦ"
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " ПО ОКОНЧАНИЮ"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "НЕТ ДАННЫХ"
|
||||
#define TR_US "US"
|
||||
|
||||
@@ -245,6 +245,7 @@
|
||||
|
||||
|
||||
#if defined(PCBFRSKY)
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#elif defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NÄSTA]"
|
||||
@@ -285,6 +286,7 @@
|
||||
#define TR_TIMER TR("Timer","Timer ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Start"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("Gränser++","Utökade gränser")
|
||||
#define TR_ETRIMS TR("Trimmar++","Utökade trimmar")
|
||||
#define TR_TRIMINC TR("Trimning","Trimmökning")
|
||||
@@ -437,12 +439,7 @@
|
||||
#define TR_VTRIM "Trimm - +"
|
||||
#define TR_CALIB_DONE "Kalibrering färdig"
|
||||
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Tryck [Enter] för att börja"
|
||||
#define TR_SETMIDPOINT "Centrera axlar/vred/reglage och tryck [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Rör axlar/vred/reglage och tryck [Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " FÖR ATT STARTA"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "CENTRERA AXLAR/REGLAGE"
|
||||
#define TR_MOVESTICKSPOTS "RÖR AXLAR/VRED"
|
||||
#else
|
||||
@@ -455,9 +452,10 @@
|
||||
#define TR_MOVESTICKSPOTS "RÖR AXLAR/VRED"
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " AVSLUTAR"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "DATA SAKNAS"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -237,8 +237,10 @@
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
#if defined(COLORLCD)
|
||||
#define TR_EXIT "RTN"
|
||||
#define TR_OK TR_ENTER
|
||||
@@ -272,6 +274,7 @@
|
||||
#define TR_TIMER TR("計時器", "計時器 ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "開始"
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("擴展行程", "擴展通道行程")
|
||||
#define TR_ETRIMS TR("擴展微調", "擴展微調量")
|
||||
#define TR_TRIMINC "微調步幅"
|
||||
@@ -420,12 +423,7 @@
|
||||
#define TR_CALIBRATION "校準"
|
||||
#define TR_VTRIM "微調-+"
|
||||
#define TR_CALIB_DONE "校準完成"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "按[Enter]鍵開始校準"
|
||||
#define TR_SETMIDPOINT "校準中點:搖桿(軸)、旋鈕、滑塊,按[Enter]保存"
|
||||
#define TR_MOVESTICKSPOTS "校準邊界:搖桿(軸)、旋鈕、滑塊,按[Enter]保存並完成"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART "按[Enter]鍵開始"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "校準中點,按[Enter]保存"
|
||||
#define TR_MOVESTICKSPOTS "校準邊界,按[Enter]保存並完成"
|
||||
#else
|
||||
@@ -438,8 +436,10 @@
|
||||
#define TR_MOVESTICKSPOTS "校準邊界"
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " 完成"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "NO DATA"
|
||||
#define TR_US "us"
|
||||
|
||||
@@ -235,9 +235,10 @@
|
||||
#endif
|
||||
|
||||
#if defined(PCBNV14) || defined(PCBPL18)
|
||||
#define TR_ENTER "[NEXT]" /* use english */
|
||||
#define TR_ENTER "[NEXT]"
|
||||
#else
|
||||
#define TR_ENTER "[ENTER]" /* use english */
|
||||
#define TR_ENTER_LONG "[ENTER LONG]"
|
||||
#define TR_ENTER "[ENTER]"
|
||||
#endif
|
||||
|
||||
#if defined(COLORLCD)
|
||||
@@ -273,6 +274,7 @@
|
||||
#define TR_TIMER TR("Таймер", "Таймер ")
|
||||
#define TR_NO_TIMERS "No timers"
|
||||
#define TR_START "Start" /* use english */
|
||||
#define TR_NEXT "Next"
|
||||
#define TR_ELIMITS TR("Розш.Ліміт", "Розширені Ліміти")
|
||||
#define TR_ETRIMS TR("Розш.Трим.", "Розширене Обрізання") /* ned to be clarified by context */
|
||||
#define TR_TRIMINC "Крок трим."
|
||||
@@ -422,12 +424,7 @@
|
||||
#define TR_CALIBRATION "Калібрув."
|
||||
#define TR_VTRIM "Трим - +"
|
||||
#define TR_CALIB_DONE "Калібрування завершене"
|
||||
#if defined(PCBHORUS)
|
||||
#define TR_MENUTOSTART "Тисни [Enter] для старту"
|
||||
#define TR_SETMIDPOINT "Центруй важіль/потенц./повзунки та тисни [Enter]"
|
||||
#define TR_MOVESTICKSPOTS "Рухайте вісі/потенц./повзунки та тисніть [Enter]"
|
||||
#elif defined(COLORLCD)
|
||||
#define TR_MENUTOSTART TR_ENTER " ДЛЯ СТАРТУ"
|
||||
#if defined(COLORLCD)
|
||||
#define TR_SETMIDPOINT "ЦЕНТРУВАТИ ВАЖЕЛІ/ПОВЗУНКИ"
|
||||
#define TR_MOVESTICKSPOTS "РУХАЙТЕ ВІСІ/ПОТЕНЦ."
|
||||
#else
|
||||
@@ -440,8 +437,10 @@
|
||||
#define TR_MOVESTICKSPOTS "РУХАЙТЕ ВІСІ/ПОТЕНЦ."
|
||||
#endif
|
||||
#define TR_MENUWHENDONE TR_ENTER " КОЛИ ЗАКІНЧЕНО"
|
||||
#define TR_AXISDIR "AXIS DIR"
|
||||
#define TR_MENUAXISDIR TR_ENTER_LONG " " TR_AXISDIR
|
||||
#endif
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define TR_TXnRX "Tx:\0Rx:"
|
||||
#define OFS_RX 4
|
||||
#define TR_NODATA "НЕМАЄ ДАНИХ"
|
||||
#define TR_US "us"
|
||||
|
||||
Reference in New Issue
Block a user