Blog. Just Blog

Как установить прошивку от iODD-2531 на Zalman VE-300

Версия для печати Добавить в Избранное Отправить на E-Mail | Категория: Software | Автор: ManHunter
Как установить прошивку от iODD-2531 на Zalman VE-300
Как установить прошивку от iODD-2531 на Zalman VE-300

Не секрет, что внешний корпус для жестких дисков Zalman ZM-VE300 является копией устройства, выпускаемого корейцами под оригинальным названием iODD-2531. Только логотип перебит, да идентификатор устройства заменен, по железу никаких отличий нет. Но дело в том, что новые прошивки для Zalman ZM-VE300 выходят с большим опозданием или не выходят совсем, в то время как прошивки iODD-2531 обновляются регулярно. Из-за разницы в идентификаторах устройств программа для обновления прошивки Zalman ZM-VE300 не воспринимает файлы от прошивки iODD-2531, а программа для обновления прошивки iODD-2531 не видит подключенное устройство Zalman ZM-VE300. Сейчас я расскажу, как можно установить прошивку от iODD-2531 на Zalman VE-300.

Сперва надо скачать самые последние версии программ для обновления прошивок Zalman ZM-VE300 и iODD-2531. На сегодняшний день это, соответственно, версия 1288 и 1600. Извлеките exe-файлы из обеих архивов. Они, в свою очередь, тоже являются архивами, только самораспаковывающимися. Откройте их любым подручным архиватором и извлеките все файлы.

Теперь копируем файл iodd_2531_firmware_R1600N.bin в папку с прошивальщиком от Zalman. Открываем файл zalman-fw-updater-02.ini на редактирование. В самом начале в секции [Option] в ключе Firmware надо заменить название файла прошивки "ZM_VE300_firmware_R1288N.bin" на "iodd_2531_firmware_R1600N.bin". Больше ничего там трогать не надо. Сохраняем изменения.

Программа обновления прошивки Zalman VE-300
Программа обновления прошивки Zalman VE-300

Программа обновления обнаруживает подключенное устройство, успешно распознает имя файла прошивки из конфига. Но при попытке обновить прошивку мы получаем сообщение "firmware does not matched". Раньше работал способ с подменой файла прошивки, когда программа проверяла его корректность только при запуске. Сейчас этот трюк не прокатывает. Значит придется задействовать бинарную хирургию.

Исполняемый файл ничем не накрыт и не упакован, отправляем его на разбор в дизассемблер. А параллельно поищем строку сообщения, которое появляется при некорректной прошивке.

Строка сообщения
Строка сообщения

