Use existing function to generate switch name in YAML switch warning field

This commit is contained in:
Raphael Coeffic
2021-12-17 11:02:51 +01:00
parent 665b9ee4d1
commit 710677a1f7
4 changed files with 46 additions and 18 deletions
+40 -14
View File
@@ -421,6 +421,45 @@ char *getFlightModeString(char *dest, int8_t idx)
// }
#if !defined(PCBSKY9X)
int getRawSwitchIdx(char sw)
{
if (sw < 'A' || sw > 'Z')
return -1;
#if defined(PCBX7) && !defined(RADIO_TX12)
if (sw >= 'H')
return sw - 'H' + 5;
#if defined(RADIO_T12)
else if (sw == 'G')
#else
else if (sw == 'F')
#endif
return 4;
else
return sw - 'A';
#else
return sw - 'A';
#endif
}
char getRawSwitchFromIdx(int idx)
{
#if defined(PCBX7) && !defined(RADIO_TX12)
if (idx >= 5)
return 'H' + idx - 5;
else if (idx == 4)
#if defined(RADIO_T12)
return 'G';
#else
return 'F';
#endif
else
return 'A' + idx;
#else
return 'A' + idx;
#endif
}
char *getSwitchName(char *dest, swsrc_t idx)
{
div_t swinfo = switchInfo(idx);
@@ -429,20 +468,7 @@ char *getSwitchName(char *dest, swsrc_t idx)
strAppend(dest, g_eeGeneral.switchNames[swinfo.quot], LEN_SWITCH_NAME);
} else {
*dest++ = 'S';
#if defined(PCBX7) && !defined(RADIO_TX12)
if (swinfo.quot >= 5)
*dest++ = 'H' + swinfo.quot - 5;
else if (swinfo.quot == 4)
#if defined(RADIO_T12)
*dest++ = 'G';
#else
*dest++ = 'F';
#endif
else
*dest++ = 'A' + swinfo.quot;
#else
*dest++ = 'A' + swinfo.quot;
#endif
*dest++ = getRawSwitchFromIdx(swinfo.quot);
}
return dest;
}