From ba677b34408b1b81329078b94b90f4ba4836ac08 Mon Sep 17 00:00:00 2001 From: OneOfEleven Date: Thu, 19 Oct 2023 14:21:37 +0100 Subject: [PATCH] Reduced eeprom wear --- app/aircopy.c | 2 +- app/app.c | 26 ++++---- app/dtmf.c | 4 +- app/fm.c | 2 +- app/main.c | 116 ++++++++++++++++++++------------- app/menu.c | 10 +-- bitmaps.c | 10 +++ bitmaps.h | 2 + board.c | 2 +- driver/eeprom.c | 58 +++++++++++------ driver/eeprom.h | 4 +- firmware.bin | Bin 60156 -> 60256 bytes firmware.packed.bin | Bin 60174 -> 60274 bytes radio.c | 67 +++++++++++-------- radio.h | 2 + settings.c | 153 ++++++++++++++++++++------------------------ settings.h | 14 ++-- ui/main.c | 116 ++++++++++++++++++++------------- 18 files changed, 337 insertions(+), 251 deletions(-) diff --git a/app/aircopy.c b/app/aircopy.c index 2437df8..3d7cfca 100644 --- a/app/aircopy.c +++ b/app/aircopy.c @@ -650,7 +650,7 @@ static void AIRCOPY_Key_DIGITS(key_code_t Key, bool key_pressed, bool key_held) g_aircopy_freq = Frequency; #ifdef ENABLE_AIRCOPY_REMEMBER_FREQ - SETTINGS_SaveSettings(); // remeber the frequency for the next time + SETTINGS_save(); // remeber the frequency for the next time #endif g_rx_vfo->freq_config_rx.frequency = Frequency; diff --git a/app/app.c b/app/app.c index f2c6568..cf0d308 100644 --- a/app/app.c +++ b/app/app.c @@ -652,11 +652,11 @@ void APP_stop_scan(void) { // frequency mode RADIO_ApplyOffset(g_rx_vfo); RADIO_ConfigureSquelchAndOutputPower(g_rx_vfo); - SETTINGS_SaveChannel(g_rx_vfo->channel_save, g_eeprom.rx_vfo, g_rx_vfo, 1); + SETTINGS_save_channel(g_rx_vfo->channel_save, g_eeprom.rx_vfo, g_rx_vfo, 1); return; } - SETTINGS_SaveVfoIndices(); + SETTINGS_save_vfo_indices(); } #ifdef ENABLE_VOICE @@ -1549,27 +1549,27 @@ void APP_time_slice_10ms(void) if (g_flag_save_vfo) { - SETTINGS_SaveVfoIndices(); + SETTINGS_save_vfo_indices(); g_flag_save_vfo = false; } if (g_flag_save_settings) { - SETTINGS_SaveSettings(); + SETTINGS_save(); g_flag_save_settings = false; } #ifdef ENABLE_FMRADIO if (g_flag_save_fm) { - SETTINGS_SaveFM(); + SETTINGS_save_fm(); g_flag_save_fm = false; } #endif if (g_flag_save_channel) { - SETTINGS_SaveChannel(g_tx_vfo->channel_save, g_eeprom.tx_vfo, g_tx_vfo, g_flag_save_channel ? 1 : 0); + SETTINGS_save_channel(g_tx_vfo->channel_save, g_eeprom.tx_vfo, g_tx_vfo, g_flag_save_channel ? 1 : 0); g_flag_save_channel = false; RADIO_configure_channel(g_eeprom.tx_vfo, VFO_CONFIGURE); @@ -2734,7 +2734,7 @@ Skip: if (g_request_save_settings) { if (!key_held) - SETTINGS_SaveSettings(); + SETTINGS_save(); else g_flag_save_settings = 1; @@ -2746,7 +2746,7 @@ Skip: if (g_request_save_fm) { if (!key_held) - SETTINGS_SaveFM(); + SETTINGS_save_fm(); else g_flag_save_fm = true; @@ -2757,7 +2757,7 @@ Skip: if (g_request_save_vfo) { if (!key_held) - SETTINGS_SaveVfoIndices(); + SETTINGS_save_vfo_indices(); else g_flag_save_vfo = true; @@ -2768,7 +2768,7 @@ Skip: { if (!key_held) { - SETTINGS_SaveChannel(g_tx_vfo->channel_save, g_eeprom.tx_vfo, g_tx_vfo, g_request_save_channel); + SETTINGS_save_channel(g_tx_vfo->channel_save, g_eeprom.tx_vfo, g_tx_vfo, g_request_save_channel); if (g_screen_to_display != DISPLAY_SEARCH) if (g_vfo_configure_mode == VFO_CONFIGURE_NONE) // don't wipe previous variable setting @@ -2787,10 +2787,6 @@ Skip: if (g_vfo_configure_mode != VFO_CONFIGURE_NONE) { - #if defined(ENABLE_UART) && defined(ENABLE_UART_DEBUG) - UART_printf("audio gap\r\n"); - #endif - if (g_flag_reset_vfos) { RADIO_configure_channel(0, g_vfo_configure_mode); @@ -2819,6 +2815,8 @@ Skip: RADIO_setup_registers(true); +// g_tx_vfo->frequency_channel = BOARD_find_channel(frequency); + g_dtmf_auto_reset_time_500ms = 0; g_dtmf_call_state = DTMF_CALL_STATE_NONE; g_dtmf_tx_stop_count_down_500ms = 0; diff --git a/app/dtmf.c b/app/dtmf.c index d29492d..2a702b6 100644 --- a/app/dtmf.c +++ b/app/dtmf.c @@ -244,7 +244,7 @@ void DTMF_HandleRequest(void) DTMF_clear_RX(); - SETTINGS_SaveSettings(); + SETTINGS_save(); g_dtmf_reply_state = DTMF_REPLY_AB; @@ -283,7 +283,7 @@ void DTMF_HandleRequest(void) DTMF_clear_RX(); - SETTINGS_SaveSettings(); + SETTINGS_save(); g_dtmf_reply_state = DTMF_REPLY_AB; g_dtmf_call_state = DTMF_CALL_STATE_NONE; diff --git a/app/fm.c b/app/fm.c index 3d11290..1892e24 100644 --- a/app/fm.c +++ b/app/fm.c @@ -163,7 +163,7 @@ void FM_PlayAndUpdate(void) FM_ConfigureChannelState(); BK1080_SetFrequency(g_eeprom.fm_frequency_playing); - SETTINGS_SaveFM(); + SETTINGS_save_fm(); g_fm_play_count_down_10ms = 0; g_schedule_fm = false; diff --git a/app/main.c b/app/main.c index ce4b9d1..4dc64c4 100644 --- a/app/main.c +++ b/app/main.c @@ -43,8 +43,14 @@ void toggle_chan_scanlist(void) { // toggle the selected channels scanlist setting +// if (IS_FREQ_CHANNEL(g_tx_vfo->channel_save)) + if (IS_NOAA_CHANNEL(g_tx_vfo->channel_save)) + { + g_beep_to_play = BEEP_500HZ_60MS_DOUBLE_BEEP_OPTIONAL; + return; + } + if (g_screen_to_display != DISPLAY_MAIN || - !IS_USER_CHANNEL(g_tx_vfo->channel_save) || g_current_function == FUNCTION_TRANSMIT || g_current_function == FUNCTION_PANADAPTER) { @@ -76,7 +82,7 @@ void toggle_chan_scanlist(void) g_tx_vfo->scanlist_1_participation = 1; } - SETTINGS_UpdateChannel(g_tx_vfo->channel_save, g_tx_vfo, true); + SETTINGS_save_chan_attribs_name(g_tx_vfo->channel_save, g_tx_vfo); g_vfo_configure_mode = VFO_CONFIGURE; g_flag_reset_vfos = true; @@ -406,9 +412,6 @@ void MAIN_Key_DIGITS(key_code_t Key, bool key_pressed, bool key_held) return; } -// #ifdef ENABLE_NOAA -// if (IS_NOT_NOAA_CHANNEL(g_tx_vfo->channel_save)) -// #endif if (IS_FREQ_CHANNEL(g_tx_vfo->channel_save)) { // user is entering a frequency @@ -457,13 +460,13 @@ void MAIN_Key_DIGITS(key_code_t Key, bool key_pressed, bool key_held) g_eeprom.screen_channel[Vfo] = band + FREQ_CHANNEL_FIRST; g_eeprom.freq_channel[Vfo] = band + FREQ_CHANNEL_FIRST; - SETTINGS_SaveVfoIndices(); + SETTINGS_save_vfo_indices(); RADIO_configure_channel(Vfo, VFO_CONFIGURE_RELOAD); } // Frequency += 75; // is this meant to be rounding ? - Frequency += g_tx_vfo->step_freq / 2; // no idea, but this is + Frequency += g_tx_vfo->step_freq / 2; // no idea, but this is Frequency = FREQUENCY_FloorToStep(Frequency, g_tx_vfo->step_freq, FREQ_BAND_TABLE[g_tx_vfo->band].lower); @@ -474,10 +477,18 @@ void MAIN_Key_DIGITS(key_code_t Key, bool key_pressed, bool key_held) } g_tx_vfo->freq_config_rx.frequency = Frequency; - // 1of11 .. test to prevent the monitor being turned off -// g_request_save_channel = 1; - SETTINGS_SaveChannel(g_tx_vfo->channel_save, g_eeprom.tx_vfo, g_tx_vfo, 1); - RADIO_setup_registers(true); + + // find the first channel that contains this frequency + g_tx_vfo->frequency_channel = BOARD_find_channel(Frequency); + + // 1of11 .. test to prevent monitor mode being turned off + #if 0 + // this currently also turns monitor mode off :( + g_request_save_channel = 1; + #else + SETTINGS_save_channel(g_tx_vfo->channel_save, g_eeprom.tx_vfo, g_tx_vfo, 1); + RADIO_setup_registers(true); + #endif return; } @@ -615,9 +626,9 @@ void MAIN_Key_MENU(const bool key_pressed, const bool key_held) #ifdef ENABLE_COPY_CHAN_TO_VFO_TO_CHAN - if (g_scan_state_dir == SCAN_STATE_DIR_OFF && - g_css_scan_mode == CSS_SCAN_MODE_OFF && - g_eeprom.dual_watch == DUAL_WATCH_OFF && + if (g_scan_state_dir == SCAN_STATE_DIR_OFF && + g_css_scan_mode == CSS_SCAN_MODE_OFF && + g_eeprom.dual_watch == DUAL_WATCH_OFF && g_eeprom.vfo_open) { // not scanning @@ -647,28 +658,36 @@ void MAIN_Key_MENU(const bool key_pressed, const bool key_held) g_update_display = true; } else - if (IS_FREQ_CHANNEL(g_eeprom.screen_channel[vfo])) - { // copy VFO to channel + if (IS_NOT_NOAA_CHANNEL(g_eeprom.screen_channel[vfo])) + { // copy VFO to a channel // search the channels to see if the frequency is already present - const unsigned int chan = BOARD_find_channel(g_eeprom.vfo_info[vfo].p_tx->frequency); + unsigned int chan = BOARD_find_channel(g_eeprom.vfo_info[vfo].p_tx->frequency); + if (chan > USER_CHANNEL_LAST) + { // find next next free channel + //for (chan = g_eeprom.screen_channel[vfo]; chan <= USER_CHANNEL_LAST; chan++) + for (chan = 0; chan <= USER_CHANNEL_LAST; chan++) + if (!RADIO_CheckValidChannel(chan, false, vfo)) + break; + } g_screen_to_display = DISPLAY_INVALID; GUI_SelectNextDisplay(DISPLAY_MENU); - - g_flag_refresh_menu = false; g_menu_cursor = MENU_MEM_SAVE; g_is_in_sub_menu = true; - if (chan <= USER_CHANNEL_LAST) - { // go straight to the channel that holds the same frequency + { + #if defined(ENABLE_UART) && defined(ENABLE_UART_DEBUG) + UART_printf("vfo to mem %u\r\n", chan); + #endif + g_sub_menu_selection = chan; + g_flag_refresh_menu = false; + g_screen_to_display = DISPLAY_MENU; + g_update_display = false; + UI_DisplayMenu(); } - g_screen_to_display = DISPLAY_MENU; - g_update_display = false; - UI_DisplayMenu(); - #ifdef ENABLE_VOICE g_another_voice_id = VOICE_ID_MENU; #endif @@ -796,27 +815,31 @@ void MAIN_Key_UP_DOWN(bool key_pressed, bool key_held, scan_state_dir_t Directio g_beep_to_play = BEEP_1KHZ_60MS_OPTIONAL; } - if (!key_pressed && - g_scan_state_dir == SCAN_STATE_DIR_OFF && - IS_NOT_NOAA_CHANNEL(Channel) && - IS_FREQ_CHANNEL(Channel)) - { // key released in frequency mode - #ifdef ENABLE_SQ_OPEN_WITH_UP_DN_BUTTS - if (key_held && !monitor_was_enabled && g_current_function == FUNCTION_MONITOR) - { // re-enable the squelch - APP_start_listening(FUNCTION_RECEIVE, false); - g_monitor_enabled = false; - } - #endif + if (!key_pressed) + { + if (g_scan_state_dir == SCAN_STATE_DIR_OFF && IS_FREQ_CHANNEL(Channel)) + { // key released in frequency mode - // only update eeprom when the key is released - saves a LOT of wear and tear on the little eeprom - SETTINGS_SaveChannel(g_tx_vfo->channel_save, g_eeprom.tx_vfo, g_tx_vfo, 1); + #ifdef ENABLE_SQ_OPEN_WITH_UP_DN_BUTTS + if (key_held && !monitor_was_enabled && g_current_function == FUNCTION_MONITOR) + { // re-enable the squelch + APP_start_listening(FUNCTION_RECEIVE, false); + g_monitor_enabled = false; + } + #endif - #if defined(ENABLE_UART) && defined(ENABLE_UART_DEBUG) -// UART_printf("save chan\r\n"); - #endif + // find the first channel that contains this frequency + g_tx_vfo->frequency_channel = BOARD_find_channel(g_tx_vfo->freq_config_rx.frequency); + + // only update eeprom when the key is released - saves a LOT of wear and tear on the little eeprom + SETTINGS_save_channel(g_tx_vfo->channel_save, g_eeprom.tx_vfo, g_tx_vfo, 1); + + #if defined(ENABLE_UART) && defined(ENABLE_UART_DEBUG) +// UART_printf("save chan\r\n"); + #endif + } } - + if (key_held || !key_pressed) { // long press @@ -874,6 +897,13 @@ void MAIN_Key_UP_DOWN(bool key_pressed, bool key_held, scan_state_dir_t Directio g_tx_vfo->freq_config_rx.frequency = frequency; + // find the first channel that contains this frequency + // currently takes to long to scan all the channels + // + // TODO: include this once we have the entire eeprom loaded + // + //g_tx_vfo->frequency_channel = BOARD_find_channel(frequency); + if (new_band != old_band) { // original slow method g_request_save_channel = 1; diff --git a/app/menu.c b/app/menu.c index 40ad373..9da091e 100644 --- a/app/menu.c +++ b/app/menu.c @@ -527,7 +527,7 @@ void MENU_AcceptSetting(void) // save the channel name memset(g_tx_vfo->name, 0, sizeof(g_tx_vfo->name)); memmove(g_tx_vfo->name, g_edit, 10); - SETTINGS_SaveChannel(g_sub_menu_selection, g_eeprom.tx_vfo, g_tx_vfo, 3); + SETTINGS_save_channel(g_sub_menu_selection, g_eeprom.tx_vfo, g_tx_vfo, 3); g_flag_reconfigure_vfos = true; return; @@ -614,14 +614,14 @@ void MENU_AcceptSetting(void) case MENU_S_ADD1: g_tx_vfo->scanlist_1_participation = g_sub_menu_selection; - SETTINGS_UpdateChannel(g_tx_vfo->channel_save, g_tx_vfo, true); + SETTINGS_save_chan_attribs_name(g_tx_vfo->channel_save, g_tx_vfo); g_vfo_configure_mode = VFO_CONFIGURE; g_flag_reset_vfos = true; return; case MENU_S_ADD2: g_tx_vfo->scanlist_2_participation = g_sub_menu_selection; - SETTINGS_UpdateChannel(g_tx_vfo->channel_save, g_tx_vfo, true); + SETTINGS_save_chan_attribs_name(g_tx_vfo->channel_save, g_tx_vfo); g_vfo_configure_mode = VFO_CONFIGURE; g_flag_reset_vfos = true; return; @@ -657,7 +657,7 @@ void MENU_AcceptSetting(void) #if 1 g_request_save_channel = 1; #else - SETTINGS_SaveChannel(g_sub_menu_selection, g_eeprom.tx_vfo, g_tx_vfo, 3); + SETTINGS_save_channel(g_sub_menu_selection, g_eeprom.tx_vfo, g_tx_vfo, 3); g_flag_reconfigure_vfos = true; #endif return; @@ -783,7 +783,7 @@ void MENU_AcceptSetting(void) #endif case MENU_MEM_DEL: - SETTINGS_UpdateChannel(g_sub_menu_selection, NULL, false); + SETTINGS_save_chan_attribs_name(g_sub_menu_selection, NULL); g_vfo_configure_mode = VFO_CONFIGURE_RELOAD; g_flag_reset_vfos = true; return; diff --git a/bitmaps.c b/bitmaps.c index 538c9cf..ee64868 100644 --- a/bitmaps.c +++ b/bitmaps.c @@ -400,3 +400,13 @@ const uint8_t BITMAP_COMPAND[6] = __extension__ 0b01000010, __extension__ 0b00100100 }; + +const uint8_t BITMAP_FREQ_CHAN[6] = +{ + __extension__ 0b00000000, + __extension__ 0b01111110, + __extension__ 0b00010010, + __extension__ 0b00010010, + __extension__ 0b00000010, + __extension__ 0b00000010 +}; diff --git a/bitmaps.h b/bitmaps.h index 7ccb581..c2a8def 100644 --- a/bitmaps.h +++ b/bitmaps.h @@ -61,5 +61,7 @@ extern const uint8_t BITMAP_SCANLIST2[6]; extern const uint8_t BITMAP_COMPAND[6]; +extern const uint8_t BITMAP_FREQ_CHAN[6]; + #endif diff --git a/board.c b/board.c index 0ee4af2..cad5503 100644 --- a/board.c +++ b/board.c @@ -992,7 +992,7 @@ void BOARD_FactoryReset(bool bIsAll) g_rx_vfo->freq_config_rx.frequency = Frequency; g_rx_vfo->freq_config_tx.frequency = Frequency; g_rx_vfo->band = FREQUENCY_GetBand(Frequency); - SETTINGS_SaveChannel(USER_CHANNEL_FIRST + i, 0, g_rx_vfo, 2); + SETTINGS_save_channel(USER_CHANNEL_FIRST + i, 0, g_rx_vfo, 2); } } } diff --git a/driver/eeprom.c b/driver/eeprom.c index 606e4c6..3bff947 100644 --- a/driver/eeprom.c +++ b/driver/eeprom.c @@ -14,40 +14,60 @@ * limitations under the License. */ +#include // NULL and memcmp + #include "driver/eeprom.h" #include "driver/i2c.h" #include "driver/system.h" -void EEPROM_ReadBuffer(uint16_t Address, void *pBuffer, uint8_t Size) +void EEPROM_ReadBuffer(const uint16_t address, void *p_buffer, const unsigned int size) { - I2C_Start(); + if (p_buffer == NULL || address >= 0x2000 || size == 0) + return; + I2C_Start(); I2C_Write(0xA0); - - I2C_Write((Address >> 8) & 0xFF); - I2C_Write((Address >> 0) & 0xFF); - + I2C_Write((address >> 8) & 0xFF); + I2C_Write((address >> 0) & 0xFF); I2C_Start(); - I2C_Write(0xA1); - - I2C_ReadBuffer(pBuffer, Size); - + I2C_ReadBuffer(p_buffer, size); I2C_Stop(); } -void EEPROM_WriteBuffer(uint16_t Address, const void *pBuffer) +void EEPROM_WriteBuffer(const uint16_t address, const void *p_buffer) { + if (p_buffer == NULL || address >= 0x2000) + return; + +#if 0 + // normal way + I2C_Start(); - I2C_Write(0xA0); - - I2C_Write((Address >> 8) & 0xFF); - I2C_Write((Address >> 0) & 0xFF); - - I2C_WriteBuffer(pBuffer, 8); - + I2C_Write((address >> 8) & 0xFF); + I2C_Write((address >> 0) & 0xFF); + I2C_WriteBuffer(p_buffer, 8); I2C_Stop(); - SYSTEM_DelayMs(10); +#else + // eeprom wear reduction + // only write the data IF it's different to what's already in eeprom + + uint8_t buffer[8]; + EEPROM_ReadBuffer(address, buffer, 8); + if (memcmp(p_buffer, buffer, 8) != 0) + { + I2C_Start(); + I2C_Write(0xA0); + I2C_Write((address >> 8) & 0xFF); + I2C_Write((address >> 0) & 0xFF); + I2C_WriteBuffer(p_buffer, 8); + I2C_Stop(); + } + +#endif + + // give the EEPROM time to burn the data in (apparently takes 5ms) + SYSTEM_DelayMs(8); } diff --git a/driver/eeprom.h b/driver/eeprom.h index 545c48c..32c5656 100644 --- a/driver/eeprom.h +++ b/driver/eeprom.h @@ -19,8 +19,8 @@ #include -void EEPROM_ReadBuffer(uint16_t Address, void *pBuffer, uint8_t Size); -void EEPROM_WriteBuffer(uint16_t Address, const void *pBuffer); +void EEPROM_ReadBuffer(const uint16_t address, void *p_buffer, const unsigned int size); +void EEPROM_WriteBuffer(const uint16_t address, const void *p_buffer); #endif diff --git a/firmware.bin b/firmware.bin index eba22624a4a88924c437ec6c079301b29867b584..5ddc61803587b51256c612d4cf20b2aa2f18a82a 100644 GIT binary patch delta 23173 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 delta 54889 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 MRM?fGVPV_d##^Q`k^lez diff --git a/radio.c b/radio.c index da82f97..81864d0 100644 --- a/radio.c +++ b/radio.c @@ -22,6 +22,7 @@ #include "app/fm.h" #endif #include "audio.h" +#include "board.h" #include "bsp/dp32g030/gpio.h" #include "dcs.h" #include "driver/bk4819.h" @@ -120,8 +121,8 @@ void RADIO_InitInfo(vfo_info_t *pInfo, const uint8_t ChannelSave, const uint32_t memset(pInfo, 0, sizeof(*pInfo)); pInfo->band = FREQUENCY_GetBand(Frequency); - pInfo->scanlist_1_participation = true; - pInfo->scanlist_2_participation = true; + pInfo->scanlist_1_participation = 1; + pInfo->scanlist_2_participation = 1; pInfo->step_setting = STEP_12_5kHz; pInfo->step_freq = STEP_FREQ_TABLE[pInfo->step_setting]; pInfo->channel_save = ChannelSave; @@ -132,6 +133,7 @@ void RADIO_InitInfo(vfo_info_t *pInfo, const uint8_t ChannelSave, const uint32_t pInfo->p_rx = &pInfo->freq_config_rx; pInfo->p_tx = &pInfo->freq_config_tx; pInfo->compand = 0; // off + pInfo->frequency_channel = 0xff; if (ChannelSave == (FREQ_CHANNEL_FIRST + BAND2_108MHz)) pInfo->am_mode = 1; @@ -144,10 +146,8 @@ void RADIO_configure_channel(const unsigned int VFO, const unsigned int configur uint8_t Channel; uint8_t Attributes; uint8_t Band; - bool bParticipation2; uint16_t Base; uint32_t Frequency; - vfo_info_t *pRadio = &g_eeprom.vfo_info[VFO]; if (!g_setting_350_enable) { @@ -160,12 +160,14 @@ void RADIO_configure_channel(const unsigned int VFO, const unsigned int configur Channel = g_eeprom.screen_channel[VFO]; + g_eeprom.vfo_info[VFO].frequency_channel = 0xff; + if (IS_VALID_CHANNEL(Channel)) { #ifdef ENABLE_NOAA if (Channel >= NOAA_CHANNEL_FIRST) { - RADIO_InitInfo(pRadio, g_eeprom.screen_channel[VFO], NOAA_FREQUENCY_TABLE[Channel - NOAA_CHANNEL_FIRST]); + RADIO_InitInfo(&g_eeprom.vfo_info[VFO], g_eeprom.screen_channel[VFO], NOAA_FREQUENCY_TABLE[Channel - NOAA_CHANNEL_FIRST]); if (g_eeprom.cross_vfo_rx_tx == CROSS_BAND_OFF) return; g_eeprom.cross_vfo_rx_tx = CROSS_BAND_OFF; @@ -206,32 +208,36 @@ void RADIO_configure_channel(const unsigned int VFO, const unsigned int configur Index = Channel - FREQ_CHANNEL_FIRST; - RADIO_InitInfo(pRadio, Channel, FREQ_BAND_TABLE[Index].lower); + RADIO_InitInfo(&g_eeprom.vfo_info[VFO], Channel, FREQ_BAND_TABLE[Index].lower); return; } Band = Attributes & USER_CH_BAND_MASK; if (Band > BAND7_470MHz) - { Band = BAND6_400MHz; - } if (Channel <= USER_CHANNEL_LAST) - { + { // user channel g_eeprom.vfo_info[VFO].band = Band; - g_eeprom.vfo_info[VFO].scanlist_1_participation = (Attributes & USER_CH_SCANLIST1) ? true : false; - bParticipation2 = (Attributes & USER_CH_SCANLIST2) ? true : false; + g_eeprom.vfo_info[VFO].scanlist_2_participation = (Attributes & USER_CH_SCANLIST2) ? 1 : 0; + g_eeprom.vfo_info[VFO].scanlist_1_participation = (Attributes & USER_CH_SCANLIST1) ? 1 : 0; } else - { + if (IS_FREQ_CHANNEL(Channel)) + { // VFO channel Band = Channel - FREQ_CHANNEL_FIRST; - g_eeprom.vfo_info[VFO].band = Band; - bParticipation2 = true; - g_eeprom.vfo_info[VFO].scanlist_1_participation = true; + g_eeprom.vfo_info[VFO].band = Band; // shouldn't this be "Band / 2" ? .. two VFO's per band + #if 0 + g_eeprom.vfo_info[VFO].scanlist_2_participation = 1; + g_eeprom.vfo_info[VFO].scanlist_1_participation = 1; + #else + // allowing the vfo's to be included in the scanning + g_eeprom.vfo_info[VFO].scanlist_2_participation = (Attributes & USER_CH_SCANLIST2) ? 1 : 0; + g_eeprom.vfo_info[VFO].scanlist_1_participation = (Attributes & USER_CH_SCANLIST1) ? 1 : 0; + #endif } - g_eeprom.vfo_info[VFO].scanlist_2_participation = bParticipation2; - g_eeprom.vfo_info[VFO].channel_save = Channel; + g_eeprom.vfo_info[VFO].channel_save = Channel; if (Channel <= USER_CHANNEL_LAST) Base = Channel * 16; @@ -353,7 +359,7 @@ void RADIO_configure_channel(const unsigned int VFO, const unsigned int configur EEPROM_ReadBuffer(Base, &info, sizeof(info)); - pRadio->freq_config_rx.frequency = info.frequency; + g_eeprom.vfo_info[VFO].freq_config_rx.frequency = info.frequency; if (info.offset >= 100000000) info.offset = 1000000; @@ -362,11 +368,14 @@ void RADIO_configure_channel(const unsigned int VFO, const unsigned int configur // *************** } - Frequency = pRadio->freq_config_rx.frequency; + Frequency = g_eeprom.vfo_info[VFO].freq_config_rx.frequency; #if 1 - // fix previously set incorrect band + // fix previously maybe incorrect set band + Band = FREQUENCY_GetBand(Frequency); + g_eeprom.vfo_info[VFO].band = Band; + #endif if (Frequency < FREQ_BAND_TABLE[Band].lower) @@ -378,21 +387,23 @@ void RADIO_configure_channel(const unsigned int VFO, const unsigned int configur if (Channel >= FREQ_CHANNEL_FIRST) Frequency = FREQUENCY_FloorToStep(Frequency, g_eeprom.vfo_info[VFO].step_freq, FREQ_BAND_TABLE[Band].lower); - pRadio->freq_config_rx.frequency = Frequency; + g_eeprom.vfo_info[VFO].freq_config_rx.frequency = Frequency; if (Frequency >= 10800000 && Frequency < 13600000) - g_eeprom.vfo_info[VFO].tx_offset_freq_dir = TX_OFFSET_FREQ_DIR_OFF; + g_eeprom.vfo_info[VFO].tx_offset_freq_dir = TX_OFFSET_FREQ_DIR_OFF; // air band else if (Channel > USER_CHANNEL_LAST) g_eeprom.vfo_info[VFO].tx_offset_freq = FREQUENCY_FloorToStep(g_eeprom.vfo_info[VFO].tx_offset_freq, g_eeprom.vfo_info[VFO].step_freq, 0); - RADIO_ApplyOffset(pRadio); + if (IS_FREQ_CHANNEL(Channel)) + g_eeprom.vfo_info[VFO].frequency_channel = BOARD_find_channel(Frequency); // remember if a channel has this frequency + + RADIO_ApplyOffset(&g_eeprom.vfo_info[VFO]); memset(g_eeprom.vfo_info[VFO].name, 0, sizeof(g_eeprom.vfo_info[VFO].name)); - if (Channel < USER_CHANNEL_LAST) - { // 16 bytes allocated to the channel name but only 10 used, the rest are 0's - EEPROM_ReadBuffer(0x0F50 + (Channel * 16), g_eeprom.vfo_info[VFO].name + 0, 8); - EEPROM_ReadBuffer(0x0F58 + (Channel * 16), g_eeprom.vfo_info[VFO].name + 8, 2); + if (Channel <= USER_CHANNEL_LAST) + { // only 10 bytes used + EEPROM_ReadBuffer(0x0F50 + (Channel * 16), g_eeprom.vfo_info[VFO].name, 10); } if (!g_eeprom.vfo_info[VFO].frequency_reverse) @@ -421,7 +432,7 @@ void RADIO_configure_channel(const unsigned int VFO, const unsigned int configur g_eeprom.vfo_info[VFO].freq_config_tx.code_type = CODE_TYPE_NONE; } - RADIO_ConfigureSquelchAndOutputPower(pRadio); + RADIO_ConfigureSquelchAndOutputPower(&g_eeprom.vfo_info[VFO]); } void RADIO_ConfigureSquelchAndOutputPower(vfo_info_t *pInfo) diff --git a/radio.h b/radio.h index b2181c3..7e4cd18 100644 --- a/radio.h +++ b/radio.h @@ -113,6 +113,8 @@ typedef struct vfo_info_t uint8_t compand; + uint8_t frequency_channel; // channel number if a channel is set to this vfo's frequency + char name[16]; } vfo_info_t; diff --git a/settings.c b/settings.c index 6ca8c53..2d40019 100644 --- a/settings.c +++ b/settings.c @@ -27,7 +27,7 @@ eeprom_config_t g_eeprom; #ifdef ENABLE_FMRADIO - void SETTINGS_SaveFM(void) + void SETTINGS_save_fm(void) { unsigned int i; @@ -51,7 +51,7 @@ eeprom_config_t g_eeprom; } #endif -void SETTINGS_SaveVfoIndices(void) +void SETTINGS_save_vfo_indices(void) { uint8_t State[8]; @@ -188,10 +188,10 @@ void SETTINGS_restore_calibration(void) // ************************************************* -void SETTINGS_SaveSettings(void) +void SETTINGS_save(void) { uint8_t State[8]; - + State[0] = g_eeprom.chan_1_call; State[1] = g_eeprom.squelch_level; State[2] = g_eeprom.tx_timeout_timer; @@ -336,118 +336,107 @@ void SETTINGS_SaveSettings(void) #endif State[7] = (State[7] & ~(3u << 6)) | ((g_setting_backlight_on_tx_rx & 3u) << 6); EEPROM_WriteBuffer(0x0F40, State); - + memset(State, 0xFF, sizeof(State)); State[0] = g_eeprom.scan_hold_time_500ms; EEPROM_WriteBuffer(0x0F48, State); } -void SETTINGS_SaveChannel(uint8_t Channel, uint8_t VFO, const vfo_info_t *pVFO, uint8_t Mode) +void SETTINGS_save_channel(const uint8_t channel, const uint8_t vfo, const vfo_info_t *p_vfo, const uint8_t mode) { - const uint16_t OffsetMR = Channel * 16; - uint16_t OffsetVFO = OffsetMR; - uint8_t State[8]; + const uint16_t offset_mem = channel * 16; + uint16_t offset_vfo = offset_mem; + uint8_t state[16]; +// t_channel channel_data; - if (IS_NOAA_CHANNEL(Channel)) + if (p_vfo == NULL || IS_NOAA_CHANNEL(channel)) return; - if (IS_FREQ_CHANNEL(Channel)) + if (IS_FREQ_CHANNEL(channel)) { // it's a VFO - OffsetVFO = (VFO == 0) ? 0x0C80 : 0x0C90; - OffsetVFO += (Channel - FREQ_CHANNEL_FIRST) * 32; + offset_vfo = (vfo == 0) ? 0x0C80 : 0x0C90; + offset_vfo += (channel - FREQ_CHANNEL_FIRST) * 16 * 2; } - if (Mode < 2 && Channel <= USER_CHANNEL_LAST) + if (mode < 2 && channel <= USER_CHANNEL_LAST) return; #if defined(ENABLE_UART) && defined(ENABLE_UART_DEBUG) -// UART_printf("sav_chan %u %u %u\r\n", Channel, VFO, Mode); +// UART_printf("sav_chan %u %u %u\r\n", channel, vfo, mode); #endif - ((uint32_t *)State)[0] = pVFO->freq_config_rx.frequency; - ((uint32_t *)State)[1] = pVFO->tx_offset_freq; - EEPROM_WriteBuffer(OffsetVFO + 0, State); + ((uint32_t *)state)[0] = p_vfo->freq_config_rx.frequency; + ((uint32_t *)state)[1] = p_vfo->tx_offset_freq; + EEPROM_WriteBuffer(offset_vfo, state); - State[0] = pVFO->freq_config_rx.code; - State[1] = pVFO->freq_config_tx.code; - State[2] = (pVFO->freq_config_tx.code_type << 4) | pVFO->freq_config_rx.code_type; - State[3] = ((pVFO->am_mode & 1u) << 4) | pVFO->tx_offset_freq_dir; - State[4] = - (pVFO->compand << 6) | - (pVFO->busy_channel_lock << 4) | - (pVFO->output_power << 2) | - (pVFO->channel_bandwidth << 1) | - (pVFO->frequency_reverse << 0); - State[5] = ((pVFO->dtmf_ptt_id_tx_mode & 7u) << 1) | ((pVFO->dtmf_decoding_enable & 1u) << 0); - State[6] = pVFO->step_setting; - State[7] = pVFO->scrambling_type; - EEPROM_WriteBuffer(OffsetVFO + 8, State); + state[0] = p_vfo->freq_config_rx.code; + state[1] = p_vfo->freq_config_tx.code; + state[2] = (p_vfo->freq_config_tx.code_type << 4) | p_vfo->freq_config_rx.code_type; + state[3] = ((p_vfo->am_mode & 1u) << 4) | p_vfo->tx_offset_freq_dir; + state[4] = + ((p_vfo->compand & 3u) << 6) | + ((p_vfo->busy_channel_lock & 3u) << 4) | + ((p_vfo->output_power & 1u) << 2) | + ((p_vfo->channel_bandwidth & 1u) << 1) | + ((p_vfo->frequency_reverse & 1u) << 0); + state[5] = ((p_vfo->dtmf_ptt_id_tx_mode & 7u) << 1) | ((p_vfo->dtmf_decoding_enable & 1u) << 0); + state[6] = p_vfo->step_setting; + state[7] = p_vfo->scrambling_type; + EEPROM_WriteBuffer(offset_vfo + 8, state); - SETTINGS_UpdateChannel(Channel, pVFO, true); + SETTINGS_save_chan_attribs_name(channel, p_vfo); - if (Channel > USER_CHANNEL_LAST) + if (channel > USER_CHANNEL_LAST) return; // it's not a user memory channel #ifndef ENABLE_KEEP_MEM_NAME - // clear/reset the channel name - memset(&State, 0, sizeof(State)); - EEPROM_WriteBuffer(0x0F50 + OffsetMR, State); - EEPROM_WriteBuffer(0x0F58 + OffsetMR, State); + { // clear/reset the channel name + memset(&state, 0, sizeof(state)); + EEPROM_WriteBuffer(0x0F50 + 0 + offset_mem, state + 0); + EEPROM_WriteBuffer(0x0F50 + 8 + offset_mem, state + 8); + } #else - if (Mode >= 3) + if (mode >= 3) { // save the channel name - memmove(State, pVFO->name + 0, 8); - EEPROM_WriteBuffer(0x0F50 + OffsetMR, State); - memset(State, 0, sizeof(State)); - memmove(State, pVFO->name + 8, 2); - EEPROM_WriteBuffer(0x0F58 + OffsetMR, State); + memset(state, 0, sizeof(state)); + memmove(state, p_vfo->name, 10); + + EEPROM_WriteBuffer(0x0F50 + 0 + offset_mem, state + 0); + EEPROM_WriteBuffer(0x0F50 + 8 + offset_mem, state + 8); } #endif } -void SETTINGS_UpdateChannel(uint8_t Channel, const vfo_info_t *pVFO, bool keep) +void SETTINGS_save_chan_attribs_name(const uint8_t channel, const vfo_info_t *p_vfo) { - uint8_t State[8]; - uint8_t Attributes = 0xFF; // default attributes - uint16_t Offset = 0x0D60 + (Channel & ~7u); - - if (IS_NOAA_CHANNEL(Channel)) + if (p_vfo == NULL || channel >= ARRAY_SIZE(g_user_channel_attributes)) return; - EEPROM_ReadBuffer(Offset, State, sizeof(State)); + if (IS_NOAA_CHANNEL(channel)) + return; - if (keep) - { - Attributes = (pVFO->scanlist_1_participation << 7) | (pVFO->scanlist_2_participation << 6) | (pVFO->band << 0); - if (State[Channel & 7u] == Attributes) - return; // no change in the attributes .. don't place wear on the eeprom + { // channel attributes + + const uint8_t attribs = + ((p_vfo->scanlist_1_participation & 1u) << 7) | + ((p_vfo->scanlist_2_participation & 1u) << 6) | + ((3u) << 4) | + ((p_vfo->band & 7u) << 0); + + const unsigned int index = channel & ~7u; // eeprom writes are always 8 bytes in length + g_user_channel_attributes[channel] = attribs; // remember new attributes + EEPROM_WriteBuffer(0x0D60 + index, g_user_channel_attributes + index); } + + if (channel <= USER_CHANNEL_LAST) + { // user memory channel + const unsigned int index = channel * 16; + uint8_t name[16]; - State[Channel & 7u] = Attributes; + memset(name, 0, sizeof(name)); + memmove(name, p_vfo->name, 10); - EEPROM_WriteBuffer(Offset, State); - - g_user_channel_attributes[Channel] = Attributes; - -// #ifndef ENABLE_KEEP_MEM_NAME - if (Channel <= USER_CHANNEL_LAST) - { // user memory channel - - const uint16_t OffsetMR = Channel * 16; - if (!keep) - { // clear/reset the channel name - memset(&State, 0, sizeof(State)); - EEPROM_WriteBuffer(0x0F50 + OffsetMR, State); - EEPROM_WriteBuffer(0x0F58 + OffsetMR, State); - } -// else -// { // update the channel name -// memmove(State, pVFO->name + 0, 8); -// EEPROM_WriteBuffer(0x0F50 + OffsetMR, State); -// memset(State, 0, sizeof(State)); -// memmove(State, pVFO->name + 8, 2); -// EEPROM_WriteBuffer(0x0F58 + OffsetMR, State); -// } - } -// #endif + EEPROM_WriteBuffer(0x0F50 + 0 + index, name + 0); + EEPROM_WriteBuffer(0x0F50 + 8 + index, name + 8); + } } diff --git a/settings.h b/settings.h index 3988e57..25b39f3 100644 --- a/settings.h +++ b/settings.h @@ -268,8 +268,8 @@ typedef struct { // 0x0D60 struct { // these channel attribute settings could have been in the t_channel structure ! - uint8_t band:4; // why do QS have these 4 bits ? .. band can/is computed from the frequency - uint8_t unused:2; // 0's + uint8_t band:4; // why do QS have these bits ? .. band can/is computed from the frequency + uint8_t unused:2; // uint8_t scanlist2:1; // set if is in scan list 2 uint8_t scanlist1:1; // set if is in scan list 1 } __attribute__((packed)) channel_attr[200]; // @@ -559,12 +559,12 @@ typedef struct { extern eeprom_config_t g_eeprom; #ifdef ENABLE_FMRADIO - void SETTINGS_SaveFM(void); + void SETTINGS_save_fm(void); #endif -void SETTINGS_SaveVfoIndices(void); +void SETTINGS_save_vfo_indices(void); //void SETTINGS_restore_calibration(void); -void SETTINGS_SaveSettings(void); -void SETTINGS_SaveChannel(uint8_t Channel, uint8_t VFO, const vfo_info_t *pVFO, uint8_t Mode); -void SETTINGS_UpdateChannel(uint8_t Channel, const vfo_info_t *pVFO, bool keep); +void SETTINGS_save(void); +void SETTINGS_save_channel(const uint8_t channel, const uint8_t vfo, const vfo_info_t *p_vfo, const uint8_t mode); +void SETTINGS_save_chan_attribs_name(const uint8_t channel, const vfo_info_t *p_vfo); #endif diff --git a/ui/main.c b/ui/main.c index d60b578..9e0c757 100644 --- a/ui/main.c +++ b/ui/main.c @@ -240,39 +240,39 @@ void UI_drawBars(uint8_t *p, const unsigned int level) { // const int16_t s0_dBm = -127; // S0 .. base level const int16_t s0_dBm = -147; // S0 .. base level - + const int16_t s9_dBm = s0_dBm + (6 * 9); // S9 .. 6dB/S-Point const int16_t bar_max_dBm = s9_dBm + 30; // S9+30dB // const int16_t bar_min_dBm = s0_dBm + (6 * 0); // S0 const int16_t bar_min_dBm = s0_dBm + (6 * 4); // S4 - + // ************ - + const unsigned int txt_width = 7 * 8; // 8 text chars const unsigned int bar_x = 2 + txt_width + 4; // X coord of bar graph const unsigned int bar_width = LCD_WIDTH - 1 - bar_x; - + const int16_t rssi_dBm = (rssi / 2) - 160; const int16_t clamped_dBm = (rssi_dBm <= bar_min_dBm) ? bar_min_dBm : (rssi_dBm >= bar_max_dBm) ? bar_max_dBm : rssi_dBm; const unsigned int bar_range_dB = bar_max_dBm - bar_min_dBm; const unsigned int len = ((clamped_dBm - bar_min_dBm) * bar_width) / bar_range_dB; - + const unsigned int line = 3; uint8_t *p_line = g_frame_buffer[line]; - + char s[16]; - + if (g_eeprom.key_lock && g_keypad_locked > 0) return false; // display is in use - + if (g_current_function == FUNCTION_TRANSMIT || g_screen_to_display != DISPLAY_MAIN || g_dtmf_call_state != DTMF_CALL_STATE_NONE) return false; // display is in use - + if (now) memset(p_line, 0, LCD_WIDTH); - + if (rssi_dBm >= (s9_dBm + 6)) { // S9+XXdB, 1dB increment const char *fmt[] = {"%3d 9+%u ", "%3d 9+%2u "}; @@ -285,12 +285,12 @@ void UI_drawBars(uint8_t *p, const unsigned int level) sprintf(s, "%4d S%u ", rssi_dBm, s_level); } UI_PrintStringSmall(s, 2, 0, line); - + draw_bar(p_line + bar_x, len, bar_width); - + if (now) ST7565_BlitFullScreen(); - + return true; } @@ -643,28 +643,13 @@ void UI_DisplayMain(void) if (g_eeprom.screen_channel[vfo_num] <= USER_CHANNEL_LAST) { // it's a channel - - // show the channel symbols - const uint8_t attributes = g_user_channel_attributes[g_eeprom.screen_channel[vfo_num]]; - if (attributes & USER_CH_SCANLIST1) - memmove(p_line0 + 113, BITMAP_SCANLIST1, sizeof(BITMAP_SCANLIST1)); - if (attributes & USER_CH_SCANLIST2) - memmove(p_line0 + 120, BITMAP_SCANLIST2, sizeof(BITMAP_SCANLIST2)); - #ifndef ENABLE_BIG_FREQ - if (g_eeprom.vfo_info[vfo_num].compand) - memmove(p_line0 + 120 + LCD_WIDTH, BITMAP_COMPAND, sizeof(BITMAP_COMPAND)); - #else - - // TODO: // find somewhere else to put the symbol - - #endif - #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wimplicit-fallthrough=" switch (g_eeprom.channel_display_mode) { - case MDF_FREQUENCY: // show the channel frequency + case MDF_FREQUENCY: // just channel frequency + #ifdef ENABLE_BIG_FREQ NUMBER_ToDigits(frequency, String); // show the main large frequency digits @@ -676,35 +661,41 @@ void UI_DisplayMain(void) sprintf(String, "%03u.%05u", frequency / 100000, frequency % 100000); UI_PrintString(String, 32, 0, line, 8); #endif + break; - case MDF_CHANNEL: // show the channel number + case MDF_CHANNEL: // just channel number + sprintf(String, "CH-%03u", g_eeprom.screen_channel[vfo_num] + 1); UI_PrintString(String, 32, 0, line, 8); + break; - case MDF_NAME: // show the channel name - case MDF_NAME_FREQ: // show the channel name and frequency + case MDF_NAME: // channel name + case MDF_NAME_FREQ: // channel name and frequency BOARD_fetchChannelName(String, g_eeprom.screen_channel[vfo_num]); + if (String[0] == 0) - { // no channel name, show the channel number instead + { // no channel name available, channel number instead sprintf(String, "CH-%03u", g_eeprom.screen_channel[vfo_num] + 1); } if (g_eeprom.channel_display_mode == MDF_NAME) - { + { // just the name UI_PrintString(String, 32, 0, line, 8); } else - { + { // name & frequency + + // name #ifdef ENABLE_SMALL_BOLD UI_PrintStringSmallBold(String, 32 + 4, 0, line); #else UI_PrintStringSmall(String, 32 + 4, 0, line); #endif - // show the channel frequency below the channel number/name + // frequency sprintf(String, "%03u.%05u", frequency / 100000, frequency % 100000); UI_PrintStringSmall(String, 32 + 4, 0, line + 1); } @@ -715,6 +706,7 @@ void UI_DisplayMain(void) #pragma GCC diagnostic pop } else +// if (IS_FREQ_CHANNEL(g_eeprom.screen_channel[vfo_num])) { // frequency mode #ifdef ENABLE_BIG_FREQ NUMBER_ToDigits(frequency, String); // 8 digits @@ -727,16 +719,48 @@ void UI_DisplayMain(void) sprintf(String, "%03u.%05u", frequency / 100000, frequency % 100000); UI_PrintString(String, 32, 0, line, 8); #endif - - // show the channel symbols - //const uint8_t attributes = g_user_channel_attributes[g_eeprom.screen_channel[vfo_num]]; - if (g_eeprom.vfo_info[vfo_num].compand) - #ifdef ENABLE_BIG_FREQ - memmove(p_line0 + 120, BITMAP_COMPAND, sizeof(BITMAP_COMPAND)); - #else - memmove(p_line0 + 120 + LCD_WIDTH, BITMAP_COMPAND, sizeof(BITMAP_COMPAND)); - #endif } + + // show channel symbols + + //if (g_eeprom.screen_channel[vfo_num] <= USER_CHANNEL_LAST) + if (IS_NOT_NOAA_CHANNEL(g_eeprom.screen_channel[vfo_num])) + { // it's a user channel or VFO + + unsigned int x = LCD_WIDTH - 1 - sizeof(BITMAP_SCANLIST2) - sizeof(BITMAP_SCANLIST1); + + const uint8_t attributes = g_user_channel_attributes[g_eeprom.screen_channel[vfo_num]]; + + if (attributes & USER_CH_SCANLIST1) + memmove(p_line0 + x, BITMAP_SCANLIST1, sizeof(BITMAP_SCANLIST1)); + x += sizeof(BITMAP_SCANLIST1); + + if (attributes & USER_CH_SCANLIST2) + memmove(p_line0 + x, BITMAP_SCANLIST2, sizeof(BITMAP_SCANLIST2)); + //x += sizeof(BITMAP_SCANLIST2); + } + + #ifdef ENABLE_BIG_FREQ + + // no room for these symbols + + #else + { + unsigned int x = LCD_WIDTH + LCD_WIDTH - 1 - sizeof(BITMAP_FREQ_CHAN) - sizeof(BITMAP_COMPAND); + + if (g_eeprom.vfo_info[vfo_num].compand) + memmove(p_line0 + x, BITMAP_COMPAND, sizeof(BITMAP_COMPAND)); + x += sizeof(BITMAP_COMPAND); + + if (IS_FREQ_CHANNEL(g_eeprom.screen_channel[vfo_num])) + { + //g_eeprom.vfo_info[vfo_num].frequency_channel = BOARD_find_channel(frequency); + if (g_eeprom.vfo_info[vfo_num].frequency_channel <= USER_CHANNEL_LAST) + memmove(p_line0 + x, BITMAP_FREQ_CHAN, sizeof(BITMAP_FREQ_CHAN)); + //x += sizeof(BITMAP_FREQ_CHAN); + } + } + #endif } // ************