Filehost.ro - gazduire fisiere
Forum Romania Inedit
Romania Inedit - Resursa ta de Fun
Nou pe simpatie:
verona1991 Profile
Femeie
25 ani
Iasi
cauta Barbat
26 - 62 ani
Forum Romania IneditReguliInregistrareLoginPozeNu sunteti logat. Lista Forumurilor Pe Tematici
Forum Romania Inedit / Mobile/ PDA / GPS Tech Support /

ROM DUMP - Ghid practic

Pagini:  1 2 3 4 ... 34 Moderat de gabiandreicristian
#1
ablbd
Membru Senior
Urmaresc de-o vreme acest forum si constat ca se scrie prea putin despre bucataria interna a aparatelor ai caror posesori suntem. Chiar si pe alte forumuri cu greutate acest lucru de regula se face punctual, cu referire la o anumita marca sau la la cateva tipuri, dar  ale aceluiasi producator. Voi incerca intr-o serie de articole din care primul este acesta, sa prezint aspecte generale tuturor aparatelor si metode aplicabile (sper) oricarui aparat. Fara explicatii obositoare, articolele se vor axa pe aspecte practice si indicatii precise, astfel incat sa fie accesibile chiar si celor mai putin avansati in hard/soft, insa e necesar ca cei care purced la treaba sa aiba un minim de cunostinte generale despre calculatoare.

Asa cum anunta si titlul, tema acestui articol este prezentarea metodelor concrete de a face o copie a romului. Avand la dispozitie astfel de copii, exista sansele ca ele sa foloseasca acelor colegi care au probleme cu propriile aparate, deoarece din ele se pot crea imagini bootabile practic in orice format... dar despre asta alta data.

In cazul PNA/PDA, nu luati termenul de ROM(Read Only Memory) ad-literam, deoarece acel "ROM" se gaseste plasat pe un mediu rescriptibil. Producatorii seriosi (mai ales de PDA si iPhone) publica pe saiturile proprii din timp in timp upgrade-uri pentru aparatele lor. De pilda, poti cumpara un aparat cu WINCE5 si peste un timp ti se ofera posibilitatea trecerii la WINCE6 sau chiar mai sus. Ceea ce publica aceste firme este un nou ROM care il va inlocui pe cel vechi, oferind performante superioare.

Pentru ca o imagine bootabila sa poata fi incarcata, este nevoie de niste conditii:
- sa aiba formatul pe care boot loaderul il asteapta
- imaginea sa aiba un nume pe care boot loaderul il recunoaste si accepta; in principiu, un anumit tip de aparat pretinde un nume specific "case sensitive".
- boot loaderul trebuie sa fie intact.

Acest ultim aspect este extrem de important pentru ca in cazul in care noua versiune de rom nu functioneaza, se poate reveni oricand la versiunea anterioara. Desigur ca si boot loaderul poate fi schimbat, insa in cazul unei nereusite aparatul devine inutilizabil. Nu chiar definitiv, dar aproape. Sunt putine acele locuri (inclusiv de service) care poseda o interfata JTAG pentru aparatele pe care le intretin.

[In interiorul oricarui PNA/PDA exista niste puncte de conexiune care se leaga printr-o interfata la un PC la portul paralel. De interfata e nevoie deoarece tensiunea de alimentate a PPC este de 3,3 V iar cea din PC de 5v (pe porturi). In cazul anumitor modele este relativ usor de gasit JTAG-ul, la alte modele aceste puncte de conexiune pot fi foarte bine ascunse. Odata gasite, trebuie depistat care conexiune carui semnal ii corespunde. Pe PC ruleaza un program-driver pentru JTAG, care acceseaza direct NAND flashul si poate rescrie bootloaderul dar si rom-ul. De regula dupa incarcarea boot loaderului se trece pe o conexiune lan, deoarece comunicatia prin JTAG este extrem de lenta si transferul romului ar dura la ordinul zecilor de ore.]

Dupa aceste precizari de inceput, sa intram in subiect si sa trecem in revista metodele de a extrage rom-ul dintr-un PDA/PNA.

Acest lucru se poate face remote (pe PC) sau direct in PNA/PDA. Ca recomandare generala, este de preferat metoda remote si doar in cazuri extreme o metoda interna. Ambele metode prezentate vor produce copia partitiei de NAND flash unde se gaseste romul.

Exista utilitare care copiaza anumite zone din RAM, dar acestea au cateva dezavantaje:
- in dump vom gasi cu certitudine doar acele imagini -parti din rom- care sunt XIP (execute in place); restul fisierelor (sa le spunem standard) pot fi in alte locatii de memorie decat zona pe care o copiaza utilitarele;
- in RAM au loc ajustari de pagina (o pagina RAM are 4096 octeti) si orice modul relocabil va fi incarcat la inceputul unei noi pagini, chiar daca pagina anterioara este aproape goala.