По перекрестным ссылкам в листинге дизассемблера определяем три участка кода, где это сообщение появляется. Все три участка содержат какие-то проверки и условные переходы, от которых зависит, появится ли сообщение или программа будет выполняться дальше. Нам надо сделать так, чтобы при любом раскладе исполнение программы двигалось по правильному пути, как будто прошивка соответствует всем условиям.
  1. .text:004132E2                 cmp     dword_4B43040, edi
  2. .text:004132E8                 mov     [esp+1F0h+hWnd], eax
  3. .text:004132EF                 mov     [esp+1F0h+var_188], edi
  4. ; Условный переход
  5. .text:004132F3                 jz      short loc_413312
  6. ; Вывести сообщение о неправильной прошивке
  7. .text:004132F5                 mov     ecx, dword_4A34004
  8. .text:004132FB                 push    edi             ; uType
  9. .text:004132FC                 push    offset Caption  ; lpCaption
  10. ; firmware does not matched..
  11. .text:00413301                 push    offset aFirmwareDoesNo ; lpText
  12. .text:00413306                 push    ecx             ; hWnd
  13. .text:00413307                 call    ds:MessageBoxW
  14. .text:0041330D                 jmp     loc_4182D4
  15. .text:00413312 ; ---------------------------------------
  16. .text:00413312 loc_413312:
  17. .text:00413312                 call    sub_413110
  18. .text:00413317                 mov     edx, lParam
  19. .text:0041331D                 push    edx
  1. .text:0041A65D                 cmp     dword_4B43040, 0
  2. .text:0041A664                 pop     ebx
  3. .text:0041A665                 push    0               ; uType
  4. ; Условный переход
  5. .text:0041A667                 jz      short loc_41A67F
  6. ; Вывести сообщение о неправильной прошивке
  7. .text:0041A669                 push    offset Caption  ; lpCaption
  8. ; firmware does not matched..
  9. .text:0041A66E                 push    offset aFirmwareDoesNo ; lpText
  10. .text:0041A673                 push    esi             ; hWnd
  11. .text:0041A674                 call    ds:MessageBoxW
  12. .text:0041A67A                 jmp     loc_41A87E
  13. .text:0041A67F ; ---------------------------------------
  14. .text:0041A67F loc_41A67F:
  15. .text:0041A67F                 mov     edx, dword_4A328F4
  16. .text:0041A685                 push    3EBh            ; wParam
  17. .text:0041A68A                 push    111h            ; Msg
  1. .text:0041BD21                 cmp     dword_4B43040, 0
  2. ; Условный переход
  3. .text:0041BD28                 jz      short loc_41BD42
  4. ; Вывести сообщение о неправильной прошивке
  5. .text:0041BD2A                 push    0               ; uType
  6. .text:0041BD2C                 push    offset Caption  ; lpCaption
  7. ; firmware does not matched..
  8. .text:0041BD31                 push    offset aFirmwareDoesNo ; lpText
  9. .text:0041BD36                 push    esi             ; hWnd
  10. .text:0041BD37                 call    ds:MessageBoxW
  11. .text:0041BD3D                 jmp     loc_41CBDC
  12. .text:0041BD42 ; ---------------------------------------
  13. .text:0041BD42 loc_41BD42:
  14. .text:0041BD42                 cmp     dword_4A2F810, 0
Чтобы сообщение о неправильной прошивке никогда не появилось, надо заменить все отмеченные условные переходы на безусловные. Итого три байта пропатчено. Сохраняем изменения, запускаем.

Обновление прошивки
Обновление прошивки

Если все сделано правильно, то после нажатия кнопки Update начнется обновление прошивки.

Прошивка успешно обновлена
Прошивка успешно обновлена

Через несколько секунд появится сообщение, что прошивка успешно обновлена. Zalman ZM-VE300 автоматически перезагрузится, Windows быстренько установит драйвера для нового устройства iODD-2531 и можно продолжать работать. Вся информация, образы, файлы и прочее, что было на жестком диске, все остается на своих местах.

Версия прошивки
Версия прошивки

Если теперь подключить устройство, то при старте будет отображаться "iodd", а в меню информации о прошивке будет что-то вроде "2531_011_1600N".

Модифицированная программа обновления прошивки Zalman VE-300
Модифицированная программа обновления прошивки Zalman VE-300

В приложении комплект с пропатченной и дополнительно модифицированной программой обновления прошивки Zalman ZM-VE300. Для следующего обновления достаточно подложить новый файл с прошивкой и поменять имя файла в zalman-fw-updater-02.ini, патчить ничего не придется.

iODD-2531 to Zalman ZM-VE300iODD-2531 to Zalman ZM-VE300

iODD.2531.to.ZM.VE300.Firmware.Upgrade.R1600N.zip (345,755 bytes)


Поделиться ссылкой ВКонтакте Поделиться ссылкой на Facebook Поделиться ссылкой на LiveJournal Поделиться ссылкой в Мой Круг Добавить в Мой мир Добавить на ЛиРу (Liveinternet) Добавить в закладки Memori Добавить в закладки Google
Просмотров: 4275 | Комментариев: 17

Метки: Zalman, HDD

Комментарии

