Refactoring

This commit is contained in:
Krzysiek Egzmont
2023-11-23 19:23:50 +01:00
parent 0ce7d7bdc3
commit d8d4384b20
2 changed files with 41 additions and 57 deletions

View File

@@ -63,24 +63,22 @@ void ACTION_Power(void)
gTxVfo->OUTPUT_POWER = OUTPUT_POWER_LOW; gTxVfo->OUTPUT_POWER = OUTPUT_POWER_LOW;
gRequestSaveChannel = 1; gRequestSaveChannel = 1;
//gRequestSaveChannel = 2; // auto save the channel
#ifdef ENABLE_VOICE #ifdef ENABLE_VOICE
gAnotherVoiceID = VOICE_ID_POWER; gAnotherVoiceID = VOICE_ID_POWER;
#endif #endif
gRequestDisplayScreen = gScreenToDisplay; gRequestDisplayScreen = gScreenToDisplay;
} }
void ACTION_Monitor(void) void ACTION_Monitor(void)
{ {
if (gCurrentFunction != FUNCTION_MONITOR) if (gCurrentFunction != FUNCTION_MONITOR) { // enable the monitor
{ // enable the monitor
RADIO_SelectVfos(); RADIO_SelectVfos();
#ifdef ENABLE_NOAA #ifdef ENABLE_NOAA
if (gRxVfo->CHANNEL_SAVE >= NOAA_CHANNEL_FIRST && gIsNoaaMode) if (gRxVfo->CHANNEL_SAVE >= NOAA_CHANNEL_FIRST && gIsNoaaMode)
gNoaaChannel = gRxVfo->CHANNEL_SAVE - NOAA_CHANNEL_FIRST; gNoaaChannel = gRxVfo->CHANNEL_SAVE - NOAA_CHANNEL_FIRST;
#endif #endif
RADIO_SetupRegisters(true); RADIO_SetupRegisters(true);
APP_StartListening(FUNCTION_MONITOR, false); APP_StartListening(FUNCTION_MONITOR, false);
return; return;
@@ -88,32 +86,29 @@ void ACTION_Monitor(void)
gMonitor = false; gMonitor = false;
if (gScanStateDir != SCAN_OFF) if (gScanStateDir != SCAN_OFF) {
{
gScanPauseDelayIn_10ms = scan_pause_delay_in_1_10ms; gScanPauseDelayIn_10ms = scan_pause_delay_in_1_10ms;
gScheduleScanListen = false; gScheduleScanListen = false;
gScanPauseMode = true; gScanPauseMode = true;
} }
#ifdef ENABLE_NOAA #ifdef ENABLE_NOAA
if (gEeprom.DUAL_WATCH == DUAL_WATCH_OFF && gIsNoaaMode) if (gEeprom.DUAL_WATCH == DUAL_WATCH_OFF && gIsNoaaMode) {
{ gNOAA_Countdown_10ms = NOAA_countdown_10ms;
gNOAA_Countdown_10ms = NOAA_countdown_10ms; gScheduleNOAA = false;
gScheduleNOAA = false; }
} #endif
#endif
RADIO_SetupRegisters(true); RADIO_SetupRegisters(true);
#ifdef ENABLE_FMRADIO #ifdef ENABLE_FMRADIO
if (gFmRadioMode) if (gFmRadioMode) {
{ FM_Start();
FM_Start(); gRequestDisplayScreen = DISPLAY_FM;
gRequestDisplayScreen = DISPLAY_FM; }
} else
else #endif
#endif gRequestDisplayScreen = gScreenToDisplay;
gRequestDisplayScreen = gScreenToDisplay;
} }
void ACTION_Scan(bool bRestart) void ACTION_Scan(bool bRestart)

View File

@@ -173,14 +173,11 @@ static void HandleIncoming(void)
{ {
bool bFlag; bool bFlag;
if (!g_SquelchLost) if (!g_SquelchLost) { // squelch is closed
{ // squelch is closed
if (gDTMF_RX_index > 0) if (gDTMF_RX_index > 0)
DTMF_clear_RX(); DTMF_clear_RX();
if (gCurrentFunction != FUNCTION_FOREGROUND) if (gCurrentFunction != FUNCTION_FOREGROUND) {
{
FUNCTION_Select(FUNCTION_FOREGROUND); FUNCTION_Select(FUNCTION_FOREGROUND);
gUpdateDisplay = true; gUpdateDisplay = true;
} }
@@ -189,39 +186,31 @@ static void HandleIncoming(void)
bFlag = (gScanStateDir == SCAN_OFF && gCurrentCodeType == CODE_TYPE_OFF); bFlag = (gScanStateDir == SCAN_OFF && gCurrentCodeType == CODE_TYPE_OFF);
#ifdef ENABLE_NOAA #ifdef ENABLE_NOAA
if (IS_NOAA_CHANNEL(gRxVfo->CHANNEL_SAVE) && gNOAACountdown_10ms > 0) if (IS_NOAA_CHANNEL(gRxVfo->CHANNEL_SAVE) && gNOAACountdown_10ms > 0) {
{ gNOAACountdown_10ms = 0;
gNOAACountdown_10ms = 0; bFlag = true;
bFlag = true; }
} #endif
#endif
if (g_CTCSS_Lost && gCurrentCodeType == CODE_TYPE_CONTINUOUS_TONE) if (g_CTCSS_Lost && gCurrentCodeType == CODE_TYPE_CONTINUOUS_TONE) {
{
bFlag = true; bFlag = true;
gFoundCTCSS = false; gFoundCTCSS = false;
} }
if (g_CDCSS_Lost && gCDCSSCodeType == CDCSS_POSITIVE_CODE && (gCurrentCodeType == CODE_TYPE_DIGITAL || gCurrentCodeType == CODE_TYPE_REVERSE_DIGITAL)) if (g_CDCSS_Lost && gCDCSSCodeType == CDCSS_POSITIVE_CODE && (gCurrentCodeType == CODE_TYPE_DIGITAL || gCurrentCodeType == CODE_TYPE_REVERSE_DIGITAL)) {
{
gFoundCDCSS = false; gFoundCDCSS = false;
} }
else else if (!bFlag)
if (!bFlag)
return; return;
if (gScanStateDir == SCAN_OFF) if (gScanStateDir == SCAN_OFF) { // not scanning
{ // not scanning if (gRxVfo->DTMF_DECODING_ENABLE || gSetting_KILLED) { // DTMF DCD is enabled
if (gRxVfo->DTMF_DECODING_ENABLE || gSetting_KILLED)
{ // DTMF DCD is enabled
DTMF_HandleRequest(); DTMF_HandleRequest();
if (gDTMF_CallState == DTMF_CALL_STATE_NONE) if (gDTMF_CallState == DTMF_CALL_STATE_NONE) {
{ if (gRxReceptionMode == RX_MODE_DETECTED) {
if (gRxReceptionMode == RX_MODE_DETECTED)
{
gDualWatchCountdown_10ms = dual_watch_count_after_1_10ms; gDualWatchCountdown_10ms = dual_watch_count_after_1_10ms;
gScheduleDualWatch = false; gScheduleDualWatch = false;
@@ -2049,9 +2038,9 @@ Skip:
{ {
RADIO_SelectVfos(); RADIO_SelectVfos();
#ifdef ENABLE_NOAA #ifdef ENABLE_NOAA
RADIO_ConfigureNOAA(); RADIO_ConfigureNOAA();
#endif #endif
RADIO_SetupRegisters(true); RADIO_SetupRegisters(true);