Kérlek jelezd, ha találsz benne hibát !
Köszönöm apeelme és Keeperv85 véleményezését.
Az MTK platformhoz tartozó SP FlashTool (Smart Phone Flash Tool) program nagyon hasznos dolog, láttuk már többször, hogy a gyári ROM-okat ezzel lehet feltenni, ha minden kötél szakad.
Felmerül azonban a kérdés, hogy teljesen gyári szoftvert akkor hogyan lehet menteni kompletten?
Erre általában az MTKDroidtools mentés és a CWM recovery-ből történő mentés a válasz.
Igen ám, csak egy teljesen gyári ROM esetén sem root, sem pedig CWM nincs.
MTKDroidtools-os mentéshez kellene a root, egyedi CWM gyártásához pedig a gyári recovery mentése.
Ekkor jön jól az SP Flashtool (a továbbiakban egyszerűen csak flashtool vagy Flashtool) readback (kiolvasó) opciója.
Tehát akkor ami kell hozzá:
- Flastool program (kismillió változata létezik) - pl. MTK6589-hez vagy MTK657x-hez. Újabban az MT6592, MT8127 SoC-hoz az 5.1436
- scatter file, amit vagy a netről keresgélés útján lehet leszedni, vagy pedig az MTKDroidtools 2.2.7-gyel (vagy 2.4.4-gyel) lehet készíteni emigyen.
- megfelelően telepített driver a telefonodhoz (ezt rád bízom), ami az ún. usb vcom (preloader) driver
- hexadecimális számokkat történő számítás.
Menete:
Töltsd le a Flastool programot.
[v3.1320.0.174], [v5.1348.00]
v5.1436
Csomagold ki valamelyik neked tetsző könyvtárba.
Csináld meg (vagy keresd meg) a telefonodhoz való scatter file-t. Ments le olyan helyre, ahol majd megtalálod.
MT6592 esetén változott a partíciók megadásának módja az új típusú scatter file-ban!
Ez miatt másként kell az értékeket kinézni belőle.
Erről részletesebben egy másik bejegyzésben olvashatsz. (Már működik a link!)
MT6582-ig működik az alábbi leírás.
0, Kapcsold ki a telefonodat, vedd ki az akkut. Egyes telefonok esetén vissza kell tenni az akksit.
Ne legyen összekapcsolva a telefon és a számítógép!
1,Indítsd el a Flashtool-t.
2, Tallózd be a scatter file-t.
3, Kattints a readback fülre, majd az "Add" ikonra.
4, Klikkelj duplán a jelzett helyre, hogy megadd a kiolvasni kívánt memóriarész adatait.
[link]
5, Nevezd el az, amit le akarsz menteni (pl. recovery.img, vagy boot.img)
Ésszerűen nevezd el őket, nehogy magad is összekeveredj a végére!
MEGJEGYZÉS: alapértelmezetten egy "ROM_" név ugrik elő. Ha később az MTKDroidToos-szal is szeretnéd használni, a kér program közötti átjárhatóság miatt célszerű ezt az előtagot megtartani, és utána írni a saját elnevezésedet)
6, Ez a kép fogad, EZ FONTOS! Itt kell madj megadni a memória kezdőcímét és a hosszát.
7, A megadandó adatokról és a számítási módról:
Ehhez is kelleni fog a scatter file, abból kell kivenni és számítani az adatokat!
Példa:
PRELOADER 0x0
{
}
MBR 0x600000
{
}
EBR1 0x680000
{
}
__NODL_PMT 0x700000
Ebből a
preloader esetén a kezdőcím 0x0000000000000000
hossza pedig az, ami a következő scatter bejegyzés hexadecimális kezdeti értéke (tehát a következő hex cím és kiindulási érték közötti különbség):
hex(600000-0) = hex(600000) --> 0x00600000
MBR mentése hasonló: kezdő cím a scatter fileból 0x0000000000600000
hossza pedig az, ami a következő scatter bejegyzés hexadecimális kezdeti értéke (tehát a következő hex cím és kiindulási érték közötti különbség):
hex(680000-600000) = hex(80000) --> 0x00080000
EBR1 mentése esetén a kezdőcím: 0x0000000000680000
hossza pedig az, ami a következő scatter bejegyzés hexadecimális kezdeti értéke (tehát a következő hex cím és kiindulási érték közötti különbség):
hex(700000-680000) = hex(80000) --> 0x00080000
És így tovább a scatter adatait figyelembe véve. Vigyázz! Hexadecimális kivonás!
Szóval, képekben folytatva pédaként a boot.img mentését:
start address: 0x0000000002780000
Length : 0x00600000
8, "Leokézás" után ez fogad:
9, Jelöld ki az a sort, amit szeretnél lementeni, majd kattints a "Read back" gombra.
Ha ez megvan, akkor most csatlakoztasd kikapcsolt állapotban a telefonodat a számítógéphez USB-n keresztül!.
Ekkor indul be a gépezet, a preloader betöltésével.
10, A folyamat folytatódik a tényleges adatkiolvasással.
11, Ha végzett, ez fogad:
Ezzel le lehet menteni gyakorlatilag az egész ROM-ot, a scatter megfelelő értékeit beírva.
Egy kis segítség a számításhoz: scatterből számoló táblázat [link], vagy guglidox-os (bár ezt nem tudom, hogy hogyan megy.)
2013.06.15. 17:20: Most folyik az első teszt
V970-recovery-by-flastool-readback. Eredmény: OK. A fájl valóban az, aminek lennie kell: az MTKtools-szal kibontható, és szépen látszik a tartalma.
A system.img (android) már 40 perce mentődik...
A system.img is úgy tűnik jó, mert simán a
mount -t ext4 -o loop system.img /mnt/androsys
paranccsal csatolható
Flashtool-ok:
[SP_Flashtool_v5.1352.01]
[SP_Flashtool_v3.1304.0.119]
[SP_Flashtool_v3.1320.0.174]