Change SWITCH MAIN ONLY to RX MODE

This commit is contained in:
Armel FAUVEAU
2024-02-08 02:17:04 +01:00
parent 186ea416bf
commit 170fcbfb6e
4 changed files with 27 additions and 36 deletions

View File

@@ -102,11 +102,11 @@ void (*action_opt_table[])(void) = {
#endif
#ifdef ENABLE_FEAT_F4HWN
[ACTION_OPT_MAIN] = &ACTION_Main,
[ACTION_OPT_RXMODE] = &ACTION_RxMode,
[ACTION_OPT_PTT] = &ACTION_Ptt,
[ACTION_OPT_WN] = &ACTION_Wn,
#else
[ACTION_OPT_MAIN] = &FUNCTION_NOP,
[ACTION_OPT_RXMODE] = &FUNCTION_NOP,
#endif
};
@@ -451,43 +451,34 @@ void ACTION_BlminTmpOff(void)
#endif
#ifdef ENABLE_FEAT_F4HWN
void ACTION_Main(void)
void ACTION_RxMode(void)
{
static uint8_t cycle = 0;
static uint8_t a;
static uint8_t b;
static bool cycle = 0;
static uint8_t a = 255;
static uint8_t b = 255;
if(gEeprom.DUAL_WATCH == 0 && gEeprom.CROSS_BAND_RX_TX == 0 && cycle != 1)
if(a == 255 && b == 255)
{
return;
a = gEeprom.DUAL_WATCH;
b = gEeprom.CROSS_BAND_RX_TX;
}
else
{
if(cycle == 0)
{
a = gEeprom.DUAL_WATCH;
b = gEeprom.CROSS_BAND_RX_TX;
gEeprom.DUAL_WATCH = 0;
gEeprom.CROSS_BAND_RX_TX = 0;
gFlagReconfigureVfos = true;
gUpdateStatus = true;
switch(cycle) {
case 0:
a = (a == 0) ? 1 : 0;
cycle = 1;
}
else
{
gEeprom.DUAL_WATCH = a;
gEeprom.CROSS_BAND_RX_TX = b;
gFlagReconfigureVfos = true;
gUpdateStatus = true;
cycle = 0;
}
break;
case 1:
b = (b == 0) ? 1 : 0;
cycle = 0;
break;
}
gEeprom.DUAL_WATCH = a;
gEeprom.CROSS_BAND_RX_TX = b;
gFlagReconfigureVfos = true;
gUpdateStatus = true;
}
void ACTION_Ptt(void)

View File

@@ -36,7 +36,7 @@ void ACTION_SwitchDemodul(void);
#endif
#ifdef ENABLE_FEAT_F4HWN
void ACTION_Main(void);
void ACTION_RxMode(void);
void ACTION_Ptt(void);
void ACTION_Wn(void);
#endif

View File

@@ -91,7 +91,7 @@ enum ACTION_OPT_t {
ACTION_OPT_SWITCH_DEMODUL,
ACTION_OPT_BLMIN_TMP_OFF, //BackLight Minimum Temporay OFF
#ifdef ENABLE_FEAT_F4HWN
ACTION_OPT_MAIN,
ACTION_OPT_RXMODE,
ACTION_OPT_PTT,
ACTION_OPT_WN,
#endif

View File

@@ -400,7 +400,7 @@ const t_sidefunction gSubMenu_SIDEFUNCTIONS[] =
{"BLMIN\nTMP OFF", ACTION_OPT_BLMIN_TMP_OFF}, //BackLight Minimum Temporay OFF
#endif
#ifdef ENABLE_FEAT_F4HWN
{"SWITCH\nMAIN ONLY", ACTION_OPT_MAIN},
{"SWITCH\nRX MODE", ACTION_OPT_RXMODE},
{"SWITCH\nPTT", ACTION_OPT_PTT},
{"SWITCH\nWIDE\nNARROW", ACTION_OPT_WN},
#endif