Jump to content

Customized ROM 101


Guest rcperez

Recommended Posts

Guest rcperez

Customize your ROM (For SP2002 only)

This tutorial will teach you how to change the splash screens (shutdown and startup images only not the bootscreen), WMP Background and button image (not skins), fonts, and just about all the images permanently.

Warning: this thread is not for the faint of heart and for educational purposes only. Don't blame me if you wreck your phone, since this involves direct rom manipulation and flashing its easy to destroy your phone.

What is a ROM (if your asking this question this thread is not for you)

Every part of your ROM is encrypted, except for the Image files, Font files and some provisional files (please do take note if you change the provisional files you will recieve ERROR 1 after ipsm check.

1. First you'll need WinHex the higher the version the better.

2. A copy of the resource that you want replaced (copy this from your

WINDOWS directory on your phone) let's take ms_splash.gif as an

example

MS_Splash.gif File Size 15kb Disk Size 15.5kb

so you need a replacement image with this size 14.7 - 14.9kb (padding an image with white border would lessen the actual file size)

How to change an image file:

Open your rom file NK.nbf with winhex, on the same window open ms_splash.gif, highlight the whole ms_splash.gif on the lower right you will see a value, this is the size of the current highlighted item. Let's say it says 3C07 (so this means that you are going to look for a resource in NK.nbf with a size of 3C07). Click on Edit-Copy Block-Copy Hex Values.

Now we will do a search in NK.nbf, click hex search paste your value there then click find.

NOTE: a typical GIF file has this for a header "GIF87" or "GIF89" and ends with ";" always.

Now highlight your found HEX, start with GIF and just keep on highlighting it until the lower right value is near equivalent to 3C07. If the ending character for 3C07 is a ";" then it might be your ms_splash.gif?!? if not you got the wrong gif continue searching. Well just to be sure click Edit-Copy Block-Copy to a new File and save it as noname.gif (try opening this one with an image editor and confirm if its indeed the image you intend to edit)

Now everything has been highlighted and you've confirmed its the right image, press page up to go back to your Header "GIF" and place your cursor under G of "GIF".

Now for the fun part get an image lesser or equal to ms_splash.gif (i've included a sample below its around 14.9kb let's call this dupped.gif) open it with winhex with the same window where NK.nbf is on. Now highlight everything in dupped.gif, checking for the size on the lower right of your winhex which should be equal to or lesser than 3C07. In our case its lesser, click Edit-Copy Block-Hex Values then go back to your NK.NBF window making sure that the cursor is still under the "G" of "GIF", click Edit-Clipboard Data-Write (disregard all the prompt). All the written data will change color from within the highlighted selection, you will see below that the data we pasted is lesser than the highlighted selection. All you do is after the ";" of the written data you pad it of with the hex value of "00" until you reach the end of the highlight (where the original end of the gif file is ";" and padd that one with 00 also)

Note:HEX value 00 is . in text please use HEX Values only

Press File-save

This same process goes true for changing fonts and other images within the ROM. Some file path and provision which are readable could be edited as well. Like for example (skin path, some minor regtweaks, application path, etc)

How to install your new ROM?

Unzip your OriginalROMUpdater.exe on your desktop, run CAAUPDATE or whatever your update program is. Click NEXT and stop if you see this screen "Updating from xxx to xxx". Now copy your edited rom replacing the original NK.NBF and continue updating your phone.

Warning: DO NOT EDIT FILES WITH HEADERS LIKE "MZ" (THE TYPICAL EXE HEADER) IF THEY ARE DIGITALLY SIGNED IT WILL SURELY CORRUPT THAT FILE.

Now all your custom images, fonts, and provisions will be a permanent part of your phone.

Anyways here are some more of the things you could do in customising a ROM.

- Accentuated Characters in SMS

- Edit your defualt SMS TEXT (the builtin "Insert Text"

- Some Default Prompts

- Changing of default FONTS

- Changing Application/Driver Paths

- Default Regional Settings

- Default Ringtone Assignment (you cannot edit tones unless you decrypt or encrypt your tone before import)

- Change the info in ABOUT (Powered Smartphone 2002 prompts and extra text below)

- Camera Lightsensor

- Default Favorites (Provisional Files)

- Application Unlock (a bit tricky)

- MSN Messenger background

- WMP background and buttons (just the images if you want to change the skin or .skn file you could change the pointer to your SD with your predefined skn and graphics)

- almost all of what you could do with SmartTweak you could apply it here (with file size limitation that is)

- etc.

LEGALITIES: Since there is no mentioned of Copyright/Trademark on this tutorial its not IPO oriented, hence free from all legalities what so ever.

boot.GIF

Link to comment
Share on other sites

Guest plog

Small warning, if you corrupt the checksum you corrupt the whole file, hence the 00 padding. During this stage you MUST BE EXACTING in what you do, keep a clear head, be methodical and do it in a quiet house with little or no distractions - not even a tv on.

Its really no harder than editing a bootblock from an old amiga disc ... but anything is easy when youve done it a few times..... hehe FUN !

Link to comment
Share on other sites

Guest rcperez
Does this give the same result as changing the registry entry for startup/sutdown screens etc.?

Yes in a way, but this will survive a hard reset and it will not eat up any of your precious phone memory or sd memory coz its in rom. This will be your after HR default no more reinstalling. :)

You could also change the registry entry on the rom to point to your SD, same goes for WMP skins and other tweaks.

Tweak for accentuated character look for the value of T9german.dll on offset decimal 1591248 you would see something like

t9german.dll t9englis.dll t9french.dll

This is where the filenames of these files are stored now to have a defualt extended or accentuated characters in SMS do this.

t9englis.dll t9german.dll t9french.dll

yup, that's right we've swapped the filename so that it will load the german character set where the extended characters are :lol:

Link to comment
Share on other sites

Guest rcperez
err, why go through all that when you can change the same things in the regsitry?

hmmm er maybe coz everything you customize would survive a hard reset?!? Anyways this is just an infommercial it doesn't mean that you guys have to do all of this dwindling with the rom thingy its just a good to know thing. Well this also answers the unanswerable questions on how to permanently fix the splash screen, wmp skins, fonts and tweaks by default.

And who needs customized embedded apps, tones, skins, and homescreens on their rom anyways, all it will do is just hog all the useless space in rom and not in memory right. What was i thinking :)