1) Metoda remote.

Conditie esentiala: aparatul trebuie sa aiba conexiune activesync.

a) In marea majoritate a situatiilor, "tools" conceput de catre itsme(http://www.xs4all.nl/~itsme/projects/xda/tools.html) va functiona perfect.

Descarcati zipul cel mai recent si extrageti fisierele intr-un director usor accesibil, pentru a nu avea prea mult de tastat. Recomand crearea si a unui al doilea director, cu nume scurt si tot in radacina (de ex Rom), unde sa puneti imaginea binara a romului si nu numai. Conectati aparatul prin activesync si copiati manual "itsutils.dll" in directorul \windows al PPC. In cazul unui mesaj ca nu exista suficienta memorie, problema se rezolva usor doar pentru aceia care au acces la control pannel din PNA/PDA. Cei care nu au aparatul deblocat macar pe acces la desktop (PNA-uri), fie si-l deblocheaza fie renunta la a-si copia romul. Intrati in control panel si accesati "System" iar de sus "Memory". Va aparea un cursor deplasat catre stanga; mutati acel cursor spre mijloc, dati OK si de data asta copierea va merge fara probleme.

Deschideti o fereasta linie de comanda pe PC ( Start, run iar in fereastra  tastati "cmd" ) si mutati-va manual in directorul unde ati dezarhivat utilitarele. Daca aveti un card SD in PNA/PDA, scoateti-l ca sa nu aglomereze datele, desi nu e obligatoriu. In linia de comanda tastati "pdocread -l" (nota: folosesc ghilimele in cazul comenzilor ca sa se vada unde se termina comanda + parametrii; in fereastra cmd se tasteaza FARA acele ghilimele). Comanda aceasta va face o inventarie a tuturor discurilor remote, a partitiilor prezente pe fiecare unitate de stocare precum si lungimea acestor partitii. Din marimea partitiei 0 si/sau 1 deduceti unde este romul (are de regula in jur de 32MB, cele mai noi cu WINCE6 pot avea si 64MB).

Un exemplu de raport (pentru Evolio E400):

979.75M (0x3d3c0000) DSK1:
|           1.10M (0x119600) Part00
|          31.02M (0x1f04000) Part01
|         944.63M (0x3b0a2600) Part02
|           3.00M (0x300000) Part03
       ........

Este evident din marime ca romul se gaseste in Part 01, deci se va continua cu acesta. De regula partitia 3 contine registrii hive iar partitia 2 este user. Cifrele din paranteze contin marimea exacta a partitiei, asa cum este este calculata folosind datele din MBR. Presupunand ca ati creat un folder D:\Rom, linia de comanda care functioneaza mai mereu este:

"pdocread -d DSK1: -n 1 -w 0 0x1f04000 d:\rom\p01.bin"

Intre fiecare element al liniei de comanda se lasa 1 spatiu; nu folositi alte demarcatoare!! Dupa -d urmeaza numele exact al discului raportat in comanda anterioara. Indiferent ce denumire apare acolo, pe aceea trebuie s-o folositi, exact asa cum apare; -n 1 este numarul partitiei, adica partitia 1; daca vreti un dump la partitia 0, inlocuiti 1 cu 0; -w spune programului sa foloseasca API din windows; prima cifra reprezinta octetul de start pentru dump iar cea de-a doua cati octeti vrem sa copiem (e bine de copiat toata partitia, asa ca se ia tot din primul raport valoarea exacta dintre paranteze).

Daca lucrurile merg bine, dupa cca 3 minute in directorul d:\rom din PC va aparea un fisier (numit de mine p01.bin, dar poate avea orice nume) care contine datele brute (raw data) ale partitiei respective. In linia de comanda ordinea parametrilor nu conteaza, dar dupa parametrii ordinea datelor este obligatorie: 1-adresa de start, 2-lungimea (cati octeti dorim sa copiem) si 3-numele fisierului de dump. Adresa de start si lungimea pot fi date fie in sistem zecimal fie hex (0xvaloare).
Daca se omite cea de-a doua cifra (lungimea), valoarea implicita este 512 octeti. Pot exista variatiuni ale lui pdocread, de pilda sa foloseasca driverul flashdrv.dll. Daca tastati simplu "pdocread", va listeaza toate optiunile posibile (un soi de help).
***Atentie, pdocread poate sa si scrie discul; folositi doar comenzile de citire***

2) Metoda Interna.

