Сайт владельцев Rover R5
Воскресенье, 05.05.2024, 12:32
Приветствую Вас Гость | RSSГлавная | Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: novaro  
Форум владельцев смартфона RoverPC R5 » Всё о RoverPC R5 » Ремонт, прошивка, тесты » Мануал по редактированию прошивки RoverPC R5 (просьба без флуда, тему будет дополняться =))
Мануал по редактированию прошивки RoverPC R5
GovorunДата: Воскресенье, 13.01.2008, 20:47 | Сообщение # 1
Полковник
Группа: Проверенные
Сообщений: 182
Репутация: 9
Статус: Offline
Иструкция написана так, чтобы воспользоваться ей могла каждая домохозяйка =)
Буду объяснять всё на примере, ибо так проще понять =)
Итак, приступим=)

Что нужно
1) imgfs_tools
2) моя прога RoverPC R5/Amoi E72/PhoneOne S108 ROM extractor/creator (в аттаче)

Приготовления
1) распакуйте куда-нибудь imgfs_tools, например сюда: G:\tmp\
2) скопируйте в этуже папку r5_extr_create.exe (файл из аттача)
3) скопируйте в этуже папку файл прошивки и назовите его, например, flash.img
4) нажмите кнопку пуск -> выполнить -> cmd.exe
5) пишем там G: и нажимает Enter
6) cd tmp и нажимаем Enter.

Разборка прошивки
1) пишем r5_extr_create.exe flash.img -x
должно появиться что-то типа такого:
Extracting mode
Searching for imgfs signature ...
Imgfs found at 005E5407. Compression type XPR
Extracting rom ...
All sectors read.
Rom extracted OK!

2) для последующего контроля сборки советую запомнить (куда-нибудь записать) адрес imgfs, в данном случае это 005E5407
после этого у вас в каталоге появятся 2 новых файла: imgfs_raw_data.bin и imgfs_removed_data_r5.bin
3) После этого можно вытащить все файлы рома, для этого напишите: viewimgfs.exe imgfs_raw_data.bin
Должна появиться папка dump в ней будут все файлы

Внесение изменений
Настоятельно рекомендую вносить изменения в прошивку !только! утилитами addfile и delfile, а не пытаться собрать папку dump, папку dump советую использовать только для того, чтобы посмотреть какие файлы есть в прошивке.

Удаление файлов:
например, мы хотим удалить Pond.jpg для этого пишем: delfile Pond.jpg
Удалять модули (файлы которые в папках в папке dump) нельзя!

Добавление файлов:
например мы хотим добавить в прошивку файл Pond1.jpg. для этого кидаем этот файл в G:\tmp\ и пишем addfile Pond1.jpg

утилиты addfile и delfile изменяют файл imgfs_raw_data.bin, но размер и дата создания файла остаются такимже, это нормально.
Чтобы не было проблем придерживайтесь правила: размер добавляемых файлов не должен превышать размер добавляемых файлов.

Сборка прошивки
1) пишем r5_extr_create.exe flash_new.img -c
должно появиться что-то типа этого:
Creating mode
Imgfs would start at 005E5407
Rom created OK!

Адрес во второй строке должен совпадать с тем, который вы запомнили(записали) во время разборки, если это не так, то прошивка соберётся не праивльно!
Должен появиться файл flash_new.img, это и есть изменённая прошивка, заметьте что размер изменённой прошивке будет абсолютно такимже как и неизменённой, это нормально.

Теперь можно прошивать этот файл программой атина =)

Warning:
Проверял я всё это только на официальной 6-й роверской прошивке и настоятельно рекомендую не пробовать всё это на прошивке от S108.

P.S.
просьба ко всем: т.к. я собираюсь добавлять сюда посты на тему как встраивать свои проги в прошивку, [возможно] разборки XIP и может ещё чего-нибудь, то не флудите тут =) задавайте вопросы в личные сообщения или по аське, а не сюда, если вопрос окажется актуальным я отвечу на него и тут тоже =)

