Struktura ikon NIF (Nokia Image File).

Teoria modyfikacji Nokia OS S40, reverse engineering.

Post by pawelooss » 3 May 2009, o 10:33

Korzystając z faktu, że Rosjanie znaleźli już naszego PPModda i zaczęli się do niego dobierać, chciałbym wstawić tu ciekawy post o strukturze ikon NIF, które używane są m.in. do przedstawiania stanu baterii i zasięgu.

Code: Select all
Please Login or Register, to see this Content



-= Struktura ikon NIF =-
W obecnym Anim nokiowskich ikon (NIF - Nokia Image File) są co najmniej trzy rodzaje:
I. → Ikony składające się z jednego koloru pikseli;
II. → Ikony składające się z kilku pikseli kolorów;
III. → Zestaw ikony składający się z I-go i / lub typu II, animowane ikon.

Najbardziej prostymi strukturami są ikony typu I, i należy im sie przyjrzeć. Pokażę to na przykładzie ikony "rm123_145_3005.43.ppm_e L. 0005": w załączniku postu oryginalny plik NIF oraz rozkodowany BMP.

Code: Select all
Please Login or Register, to see this Content


0x00 02 00 00 00 0C 00 00 00 – Identyfikator rozpoczęcia nagłówka pliku NIF;
0x08 78 - Różnica w stosunku do początku pliku - początek maski ikony;
0x0C 1F 00 - 2 bajty - rozmiar ikon w horyzontalnym (szerokość w pikselach);
0x0E 16 00 - 2 bajty - rozmiar ikon w pionowe (wysokość w pikselach);
0x10 AA 02 09 83 02 00 00 00 00 00 01 00 01 00 01 - 15 bajtów - powołania jeszcze znane;
0x1F C5 - 1 bajt - kolor pikseli z ikon (musisz zrozumieć zakodowany sens, tj. porównanie z RGB);
0x20 - Początek ikony mapy bitowej, zestaw konsekwentnie osiągnięcia innych wierszy pikseli;
0x78 - Wartość tej stronniczości jest zmiana 0x08 - na początku maski ikony.




Kodowanie bitmap

1. Przeniesiony z szesnastkowej do binarnego systemu, zestaw bajtach, który jest w zakresie przemieszczeń 0x20 ... 0x77 (0x20 - na początku bitmap; 0x77 - koniec bitmapy, ponieważ 0x78 - na początku maski). Aby przetłumaczyć z jednego systemu na inny, polecam skorzystać z kalkulatora:
Code: Select all
Please Login or Register, to see this Content

Code: Select all
Please Login or Register, to see this Content


2. Opierając się na szerokość i wysokość ikony (dane wyporowe 0x0C x 0x0E: 1F 00 x 16 00 = 31 x 22 pikseli) pogrupowałem powyższe dane binarne w 22 wierszy, a każdy wiersz w 31 pikseli:

Code: Select all
Please Login or Register, to see this Content


3. Teraz wystarczy zamienić wartość widoczności wyświetlacza 0 na ■ i 1 na □, żeby zobaczyć postać graficzną tej ikony:
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■□□□□□□□□□□□□□□□□□□□□□□□□□□□□■■
■□□□□□□□□□□□□□□□□□□□□□□□□□□□□■■
■□□□□■■□□□□□■■■■■□□□□■■■■■□□□■■
■□□□■■■□□□□■■□□□■■□□■■□□□■■□□■■
■□□■□■■□□□□□□□□□■■□□□□□□□■■□□■■
■□□□□■■□□□□□□□□□■■□□□□□□□■■□□■■
■□□□□■■□□□□□□□□□■■□□□□□□□■■□□■■
■□□□□■■□□□□□□□□■■□□□□■■■■■□□□■■
■□□□□■■□□□□□□□■■□□□□□□□□□■■□□■■
■□□□□■■□□□□□□■■□□□□□□□□□□■■□□■■
■□□□□■■□□□□□■■□□□□□□□□□□□■■□□■■
■□□□□■■□□□□■■□□□□□□□□□□□□■■□□■■
■□□□□■■□□□□■■□□□□□□□■■□□□■■□□■■
■□□■■■■■■□□■■■■■■■□□□■■■■■□□□■■
■□□□□□□□□□□□□□□□□□□□□□□□□□□□□■■
■□□□□□□□□□□□□□□□□□□□□□□□□□□□□■■
■□□□□□□□□□□□□□□□□□□□□□□□□□□□□■■
■□□□□□□□□□□□□□□□□□□□□□□□□□□□□■■
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■■■