Se recurge la ea daca din oarecare motive obscure pdocread nu functioneaza sau daca nu exista posibilitatea conectarii prin activesync (aparatul se conecteaza doar ca mass storage). In aceasta situatie, veti avea nevoie de un program numit DiskRW (il gasiti de ex aici http://www.filestube.com/f84afcfb0ff6681603ea/go.html , dar si prin alte parti). Este o bijuterie de program, extrem de bine facut, dar maaaare atentie: dupa cum se deduce si din nume, poate citi sau scrie discul!!!

Copiati executabilul de preferinta pe cardul SD si inainte de a-l porni, activati tastatura SIP pentru ca va fi nevoie ulterior de ea si DiskRW n-o activeaza (ca deh, nimic nu e perfect pe lumea asta...). Veti vedea in partea de sus un meniu; pentru inceput alegeti "Info", de unde veti culege informatiile privind lungimea partitiilor. Selectati discul flash ( apare cu numele de DSK1: )  si deschideti ramura "Partition Informations). alegeti partitia care cel mai brobabil contine romul (32MB sau mai mare ori 64MB sau mai mare pt CE6) si notati-va lungimea (Size=.....) atat pentru partitia 0 cat si pentru 1; valoarea este zecimala si o puteti folosi ca atare. Dupa asta reintrati in fereastra "Read/Write" initiala si:

a) *** LASATI BIFATA optiunea ReadDisk ***
b) alegeti la Store DSK1
c) Lasati la Offset valoarea 0 (pentru partitia 0) sau introduceti lungimea partitiei 0 daca vreti sa copiati partitia 1
d) Tastati la "Lenght" lungimea partitiei alese
e) Selectati o cale si botezati cumva fisierul de dump in ferestra "Output"; se prefera extensia .bin sau .raw;
f) Click pe butonul Read si asteptati pana se termina copierea (un indicator-cursor arata stadiul copierii)


Avand fisierul cu date brute pe PC (sau cpiate din PPC), urmeaza a vedea daca este ceea ce ne astaptam sa fie, adica sa contina SI romul integral. Pentru aceasta, cea mai rapida cale o ofera tot itsme (in linkul dat, alegeti sus "dumprom" si va duce acolo. Executabilul are nevoie de o librarie (nkcompr.lib, ce provine din platform builder) si pe care o gasiti tot acolo. Se poate cupla cu restul utilitarelor si tastati in fereastra de comanda "dumprom -5 d:\rom\p01.bin -d d:\rom >p01.txt"

Prima cale puncteaza catre imaginea binara obtinuta prin dump iar cea de-a doua la locul unde vor fi puse fisierele componente din rom. Fisierul p01.txt (destul de marisor) va contine raportul dumprom; liniile relevante sunt primele, care incep cu "img" si niste valori. Neglijati mesajul de eroare dupa "img"(uri), este normal. Mai departe lista arata detaliat pe unde a gasit fiecare componenta a romului, care dintre ele sunt de tip "module" si care "file". Este bine de verificat prin comparare cu directorul \windows din PPC daca se regasesc toate fisierele de acolo in directorul unde le-a despachetat dumprom. In caz ca da, inseamna ca intregul rom exista pe undeva in fisierul brut si demersul a fost incununat de succes. Este bine sa pastrati fisierul txt generat de dumprom, deoarece va mai fi nevoie de el in viitor. Daca nu regasiti absolut toate fisierele din \Windows, inseamna ca acea copie este incompleta si nu are niciun rost sa mergeti mai departe cu acest tutorial. *** Atentie: a) explorerul din PPC trebuie setat ca sa arate fisierele sistem si pe cele ascunse; b)activesync nu va arata niciodata toate fisierele din \windows, va trebui sa folositi obligatoriu explorerul intern***

Curatirea fisierului brut se poate face relativ simplu cu ajutorul unui editor hex. Pentru acest scop cel mai simplu de folosit imi pare "HexEditor" (freeware, cautati pe google: nu necesita instalare pe PC, doar sa fie la un loc cu dll-urile din pachet).

Metoda detaliata de depistare manuala a inceputului de rom am prezentat-o la articolul http://romania-inedit.3xforum.ro/post/3 ... _770_BT_/, nu mai insist aici. Este posibil ca in dump sa nu gasiti secventa "FE 03 00 EA" (jump la boot loaderul secundar), deoarece adresa de salt fie este diferita, fie este comunicata ca parametru boot loaderului. In acest caz locrurile se complica, dar nu prea mult. Cititi partea despre MBR din articol si calculati adresa rom header inmultind pozitia primului bloc indicat de partitia care ne intereseaza cu 0x200. Verificati totusi daca la offsetul 0x40 fata de aceasta se gaseste sirul magic "ECEC"

