Регистрация: 03.03.2010
Сообщений: 111
Вы сказали Спасибо: 2
Поблагодарили 79 раз(а) в 41 сообщениях
Сила репутации: 1Репутация: 79 
(скоро придёт к известности)
|
Сообщение от Alezhek
может все-таки еще раз проверить и команду Verify?
[IMG]  [/IMG]
ведь судя по доку.. проверять можно от 1 байта?
|
Что же ты примечание (Note) в вышеприведенный фрагмент не включил ? Сразу бы все понятно стало.... короче вот тебе фрагмент переписки с разработчиком FlashProg, а он побольше всех нас в неках шарит...
я конечно принял эту инфу к сведению но все же решил сам проверить, так вот методом научного тыка и нашлись эти 4 байта достаточные для верификации...
свежий лог
22.12.2010 13:42:13 49333,39 send: 010120DF03
22.12.2010 13:42:13 49333,56 read status command: 020106F903
22.12.2010 13:42:13 49333,56 Chip erase successful...
22.12.2010 13:42:29 49349,19 Read from file 8 byte...
22.12.2010 13:42:51 49371 send command to write: 010740000000003FFF7B03
22.12.2010 13:42:51 49371,02 read status command: 020106F903
22.12.2010 13:42:51 49371,02 send data frame: 0208019B5E011620FE10B903
22.12.2010 13:42:51 49371,05 get status data frame: 02020606F203
22.12.2010 13:42:51 49371,05 data frame write successful...
22.12.2010 13:42:51 49371,25 get status all data frame: 020106F903
22.12.2010 13:42:51 49371,27 All data write successful...
22.12.2010 13:42:58 49378,05 Read from file 1 byte...
22.12.2010 13:42:58 49378,05 send command to verify: 010713000000003FFFA803
22.12.2010 13:42:58 49378,08 read status command: 020106F903
22.12.2010 13:42:58 49378,08 send data frame: 020101FE03 SentBytes = 5
22.12.2010 13:42:58 49378,16 get status data frame: 0202060FE903
22.12.2010 13:42:58 49378,16 data frame verify error...
22.12.2010 13:43:01 49381,36 Read from file 2 byte...
22.12.2010 13:43:01 49381,36 send command to verify: 010713000000003FFFA803
22.12.2010 13:43:01 49381,38 read status command: 020106F903
22.12.2010 13:43:01 49381,38 send data frame: 0202019B6203 SentBytes = 6
22.12.2010 13:43:01 49381,47 get status data frame: 0202060FE903
22.12.2010 13:43:01 49381,47 data frame verify error...
22.12.2010 13:43:07 49387,52 Read from file 3 byte...
22.12.2010 13:43:07 49387,53 send command to verify: 010713000000003FFFA803
22.12.2010 13:43:07 49387,55 read status command: 020106F903
22.12.2010 13:43:07 49387,55 send data frame: 0203019B5E0303 SentBytes = 7
22.12.2010 13:43:07 49387,63 get status data frame: 0202060FE903
22.12.2010 13:43:07 49387,63 data frame verify error...
22.12.2010 13:43:10 49390,27 Read from file 4 byte...
22.12.2010 13:43:10 49390,27 send command to verify: 010713000000003FFFA803
22.12.2010 13:43:10 49390,3 read status command: 020106F903
22.12.2010 13:43:10 49390,3 send data frame: 0204019B5E010103 SentBytes = 8
22.12.2010 13:43:10 49390,31 get status data frame: 02020606F203
22.12.2010 13:43:10 49390,31 data frame verify successful...
22.12.2010 13:43:13 49393,25 Read from file 5 byte...
22.12.2010 13:43:13 49393,25 send command to verify: 010713000000003FFFA803
22.12.2010 13:43:13 49393,27 read status command: 020106F903
22.12.2010 13:43:13 49393,27 send data frame: 0205019B5E0116EA03 SentBytes = 9
22.12.2010 13:43:13 49393,36 get status data frame: 0202060FE903
22.12.2010 13:43:13 49393,36 data frame verify error...
22.12.2010 13:43:15 49395,95 Read from file 6 byte...
22.12.2010 13:43:15 49395,95 send command to verify: 010713000000003FFFA803
22.12.2010 13:43:15 49395,97 read status command: 020106F903
22.12.2010 13:43:15 49395,97 send data frame: 0206019B5E011620C903 SentBytes = 10
22.12.2010 13:43:16 49396,06 get status data frame: 0202060FE903
22.12.2010 13:43:16 49396,06 data frame verify error...
22.12.2010 13:43:19 49399,33 Read from file 8 byte...
22.12.2010 13:43:19 49399,33 send command to verify: 010713000000003FFFA803
22.12.2010 13:43:19 49399,34 read status command: 020106F903
22.12.2010 13:43:19 49399,34 send data frame: 0208019B5E011620FE10B903 SentBytes = 12
22.12.2010 13:43:19 49399,38 get status data frame: 02020606F203
22.12.2010 13:43:19 49399,38 data frame verify successful...
22.12.2010 13:43:30 49410,86 Read from file 4 byte...
22.12.2010 13:43:32 49412,86 send command to write: 010740000400003FFF7703
22.12.2010 13:43:32 49412,88 read status command: 020106F903
22.12.2010 13:43:32 49412,89 send data frame: 02048000FFFF7E03
22.12.2010 13:43:32 49412,91 get status data frame: 02020606F203
22.12.2010 13:43:32 49412,91 data frame write successful...
22.12.2010 13:43:33 49413,05 get status all data frame: 020106F903
22.12.2010 13:43:33 49413,05 All data write successful...
22.12.2010 13:43:37 49417,63 Read from file 4 byte...
22.12.2010 13:43:37 49417,63 send command to verify: 0107130004000007FFDC03
22.12.2010 13:43:37 49417,64 read status command: 020106F903
22.12.2010 13:43:37 49417,64 send data frame: 02048000FFFF7E03 SentBytes = 8
22.12.2010 13:43:37 49417,67 get status data frame: 02020606F203
22.12.2010 13:43:37 49417,67 data frame verify successful...
22.12.2010 13:43:42 49422,38 Read from file 4 byte...
22.12.2010 13:43:42 49422,39 send command to verify: 0107130004000007FFDC03
22.12.2010 13:43:42 49422,41 read status command: 020106F903
22.12.2010 13:43:42 49422,41 send data frame: 0204019B5E010103 SentBytes = 8
22.12.2010 13:43:42 49422,44 get status data frame: 0202060FE903
22.12.2010 13:43:42 49422,44 data frame verify error...
22.12.2010 13:43:49 49429,22 Read from file 4 byte...
22.12.2010 13:43:49 49429,22 send command to verify: 0107130004000007FFDC03
22.12.2010 13:43:49 49429,25 read status command: 020106F903
22.12.2010 13:43:49 49429,25 send data frame: 02048000FFFF7E03 SentBytes = 8
22.12.2010 13:43:49 49429,27 get status data frame: 02020606F203
22.12.2010 13:43:49 49429,28 data frame verify successful...
22.12.2010 13:43:51 49431,69 send command to verify: 0107130004000007FFDC03
22.12.2010 13:43:51 49431,72 read status command: 020106F903
22.12.2010 13:43:51 49431,72 send data frame: 02048000FFFF7E03 SentBytes = 8
22.12.2010 13:43:51 49431,73 get status data frame: 02020606F203
22.12.2010 13:43:51 49431,73 data frame verify successful...
22.12.2010 13:43:51 49431,73 send command to verify: 0107130004000007FFDC03
22.12.2010 13:43:51 49431,77 read status command: 020106F903
22.12.2010 13:43:51 49431,77 send data frame: 0201807F17 SentBytes = 5
22.12.2010 13:43:51 49431,78 get status data frame: 02020606F203
22.12.2010 13:43:51 49431,78 send data frame: 020100FF17 SentBytes = 5
22.12.2010 13:43:51 49431,81 get status data frame: 02020606F203
22.12.2010 13:43:51 49431,81 send data frame: 0201FF0017 SentBytes = 5
22.12.2010 13:43:51 49431,84 get status data frame: 02020606F203
22.12.2010 13:43:51 49431,84 send data frame: 0201FF0003 SentBytes = 5
22.12.2010 13:43:51 49431,86 get status data frame: 0202060FE903
22.12.2010 13:43:51 49431,86 data frame verify error...
Лень писать комменты в логе, тот кто разбирается прекрасно все поймет - чип вначале полностью стирается, потом во всю память пишется 8 тестовых байт (они пишутся в первый блок), дальше идут попытки верификации заведомо правильными байтами: 1 байт, 2 байта, 3, 4, 5, 6, 8 - где 4 и 8 там успех, потом во второй блок пишутся других 4 байта и так же верифицируются правильными и неправильными значениями ну и напоследок прототип брута - вот тут очень интересный результат - если сразу верифицировать 4 байта - то все нормально , а если посылать побайтно правильные байты то в результате будет провал...
Ну и еще интересное - вспомнил как гонял батарейку по однобайтовым командам и решил так же пробить чип на недокументированные команды, в итоге нашлась пара таких команд A4h и 9Eh
лог по командам
21.12.2010 16:42:31 60151,97 send command: 0101A25D03
21.12.2010 16:42:32 60152,02 read status command: 020104FB03
21.12.2010 16:42:32 60152,02 send command: 0101A35C03
21.12.2010 16:42:32 60152,06 read status command: 020104FB03
21.12.2010 16:42:32 60152,06 send command: 0101A45B03
21.12.2010 16:42:32 60152,11 read status command: 020105FA03
21.12.2010 16:42:32 60152,11 send command: 0101A55A03
21.12.2010 16:42:32 60152,16 read status command: 020104FB03
21.12.2010 16:42:32 60152,16 send command: 0101A65903
21.12.2010 16:42:32 60152,2 read status command: 020104FB03
21.12.2010 16:42:32 60152,2 send command: 0101A75803
21.12.2010 16:42:32 60152,25 read status command: 020104FB03
21.12.2010 16:42:32 60152,25 send command: 0101A85703
21.12.2010 16:42:32 60152,3 read status command: 020104FB03
21.12.2010 16:42:32 60152,3 send command: 0101A95603
21.12.2010 16:42:32 60152,34 read status command: 020104FB03
21.12.2010 16:42:32 60152,34 send command: 0101AA5503
21.12.2010 16:42:32 60152,39 read status command: 020104FB03
21.12.2010 16:42:32 60152,39 send command: 0101AB5403
21.12.2010 16:42:32 60152,44 read status command: 020104FB03
21.12.2010 16:42:32 60152,44 send command: 0101AC5303
21.12.2010 16:42:32 60152,48 read status command: 020104FB03
21.12.2010 16:42:32 60152,48 send command: 0101AD5203
21.12.2010 16:42:32 60152,53 read status command: 020104FB03
21.12.2010 16:42:32 60152,53 send command: 0101AE5103
21.12.2010 16:42:32 60152,58 read status command: 020104FB03
21.12.2010 16:42:32 60152,58 send command: 0101AF5003
21.12.2010 16:42:32 60152,63 read status command: 020104FB03
21.12.2010 16:42:32 60152,63 send command: 0101B04F03
21.12.2010 16:42:32 60152,67 read status command: 020105FA03
21.12.2010 16:42:32 60152,67 send command: 0101B14E03
21.12.2010 16:42:32 60152,72 read status command: 020104FB03
21.12.2010 16:42:32 60152,72 send command: 0101B24D03
21.12.2010 16:42:32 60152,77 read status command: 020104FB03
ответ 020104FB03 говорит о том что команда не поддерживается (стр. 17 доки), а вот ответ 020105FA03 (для A4 и B0) говорит про ошибку передачи параметров, но признает что команда есть...
А в случае с 9E вообще положительный статус
21.12.2010 16:16:51 58611,52 send command: 0101996603
21.12.2010 16:16:51 58611,55 read status command: 020104FB03
21.12.2010 16:16:51 58611,55 send command: 01019A6503
21.12.2010 16:16:51 58611,58 read status command: 020104FB03
21.12.2010 16:16:51 58611,59 send command: 01019B6403
21.12.2010 16:16:51 58611,61 read status command: 020104FB03
21.12.2010 16:16:51 58611,63 send command: 01019C6303
21.12.2010 16:16:51 58611,64 read status command: 020104FB03
21.12.2010 16:16:51 58611,66 send command: 01019D6203
21.12.2010 16:16:51 58611,69 read status command: 020104FB03
21.12.2010 16:16:51 58611,69 send command: 01019E6103
21.12.2010 16:16:51 58611,72 read status command: 020106F903
21.12.2010 16:16:51 58611,73 send command: 01019F6003
21.12.2010 16:16:53 58613,34 read status command:
но после этой команды чип клинит - дальше не хочет отвечать на посылы команд, скорее всего ждет передачи каких то данных...
Вот такие пироги :-(
|