Отзывы посетителей сайта о статье
ManHunter (11.09.2018 в 21:47):
Рад был помочь :)
Сергей (15.07.2018 в 20:53):
Очень полезная статья, благодарю за труды.
TITAN-UZ (15.05.2018 в 10:56):
На ZALMAN ve-350 кто нибудь запихнул прошивку IODD
ManHunter (15.01.2018 в 18:20):
А зачем распаковывать установщик? После запуска он устанавливается в %ProgramFiles%\ZALMAN, запускает обновлятор, после закрытия обновлятора запускает unins000.exe. Если до закрытия обновлятора зайти и прибить деинсталлятор, то все останется на месте. Обновлятор там тоже ничем не упакован, прошивка лежит отдельным файлом в папке \FW
Serg0FFan (15.01.2018 в 17:25):
Вот из последних, тем что обновлял как то свой прибор.
https://yadi.sk/d/CGYVUFqK3RUMmd
ManHunter (15.01.2018 в 17:22):
Serg0FFan, для VE500 с офсайта скачивается пустой архив, даже посмотреть не получится.
Serg0FFan (15.01.2018 в 16:57):
Пытался повторить процедуру для VE500, но обломился на моменте распаковки установщика от Zalman. Не распаковывается он ничем зараза.
Гость (23.12.2017 в 05:09):
Для ZM-VE200 был однобайтовый совет:
"Как оказалось прошиться обратно родной залмановской проще чем кажется. Для этого даже прошивальщик не нужен. Берем правильную прошивку ( fat/ntfs ) например _iso_firm_ZMVE200-1.00.00-61N.iso меняем 3й байт с 02 на 01 и привод сам перепрошивается в залмана потом только через прошивальщика меняем Configuration Information на прежние. также как и те кто хочет чтобы у них была прошивка i-odd, берут _iso_firm_iodd2501_v1.42.64N.iso меняют 3й байт с 01 на 02, и ваш залман перешьется в i-odd"
Zalman в iodd так прошивал - работает.
DagalProject (21.12.2017 в 23:00):
Я так же уже давно использую прошивки от IODD на свой ZALMAN, только в модификации загрузчика я не патчу переходы.
Я по адресу вот эту делаю команду.
00420E9B  31C9 XOR ECX,ECX
00420E9D  90   NOP
nordpoint (20.12.2017 в 16:22):
Читал. Спасибо. Заметил не вовремя.
ManHunter (20.12.2017 в 16:13):
nordpoint, мой ответ ему не читал?
nordpoint (20.12.2017 в 16:11):
Поддерживаю вопрос Ellephant. В чём отличия? Всё вроде итак рулит и бибикает...
ManHunter (20.12.2017 в 15:11):
Наверное, сработает. Только зачем, если можно один раз заморочиться и сделать все красиво.
wet (20.12.2017 в 13:54):
"Раньше работал способ с подменой файла прошивки, когда программа проверяла его корректность только при запуске. Сейчас этот трюк не прокатывает." - а если взять прошивальшик именно тот, с которым прокатывало, а прошивку самую последнюю, что тогда? Не думаю, что способ прошивки  как то изменился, ведь само железо не меняется.
Ellephant (19.12.2017 в 23:00):
Пока ждал ответа, уже перепрошил, руки чесались )
Все прошло хорошо. Теперь при загрузке пишет iODD
В остальном визуально ничего не изменилось

If checked, when you select an ISO file the loading information will be saved instantly.
кстати, да. Эта фишка будет востребована. Ранее приходилось, выключать с сохранением, передергивать и только после этого образ грузился.
ManHunter (19.12.2017 в 22:50):
Ну, как минимум, вот приятная фича:

"Add 'Menu -> Advanced->Instant Save' option.
If checked, when you select an ISO file the loading information will be saved instantly."
Ellephant (19.12.2017 в 22:31):
У меня тоже имеется ZM-VE300. А чем отличается его прошивка в работе от прошивки от iODD. Есть ли смысл перешивать, если все работает хорошо. Какие там будут дополнительные "плюшки" после перепрошивки?

Добавить комментарий

Заполните форму для добавления комментария
Имя*:
Текст комментария (не более 2000 символов)*:

*Все поля обязательны для заполнения.
Комментарии, содержащие рекламу, ненормативную лексику, оскорбления и т.п., а также флуд и сообщения не по теме, будут удаляться. Нарушителям может быть заблокирован доступ к сайту.
Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2018
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.07 сек. / MySQL: 2 (0.004 сек.) / Память: 4.75 Mb
Наверх