Maybe mate the question should be is, why always change it in the registry when you could have at default.

Link to comment
Share on other sites

Guest Lopio

Hmmmmmm I wish i could understand what u guys are talking about, im no techie..... it seems im reading an alien language hehe... mabuhay ka RCPerez!

Posted from my SmartPhone!

Link to comment
Share on other sites

Guest rcperez

A milder introduction to Customising ROM (in English)

What are we talking about here? well think of your rom as a 1000 paged book where it has an index of every characters and images on it, as well as a table of contents for all the words used. Now some of the entries in the book are in a foreign language, some with images and some are in your own native language. While your phone is well, lets say an old skeptical teacher that will read your book, if he finds it to be acceptable then youll get a good grade (Customized ROM) else you will forever regret you ever customized your book (Dead SPV).

Ergo, if you legally own a book (SPV and the ROM in it along with the update) you could do whatever you like with your book, even post what you did with it, just don't replicate and distribute the edited one. And don't expect that you'll get anymore support from the author after doing that.

Now you want to customize your book, lets say change the introduction cover of the book (Splash screen), you could always change the cover afterward but let say you want it that way by defualt. So you need a cover that is the same size as the original cover right so it will still look original and untouched and so that your teacher (SPV) wont notice it. Now if you have a smaller cover for your book you could pad it off with masking tape (HEX Value 00) to fill in the gaps just make sure its precisely the same size.

Same goes for changing the images within the book, just find the starting and ending index number of the image, check the size of the image and find a replacement image with the exact same size. Well if you can't find an exact replacement you could put a smaller picture and just place a masking tape on it to fill in the gaps. Just make sure its the same fit. If you put a picture that is bigger than the original it will destroy the surrounding images or texts in your book so that's not good.

For editing text, its a little straight forward and best explained by an example, Note:Space " " are represented by * character

e.g.

DUMBPHONE

change it to

MYPHONE**

Since MYPHONE only has 7 letters and dumbphone has 9 i padded the two remaining letters with 0 (00 hex value).

So why do this? well maybe you want to change how a book looks, contains, or maybe just how its just plainly read without always using your imagination and "what if's" for the pictures. Just like editing a book, customising a ROM is not for everyone, if its not your cup of tea then drop it and get a cola. :)

Link to comment
Share on other sites

Guest rcperez

Hi nedge2k,

To be honest i haven't thinkered with a 2003 rom that much yet as i don't have an E200, if you could open it up in a binary editor it would just show you that the rom is completely encoded. You need to decode it first nbf2nb0 so that the encoding will be much like the E100.

If the resources could be properly mapped we could probably do the same with what XDA could, and that is cook our own rom, but for the meantime i think this is the closest that we could go.

I already did some customization on my phone, even with the limited work area i manage to put some eyecandy in. Here are some screenshots of my phone. (you need to be logged in to view the shots)

ScreenShot020.jpg

ScreenShot009.jpg

ScreenShot008.jpg

ScreenShot007.jpg

ScreenShot006.jpg

ScreenShot004.jpg

Link to comment
Share on other sites

Guest titi366

I have test this method with a French ROM 2.6.2.4 for Windows mobile 2003,

I have it first decrypted then modified and Re-encrypted but at the time of the update I have an error 102: image file checksum error

I wanted to know if there were average to avoid this checksum?

thank you

Link to comment
Share on other sites

Guest rcperez

Im not sure with the 2003 rom but do this little test, try decrypting then encrypting the rom without changing anything, you should have an identical copy of the original, if there is any descrepancies then that procedure is not acceptable.

Unlike the 2003, the 2002 rom is already in an "unencrypted state" when compared to the 2003. Meaning you don't have to decompress it in order for you to edit it (well for some of the entries anyways).

Anyways, checksum checking is checked by the FLASH Update Utility program, if you bypass that your phone will accept anything, including a dead ROM but since were only changing the textbased entries in ROM it shouldn't be a problem system wise.

There is no way to avoid the checksum error that you were mentioning, since just a little bit will change the sum. Please be forwarned that customizing rom on a WM2003 HAS NOT BEEN TESTED and since it involves decrypt-encrypt procedures the chances of a dead phone is very very high, i highly recommend not doing this. Remember if something goes wrong, if you flashed garbage on your smartphone its irreversible and instead of a customized rom you'll have a shiny paperweight

Link to comment
Share on other sites

Guest nedge2k

It would be intresting to see what Florin_M's take on all this would be. He knows more about this stuff than the whole forum put together, well, probably. He knows alot anyway :wink:

Link to comment
Share on other sites

Guest titi366

I tested decrypting then encrypting the ROM without changing anything and it' s ok to update.

But however when I use the last version of dumprom with my NK.nbf modified after having it re-decrypted with xdatool in .nb0,

I find well all the files of my personalised ROM in the file of extraction, perfectly.

i used this command with dumprom:

( create a file "files" before where you have dumprom.exe )

dumprom nk.nb0 -4 -d files >NKinfo.txt

if not I saw that there was new Perl script here:

http://www.xs4all.nl/~itsme/projects/xda/romtools.html

but I did not have time to test them

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.