Expand mode and submode mapping in Lotw controller

Added comprehensive handling for various digital modes and submodes in the Lotw controller, including detailed mappings for JT65, JT4, JT9, QRA64, ISCAT, OLIVIA, OPERA, ROS, HELL, DOMINO, CHIP, PAC, PAX, TOR, THRB, SSB, RTTY, CW, CLO, and V4. This improves the accuracy of mode translation and ensures better compatibility with a wider range of digital communication formats.
这个提交包含在:
Peter Goodhall 2025-07-29 16:01:57 +01:00
父节点 e47024ee0c
当前提交 f951018ed1

查看文件

@ -1044,6 +1044,33 @@ class Lotw extends CI_Controller {
} elseif ($submode == "Q65") {
return "Q65";
break;
} elseif ($submode == "FSQCALL") {
return "DATA";
break;
} elseif ($submode == "JS8") {
return "DATA";
break;
} elseif ($submode == "MFSK11") {
return "DATA";
break;
} elseif ($submode == "MFSK128") {
return "DATA";
break;
} elseif ($submode == "MFSK22") {
return "DATA";
break;
} elseif ($submode == "MFSK31") {
return "DATA";
break;
} elseif ($submode == "MFSK32") {
return "DATA";
break;
} elseif ($submode == "MFSK4") {
return "DATA";
break;
} elseif ($submode == "MFSK64") {
return "DATA";
break;
} else {
return "DATA";
break;
@ -1074,7 +1101,7 @@ class Lotw extends CI_Controller {
return "PSK125";
break;
} elseif ($submode == "PSK500") {
return "PSK500";
return "DATA";
break;
} elseif ($submode == "PSK63F") {
return "PSK63F";
@ -1103,10 +1130,325 @@ class Lotw extends CI_Controller {
} elseif ($submode == "PSK2K") {
return "PSK2K";
break;
} elseif ($submode == "PSK1000") {
return "DATA";
break;
} elseif ($submode == "PSK250") {
return "DATA";
break;
} elseif ($submode == "QPSK250") {
return "DATA";
break;
} elseif ($submode == "QPSK500") {
return "DATA";
break;
} elseif ($submode == "SIM31") {
return "DATA";
break;
} else {
return "DATA";
break;
}
case "JT65":
if ($submode == "JT65A") {
return "JT65A";
break;
} elseif ($submode == "JT65B") {
return "JT65B";
break;
} elseif ($submode == "JT65B2") {
return "JT65B2";
break;
} elseif ($submode == "JT65C") {
return "JT65C";
break;
} elseif ($submode == "JT65C2") {
return "JT65C2";
break;
} else {
return "JT65";
break;
}
case "JT4":
if ($submode == "JT4A") {
return "JT4A";
break;
} elseif ($submode == "JT4B") {
return "JT4B";
break;
} elseif ($submode == "JT4C") {
return "JT4C";
break;
} elseif ($submode == "JT4D") {
return "JT4D";
break;
} elseif ($submode == "JT4E") {
return "JT4E";
break;
} elseif ($submode == "JT4F") {
return "JT4F";
break;
} elseif ($submode == "JT4G") {
return "JT4G";
break;
} else {
return "JT4";
break;
}
case "JT9":
if ($submode == "JT9-1") {
return "JT9-1";
break;
} elseif ($submode == "JT9-10") {
return "JT9-10";
break;
} elseif ($submode == "JT9-2") {
return "JT9-2";
break;
} elseif ($submode == "JT9-30") {
return "JT9-30";
break;
} elseif ($submode == "JT9-5") {
return "JT9-5";
break;
} elseif ($submode == "JT9A") {
return "JT9A";
break;
} elseif ($submode == "JT9B") {
return "JT9B";
break;
} elseif ($submode == "JT9C") {
return "JT9C";
break;
} elseif ($submode == "JT9D") {
return "JT9D";
break;
} elseif ($submode == "JT9E") {
return "JT9E";
break;
} elseif ($submode == "JT9E FAST") {
return "JT9E FAST";
break;
} elseif ($submode == "JT9F") {
return "JT9F";
break;
} elseif ($submode == "JT9F FAST") {
return "JT9F FAST";
break;
} elseif ($submode == "JT9G") {
return "JT9G";
break;
} elseif ($submode == "JT9G FAST") {
return "JT9G FAST";
break;
} elseif ($submode == "JT9H") {
return "JT9H";
break;
} elseif ($submode == "JT9H FAST") {
return "JT9H FAST";
break;
} else {
return "JT9";
break;
}
case "QRA64":
if ($submode == "QRA64A") {
return "QRA64A";
break;
} elseif ($submode == "QRA64B") {
return "QRA64B";
break;
} elseif ($submode == "QRA64C") {
return "QRA64C";
break;
} elseif ($submode == "QRA64D") {
return "QRA64D";
break;
} elseif ($submode == "QRA64E") {
return "QRA64E";
break;
} else {
return "QRA64";
break;
}
case "ISCAT":
if ($submode == "ISCAT-A") {
return "ISCAT-A";
break;
} elseif ($submode == "ISCAT-B") {
return "ISCAT-B";
break;
} else {
return "ISCAT";
break;
}
case "OLIVIA":
if ($submode == "OLIVIA 16/1000") {
return "OLIVIA 16/1000";
break;
} elseif ($submode == "OLIVIA 16/500") {
return "OLIVIA 16/500";
break;
} elseif ($submode == "OLIVIA 32/1000") {
return "OLIVIA 32/1000";
break;
} elseif ($submode == "OLIVIA 4/125") {
return "OLIVIA 4/125";
break;
} elseif ($submode == "OLIVIA 4/250") {
return "OLIVIA 4/250";
break;
} elseif ($submode == "OLIVIA 8/250") {
return "OLIVIA 8/250";
break;
} elseif ($submode == "OLIVIA 8/500") {
return "OLIVIA 8/500";
break;
} else {
return "OLIVIA";
break;
}
case "OPERA":
if ($submode == "OPERA-BEACON") {
return "OPERA-BEACON";
break;
} elseif ($submode == "OPERA-QSO") {
return "OPERA-QSO";
break;
} else {
return "OPERA";
break;
}
case "ROS":
if ($submode == "ROS-EME") {
return "ROS-EME";
break;
} elseif ($submode == "ROS-HF") {
return "ROS-HF";
break;
} elseif ($submode == "ROS-MF") {
return "ROS-MF";
break;
} else {
return "ROS";
break;
}
case "HELL":
if ($submode == "FMHELL") {
return "FMHELL";
break;
} elseif ($submode == "FSKHELL") {
return "FSKHELL";
break;
} elseif ($submode == "HELL80") {
return "HELL80";
break;
} elseif ($submode == "HFSK") {
return "HFSK";
break;
} elseif ($submode == "PSKHELL") {
return "PSKHELL";
break;
} else {
return "HELL";
break;
}
case "DOMINO":
if ($submode == "DOMINOEX") {
return "DOMINOEX";
break;
} elseif ($submode == "DOMINOF") {
return "DOMINOF";
break;
} else {
return "DOMINO";
break;
}
case "CHIP":
if ($submode == "CHIP128") {
return "CHIP128";
break;
} elseif ($submode == "CHIP64") {
return "CHIP64";
break;
} else {
return "CHIP";
break;
}
case "PAC":
if ($submode == "PAC2") {
return "PACTOR";
break;
} elseif ($submode == "PAC3") {
return "PACTOR";
break;
} elseif ($submode == "PAC4") {
return "PACTOR";
break;
} else {
return "PACTOR";
break;
}
case "PAX":
if ($submode == "PAX2") {
return "PAX2";
break;
} else {
return "PAX";
break;
}
case "TOR":
if ($submode == "AMTORFEC") {
return "AMTOR";
break;
} elseif ($submode == "GTOR") {
return "GTOR";
break;
} else {
return "AMTOR";
break;
}
case "THRB":
if ($submode == "THRBX") {
return "THROB";
break;
} else {
return "THROB";
break;
}
case "SSB":
if ($submode == "LSB") {
return "LSB";
break;
} elseif ($submode == "USB") {
return "USB";
break;
} else {
return "SSB";
break;
}
case "RTTY":
if ($submode == "ASCI") {
return "ASCI";
break;
} else {
return "RTTY";
break;
}
case "CW":
if ($submode == "PCW") {
return "PCW";
break;
} else {
return "CW";
break;
}
case "CLO":
return "CLOVER";
break;
case "V4":
return "DATA";
break;
default:
return $mode;
endswitch;