From 83fe77fa8ea980a69a64629884633a2e5f9e2436 Mon Sep 17 00:00:00 2001 From: bsongis Date: Fri, 17 Aug 2012 09:34:38 +0000 Subject: [PATCH] MixData phases is now inverted to save some flash (thanks Romolo) Comment on DSM2 fixed in Makefile (thanks Bryan) Bug fixed in TELEMETRY menu --- src/Makefile | 1 + src/frsky.cpp | 4 ++-- src/model_menus.cpp | 11 +++++------ src/open9x.cpp | 3 +-- src/templates.cpp | 1 - 5 files changed, 9 insertions(+), 11 deletions(-) diff --git a/src/Makefile b/src/Makefile index 33149df6b..4b792fa47 100644 --- a/src/Makefile +++ b/src/Makefile @@ -148,6 +148,7 @@ SDCARD = NO PXX = NO # DSM2 (Spektrum) protocol +# Values = NO, SERIAL, PPM DSM2 = NO #IR protocols (SILV / TRAC09 / PICZ / SWIFT) diff --git a/src/frsky.cpp b/src/frsky.cpp index 8ab714a2b..8bb43bd91 100644 --- a/src/frsky.cpp +++ b/src/frsky.cpp @@ -944,11 +944,11 @@ void putsTelemetryChannel(uint8_t x, uint8_t y, uint8_t channel, int16_t val, ui break; case TELEM_MIN_A1-1: case TELEM_MIN_A2-1: - channel -= TELEM_MIN_A1-1-MAX_TIMERS; + channel -= TELEM_MIN_A1-1; // no break case TELEM_A1-1: case TELEM_A2-1: - channel -= MAX_TIMERS; + channel -= TELEM_A1-1; // A1 and A2 { int16_t converted_value = applyChannelRatio(channel, val); diff --git a/src/model_menus.cpp b/src/model_menus.cpp index 4d87da636..4075ff59f 100644 --- a/src/model_menus.cpp +++ b/src/model_menus.cpp @@ -1337,7 +1337,6 @@ void insertExpoMix(uint8_t expo, uint8_t idx) MixData *mix = mixaddress(idx); memmove(mix+1, mix, (MAX_MIXERS-(idx+1))*sizeof(MixData)); memclear(mix, sizeof(MixData)); - mix->phases = 1 << getFlightPhase(); mix->destCh = s_currCh-1; mix->srcRaw = (s_currCh > 4 ? s_currCh : channel_order(s_currCh)); mix->weight = 100; @@ -1696,7 +1695,7 @@ void menuProcMixOne(uint8_t event) case MIX_FIELD_FLIGHT_PHASE: lcd_putsLeft(y, STR_FPHASE); for (uint8_t p=0; pphases & (1<phases & (1<0 || p1valdiff)) { if (m_posHorz == 0) { @@ -2872,7 +2871,7 @@ void menuProcTelemetry(uint8_t event) case ITEM_TELEMETRY_A1_OFFSET: case ITEM_TELEMETRY_A2_OFFSET: lcd_puts(4, y, STR_OFFSET); - putsTelemetryChannel(TELEM_COL2, y, ch+MAX_TIMERS, 0, LEFT|attr); + putsTelemetryChannel(TELEM_COL2, y, TELEM_A1-1+ch, 0, LEFT|attr); if (attr) channel.offset = checkIncDec(event, channel.offset, -256, 256, EE_MODEL); break; @@ -2885,7 +2884,7 @@ void menuProcTelemetry(uint8_t event) lcd_puts(4, y, STR_ALARM); lcd_putsiAtt(TELEM_COL2, y, STR_VALARM, ALARM_LEVEL(ch, j), (attr && m_posHorz==0) ? blink : 0); lcd_putsiAtt(TELEM_COL2+4*FW, y, STR_VALARMFN, ALARM_GREATER(ch, j), (attr && m_posHorz==1) ? blink : 0); - putsTelemetryChannel(TELEM_COL2+6*FW, y, ch+MAX_TIMERS, channel.alarms_value[j], (attr && m_posHorz==2 ? blink : 0) | LEFT); + putsTelemetryChannel(TELEM_COL2+6*FW, y, TELEM_A1-1+ch, channel.alarms_value[j], (attr && m_posHorz==2 ? blink : 0) | LEFT); if (attr && (s_editMode>0 || p1valdiff)) { uint8_t t; diff --git a/src/open9x.cpp b/src/open9x.cpp index 8e0f21d32..00181d278 100644 --- a/src/open9x.cpp +++ b/src/open9x.cpp @@ -227,7 +227,6 @@ inline void applyDefaultTemplate() md->destCh = i; md->weight = 100; md->srcRaw = channel_order(i+1); - md->phases = 1; } STORE_MODELVARS; @@ -2024,7 +2023,7 @@ void perOut(uint8_t tick10ms) if (md->srcRaw==0) break; - if (!(md->phases & (1<phases & (1<swtch, 1); diff --git a/src/templates.cpp b/src/templates.cpp index 85a798a36..2a89e7859 100644 --- a/src/templates.cpp +++ b/src/templates.cpp @@ -81,7 +81,6 @@ MixData* setDest(uint8_t dch, uint8_t src, bool clear=false) mix->destCh = dch; mix->srcRaw = src; mix->weight = 100; - mix->phases = 1; return mix; }