У JAW на видео как будто сильная задержка между подключением девайса (по звуку) и началу опроса апдейтером.
У меня на 3-х машинах это происходит мгновенно, звук подключения usb еще не отыграл, а датафлэш уже считан. Антивирусы?
У JAW на видео как будто сильная задержка между подключением девайса (по звуку) и началу опроса апдейтером.
У меня на 3-х машинах это происходит мгновенно, звук подключения usb еще не отыграл, а датафлэш уже считан. Антивирусы?
Реальный дисплей, кстати, очень удобно при парении, все видно и ненужно быстро поворачивать
MicroSur
Патчики на rx200 для прошивки 3.13:mol:
Привет Microsur,
Можно ли сделать подобную прошивку, как 3,02 VTC мини для кубом? с напряжением батареи, температуры и т.д. и т.п.?
MicroSur
Так он небось для кубойда хочет, а не для кубойда мини.
yii переписывал десяток патчей и для 3.14 кубоида, в архиве редактора должны быть.
Мужики, где за этот язык узнать, на котором написаны прошивки? А то и ждать не хочется новых патчей, и напрягать всех не удобно.
Отправлено с моего GT-I9300 через Tapatalk
sLem
Я знаю что такое ассемблер и кодил под Z80 и i8080, так вот, посмотрев на ассемблер этих ARM процессоров я понял, что ничего с этим сделать не могу, т.к. архитектура очень специфическая. ARM, как вполне логично для RISC процессора не предназначен для программирования в кодах, или ассемблере. Плюс тут код, который нагенерён компилятором из программы написанной криворукими китайцами, что ещё более усложняет ситуацию.
JAW Не отпугивай так людей, патчи пишутся, переписываются, нужно время и желание. Если с нуля, как я, нужно иметь очень много желания :)
По первости перегонял чуть ли не в ручную прошивку в бинарный вид, чтобы шрифты отыскать...%)
ну вот и я открыл все это дело и вздрогнул, толи я что-то не так сделал, толи ну его в баню.
Протестируйте пожалуйста кто то патчик 75% яркость для
Как переписать патч на новую прошивку на примере патча 75% яркости экрана с RX200 3.10 -> 3.13 :actor:
Условно поделю патчи на простой, средний, сложный. Это средний, с применением вставки дополнительного кода.
Пример для простейшего патча тут: VTCFont: редактор, патчи, прошивка ББ от Joyetech, Wismec, Eleaf
Сложный отличается от среднего тем, что нужно найти множество соответствий между прошивками в коде, следить, чтобы регистры основной прошивки не ломались от действий в патче и еще много чего.
Потребуются:
- IDA (Interactive Disassembler).
- онлайн ресурс для поиска адресов ссылок, перевода HEX в ARM и наоборот Online ARM/Thumb Branch Finder!
- программа для расшифровки и зашифровки прошивок, например соответствующая кнопка в FWUpdater (в архиве с моим редактором VCTFont).
- редактор прошивок, для определения адресов и кодов символов, слов и применения патчей. Рекомендую VCTFont.
дополнительно
- полезный плагин к IDA для патчеписателей (удобно откатывать патчи из файла IDA) ida patcher | projects | sprawl
- исходный код на Си от ClockSelect для эвика мини, прошивка последняя 3.03: myevic/src at master . ClockSelect/myevic . GitHub
Загрузить чистую 3.10 прошивку в редактор, применить патч.
Закрыть окно патчера и перечитать прошивку http://i.imgur.com/t76Urva.png
Видим какой ненужный символ занят под дополнительный код для этого патча, в новой прошивке будем переносить в такой же.
применили патч
Посмотреть адреса патча, верхний блок - переход на дополнительную вставку, нижний - код этой вставки.
посмотрели адреса патча
Раскодировать и открыть прошивку 3.10 с патчем в IDA: VTCFont: редактор, патчи, прошивка ББ от Joyetech, Wismec, Eleaf
Найти первый адрес патча в этой прошивке.
нашли адрес перехода на вставку
Открыть новую 3.13 прошивку в VTCFont и узнать адрес для вставки кода, добавив к адресу этого символа 2 байта (2 байта занимает размер символа, не будем его трогать).
адрес будет 8558
Раскодировать и открыть новую прошивку в IDA, вторым окном.
Одна из сложных задач - найти ту же процедуру в новой прошивке. В данном случае оказалось достаточно произвести поиск по тексту "R0, #0xAF", он нашелся и оказался единственным. Не всегда так везет.
нашли соответствие в прошивках
Начнем менять код перехода на вставку. Теперь знаем откуда (4BDA) и помним куда (8558) надо перейти. Код перехода "B.W".
Загрузить в браузер страничку Online ARM/Thumb Branch Finder!
Ввести там эти значения, нажать Go и...
получили код перехода, 4 байта
Начинаем исправлять новую прошивку. Встать на адрес 4BDA, открыть вкладку Hex View, нажать F2, вписать полученные значения из браузера, снова F2 для сохранения (эти сохранения не трогают саму прошивку, это файл IDA).
исправили адрес перехода
Кликнуть 2 раза по этому новому адресу во вкладке ассемблера IDA-View - перешли на начало вставки. Видим адрес начала символа, его размер (2 байта) и адрес начала вставки.
сейчас там какой то бардак
Перейти в окно старой прошивки с патчем, так же двойной клик на адресе перехода - попадаем на вставку с кодом патча.
в старой прошивке всё красиво
Начать копировать патч по строкам. Перейти на вкладку Hex View, видим начало и конец вставки.
код вставки старого патча
Выделить первую строку байт в Hex View, скопировать (Ctrl+C), перейти на окно новой прошивки (проверить, что стоим на адресе начала вставки (8558) ), выполнить Edit->Patch program->Change byte
вызвать окно вставки байт
Вставить в это окно скопированную строку, применить.
изменение набора байт
Повторить операцию копирования-вставки остальных байт патча (не забыть перейти на следующую строку в Hex Edit).
Возвращаемся во вкладку ассемблера новой прошивки, теперь с патчем...
опять какой то бардак
Красными кружками выделены неверные адреса переходов (BL переход) и часть кода в виде данных (DCB).
Чтобы исправить вид кода, встать на адрес с DCB и нажать "C", подтвердить преобразование в код.
Исправить новые адреса. Вспомнить, какие они были в старой прошивке (47С4),
старый адрес перехода
снова найти визуальное соответствие с новой прошивкой - это будет адрес (4AF4)
новый адрес перехода
Лезем в браузер и вписываем данные для вычисления новых адресов переходов BL.
Первый будет: откуда (855A), куда (4AF4)
ищем новые адреса переходов BL
Вписать полученный код перехода в Hex View новой прошивки и повторить поиск переходов для остальных адресов BL.
Осталось исправить переход B.W из этой вставки обратно в основной код прошивки, сразу за адресом, откуда пришли - так же с помощью программы в браузере и меняя код перехода в Hex View.
B.W откуда (856A)
и куда (4BDE)
Теперь код патча выглядит красиво, можно выгонять патч в файл
запись файла изменений
Сохраненный dif-файл кинуть в папку Patches/Reuleaux_RX200_V3.13 и пропатчить им прошивку в патчере VTCFont.
Всё.
MicroSur
Супер инструкция, спасибо, очень подробно!:nice:
оффтопик: пока поставлю 3.10:D