Cum să relansezi gps-urile

LIMBA RUSĂ ȘI GPS GARMIN

Ghid informativ pentru acțiune

"Dacă muntele nu merge la Mohamed, atunci Mohamed se duce la munte." (Înțelepciunea Antică de Est)
. Vreau să învăț de la tine unde să obțină convertoare pre2bin și patch-uri. "(din corespondența cu utilizatorii)

Disclaimer. Având în vedere ceea ce este scris în contractul de licență cu compania Garmin, toate acțiunile descrise mai jos sunt ilegale în ceea ce privește această licență. Eu, din partea mea, nu vă conving să urmați toate aceste acțiuni și nu vă asumați nicio responsabilitate pentru toate consecințele posibile ale acțiunilor voastre. Amintiți-vă, veți acționa numai pe propria voastră pericol și risc.

Ziua 1. Începeți despachetarea.

Ea a apărut cu mult timp site-ul corsar, în cazul în care puteți descărca hărți, chat-ul de pe forum, și de a descărca unele fișiere utile. Un om nu a identificat el însuși, altele decât Garmin înlocuitorii de / russificator de KonNor trimis gunp codul sursă al programului, precum și alte instrumente, precum și firmware-ul limbii ruse eTrex Legend 3.20, el a creat din. 2.41.

Citat din dosar, situată lângă un stat Developer Toolkit: „Nu răspunde doar o singură întrebare - cum să obțineți firmware-ul original de la Garmin'a eu pot da doar un indiciu - IDA + arm.d32 + brumă ARM assembrera = rezultatul.“. Mental oftând cu regret, „aceiași oameni sunt capabili să“ continue să avanseze.

Puțin mai târziu sa dovedit că acest pachet poate face ceva mai mult, este doar un mic efort. Astfel, a fost colectată legenda 3.60 a firmware-ului eTrex. și mai târziu eTrex Vista 3.60.

În primul rând, vă sfătuiesc să vă familiarizați cu Apendicele 1 - glosar - veniți brusc la îndemână.

Cum funcționează? Simplificat, procesul de rusificare (traducerea interfeței cu utilizatorul rus) poate fi descris în următorii pași:

  1. Obținerea unei resurse de text (șiruri de text)
  2. Preluarea fonturilor
  3. Traducerea unei resurse de text
  4. Desenarea de fonturi rusești (dacă este necesar, dintr-o dată în colecție va fi necesar ..)
  5. Ambalarea resurselor de text
  6. Un patch suprapune fișierul sursă cu o resursă de text ambalată și fonturi editate.
  7. Alte activități

În ceea ce privește ultimul punct, există o rezervă mică. Dacă intenționați să faceți o Russification completă (inclusiv introducerea căutării în limba rusă), atunci adăugați 4.5 Demontarea firmware-ului și 4.6 Scrierea unui patch pentru căutarea. Opțiuni posibile, cu afișarea fonturilor (salvarea fonturilor native și adăugarea rubricii firmware-ului). În timp ce vom opri pe versiunea de bază, doar interfața rusă.

De ce funcționează acest lucru? Deoarece. ) Pentru că așa funcționează programul în dispozitiv. Pentru mai multe curiozități - uitați-vă la apendicele 2 - link-uri.

Aplicația gunp (gunp2) și grabres (pentru că nu știam foarte mult, am scris utilitarele mele pentru despachetarea firmware-ului) primește resursa de text (1). arma încearcă să aplice o căutare inteligentă și grabrele acționează direct la pointer de sus.

La ieșirea programelor (indiferent de ce utilizați, rezultatul principal) este un set de fișiere text cu numele lang001.txt, etc. împărțit în linii. Fiecare rând conține o instrucțiune (expresie). Caracterele speciale sunt \ n (un caracter de linie nouă) și \ 0 (caracterul final al expresiei și al următorului).

Unul dintre fișiere (de exemplu, primul) trebuie considerat ca bază pentru traducere. Numărul de fișiere este de obicei egal cu numărul de limbi disponibile în meniul de selectare a limbii. Nu toate firmware-urile declanșează căutarea automată a pistolului.

fonturi Obtinere (2) este angajat gunp (gunp2 - adăugat la definiția unui font foarte vechi) sau WinHex (obsolete).

Traducătorul traduce textul (3). Sau, dacă există o bază de date suficient de dezvoltată, o aplicație minunată a programului Excel.

Pachetul resursei de text (5) face (cel puțin cel puțin) utilitatea pre2bin. Parametrii de intrare sunt un fișier text, ieșirea este un text binar plin, pregătit pentru a patch-uri :)).

Utilitatea de patch-uri corectează firmware-ul original al dispozitivului (6).

