motofan logo
> 

Написание флешера для Mpx220

Payback
сообщение 29.12.2006, 16:00


Интересующийся
**

Группа: Пользователи
Сообщений: 75
Регистрация: 11.12.2006
Пользователь №: 110 984
Модель телефона: IPhone 3GS

Рейтинг: 19



Уважаемые форумчане!
Я разобрался как происходит прошивание mpx220 и собираюсь написать свой UpgradeWizard, который заливает незашифрованные прошивки. Осталось решить последнюю проблему-
ее суть заключается в следующем: заливка прошивки происходит пакетами c максимальным размером по 261 байт.
Формат пакета следующий:
1)управляющий байт (например 22h-запись)>
2)размер передаваемых данных-1 (напр. FF будет означать что в пакете 256 байт)
3)повтор предыдущего значения (в примере опять же FF)
4)САМИ ДАННЫЕ, (Если нужно передать данные 123456, то в пакете они будут такими: 214365
......
5)CRC-контрольная сумма предназначенная для контроля целостности данных
6)CRC-повтор пред. значения


ПРОБЛЕМА заключается в том, как вычислить CRC?
Мне нужен подробный алгоритм для вычисления этой самой контрольной суммы. Я не силен в алгоритмах подсчета CRC, но мне кажется это ПОЛИНОМИНАЛЬНЫЙ АЛГОРИТМ, используемый для передачи данных через модем, что-то типа алгоритма CRC-8, хотя могу ошибаться.
Если поможете разобраться с данной проблемой, то в скором времени постараюсь написать флешер!!!

Вот несколько пакетов (шестнадцатиричный вид):

1й пакет(1 байт данных и 5 служебных байт):
41 00 00 01 0b 0b (41-упр. байт. 00-размер данных(00+1=1 байт) 01-данные, для которых считается CRC, 0b-контрольная сумма-надо определить как она считается)

2й пакет(256 байт данных и 5 служебных байт):
22 ff ff 00 00 00 00 00 (22-упр. байт. ff+1=размер данных(256 байт))
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 88 88 (88-контрольная сумма-надо определить как она считается)

3й пакет(256 байт данных и 5 служебных байт):
22 ff ff 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00
00 00 00 00 00 00 03 03
03 03 03 03 03 03 03 03
03 03 03 03 00 03 03 01
03 03 03 03 03 03 03 03
03 03 03 03 00 03 03 01
03 03 02 a8 a8 (a8-контрольная сумма-надо определить как она считается)


4й пакет(256 байт данных и 5 служебных байт):
22 ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff 88 88 (88-контрольная сумма-надо определить как она считается)

5й пакет(256 байт данных и 5 служебных байт):
22 ff ff fd e9 ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff ff ff ff ff ff
ff ff ff 0c 0c (0c-контрольная сумма-надо определить как она считается)
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить

Сообщений в этой теме


Ответ в темуСоздание новой темы
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 28.7.2025, 14:36

Форум живёт: