Added menuoption auto memory
This commit is contained in:
+169
-47
@@ -178,6 +178,9 @@ byte longbandpress;
|
|||||||
byte memorypos;
|
byte memorypos;
|
||||||
byte memoryposold;
|
byte memoryposold;
|
||||||
byte memoryposstatus;
|
byte memoryposstatus;
|
||||||
|
byte mempionly;
|
||||||
|
byte memstartpos;
|
||||||
|
byte memstoppos;
|
||||||
byte menupage;
|
byte menupage;
|
||||||
byte MSold;
|
byte MSold;
|
||||||
byte poweroptions;
|
byte poweroptions;
|
||||||
@@ -365,6 +368,8 @@ unsigned int LWLowEdgeSet;
|
|||||||
unsigned int mappedfreqold[20];
|
unsigned int mappedfreqold[20];
|
||||||
unsigned int mappedfreqold2[20];
|
unsigned int mappedfreqold2[20];
|
||||||
unsigned int mappedfreqold3[20];
|
unsigned int mappedfreqold3[20];
|
||||||
|
unsigned int memstartfreq;
|
||||||
|
unsigned int memstopfreq;
|
||||||
unsigned int MWHighEdgeSet;
|
unsigned int MWHighEdgeSet;
|
||||||
unsigned int MWLowEdgeSet;
|
unsigned int MWLowEdgeSet;
|
||||||
unsigned int scanner_end;
|
unsigned int scanner_end;
|
||||||
@@ -526,6 +531,11 @@ void setup() {
|
|||||||
longbandpress = EEPROM.readByte(EE_BYTE_LONGBANDPRESS);
|
longbandpress = EEPROM.readByte(EE_BYTE_LONGBANDPRESS);
|
||||||
showclock = EEPROM.readByte(EE_BYTE_SHOWCLOCK);
|
showclock = EEPROM.readByte(EE_BYTE_SHOWCLOCK);
|
||||||
showlongps = EEPROM.readByte(EE_BYTE_SHOWLONGPS);
|
showlongps = EEPROM.readByte(EE_BYTE_SHOWLONGPS);
|
||||||
|
memstartfreq = EEPROM.readUInt(EE_UINT16_MEMSTARTFREQ);
|
||||||
|
memstopfreq = EEPROM.readUInt(EE_UINT16_MEMSTOPFREQ);
|
||||||
|
memstartpos = EEPROM.readByte(EE_BYTE_MEMSTARTPOS);
|
||||||
|
memstoppos = EEPROM.readByte(EE_BYTE_MEMSTOPPOS);
|
||||||
|
mempionly = EEPROM.readByte(EE_BYTE_MEMPIONLY);
|
||||||
|
|
||||||
if (spispeed == SPI_SPEED_DEFAULT) {
|
if (spispeed == SPI_SPEED_DEFAULT) {
|
||||||
tft.setSPISpeed(SPI_FREQUENCY / 1000000);
|
tft.setSPISpeed(SPI_FREQUENCY / 1000000);
|
||||||
@@ -1111,6 +1121,7 @@ void loop() {
|
|||||||
default: SignalSprite.pushImage(-87, -119, 292, 170, popupbackground); break;
|
default: SignalSprite.pushImage(-87, -119, 292, 170, popupbackground); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SignalSprite.setTextDatum(TR_DATUM);
|
||||||
SignalSprite.loadFont(FONT48);
|
SignalSprite.loadFont(FONT48);
|
||||||
SignalSprite.drawString(String(SStatus / 10), 58, 0);
|
SignalSprite.drawString(String(SStatus / 10), 58, 0);
|
||||||
SignalSprite.unloadFont();
|
SignalSprite.unloadFont();
|
||||||
@@ -2532,54 +2543,8 @@ void ButtonPress() {
|
|||||||
ShowTuneMode();
|
ShowTuneMode();
|
||||||
} else {
|
} else {
|
||||||
memorystore = false;
|
memorystore = false;
|
||||||
EEPROM.writeByte(memorypos + EE_PRESETS_BAND_START, band);
|
StoreMemoryPos(memorypos);
|
||||||
EEPROM.writeByte(memorypos + EE_PRESET_BW_START, BWset);
|
|
||||||
EEPROM.writeByte(memorypos + EE_PRESET_MS_START, StereoToggle);
|
|
||||||
if (band == BAND_FM) {//todo air
|
|
||||||
EEPROM.writeUInt((memorypos * 4) + EE_PRESETS_FREQUENCY_START, frequency);
|
|
||||||
} else if (band == BAND_OIRT) {
|
|
||||||
EEPROM.writeUInt((memorypos * 4) + EE_PRESETS_FREQUENCY_START, frequency_OIRT);
|
|
||||||
} else if (band == BAND_LW) {
|
|
||||||
EEPROM.writeUInt((memorypos * 4) + EE_PRESETS_FREQUENCY_START, frequency_LW);
|
|
||||||
} else if (band == BAND_MW) {
|
|
||||||
EEPROM.writeUInt((memorypos * 4) + EE_PRESETS_FREQUENCY_START, frequency_MW);
|
|
||||||
} else {
|
|
||||||
EEPROM.writeUInt((memorypos * 4) + EE_PRESETS_FREQUENCY_START, frequency_SW);
|
|
||||||
}
|
|
||||||
|
|
||||||
presets[memorypos].band = band;
|
|
||||||
presets[memorypos].bw = BWset;
|
|
||||||
presets[memorypos].ms = StereoToggle;
|
|
||||||
|
|
||||||
String stationName = radio.rds.stationName;
|
|
||||||
char stationNameCharArray[10];
|
|
||||||
char picodeArray[7];
|
|
||||||
stationName.toCharArray(stationNameCharArray, sizeof(stationNameCharArray));
|
|
||||||
memcpy(picodeArray, radio.rds.picode, sizeof(picodeArray));
|
|
||||||
|
|
||||||
for (int y = 0; y < 9; y++) {
|
|
||||||
presets[memorypos].RDSPS[y] = (y < strlen(stationNameCharArray)) ? stationNameCharArray[y] : '\0';
|
|
||||||
EEPROM.writeByte((memorypos * 9) + y + EE_PRESETS_RDSPS_START, presets[memorypos].RDSPS[y]);
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int y = 0; y < 5; y++) {
|
|
||||||
presets[memorypos].RDSPI[y] = (y < sizeof(picodeArray)) ? picodeArray[y] : '\0';
|
|
||||||
EEPROM.writeByte((memorypos * 5) + y + EE_PRESETS_RDSPI_START, presets[memorypos].RDSPI[y]);
|
|
||||||
}
|
|
||||||
|
|
||||||
EEPROM.commit();
|
|
||||||
|
|
||||||
if (band == BAND_FM) {//todo air
|
|
||||||
presets[memorypos].frequency = frequency;
|
|
||||||
} else if (band == BAND_OIRT) {
|
|
||||||
presets[memorypos].frequency = frequency_OIRT;
|
|
||||||
} else if (band == BAND_LW) {
|
|
||||||
presets[memorypos].frequency = frequency_LW;
|
|
||||||
} else if (band == BAND_MW) {
|
|
||||||
presets[memorypos].frequency = frequency_MW;
|
|
||||||
} else {
|
|
||||||
presets[memorypos].frequency = frequency_SW;
|
|
||||||
}
|
|
||||||
ShowTuneMode();
|
ShowTuneMode();
|
||||||
if (memoryposstatus == MEM_DARK || memoryposstatus == MEM_EXIST) {
|
if (memoryposstatus == MEM_DARK || memoryposstatus == MEM_EXIST) {
|
||||||
memoryposstatus = MEM_NORMAL;
|
memoryposstatus = MEM_NORMAL;
|
||||||
@@ -4324,6 +4289,11 @@ void DefaultSettings(byte userhardwaremodel) {
|
|||||||
EEPROM.writeByte(EE_BYTE_LONGBANDPRESS, 0);
|
EEPROM.writeByte(EE_BYTE_LONGBANDPRESS, 0);
|
||||||
EEPROM.writeByte(EE_BYTE_SHOWCLOCK, 1);
|
EEPROM.writeByte(EE_BYTE_SHOWCLOCK, 1);
|
||||||
EEPROM.writeByte(EE_BYTE_SHOWLONGPS, 1);
|
EEPROM.writeByte(EE_BYTE_SHOWLONGPS, 1);
|
||||||
|
EEPROM.writeUInt(EE_UINT16_MEMSTARTFREQ, 875);
|
||||||
|
EEPROM.writeUInt(EE_UINT16_MEMSTOPFREQ, 1080);
|
||||||
|
EEPROM.writeByte(EE_BYTE_MEMSTARTPOS, 1);
|
||||||
|
EEPROM.writeByte(EE_BYTE_MEMSTOPPOS, 10);
|
||||||
|
EEPROM.writeByte(EE_BYTE_MEMPIONLY, 1);
|
||||||
|
|
||||||
for (int i = 0; i < EE_PRESETS_CNT; i++) {
|
for (int i = 0; i < EE_PRESETS_CNT; i++) {
|
||||||
EEPROM.writeByte(i + EE_PRESETS_BAND_START, BAND_FM);
|
EEPROM.writeByte(i + EE_PRESETS_BAND_START, BAND_FM);
|
||||||
@@ -4554,6 +4524,11 @@ void endMenu() {
|
|||||||
EEPROM.writeByte(EE_BYTE_LONGBANDPRESS, longbandpress);
|
EEPROM.writeByte(EE_BYTE_LONGBANDPRESS, longbandpress);
|
||||||
EEPROM.writeByte(EE_BYTE_SHOWCLOCK, showclock);
|
EEPROM.writeByte(EE_BYTE_SHOWCLOCK, showclock);
|
||||||
EEPROM.writeByte(EE_BYTE_SHOWLONGPS, showlongps);
|
EEPROM.writeByte(EE_BYTE_SHOWLONGPS, showlongps);
|
||||||
|
EEPROM.writeUInt(EE_UINT16_MEMSTARTFREQ, memstartfreq);
|
||||||
|
EEPROM.writeUInt(EE_UINT16_MEMSTOPFREQ, memstopfreq);
|
||||||
|
EEPROM.writeByte(EE_BYTE_MEMSTARTPOS, memstartpos);
|
||||||
|
EEPROM.writeByte(EE_BYTE_MEMSTOPPOS, memstoppos);
|
||||||
|
EEPROM.writeByte(EE_BYTE_MEMPIONLY, mempionly);
|
||||||
EEPROM.commit();
|
EEPROM.commit();
|
||||||
if (af == 2) radio.rds.afreg = true; else radio.rds.afreg = false;
|
if (af == 2) radio.rds.afreg = true; else radio.rds.afreg = false;
|
||||||
Serial.end();
|
Serial.end();
|
||||||
@@ -4649,3 +4624,150 @@ void setAutoSpeedSPI() {
|
|||||||
default: tft.setSPISpeed(30); break;
|
default: tft.setSPISpeed(30); break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uint8_t doAutoMemory(uint16_t startfreq, uint16_t stopfreq, uint8_t startmem, uint8_t stopmem, bool rdsonly) {
|
||||||
|
uint8_t error = 0;
|
||||||
|
uint8_t counter = 0;
|
||||||
|
uint16_t _current = frequency;
|
||||||
|
uint16_t totalIterations = (stopfreq - startfreq) + 1;
|
||||||
|
uint16_t currentIteration = 0;
|
||||||
|
uint8_t percent = 0;
|
||||||
|
uint8_t percentold = 0;
|
||||||
|
bool stopScanning = false;
|
||||||
|
|
||||||
|
radio.setMute();
|
||||||
|
radio.power(0);
|
||||||
|
band = BAND_FM;
|
||||||
|
tunemode = TUNE_MAN;
|
||||||
|
|
||||||
|
tft.drawRect(65, 109, 190, 8, FrameColor);
|
||||||
|
tft.fillRect(66, 110, 188, 6, GreyoutColor);
|
||||||
|
tftPrint(1, myLanguage[language][272], 120, 155, ActiveColor, ActiveColorSmooth, 16);
|
||||||
|
|
||||||
|
while (digitalRead(ROTARY_BUTTON)) delay(50);
|
||||||
|
|
||||||
|
for (frequency = startfreq * 10; frequency <= stopfreq * 10; frequency += 10) {
|
||||||
|
if (stopScanning) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
currentIteration++;
|
||||||
|
percent = (currentIteration * 100) / totalIterations;
|
||||||
|
|
||||||
|
radio.SetFreq(frequency);
|
||||||
|
radio.clearRDS(fullsearchrds);
|
||||||
|
delay(50);
|
||||||
|
radio.getStatus(SStatus, USN, WAM, OStatus, BW, MStatus, CN);
|
||||||
|
if ((USN < fmscansens * 30) && (WAM < 230) && (OStatus < 80 && OStatus > -80)) {
|
||||||
|
for (byte y = 0; y < 20; y++) {
|
||||||
|
delay(50);
|
||||||
|
radio.readRDS(showrdserrors);
|
||||||
|
}
|
||||||
|
if ((rdsonly && radio.rds.hasRDS) || !rdsonly) {
|
||||||
|
StoreMemoryPos(startmem);
|
||||||
|
counter ++;
|
||||||
|
startmem++;
|
||||||
|
if (startmem > stopmem) {
|
||||||
|
error = 1;
|
||||||
|
stopScanning = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (percent != percentold) {
|
||||||
|
switch (CurrentTheme) {
|
||||||
|
case 7:
|
||||||
|
SignalSprite.pushImage(-107, -95, 292, 170, popupbackground_wo);
|
||||||
|
SquelchSprite.pushImage(-177, -135, 292, 170, popupbackground_wo);
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
SignalSprite.pushImage(-107, -95, 292, 170, popupbackground);
|
||||||
|
SquelchSprite.pushImage(-177, -135, 292, 170, popupbackground);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
SignalSprite.setTextColor(SecondaryColor, SecondaryColorSmooth, false);
|
||||||
|
SignalSprite.setTextDatum(TC_DATUM);
|
||||||
|
SignalSprite.loadFont(FONT28);
|
||||||
|
SignalSprite.drawString(String(percent) + "%", 40, 0);
|
||||||
|
SignalSprite.unloadFont();
|
||||||
|
SignalSprite.pushSprite(120, 125);
|
||||||
|
|
||||||
|
if (language == LANGUAGE_CHS) SquelchSprite.loadFont(FONT16_CHS); else SquelchSprite.loadFont(FONT16);
|
||||||
|
SquelchSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||||
|
SquelchSprite.drawString(String(counter), 0, 0);
|
||||||
|
SquelchSprite.pushSprite(200, 155);
|
||||||
|
|
||||||
|
tft.fillRect(66, 110, 2 * constrain(percent, 0, 94), 6, BarInsignificantColor);
|
||||||
|
|
||||||
|
percentold = percent;
|
||||||
|
}
|
||||||
|
if (digitalRead(ROTARY_BUTTON) == LOW) {
|
||||||
|
while (digitalRead(ROTARY_BUTTON)) delay(50);
|
||||||
|
error = 2;
|
||||||
|
stopScanning = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
frequency = _current;
|
||||||
|
radio.SetFreq(frequency);
|
||||||
|
radio.clearRDS(fullsearchrds);
|
||||||
|
radio.setUnMute();
|
||||||
|
SQ = false;
|
||||||
|
|
||||||
|
return error;
|
||||||
|
}
|
||||||
|
|
||||||
|
void StoreMemoryPos(uint8_t _pos) {
|
||||||
|
EEPROM.writeByte(_pos + EE_PRESETS_BAND_START, band);
|
||||||
|
EEPROM.writeByte(_pos + EE_PRESET_BW_START, BWset);
|
||||||
|
EEPROM.writeByte(_pos + EE_PRESET_MS_START, StereoToggle);
|
||||||
|
if (band == BAND_FM) {//todo air
|
||||||
|
EEPROM.writeUInt((_pos * 4) + EE_PRESETS_FREQUENCY_START, frequency);
|
||||||
|
} else if (band == BAND_OIRT) {
|
||||||
|
EEPROM.writeUInt((_pos * 4) + EE_PRESETS_FREQUENCY_START, frequency_OIRT);
|
||||||
|
} else if (band == BAND_LW) {
|
||||||
|
EEPROM.writeUInt((_pos * 4) + EE_PRESETS_FREQUENCY_START, frequency_LW);
|
||||||
|
} else if (band == BAND_MW) {
|
||||||
|
EEPROM.writeUInt((_pos * 4) + EE_PRESETS_FREQUENCY_START, frequency_MW);
|
||||||
|
} else {
|
||||||
|
EEPROM.writeUInt((_pos * 4) + EE_PRESETS_FREQUENCY_START, frequency_SW);
|
||||||
|
}
|
||||||
|
|
||||||
|
presets[_pos].band = band;
|
||||||
|
presets[_pos].bw = BWset;
|
||||||
|
presets[_pos].ms = StereoToggle;
|
||||||
|
|
||||||
|
String stationName = radio.rds.stationName;
|
||||||
|
char stationNameCharArray[10];
|
||||||
|
char picodeArray[7];
|
||||||
|
stationName.toCharArray(stationNameCharArray, sizeof(stationNameCharArray));
|
||||||
|
memcpy(picodeArray, radio.rds.picode, sizeof(picodeArray));
|
||||||
|
|
||||||
|
for (int y = 0; y < 9; y++) {
|
||||||
|
presets[_pos].RDSPS[y] = (y < strlen(stationNameCharArray)) ? stationNameCharArray[y] : '\0';
|
||||||
|
EEPROM.writeByte((_pos * 9) + y + EE_PRESETS_RDSPS_START, presets[_pos].RDSPS[y]);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int y = 0; y < 5; y++) {
|
||||||
|
presets[_pos].RDSPI[y] = (y < sizeof(picodeArray)) ? picodeArray[y] : '\0';
|
||||||
|
EEPROM.writeByte((_pos * 5) + y + EE_PRESETS_RDSPI_START, presets[_pos].RDSPI[y]);
|
||||||
|
}
|
||||||
|
|
||||||
|
EEPROM.commit();
|
||||||
|
|
||||||
|
if (band == BAND_FM) {//todo air
|
||||||
|
presets[_pos].frequency = frequency;
|
||||||
|
} else if (band == BAND_OIRT) {
|
||||||
|
presets[_pos].frequency = frequency_OIRT;
|
||||||
|
} else if (band == BAND_LW) {
|
||||||
|
presets[_pos].frequency = frequency_LW;
|
||||||
|
} else if (band == BAND_MW) {
|
||||||
|
presets[_pos].frequency = frequency_MW;
|
||||||
|
} else {
|
||||||
|
presets[_pos].frequency = frequency_SW;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
+9
-4
@@ -209,9 +209,9 @@
|
|||||||
#define EE_CHECKBYTE_VALUE 10 // 0 ~ 255,add new entry, change for new value
|
#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!
|
#define EE_PRESETS_FREQUENCY 0 // Default value when memory channel should be skipped!
|
||||||
#ifdef HAS_AIR_BAND
|
#ifdef HAS_AIR_BAND
|
||||||
#define EE_TOTAL_CNT 2223 // Total occupied eeprom bytes
|
#define EE_TOTAL_CNT 2235 // Total occupied eeprom bytes
|
||||||
#else
|
#else
|
||||||
#define EE_TOTAL_CNT 2218 // Total occupied eeprom bytes
|
#define EE_TOTAL_CNT 2229 // Total occupied eeprom bytes
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define EE_PRESETS_BAND_START 0 // 99 * 1 byte
|
#define EE_PRESETS_BAND_START 0 // 99 * 1 byte
|
||||||
@@ -314,9 +314,14 @@
|
|||||||
#define EE_BYTE_LONGBANDPRESS 2215
|
#define EE_BYTE_LONGBANDPRESS 2215
|
||||||
#define EE_BYTE_SHOWCLOCK 2216
|
#define EE_BYTE_SHOWCLOCK 2216
|
||||||
#define EE_BYTE_SHOWLONGPS 2217
|
#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
|
#ifdef HAS_AIR_BAND
|
||||||
#define EE_BYTE_AIRSTEPSIZE 2118
|
#define EE_BYTE_AIRSTEPSIZE 2229
|
||||||
#define EE_UINT16_FREQUENCY_AIR 2219
|
#define EE_UINT16_FREQUENCY_AIR 2230
|
||||||
#endif
|
#endif
|
||||||
// End of EEPROM index defines
|
// End of EEPROM index defines
|
||||||
|
|
||||||
|
|||||||
+242
-6
@@ -8,7 +8,7 @@
|
|||||||
#include <cstring>
|
#include <cstring>
|
||||||
|
|
||||||
byte menuitem;
|
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[];
|
extern mem presets[];
|
||||||
bool setWiFiConnectParam = false;
|
bool setWiFiConnectParam = false;
|
||||||
|
|
||||||
@@ -596,6 +596,12 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
|||||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||||
FullLineSprite.drawString(removeNewline(myLanguage[language][212]), 6, 2);
|
FullLineSprite.drawString(removeNewline(myLanguage[language][212]), 6, 2);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case AUTOMEM:
|
||||||
|
FullLineSprite.setTextDatum(TL_DATUM);
|
||||||
|
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||||
|
FullLineSprite.drawString(removeNewline(myLanguage[language][269]), 6, 2);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -693,6 +699,18 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
|||||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||||
FullLineSprite.drawString(String(scanstart + 1, DEC), 298, 2);
|
FullLineSprite.drawString(String(scanstart + 1, DEC), 298, 2);
|
||||||
break;
|
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;
|
break;
|
||||||
|
|
||||||
@@ -789,6 +807,18 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
|||||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||||
FullLineSprite.drawString(String(scanstop + 1, DEC), 298, 2);
|
FullLineSprite.drawString(String(scanstop + 1, DEC), 298, 2);
|
||||||
break;
|
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;
|
break;
|
||||||
|
|
||||||
@@ -887,6 +917,16 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
|||||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||||
FullLineSprite.drawString((scanhold == 0 ? "0.5" : String(scanhold, DEC)), 258, 2);
|
FullLineSprite.drawString((scanhold == 0 ? "0.5" : String(scanhold, DEC)), 258, 2);
|
||||||
break;
|
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;
|
break;
|
||||||
|
|
||||||
@@ -975,7 +1015,7 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
|||||||
case CONNECTIVITY:
|
case CONNECTIVITY:
|
||||||
FullLineSprite.setTextDatum(TL_DATUM);
|
FullLineSprite.setTextDatum(TL_DATUM);
|
||||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
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.setTextDatum(TR_DATUM);
|
||||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||||
@@ -991,6 +1031,16 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
|||||||
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
|
||||||
FullLineSprite.drawString((scanmem ? myLanguage[language][218] : myLanguage[language][217]), 298, 2);
|
FullLineSprite.drawString((scanmem ? myLanguage[language][218] : myLanguage[language][217]), 298, 2);
|
||||||
break;
|
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(memstoppos + 1, DEC), 298, 2);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -1099,6 +1149,16 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
|||||||
case SIGNAL: FullLineSprite.drawString(myLanguage[language][221], 298, 2); break;
|
case SIGNAL: FullLineSprite.drawString(myLanguage[language][221], 298, 2); break;
|
||||||
}
|
}
|
||||||
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;
|
break;
|
||||||
|
|
||||||
@@ -1298,7 +1358,7 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
|||||||
case INDEX:
|
case INDEX:
|
||||||
FullLineSprite.setTextDatum(TC_DATUM);
|
FullLineSprite.setTextDatum(TC_DATUM);
|
||||||
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||||
FullLineSprite.drawString(removeNewline(myLanguage[language][70]), 152, 2);
|
FullLineSprite.drawString(removeNewline(myLanguage[language][270]), 152, 2);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MAINSETTINGS:
|
case MAINSETTINGS:
|
||||||
@@ -1364,8 +1424,8 @@ void ShowOneLine(byte position, byte item, bool selected) {
|
|||||||
switch (menupage) {
|
switch (menupage) {
|
||||||
case INDEX:
|
case INDEX:
|
||||||
FullLineSprite.setTextDatum(TC_DATUM);
|
FullLineSprite.setTextDatum(TC_DATUM);
|
||||||
FullLineSprite.setTextColor(SecondaryColor, SecondaryColorSmooth, false);
|
FullLineSprite.setTextColor(ActiveColor, ActiveColorSmooth, false);
|
||||||
FullLineSprite.drawString(removeNewline(String(myLanguage[language][84]) + " " + String(VERSION)), 152, 2);
|
FullLineSprite.drawString(removeNewline(myLanguage[language][70]), 152, 2);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MAINSETTINGS:
|
case MAINSETTINGS:
|
||||||
@@ -2554,6 +2614,57 @@ void MenuUp() {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
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;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3416,6 +3527,57 @@ void MenuDown() {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
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;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -3506,6 +3668,14 @@ void DoMenu() {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case ITEM9:
|
case ITEM9:
|
||||||
|
menupage = AUTOMEM;
|
||||||
|
menuoption = ITEM1;
|
||||||
|
menuitem = 0;
|
||||||
|
submenu = true;
|
||||||
|
BuildMenu();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ITEM10:
|
||||||
menuopen = true;
|
menuopen = true;
|
||||||
tft.drawRoundRect(10, 6, 300, 230, 5, ActiveColor);
|
tft.drawRoundRect(10, 6, 300, 230, 5, ActiveColor);
|
||||||
tft.fillRoundRect(12, 8, 296, 226, 5, BackgroundColor);
|
tft.fillRoundRect(12, 8, 296, 226, 5, BackgroundColor);
|
||||||
@@ -4221,7 +4391,7 @@ void DoMenu() {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case ITEM5:
|
case ITEM5:
|
||||||
Infoboxprint(myLanguage[language][197]);
|
Infoboxprint(myLanguage[language][271]);
|
||||||
|
|
||||||
OneBigLineSprite.drawString(String(stationlistid, DEC), 135, 0);
|
OneBigLineSprite.drawString(String(stationlistid, DEC), 135, 0);
|
||||||
OneBigLineSprite.pushSprite(24, 118);
|
OneBigLineSprite.pushSprite(24, 118);
|
||||||
@@ -4299,6 +4469,72 @@ void DoMenu() {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
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 {
|
} else {
|
||||||
if (menupage == CONNECTIVITY && menuoption == ITEM2) {
|
if (menupage == CONNECTIVITY && menuoption == ITEM2) {
|
||||||
|
|||||||
@@ -23,10 +23,10 @@
|
|||||||
#define ITEM9 190
|
#define ITEM9 190
|
||||||
#define ITEM10 210
|
#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 menuitem;
|
||||||
extern byte items[9];
|
extern byte items[10];
|
||||||
|
|
||||||
extern bool advancedRDS;
|
extern bool advancedRDS;
|
||||||
extern bool afmethodBold;
|
extern bool afmethodBold;
|
||||||
@@ -103,6 +103,9 @@ extern byte language;
|
|||||||
extern byte licold;
|
extern byte licold;
|
||||||
extern byte longbandpress;
|
extern byte longbandpress;
|
||||||
extern byte memorypos;
|
extern byte memorypos;
|
||||||
|
extern byte mempionly;
|
||||||
|
extern byte memstartpos;
|
||||||
|
extern byte memstoppos;
|
||||||
extern byte menupage;
|
extern byte menupage;
|
||||||
extern byte MSold;
|
extern byte MSold;
|
||||||
extern byte poweroptions;
|
extern byte poweroptions;
|
||||||
@@ -198,6 +201,8 @@ extern unsigned int LowEdgeSet;
|
|||||||
extern unsigned int mappedfreqold[20];
|
extern unsigned int mappedfreqold[20];
|
||||||
extern unsigned int mappedfreqold2[20];
|
extern unsigned int mappedfreqold2[20];
|
||||||
extern unsigned int mappedfreqold3[20];
|
extern unsigned int mappedfreqold3[20];
|
||||||
|
extern unsigned int memstartfreq;
|
||||||
|
extern unsigned int memstopfreq;
|
||||||
extern unsigned long scantimer;
|
extern unsigned long scantimer;
|
||||||
|
|
||||||
extern TFT_eSPI tft;
|
extern TFT_eSPI tft;
|
||||||
@@ -238,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 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 setAutoSpeedSPI();
|
||||||
extern void showAutoSquelch(bool mode);
|
extern void showAutoSquelch(bool mode);
|
||||||
|
extern uint8_t doAutoMemory(uint16_t startfreq, uint16_t stopfreq, uint8_t startmem, uint8_t stopmem, bool pisearch);
|
||||||
#endif
|
#endif
|
||||||
+253
-37
@@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
// [number of languages][number of texts]
|
// [number of languages][number of texts]
|
||||||
|
|
||||||
static const char* const myLanguage[18][264] PROGMEM = {
|
static const char* const myLanguage[18][276] PROGMEM = {
|
||||||
{ "English", // English
|
{ "English", // English
|
||||||
"Rotary direction changed", // 1
|
"Rotary direction changed", // 1
|
||||||
"Please release button", // 2
|
"Please release button", // 2
|
||||||
@@ -203,7 +203,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"CONNECT", // 195
|
"CONNECT", // 195
|
||||||
"DX MODE", // 196
|
"DX MODE", // 196
|
||||||
"Stationlist ID", // 197
|
"AUTO MEM", // 197
|
||||||
"AM AGC", // 198
|
"AM AGC", // 198
|
||||||
"FM deemphasis", // 199
|
"FM deemphasis", // 199
|
||||||
"Small", // 200
|
"Small", // 200
|
||||||
@@ -269,7 +269,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Initial", // 260
|
"Initial", // 260
|
||||||
"Always", // 261
|
"Always", // 261
|
||||||
"Show clock", // 262
|
"Show clock", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Nederlands", // Dutch
|
||||||
@@ -469,7 +481,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"VERBIND", // 195
|
"VERBIND", // 195
|
||||||
"DX MODE", // 196
|
"DX MODE", // 196
|
||||||
"Stationlist ID", // 197
|
"AUTO MEM", // 197
|
||||||
"AM AGC", // 198
|
"AM AGC", // 198
|
||||||
"FM deemphasis", // 199
|
"FM deemphasis", // 199
|
||||||
"Laag", // 200
|
"Laag", // 200
|
||||||
@@ -535,7 +547,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Initieel", // 260
|
"Initieel", // 260
|
||||||
"Altijd", //261
|
"Altijd", //261
|
||||||
"Toon klok", // 262
|
"Toon klok", // 262
|
||||||
"Toon long PS" // 263
|
"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
|
{ "Polski", // Polish
|
||||||
@@ -735,7 +759,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"ŁĄCZNOŚĆ", // 195
|
"ŁĄCZNOŚĆ", // 195
|
||||||
"TRYB DX", // 196
|
"TRYB DX", // 196
|
||||||
"Identyfikator Stationlist", // 197
|
"AUTO MEM", // 197
|
||||||
"Tłumik ant. AM", // 198
|
"Tłumik ant. AM", // 198
|
||||||
"Deemfaza FM", // 199
|
"Deemfaza FM", // 199
|
||||||
"Małe", // 200
|
"Małe", // 200
|
||||||
@@ -801,7 +825,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Początkowy", // 260
|
"Początkowy", // 260
|
||||||
"Zawsze", // 261
|
"Zawsze", // 261
|
||||||
"Pokaż zegar", // 262
|
"Pokaż zegar", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Hrvatski", // Croatian
|
||||||
@@ -1001,7 +1037,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"SPOJI", // 195
|
"SPOJI", // 195
|
||||||
"DX NAČIN RADA", // 196
|
"DX NAČIN RADA", // 196
|
||||||
"Stationlist ID", // 197
|
"AUTO MEM", // 197
|
||||||
"AM ATT", // 198
|
"AM ATT", // 198
|
||||||
"FM deemphasis", // 199
|
"FM deemphasis", // 199
|
||||||
"Malo", // 200
|
"Malo", // 200
|
||||||
@@ -1067,7 +1103,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Početno", // 260
|
"Početno", // 260
|
||||||
"Uvijek", //261
|
"Uvijek", //261
|
||||||
"Prikaži sat", // 262
|
"Prikaži sat", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Ελληνικά", // Greek
|
||||||
@@ -1267,7 +1315,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"ΣΥΝΔΕΣΗ", // 195
|
"ΣΥΝΔΕΣΗ", // 195
|
||||||
"DX MODE", // 196
|
"DX MODE", // 196
|
||||||
"ID λίστας σταθμών", // 197
|
"AUTO MEM", // 197
|
||||||
"AM εξασθένιση", // 198
|
"AM εξασθένιση", // 198
|
||||||
"FM αποέμφαση", // 199
|
"FM αποέμφαση", // 199
|
||||||
"Μικρό", // 200
|
"Μικρό", // 200
|
||||||
@@ -1333,7 +1381,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Αρχικό", // 260
|
"Αρχικό", // 260
|
||||||
"Πάντα", //261
|
"Πάντα", //261
|
||||||
"Εμφάνιση ρολογιού", // 262
|
"Εμφάνιση ρολογιού", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Română", // Romanian
|
||||||
@@ -1533,7 +1593,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"CONECTARE", // 195
|
"CONECTARE", // 195
|
||||||
"MOD DX", // 196
|
"MOD DX", // 196
|
||||||
"Listă ID posturi", // 197
|
"AUTO MEM", // 197
|
||||||
"AGC AM", // 198
|
"AGC AM", // 198
|
||||||
"FM deemphasis", // 199
|
"FM deemphasis", // 199
|
||||||
"Mic", // 200
|
"Mic", // 200
|
||||||
@@ -1599,7 +1659,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Inițial", // 260
|
"Inițial", // 260
|
||||||
"Mereu", //261
|
"Mereu", //261
|
||||||
"Arată ceasul", // 262
|
"Arată ceasul", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Deutsch", // German
|
||||||
@@ -1799,7 +1871,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"NETZWERK", // 195
|
"NETZWERK", // 195
|
||||||
"DX MODE", // 196
|
"DX MODE", // 196
|
||||||
"Stationlist ID", // 197
|
"AUTO MEM", // 197
|
||||||
"AM ATT", // 198
|
"AM ATT", // 198
|
||||||
"Entzerrung auf UKW", // 199
|
"Entzerrung auf UKW", // 199
|
||||||
"Wenig", // 200
|
"Wenig", // 200
|
||||||
@@ -1865,7 +1937,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Anfänglich", // 260
|
"Anfänglich", // 260
|
||||||
"Immer", // 261
|
"Immer", // 261
|
||||||
"Uhr anzeigen", // 262
|
"Uhr anzeigen", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Český", // Czech
|
||||||
@@ -2065,7 +2149,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"KONEKTIVITA", // 195
|
"KONEKTIVITA", // 195
|
||||||
"DX REŽIM", // 196
|
"DX REŽIM", // 196
|
||||||
"Stationlist ID", // 197
|
"AUTO MEM", // 197
|
||||||
"AM ATT", // 198
|
"AM ATT", // 198
|
||||||
"FM deemfáze", // 199
|
"FM deemfáze", // 199
|
||||||
"Malé", // 200
|
"Malé", // 200
|
||||||
@@ -2131,7 +2215,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Počáteční", // 260
|
"Počáteční", // 260
|
||||||
"Vždy", //261
|
"Vždy", //261
|
||||||
"Zobrazit hodiny", // 262
|
"Zobrazit hodiny", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Magyar", // Hungarian
|
||||||
@@ -2331,7 +2427,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"CSATLAKOZÁS", // 195
|
"CSATLAKOZÁS", // 195
|
||||||
"DX MÓD", // 196
|
"DX MÓD", // 196
|
||||||
"Stationlist ID", // 197
|
"AUTO MEM", // 197
|
||||||
"AM AGC", // 198
|
"AM AGC", // 198
|
||||||
"FM kihangolás", // 199
|
"FM kihangolás", // 199
|
||||||
"Kicsi", // 200
|
"Kicsi", // 200
|
||||||
@@ -2397,7 +2493,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Kezdeti", // 260
|
"Kezdeti", // 260
|
||||||
"Mindig", //261
|
"Mindig", //261
|
||||||
"Óra mutatása", // 262
|
"Óra mutatása", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Français", // French
|
||||||
@@ -2597,7 +2705,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"CONNECTER", // 195
|
"CONNECTER", // 195
|
||||||
"DX MODE", // 196
|
"DX MODE", // 196
|
||||||
"Stationlist ID", // 197
|
"AUTO MEM", // 197
|
||||||
"AM ATT", // 198
|
"AM ATT", // 198
|
||||||
"FM déemphasie", // 199
|
"FM déemphasie", // 199
|
||||||
"Petites", // 200
|
"Petites", // 200
|
||||||
@@ -2663,7 +2771,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Initial", // 260
|
"Initial", // 260
|
||||||
"Toujours", // 261
|
"Toujours", // 261
|
||||||
"Afficher l'horloge", // 262
|
"Afficher l'horloge", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Български", // Bulgarian
|
||||||
@@ -2863,7 +2983,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"СВ (AM)", // 194
|
"СВ (AM)", // 194
|
||||||
"ВРЪЗКА", // 195
|
"ВРЪЗКА", // 195
|
||||||
"DX MODE", // 196
|
"DX MODE", // 196
|
||||||
"Stationlist Идентификатор", // 197
|
"AUTO MEM", // 197
|
||||||
"СВ атенюатор", // 198
|
"СВ атенюатор", // 198
|
||||||
"FM deemphasis", // 199
|
"FM deemphasis", // 199
|
||||||
"Small", // 200
|
"Small", // 200
|
||||||
@@ -2929,7 +3049,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Начален", // 260
|
"Начален", // 260
|
||||||
"Винаги", // 261
|
"Винаги", // 261
|
||||||
"Покажи часовника", // 262
|
"Покажи часовника", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Русский", // Russian
|
||||||
@@ -3129,7 +3261,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"КОННЕКТ", // 195
|
"КОННЕКТ", // 195
|
||||||
"DX MODE", // 196
|
"DX MODE", // 196
|
||||||
"Stationlist ID", // 197
|
"AUTO MEM", // 197
|
||||||
"AM аттеньюатор", // 198
|
"AM аттеньюатор", // 198
|
||||||
"FM deemphasis", // 199
|
"FM deemphasis", // 199
|
||||||
"Мало", // 200
|
"Мало", // 200
|
||||||
@@ -3195,7 +3327,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Начальный", // 260
|
"Начальный", // 260
|
||||||
"Всегда", // 261
|
"Всегда", // 261
|
||||||
"Показать часы", // 262
|
"Показать часы", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Українська", // Ukranian
|
||||||
@@ -3395,7 +3539,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"ПІДКЛЮЧЕННЯ", // 195
|
"ПІДКЛЮЧЕННЯ", // 195
|
||||||
"DX MODE", // 196
|
"DX MODE", // 196
|
||||||
"Stationlist ID", // 197
|
"AUTO MEM", // 197
|
||||||
"AM ATT", // 198
|
"AM ATT", // 198
|
||||||
"FM deemphasis", // 199
|
"FM deemphasis", // 199
|
||||||
"Мало", // 200
|
"Мало", // 200
|
||||||
@@ -3461,7 +3605,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Початковий", // 260
|
"Початковий", // 260
|
||||||
"Завжди", // 261
|
"Завжди", // 261
|
||||||
"Показати годинник", // 262
|
"Показати годинник", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Italiano", // Italian
|
||||||
@@ -3661,7 +3817,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"CONNETTI", // 195
|
"CONNETTI", // 195
|
||||||
"MODO DX", // 196
|
"MODO DX", // 196
|
||||||
"ID Stationlist", // 197
|
"AUTO MEM", // 197
|
||||||
"ATT AM", // 198
|
"ATT AM", // 198
|
||||||
"Deenfasi FM", // 199
|
"Deenfasi FM", // 199
|
||||||
"Piccolo", // 200
|
"Piccolo", // 200
|
||||||
@@ -3727,7 +3883,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Iniziale", // 260
|
"Iniziale", // 260
|
||||||
"Sempre", // 261
|
"Sempre", // 261
|
||||||
"Mostra l'orologio", // 262
|
"Mostra l'orologio", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Simplified Chinese", // Simplified Chinese
|
||||||
@@ -3927,7 +4095,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM 设置", // 194
|
"AM 设置", // 194
|
||||||
"连机模式", // 195
|
"连机模式", // 195
|
||||||
"FMDX 选项", // 196
|
"FMDX 选项", // 196
|
||||||
"Stationlist ID", // 197
|
"AUTO MEM", // 197
|
||||||
"AM天线衰减", // 198
|
"AM天线衰减", // 198
|
||||||
"FM去加重", // 199
|
"FM去加重", // 199
|
||||||
"少量", // 200
|
"少量", // 200
|
||||||
@@ -3993,7 +4161,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"初始", // 260
|
"初始", // 260
|
||||||
"始终", // 261
|
"始终", // 261
|
||||||
"显示时钟", // 262
|
"显示时钟", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Norsk", // Norwegian
|
||||||
@@ -4193,7 +4373,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"TILKOBLE", // 195
|
"TILKOBLE", // 195
|
||||||
"DX MODUS", // 196
|
"DX MODUS", // 196
|
||||||
"Stationlist ID", // 197
|
"AUTO MEM", // 197
|
||||||
"AM AGC", // 198
|
"AM AGC", // 198
|
||||||
"FM ettertrykkelse", // 199
|
"FM ettertrykkelse", // 199
|
||||||
"Lite", // 200
|
"Lite", // 200
|
||||||
@@ -4259,7 +4439,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Innledende", // 260
|
"Innledende", // 260
|
||||||
"Alltid", // 261
|
"Alltid", // 261
|
||||||
"Vis klokka", // 262
|
"Vis klokka", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Español", // Spanish
|
||||||
@@ -4459,7 +4651,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"CONECTAR", // 195
|
"CONECTAR", // 195
|
||||||
"DX MODE", // 196
|
"DX MODE", // 196
|
||||||
"ID de lista de estaciones", // 197
|
"AUTO MEM", // 197
|
||||||
"Atenuación de AM", // 198
|
"Atenuación de AM", // 198
|
||||||
"Despreocupación\nde FM", // 199
|
"Despreocupación\nde FM", // 199
|
||||||
"Pequeño", // 200
|
"Pequeño", // 200
|
||||||
@@ -4525,7 +4717,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Inicial", // 260
|
"Inicial", // 260
|
||||||
"Siempre", // 261
|
"Siempre", // 261
|
||||||
"Mostrar reloj", // 262
|
"Mostrar reloj", // 262
|
||||||
"Show long PS" // 263
|
"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
|
{ "Português", // Portuguese
|
||||||
@@ -4725,7 +4929,7 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"AM", // 194
|
"AM", // 194
|
||||||
"CONECTAR", // 195
|
"CONECTAR", // 195
|
||||||
"DX MODE", // 196
|
"DX MODE", // 196
|
||||||
"ID da lista de estações", // 197
|
"AUTO MEM", // 197
|
||||||
"Atenuação AM", // 198
|
"Atenuação AM", // 198
|
||||||
"Desênfase FM", // 199
|
"Desênfase FM", // 199
|
||||||
"Pequeno", // 200
|
"Pequeno", // 200
|
||||||
@@ -4791,7 +4995,19 @@ static const char* const myLanguage[18][264] PROGMEM = {
|
|||||||
"Inicial", // 260
|
"Inicial", // 260
|
||||||
"Sempre", // 261
|
"Sempre", // 261
|
||||||
"Mostrar relógio", // 262
|
"Mostrar relógio", // 262
|
||||||
"Show long PS" // 263
|
"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
|
||||||
Reference in New Issue
Block a user