Added auto squelch

This commit is contained in:
Sjef Verhoeven PE5PVB
2024-05-08 23:03:18 +02:00
parent 18f0597cee
commit d1853c2340
6 changed files with 195 additions and 95 deletions
+126 -71
View File
@@ -55,6 +55,7 @@ bool afpage;
bool afscreen; bool afscreen;
bool aftest; bool aftest;
bool artheadold; bool artheadold;
bool autosquelch = true;
bool batterydetect = true; bool batterydetect = true;
bool beepresetstart; bool beepresetstart;
bool beepresetstop; bool beepresetstop;
@@ -363,6 +364,7 @@ unsigned int SWLowEdgeSet;
unsigned long afticker; unsigned long afticker;
unsigned long aftickerhold; unsigned long aftickerhold;
unsigned long aftimer; unsigned long aftimer;
unsigned long autosquelchtimer;
unsigned long eonticker; unsigned long eonticker;
unsigned long eontickerhold; unsigned long eontickerhold;
unsigned long flashingtimer; unsigned long flashingtimer;
@@ -504,6 +506,7 @@ void setup() {
scanmem = EEPROM.readByte(EE_BYTE_SCANMEM); scanmem = EEPROM.readByte(EE_BYTE_SCANMEM);
scancancel = EEPROM.readByte(EE_BYTE_SCANCANCEL); scancancel = EEPROM.readByte(EE_BYTE_SCANCANCEL);
scanmute = EEPROM.readByte(EE_BYTE_SCANMUTE); scanmute = EEPROM.readByte(EE_BYTE_SCANMUTE);
autosquelch = EEPROM.readByte(EE_BYTE_AUTOSQUELCH);
if (spispeed == SPI_SPEED_DEFAULT) { if (spispeed == SPI_SPEED_DEFAULT) {
tft.setSPISpeed(SPI_FREQUENCY / 1000000); tft.setSPISpeed(SPI_FREQUENCY / 1000000);
@@ -2039,7 +2042,7 @@ void SelectBand() {
case BAND_MW: freqold = frequency_MW; frequency_AM = frequency_MW; break; case BAND_MW: freqold = frequency_MW; frequency_AM = frequency_MW; break;
case BAND_SW: freqold = frequency_SW; frequency_AM = frequency_SW; break; case BAND_SW: freqold = frequency_SW; frequency_AM = frequency_SW; break;
#ifdef HAS_AIR_BAND #ifdef HAS_AIR_BAND
case BAND_AIR: freqold = frequency_AIR; frequency_AM = frequency_AIR;break; case BAND_AIR: freqold = frequency_AIR; frequency_AM = frequency_AIR; break;
#endif #endif
} }
LimitAMFrequency(); LimitAMFrequency();
@@ -3178,38 +3181,136 @@ void ShowModLevel() {
} }
} }
void showAutoSquelch(bool mode) {
if (language == LANGUAGE_CHS) SquelchSprite.loadFont(FONT16_CHS); else SquelchSprite.loadFont(FONT16);
if (mode) {
SquelchSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
} else {
SquelchSprite.setTextColor(BackgroundColor, BackgroundColor, false);
}
SquelchSprite.fillSprite(BackgroundColor);
SquelchSprite.drawString(String(myLanguage[language][86]), 0, 0);
SquelchSprite.pushSprite(235, 145);
}
void doSquelch() { void doSquelch() {
if (!XDRGTKUSB && !XDRGTKTCP && usesquelch) Squelch = analogRead(PIN_POT) / 4 - 100; if (!XDRGTKUSB && !XDRGTKTCP && usesquelch && !autosquelch) Squelch = analogRead(PIN_POT) / 4 - 100;
if (unit == 0) SquelchShow = Squelch / 10; if (unit == 0) SquelchShow = Squelch / 10;
if (unit == 1) SquelchShow = ((Squelch * 100) + 10875) / 1000; if (unit == 1) SquelchShow = ((Squelch * 100) + 10875) / 1000;
if (unit == 2) SquelchShow = round((float(Squelch) / 10.0 - 10.0 * log10(75) - 90.0) * 10.0) / 10; if (unit == 2) SquelchShow = round((float(Squelch) / 10.0 - 10.0 * log10(75) - 90.0) * 10.0) / 10;
if (Squelch > 920) Squelch = 920; if (Squelch > 920) Squelch = 920;
if (language == LANGUAGE_CHS) SquelchSprite.loadFont(FONT16_CHS); else SquelchSprite.loadFont(FONT16); if (autosquelch) {
if (band < BAND_GAP) {
if (!XDRGTKUSB && !XDRGTKTCP && usesquelch && (!scandxmode || (scandxmode && !scanmute))) { if ((USN < fmscansens * 30) && (WAM < 230) && (OStatus < 100 && OStatus > -100) && (!scandxmode || (scandxmode && !scanmute))) {
if (!screenmute && usesquelch && !advancedRDS && !afscreen) { if (SQ || BWreset) {
if (!menu && (Squelch > Squelchold + 2 || Squelch < Squelchold - 2)) { if (!seek) radio.setUnMute();
SquelchSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false); if (!screenmute && !seek) {
SquelchSprite.fillSprite(BackgroundColor); tft.drawBitmap(92, 4, Speaker, 26, 22, GreyoutColor);
if (Squelch == -100) { }
SquelchSprite.drawString(String(myLanguage[language][33]), 0, 0); autosquelchtimer = millis();
} else if (Squelch == 920) { SQ = false;
SquelchSprite.drawString("ST", 0, 0);
} else {
SquelchSprite.drawString(String(SquelchShow), 0, 0);
} }
if (Squelch != Squelchold) { } else {
SquelchSprite.pushSprite(235, 145); if ((!SQ || BWreset) && (millis() >= autosquelchtimer + 1000)) {
radio.setMute();
if (!screenmute && !seek) {
tft.drawBitmap(92, 4, Speaker, 26, 22, PrimaryColor);
}
autosquelchtimer = millis();
SQ = true;
} }
} }
Squelchold = Squelch; } else {
if ((USN < amscansens * 30) && (OStatus < 2 && OStatus > -2) && (!scandxmode || (scandxmode && !scanmute))) {
if (!seek) radio.setUnMute();
if (!screenmute && !seek) {
tft.drawBitmap(92, 4, Speaker, 26, 22, GreyoutColor);
}
SQ = false;
} else {
radio.setMute();
if (!screenmute && !seek) {
tft.drawBitmap(92, 4, Speaker, 26, 22, PrimaryColor);
}
SQ = true;
}
} }
} } else {
if (language == LANGUAGE_CHS) SquelchSprite.loadFont(FONT16_CHS); else SquelchSprite.loadFont(FONT16);
if ((XDRGTKUSB || XDRGTKTCP) && (!scandxmode || (scandxmode && !scanmute))) { if (!XDRGTKUSB && !XDRGTKTCP && usesquelch && (!scandxmode || (scandxmode && !scanmute))) {
if (!XDRMute) { if (!screenmute && usesquelch && !advancedRDS && !afscreen) {
if (Squelch != -1) { if (!menu && (Squelch > Squelchold + 2 || Squelch < Squelchold - 2)) {
SquelchSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
SquelchSprite.fillSprite(BackgroundColor);
if (Squelch == -100) {
SquelchSprite.drawString(String(myLanguage[language][33]), 0, 0);
} else if (Squelch == 920) {
SquelchSprite.drawString("ST", 0, 0);
} else {
SquelchSprite.drawString(String(SquelchShow), 0, 0);
}
if (Squelch != Squelchold) {
SquelchSprite.pushSprite(235, 145);
}
}
Squelchold = Squelch;
}
}
if ((XDRGTKUSB || XDRGTKTCP) && (!scandxmode || (scandxmode && !scanmute))) {
if (!XDRMute) {
if (Squelch != -1) {
if (Squelch < SStatus || Squelch == -100 || Squelch == 0) {
if (!seek) radio.setUnMute();
if (!screenmute && !seek) {
tft.drawBitmap(92, 4, Speaker, 26, 22, GreyoutColor);
}
SQ = false;
} else {
radio.setMute();
if (!screenmute && !seek) {
tft.drawBitmap(92, 4, Speaker, 26, 22, PrimaryColor);
}
SQ = true;
}
} else {
if (Stereostatus) {
radio.setUnMute();
if (!screenmute && !seek) {
tft.drawBitmap(92, 4, Speaker, 26, 22, GreyoutColor);
}
SQ = false;
} else {
radio.setMute();
if (!screenmute && !seek) {
tft.drawBitmap(92, 4, Speaker, 26, 22, PrimaryColor);
}
SQ = true;
}
}
if (!screenmute && usesquelch && !advancedRDS && !afscreen) {
if (Squelch != Squelchold) {
SquelchSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
SquelchSprite.fillSprite(BackgroundColor);
if (Squelch == -1) {
SquelchSprite.drawString("ST", 0, 0);
} else if (Squelch == 0) {
SquelchSprite.drawString(String(myLanguage[language][33]), 0, 0);
} else {
SquelchSprite.drawString(String(SquelchShow), 0, 0);
}
if (Squelch != Squelchold) {
SquelchSprite.pushSprite(235, 145);
}
Squelchold = Squelch;
}
}
}
} else if (usesquelch && (!scandxmode || (scandxmode && !scanmute))) {
if (Squelch != 920) {
if (Squelch < SStatus || Squelch == -100 || Squelch == 0) { if (Squelch < SStatus || Squelch == -100 || Squelch == 0) {
if (!seek) radio.setUnMute(); if (!seek) radio.setUnMute();
if (!screenmute && !seek) { if (!screenmute && !seek) {
@@ -3225,7 +3326,7 @@ void doSquelch() {
} }
} else { } else {
if (Stereostatus) { if (Stereostatus) {
radio.setUnMute(); if (!seek) radio.setUnMute();
if (!screenmute && !seek) { if (!screenmute && !seek) {
tft.drawBitmap(92, 4, Speaker, 26, 22, GreyoutColor); tft.drawBitmap(92, 4, Speaker, 26, 22, GreyoutColor);
} }
@@ -3238,54 +3339,6 @@ void doSquelch() {
SQ = true; SQ = true;
} }
} }
if (!screenmute && usesquelch && !advancedRDS && !afscreen) {
if (Squelch != Squelchold) {
SquelchSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
SquelchSprite.fillSprite(BackgroundColor);
if (Squelch == -1) {
SquelchSprite.drawString("ST", 0, 0);
} else if (Squelch == 0) {
SquelchSprite.drawString(String(myLanguage[language][33]), 0, 0);
} else {
SquelchSprite.drawString(String(SquelchShow), 0, 0);
}
if (Squelch != Squelchold) {
SquelchSprite.pushSprite(235, 145);
}
Squelchold = Squelch;
}
}
}
} else if (usesquelch && (!scandxmode || (scandxmode && !scanmute))) {
if (Squelch != 920) {
if (Squelch < SStatus || Squelch == -100 || Squelch == 0) {
if (!seek) radio.setUnMute();
if (!screenmute && !seek) {
tft.drawBitmap(92, 4, Speaker, 26, 22, GreyoutColor);
}
SQ = false;
} else {
radio.setMute();
if (!screenmute && !seek) {
tft.drawBitmap(92, 4, Speaker, 26, 22, PrimaryColor);
}
SQ = true;
}
} else {
if (Stereostatus) {
if (!seek) radio.setUnMute();
if (!screenmute && !seek) {
tft.drawBitmap(92, 4, Speaker, 26, 22, GreyoutColor);
}
SQ = false;
} else {
radio.setMute();
if (!screenmute && !seek) {
tft.drawBitmap(92, 4, Speaker, 26, 22, PrimaryColor);
}
SQ = true;
}
} }
} }
SquelchSprite.unloadFont(); SquelchSprite.unloadFont();
@@ -4056,6 +4109,7 @@ void DefaultSettings(byte userhardwaremodel) {
EEPROM.writeByte(EE_BYTE_SCANMEM, 1); EEPROM.writeByte(EE_BYTE_SCANMEM, 1);
EEPROM.writeByte(EE_BYTE_SCANCANCEL, 0); EEPROM.writeByte(EE_BYTE_SCANCANCEL, 0);
EEPROM.writeByte(EE_BYTE_SCANMUTE, 0); EEPROM.writeByte(EE_BYTE_SCANMUTE, 0);
EEPROM.writeByte(EE_BYTE_AUTOSQUELCH, 0);
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);
@@ -4285,6 +4339,7 @@ void endMenu() {
EEPROM.writeByte(EE_BYTE_SCANMEM, scanmem); EEPROM.writeByte(EE_BYTE_SCANMEM, scanmem);
EEPROM.writeByte(EE_BYTE_SCANCANCEL, scancancel); EEPROM.writeByte(EE_BYTE_SCANCANCEL, scancancel);
EEPROM.writeByte(EE_BYTE_SCANMUTE, scanmute); EEPROM.writeByte(EE_BYTE_SCANMUTE, scanmute);
EEPROM.writeByte(EE_BYTE_AUTOSQUELCH, autosquelch);
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();
+24
View File
@@ -444,6 +444,30 @@ void XDRGTKRoutine() {
updateEQ(); updateEQ();
break; break;
case 'H':
byte autosq_read;
autosq_read = atol(buff + 1);
if (autosq_read == 0) {
autosquelch = false;
DataPrint("H0\n");
if (!screenmute) {
if (!usesquelch) {
tftPrint(-1, "SQ:", 212, 145, BackgroundColor, BackgroundColor, 16);
showAutoSquelch(0);
} else {
Squelch = -150;
}
}
} else {
autosquelch = true;
DataPrint("H1\n");
if (!screenmute) {
tftPrint(-1, "SQ:", 212, 145, ActiveColor, ActiveColorSmooth, 16);
showAutoSquelch(1);
}
}
break;
case 'M': case 'M':
byte XDRband; byte XDRband;
XDRband = atol(buff + 1); XDRband = atol(buff + 1);
+2
View File
@@ -13,6 +13,7 @@
extern bool advancedRDS; extern bool advancedRDS;
extern bool afscreen; extern bool afscreen;
extern bool aftest; extern bool aftest;
extern bool autosquelch;
extern bool BWreset; extern bool BWreset;
extern bool direction; extern bool direction;
extern bool externaltune; extern bool externaltune;
@@ -132,5 +133,6 @@ extern void MuteScreen(bool setting);
extern void updateiMS(); extern void updateiMS();
extern void updateEQ(); extern void updateEQ();
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 showAutoSquelch(bool mode);
#endif #endif
+5 -4
View File
@@ -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 2219 // Total occupied eeprom bytes #define EE_TOTAL_CNT 2220 // Total occupied eeprom bytes
#else #else
#define EE_TOTAL_CNT 2214 // Total occupied eeprom bytes #define EE_TOTAL_CNT 2215 // Total occupied eeprom bytes
#endif #endif
#define EE_PRESETS_BAND_START 0 // 99 * 1 byte #define EE_PRESETS_BAND_START 0 // 99 * 1 byte
@@ -310,9 +310,10 @@
#define EE_BYTE_SCANMEM 2211 #define EE_BYTE_SCANMEM 2211
#define EE_BYTE_SCANCANCEL 2212 #define EE_BYTE_SCANCANCEL 2212
#define EE_BYTE_SCANMUTE 2213 #define EE_BYTE_SCANMUTE 2213
#define EE_BYTE_AUTOSQUELCH 2214
#ifdef HAS_AIR_BAND #ifdef HAS_AIR_BAND
#define EE_BYTE_AIRSTEPSIZE 2114 #define EE_BYTE_AIRSTEPSIZE 2115
#define EE_UINT16_FREQUENCY_AIR 2215 #define EE_UINT16_FREQUENCY_AIR 2216
#endif #endif
// End of EEPROM index defines // End of EEPROM index defines
+29 -13
View File
@@ -792,7 +792,7 @@ void ShowOneLine(byte position, byte item, bool selected) {
FullLineSprite.setTextDatum(TR_DATUM); FullLineSprite.setTextDatum(TR_DATUM);
FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false); FullLineSprite.setTextColor(PrimaryColor, PrimaryColorSmooth, false);
FullLineSprite.drawString((usesquelch ? myLanguage[language][42] : myLanguage[language][30]), 298, 3); if (autosquelch) FullLineSprite.drawString(myLanguage[language][86], 298, 3); else FullLineSprite.drawString((usesquelch ? myLanguage[language][42] : myLanguage[language][30]), 298, 3);
break; break;
case AUDIOSETTINGS: case AUDIOSETTINGS:
@@ -1225,7 +1225,7 @@ void ShowOneLine(byte position, byte item, bool selected) {
case AM_BAND_SW: FullLineSprite.drawString(myLanguage[language][104], 298, 3); break; case AM_BAND_SW: FullLineSprite.drawString(myLanguage[language][104], 298, 3); break;
case AM_BAND_NONE: FullLineSprite.drawString(myLanguage[language][83], 298, 3); break; case AM_BAND_NONE: FullLineSprite.drawString(myLanguage[language][83], 298, 3); break;
} }
break; break;
#endif #endif
case DISPLAYSETTINGS: case DISPLAYSETTINGS:
@@ -1576,7 +1576,7 @@ void BuildDisplay() {
} }
} }
} }
if (usesquelch) tftPrint(-1, "SQ:", 212, 145, ActiveColor, ActiveColorSmooth, 16); if (usesquelch || autosquelch) tftPrint(-1, "SQ:", 212, 145, ActiveColor, ActiveColorSmooth, 16);
tftPrint(1, "C/N", 270, 163, ActiveColor, ActiveColorSmooth, 16); tftPrint(1, "C/N", 270, 163, ActiveColor, ActiveColorSmooth, 16);
tftPrint(-1, "dB", 300, 163, ActiveColor, ActiveColorSmooth, 16); tftPrint(-1, "dB", 300, 163, ActiveColor, ActiveColorSmooth, 16);
if (region == REGION_EU) tftPrint(-1, "PI:", 212, 193, ActiveColor, ActiveColorSmooth, 16); if (region == REGION_EU) tftPrint(-1, "PI:", 212, 193, ActiveColor, ActiveColorSmooth, 16);
@@ -1652,10 +1652,12 @@ void BuildDisplay() {
tftPrint(-1, "MHz", 258, 76, ActiveColor, ActiveColorSmooth, 28); tftPrint(-1, "MHz", 258, 76, ActiveColor, ActiveColorSmooth, 28);
else tftPrint(-1, "KHz", 258, 76, ActiveColor, ActiveColorSmooth, 28); else tftPrint(-1, "KHz", 258, 76, ActiveColor, ActiveColorSmooth, 28);
#else #else
tftPrint(-1, "KHz", 258, 76, ActiveColor, ActiveColorSmooth, 28); tftPrint(-1, "KHz", 258, 76, ActiveColor, ActiveColorSmooth, 28);
#endif #endif
} }
if (autosquelch) showAutoSquelch(1);
RDSstatusold = false; RDSstatusold = false;
Stereostatusold = false; Stereostatusold = false;
LowLevelInit = true; LowLevelInit = true;
@@ -1771,8 +1773,16 @@ void MenuUp() {
break; break;
case ITEM4: case ITEM4:
usesquelch = !usesquelch; if (autosquelch && !usesquelch) {
OneBigLineSprite.drawString((usesquelch ? myLanguage[language][42] : myLanguage[language][30]), 135, 0); usesquelch = true;
autosquelch = false;
} else if (usesquelch && !autosquelch) {
usesquelch = false;
} else {
autosquelch = true;
}
if (autosquelch) OneBigLineSprite.drawString(myLanguage[language][86], 135, 0); else OneBigLineSprite.drawString((usesquelch ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
OneBigLineSprite.pushSprite(24, 118); OneBigLineSprite.pushSprite(24, 118);
break; break;
@@ -1820,7 +1830,7 @@ void MenuUp() {
if (bandAM > AM_BAND_CNT - 1) bandAM = AM_BAND_ALL; if (bandAM > AM_BAND_CNT - 1) bandAM = AM_BAND_ALL;
#ifdef HAS_AIR_BAND #ifdef HAS_AIR_BAND
switch (bandAM) { switch (bandAM) {
case AM_BAND_ALL: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][104]+ String(",") + myLanguage[language][223], 135, 0); break; case AM_BAND_ALL: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][104] + String(",") + myLanguage[language][223], 135, 0); break;
case AM_BAND_LW_MW_SW: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][104], 135, 0); break; case AM_BAND_LW_MW_SW: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][104], 135, 0); break;
case AM_BAND_LW_MW_AIR: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][223], 135, 0); break; case AM_BAND_LW_MW_AIR: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][223], 135, 0); break;
case AM_BAND_LW_SW_AIR: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][104] + String(",") + myLanguage[language][223], 135, 0); break; case AM_BAND_LW_SW_AIR: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][104] + String(",") + myLanguage[language][223], 135, 0); break;
@@ -2592,9 +2602,16 @@ void MenuDown() {
break; break;
case ITEM4: case ITEM4:
usesquelch = !usesquelch; if (autosquelch && !usesquelch) {
usesquelch = true;
autosquelch = false;
} else if (usesquelch && !autosquelch) {
usesquelch = false;
} else {
autosquelch = true;
}
OneBigLineSprite.drawString((usesquelch ? myLanguage[language][42] : myLanguage[language][30]), 135, 0); if (autosquelch) OneBigLineSprite.drawString(myLanguage[language][86], 135, 0); else OneBigLineSprite.drawString((usesquelch ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
OneBigLineSprite.pushSprite(24, 118); OneBigLineSprite.pushSprite(24, 118);
break; break;
@@ -2643,7 +2660,7 @@ void MenuDown() {
#ifdef HAS_AIR_BAND #ifdef HAS_AIR_BAND
switch (bandAM) { switch (bandAM) {
case AM_BAND_ALL: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][104]+ String(",") + myLanguage[language][223], 135, 0); break; case AM_BAND_ALL: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][104] + String(",") + myLanguage[language][223], 135, 0); break;
case AM_BAND_LW_MW_SW: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][104], 135, 0); break; case AM_BAND_LW_MW_SW: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][104], 135, 0); break;
case AM_BAND_LW_MW_AIR: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][223], 135, 0); break; case AM_BAND_LW_MW_AIR: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][223], 135, 0); break;
case AM_BAND_LW_SW_AIR: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][104] + String(",") + myLanguage[language][223], 135, 0); break; case AM_BAND_LW_SW_AIR: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][104] + String(",") + myLanguage[language][223], 135, 0); break;
@@ -3486,8 +3503,7 @@ void DoMenu() {
case ITEM4: case ITEM4:
Infoboxprint(myLanguage[language][62]); Infoboxprint(myLanguage[language][62]);
if (autosquelch) OneBigLineSprite.drawString(myLanguage[language][86], 135, 0); else OneBigLineSprite.drawString((usesquelch ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
OneBigLineSprite.drawString((usesquelch ? myLanguage[language][42] : myLanguage[language][30]), 135, 0);
OneBigLineSprite.pushSprite(24, 118); OneBigLineSprite.pushSprite(24, 118);
break; break;
@@ -3532,7 +3548,7 @@ void DoMenu() {
#ifdef HAS_AIR_BAND #ifdef HAS_AIR_BAND
switch (bandAM) { switch (bandAM) {
case AM_BAND_ALL: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][104]+ String(",") + myLanguage[language][223], 135, 0); break; case AM_BAND_ALL: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][104] + String(",") + myLanguage[language][223], 135, 0); break;
case AM_BAND_LW_MW_SW: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][104], 135, 0); break; case AM_BAND_LW_MW_SW: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][104], 135, 0); break;
case AM_BAND_LW_MW_AIR: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][223], 135, 0); break; case AM_BAND_LW_MW_AIR: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][103] + String(",") + myLanguage[language][223], 135, 0); break;
case AM_BAND_LW_SW_AIR: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][104] + String(",") + myLanguage[language][223], 135, 0); break; case AM_BAND_LW_SW_AIR: OneBigLineSprite.drawString(myLanguage[language][102] + String(",") + myLanguage[language][104] + String(",") + myLanguage[language][223], 135, 0); break;
+2
View File
@@ -32,6 +32,7 @@ extern bool afmethodBold;
extern bool afpage; extern bool afpage;
extern bool afscreen; extern bool afscreen;
extern bool artheadold; extern bool artheadold;
extern bool autosquelch;
extern bool BWreset; extern bool BWreset;
extern bool change; extern bool change;
extern bool compressedold; extern bool compressedold;
@@ -230,4 +231,5 @@ extern void DoMemoryPosTune();
extern void UpdateFonts(bool mode); 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); 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);
#endif #endif