Kolory w bitmapach
Code: Select all
Please Login or Register, to see this Content



Have fun! :D
Stranger_GT
You do not have the required permissions to view the files attached to this post.
Last edited by pawelooss on 17 Sep 2009, o 14:53, edited 5 times in total.
ImageImageImage

Kolekcja ➔ Apple iPhone 5s && BlackBerry Curve 9320 && Ericsson A2618s, A2628s && HTC HD2 && MaxCom MM432BB
&& Motorola RAZR V3, V2288 && Samsung Galaxy S && Siemens A52 && Sony Ericsson C902 && Sony Xperia E, Xperia Z3 Compact
&& N♥kia 100, 1100, 1110, 1600, 1616, 3100, 3110c, 3210, 3310, 3410, 3510i, 5510, 5800XM, 6020, 6230i, 6300, 6610i

&& N♥kia 7360, Lumia 730 Dual SIM, Lumia 800, E50, E51, E52, N8-00, N900, N9-00, N95 8GB, N-Gage && Tracer Ovo 1.2 :)

Za ten post pawelooss otrzymał/a punkty reputacji.
pawelooss Male
Pan i Władca!
Administrator

User avatar
 
Offline
 
Telefon: N♥kia E52 || S♥ny Z3C || iPh♥ne 5s
Soft: CFW 081.003 || Android 6.0.1 || iOS 10
Operator: Play
Age: 24
Location: Ruda Śląska

Joined: 27 Feb 2009
Online: 635d 8h 30m 49s
Posts: 11665Topics: 1103
Reputation point: 17167
    Windows Vista Firefox

Post by adam111 » 27 kwi 2009, o 00:00

BoTs RoX! :D
adam111 Mężczyzna
Oddajcie mi cześć!
50%

Avatar użytkownika
 
Online
 
Telefon: Nokia 3110c
Soft: v. 05.50
Operator: -----

Joined: 30 mar 2009
Online:
Posts:    •  Topics:  
    Ubuntu  Firefox

Post by kamilloi » 3 May 2009, o 12:24

Jak ktoś rozkoduje cokolwiek z 3110c będę wdzięczny za info
bo samo w sobie jest opisane dość łądnie
ale albo trafiam na nietypowe (animowane lub kolorowe) albo instrukcja gdzieś ma błąd.

Sygnatury te same więc próbuję dalej
http://kamilloi.4shared.com Główny folder NH
http://ktemp.4shared.com Temp NH
Ewentualny kontakt za pomocą:
Maila, Jabbera, PM
Kochani wróciłem :D
Image
kamilloi Male
Toogle- human google search engine
Administrator

User avatar
 
Offline
 
Telefon: C3-00
Soft: 08.70
Operator: Play
Age: 25
Location: Częstochowa

Joined: 27 Feb 2009
Online: 28d 5h 51m 34s
Posts: 357Topics: 70
Reputation point: 907
    Windows XP Firefox

Post by Whiteman0 » 3 May 2009, o 13:37

Mi po prostu wychodzi więcej danych binarnych niż "rozdzielczość" obrazka.

[ Dodano: 2009-05-03, 14:54 ]
Na dodatek jest pełno ikon, które zapewne występują w innych wersjach językowych.
You do not have the required permissions to view the files attached to this post.

Zanim napiszesz:

© Przeczytaj Regulamin,
© Sprawdź czy odpowiedź na Twoje pytanie nie znajduje się w FAQ,
© Nie znalazłeś odpowiedzi w FAQ? Użyj opcji Szukaj,
© Jeszcze nie znalazłeś odpowiedzi na swoje pytanie? Teraz możesz napisać na forum.

"Głupota poważnie szkodzi Tobie i osobom w Twoim otoczeniu".
Whiteman0 Male
Moderator nokia6300.pl
Friend

User avatar
 
Offline
 
Telefon: Nokia 6300/5130/3100
Soft: 7.21/5.80
Operator: Plus
Age: 27

Joined: 1 May 2009
Online: 2d 4h 47m 40s
Posts: 122Topics: 8
Reputation point: 166
    Windows XP Firefox

Post by pawelooss » 13 Jul 2009, o 17:06

Coś mi z tego wyszło. :D

Plik anim_0004.bin:

