diff --git a/README.md b/README.md index a17ee5e..fc78141 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,12 @@ ENABLE_COPY_CHAN_TO_VFO := 1 copy current channel into the other VFO #ENABLE_BAND_SCOPE := 1 not yet implemented - spectrum/pan-adapter ``` +# New/modified function keys + +* Long-press 'M' = Copy selected channel into the same VFO, then switches to frequency mode +* Long-press '5' = Toggle a selected channels scanlist setting .. if NOAA is disable in Makefile +* Long-press '*' = Toggles the scanlist number 1, 2 or ALL channels .. if in channel scan mode + # Some changes made from the Quansheng firmware * Various Quansheng firmware bugs fixed diff --git a/app/main.c b/app/main.c index cf9cf19..8b99f94 100644 --- a/app/main.c +++ b/app/main.c @@ -48,7 +48,7 @@ static void processFKeyFunction(const KEY_Code_t Key, const bool beep) #else - // TODO: do something useful with the key + // TODO: make use of this function key #endif @@ -166,6 +166,7 @@ static void processFKeyFunction(const KEY_Code_t Key, const bool beep) case KEY_5: #ifdef ENABLE_NOAA + if (IS_NOT_NOAA_CHANNEL(gTxVfo->CHANNEL_SAVE)) { gEeprom.ScreenChannel[Vfo] = gEeprom.NoaaChannel[gEeprom.TX_CHANNEL]; @@ -179,29 +180,36 @@ static void processFKeyFunction(const KEY_Code_t Key, const bool beep) } gRequestSaveVFO = true; gVfoConfigureMode = VFO_CONFIGURE_RELOAD; + #else - // toggle scanlist-1 and scanlist 2 + // toggle the selected channels scanlist setting + if (gScreenToDisplay != DISPLAY_SCANNER) { - if (gTxVfo->SCANLIST1_PARTICIPATION) + if (IS_MR_CHANNEL(gTxVfo->CHANNEL_SAVE)) { - if (gTxVfo->SCANLIST2_PARTICIPATION) - gTxVfo->SCANLIST1_PARTICIPATION = 0; + if (gTxVfo->SCANLIST1_PARTICIPATION) + { + if (gTxVfo->SCANLIST2_PARTICIPATION) + gTxVfo->SCANLIST1_PARTICIPATION = 0; + else + gTxVfo->SCANLIST2_PARTICIPATION = 1; + } else - gTxVfo->SCANLIST2_PARTICIPATION = 1; + { + if (gTxVfo->SCANLIST2_PARTICIPATION) + gTxVfo->SCANLIST2_PARTICIPATION = 0; + else + gTxVfo->SCANLIST1_PARTICIPATION = 1; + } + SETTINGS_UpdateChannel(gTxVfo->CHANNEL_SAVE, gTxVfo, true); + gVfoConfigureMode = VFO_CONFIGURE; + gFlagResetVfos = true; } - else - { - if (gTxVfo->SCANLIST2_PARTICIPATION) - gTxVfo->SCANLIST2_PARTICIPATION = 0; - else - gTxVfo->SCANLIST1_PARTICIPATION = 1; - } - SETTINGS_UpdateChannel(gTxVfo->CHANNEL_SAVE, gTxVfo, true); - gVfoConfigureMode = VFO_CONFIGURE; - gFlagResetVfos = true; } + #endif + break; case KEY_6: @@ -214,7 +222,7 @@ static void processFKeyFunction(const KEY_Code_t Key, const bool beep) #else - // TODO: make use of the function key press + // TODO: make use of this function key #endif diff --git a/firmware.bin b/firmware.bin index b7aaf07..e3ddb23 100644 Binary files a/firmware.bin and b/firmware.bin differ diff --git a/firmware.packed.bin b/firmware.packed.bin index 0bd0ba5..9e3a921 100644 Binary files a/firmware.packed.bin and b/firmware.packed.bin differ