Notă. Uneori, din cauza unor motive de firmware utilizate programatori garmin de ambalare resurse de text. Se pare că acest lucru se datorează economiilor de memorie flash, dar nu are nimic de-a face cu economisirea timpului nostru. (Până în prezent, nu există nici o soluție gata preparată pentru pachetul de resurse de text „ca Garmin“, astfel încât unele minore) firmware-ul (și nu este rusificată -. Un exemplu viu al acestei eMap 2,64 Situația se poate schimba în cazul în care Garmin firma începe să pună în aplicare transferurile către dispozitive pe scena de construcție Sper că într-o bună zi se va întâmpla.

PARTEA 1. Utilizarea utilitarelor.

Mai întâi, copiați fișierul firmware sursă .rgn la un anumit director separat. Copiați aceeași pistol utilitar (grabere)

1. Sintaxa de a apela gunp Numele de fișier [/ old]

Numele fișierului este un parametru necesar. Numele fișierului indică fișierul firmware.

Cheia / veche este folosită pentru a îmbunătăți procesarea fonturilor "foarte vechi", atunci când nu se găsesc fonturi.

La ieșirea din același director, primim aproximativ următoarea listă de fișiere:

bootseg.bin - Sectorul de boot

font001.bin - fișier numărul fișierului 1

font002.bin - numărul 2

fw_all.bin - firmware-ul principal (acest cod este transmis la updater.exe prin intermediul interfeței de schimb)

header.bin - antetul fișierului .rgn

loader.bin - codul programului de încărcare (acest cod este transmis la updater.exe prin interfața schimbului la etapa inițială - pentru a porni firmware-ul) (pot exista mai multe descărcări)

image001.lbm - imagini conținute în firmware-ul dispozitivului

image002.lbm - se întâmplă să nu se întâmple :)

extract.log - fișierul jurnal al lucrării de distrugere

lang_001.txt este un număr de resursă de text 1.

  • Notă 1. Utilitarul gunp poate să nu finalizeze lucrarea sau să creeze fișiere mari - aceasta se datorează firmware-ului :) Pur și simplu apăsați Ctrl-C și programul se va termina. Uneori fișierele sunt mai mari decât cele indicate aici, uneori mult mai puțin.
  • Notă 2. Cel mai bun caz de utilizare poate fi gunp orig_firmware.rgn [/ old]> ew

Aceasta este o redirecționare a fluxului de ieșire de mesaje program către fișierul ew.

Folosind utilitarul Grabres.

1.a. Sintaxa pentru apelarea grabrilor este FileName

Numele fișierului trebuie să fie (pentru moment) DOS 8.3

Utilitarul va cere care offset să pornească de la: specificați decalajul dintre resursa de text din sistemul zecimal față de începutul fișierului.

De asemenea, trebuie să specificați cât de multe caractere \ 0 din resursă sunt considerate sfârșitul lucrării. De obicei, 4 este suficient, dar există cazuri exotice.

De asemenea, trebuie să specificați numărul maxim de rânduri pentru o singură resursă de text. Fișierul rezultat este res.txt. Trebuie să fie editat manual, eliminând liniile inutile care nu sunt legate de nicio resursă de text.

O sugestie. De obicei, limba engleză se termină cu linia Zoo / Aquarium, dar există și excepții.

PARTEA 2. Aproape nimic de făcut nu este necesar atunci când totul se face.

Ca urmare, la sfârșitul părții 1 s-au primit fișiere text cu resurse de text și fișiere binare cu fonturi raster și vector.

Copiați tot fontul de fonturi. bin și una dintre resursele de text (de exemplu, engleză, lang001.txt) într-un director separat.

PARTEA 3. Traducerea textului și motivul pentru care Excel este un instrument bun.

După deschidere, salvați fișierul ca .xls. Puteți elimina în continuare caracterele \ 0 (trebuie să le adăugați mai târziu) pentru a facilita traducerea. Se va localiza o coloană de lângă traducere. Trebuie remarcat faptul că caracterul special \ n nu poate înlocui și curată (astfel încât să nu perturbe formatarea textului atunci când este imprimat pe ecranul dispozitivului). Puteți să-l mutați de-a lungul unei linii în rațiune.

Deci, opțiunea unu: traducerea de la zero. În medie, se calculează numărul de linii necesare pentru traducere

1000. După ce ați petrecut ceva timp cu dicționarul, veți obține o traducere a aproximării zero. De ce zero? Acesta nu a fost încă testat în aspect în dispozitiv - este evident că corectarea și corecția vor fi necesare. Ar trebui să evitați traducerile lungi, să creșteți linia, dar este în regulă dacă linia este mai lungă decât șirul original (de exemplu, englez). În limbi diferite, dispozitivele iau în considerare diferite lungimi de cuvinte.

