Introduced DX scan mode
This commit is contained in:
+11
-8
@@ -196,9 +196,9 @@
|
||||
|
||||
// EEPROM index defines
|
||||
#define EE_PRESETS_CNT 99
|
||||
#define EE_CHECKBYTE_VALUE 5 // 0 ~ 255,add new entry, change for new value
|
||||
#define EE_CHECKBYTE_VALUE 6 // 0 ~ 255,add new entry, change for new value
|
||||
|
||||
#define EE_TOTAL_CNT 2213
|
||||
#define EE_TOTAL_CNT 2216
|
||||
#define EE_UINT16_FREQUENCY_FM 0
|
||||
#define EE_BYTE_VOLSET 4
|
||||
#define EE_BYTE_STEREO 5
|
||||
@@ -282,12 +282,15 @@
|
||||
#define EE_BYTE_FMAGC 127
|
||||
#define EE_BYTE_AMAGC 128
|
||||
#define EE_BYTE_FMSI 129
|
||||
#define EE_PRESETS_BAND_START 130
|
||||
#define EE_PRESET_BW_START 230
|
||||
#define EE_PRESET_MS_START 330
|
||||
#define EE_PRESETS_FREQUENCY_START 430
|
||||
#define EE_PRESETS_RDSPI_START 826 // 5 bytes
|
||||
#define EE_PRESETS_RDSPS_START 1321 // 9 bytes
|
||||
#define EE_BYTE_SCANSTART 130
|
||||
#define EE_BYTE_SCANSTOP 131
|
||||
#define EE_BYTE_SCANHOLD 132
|
||||
#define EE_PRESETS_BAND_START 133
|
||||
#define EE_PRESET_BW_START 233
|
||||
#define EE_PRESET_MS_START 333
|
||||
#define EE_PRESETS_FREQUENCY_START 433
|
||||
#define EE_PRESETS_RDSPI_START 829 // 5 bytes
|
||||
#define EE_PRESETS_RDSPS_START 1324 // 9 bytes
|
||||
#define EE_PRESETS_FREQUENCY 0
|
||||
|
||||
// End of EEPROM index defines
|
||||
|
||||
+168
-4
@@ -7,7 +7,8 @@
|
||||
#include <cstring>
|
||||
|
||||
byte menuitem;
|
||||
byte items[8] = {8, static_cast<byte>(dynamicspi ? 9 : 8), 7, 10, 9, 10, 9, 6};
|
||||
byte items[9] = {9, static_cast<byte>(dynamicspi ? 9 : 8), 7, 10, 9, 10, 9, 6, 4};
|
||||
extern mem presets[];
|
||||
|
||||
void doTheme() { // Use this to put your own colors in: http://www.barth-dev.de/online/rgb565-color-picker/
|
||||
switch (CurrentTheme) {
|
||||
@@ -617,6 +618,12 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString((USBmode ? "RDS Spy" : "XDRGTK"), 298, 3);
|
||||
break;
|
||||
|
||||
case DXMODE:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][212]), 6, 3);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -704,6 +711,16 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString((wifi ? myLanguage[language][42] : myLanguage[language][30]), 298, 3);
|
||||
break;
|
||||
|
||||
case DXMODE:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][209]), 6, 3);
|
||||
|
||||
FullLineSprite.setTextDatum(TR_DATUM);
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString(String(scanstart + 1, DEC), 298, 3);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -790,6 +807,16 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString(">", 298, 3);
|
||||
break;
|
||||
|
||||
case DXMODE:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][210]), 6, 3);
|
||||
|
||||
FullLineSprite.setTextDatum(TR_DATUM);
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString(String(scanstop + 1, DEC), 298, 3);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -876,6 +903,18 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString((wifi ? String(WiFi.localIP()[0]) + "." + String(WiFi.localIP()[1]) + "." + String(WiFi.localIP()[2]) + "." + String(subnetclient, DEC) : "-"), 298, 3);
|
||||
break;
|
||||
|
||||
case DXMODE:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][211]), 6, 3);
|
||||
|
||||
FullLineSprite.setTextDatum(TR_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][92]), 298, 3);
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString(String(scanhold, DEC), 258, 3);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -1154,7 +1193,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, 3);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][213]), 152, 3);
|
||||
break;
|
||||
|
||||
case MAINSETTINGS:
|
||||
@@ -1190,7 +1229,7 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
case RDSSETTINGS:
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][196]), 6, 3);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][215]), 6, 3);
|
||||
FullLineSprite.setTextDatum(TR_DATUM);
|
||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
FullLineSprite.drawString((radio.rds.sortaf ? myLanguage[language][42] : myLanguage[language][30]), 298, 3);
|
||||
@@ -1229,6 +1268,12 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
||||
|
||||
case 8:
|
||||
switch (menupage) {
|
||||
case INDEX:
|
||||
FullLineSprite.setTextDatum(TC_DATUM);
|
||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
FullLineSprite.drawString(removeNewline(myLanguage[language][70]), 152, 3);
|
||||
break;
|
||||
|
||||
case MAINSETTINGS:
|
||||
if (dynamicspi) {
|
||||
FullLineSprite.setTextDatum(TL_DATUM);
|
||||
@@ -2449,6 +2494,36 @@ void MenuUp() {
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case DXMODE:
|
||||
switch (menuoption) {
|
||||
case ITEM2:
|
||||
scanstart++;
|
||||
if (scanstart >= scanstop) scanstart = 0;
|
||||
OneBigLineSprite.drawString(String(scanstart + 1, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM3:
|
||||
scanstop++;
|
||||
if (scanstop > EE_PRESETS_CNT - 1) scanstop = scanstart + 1;
|
||||
OneBigLineSprite.drawString(String(scanstop + 1, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM4:
|
||||
scanhold++;
|
||||
if (scanhold > 30) scanhold = 1;
|
||||
OneBigLineSprite.setTextDatum(TL_DATUM);
|
||||
OneBigLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
OneBigLineSprite.drawString(myLanguage[language][92], 155, 0);
|
||||
OneBigLineSprite.setTextDatum(TR_DATUM);
|
||||
OneBigLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
OneBigLineSprite.drawString(String(scanhold, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3220,6 +3295,36 @@ void MenuDown() {
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case DXMODE:
|
||||
switch (menuoption) {
|
||||
case ITEM2:
|
||||
scanstart--;
|
||||
if (scanstart >= scanstop) scanstart = scanstop - 1;
|
||||
OneBigLineSprite.drawString(String(scanstart + 1, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM3:
|
||||
scanstop--;
|
||||
if (scanstop <= scanstart) scanstop = EE_PRESETS_CNT - 1;
|
||||
OneBigLineSprite.drawString(String(scanstop + 1, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM4:
|
||||
scanhold--;
|
||||
if (scanhold < 1) scanhold = 30;
|
||||
OneBigLineSprite.setTextDatum(TL_DATUM);
|
||||
OneBigLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
OneBigLineSprite.drawString(myLanguage[language][92], 155, 0);
|
||||
OneBigLineSprite.setTextDatum(TR_DATUM);
|
||||
OneBigLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
OneBigLineSprite.drawString(String(scanhold, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3306,6 +3411,14 @@ void DoMenu() {
|
||||
break;
|
||||
|
||||
case ITEM8:
|
||||
menupage = DXMODE;
|
||||
menuoption = ITEM1;
|
||||
menuitem = 0;
|
||||
submenu = true;
|
||||
BuildMenu();
|
||||
break;
|
||||
|
||||
case ITEM9:
|
||||
menuopen = true;
|
||||
tft.drawRoundRect(10, 6, 300, 230, 5, ActiveColor);
|
||||
tft.fillRoundRect(12, 8, 296, 226, 5, BackgroundColor);
|
||||
@@ -3689,7 +3802,7 @@ void DoMenu() {
|
||||
break;
|
||||
|
||||
case ITEM8:
|
||||
Infoboxprint(myLanguage[language][196]);
|
||||
Infoboxprint(myLanguage[language][215]);
|
||||
|
||||
OneBigLineSprite.drawString((radio.rds.sortaf ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
@@ -3984,6 +4097,53 @@ void DoMenu() {
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case DXMODE:
|
||||
switch (menuoption) {
|
||||
case ITEM1:
|
||||
if (presets[scanstart].band == BAND_FM && presets[scanstart].frequency == EE_PRESETS_FREQUENCY) {
|
||||
Infoboxprint(myLanguage[language][214]);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
} else {
|
||||
menuopen = false;
|
||||
menu = false;
|
||||
memorypos = scanstart;
|
||||
scanmodeold = tunemode;
|
||||
tunemode = TUNE_MEM;
|
||||
BuildDisplay();
|
||||
DoMemoryPosTune();
|
||||
scantimer = millis();
|
||||
scandxmode = true;
|
||||
}
|
||||
break;
|
||||
|
||||
case ITEM2:
|
||||
Infoboxprint(myLanguage[language][209]);
|
||||
|
||||
OneBigLineSprite.drawString(String(scanstart + 1), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM3:
|
||||
Infoboxprint(myLanguage[language][210]);
|
||||
|
||||
OneBigLineSprite.drawString(String(scanstop + 1), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
|
||||
case ITEM4:
|
||||
Infoboxprint(myLanguage[language][211]);
|
||||
|
||||
OneBigLineSprite.setTextDatum(TL_DATUM);
|
||||
OneBigLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||
OneBigLineSprite.drawString(myLanguage[language][92], 155, 0);
|
||||
OneBigLineSprite.setTextDatum(TR_DATUM);
|
||||
OneBigLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||
OneBigLineSprite.drawString(String(scanhold, DEC), 135, 0);
|
||||
OneBigLineSprite.pushSprite(24, 118);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
if (menupage == CONNECTIVITY && menuoption == ITEM2) {
|
||||
@@ -3993,7 +4153,11 @@ void DoMenu() {
|
||||
if (menupage == DISPLAYSETTINGS && menuoption == ITEM5) {
|
||||
doTheme();
|
||||
}
|
||||
|
||||
menuopen = false;
|
||||
if (scanstart >= scanstop) scanstart = scanstop - 1;
|
||||
if (scanstop <= scanstart) scanstop = scanstart + 1;
|
||||
|
||||
UpdateFonts(1);
|
||||
BuildMenu();
|
||||
}
|
||||
|
||||
@@ -23,10 +23,10 @@
|
||||
#define ITEM9 190
|
||||
#define ITEM10 210
|
||||
|
||||
enum menupage {INDEX, MAINSETTINGS, AUDIOSETTINGS, DISPLAYSETTINGS, RDSSETTINGS, FMSETTINGS, AMSETTINGS, CONNECTIVITY};
|
||||
enum menupage {INDEX, MAINSETTINGS, AUDIOSETTINGS, DISPLAYSETTINGS, RDSSETTINGS, FMSETTINGS, AMSETTINGS, CONNECTIVITY, DXMODE};
|
||||
|
||||
extern byte menuitem;
|
||||
extern byte items[8];
|
||||
extern byte items[9];
|
||||
|
||||
extern bool advancedRDS;
|
||||
extern bool afmethodBold;
|
||||
@@ -47,6 +47,7 @@ extern bool haseonold;
|
||||
extern bool hasrtplusold;
|
||||
extern bool hastmcold;
|
||||
extern bool LowLevelInit;
|
||||
extern bool menu;
|
||||
extern bool menuopen;
|
||||
extern bool mwstepsize;
|
||||
extern bool rdsreset;
|
||||
@@ -54,6 +55,7 @@ extern bool RDSstatus;
|
||||
extern bool RDSstatusold;
|
||||
extern bool rdsstereoold;
|
||||
extern bool usesquelch;
|
||||
extern bool scandxmode;
|
||||
extern bool softmuteam;
|
||||
extern bool softmutefm;
|
||||
extern bool Stereostatusold;
|
||||
@@ -94,12 +96,17 @@ extern byte HighCutLevel;
|
||||
extern byte HighCutOffset;
|
||||
extern byte language;
|
||||
extern byte licold;
|
||||
extern byte memorypos;
|
||||
extern byte menupage;
|
||||
extern byte MSold;
|
||||
extern byte poweroptions;
|
||||
extern byte eonptyold[20];
|
||||
extern byte rdsblockold;
|
||||
extern byte region;
|
||||
extern byte scanstart;
|
||||
extern byte scanstop;
|
||||
extern byte scanhold;
|
||||
extern byte scanmodeold;
|
||||
extern byte screensaverOptions[5];
|
||||
extern byte screensaverset;
|
||||
extern byte showmodulation;
|
||||
@@ -113,6 +120,7 @@ extern byte submenu;
|
||||
extern byte subnetclient;
|
||||
extern byte tot;
|
||||
extern byte touchrotating;
|
||||
extern byte tunemode;
|
||||
extern byte unit;
|
||||
extern byte spispeed;
|
||||
extern char eonpicodeold[20][6];
|
||||
@@ -181,6 +189,7 @@ extern unsigned int LowEdgeSet;
|
||||
extern unsigned int mappedfreqold[20];
|
||||
extern unsigned int mappedfreqold2[20];
|
||||
extern unsigned int mappedfreqold3[20];
|
||||
extern unsigned long scantimer;
|
||||
|
||||
extern TFT_eSPI tft;
|
||||
extern TEF6686 radio;
|
||||
@@ -212,6 +221,7 @@ extern void updateiMS();
|
||||
extern void updateEQ();
|
||||
extern void doTheme();
|
||||
extern void tryWiFi();
|
||||
extern void DoMemoryPosTune();
|
||||
extern void UpdateFonts(bool mode);
|
||||
extern void tftPrint(int8_t offset, const String & text, int16_t x, int16_t y, int color, int smoothcolor, uint8_t fontsize);
|
||||
|
||||
|
||||
+164
-38
@@ -5,7 +5,7 @@
|
||||
|
||||
// [number of languages][number of texts]
|
||||
// *** means the text is the same as in English
|
||||
static const char* const myLanguage[18][209] PROGMEM = {
|
||||
static const char* const myLanguage[18][216] PROGMEM = {
|
||||
{ "English", // English
|
||||
"Rotary direction changed", // 1
|
||||
"Please release button", // 2
|
||||
@@ -202,7 +202,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193
|
||||
"AM", // 194
|
||||
"CONNECT", // 195
|
||||
"Auto sort AF", // 196
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AM AGC", // 198
|
||||
"FM deemphasis", // 199
|
||||
@@ -214,7 +214,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Mute screen on\nXDRGTK connection", // 205
|
||||
"FMSI stereo\nimprovement", // 206
|
||||
"Function only available\non TEF6687/6689!", // 207
|
||||
"Function not available\non selected skin!" // 208
|
||||
"Function not available\non selected skin!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Auto sort AF" // 215
|
||||
},
|
||||
|
||||
{ "Nederlands", // Dutch
|
||||
@@ -413,7 +420,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193 ***
|
||||
"AM", // 194 ***
|
||||
"VERBIND", // 195
|
||||
"Auto AF sorteren", // 196
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197 ***
|
||||
"AM AGC", // 198 ***
|
||||
"FM deemphasis", // 199 ***
|
||||
@@ -425,7 +432,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Scherm uit bij\nXDRGTK verbinding", // 205
|
||||
"FMSI stereo\nverbetering", // 206
|
||||
"Alleen beschikbaar op\nTEF6687/6689!", // 207
|
||||
"Niet beschikbaar op\ngekozen uiterlijk!" // 208
|
||||
"Niet beschikbaar op\ngekozen uiterlijk!", // 208
|
||||
"Begin zoeken\ngeheugenkanaal", // 209
|
||||
"Eind zoeken\ngeheugenkanaal", // 210
|
||||
"Wachttijd", // 211
|
||||
"Start DX zoeken", // 212
|
||||
"FM DX Opties", // 213
|
||||
"Fout! Startkanaal is\ngemarkeerd als skip", // 214
|
||||
"Auto AF sorteren" // 215
|
||||
},
|
||||
|
||||
{ "Polski", // Polish
|
||||
@@ -624,7 +638,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193 ***
|
||||
"AM", // 194 ***
|
||||
"ŁĄCZNOŚĆ", // 195
|
||||
"Automat. sortowanie AF", // 196
|
||||
"DX MODE", // 196
|
||||
"Identyfikator Stationlist", // 197
|
||||
"Tłumik ant. AM", // 198
|
||||
"Deemfaza FM", // 199
|
||||
@@ -636,7 +650,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Wylacz ekran gdy\npołączony z XDR-GTK", // 205
|
||||
"Ulepszenie \nstereo FMSI", // 206
|
||||
"Funkcja dostępna tylko\nna TEF6687/6689!", // 207
|
||||
"Funkcja niedostępna\nna wybranym motywie!" // 208
|
||||
"Funkcja niedostępna\nna wybranym motywie!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Automat. sortowanie AF" // 215
|
||||
},
|
||||
|
||||
{ "Hrvatski", // Croatian
|
||||
@@ -835,7 +856,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193
|
||||
"AM", // 194
|
||||
"SPOJI", // 195
|
||||
"Autom. sortiranje AF-a", // 196
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AM ATT", // 198
|
||||
"FM deemphasis", // 199
|
||||
@@ -847,7 +868,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Isključi zaslon\ntijekom veze XDRGTK-om", // 205
|
||||
"FMSI stereo\nimprovement", // 206
|
||||
"Function only available\non TEF6687/6689!", // 207
|
||||
"Function not available\non selected skin!" // 208
|
||||
"Function not available\non selected skin!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Autom. sortiranje AF-a" // 215
|
||||
},
|
||||
|
||||
{ "Ελληνικά", // Greek
|
||||
@@ -1046,7 +1074,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193
|
||||
"AM", // 194
|
||||
"ΣΥΝΔΕΣΗ", // 195
|
||||
"Αυτόματη ταξινόμηση\nAF", // 196
|
||||
"DX MODE", // 196
|
||||
"ID λίστας σταθμών", // 197
|
||||
"AM εξασθένιση", // 198
|
||||
"FM αποέμφαση", // 199
|
||||
@@ -1058,7 +1086,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Μαύρη οθόνη σε\nσύνδεση XDRGTK", // 205
|
||||
"FMSI βελτίωση\nστερεοφωνικού ήχου", // 206
|
||||
"Λειτουργία διαθέσιμη\nμόνο στα TEF6687/6689!", // 207
|
||||
"Λειτουργία μη διαθέσιμη\nστην επιλεγμένη εμφάνιση!" // 208
|
||||
"Λειτουργία μη διαθέσιμη\nστην επιλεγμένη εμφάνιση!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Αυτόματη ταξινόμηση\nAF" // 215
|
||||
},
|
||||
|
||||
{ "Română", // Romanian
|
||||
@@ -1257,7 +1292,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193
|
||||
"AM", // 194
|
||||
"CONECTARE", // 195
|
||||
"Sortare automata AF", // 196
|
||||
"DX MODE", // 196
|
||||
"ID Lista posturi", // 197
|
||||
"AGC AM", // 198
|
||||
"FM deemphasis", // 199
|
||||
@@ -1269,7 +1304,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Mute screen on\nXDRGTK connection", // 205
|
||||
"FMSI stereo\nimprovement", // 206
|
||||
"Function only available\non TEF6687/6689!", // 207
|
||||
"Function not available\non selected skin!" // 208
|
||||
"Function not available\non selected skin!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Sortare automata AF" // 215
|
||||
},
|
||||
|
||||
{ "Deutsch", // German
|
||||
@@ -1468,7 +1510,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"UKW", // 193
|
||||
"AM", // 194
|
||||
"NETZ", // 195
|
||||
"AF Autosortierung", // 196
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AM ATT", // 198
|
||||
"Entzerrung auf UKW", // 199
|
||||
@@ -1480,7 +1522,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Display aus bei\nXDRGTK-Verbindung", // 205
|
||||
"FMSI Stereo-\nVerbesserung", // 206
|
||||
"Funktion nur für\nTEF6687/6689 verfügbar!", // 207
|
||||
"Funktion für ausgewählten\nSkin nicht verfügbar!" // 208
|
||||
"Funktion für ausgewählten\nSkin nicht verfügbar!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"AF Autosortierung" // 215
|
||||
},
|
||||
|
||||
{ "Český", // Czech
|
||||
@@ -1679,7 +1728,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193 ***
|
||||
"AM", // 194 ***
|
||||
"PŘIPOJENÍ", // 195
|
||||
"Auto řazení AF", // 196
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197 ***
|
||||
"AM ATT", // 198
|
||||
"FM deemphasis", // 199 ***
|
||||
@@ -1691,7 +1740,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Mute screen on\nXDRGTK connection", // 205
|
||||
"FMSI stereo\nimprovement", // 206
|
||||
"Function only available\non TEF6687/6689!", // 207
|
||||
"Function not available\non selected skin!" // 208
|
||||
"Function not available\non selected skin!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Auto řazení AF" // 215
|
||||
},
|
||||
|
||||
{ "Slovenský", // Slovak
|
||||
@@ -1890,7 +1946,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193 ***
|
||||
"AM", // 194 ***
|
||||
"PRIPOJENIE", // 195
|
||||
"Auto radenie AF", // 196
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197 ***
|
||||
"AM ATT", // 198
|
||||
"FM deemphasis", // 199 ***
|
||||
@@ -1902,7 +1958,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Mute screen on\nXDRGTK connection", // 205
|
||||
"FMSI stereo\nimprovement", // 206
|
||||
"Function only available\non TEF6687/6689!", // 207
|
||||
"Function not available\non selected skin!" // 208
|
||||
"Function not available\non selected skin!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Auto radenie AF" // 215
|
||||
},
|
||||
|
||||
{ "Français", // French
|
||||
@@ -2101,7 +2164,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193
|
||||
"AM", // 194
|
||||
"CONNECTER", // 195
|
||||
"Tri AF automatique", // 196
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AM ATT", // 198
|
||||
"FM déemphasie", // 199
|
||||
@@ -2113,7 +2176,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Écran muet sur\nla connexion XDRGTK", // 205
|
||||
"FMSI amélioration\ndu son stéréo", // 206
|
||||
"Fonction disponible seulement\nsur TEF6687/6689!", // 207
|
||||
"Fonction non disponible\nsur le skin sélectionné!" // 208
|
||||
"Fonction non disponible\nsur le skin sélectionné!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Tri AF automatique" // 215
|
||||
},
|
||||
|
||||
{ "Български", // Bulgarian
|
||||
@@ -2312,7 +2382,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"УКВ (FM)", // 193
|
||||
"СВ (AM)", // 194
|
||||
"ВРЪЗКА", // 195
|
||||
"Auto sort AF", // 196 ***
|
||||
"DX MODE", // 196
|
||||
"Stationlist Идентификатор", // 197
|
||||
"СВ атенюатор", // 198
|
||||
"FM deemphasis", // 199 ***
|
||||
@@ -2324,7 +2394,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Mute screen on\nXDRGTK connection", // 205
|
||||
"FMSI stereo\nimprovement", // 206
|
||||
"Function only available\non TEF6687/6689!", // 207
|
||||
"Function not available\non selected skin!" // 208
|
||||
"Function not available\non selected skin!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Auto sort AF" // 215 ***
|
||||
},
|
||||
|
||||
{ "Русский", // Russian
|
||||
@@ -2523,7 +2600,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193
|
||||
"AM", // 194
|
||||
"КОННЕКТ", // 195
|
||||
"Сортировка AF-частот", // 196
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197
|
||||
"AM аттеньюатор", // 198
|
||||
"FM deemphasis", // 199
|
||||
@@ -2535,7 +2612,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Погасить дисплей при\nподключении XDRGTK", // 205
|
||||
"FMSI стерео\nулучшение", // 206
|
||||
"Функция доступна только\nна TEF6687/6689!", // 207
|
||||
"Функция недоступна\nна этом оформлении" // 208
|
||||
"Функция недоступна\nна этом оформлении", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Сортировка AF-частот" // 215
|
||||
},
|
||||
|
||||
{ "Українська", // Ukranian
|
||||
@@ -2734,7 +2818,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193 ***
|
||||
"AM", // 194 ***
|
||||
"ПІДКЛЮЧЕННЯ", // 195
|
||||
"Авто сорт. AF", // 196
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197 ***
|
||||
"AM ATT", // 198
|
||||
"FM deemphasis", // 199 ***
|
||||
@@ -2746,7 +2830,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Mute screen on\nXDRGTK connection", // 205
|
||||
"FMSI stereo\nimprovement", // 206
|
||||
"Function only available\non TEF6687/6689!", // 207
|
||||
"Function not available\non selected skin!" // 208
|
||||
"Function not available\non selected skin!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Авто сорт. AF" // 215
|
||||
},
|
||||
|
||||
{ "Italiano", // Italian
|
||||
@@ -2945,7 +3036,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193 ***
|
||||
"AM", // 194 ***
|
||||
"CONNETTI", // 195 ***
|
||||
"Autoordinamento AF", // 196 ***
|
||||
"DX MODE", // 196
|
||||
"ID Stationlist", // 197 ***
|
||||
"ATT AM", // 198
|
||||
"Deenfasi FM", // 199 ***
|
||||
@@ -2957,7 +3048,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Mute screen on\nXDRGTK connection", // 205
|
||||
"FMSI stereo\nimprovement", // 206
|
||||
"Function only available\non TEF6687/6689!", // 207
|
||||
"Function not available\non selected skin!" // 208
|
||||
"Function not available\non selected skin!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Autoordinamento AF" // 215
|
||||
},
|
||||
|
||||
{ "Simplified Chinese", // Simplified Chinese
|
||||
@@ -3156,7 +3254,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM 设置", // 193
|
||||
"AM 设置", // 194
|
||||
"连机模式", // 195
|
||||
"自动排列AF", // 196
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197 ***
|
||||
"AM天线衰减", // 198
|
||||
"FM去加重", // 199
|
||||
@@ -3168,7 +3266,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"XDRGTK连接时锁屏", // 205
|
||||
"FMSI\n立体声增强", // 206
|
||||
"此功能仅限\nTEF6687/6689!", // 207
|
||||
"此皮肤不支持该功能!" // 208
|
||||
"此皮肤不支持该功能!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"自动排列AF" // 215
|
||||
},
|
||||
|
||||
{ "Norsk", // Norwegian
|
||||
@@ -3367,7 +3472,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193 ***
|
||||
"AM", // 194 ***
|
||||
"TILKOBLE", // 195
|
||||
"Auto sorterings AF", // 196
|
||||
"DX MODE", // 196
|
||||
"Stationlist ID", // 197 ***
|
||||
"AM ATT", // 198
|
||||
"FM ettertrykkelse", // 199
|
||||
@@ -3379,7 +3484,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Dempet skjerm på\nXDRGTK tilkobling", // 205
|
||||
"FMSI stereo forbedringt", // 206
|
||||
"Kun tilgjengelig\npå TEF6687/6689!", // 207
|
||||
"Funksjon ikke tilgjengelig\npå valgt skin!" // 208
|
||||
"Funksjon ikke tilgjengelig\npå valgt skin!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Auto sorterings AF" // 215
|
||||
},
|
||||
|
||||
{ "Español", // Spanish
|
||||
@@ -3578,7 +3690,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193
|
||||
"AM", // 194
|
||||
"CONECTAR", // 195
|
||||
"Orden automático de AF", // 196
|
||||
"DX MODE", // 196
|
||||
"ID de lista de estaciones", // 197
|
||||
"Atenuación de AM", // 198
|
||||
"Despreocupación\nde FM", // 199
|
||||
@@ -3590,7 +3702,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Pantalla de mudo\nen la conexión XDRGTK", // 205
|
||||
"FMSI mejora del\nsonido estéreo", // 206
|
||||
"Función disponible solo\nen TEF6687/6689!", // 207
|
||||
"Función no disponible\nsobre el skin seleccionado!" // 208
|
||||
"Función no disponible\nsobre el skin seleccionado!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Orden automático de AF" // 215
|
||||
},
|
||||
|
||||
{ "Português", // Portuguese
|
||||
@@ -3789,7 +3908,7 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"FM", // 193
|
||||
"AM", // 194
|
||||
"CONECTAR", // 195
|
||||
"Classificar AF\nautomaticamente", // 196
|
||||
"DX MODE", // 196
|
||||
"ID da lista de estações", // 197
|
||||
"Atenuação AM", // 198
|
||||
"Desênfase FM", // 199
|
||||
@@ -3801,7 +3920,14 @@ static const char* const myLanguage[18][209] PROGMEM = {
|
||||
"Tela mudo na\nconexão XDRGTK", // 205
|
||||
"FMSI melhoria\ndo som estéreo", // 206
|
||||
"Function only available\non TEF6687/6689!", // 207
|
||||
"Função não disponível\nno skin selecionado!" // 208
|
||||
"Função não disponível\nno skin selecionado!", // 208
|
||||
"Begin scanning\nmemory channels", // 209
|
||||
"Stop scanning\nmemory channels", // 210
|
||||
"Wait time", // 211
|
||||
"Start DX scanning", // 212
|
||||
"FM DX Options", // 213
|
||||
"Abort! The start channel\nis marked as skipped.", // 214
|
||||
"Classificar AF\nautomaticamente" // 215
|
||||
}
|
||||
};
|
||||
#endif
|
||||
#endif
|
||||
@@ -856,6 +856,7 @@ void showCT() {
|
||||
}
|
||||
|
||||
void showRadioText() {
|
||||
// radio.rds.stationText = "Jetzt in Ö1: Öffentlich-rechtlich auf Bewährung";
|
||||
if (!screenmute) {
|
||||
if (radio.rds.hasRT && radio.rds.stationText.length() > 0) {
|
||||
if (String(radio.rds.stationText + radio.rds.stationText32).length() != Radiotextlengthold) {
|
||||
|
||||
Reference in New Issue
Block a user