Добавлено (13.01.2008, 20:47)
---------------------------------------------
Добавление в прошивку программ (cab архивов)
для этого помимо всех описанных выше утилит понадобиться Hypercore Kitchen. Скачиваем и устанавливаем (устанавливается она в C:\Core). (18 метров, там много всего, не всё нужно, но потом возможно понадобится)
1) Распаковываем прошивку, как описано выше
2) Ищем чтобы удалить такого большого, чтобы прога, которую мы хотим поставить имела размер меньший, чем размер удаляемых файлов (я выбрал ppt.exe , т.к. явно никогда не буду смотреть презентации на смарте и весит этот файл 2 метра), удаляем его утилитой delfile, т.е. пишем, например, delfile.exe ppt.exe
3) Идём в C:\Core\HyperCore\Panel\Extra\CAB Analiser
4) Жмём кнопку CAB (вверху самая левая), выбираем cab файл который мы хотим встроить в прошивку, нажимаем кнопку XML (вврху 4-я справа), там нажимаем 3-ю кнопку слева, выбираем папку куда будут извлечены файлы. В папке которую выбрали появятся файл с расширением xml, с расширением inf и ещё папка Program Files/Название_Программы там будут файлы программы
5) добавляем эти файлы в прошивку, т.е. копируем файлы из Program Files/Название_Программы/ в папку G:\tmp\ и запускаем там утилиту addfile на каждый файл
6) добавляем записи в реестр, нужные для этой программы: делать это можно 2-мя способами: про второй способ я расскажу в другой раз, а первый таков: в файле прошивке есть файлы с расширением provxml, вот по теории в любой из них можно добавлять записи в реестр, на практике не в каждый, вобщем я выбрал для этого файл mxip_russianlocal_101.provxml. Вот ищем его в папке dump и открываем в каком-нибудь редакторе (советую не блокнот (говорят с ним проблемы какие-то), а что-нибудь типа notepad++ или editplus) и добавляем в этот файл из xml файла, полученного на шаге 4, всё что начинается с <characteristic type="Registry"> и заканчивается соответствующим </characteristic> включительно (соответствующим -- означает, что количество <characteristic должно совпадать с количеством </characteristic> и ещё надо добавить " (двойная ковычка) после каждой строки добавления записей в реестр кроме строк </characteristic> , т.е. например:
<characteristic type="Registry">"
<characteristic type="HKLM\Software\Resco\Explorer\VersionInfo">"
<parm name="HideGetUpdate" value="1" datatype="integer" />"
<parm name="WebLinkHide" value="0" datatype="integer" />"
<parm name="WebLinkURL" value="http://www.resco.net/smart/explorer/" datatype="string" />"
<parm name="WebLinkTitle" value="www.resco.net" datatype="string" />"
<parm name="SupportHide" value="0" datatype="integer" />"
<parm name="SupportURL" value="mailto:products@resco-net.com" datatype="string" />"
<parm name="SupportTitle" value="products@resco-net.com" datatype="string" />"
<parm name="BuyLinkHide" value="0" datatype="integer" />"
<parm name="BuyLinkURL" value="http://www.handango.com/ppc/basket.jsp?addItem=75448&siteId=83" datatype="string" />"
<parm name="BuyLinkTitle" value="www.handango.com/resco" datatype="string" />"
</characteristic>
<characteristic type="HKLM\Software\Resco\Explorer">"
<parm name="LangID" value="1033" datatype="integer" />"
</characteristic>
<characteristic type="HKLM\Software\Resco">"
<parm name="DefaultLangID" value="1033" datatype="integer" />"
</characteristic>
</characteristic>
7) Теперь нужно добавить записи в этот же файл, о том куда надо перемещать файлы программы, т.к. по умолчанию они просто будут лежать в папке windows, описывать этот процесс весьма трудно, так что приведу только пример:
<characteristic type="FileOperation">
<characteristic type="\Program Files\Animation Config" translation="install">
<characteristic type="MakeDir" />
<characteristic type="AnimationConfig.exe" translation="install">
<characteristic type="Copy">
<parm name="Source" value="\Windows\AnimationConfig.exe" translation="install" />
</characteristic>
</characteristic>
</characteristic>
</characteristic>

