Merge branch 'main' into New_Model_DP_666
# Conflicts: # TEF6686_ESP32.ino
This commit is contained in:
+3
-3
@@ -198,11 +198,11 @@ void TEF6686::setAMOffset(int8_t offset) {
|
||||
}
|
||||
|
||||
void TEF6686::setFMBandw(uint16_t bandwidth) {
|
||||
devTEF_Radio_Set_Bandwidth(0, bandwidth * 10, 1000, 1000);
|
||||
devTEF_Radio_Set_Bandwidth(0, bandwidth * 10);
|
||||
}
|
||||
|
||||
void TEF6686::setAMBandw(uint16_t bandwidth) {
|
||||
devTEF_Radio_Set_BandwidthAM(0, bandwidth * 10, 1000, 1000);
|
||||
devTEF_Radio_Set_BandwidthAM(0, bandwidth * 10);
|
||||
}
|
||||
|
||||
void TEF6686::setAMCoChannel(uint16_t start, uint8_t level) {
|
||||
@@ -226,7 +226,7 @@ void TEF6686::setAMAttenuation(uint16_t start) {
|
||||
}
|
||||
|
||||
void TEF6686::setFMABandw() {
|
||||
devTEF_Radio_Set_Bandwidth(1, 3110, 1000, 1000);
|
||||
devTEF_Radio_Set_Bandwidth(1, 3110);
|
||||
}
|
||||
|
||||
void TEF6686::setiMS(bool mph) {
|
||||
|
||||
@@ -43,12 +43,12 @@ void devTEF_Radio_Tune_AM (uint16_t frequency) {
|
||||
devTEF_Set_Cmd(TEF_AM, Cmd_Tune_To, 7, 1, frequency);
|
||||
}
|
||||
|
||||
void devTEF_Radio_Set_Bandwidth(uint8_t mode, uint16_t bandwidth, uint16_t control_sensitivity, uint16_t low_level_sensitivity) {
|
||||
devTEF_Set_Cmd(TEF_FM, Cmd_Set_Bandwidth, 11, mode, bandwidth, control_sensitivity, low_level_sensitivity);
|
||||
void devTEF_Radio_Set_Bandwidth(uint8_t mode, uint16_t bandwidth) {
|
||||
devTEF_Set_Cmd(TEF_FM, Cmd_Set_Bandwidth, 7, mode, bandwidth);
|
||||
}
|
||||
|
||||
void devTEF_Radio_Set_BandwidthAM(uint8_t mode, uint16_t bandwidth, uint16_t control_sensitivity, uint16_t low_level_sensitivity) {
|
||||
devTEF_Set_Cmd(TEF_AM, Cmd_Set_Bandwidth, 7, mode, bandwidth, control_sensitivity, low_level_sensitivity);
|
||||
void devTEF_Radio_Set_BandwidthAM(uint8_t mode, uint16_t bandwidth) {
|
||||
devTEF_Set_Cmd(TEF_AM, Cmd_Set_Bandwidth, 7, mode, bandwidth);
|
||||
}
|
||||
|
||||
void devTEF_Radio_Set_Noiseblanker_AM(uint8_t mode, uint16_t start) {
|
||||
|
||||
@@ -70,8 +70,8 @@ void devTEF_Radio_Tune_AM (uint16_t frequency );
|
||||
void devTEF_Audio_Set_Mute(uint8_t mode);
|
||||
void devTEF_Audio_Set_Volume(int16_t volume);
|
||||
void devTEF_APPL_Set_OperationMode(bool mode);
|
||||
void devTEF_Radio_Set_Bandwidth(uint8_t mode, uint16_t bandwidth, uint16_t control_sensitivity, uint16_t low_level_sensitivity);
|
||||
void devTEF_Radio_Set_BandwidthAM(uint8_t mode, uint16_t bandwidth, uint16_t control_sensitivity, uint16_t low_level_sensitivity);
|
||||
void devTEF_Radio_Set_Bandwidth(uint8_t mode, uint16_t bandwidth);
|
||||
void devTEF_Radio_Set_BandwidthAM(uint8_t mode, uint16_t bandwidth);
|
||||
void devTEF_Radio_Set_Noiseblanker_AM(uint8_t mode, uint16_t start);
|
||||
void devTEF_Radio_Set_Attenuator_AM(uint16_t start);
|
||||
void devTEF_Radio_Set_CoChannel_AM(uint8_t mode, uint16_t start, uint8_t level);
|
||||
|
||||
+11
-5
@@ -209,9 +209,9 @@
|
||||
#define EE_CHECKBYTE_VALUE 10 // 0 ~ 255,add new entry, change for new value
|
||||
#define EE_PRESETS_FREQUENCY 0 // Default value when memory channel should be skipped!
|
||||
#ifdef HAS_AIR_BAND
|
||||
#define EE_TOTAL_CNT 2222 // Total occupied eeprom bytes
|
||||
#define EE_TOTAL_CNT 2235 // Total occupied eeprom bytes
|
||||
#else
|
||||
#define EE_TOTAL_CNT 2217 // Total occupied eeprom bytes
|
||||
#define EE_TOTAL_CNT 2229 // Total occupied eeprom bytes
|
||||
#endif
|
||||
|
||||
#define EE_PRESETS_BAND_START 0 // 99 * 1 byte
|
||||
@@ -312,10 +312,16 @@
|
||||
#define EE_BYTE_SCANMUTE 2213
|
||||
#define EE_BYTE_AUTOSQUELCH 2214
|
||||
#define EE_BYTE_LONGBANDPRESS 2215
|
||||
#define EE_BYTE_SHOWCLOCK 2216
|
||||
#define EE_BYTE_SHOWCLOCK 2216
|
||||
#define EE_BYTE_SHOWLONGPS 2217
|
||||
#define EE_UINT16_MEMSTARTFREQ 2218
|
||||
#define EE_UINT16_MEMSTOPFREQ 2222
|
||||
#define EE_BYTE_MEMSTARTPOS 2226
|
||||
#define EE_BYTE_MEMSTOPPOS 2227
|
||||
#define EE_BYTE_MEMPIONLY 2228
|
||||
#ifdef HAS_AIR_BAND
|
||||
#define EE_BYTE_AIRSTEPSIZE 2117
|
||||
#define EE_UINT16_FREQUENCY_AIR 2218
|
||||
#define EE_BYTE_AIRSTEPSIZE 2229
|
||||
#define EE_UINT16_FREQUENCY_AIR 2230
|
||||
#endif
|
||||
// End of EEPROM index defines
|
||||
|
||||
|
||||
+258
-35
@@ -8,7 +8,7 @@
|
||||
#include <cstring>
|
||||
|
||||
byte menuitem;
|
||||
byte items[9] = {9, static_cast<byte>(dynamicspi ? 10 : 9), 7, 10, 10, 10, 9, 6, 7};
|
||||
byte items[10] = {10, static_cast<byte>(dynamicspi ? 10 : 9), 7, 10, 10, 10, 9, 6, 7, 6};
|
||||
extern mem presets[];
|
||||
bool setWiFiConnectParam = false;
|
||||
|
||||
@@ -596,6 +596,12 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][212]), 6, 2);
|
||||
break;
|
||||
|
||||
case AUTOMEM:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][269]), 6, 2);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -693,6 +699,18 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString(String(scanstart + 1, DEC), 298, 2);
|
||||
break;
|
||||
|
||||
case AUTOMEM:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][264]), 6, 2);
|
||||
|
||||
FullLineSprite.setTextDatum(TR_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString("MHz", 298, 2);
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString(String(memstartfreq / 10 + ConverterSet, DEC) + "." + String(memstartfreq % 10 + ConverterSet, DEC), 258, 2);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -789,6 +807,18 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString(String(scanstop + 1, DEC), 298, 2);
|
||||
break;
|
||||
|
||||
case AUTOMEM:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][265]), 6, 2);
|
||||
|
||||
FullLineSprite.setTextDatum(TR_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString("MHz", 298, 2);
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString(String(memstopfreq / 10 + ConverterSet, DEC) + "." + String(memstopfreq % 10 + ConverterSet, DEC), 258, 2);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -887,6 +917,16 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString((scanhold == 0 ? "0.5" : String(scanhold, DEC)), 258, 2);
|
||||
break;
|
||||
|
||||
case AUTOMEM:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][266]), 6, 2);
|
||||
|
||||
FullLineSprite.setTextDatum(TR_DATUM);
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString(String(memstartpos + 1, DEC), 298, 2);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -975,7 +1015,7 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
case CONNECTIVITY:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][197]), 6, 2);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][271]), 6, 2);
|
||||
|
||||
FullLineSprite.setTextDatum(TR_DATUM);
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
@@ -991,6 +1031,16 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString((scanmem ? myLanguage[language][218] : myLanguage[language][217]), 298, 2);
|
||||
break;
|
||||
|
||||
case AUTOMEM:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][267]), 6, 2);
|
||||
|
||||
FullLineSprite.setTextDatum(TR_DATUM);
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString(String(memstoppos + 1, DEC), 298, 2);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -1099,6 +1149,16 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
case SIGNAL: FullLineSprite.drawString(myLanguage[language][221], 298, 2); break;
|
||||
}
|
||||
break;
|
||||
|
||||
case AUTOMEM:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][268]), 6, 2);
|
||||
|
||||
FullLineSprite.setTextDatum(TR_DATUM);
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString((mempionly ? myLanguage[language][42] : myLanguage[language][30]), 298, 2);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -1246,11 +1306,11 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
case DISPLAYSETTINGS:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][78]), 6, 2);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][262]), 6, 2);
|
||||
|
||||
FullLineSprite.setTextDatum(TR_DATUM);
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString(Skin[CurrentSkin], 298, 2);
|
||||
FullLineSprite.drawString((showclock ? myLanguage[language][42] : myLanguage[language][30]), 298, 2);
|
||||
break;
|
||||
|
||||
case RDSSETTINGS:
|
||||
@@ -1298,7 +1358,7 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
case INDEX:
|
||||
FullLineSprite.setTextDatum(TC_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][70]), 152, 2);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][270]), 152, 2);
|
||||
break;
|
||||
|
||||
case MAINSETTINGS:
|
||||
@@ -1364,8 +1424,8 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
switch (menupage) {
|
||||
case INDEX:
|
||||
FullLineSprite.setTextDatum(TC_DATUM);
|
||||
FullLineSprite.setTextColor(SecondaryColor, SecondaryColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(String(myLanguage[language][84]) + " " + String(VERSION)), 152, 2);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][70]), 152, 2);
|
||||
break;
|
||||
|
||||
case MAINSETTINGS:
|
||||
@@ -1401,11 +1461,10 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
case RDSSETTINGS:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][262]), 6, 2);
|
||||
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][263]), 6, 2);
|
||||
FullLineSprite.setTextDatum(TR_DATUM);
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString((showclock ? myLanguage[language][42] : myLanguage[language][30]), 298, 2);
|
||||
FullLineSprite.drawString((showlongps ? myLanguage[language][42] : myLanguage[language][30]), 298, 2);
|
||||
break;
|
||||
|
||||
case FMSETTINGS:
|
||||
@@ -2093,15 +2152,9 @@ void MenuUp() {
|
||||
break;
|
||||
|
||||
case ITEM8:
|
||||
CurrentSkin ++;
|
||||
if (CurrentSkin > sizeof(Skin) / sizeof(Skin[0]) - 1) CurrentSkin = 0;
|
||||
BuildMenu();
|
||||
tft.drawRoundRect(10, 30, 300, 170, 5, ActiveColor);
|
||||
tft.fillRoundRect(12, 32, 296, 166, 5, BackgroundColor);
|
||||
OneBigLineSprite.fillSprite(BackgroundColor);
|
||||
showclock = !showclock;
|
||||
|
||||
Infoboxprint(myLanguage[language][78]);
|
||||
OneBigLineSprite.drawString(Skin[CurrentSkin], 135, 0);
|
||||
OneBigLineSprite.drawString((showclock ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
@@ -2214,9 +2267,9 @@ void MenuUp() {
|
||||
break;
|
||||
|
||||
case ITEM10:
|
||||
showclock = !showclock;
|
||||
showlongps = !showlongps;
|
||||
|
||||
OneBigLineSprite.drawString((showclock ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.drawString((showlongps ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
}
|
||||
@@ -2561,6 +2614,57 @@ void MenuUp() {
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case AUTOMEM:
|
||||
switch (menuoption) {
|
||||
case ITEM2:
|
||||
memstartfreq ++;
|
||||
if (memstartfreq > 1070) (TEF == 205 ? memstartfreq = 640 : memstartfreq = 650);
|
||||
|
||||
OneBigLineSprite.setTextDatum(TL_DATUM);
|
||||
OneBigLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
OneBigLineSprite.drawString("MHz", 155, 0);
|
||||
OneBigLineSprite.setTextDatum(TR_DATUM);
|
||||
OneBigLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
OneBigLineSprite.drawString(String(memstartfreq / 10 + ConverterSet, DEC) + "." + String(memstartfreq % 10 + ConverterSet, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM3:
|
||||
memstopfreq ++;
|
||||
if (memstopfreq > 1080) memstopfreq = 660;
|
||||
|
||||
OneBigLineSprite.setTextDatum(TL_DATUM);
|
||||
OneBigLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
OneBigLineSprite.drawString("MHz", 155, 0);
|
||||
OneBigLineSprite.setTextDatum(TR_DATUM);
|
||||
OneBigLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
OneBigLineSprite.drawString(String(memstopfreq / 10 + ConverterSet, DEC) + "." + String(memstopfreq % 10 + ConverterSet, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM4:
|
||||
memstartpos++;
|
||||
if (memstartpos >= memstoppos) memstartpos = 0;
|
||||
OneBigLineSprite.drawString(String(memstartpos + 1, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM5:
|
||||
memstoppos++;
|
||||
if (memstoppos > EE_PRESETS_CNT - 1) memstoppos = memstartpos + 1;
|
||||
OneBigLineSprite.drawString(String(memstoppos + 1, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM6:
|
||||
mempionly = !mempionly;
|
||||
|
||||
OneBigLineSprite.drawString((mempionly ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2959,15 +3063,9 @@ void MenuDown() {
|
||||
break;
|
||||
|
||||
case ITEM8:
|
||||
CurrentSkin --;
|
||||
if (CurrentSkin > sizeof(Skin) / sizeof(Skin[0]) - 1) CurrentSkin = sizeof(Skin) / sizeof(Skin[0]) - 1;
|
||||
BuildMenu();
|
||||
OneBigLineSprite.fillSprite(BackgroundColor);
|
||||
tft.drawRoundRect(10, 30, 300, 170, 5, ActiveColor);
|
||||
tft.fillRoundRect(12, 32, 296, 166, 5, BackgroundColor);
|
||||
showclock = !showclock;
|
||||
|
||||
Infoboxprint(myLanguage[language][78]);
|
||||
OneBigLineSprite.drawString(Skin[CurrentSkin], 135, 0);
|
||||
OneBigLineSprite.drawString((showclock ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
@@ -3081,9 +3179,9 @@ void MenuDown() {
|
||||
break;
|
||||
|
||||
case ITEM10:
|
||||
showclock = !showclock;
|
||||
showlongps = !showlongps;
|
||||
|
||||
OneBigLineSprite.drawString((showclock ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.drawString((showlongps ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
}
|
||||
@@ -3429,6 +3527,57 @@ void MenuDown() {
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case AUTOMEM:
|
||||
switch (menuoption) {
|
||||
case ITEM2:
|
||||
memstartfreq -= 10;
|
||||
if ((TEF == 205 ? memstartfreq < 640 : memstartfreq < 650)) memstartfreq = 1079;
|
||||
|
||||
OneBigLineSprite.setTextDatum(TL_DATUM);
|
||||
OneBigLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
OneBigLineSprite.drawString("MHz", 155, 0);
|
||||
OneBigLineSprite.setTextDatum(TR_DATUM);
|
||||
OneBigLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
OneBigLineSprite.drawString(String(memstartfreq / 10 + ConverterSet, DEC) + "." + String(memstartfreq % 10 + ConverterSet, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM3:
|
||||
memstopfreq -= 10;
|
||||
if (memstopfreq < 660) memstopfreq = 1080;
|
||||
|
||||
OneBigLineSprite.setTextDatum(TL_DATUM);
|
||||
OneBigLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
OneBigLineSprite.drawString("MHz", 155, 0);
|
||||
OneBigLineSprite.setTextDatum(TR_DATUM);
|
||||
OneBigLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
OneBigLineSprite.drawString(String(memstopfreq / 10 + ConverterSet, DEC) + "." + String(memstopfreq % 10 + ConverterSet, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM4:
|
||||
memstartpos--;
|
||||
if (memstartpos >= memstoppos) memstartpos = scanstop - 1;
|
||||
OneBigLineSprite.drawString(String(memstartpos + 1, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM5:
|
||||
memstoppos--;
|
||||
if (memstoppos <= memstartpos) memstoppos = EE_PRESETS_CNT - 1;
|
||||
OneBigLineSprite.drawString(String(memstoppos + 1, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM6:
|
||||
mempionly = !mempionly;
|
||||
|
||||
OneBigLineSprite.drawString((mempionly ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3519,6 +3668,14 @@ void DoMenu() {
|
||||
break;
|
||||
|
||||
case ITEM9:
|
||||
menupage = AUTOMEM;
|
||||
menuoption = ITEM1;
|
||||
menuitem = 0;
|
||||
submenu = true;
|
||||
BuildMenu();
|
||||
break;
|
||||
|
||||
case ITEM10:
|
||||
menuopen = true;
|
||||
tft.drawRoundRect(10, 6, 300, 230, 5, ActiveColor);
|
||||
tft.fillRoundRect(12, 8, 296, 226, 5, BackgroundColor);
|
||||
@@ -3852,9 +4009,9 @@ void DoMenu() {
|
||||
break;
|
||||
|
||||
case ITEM8:
|
||||
Infoboxprint(myLanguage[language][78]);
|
||||
Infoboxprint(myLanguage[language][262]);
|
||||
|
||||
OneBigLineSprite.drawString(Skin[CurrentSkin], 135, 0);
|
||||
OneBigLineSprite.drawString((showclock ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
@@ -3957,9 +4114,9 @@ void DoMenu() {
|
||||
break;
|
||||
|
||||
case ITEM10:
|
||||
Infoboxprint(myLanguage[language][262]);
|
||||
Infoboxprint(myLanguage[language][263]);
|
||||
|
||||
OneBigLineSprite.drawString((showclock ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.drawString((showlongps ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
}
|
||||
@@ -4234,7 +4391,7 @@ void DoMenu() {
|
||||
break;
|
||||
|
||||
case ITEM5:
|
||||
Infoboxprint(myLanguage[language][197]);
|
||||
Infoboxprint(myLanguage[language][271]);
|
||||
|
||||
OneBigLineSprite.drawString(String(stationlistid, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
@@ -4312,6 +4469,72 @@ void DoMenu() {
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case AUTOMEM:
|
||||
switch (menuoption) {
|
||||
case ITEM1:
|
||||
Infoboxprint(myLanguage[language][270]);
|
||||
switch (doAutoMemory(memstartfreq, memstopfreq, memstartpos, memstoppos, mempionly)) {
|
||||
case 0:
|
||||
tftPrint(0, myLanguage[language][275], 160, 175, ActiveColor, ActiveColorSmooth, 16);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
tftPrint(0, myLanguage[language][273], 160, 175, ActiveColor, ActiveColorSmooth, 16);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
tftPrint(0, myLanguage[language][274], 160, 175, ActiveColor, ActiveColorSmooth, 16);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case ITEM2:
|
||||
Infoboxprint(myLanguage[language][264]);
|
||||
|
||||
OneBigLineSprite.setTextDatum(TL_DATUM);
|
||||
OneBigLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
OneBigLineSprite.drawString("MHz", 155, 0);
|
||||
OneBigLineSprite.setTextDatum(TR_DATUM);
|
||||
OneBigLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
OneBigLineSprite.drawString(String(memstartfreq / 10 + ConverterSet, DEC) + "." + String(memstartfreq % 10 + ConverterSet, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM3:
|
||||
Infoboxprint(myLanguage[language][265]);
|
||||
|
||||
OneBigLineSprite.setTextDatum(TL_DATUM);
|
||||
OneBigLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
OneBigLineSprite.drawString("MHz", 155, 0);
|
||||
OneBigLineSprite.setTextDatum(TR_DATUM);
|
||||
OneBigLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
OneBigLineSprite.drawString(String(memstopfreq / 10 + ConverterSet, DEC) + "." + String(memstopfreq % 10 + ConverterSet, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM4:
|
||||
Infoboxprint(myLanguage[language][266]);
|
||||
|
||||
OneBigLineSprite.drawString(String(memstartpos + 1), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM5:
|
||||
Infoboxprint(myLanguage[language][267]);
|
||||
|
||||
OneBigLineSprite.drawString(String(memstoppos + 1), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM6:
|
||||
Infoboxprint(myLanguage[language][268]);
|
||||
|
||||
OneBigLineSprite.drawString((mempionly ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
if (menupage == CONNECTIVITY && menuoption == ITEM2) {
|
||||
|
||||
@@ -23,10 +23,10 @@
|
||||
#define ITEM9 190
|
||||
#define ITEM10 210
|
||||
|
||||
enum menupage {INDEX, MAINSETTINGS, AUDIOSETTINGS, DISPLAYSETTINGS, RDSSETTINGS, FMSETTINGS, AMSETTINGS, CONNECTIVITY, DXMODE};
|
||||
enum menupage {INDEX, MAINSETTINGS, AUDIOSETTINGS, DISPLAYSETTINGS, RDSSETTINGS, FMSETTINGS, AMSETTINGS, CONNECTIVITY, DXMODE, AUTOMEM};
|
||||
|
||||
extern byte menuitem;
|
||||
extern byte items[9];
|
||||
extern byte items[10];
|
||||
|
||||
extern bool advancedRDS;
|
||||
extern bool afmethodBold;
|
||||
@@ -60,6 +60,7 @@ extern bool scandxmode;
|
||||
extern bool scanmem;
|
||||
extern bool scanmute;
|
||||
extern bool showclock;
|
||||
extern bool showlongps;
|
||||
extern bool softmuteam;
|
||||
extern bool softmutefm;
|
||||
extern bool Stereostatusold;
|
||||
@@ -102,6 +103,9 @@ extern byte language;
|
||||
extern byte licold;
|
||||
extern byte longbandpress;
|
||||
extern byte memorypos;
|
||||
extern byte mempionly;
|
||||
extern byte memstartpos;
|
||||
extern byte memstoppos;
|
||||
extern byte menupage;
|
||||
extern byte MSold;
|
||||
extern byte poweroptions;
|
||||
@@ -197,6 +201,8 @@ extern unsigned int LowEdgeSet;
|
||||
extern unsigned int mappedfreqold[20];
|
||||
extern unsigned int mappedfreqold2[20];
|
||||
extern unsigned int mappedfreqold3[20];
|
||||
extern unsigned int memstartfreq;
|
||||
extern unsigned int memstopfreq;
|
||||
extern unsigned long scantimer;
|
||||
|
||||
extern TFT_eSPI tft;
|
||||
@@ -237,4 +243,5 @@ extern void UpdateFonts(byte mode);
|
||||
extern void tftPrint(int8_t offset, const String & text, int16_t x, int16_t y, int color, int smoothcolor, uint8_t fontsize);
|
||||
extern void setAutoSpeedSPI();
|
||||
extern void showAutoSquelch(bool mode);
|
||||
extern uint8_t doAutoMemory(uint16_t startfreq, uint16_t stopfreq, uint8_t startmem, uint8_t stopmem, bool pisearch);
|
||||
#endif
|
||||
+273
-39
@@ -1,11 +1,11 @@
|
||||
#ifndef LANGUAGE_H
|
||||
#define LANGUAGE_H
|
||||
|
||||
#define VERSION "v2.11.1"
|
||||
#define VERSION "v2.11.2"
|
||||
|
||||
// [number of languages][number of texts]
|
||||
|
||||
static const char* const myLanguage[18][263] PROGMEM = {
|
||||
static const char* const myLanguage[18][276] PROGMEM = {
|
||||
{ "English", // English
|
||||
"Rotary direction changed", // 1
|
||||
"Please release button", // 2
|
||||
@@ -203,7 +203,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"CONNECT", // 195
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AM AGC", // 198
|
||||
"FM deemphasis", // 199
|
||||
"Small", // 200
|
||||
@@ -268,7 +268,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Alarm!!!", // 259
|
||||
"Initial", // 260
|
||||
"Always", // 261
|
||||
"Show clock" // 262
|
||||
"Show clock", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Stationlist ID", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Nederlands", // Dutch
|
||||
@@ -468,7 +481,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"VERBIND", // 195
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AM AGC", // 198
|
||||
"FM deemphasis", // 199
|
||||
"Laag", // 200
|
||||
@@ -533,7 +546,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Alarm ! ALARM !", // 259
|
||||
"Initieel", // 260
|
||||
"Altijd", //261
|
||||
"Toon klok" // 262
|
||||
"Toon klok", // 262
|
||||
"Toon long PS", // 263
|
||||
"Start frequentie", // 264
|
||||
"Stop frequentie", // 265
|
||||
"Start geheugen\nkanaal", // 266
|
||||
"Stop geheugen\nkanaal", // 267
|
||||
"Alleen met\nRDS opslaan", // 268
|
||||
"Start auto\ngeheugen kanaal", // 269
|
||||
"Auto geheugen kanaal", // 270
|
||||
"Stationlist ID", // 271
|
||||
"Gevonden", // 272
|
||||
"Afgebroken! Geheugen vol", // 273
|
||||
"Afgebroken! Knop ingedrukt", // 274
|
||||
"Zoeken zonder fouten voltooid" // 275
|
||||
},
|
||||
|
||||
{ "Polski", // Polish
|
||||
@@ -733,7 +759,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"ŁĄCZNOŚĆ", // 195
|
||||
"TRYB DX", // 196
|
||||
"Identyfikator Stationlist", // 197
|
||||
"AUTO MEM", // 197
|
||||
"Tłumik ant. AM", // 198
|
||||
"Deemfaza FM", // 199
|
||||
"Małe", // 200
|
||||
@@ -798,7 +824,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Alarm", // 259
|
||||
"Początkowy", // 260
|
||||
"Zawsze", // 261
|
||||
"Pokaż zegar" // 262
|
||||
"Pokaż zegar", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Identyfikator Stationlist", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Hrvatski", // Croatian
|
||||
@@ -998,7 +1037,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"SPOJI", // 195
|
||||
"DX NAČIN RADA", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AM ATT", // 198
|
||||
"FM deemphasis", // 199
|
||||
"Malo", // 200
|
||||
@@ -1063,7 +1102,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Alarm !", // 259
|
||||
"Početno", // 260
|
||||
"Uvijek", //261
|
||||
"Prikaži sat" // 262
|
||||
"Prikaži sat", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Stationlist ID", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Ελληνικά", // Greek
|
||||
@@ -1263,7 +1315,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"ΣΥΝΔΕΣΗ", // 195
|
||||
"DX MODE", // 196
|
||||
"ID λίστας σταθμών", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AM εξασθένιση", // 198
|
||||
"FM αποέμφαση", // 199
|
||||
"Μικρό", // 200
|
||||
@@ -1328,7 +1380,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Συναγερμός!!!", // 259
|
||||
"Αρχικό", // 260
|
||||
"Πάντα", //261
|
||||
"Εμφάνιση ρολογιού" // 262
|
||||
"Εμφάνιση ρολογιού", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"ID λίστας σταθμών", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Română", // Romanian
|
||||
@@ -1528,7 +1593,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"CONECTARE", // 195
|
||||
"MOD DX", // 196
|
||||
"Listă ID posturi", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AGC AM", // 198
|
||||
"FM deemphasis", // 199
|
||||
"Mic", // 200
|
||||
@@ -1593,7 +1658,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Alarmă !", // 259
|
||||
"Inițial", // 260
|
||||
"Mereu", //261
|
||||
"Arată ceasul" // 262
|
||||
"Arată ceasul", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Listă ID posturi", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Deutsch", // German
|
||||
@@ -1793,7 +1871,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"NETZWERK", // 195
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AM ATT", // 198
|
||||
"Entzerrung auf UKW", // 199
|
||||
"Wenig", // 200
|
||||
@@ -1858,7 +1936,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Alarm! Alarm!", // 259
|
||||
"Anfänglich", // 260
|
||||
"Immer", // 261
|
||||
"Uhr anzeigen" // 262
|
||||
"Uhr anzeigen", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Stationlist ID", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Český", // Czech
|
||||
@@ -2058,7 +2149,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"KONEKTIVITA", // 195
|
||||
"DX REŽIM", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AM ATT", // 198
|
||||
"FM deemfáze", // 199
|
||||
"Malé", // 200
|
||||
@@ -2123,7 +2214,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Alarm – Alarm !", // 259
|
||||
"Počáteční", // 260
|
||||
"Vždy", //261
|
||||
"Zobrazit hodiny" // 262
|
||||
"Zobrazit hodiny", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Stationlist ID", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Magyar", // Hungarian
|
||||
@@ -2323,7 +2427,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"CSATLAKOZÁS", // 195
|
||||
"DX MÓD", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AM AGC", // 198
|
||||
"FM kihangolás", // 199
|
||||
"Kicsi", // 200
|
||||
@@ -2388,7 +2492,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Riasztás!!!", // 259
|
||||
"Kezdeti", // 260
|
||||
"Mindig", //261
|
||||
"Óra mutatása" // 262
|
||||
"Óra mutatása", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Stationlist ID", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Français", // French
|
||||
@@ -2588,7 +2705,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"CONNECTER", // 195
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AM ATT", // 198
|
||||
"FM déemphasie", // 199
|
||||
"Petites", // 200
|
||||
@@ -2653,7 +2770,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Alerte !", // 259
|
||||
"Initial", // 260
|
||||
"Toujours", // 261
|
||||
"Afficher l'horloge" // 262
|
||||
"Afficher l'horloge", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Stationlist ID", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Български", // Bulgarian
|
||||
@@ -2853,7 +2983,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"СВ (AM)", // 194
|
||||
"ВРЪЗКА", // 195
|
||||
"DX MODE", // 196
|
||||
"Stationlist Идентификатор", // 197
|
||||
"AUTO MEM", // 197
|
||||
"СВ атенюатор", // 198
|
||||
"FM deemphasis", // 199
|
||||
"Small", // 200
|
||||
@@ -2918,7 +3048,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Тревога!", // 259
|
||||
"Начален", // 260
|
||||
"Винаги", // 261
|
||||
"Покажи часовника" // 262
|
||||
"Покажи часовника", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Stationlist Идентификатор", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Русский", // Russian
|
||||
@@ -3118,7 +3261,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"КОННЕКТ", // 195
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AM аттеньюатор", // 198
|
||||
"FM deemphasis", // 199
|
||||
"Мало", // 200
|
||||
@@ -3183,7 +3326,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Тревога!", // 259
|
||||
"Начальный", // 260
|
||||
"Всегда", // 261
|
||||
"Показать часы" // 262
|
||||
"Показать часы", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Stationlist Идентификатор", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Українська", // Ukranian
|
||||
@@ -3383,7 +3539,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"ПІДКЛЮЧЕННЯ", // 195
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AM ATT", // 198
|
||||
"FM deemphasis", // 199
|
||||
"Мало", // 200
|
||||
@@ -3448,7 +3604,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Alarm!!!", // 259
|
||||
"Початковий", // 260
|
||||
"Завжди", // 261
|
||||
"Показати годинник" // 262
|
||||
"Показати годинник", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Stationlist ID", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Italiano", // Italian
|
||||
@@ -3648,7 +3817,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"CONNETTI", // 195
|
||||
"MODO DX", // 196
|
||||
"ID Stationlist", // 197
|
||||
"AUTO MEM", // 197
|
||||
"ATT AM", // 198
|
||||
"Deenfasi FM", // 199
|
||||
"Piccolo", // 200
|
||||
@@ -3713,7 +3882,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"!!Allarme!!", // 259
|
||||
"Iniziale", // 260
|
||||
"Sempre", // 261
|
||||
"Mostra l'orologio" // 262
|
||||
"Mostra l'orologio", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"ID Stationlist", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Simplified Chinese", // Simplified Chinese
|
||||
@@ -3913,7 +4095,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM 设置", // 194
|
||||
"连机模式", // 195
|
||||
"FMDX 选项", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AM天线衰减", // 198
|
||||
"FM去加重", // 199
|
||||
"少量", // 200
|
||||
@@ -3978,7 +4160,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Alarm!!!", // 259
|
||||
"初始", // 260
|
||||
"始终", // 261
|
||||
"显示时钟" // 262
|
||||
"显示时钟", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Stationlist ID", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Norsk", // Norwegian
|
||||
@@ -4178,7 +4373,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"TILKOBLE", // 195
|
||||
"DX MODUS", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AUTO MEM", // 197
|
||||
"AM AGC", // 198
|
||||
"FM ettertrykkelse", // 199
|
||||
"Lite", // 200
|
||||
@@ -4243,7 +4438,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Alarm!", // 259
|
||||
"Innledende", // 260
|
||||
"Alltid", // 261
|
||||
"Vis klokka" // 262
|
||||
"Vis klokka", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Stationlist ID", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Español", // Spanish
|
||||
@@ -4443,7 +4651,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"CONECTAR", // 195
|
||||
"DX MODE", // 196
|
||||
"ID de lista de estaciones", // 197
|
||||
"AUTO MEM", // 197
|
||||
"Atenuación de AM", // 198
|
||||
"Despreocupación\nde FM", // 199
|
||||
"Pequeño", // 200
|
||||
@@ -4508,7 +4716,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"¡ Alarma !", // 259
|
||||
"Inicial", // 260
|
||||
"Siempre", // 261
|
||||
"Mostrar reloj" // 262
|
||||
"Mostrar reloj", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"Stationlist ID", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
},
|
||||
|
||||
{ "Português", // Portuguese
|
||||
@@ -4708,7 +4929,7 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"AM", // 194
|
||||
"CONECTAR", // 195
|
||||
"DX MODE", // 196
|
||||
"ID da lista de estações", // 197
|
||||
"AUTO MEM", // 197
|
||||
"Atenuação AM", // 198
|
||||
"Desênfase FM", // 199
|
||||
"Pequeno", // 200
|
||||
@@ -4773,7 +4994,20 @@ static const char* const myLanguage[18][263] PROGMEM = {
|
||||
"Alarme – Alarme !", // 259
|
||||
"Inicial", // 260
|
||||
"Sempre", // 261
|
||||
"Mostrar relógio" // 262
|
||||
"Mostrar relógio", // 262
|
||||
"Show long PS", // 263
|
||||
"Start frequency", // 264
|
||||
"Stop frequency", // 265
|
||||
"Start memory channel", // 266
|
||||
"Stop memory channel", // 267
|
||||
"Only store with RDS", // 268
|
||||
"Start auto memory", // 269
|
||||
"Auto memory", // 270
|
||||
"ID da lista de estações", // 271
|
||||
"Found", // 272
|
||||
"Abort! Out of memorychannels", // 273
|
||||
"Abort! User pressed button", // 274
|
||||
"Scan finished without errors" // 275
|
||||
}
|
||||
};
|
||||
#endif
|
||||
#endif
|
||||
+2
-2
@@ -668,11 +668,11 @@ void showPTY() {
|
||||
}
|
||||
|
||||
void showPS() {
|
||||
if (radio.rds.stationName != PSold || radio.rds.hasLongPS) {
|
||||
if (radio.rds.stationName != PSold || (radio.rds.hasLongPS && showlongps)) {
|
||||
if (afscreen) {
|
||||
if (!screenmute) tftReplace(0, PSold, radio.rds.stationName, 160, 201, BWAutoColor, BWAutoColorSmooth, BackgroundColor, 16);
|
||||
} else {
|
||||
if (radio.rds.hasLongPS) {
|
||||
if (radio.rds.hasLongPS && showlongps) {
|
||||
String stationNameLongString = String(radio.rds.stationNameLong) + " ";
|
||||
if (stationNameLongString != stationNameLongOld) {
|
||||
PSLongWidth = PSSprite.textWidth(stationNameLongString);
|
||||
|
||||
Reference in New Issue
Block a user