Credem că coloana de lângă original este o traducere. Nu uitați să adăugați caracterul \ 0 (dacă este eliminat în stadiul inițial) prin intermediul funcției COUNTER. Coloana rezultată este necesară pentru a copia și a face o inserție specială în fișierul nou - numai valorile. Salvați ca fișier text cu o defalcare în șiruri de caractere.

După ce salvați un fișier text (să-l numim trans.txt - resursă de text Rusă) necesită o verificare obligatorie pentru „helpfulness“ ehse1 - înlocuire citate „citate de prisos (cel mai bine pentru a evita utilizarea citate), de exemplu, o ehse1 linie creat :.“ NEWLINE „“ 1111 „“ \ 0 „inițial arăta ca o linie de alimentare“ 1111 „\ 0

A doua opțiune: există evoluții în traducere. Aici se poate gândi la mai multe moduri, dar eu dau un indiciu: MECI, INDEX, IF, ISERROR, iar altă utilizare „Format - Formatare condițională.“ De colorat pentru celule.

Fișierul trans.txt salvat este copiat ca in.txt (pentru utilitarul pre2bin).

PARTEA 4. Editați (sau nu faceți) fonturi.

Astfel, am decis ce fonturi trebuie editate.

Toate fonturile care rezultă sunt așezate cu ușurință într-un folder separat (să zicem de lucru) și să le oferim nume similare cu cele inițiale. De exemplu, font007.bin în limba rusă va fi numit font007r.bin.

PARTEA 5. Ambalați textul

Ușor de editat, resursa de text este absolut inacceptabilă pentru scrierea directă pe dispozitiv. Trebuie să fie împachetat. Acest lucru este realizat de utilitarul pre2bin.

Sintaxă de a apela pre2bin

În acest caz, resursa de text de intrare pentru pachet trebuie să fie conținută în fișierul in.txt

Resursa pachet de text de ieșire va fi conținută în fișierul out.txt

Redenumiți out.txt la langRu.bin (pentru comoditate).

PARTEA 6. Patch-uri suprapuse.

Pentru asta trebuie să știți unde să o puneți. Examinăm cu atenție fișierul extract.log (rezultatul muncii pistolului din partea 1) și vedem decalajul din fișierul pe care s-au găsit resursele specifice: fonturi, text.

Să presupunem că decideți să înlocuiți limba 005:

Și sa dovedit că fonturile necesare sunt în fișiere

Ne amintim că resursa de text ambalată este numită langRu.bin

și vom copia firmware-ul în directorul sub numele in.bin

Apoi tastăm echipa

patch in.bin langRu.bin / H000125BF

Redenumiți res.bin la in.bin

Similar pentru fiecare dintre celelalte fonturi rămase.

patch in.bin font006r.bin / H00258AFB

ren res.bin in.bin

Consiliul. Scrie fisierul .bat - viata va fi mai usoara.

După toate acțiunile, sa realizat firmware-ul, care poate fi cusut. Dar nu trebuie să te grăbești. Creați un director separat (de exemplu, test) și copiați firmware-ul primit acolo. Dezarhivați-l din nou folosind numele de firmware firware_name> ew

Dacă totul a mers bine, aceleași fișiere vor fi obținute ca în Partea 1. Numai resursa de text va fi înlocuită cu limba rusă, iar fonturile vor fi ușor diferite (și ele sunt rusești). Comparați offseturile generate acum în extract.log cu cele precedente. Trebuie să coincidă.

Îmbunătățiri cosmetice. Rămâne să se calculeze suma corectă de control CRC pentru firmware (dispozitivul său calculează în modul service). Dar nu acum. Sau te lasă ca temă.

ANEXA 1. GLOSAR.

  • Procesul de încărcare a unui program în memoria flash a dispozitivului.
  • un fișier .rgn binar care se află lângă utilitarul updater.exe atunci când despachetați fișierul de actualizare .exe de pe site-ul Garmin.

Un patch este un fișier binar (suprapunere) pe un alt fișier binar al unei modificări. Rezultatul este un alt fișier binar (patched) cu unele proprietăți dorite (de exemplu, rusă).

updater.exe - aplicație de la garmin pentru a bloca fișierul .rgn binar

Resursă de text - toate șirurile de text ale unei limbi. Conținut în fișierul lang. txt

Legarea (simbol font) - legarea afișării simbolurilor similare ale alfabetului rus cu simbolurile alfabetului englez.

ANEXA 2. REFERINȚE.


Avertizare. include (/sii/end.htm): nu a reușit să deschidă fluxul: nu există un astfel de fișier sau director în D: \ www \ www.water-mir.spb.ru \ gps \ text \ text100.shtml pe linia 191

Avertizare. include (): Deschiderea nereușită "/sii/end.htm" pentru includere (include_path = 'D: \ XAMP \ php \ PEAR') în D: \ www \ www.water-mir.spb.ru \ gps \ text100.shtml pe linia 191

Articole similare