в данном примере создаётся папка \Program Files\Animation Config и туда копируется файл \Windows\AnimationConfig.exe

двойную ковычку тут после каждой строки добавлять не надо

8) выбираем сохранить как и сохраняем этот файл в G:\tmp\
9) теперь удаляем этот файл из прошивки (пишем delfile mxip_russianlocal_101.provxml) и добавляем отредактированный (addfile mxip_russianlocal_101.provxml)
10) собираем прошивку (как описано в предъидущем посте) и прошиваем =)

Прикрепления: r5_extr_create.exe (36.0 Kb)


#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.


Сообщение отредактировал Govorun - Суббота, 12.01.2008, 17:39
 
GovorunДата: Воскресенье, 02.03.2008, 12:28 | Сообщение # 2
Полковник
Группа: Проверенные
Сообщений: 182
Репутация: 9
Статус: Offline
Замечания:
-добавление в provxml файл надо производить между <wap-provisioningdoc> и </wap-provisioningdoc>.
-вообще в xml файлах есть стандарт редактирования, придерживаясь которого, легко видеть, где соответствующий закрывающийся тэг для открывающегося (файл в аатаче выполнен в этом стандарте)
-в provxml файле можно не только прописывать куда копировать файлы, но и создавать ярлыки (создание ярлыков есть в файле в аттаче)
-в xml коментарии начинаются с <!-- и заканчиваются --> (т.е. обрамлённые этим строки не будут рассмотрены)
-прикрепляю пример моего файла mxip_russianlocal_101.provxml (имя которого будет обрезано форумом, так что переименуйте, если хотите его заюзать) там прописано добавление файлов для Resco Explorer и Animation Config

Добавлено (03.02.2008, 16:42)
---------------------------------------------
Как выяснилось, благодаря novaro, что прошивка от s108 нормально собирается =) Но я по прежнему настоятельно рекомендую сравнивать адреса imgfs при сборке и разборке, если они совпадут, то скорее всего прошивка собралась нормально. Так же выяснилось, что если вы хотите в прошивку от s108 встроить какую-нибудь прогу, то можете просто удалить из прошивки файл Thai.cab, потом переименовать свою прогу (каб архив) в Thai.cab и добавить его в прошивку и этот архив автоматически поставится при первой загрузке системы после прошивки.

Добавлено (01.03.2008, 14:53)
---------------------------------------------
"Проще чем когда либо" =)
как выяснилось (опять же благодара novaro =)), можно редактировать прямо папку dump: удаляем/заменяем файлы из этой папки и собираем папку dump в imgfs_raw_data.bin командой BuildImgfs.exe (время и размер imgfs_raw_data.bin файла не должны измениться, это нормально) и потом собираем с помощью r5_extr_create.exe в файл прошивки (как было описано выше).

Добавлено (02.03.2008, 12:28)
---------------------------------------------
Когда импортируем реестр в прошивку не обязательно писАть " в конце каждой строки (по крайней мере в прошивке от S108)

Прикрепления: mxip_russianloc.f44814_ (6.4 Kb)


#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.


Сообщение отредактировал Govorun - Суббота, 01.03.2008, 15:22
 
Форум владельцев смартфона RoverPC R5 » Всё о RoverPC R5 » Ремонт, прошивка, тесты » Мануал по редактированию прошивки RoverPC R5 (просьба без флуда, тему будет дополняться =))
  • Страница 1 из 1
  • 1
Поиск:

Copyright MyCorp © 2024 Сайт управляется системой uCoz