Cand ati gasit rom start, mutati cursorul cu 1 octet spre stanga, adica sa puncteze pe octetul anterior si din meniul "Edit" selectati "Delete TO cursor". Dupa aceasta operatiune, secventa FE 03 00 EA (daca exista) trebuie sa inceapa la adresa 0x0 din hexeditor iar prima aparitie "ECEC" la 0x40. Mai ramane sa determinam offsetul unde se termina romul. Pentru aceasta, deschideti lista generata de dumprom si notati-va din prima linie valoarea care apare la "base address". Indiferent de cate imagini gaseste (img), base address ramane aceiasi. Acum mergeti la finalul listei si notati-va valoarea "rom end", ori prima valoare de la "unknown" si o rotunjiti in sus pana la o adresa multiplu intreg de 0x200. De pilda, daca rom end=0x8df28928, valoarea finala va fi 0x8DF28B00. Pentru calcule hexa folositi calculatorul din PC, setat pe stiintific si bifat Hex. Scadeti din valoarea rom_end rotunjita valoarea base_address si puneti hexeditorul sa sara la adresa absoluta a rezultatului acestei scaderi (Meniul "Address" selectati "Goto", sa fie bifat hex). Pentru a nu gresi, copiati din calculator rezultatul (copy) si paste in fereastra de cautare. Din pozitia unde ajunge cursorul, selectati in hexeditor "Edit" si "delete FROM cursor", apoi din meniul "File" "Save as". Sugerez ca numele fisierului salvat sa contina indicii asupra aparatului al carui rom l-ati copiat, pentru a nu se amestece cu alte romuri (poate provenind din aparatele prietenilor) si o extensie .img sau .nb0 (NBzero), deoarece ceea ce aveti acolo va fi recunoscut de boot loader cu una dintre aceste extensii si un nume special care difera de la caz la caz.  Pentru a verfica daca totul este ok, sugerez sa mai executati odata dumprom pe acest ultim fisier. Urmariti daca nu cumva apare vreun mesaj de eroare in plus in listing si daca fisierele extrase sunt in acelasi numar cu cele scoase din .bin (.raw)
Daca aceasta ultima verificare este pozitiva, inseamna ca sunteti fericitii posesori ai unei imagini rom ce poate fi incarcata intr-un aparat identic cu cel din care a fost extras.

Metoda de "curatire" de mai sus este cea minimala. De regula imaginea ROM este semnficativ mai lunga, umpluta cu "00". Ca alternativa la rotunjire, plasati hexeditorul exact la adresa din calcul (rom end) si mergeti spre adrese mai mari pana apar date (valori non-zero). Acelea nu mai fac parte din ROM, asa ca mergeti cu cate un octet inapoi astfel incat cursorul sa ajunga pe ultima valoare zero si verificati adresa indicata de hexeditor, care ar trebui sa fie ceva de genul xxxFFFFF. Mai avansati un octet (pe prima valoare non-zero si aplicati comanda "delete from cursor" apoi salvati.  Toate imaginile ROM disponibile pe saituri pentru anumite aparate vor avea exact aceasta lungime, caci au incluse si valorile 00. Nu mi se pare imposibil ca anumite boot loadere sa verifice acea lungime (0 padded) inainte sa incarce noua imagine pe flash disk, desi n-am dovezi in acest sens. Oricum, cu toate ca presupune ceva mai multa munca si atentie, merita sa mergeti pe aceasta varianta.

NOTA: base address din lista lui dumprom va fi aceiasi doar pentru imaginile VALIDE. Daca dumprom gaseste headere invalide, va aparea si un mesaj legat de asta chiar la inceput iar base addres va diferi fata de celelalte, nu o luati pe asta.

NOTA1: un header invalid nu presupune neaparat ca aveti un dump gresit. Eu am dat peste asa ceva si am facut nenumarate verificari, ajungand la concluzia ca acel header a fost facut intentionat invalid deoarece respectiva imagine continea o suita de dll-uri pentru debug prin platform builder si le-a fost lene sa genereze un rom fara acestea ... Mi-am propus chiar sa revalidez acel header (intai pe dump pentru dumprom si apoi pe viu). Iata un astfel de exemplu:

img 00000000 : hdr=8cd39508 base=8cb50000  commandlineoffset=8cb50000
img 00400000 : hdr=820e35c4 base=81c00000  commandlineoffset=81c00000
img 00a00000 : hdr=834bba84 base=81c00000  commandlineoffset=81c00000
ERROR: could not find pointer for ofs 8cd39508
invalid romhdr ofs 8cd3950

Observati ca prima intrare este invalida si este mentionata atat ca "invalid romhdr" cat si ca ERROR iar base address are alta valoare fata de urmatoarele 2 intrari valide. Imaginile valide contin absolut toate fisierele din \windows, de asta am sugerat sa verificati bucata cu bucata fisierele din dump cu cele din \windows.

NOTA2: legat de nota 1. DiskRW are inclus un hexeditor care MODIFICA DIRECT PE DISC datele introduse. Nu experimentati cu acesta decat daca stiti foarte bine ce faceti. Vorba aia: e voie sa privesti dar nu te-atinge



Cateva cuvinte despre fisierele extrase de catre dumprom:

a) Executabilele (.exe) pot fi folosite in orice alt aparat asa cum sunt, cu conditia ca dependentele sa fie satisfacute;