02 00 00 00 0c 00 00 00 7c 00 00 00 20 00 16 00
c0 02 09 83 02 00 00 00 00 00 01 00 01 00 01 c5
00 00 00 00 00 00 00 00 7f ff ff fc 7f ff ff fc
7c 78 3f 0c 7c 79 9e 7c 79 39 cc fc 79 39 cc fc
79 39 9c fc 73 98 3c fc 73 99 9c fc 73 99 cc fc
70 19 cc fc 67 c9 cc fc 67 c9 9e 7c 67 c8 3f 0c
7f ff ff fc 7f ff ff fc 7f ff ff fc 7f ff ff fc
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 7f ff ff fc 7f ff ff fc 7f ff ff fc
7f ff ff fc 7f ff ff fc 7f ff ff fc 7f ff ff fc
7f ff ff fc 7f ff ff fc 7f ff ff fc 7f ff ff fc
7f ff ff fc 7f ff ff fc 7f ff ff fc 7f ff ff fc
7f ff ff fc 7f ff ff fc 7f ff ff fc 00 00 00 00
00 00 00 00


■□□□□□□□□□□□□□□□□□□□□□□□□□□□□□■■
■□□□□□□□□□□□□□□□□□□□□□□□□□□□□□■■
■□□□□□■■■□□□□■■■■■□□□□□□■■■■□□■■
■□□□□□■■■□□□□■■□□■■□□□□■■□□□□□■■
■□□□□■■□■■□□□■■□□□■■□□■■□□□□□□■■
■□□□□■■□■■□□□■■□□□■■□□■■□□□□□□■■
■□□□□■■□■■□□□■■□□■■□□□■■□□□□□□■■
■□□□■■□□□■■□□■■■■■□□□□■■□□□□□□■■
■□□□■■□□□■■□□■■□□■■□□□■■□□□□□□■■
■□□□■■□□□■■□□■■□□□■■□□■■□□□□□□■■
■□□□■■■■■■■□□■■□□□■■□□■■□□□□□□■■
■□□■■□□□□□■■□■■□□□■■□□■■□□□□□□■■
■□□■■□□□□□■■□■■□□■■□□□□■■□□□□□■■
■□□■■□□□□□■■□■■■■■□□□□□□■■■■□□■■
■□□□□□□□□□□□□□□□□□□□□□□□□□□□□□■■
■□□□□□□□□□□□□□□□□□□□□□□□□□□□□□■■
■□□□□□□□□□□□□□□□□□□□□□□□□□□□□□■■
■□□□□□□□□□□□□□□□□□□□□□□□□□□□□□■■
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
■■■■■■■■
pawelooss Male
Pan i Władca!
Administrator

User avatar
 
Offline
 
Telefon: N♥kia E52 || S♥ny Z3C || iPh♥ne 5s
Soft: CFW 081.003 || Android 6.0.1 || iOS 10
Operator: Play
Age: 24
Location: Ruda Śląska

Joined: 27 Feb 2009
Online: 635d 8h 30m 49s
Posts: 11665Topics: 1103
Reputation point: 17167
    Windows Vista Firefox

Post by ndt » 10 Aug 2009, o 21:11

witam

zastanawiam się tylko w jakim formacie zapisać te ikony, w fw mamy png, gif i nif więc wydaje się, że bmp powinien być odpowiedni, jednak nif ver 3/4 zdają się mieć kilka klatek
ndt Male
Expert
 
Offline
 
Telefon: Nokia 8855
Operator: T-Mobile

Joined: 6 May 2009
Online: 5d 18h 39m 13s
Posts: 264Topics: 3
Reputation point: 1049
    Windows 7 Opera

Post by maciek » 10 Aug 2009, o 21:21

ndt wrote:witam

zastanawiam się tylko w jakim formacie zapisać te ikony, w fw mamy png, gif i nif więc wydaje się, że bmp powinien być odpowiedni, jednak nif ver 3/4 zdają się mieć kilka klatek


Podobno bmp, bynajmniej tak SGT odkodował ;)
Pozdrawiam.
maciek Male
Just OZ.
Sponsor

User avatar
 
Offline
 
Telefon: HTC Desire
Soft: CyanogenMOD Nightly
Operator: Play
Age: 22
Location: Olsztyn

Joined: 3 Mar 2009
Online: 60d 23h 17m 59s
Posts: 1351Topics: 95
Reputation point: 1711
    Windows XP Firefox

Post by ndt » 10 Aug 2009, o 22:20

a jak zawiera kilka klatek?
ew PPModd potrafi zapisać pliki w postaci tarballa (a w nim klatki jako bmp...)
ndt Male
Expert
 
