Merge pull request #581 from opentx/bsongis/Issue542_flash_usage_on_9x_stock
Bsongis/issue542 flash usage on 9x stock
This commit is contained in:
+3
-3
@@ -1363,11 +1363,11 @@ GTEST_SRCS_ = $(GTEST_DIR)/src/*.cc $(GTEST_DIR)/src/*.h $(GTEST_HEADERS)
|
||||
# conservative and not optimized. This is fine as Google Test
|
||||
# compiles fast and for ordinary users its source rarely changes.
|
||||
gtest-all.o : $(GTEST_SRCS_)
|
||||
$(CXX) $(CPPFLAGS) -I$(GTEST_DIR) -c \
|
||||
$(CXX) $(CPPFLAGS) -I$(GTEST_DIR) -I$(GTEST_DIR)/include -c \
|
||||
$(GTEST_DIR)/src/gtest-all.cc
|
||||
|
||||
gtest_main.o : $(GTEST_SRCS_)
|
||||
$(CXX) $(CPPFLAGS) -I$(GTEST_DIR) -c \
|
||||
$(CXX) $(CPPFLAGS) -I$(GTEST_DIR) -I$(GTEST_DIR)/include -c \
|
||||
$(GTEST_DIR)/src/gtest_main.cc
|
||||
|
||||
gtest.a : gtest-all.o
|
||||
@@ -1381,4 +1381,4 @@ gtest_main.a : gtest-all.o gtest_main.o
|
||||
# function.
|
||||
|
||||
gtests: $(BOARDSRC) $(CPPSRC) gtests.cpp simpgmspace.cpp *.h gtest_main.a
|
||||
g++ -std=gnu++0x $(CPPFLAGS) $(BOARDSRC) $(CPPSRC) gtests.cpp simpgmspace.cpp -I$(GTEST_DIR) -o gtests -lpthread -MD -DSIMU gtest_main.a
|
||||
g++ -std=gnu++0x $(CPPFLAGS) $(BOARDSRC) $(CPPSRC) gtests.cpp simpgmspace.cpp -I$(GTEST_DIR) ${INCFLAGS} -I$(GTEST_DIR)/include -o gtests -lpthread -MD -DSIMU gtest_main.a
|
||||
|
||||
@@ -3746,7 +3746,7 @@ enum LimitsItems {
|
||||
#undef MIN_MAX_ATTR
|
||||
#define MIN_MAX_ATTR attr
|
||||
#else
|
||||
#define MIN_MAX_DISPLAY(x) (x)
|
||||
#define MIN_MAX_DISPLAY(x) ((int8_t)(x))
|
||||
#endif
|
||||
|
||||
#if defined(PCBTARANIS)
|
||||
|
||||
+16
-6
@@ -509,6 +509,12 @@ uint16_t evalChkSum()
|
||||
return sum;
|
||||
}
|
||||
|
||||
#if defined(TEMPLATES)
|
||||
inline void applyDefaultTemplate()
|
||||
{
|
||||
applyTemplate(TMPL_SIMPLE_4CH);
|
||||
}
|
||||
#else
|
||||
void applyDefaultTemplate()
|
||||
{
|
||||
for (int i=0; i<NUM_STICKS; i++) {
|
||||
@@ -539,6 +545,7 @@ void applyDefaultTemplate()
|
||||
}
|
||||
eeDirty(EE_MODEL);
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(PXX) && defined(CPUARM)
|
||||
void checkModelIdUnique(uint8_t id)
|
||||
@@ -3403,6 +3410,8 @@ void perOut(uint8_t mode, uint8_t tick10ms)
|
||||
|
||||
if (md->srcRaw == 0) break;
|
||||
|
||||
uint8_t stickIndex = md->srcRaw - MIXSRC_Rud;
|
||||
|
||||
if (!(dirtyChannels & ((bitfield_channels_t)1 << md->destCh))) continue;
|
||||
|
||||
// if this is the first calculation for the destination channel, initialize it with 0 (otherwise would be random)
|
||||
@@ -3415,7 +3424,6 @@ void perOut(uint8_t mode, uint8_t tick10ms)
|
||||
delayval_t mixEnabled = !(md->phases & (1 << s_perout_flight_phase)) && getSwitch(md->swtch);
|
||||
|
||||
//========== VALUE ===============
|
||||
uint8_t stickIndex = md->srcRaw - MIXSRC_Rud;
|
||||
getvalue_t v = 0;
|
||||
if (mode > e_perout_mode_inactive_phase) {
|
||||
if (!mixEnabled || stickIndex >= NUM_STICKS || (stickIndex == THR_STICK && g_model.thrTrim)) {
|
||||
@@ -3433,12 +3441,14 @@ void perOut(uint8_t mode, uint8_t tick10ms)
|
||||
else
|
||||
#endif
|
||||
{
|
||||
v = getValue(md->srcRaw);
|
||||
if (md->srcRaw>=MIXSRC_CH1 && md->srcRaw<=MIXSRC_LAST_CH && md->destCh != md->srcRaw-MIXSRC_CH1) {
|
||||
if (dirtyChannels & ((bitfield_channels_t)1 << (md->srcRaw-MIXSRC_CH1)) & (passDirtyChannels|~(((bitfield_channels_t) 1 << md->destCh)-1)))
|
||||
int8_t srcRaw = MIXSRC_Rud + stickIndex;
|
||||
v = getValue(srcRaw);
|
||||
srcRaw -= MIXSRC_CH1;
|
||||
if (srcRaw>=0 && srcRaw<=MIXSRC_LAST_CH-MIXSRC_CH1 && md->destCh != srcRaw) {
|
||||
if (dirtyChannels & ((bitfield_channels_t)1 << srcRaw) & (passDirtyChannels|~(((bitfield_channels_t) 1 << md->destCh)-1)))
|
||||
passDirtyChannels |= (bitfield_channels_t) 1 << md->destCh;
|
||||
if (md->srcRaw-MIXSRC_CH1 < md->destCh || pass > 0)
|
||||
v = chans[md->srcRaw-MIXSRC_CH1] >> 8;
|
||||
if (srcRaw < md->destCh || pass > 0)
|
||||
v = chans[srcRaw] >> 8;
|
||||
}
|
||||
}
|
||||
if (!mixCondition) {
|
||||
|
||||
@@ -178,7 +178,13 @@ void applyTemplate(uint8_t idx)
|
||||
// Simple 4-Ch
|
||||
case TMPL_SIMPLE_4CH:
|
||||
clearInputs();
|
||||
applyDefaultTemplate();
|
||||
#if defined(PCBTARANIS)
|
||||
#pragma message("Templates with virtual inputs (FrSky Taranis) are not implemented!")
|
||||
#endif
|
||||
setDest(ICC(STK_RUD), MIXSRC_Rud);
|
||||
setDest(ICC(STK_ELE), MIXSRC_Ele);
|
||||
setDest(ICC(STK_THR), MIXSRC_Thr);
|
||||
setDest(ICC(STK_AIL), MIXSRC_Ail);
|
||||
break;
|
||||
|
||||
// Sticky-T-Cut
|
||||
@@ -203,9 +209,6 @@ void applyTemplate(uint8_t idx)
|
||||
// Elevon\\Delta
|
||||
case TMPL_ELEVON_DELTA:
|
||||
defaultInputs();
|
||||
#if defined(PCBTARANIS)
|
||||
#pragma message("Templates below are not implemented (only V-TAIL has been done). Feel free to help!")
|
||||
#endif
|
||||
setDest(ICC(STK_ELE), MIXSRC_Ele, true);
|
||||
setDest(ICC(STK_ELE), MIXSRC_Ail);
|
||||
setDest(ICC(STK_AIL), MIXSRC_Ele, true);
|
||||
|
||||
Reference in New Issue
Block a user