b) Ca regula generala, dll-urile NU POT FI FOLOSITE in alte aparate si nici macar in cel propriu, deoarece le lipseste tabela de relocare. In listingul lui dumprom acestea au atribut "modent". Fac exceptie doar acele dll-uri (s-ar putea sa nu fie niciunul, nu mizati pe asta) care in listingul lui dumprom apar ca fiind "filent", caz in care pot fi portate pe alte aparate daca e nevoie.

c) Exista cateva fisiere cu extensia .hv (dintre care unul boot.hv...). Toate impreuna pot fi utilizate pentru reconstituirea registrilor de fabrica ai aparatului. Procedura: lansati pe PC programul CeRegEditor (http://ceregeditor.mdsoft.pl/) si din meniul File selectati "New". Dupa asta din meniul "Edit" selectati "Import" pentru fiecare fisier .hv in parte, apoi  salvati in aceiasi maniera cu imaginea rom ("Save as..." indicand aparatul din care provine). *** Atentie, nu omiteti niciun fisier .hv, altfel veti avea o imagine partiala a registrilor*** Din acest moment sunteti in posesia intregului registry de fabrica al propriului aparat, ce poate fi utilizat la refacerea setarilor originale; de exemplu MioPocket face varza registrii iar service-ul (in caz de..., Doamne fereste) nu va fi prea bucuros sa vada asta . Pot fi multe alte motive pentru a dori revenirea la setarile de fabrica. In consecinta, daca legatura activesync este functionala, puteti reface in 2 minute registrii originali conectand CeRegEditor la PPC si selectand "Tools"-> "Backup/Restore"->"Restore" -> salvarea pomenita anterior. La urmatorul hard reset aparatul va fi ca atunci cand l-ati pornit pentru prima oara. Operatiunea se poate face si dintr-un editor intern de registrii, caz in care se copiaza salvarea in PPC cu extensia schimbata in .reg si se face de acolo "import registry", insa aceasta metoda nu va sterge cheile in plus ci doar va modifica valorile la cheile prezente in salvare.

Acestea fiind zise, va doresc un "dump" linistit

PS: pentru ca acest topic sa aiba si o utilitate practica (putem ajuta pe aceia care au diverse probleme cu aparatele lor), rog pe toti cei care in urma acestui tutorial sau cu de la sine putere au reusit sa produca o imagine rom ca sa lase un semn, precizand tipul aparatului cu cat mai multe detalii. Pentru a nu incarca prea mult comentariile, lasati un semn DOAR DACA sunteti primul care semnaleaza un rom dump pentru acel tip de aparat.

Deschid lista cu EVOLIO E400 si WAYTEQ 770BT


9.05.2010

Intre timp s-au inmultit aparatele cu CE6, la care programele clasice pentru dump nu functioneaza. Motivul este ca in CE6 cam totul a fost revizuit, inclusiv organizarea (si protectia) memoriei ram. Au fost eliminate din coredll multe functii dar au aparut in schimb altele noi si foarte utile. Cert este ca orice program "cuminte" poate functiona si pe CE6, insa dumperele (de nand si de ram) nu sunt nici pe departe "cuminti"
Asa stand lucrurile si deoarece intre timp mi-am luat un aparat cu CE6 mai mult pentru studiu decat din necesitate, am scris un dumper "cuminte" de nand, initial destinat doar pentru CE6. Ulterior am modificat programul ca sa poata functiona si pe CE5 (chiar si pe CE4) cu conditia sa fie "instalat" pe aparat compact framework (2.0 sau mai sus). Doritorii il pot descarca de aici.
Este o versiune revizuita(si simplificata) a celei publicate la topicul Wayteq920: va lista doar discurile nand integrate, nu si cardurile sd dau alte discuri externe. De asemenea, calculeaza numarul total de sectoare prin doua metode alternative deoarece am constatat la un CNS Stylus ca numarul total de sectoare raportat de catre IOCTL_DISK_GETINFO nu corespunde cu cel calculat din MBR. Daca apare o situatia ca aceasta, va cere utilizatorului sa aleaga metoda...

_______________________________________
E400, Wayteq 770BT, Wayteq 920BT

 
   
#2
irinuca
MEMBRU VIP
Spb Clone face copie a romului ?
Adica, in caz de fac varza registrii sau altele, folosind clona realizata ce acest utilitar resuscitez device ?
Este ecelasi lucru cu clona PC, reinstalez sistemul de operare (WM) ?
Multumesc.


_______________________________________
aa

 
   
#3
xnx
Membru Gold
Felicitari ablbd pentru acest topic, il consider folositor

 
   
#4
ablbd
Membru Senior
@irinuca
daca aparatul nu porneste macar pana la stadiul de activesync, nu se poate repune niciun fel de salvare exceptand imaginea rom  denumita corespunzator si plasata in radacina unui card SD formatat FAT16 (in conditiile in care boot loaderul inca functioneaza). Altfel, JTAG...


_______________________________________
E400, Wayteq 770BT, Wayteq 920BT

 
   
#5
irinuca
MEMBRU VIP
Sincer, nu reusesc sa te urmaresc.
La introducerea card, spb clone incearca sa instaleze clona.
Inseamna ca ia totul de la zero, cu SO si registri?
Sau pot aparea si situatii cand nu poate fi folosita clona, si device e doar o caramida ?
Incerc sa fac anologie cu PC.
Multumesc.


_______________________________________
aa

 
   
#6
ablbd
Membru Senior
Corect. Iata, primul fisier obtinut (acel .bin sau .raw, cum vrei) este o clona exacta a partitiei respective. In principiu, rescriind acel fisier in locul de unde a fost copiat nu va afecta in niciun fel sistemul, insa pentru asta trebuie sa ai acces la sistem.

_______________________________________
E400, Wayteq 770BT, Wayteq 920BT

 
   
#7
ablbd
Membru Senior
Poate nu ma exprim prea clar. Hai sa facem o analogie cu un PC: daca partitia sistem cade instalam din nou un sistem de operare fie pe o alta partitie fie pe un alt disc. Lucrul acesta e posibil deoarece BIOS-ul stie sa faca asta. Ce te faci insa daca se buseste BIOS-ul? La PPC echivalentul bios este boot loaderul si atata timp cat el este functional, sistemul poate fi "reinstalat". Nu trebuie uitat ca in cazul PPC boot loaderul exista pe un mediu rescriptibil. Daca de pilda formatezi partitia unde rezida boot loaderul si kernelul, nu se mai poate face nimic decat prin interfata JTAG

_______________________________________
E400, Wayteq 770BT, Wayteq 920BT

 
   
#8
irinuca
MEMBRU VIP
AHAAAA, excelenta analogia.
Si acel bootloader cum il copii si cum il instalez.
Si mai ales ce tb facut (sau nu tb facut) pentru a nu-l buli.
Totul e ipotetic in acest moment.
Foarte, foarte multumesc.


_______________________________________
aa

 
   
#9
ablbd
Membru Senior
Pai, in primul rand e interzis a se formata vreo partitie sistem (poate fi partitia 0, 1 sau ambele, depinde de aparat). Pe urma, se evita reinstalarea boot loaderului.  Daca se formateaza partitia 3, care de regula contine registrii, nu este o tragedie prea mare deoarece asa cum am aratat in articol, romul contine o copie a registrilor iar daca sistemul sesizeaza ca e o problema cu partitia hive, o va repara punand acolo copia registrilor din rom.

Ca procedura generala, nu se va tenta instalarea unui alt bootloader si experimentele trebuie sa se limiteze doar la instalarea (eventual) a unui alt rom.


_______________________________________
E400, Wayteq 770BT, Wayteq 920BT

 
   
#10
irinuca
MEMBRU VIP
Foarte, foarte multumim pentru excelentele sfaturi.
Toate cele bune.


_______________________________________
aa

 
   
#11
anghelbusica
Membru Puf
va salut cu respect.la propunerea lui ablbd m-am gandit sa cer si eu ajutorul colegilor pentru o imagine rom la un aparat pioneer pm-902:
Procesor
-Samsung SC-2440A 400 Mhz.
Sistem de operare:
-Microsoft Windows CE Net 5.0 Core version.
display;
-4.3 "LCD (touch),  TFT Display
Rezolutie:
-480_272 6,5M Colors, QVGA resolution, Landscape.
Memorie:
-RAM 64 MB SDRAM.
Modulul GPS:
-Built-in GPS module, 20-canal de cip SiRF Star III.
Touch-screen
-SD/MMC-slot,
Port USB.
-Bluetooth
-Modulator FM


 
   
#12
irinuca
MEMBRU VIP
Un primul rand vreau sa multumesc lui abldb pentru tot ceea ce ne-a spus mai sus.
Prefer o formulare mai relaxata si daca prin aceasta jignesc pe cineva, in speta pe abldb (pe care il asigur de toata considerarea mea), imi cer scuze anticipat.
La rugamintea lui dansidragos voi incerca sa traduc klingoniana lui abldb pe limba noastra, a muritorilor.
In caz ca exista completari/corectii ii rog pe cei pot, sa o faca.
Mi se pare excelenta analogia lui abldb cu PC.
Pornirea unui PC presupune 2 pasi:
1 incarcarea BIOS din eprom, care cauta Sistemul de Operare de pe floppy/CD/HDD
2 incarcarea SO (Windows, Linux, MSDOS)
Idem pornirea PDA/PNA presupune 2 pasi
1 incarcarea bootloader
2 incarcarea SO (Windosw 5,6, CE)
Marea diferenta este ca BIOS este pe un circuit eprom ce nu poate fi sters decat cu o lampa UV (deci in nici un caz din greseala), bootloader se afla pe una din partitiile device si poate fi stearsa la o formatare accidentala.
Daca se sterge bootloader nu stiu cine l-ar mai putea pune la loc.
Daca se sterge doar SO acesta poate fi restaurat eventual de pe o clona, cu conditia ca bootloaderul sa fie OK.
Concluziile pe care le-a pus abldb sunt :
- in nici un caz nu formatati partitiile device (flash)
- faceti o clona a SO, care impreuna cu directorul 2577 copiati-o pe PC
- device are o copie a registrilor de fabrica din care ii restaureaza la hard reset
Totusi putini ar face oricare din cele de mai sus.
Astept si parerea lui abldb si eventual pgreed.
Inchei asigurandu-l inca o data pe abldb de toata considerarea mea.


_______________________________________
aa

 
   
#13
ablbd
Membru Senior
Pana la partea cu clona sunt intru totul de acord. Boot loaderul nu stie sa incarce o clona daca a crapat sistemul de operare... Tocmai de asta am insistat sa mergem mai departe, adica sa prelucram clona (.bin, .raw) pana la o imagine mai pe limba boot loaderului (.img sau .nb0, dupa caz). Analogia cu biosul ramane: asteapta un sistem de operare, nimic altceva nu e luat in considerare.
Totusi, daca windowsul din PPC functioneaza, daca avem la dispozitie o clona a partitiei pe care se gaseste so, daca acea clona provine de la un aparat IDENTIC  si daca are ceva in plus fata de al nostru, se poate folosi. Eu unul nu recomand aceasta tehnica, deoarece daca si boot loaderul de gaseste in aceiasi partitie cu so, urmeaza a fi rescris prin aplicarea clonei si ajungem la una din interdictiile anterioare: "nu rescrieti boot loaderul". In caz ca ceva merge rau la copiere si bootloaderul devine corupt, aparatul are mari sansa sa ajunga intr-un sertar. De pilda la Wayteq figura tine pentru ca boot loaderul este in partitia 0 si sistemul de operare in partitia 1, dar la alte aparate poate sa nu fie asa.
Pentru a nu risca nimic, clonarea presupune cunoasterea in amanuntime a aparatului! Daca nu stiti suficient de multe despre aparat, uitati de metoda asta!


_______________________________________
E400, Wayteq 770BT, Wayteq 920BT

 
   
#14
SUPERBU30
Membru Puf
am bagat si eu miopocket pe evolio 400 si acuma nu mai mereg nici macar touchscreen. am salvat registrii dar nu stiu cum sa i reinstalez .daca ma poate ajuta cineva =D

 
   
#15
alexvirgil
Membru Puf
salut , am 2 aparate Harman Kardon GPS-500NA unul stricat de mine acum vreo 6 luni si nu am gasit nici o imagine rom pentru el .
Am cumparat unul identic de pe E-bay si am aplicat metoda "2) Metoda Interna."  am
DSK1_0_46137344.img de ~45Mb si DSK1_0_46137344.img_read.log.
cum fac sa le transform in NK.bin, chain.bin, chain.lst, tinynk.bin, drivers.bin ?

multumesc .


 
   
#16
ablbd
Membru Senior

alexvirgil a scris:

cum fac sa le transform in NK.bin, chain.bin, chain.lst, tinynk.bin, drivers.bin ?


Singur nu ai cum. Procedura manuala este extrem de laborioasa si necesita a buna cunoastere a structurilor interne din rom.

Cel mai bine e sa faci o salvare de registri (cu ceregedit) si urca totul pe un file share, ti le fac eu.

Inca ramane deschisa intrebarea daca aparatul tau poate fi flashuit direct de pe sd, pentru ca uneori e nevoie de un program ajutator pe PC care face treaba asta (dedicat, atlasmgr, dnw, etc).

PS: de unde stii ca pt reflash are nevoie de denumirile pe care le-ai amintit? In general asa este dar esti sigur???


_______________________________________
E400, Wayteq 770BT, Wayteq 920BT

 
   
#17
alexvirgil
Membru Puf
salut ,
am updater original de GPS-300NA , GPS-500WE , pentru Europa si le-am dezarhivat si a mers flash de pe SD cu fisierele respective ... numai ca nu sunt pentru el ,  porneste si sta blocata imaginea de  start , nu comunica cu computerul , de 6 -7 luni de cand il am  am incercat tot felul de flashuri gasite pe net . inca se poate face flash cu aceste fisiere .(nu m-am atins de BOOTLOADER ca stiam ca acolo e secventa de pornire a aparatului .
dupa indelungi cautari pe net , am scris Email si la producator( The software update has not been released yet on our website, it will be available after some time.
) , am aflat ca cele de America nu au hardware ca cele de Europa .

multumesc.
http://rapidshare.com/files/385201524/gps500NA.rar.html

http://rapidshare.com/files/385208442/reg500NA.rar.html


 
   
#18
ablbd
Membru Senior


Rom:

http://www.megaupload.com/?d=1TXQMUTD


_______________________________________
E400, Wayteq 770BT, Wayteq 920BT

 
   
#19
alexvirgil
Membru Puf
mutumesc ,
a facut flash corect dar nu face restart automat la sfarsit cum am mai vazut la altele , trebuie sa ii dau eu reset ,  porneste si sta cu imaginea "guide+play" dupa ~1minut face restart si tot  asa ...
nu comunica cu computerul.
cat timp face flash de pe SD il vede computerul intr un anumit fel , cere  driver dar nu stiu ce drivere sa-i dau .
dupa reset se blocheaza si nu mai cere nici drivere ...


 
   
#20
ablbd
Membru Senior

alexvirgil a scris:

mutumesc ,
a facut flash corect dar nu face restart automat la sfarsit cum am mai vazut la altele , trebuie sa ii dau eu reset ,  porneste si sta cu imaginea "guide+play" dupa ~1minut face restart si tot  asa ...
nu comunica cu computerul.
cat timp face flash de pe SD il vede computerul intr un anumit fel , cere  driver dar nu stiu ce drivere sa-i dau .
dupa reset se blocheaza si nu mai cere nici drivere ...


Esti absolut sigur ca imaginea ta de dump este de la un aparat identic? 500 nu e identic cu 510, care are si tmc...

Programul cu care generez bin-urile din dump iti garantez ca nu greseste, trebuie sa mai existe un detaliu de care nu s-a tinut cont


_______________________________________
E400, Wayteq 770BT, Wayteq 920BT

 
   
#21
alexvirgil
Membru Puf
da ai dreptate ... asta stricat e  510  , nu cred ca am sanse sa-l fac ...

 
   
#22
ablbd
Membru Senior
Oricum pastreaza pachetul pentru situatia in care izbandesti sa-l blochezi si pe cel actualmente functional 

Acolo sigur va functiona


_______________________________________
E400, Wayteq 770BT, Wayteq 920BT

 
   
#23
alexvirgil
Membru Puf
multumesc pentru ajutor .

nu se poate scrie flash in 510 fara partea de TMC ?

adica editat flashul si exclusa parte de TMC...

mai bine spus daca se cunosc adresele pentru zona de TMC , sa sarim peste ...

sau daca pot renunta la partea de TMC ?


 
   
#24
ablbd
Membru Senior
Romul de la 500 nu contine TMC... Ma tem ca exista si alte diferente hard intre cele 2 tipuri pentru ca daca ar fi fost numai tmc, mai mult ca sigur ca ar fi functionat. La fel si cu BT: de cele ai multe ori romul fara BT merge dar pierde functionalitatea respectiva. Din pacate vei avea nevoie de un dump de la un 510 ca sa-l reinvii pe al tau...  Ce-ar fi sa pui o poza a aparatului, poate identificam o clona (sau cine stie, poate ca asta e clona si gasim "originalul".

_______________________________________
E400, Wayteq 770BT, Wayteq 920BT

 
   
#25
alexvirgil
Membru Puf
banuiesc ca ai zis de poza la interior nu de exterior ...

GPS-510NA

ROM DUMP - Ghid practic - banuiesc ca ai zis de poza la interior nu de - Mobile/ PDA / GPS Tech Support
ROM DUMP - Ghid practic – poza de alexvirgil, in Mobile/ PDA / GPS Tech Support · 62.3KB


 
   
Pagini:  1 2 3 4 ... 34  
Mergi la