mirror of
https://github.com/opentx/opentx.git
synced 2025-07-23 16:25:16 +03:00
Merge pull request #744 from opentx/bsongis/Issue741_a_equals_x_in_logical_switches
Issue #741 fixed - a==x added in logical switches functions
This commit is contained in:
commit
c5edba2188
18 changed files with 90 additions and 15 deletions
|
@ -466,6 +466,7 @@ void ConvertModel_215_to_216(ModelData &model)
|
|||
for (uint8_t i=0; i<32; i++) {
|
||||
LogicalSwitchData & sw = g_model.customSw[i];
|
||||
sw.func = oldModel.customSw[i].func;
|
||||
if (sw.func >= LS_FUNC_VEQUAL) sw.func += 1;
|
||||
if (sw.func >= LS_FUNC_RANGE) sw.func += 1;
|
||||
if (sw.func >= LS_FUNC_STAY) sw.func += 1;
|
||||
sw.v1 = oldModel.customSw[i].v1;
|
||||
|
|
|
@ -687,7 +687,10 @@ PACK( union u_int8int16_t {
|
|||
|
||||
enum LogicalSwitchesFunctions {
|
||||
LS_FUNC_NONE,
|
||||
#if defined(CPUARM)
|
||||
LS_FUNC_VEQUAL, // v==offset
|
||||
#endif
|
||||
LS_FUNC_VALMOSTEQUAL, // v~=offset
|
||||
LS_FUNC_VPOS, // v>offset
|
||||
LS_FUNC_VNEG, // v<offset
|
||||
#if defined(CPUARM)
|
||||
|
|
|
@ -1585,7 +1585,12 @@ bool getSwitch(int8_t swtch)
|
|||
#endif
|
||||
|
||||
switch (cs->func) {
|
||||
#if defined(CPUARM)
|
||||
case LS_FUNC_VEQUAL:
|
||||
result = (x==y);
|
||||
break;
|
||||
#endif
|
||||
case LS_FUNC_VALMOSTEQUAL:
|
||||
#if defined(GVARS)
|
||||
if (v1 >= MIXSRC_GVAR1 && v1 <= MIXSRC_LAST_GVAR)
|
||||
result = (x==y);
|
||||
|
|
|
@ -167,8 +167,14 @@
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CPUARM)
|
||||
#define TR_CSWEQUAL "a=x\0 "
|
||||
#else
|
||||
#define TR_CSWEQUAL
|
||||
#endif
|
||||
|
||||
#define LEN_VCSWFUNC "\005"
|
||||
#define TR_VCSWFUNC "---\0 ""a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
|
||||
#define LEN_VFSWFUNC "\013"
|
||||
|
||||
|
|
|
@ -167,8 +167,14 @@
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CPUARM)
|
||||
#define TR_CSWEQUAL "a=x\0 "
|
||||
#else
|
||||
#define TR_CSWEQUAL
|
||||
#endif
|
||||
|
||||
#define LEN_VCSWFUNC "\005"
|
||||
#define TR_VCSWFUNC "---\0 ""a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
|
||||
#define LEN_VFSWFUNC "\012"
|
||||
|
||||
|
|
|
@ -167,8 +167,14 @@
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CPUARM)
|
||||
#define TR_CSWEQUAL "a=x\0 "
|
||||
#else
|
||||
#define TR_CSWEQUAL
|
||||
#endif
|
||||
|
||||
#define LEN_VCSWFUNC "\005"
|
||||
#define TR_VCSWFUNC "---\0 ""a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
|
||||
#define LEN_VFSWFUNC "\012"
|
||||
|
||||
|
|
|
@ -167,8 +167,14 @@
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CPUARM)
|
||||
#define TR_CSWEQUAL "a=x\0 "
|
||||
#else
|
||||
#define TR_CSWEQUAL
|
||||
#endif
|
||||
|
||||
#define LEN_VCSWFUNC "\005"
|
||||
#define TR_VCSWFUNC "---\0 ""a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
|
||||
#define LEN_VFSWFUNC "\012"
|
||||
|
||||
|
|
|
@ -167,8 +167,14 @@
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CPUARM)
|
||||
#define TR_CSWEQUAL "a=x\0 "
|
||||
#else
|
||||
#define TR_CSWEQUAL
|
||||
#endif
|
||||
|
||||
#define LEN_VCSWFUNC "\005"
|
||||
#define TR_VCSWFUNC "---\0 ""a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
|
||||
#define LEN_VFSWFUNC "\012"
|
||||
|
||||
|
|
|
@ -167,8 +167,14 @@
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CPUARM)
|
||||
#define TR_CSWEQUAL "a=x\0 "
|
||||
#else
|
||||
#define TR_CSWEQUAL
|
||||
#endif
|
||||
|
||||
#define LEN_VCSWFUNC "\005"
|
||||
#define TR_VCSWFUNC "---\0 ""a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
|
||||
#define LEN_VFSWFUNC "\015"
|
||||
|
||||
|
|
|
@ -167,8 +167,14 @@
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CPUARM)
|
||||
#define TR_CSWEQUAL "a=x\0 "
|
||||
#else
|
||||
#define TR_CSWEQUAL
|
||||
#endif
|
||||
|
||||
#define LEN_VCSWFUNC "\005"
|
||||
#define TR_VCSWFUNC "---\0 ""a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
|
||||
#define LEN_VFSWFUNC "\015"
|
||||
|
||||
|
|
|
@ -167,8 +167,14 @@
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CPUARM)
|
||||
#define TR_CSWEQUAL "a=x\0 "
|
||||
#else
|
||||
#define TR_CSWEQUAL
|
||||
#endif
|
||||
|
||||
#define LEN_VCSWFUNC "\005"
|
||||
#define TR_VCSWFUNC "---\0 ""a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
|
||||
#define LEN_VFSWFUNC "\013"
|
||||
|
||||
|
|
|
@ -167,8 +167,14 @@
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CPUARM)
|
||||
#define TR_CSWEQUAL "a=x\0 "
|
||||
#else
|
||||
#define TR_CSWEQUAL
|
||||
#endif
|
||||
|
||||
#define LEN_VCSWFUNC "\005"
|
||||
#define TR_VCSWFUNC "---\0 ""a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
|
||||
#define LEN_VFSWFUNC "\015"
|
||||
|
||||
|
|
|
@ -167,8 +167,14 @@
|
|||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(CPUARM)
|
||||
#define TR_CSWEQUAL "a=x\0 "
|
||||
#else
|
||||
#define TR_CSWEQUAL
|
||||
#endif
|
||||
|
||||
#define LEN_VCSWFUNC "\005"
|
||||
#define TR_VCSWFUNC "---\0 ""a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
#define TR_VCSWFUNC "---\0 " TR_CSWEQUAL "a{x\0 ""a>x\0 ""a<x\0 " TR_CSWRANGE "|a|>x""|a|<x""AND\0 ""OR\0 ""XOR\0 " TR_CSWSTAY "a=b\0 ""a>b\0 ""a<b\0 ""d}x\0 ""|d|}x" TR_CSWTIMER TR_CSWSTICKY
|
||||
|
||||
#define LEN_VFSWFUNC "\012"
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue