MareX WeBlog

HD2 Android: úprava 'DAF ROM' pro použití s ClockWorkMod recovery

REKLAMA

Tento tutoriál by Vám měl ukázat, jak z Androidí ROM pro HD2, která se flashuje pomocí DAF.exe přes USB z počítače, udělat ROM kompatibilní s ClockWorkMod recovery. Normální ROM totiž nebudete moci s CWMr požívat. Respektive CWMr můžete na kartu dát, můžete ho i spustit, ale bude Vám hlásit, že nemůže najít oddíly ‘misc’, ‘boot’ atd. a tím pádem nebudete moci Vaši ROM přes CWMr zálohovat a podobně.

Pozor: v tomto návodu nevytvoříme ZIP soubor, který potom můžete flashnout pomocí CWMr z karty, ale pouze upravíme naši ROM tak, aby ji bylo možné s CWMr používat. Flashovat ji budeme stále z PC.

Dále bych chtěl upozornit, že já, jako autor tohoto návodu, nenesu jakoukoliv zodpovědnost za poškození Vašeho zařízení způsobené neodborným zásahem do tohoto zařízení i přesto, že jste postupovali podle tohoto návodu. Všechno, co podle tohoto návodu provádíte, děláte na vlastní zodpovědnost.

Co budeme potřebovat? Nic moc, pouze naši ROM. Náš návod je totiž velice jednoduchý a spočívá v pouhé editaci souboru flash.cfg.

Zkoušeli jste někdy použít CWMr s normální ROM instalovanou z počítače? Já ano. A nejde to. Proč? CWMr potřebuje pro svoji funkčnost specifické rozdělení NAND paměti. Respektive potřebuje v NAND určité oddíly, které naprostá většina ‘DAF ROM’ nevytváří. Pomocí naší úpravy souboru flash.cfg ji k tomu donutíme.

Takže začneme.

Já jsem zvolil ROM gauner1986′s Z-FI 0.1 (Desire Z based). Nebudu tady vysvětlovat proč, to není součástí článku. Prostě mi vyhovuje. Budu tedy postup vysvětlovat na této ROM, ale samozřejmě se pokusím upozornit na různé rozdíly mezi jinými ROM.

Obsah souboru flash.cfg této ROM:

system ya|boot|ro filesize system.bin
userdata ya|asize allsize

Obsah souboru flash.cfg CWMr, který nám připravuje NAND paměť pro budoucí instalaci ROM z SD karty:

misc ya 1M
recovery ya|ro 5M
boot ya|boot|ro 5M
system ya 250M
cache ya 10M
userdata ya|asize|hr allsize

Trochu si vysvětlíme co to všechno znamená, protože já tu budu popisovat úpravu pro mnou vybranou ROM, ale když Vy si budete chtít upravit jinou, může flash.cfg vypadat jinak, tak abyste věděli, co máte jak upravit.

Každý řádek souboru znamená jeden oddíl, který se má v paměti vytvořit. Jednotlivé části příkazu pro vytvoření oddílu jsou odděleny mezerami.

  • Prví část je název oddílu. U mnou použité ROM se tedy první oddíl bude jmenovat system.
  • Druhá část jsou parametry (vlastnosti) oddílu, jednotlivé prametry se oddělují znakem | (svislítko).
  • Třetí část je velikost oddílu.
  • Čtvrtá část je soubor, který obsahuje data, která mají být do oddílu zkopírována.

Název oddílu

nesmí být delší než 15 znaků a samozřejmě smí obsahovat pouze znaky anglické abecedy

Prametry

„ya“ – YAFFS2 oddíl, v takovém oddílu můžou být soubory ‘zImage’ a ‘intrd.gz’, které jsou nutné pro zavedení systému

„ro“ – zakázání přidání 5% navíc k velikosti oddílu a započítání špatných bloků do velikosti

„boot“ – tento oddíl musí obsahovat ‘zImage’ a ‘intrd.gz’ pro zavedení systému, musí být typu YAFFS2

„asize“ – automatická velikost, pro oddíl se použije veškerá volná paměť, která zbyde po vytvoření ostatních oddílů, tento parametr smí mít pouze jeden oddíl (!)

„hr“ – tento oddíl bude vymazán, pokud uživatel provede HardReset (vybere položku AD HardReset v MAGLDR menu)

ještě jsou další tři („raw“, „nospr“ a „nors“), které ale nevím, co znamenají – každopádně my je nebudeme potřebovat, ani jsem je nikdy nikde neviděl použít

Velikost

velikost může být zadána napevno:

10M = 10 MB

100b = 10 bloků (1b = 128 kB)

nebo relativní vzhledem k velikosti souboru, z nějž se budou kopírovat data (pouze je-li uvedena čtvrtá část příkazu!)

„filesize“ – velikost bude stejně velká jako soubor

„filesize+5M“ – oddíl bude o 5 MB větší než soubor

nebo může být velikost uvedena jako „allsize“ (pro oddíl s parametrem „asize“, využívající veškerou zbylou paměť)

Soubor

název souboru, ze kterého budou kopírována data do daného oddílu (většinou používaný system.img)

pokud tato část není uvedena, velikost nesmí být relativní (není k čemu být relativní) a oddíl nesmí mít parametr „boot“, protože by nebylo odkud zkopírovat soubory potřebné pro zavedení systému

Samotná úprava

U své ROM jsem soubor flash.cfg upravil následovně:

misc ya 1M
recovery ya|ro 5M
boot ya|ro 5M
system ya|boot|ro filesize system.bin
cache ya 10M
userdata ya|asize|hr allsize

Jednotlivé řádky:

  1. vytváří oddíl „misc“, systém YAFFS2, velikost 1 MB
  2. oddíl „recovery“, systém YAFFS2, nepřidávat 5% k velikosti, velikost 5 MB
  3. oddíl „boot“, systém YAFFS2, nepřidávat 5% k velikosti, velikost 5 MB (tento oddíl bývá většinou bootovací, jenže moje ROM neobsahuje žádný boot.img nebo podobný soubor, ze kterého bych načetl zImage a intrd.gz, tyto dva soubory jsou v souboru system.bin, který se kopíruje do oddílu system, takže musím nastavit jako bootovací právě ten)
  4. oddíl „system“, systém YAFFS2, bootovací – obsahuje zImage a intrd.gz, nepřidávat 5% k velikosti, velikost stejná jako kopírovaný soubor, system.bin
  5. oddíl „userdata“, system YAFFS2, automatická velikost, při HardResetu bude zformátován, velikost veškerá zbylá (tento oddíl je to, co se Vám v androidu ukazuje jako volná paměť například pro instalaci aplikací)

Pokud takhle upravím soubor flash.cfg, samozřejmě musím počítat s tím, že budu mít méně volné paměti pro „userdata“, protože jsme něco použili na „cache“ (10 MB), něco na „recovery“ (5 MB) atd. Konkrétně: původně bylo v mé ROM 221 MB volno, nyní je 199 MB (což mě osobně úplně stačí – nechápu, k čemu někdo potřebuje víc). Ale co je pro mě důležitější, můžu už s mojí ROM pracovat v CWMr. Hlavně vytvářet a obnovovat zálohy, protože jsem takový tester a dost často zkouším nové ROM a pokud se mi potom nová nelíbí, jednoduše nahraju zálohu a systém se načte tam, kde jsem s ním naposledy skončil :)

REKLAMA

HD2 Android: úprava 'DAF ROM' pro použití s ClockWorkMod recovery