Lua EEPROM support in Companion added
This commit is contained in:
@@ -853,6 +853,17 @@ class ModuleData {
|
||||
void clear() { memset(this, 0, sizeof(ModuleData)); }
|
||||
};
|
||||
|
||||
#define C9X_MAX_SCRIPTS 3
|
||||
#define C9X_MAX_SCRIPT_INPUTS 10
|
||||
class ScriptData {
|
||||
public:
|
||||
ScriptData() { clear(); }
|
||||
char filename[10+1];
|
||||
char name[10+1];
|
||||
int inputs[C9X_MAX_SCRIPT_INPUTS];
|
||||
void clear() { memset(this, 0, sizeof(ScriptData)); }
|
||||
};
|
||||
|
||||
class ModelData {
|
||||
public:
|
||||
ModelData();
|
||||
@@ -903,6 +914,8 @@ class ModelData {
|
||||
|
||||
ModuleData moduleData[C9X_NUM_MODULES+1/*trainer*/];
|
||||
|
||||
ScriptData scriptData[C9X_MAX_SCRIPTS];
|
||||
|
||||
void clear();
|
||||
bool isempty();
|
||||
void setDefault(uint8_t id);
|
||||
|
||||
@@ -2185,10 +2185,17 @@ Open9xModelDataNew::Open9xModelDataNew(ModelData & modelData, BoardEnum board, u
|
||||
}
|
||||
|
||||
if (IS_TARANIS(board) && version >= 216) {
|
||||
// TODO ScriptData scriptsData[MAX_SCRIPTS];
|
||||
internalField.Append(new SpareBitsField<720>());
|
||||
for (int i=0; i<32; i++)
|
||||
for (int i=0; i<3; i++) {
|
||||
ScriptData & script = modelData.scriptData[i];
|
||||
internalField.Append(new ZCharField<10>(script.filename));
|
||||
internalField.Append(new ZCharField<10>(script.name));
|
||||
for (int j=0; j<10; j++) {
|
||||
internalField.Append(new SignedField<8>(script.inputs[j]));
|
||||
}
|
||||
}
|
||||
for (int i=0; i<32; i++) {
|
||||
internalField.Append(new ZCharField<4>(modelData.inputNames[i]));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user