Offline
 
Telefon: Nokia 8855
Operator: T-Mobile

Joined: 6 May 2009
Online: 5d 18h 39m 13s
Posts: 264Topics: 3
Reputation point: 1049
    Windows 7 Opera

Post by maciek » 11 Aug 2009, o 08:06

ndt wrote:a jak zawiera kilka klatek?


Raczej nie zawierają (wg. mnie na 90% są to obrazki jedno klatkowe).

Ndt, czyżbyś coś kombinował ;) ?

[ Dodano: 2009-08-12, 15:07 ]
Ruscy kombinują, i nawet nieźle im to idzie....;]
Został wypuszczony FAQ, za co odpowiadają poszczególne NIFy w 6300 oraz 6233 (po rosyjsku oczywiście).

Code: Select all
Please Login or Register, to see this Content


A teraz kilka przykładów...;]

Image Image Image Image


[scroll]Tak więc NOKIAHACKING ! Do dzieła ! podmieniajmy NIFy ![/scroll]

Za ten post maciek otrzymał/a punkty reputacji.
maciek Male
Just OZ.
Sponsor

User avatar
 
Offline
 
Telefon: HTC Desire
Soft: CyanogenMOD Nightly
Operator: Play
Age: 22
Location: Olsztyn

Joined: 3 Mar 2009
Online: 60d 23h 17m 59s
Posts: 1351Topics: 95
Reputation point: 1711
    Windows XP Firefox

Post by mar3k » 19 Aug 2009, o 13:30

haha udało mi się podmienić ikonkę nif baterii w noki 6300 oto dowód:
Image Image

baterie podmieniłem na ikonkę ściągniętą z topnokia.ru poniżej daje linka do ikonki, którą podmieniałem:
plik ppm modyfikowałem za pomocą PPM Editor 3.0 Lite.

Code: Select all
Please Login or Register, to see this Content
Last edited by mar3k on 1 Jan 1970, o 01:00, edited 1 time in total.
Pozdrawiam. Mar3k
[center]
Image
[/center]

Za ten post mar3k otrzymał/a punkty reputacji.
mar3k Male
20%

User avatar
 
Offline
 
Telefon: Nokia 6300 modified
Soft: 7.30
Operator: Play
Age: 29

Joined: 27 Apr 2009
Online: 13d 23h 34m 8s
Posts: 48Topics: 6
Reputation point: 396
    Windows XP Opera

Post by pawelooss » 19 Aug 2009, o 22:24

Oto wszystkie NIF-y z 6300, jakby ktoś się chciał pobawić.
Code: Select all
Please Login or Register, to see this Content
ImageImageImage

Kolekcja ➔ Apple iPhone 5s && BlackBerry Curve 9320 && Ericsson A2618s, A2628s && HTC HD2 && MaxCom MM432BB
&& Motorola RAZR V3, V2288 && Samsung Galaxy S && Siemens A52 && Sony Ericsson C902 && Sony Xperia E, Xperia Z3 Compact
&& N♥kia 100, 1100, 1110, 1600, 1616, 3100, 3110c, 3210, 3310, 3410, 3510i, 5510, 5800XM, 6020, 6230i, 6300, 6610i

&& N♥kia 7360, Lumia 730 Dual SIM, Lumia 800, E50, E51, E52, N8-00, N900, N9-00, N95 8GB, N-Gage && Tracer Ovo 1.2 :)
pawelooss Male
Pan i Władca!
Administrator

User avatar
 
Offline
 
Telefon: N♥kia E52 || S♥ny Z3C || iPh♥ne 5s
Soft: CFW 081.003 || Android 6.0.1 || iOS 10
Operator: Play
Age: 24
Location: Ruda Śląska

Joined: 27 Feb 2009
Online: 635d 8h 30m 49s
Posts: 11665Topics: 1103
Reputation point: 17167
    Windows Vista Firefox

Post by ndt » 19 Aug 2009, o 22:34

a jak już się znajdzie ID nie lepiej podmienić na jakiegoś png ? :)
ndt Male
Expert
 
Offline
 
Telefon: Nokia 8855
Operator: T-Mobile

Joined: 6 May 2009
Online: 5d 18h 39m 13s
Posts: 264Topics: 3
Reputation point: 1049
    Windows 7 Opera

Post by pawelooss » 19 Aug 2009, o 22:35

ndt, jeśli telefon to przyjmie, to czemu nie, ale jakoś wątpię. Na topnokia już równo podmieniają, więc rozkminili, ale żadnego teoretycznego how-to nie umiem znaleźć.
ImageImageImage

