Menu wording updates

This commit is contained in:
OneOfEleven
2023-09-12 21:08:51 +01:00
parent b93aa24c40
commit 21d5d1ee15
5 changed files with 77 additions and 76 deletions

BIN
firmware
View File

Binary file not shown.

View File

Binary file not shown.

View File

Binary file not shown.

68
radio.c
View File

@@ -113,14 +113,15 @@ uint8_t RADIO_FindNextChannel(uint8_t Channel, int8_t Direction, bool bCheckScan
void RADIO_InitInfo(VFO_Info_t *pInfo, uint8_t ChannelSave, uint8_t Band, uint32_t Frequency) void RADIO_InitInfo(VFO_Info_t *pInfo, uint8_t ChannelSave, uint8_t Band, uint32_t Frequency)
{ {
memset(pInfo, 0, sizeof(*pInfo)); memset(pInfo, 0, sizeof(*pInfo));
pInfo->Band = Band; pInfo->Band = Band;
pInfo->SCANLIST1_PARTICIPATION = true; pInfo->SCANLIST1_PARTICIPATION = true;
pInfo->SCANLIST2_PARTICIPATION = true; pInfo->SCANLIST2_PARTICIPATION = true;
pInfo->STEP_SETTING = STEP_12_5kHz; // STEP_25_0kHz; pInfo->STEP_SETTING = STEP_12_5kHz;
pInfo->StepFrequency = 2500; pInfo->StepFrequency = 2500;
pInfo->CHANNEL_SAVE = ChannelSave; pInfo->CHANNEL_SAVE = ChannelSave;
pInfo->FrequencyReverse = false; pInfo->FrequencyReverse = false;
pInfo->OUTPUT_POWER = OUTPUT_POWER_HIGH; pInfo->OUTPUT_POWER = OUTPUT_POWER_LOW;
pInfo->ConfigRX.Frequency = Frequency; pInfo->ConfigRX.Frequency = Frequency;
pInfo->ConfigTX.Frequency = Frequency; pInfo->ConfigTX.Frequency = Frequency;
pInfo->pRX = &pInfo->ConfigRX; pInfo->pRX = &pInfo->ConfigRX;
@@ -157,16 +158,16 @@ void RADIO_ConfigureChannel(uint8_t VFO, uint32_t Arg)
if (Channel >= NOAA_CHANNEL_FIRST) if (Channel >= NOAA_CHANNEL_FIRST)
{ {
RADIO_InitInfo(pRadio, gEeprom.ScreenChannel[VFO], 2, NoaaFrequencyTable[Channel - NOAA_CHANNEL_FIRST]); RADIO_InitInfo(pRadio, gEeprom.ScreenChannel[VFO], 2, NoaaFrequencyTable[Channel - NOAA_CHANNEL_FIRST]);
if (gEeprom.CROSS_BAND_RX_TX == CROSS_BAND_OFF) if (gEeprom.CROSS_BAND_RX_TX == CROSS_BAND_OFF)
return; return;
gUpdateStatus = true; gUpdateStatus = true;
gEeprom.CROSS_BAND_RX_TX = CROSS_BAND_OFF; gEeprom.CROSS_BAND_RX_TX = CROSS_BAND_OFF;
return; return;
} }
#endif #endif
if (IS_MR_CHANNEL(Channel)) if (IS_MR_CHANNEL(Channel))
{ {
Channel = RADIO_FindNextChannel(Channel, RADIO_CHANNEL_UP, false, VFO); Channel = RADIO_FindNextChannel(Channel, RADIO_CHANNEL_UP, false, VFO);
@@ -192,7 +193,7 @@ void RADIO_ConfigureChannel(uint8_t VFO, uint32_t Arg)
if (IS_MR_CHANNEL(Channel)) if (IS_MR_CHANNEL(Channel))
{ {
Channel = gEeprom.FreqChannel[VFO]; Channel = gEeprom.FreqChannel[VFO];
gEeprom.ScreenChannel[VFO] = gEeprom.FreqChannel[VFO]; gEeprom.ScreenChannel[VFO] = gEeprom.FreqChannel[VFO];
} }
@@ -280,6 +281,12 @@ void RADIO_ConfigureChannel(uint8_t VFO, uint32_t Arg)
Tmp = Data[1]; Tmp = Data[1];
switch (gEeprom.VfoInfo[VFO].ConfigTX.CodeType) switch (gEeprom.VfoInfo[VFO].ConfigTX.CodeType)
{ {
default:
case CODE_TYPE_OFF:
gEeprom.VfoInfo[VFO].ConfigTX.CodeType = CODE_TYPE_OFF;
Tmp = 0;
break;
case CODE_TYPE_CONTINUOUS_TONE: case CODE_TYPE_CONTINUOUS_TONE:
if (Tmp >= 50) if (Tmp >= 50)
Tmp = 0; Tmp = 0;
@@ -290,11 +297,6 @@ void RADIO_ConfigureChannel(uint8_t VFO, uint32_t Arg)
if (Tmp >= 104) if (Tmp >= 104)
Tmp = 0; Tmp = 0;
break; break;
default:
gEeprom.VfoInfo[VFO].ConfigTX.CodeType = CODE_TYPE_OFF;
Tmp = 0;
break;
} }
gEeprom.VfoInfo[VFO].ConfigTX.Code = Tmp; gEeprom.VfoInfo[VFO].ConfigTX.Code = Tmp;
@@ -332,12 +334,9 @@ void RADIO_ConfigureChannel(uint8_t VFO, uint32_t Arg)
} __attribute__((packed)) Info; } __attribute__((packed)) Info;
EEPROM_ReadBuffer(Base, &Info, sizeof(Info)); EEPROM_ReadBuffer(Base, &Info, sizeof(Info));
pRadio->ConfigRX.Frequency = Info.Frequency; pRadio->ConfigRX.Frequency = Info.Frequency;
if (Info.Offset >= 100000000) if (Info.Offset >= 100000000)
Info.Offset = 1000000; Info.Offset = 1000000;
gEeprom.VfoInfo[VFO].FREQUENCY_OF_DEVIATION = Info.Offset; gEeprom.VfoInfo[VFO].FREQUENCY_OF_DEVIATION = Info.Offset;
} }
@@ -363,7 +362,6 @@ void RADIO_ConfigureChannel(uint8_t VFO, uint32_t Arg)
RADIO_ApplyOffset(pRadio); RADIO_ApplyOffset(pRadio);
memset(gEeprom.VfoInfo[VFO].Name, 0, sizeof(gEeprom.VfoInfo[VFO].Name)); memset(gEeprom.VfoInfo[VFO].Name, 0, sizeof(gEeprom.VfoInfo[VFO].Name));
if (IS_MR_CHANNEL(Channel)) if (IS_MR_CHANNEL(Channel))
{ // 16 bytes allocated to the channel name but only 12 used { // 16 bytes allocated to the channel name but only 12 used
EEPROM_ReadBuffer(0x0F50 + (Channel * 16), gEeprom.VfoInfo[VFO].Name + 0, 8); EEPROM_ReadBuffer(0x0F50 + (Channel * 16), gEeprom.VfoInfo[VFO].Name + 0, 8);
@@ -384,12 +382,12 @@ void RADIO_ConfigureChannel(uint8_t VFO, uint32_t Arg)
if (!gSetting_350EN) if (!gSetting_350EN)
{ {
FREQ_Config_t *pConfig = gEeprom.VfoInfo[VFO].pRX; FREQ_Config_t *pConfig = gEeprom.VfoInfo[VFO].pRX;
if (pConfig->Frequency < (35000000 + 4999991)) if (pConfig->Frequency >= 35000000 && pConfig->Frequency < 40000000)
pConfig->Frequency = 41001250; pConfig->Frequency = 43300000;
} }
// if (gEeprom.VfoInfo[VFO].Band == BAND2_108MHz && gEeprom.VfoInfo[VFO].AM_CHANNEL_MODE) // if (gEeprom.VfoInfo[VFO].Band == BAND2_108MHz && gEeprom.VfoInfo[VFO].AM_CHANNEL_MODE)
if (gEeprom.VfoInfo[VFO].AM_CHANNEL_MODE) // allow AM on any frequency/band if (gEeprom.VfoInfo[VFO].AM_CHANNEL_MODE) // allow AM on any frequency
{ {
gEeprom.VfoInfo[VFO].IsAM = true; gEeprom.VfoInfo[VFO].IsAM = true;
gEeprom.VfoInfo[VFO].SCRAMBLING_TYPE = 0; gEeprom.VfoInfo[VFO].SCRAMBLING_TYPE = 0;
@@ -428,11 +426,11 @@ void RADIO_ConfigureSquelchAndOutputPower(VFO_Info_t *pInfo)
EEPROM_ReadBuffer(Base + 0x40, &pInfo->SquelchCloseGlitchThresh, 1); EEPROM_ReadBuffer(Base + 0x40, &pInfo->SquelchCloseGlitchThresh, 1);
EEPROM_ReadBuffer(Base + 0x50, &pInfo->SquelchOpenGlitchThresh, 1); EEPROM_ReadBuffer(Base + 0x50, &pInfo->SquelchOpenGlitchThresh, 1);
if (pInfo->SquelchOpenNoiseThresh >= 0x80) if (pInfo->SquelchOpenNoiseThresh > 127)
pInfo->SquelchOpenNoiseThresh = 0x7F; pInfo->SquelchOpenNoiseThresh = 127;
if (pInfo->SquelchCloseNoiseThresh >= 0x80) if (pInfo->SquelchCloseNoiseThresh > 127)
pInfo->SquelchCloseNoiseThresh = 0x7F; pInfo->SquelchCloseNoiseThresh = 127;
} }
Band = FREQUENCY_GetBand(pInfo->pTX->Frequency); Band = FREQUENCY_GetBand(pInfo->pTX->Frequency);
@@ -594,7 +592,7 @@ void RADIO_SetupRegisters(bool bSwitchToFunction0)
| BK4819_REG_3F_SQUELCH_FOUND | BK4819_REG_3F_SQUELCH_FOUND
| BK4819_REG_3F_SQUELCH_LOST; | BK4819_REG_3F_SQUELCH_LOST;
break; break;
case CODE_TYPE_DIGITAL: case CODE_TYPE_DIGITAL:
case CODE_TYPE_REVERSE_DIGITAL: case CODE_TYPE_REVERSE_DIGITAL:
BK4819_SetCDCSSCodeWord(DCS_GetGolayCodeWord(CodeType, Code)); BK4819_SetCDCSSCodeWord(DCS_GetGolayCodeWord(CodeType, Code));
@@ -635,7 +633,7 @@ void RADIO_SetupRegisters(bool bSwitchToFunction0)
| BK4819_REG_3F_SQUELCH_LOST; | BK4819_REG_3F_SQUELCH_LOST;
} }
#endif #endif
#ifndef DISABLE_NOAA #ifndef DISABLE_NOAA
if (gEeprom.VOX_SWITCH && !gFmRadioMode && IS_NOT_NOAA_CHANNEL(gCurrentVfo->CHANNEL_SAVE) && !gCurrentVfo->IsAM) if (gEeprom.VOX_SWITCH && !gFmRadioMode && IS_NOT_NOAA_CHANNEL(gCurrentVfo->CHANNEL_SAVE) && !gCurrentVfo->IsAM)
#else #else
@@ -671,9 +669,9 @@ void RADIO_SetupRegisters(bool bSwitchToFunction0)
void RADIO_ConfigureNOAA(void) void RADIO_ConfigureNOAA(void)
{ {
uint8_t ChanAB; uint8_t ChanAB;
gUpdateStatus = true; gUpdateStatus = true;
if (gEeprom.NOAA_AUTO_SCAN) if (gEeprom.NOAA_AUTO_SCAN)
{ {
if (gEeprom.DUAL_WATCH != DUAL_WATCH_OFF) if (gEeprom.DUAL_WATCH != DUAL_WATCH_OFF)
@@ -689,14 +687,14 @@ void RADIO_SetupRegisters(bool bSwitchToFunction0)
} }
else else
ChanAB = 0; ChanAB = 0;
if (!gIsNoaaMode) if (!gIsNoaaMode)
gNoaaChannel = gEeprom.VfoInfo[ChanAB].CHANNEL_SAVE - NOAA_CHANNEL_FIRST; gNoaaChannel = gEeprom.VfoInfo[ChanAB].CHANNEL_SAVE - NOAA_CHANNEL_FIRST;
gIsNoaaMode = true; gIsNoaaMode = true;
return; return;
} }
if (gRxVfo->CHANNEL_SAVE >= NOAA_CHANNEL_FIRST) if (gRxVfo->CHANNEL_SAVE >= NOAA_CHANNEL_FIRST)
{ {
gIsNoaaMode = true; gIsNoaaMode = true;
@@ -835,20 +833,20 @@ void RADIO_PrepareTX(void)
} }
else else
State = VFO_STATE_TX_DISABLE; State = VFO_STATE_TX_DISABLE;
RADIO_SetVfoState(State); RADIO_SetVfoState(State);
#ifndef DISABLE_ALARM #ifndef DISABLE_ALARM
gAlarmState = ALARM_STATE_OFF; gAlarmState = ALARM_STATE_OFF;
#endif #endif
AUDIO_PlayBeep(BEEP_500HZ_60MS_DOUBLE_BEEP_OPTIONAL); AUDIO_PlayBeep(BEEP_500HZ_60MS_DOUBLE_BEEP_OPTIONAL);
gDTMF_ReplyState = DTMF_REPLY_NONE; gDTMF_ReplyState = DTMF_REPLY_NONE;
return; return;
} }
Skip: Skip:
if (gDTMF_ReplyState == DTMF_REPLY_ANI) if (gDTMF_ReplyState == DTMF_REPLY_ANI)
{ {
@@ -872,7 +870,7 @@ Skip:
#else #else
gTxTimerCountdown = gEeprom.TX_TIMEOUT_TIMER * 120; gTxTimerCountdown = gEeprom.TX_TIMEOUT_TIMER * 120;
#endif #endif
gTxTimeoutReached = false; gTxTimeoutReached = false;
gFlagEndTransmission = false; gFlagEndTransmission = false;
gRTTECountdown = 0; gRTTECountdown = 0;
@@ -885,12 +883,12 @@ void RADIO_EnableCxCSS(void)
{ {
case CODE_TYPE_OFF: case CODE_TYPE_OFF:
break; break;
case CODE_TYPE_CONTINUOUS_TONE: case CODE_TYPE_CONTINUOUS_TONE:
BK4819_EnableCTCSS(); BK4819_EnableCTCSS();
SYSTEM_DelayMs(200); SYSTEM_DelayMs(200);
break; break;
case CODE_TYPE_DIGITAL: case CODE_TYPE_DIGITAL:
case CODE_TYPE_REVERSE_DIGITAL: case CODE_TYPE_REVERSE_DIGITAL:
BK4819_EnableCDCSS(); BK4819_EnableCDCSS();

View File

@@ -33,68 +33,68 @@
static const char MenuList[][7] = static const char MenuList[][7] =
{ {
"SQL", "SQL",
"STEP", "Step",
"TX-PWR", // was "TXP" "Tx-Pwr", // was "TXP"
"R-DCS", // was "R_DCS" "RxDCS", // was "R_DCS"
"R-CTCS", // was "R_CTCS" "RxCTCS", // was "R_CTCS"
"T-DCS", // was "T_DCS" "TxDCS", // was "T_DCS"
"T-CTCS", // was "T_CTCS" "TxCTCS", // was "T_CTCS"
"SFT-D", "SFTDir",
"OFFSET", "Offset",
"W/N", "W/N",
"SCRAM", // was "SCR" "Scram", // was "SCR"
"BCL", "BusyCL", // was "BCL"
"MEM-CH", "MemSav", // was "MEM-CH"
"B-SAVE", // was "SAVE" "BatSav", // was "SAVE"
"VOX", "VOX",
"BAK-LT", // was "ABR" "BackLt", // was "ABR"
"DUAL-W", // was "TDR" "Dual-W", // was "TDR"
"CROS-B", // was "WX" "CrossB", // was "WX"
"BEEP", "Beep",
"TOT", "TxTOut", // was "TOT"
#ifndef DISABLE_VOICE #ifndef DISABLE_VOICE
"VOICE", "Voice",
#endif #endif
"SC-REV", "SC-Rev",
"MDF", "MDF",
"AUTOLK", "KeyLoc", // was "AUTOLk"
"S-ADD1", "S-Add1",
"S-ADD2", "S-Add2",
"STE", "STE",
"RP-STE", "RP-STE",
"MIC", "Mic",
"1-CALL", "1-Call",
"S-LIST", "S-List",
"SLIST1", "SList1",
"SLIST2", "SList2",
#ifndef DISABLE_ALARM #ifndef DISABLE_ALARM
"AL-MOD", "AL-Mod",
#endif #endif
"ANI-ID", "ANI-ID",
"UPCODE", "UpCode",
"DWCODE", "DwCode",
"D-ST", "D-ST",
"D-RSP", "D-RSP",
"D-HOLD", "D-Hold",
"D-PRE", "D-Pre",
"PTT-ID", "PTT-ID",
"D-DCD", "D-DCD",
"D-LIST", "D-List",
"PONMSG", "PonMsg",
"ROGER", "Roger",
"BATVOL", // was "VOL" "BatVol", // was "VOL"
"MODE", // was "AM" "Mode", // was "AM"
#ifndef DISABLE_NOAA #ifndef DISABLE_NOAA
"NOAA_S", "NOAA_S",
#endif #endif
"DEL-CH", "MemDel", // was "Del-CH"
"RESET", "Reset",
// normally hidden menu items from here on. // normally hidden menu items from here on.
// enabled if pressing PTT and side button below PTT at power-on. // enabled if pressing PTT and side button below PTT at power-on.
"350-TX", // was "350TX" "350-TX", // was "350TX"
"F-LOCK", "F-Lock",
"200-TX", // was "200TX" "200-TX", // was "200TX"
"500-TX", // was "500TX" "500-TX", // was "500TX"
"350-EN", // was "350EN" "350-EN", // was "350EN"
@@ -405,9 +405,12 @@ void UI_DisplayMenu(void)
strcpy(String, (gSubMenuSelection == 0) ? "FM" : "AM"); strcpy(String, (gSubMenuSelection == 0) ? "FM" : "AM");
break; break;
case MENU_AUTOLK:
strcpy(String, (gSubMenuSelection == 0) ? "OFF" : "AUTO");
break;
case MENU_BCL: case MENU_BCL:
case MENU_BEEP: case MENU_BEEP:
case MENU_AUTOLK:
case MENU_S_ADD1: case MENU_S_ADD1:
case MENU_S_ADD2: case MENU_S_ADD2:
case MENU_STE: case MENU_STE: