Система патчей световой конфигурации

Это небольшая заметка адресуется тем пользователям, которые пользуются программой VAGHelper для создания нестандартных конфигураций. Возможность применить готовую модификацию (патч) появилась еще в версии V.0.0.1.11 от 28.04.2014, тем не менее, надо признать, система получилась неудобной и я не уверен, что ее вообще кто-то пользовался…

С выходом очередного обновления я планирую исправить эту ошибку и сделать систему модификаций максимально удобной и понятной. У некоторых читателей, наверное, уже возник вопрос: а зачем вообще оно надо, когда все можно настроить побитным вводом? Но согласитесь, выбрать один чек-бокс проще чем несколько =)

C выходом обновления файлы данных, используемые в VAGHelper поменяют свое расширение с XML на VXD, однако, внутри как и прежде будет жить все тот же XML. «Место жительства» файлов тоже изменится на data\[код языка]\lsg\preset\.

В отличии от предыдущей версии, в новой добавлено два ключевых поля в дополнение к старому ConfigName:

  • ConfigTargetBrand — фильтр по марке автомобиля, для которой может быть применен данный патч. Доступные варианты: audi, seat, skoda, vw. Можно не указывать ни одной марки и оставить поле пустым, в этом случае считается, что данный патч универсален для всей линейки PQ35. Возможно указание несколько марок, в качестве разделителя используется запятая, например: «skoda,vw». Допускается использование пробелов, при обработке поля они подавляются.
  • ConfigTargetModel — фильтр по модели автомобиля, для которой может быть применен данный патч. Как и в случае с ConfigTargetBrand, данное поле можно оставить пустым, в этом случае считается, что патч применяется для всех моделей, перечисленных в ConfigTargetBrand.
  • ConfigName — текстовое описание патча. Именно этот текст будет отображаться в VAGHelper.

Остальные поля не претерпели существенный изменений:

  • longCoding — зарезервировано, не используется;
  • longCoding — зарезервировано, не используется;
  • eeprom — основной блок, в которм хранятся непосредственно данные о патче.

В блоке eeprom перечисляются все исправления EEPROM, необходимые для работы патча. Надеюсь, что формат получился простым и наглядным. Общее правило: изменения для каждого выхода/выходов описываются в отдельном блоке Section.  В каждом блоке Section должны быть прописаны переменные address, contacts, func (+0 байт), mode0 (+1 байт), mode1 (+2 байт), desc и их значения. Исключение — это значение для переменной desc. Его добавлять необязательно, это значение нигде не выводится и введено для общей читабельности.

Собственно все. Если у Вас есть какие-либо пожелания, вопросы, а может даже готовые модификации, пишите. Форма для связи в правом нижнем углу =)