Kolekcja ➔ Apple iPhone 5s && BlackBerry Curve 9320 && Ericsson A2618s, A2628s && HTC HD2 && MaxCom MM432BB
&& Motorola RAZR V3, V2288 && Samsung Galaxy S && Siemens A52 && Sony Ericsson C902 && Sony Xperia E, Xperia Z3 Compact
&& N♥kia 100, 1100, 1110, 1600, 1616, 3100, 3110c, 3210, 3310, 3410, 3510i, 5510, 5800XM, 6020, 6230i, 6300, 6610i

&& N♥kia 7360, Lumia 730 Dual SIM, Lumia 800, E50, E51, E52, N8-00, N900, N9-00, N95 8GB, N-Gage && Tracer Ovo 1.2 :)
pawelooss Male
Pan i Władca!
Administrator

User avatar
 
Offline
 
Telefon: N♥kia E52 || S♥ny Z3C || iPh♥ne 5s
Soft: CFW 081.003 || Android 6.0.1 || iOS 10
Operator: Play
Age: 24
Location: Ruda Śląska

Joined: 27 Feb 2009
Online: 635d 8h 30m 49s
Posts: 11665Topics: 1103
Reputation point: 17167
    Windows Vista Firefox

Post by ndt » 20 Aug 2009, o 05:56

chodzi o to że telefon nie ma nigdzie zdefiniowane które id czy jest jpg png gif czy nif - sprawdza to po headerze
ndt Male
Expert
 
Offline
 
Telefon: Nokia 8855
Operator: T-Mobile

Joined: 6 May 2009
Online: 5d 18h 39m 13s
Posts: 264Topics: 3
Reputation point: 1049
    Windows 7 Opera

Post by adamke » 20 Aug 2009, o 07:12

Ej chłopaki.. tylko że tylko PPMeditor czytał ikonki od baterii i itp. Niestety NokiX ich nie czyta, a podmiana na ślepo plików bin to nie jest dobre wyjście... :P
adamke Male
Sponsor

User avatar
 
Offline
 
Telefon: Lumia 520
Soft: 8.1
Operator: Play
Age: 25
Location: Zielona Góra

Joined: 3 May 2009
Online: 86d 12h 23m 59s
Posts: 2915Topics: 276
Reputation point: 4512
    Windows XP Firefox

Post by pawelooss » 20 Aug 2009, o 08:52

adam wrote:tylko że tylko PPMeditor czytał ikonki od baterii i itp.

PPModd również wyciąga, tyle że nie nadaje prawidłowe rozszerzenia.


ndt, mógłbyś w nowym bulidzie zmienić, by nadawało prawidłowe rozszerzenia przy eksporcie wg nagłówków? Wydaje mi się, że nie jest to takie trudne, sądząc po dokonaniach już osiągniętych. ;)

Code: Select all
Please Login or Register, to see this Content


[ Dodano: 2009-08-20, 11:38 ]
Mam jakiś bateryjny NIF od 6700:
Code: Select all
Please Login or Register, to see this Content
ImageImageImage

Kolekcja ➔ Apple iPhone 5s && BlackBerry Curve 9320 && Ericsson A2618s, A2628s && HTC HD2 && MaxCom MM432BB
&& Motorola RAZR V3, V2288 && Samsung Galaxy S && Siemens A52 && Sony Ericsson C902 && Sony Xperia E, Xperia Z3 Compact
&& N♥kia 100, 1100, 1110, 1600, 1616, 3100, 3110c, 3210, 3310, 3410, 3510i, 5510, 5800XM, 6020, 6230i, 6300, 6610i

&& N♥kia 7360, Lumia 730 Dual SIM, Lumia 800, E50, E51, E52, N8-00, N900, N9-00, N95 8GB, N-Gage && Tracer Ovo 1.2 :)
pawelooss Male
Pan i Władca!
Administrator

User avatar
 
Offline
 
Telefon: N♥kia E52 || S♥ny Z3C || iPh♥ne 5s
Soft: CFW 081.003 || Android 6.0.1 || iOS 10
Operator: Play
Age: 24
Location: Ruda Śląska

Joined: 27 Feb 2009
Online: 635d 8h 30m 49s
Posts: 11665Topics: 1103
Reputation point: 17167
    Windows Vista Firefox

Next

Return to [S40] Warsztat

Who is online

Users browsing this forum: No registered users and 1 guest