Hardening
This commit is contained in:
@@ -87,7 +87,7 @@ void menuModelModuleOptions(event_t event)
|
||||
uint8_t modelId = reusableBuffer.hardwareAndSettings.modules[g_moduleIdx].information.modelID;
|
||||
// uint8_t variant = reusableBuffer.hardwareAndSettings.modules[g_moduleIdx].information.variant;
|
||||
|
||||
uint8_t optionsAvailable = moduleOptions[modelId] & ((1 << MODULE_OPTION_EXTERNAL_ANTENNA) | (1 << MODULE_OPTION_POWER));
|
||||
uint8_t optionsAvailable = getModuleOptions(modelId) & ((1 << MODULE_OPTION_EXTERNAL_ANTENNA) | (1 << MODULE_OPTION_POWER));
|
||||
|
||||
SUBMENU_NOTITLE(ITEM_MODULE_SETTINGS_COUNT, {
|
||||
!optionsAvailable ? (uint8_t)0 : IF_MODULE_OPTIONS(MODULE_OPTION_EXTERNAL_ANTENNA, 0),
|
||||
|
||||
@@ -242,7 +242,7 @@ static const uint8_t moduleOptions[] = {
|
||||
#if defined(SIMU)
|
||||
0b11111111, // None = display all options on SIMU
|
||||
#else
|
||||
0b00000000, // None = display all options on SIMU
|
||||
0b00000000, // None = no option available on unknown modules
|
||||
#endif
|
||||
0b11110001, // XJT
|
||||
0b11110001, // ISRM
|
||||
@@ -254,9 +254,17 @@ static const uint8_t moduleOptions[] = {
|
||||
0b11110100, // ISRM-N
|
||||
};
|
||||
|
||||
inline uint8_t getModuleOptions(uint8_t modelId)
|
||||
{
|
||||
if (modelId < DIM(moduleOptions))
|
||||
return moduleOptions[modelId];
|
||||
else
|
||||
return moduleOptions[0];
|
||||
}
|
||||
|
||||
inline bool isModuleOptionAvailable(uint8_t modelId, uint8_t option)
|
||||
{
|
||||
return moduleOptions[modelId] & (1 << option);
|
||||
return getModuleOptions(modelId) & (1 << option);
|
||||
}
|
||||
|
||||
enum {
|
||||
@@ -300,6 +308,14 @@ static const uint8_t receiverOptions[] = {
|
||||
0b11111111, // R9-MM+OTA
|
||||
};
|
||||
|
||||
inline uint8_t getReceiverOptions(uint8_t modelId)
|
||||
{
|
||||
if (modelId < DIM(receiverOptions))
|
||||
return receiverOptions[modelId];
|
||||
else
|
||||
return receiverOptions[0];
|
||||
}
|
||||
|
||||
inline bool isReceiverOptionAvailable(uint8_t modelId, uint8_t option)
|
||||
{
|
||||
return receiverOptions[modelId] & (1 << option);
|
||||
|
||||
@@ -102,12 +102,13 @@ static const char * const PXX2receiversModels[] = {
|
||||
enum PXX2ModuleModelID {
|
||||
PXX2_MODULE_NONE,
|
||||
PXX2_MODULE_XJT,
|
||||
PXX2_MODULE_IXJT,
|
||||
PXX2_MODULE_IXJT_PRO,
|
||||
PXX2_MODULE_IXJT_S,
|
||||
PXX2_MODULE_ISRM,
|
||||
PXX2_MODULE_ISRM_PRO,
|
||||
PXX2_MODULE_ISRM_S,
|
||||
PXX2_MODULE_R9M,
|
||||
PXX2_MODULE_R9M_LITE,
|
||||
PXX2_MODULE_R9M_LITE_PRO,
|
||||
PXX2_MODULE_ISRM_N
|
||||
};
|
||||
|
||||
enum PXX2Variant {
|
||||
|
||||
Reference in New Issue
Block a user