Jump to content

[REF] Cooking info, kitchen, tools, etc ....


Guest rodrigofd

Recommended Posts

Guest kydkylin
Hello all.

The subject of splitting, checksumming and repackaging a rom has been dealt with extensively up to now, and with Rodrigo's little tool + Pako's Executor I think that the relevant tools are fairly complete. However, what I find lacking is a toolkit for doing the actual cooking. Of course, BuildOS+PkgTools do a great job in preparing the dump for building the imgfs, and there are tools that can help if we want to add new packages, but I haven't found anything to help me with removal of OEM packages. In particular, I have to go through hundreds of kilobytes of text in initflashfiles.dat, *.provxml and *.rgu files.

To this end, I wrote a small tool that can do a bit of analysis itself. In particular, it can scan initflashfiles.dat and build a filelist for each package it finds in there, so I can delete files easily from the OEM folder on a package basis. The plan is to extend the tool so that it deletes files automatically, and also analyze *.provxml and *.rgu files and manipulate their entries.

Do the other cooks here find that such a tool would be useful? Bear in mind that I'm very new to the subject of cooking (but I'm a good programmer and I learn fast), so I may be going in a completely wrong direction. I would appreciate feedback. I have attached the output of the tool for my own phone's initflashfiles.dat.

Thanks for your help,

George.

Hi,George

It’s so great to hear you've written the great tool and I'm looking forward to your sharing it with us~~~

Thanks a lot~

Link to comment
Share on other sites

Guest kydkylin
HI george... it's great good programmers are contributing with their creativity to improve the job, which is pretty 'home-made' and rough..

Of course doing it all by hand is very tedious, so i've been writing a great tool myself all this months, for my own personal use, but it is becoming pretty powerful so i might share it with rest..

Basically, it is a all-in-one, file operations and registry editor, that imports and exports all kinds of file types, CAB packages, OEM packages, RGU/REG files, INITFLASHFILES files, PROVXML files, with all possible supported commands.

Although simple, its very powerful: you can for example, load a huge RGU registry file (i8000 OEM apps have almost all reg. settings in a single RGU file), check certain portion of registry settings, and extract it to a different RGU or even a PROVXML, at your choice.. Same for initflashfiles, etc.

Your o2util.exe is so great!

Can't wait for your new tool being released~~ ;) :)

Link to comment
Share on other sites

Firstly, thanks so much to rodrigofd, Khuanchai, wes58 for making this thread very informative for beginner o2 user like me. i believe this community had many intelligent like them too... and not forget to secany for his generous rom contribution.

after i used rodrigofd and pako777 tools, i now can have rom to cooking. for making changes, i just delete file that i dont need and making some adjustment to registry. please correct me if im wrong.

the problem is, i can delete some of keyboard and replace for other keyboard software. how can i cook-in the software and make it as default? let's take example of fingerkeyboard...

Link to comment
Share on other sites

Firstly, thanks so much to rodrigofd, Khuanchai, wes58 for making this thread very informative for beginner o2 user like me. i believe this community had many intelligent like them too... and not forget to secany for his generous rom contribution.

after i used rodrigofd and pako777 tools, i now can have rom to cooking. for making changes, i just delete file that i dont need and making some adjustment to registry. please correct me if im wrong.

the problem is, i can delete some of keyboard and replace for other keyboard software. how can i cook-in the software and make it as default? let's take example of fingerkeyboard...

Just as you said, you need to delete Samsung's stuff from the file system and the registry and then replace it with Fingerkeyboard stuff. Don't forget to alter the registry too. Basically you need to open the fingerkeyboard .cab and explore the registry changes it does, and include them by hand in your cooked .rgu. It's a bit tedious. I'm sorry I can't give you step by step instructions but I hope you get the idea.

Link to comment
Share on other sites

Just as you said, you need to delete Samsung's stuff from the file system and the registry and then replace it with Fingerkeyboard stuff. Don't forget to alter the registry too. Basically you need to open the fingerkeyboard .cab and explore the registry changes it does, and include them by hand in your cooked .rgu. It's a bit tedious. I'm sorry I can't give you step by step instructions but I hope you get the idea.

Thanks for reply, is that i need to extract for the cab first? and put the extracted files to the cook rom?

One more thing, the cab instruct the files to install to specific folder, what i saw in rom is just plain files and dont have folder in it. i refer to '\OEM\OEMApps' folder(after dumping). how can i inject the instruction to specify the install to 'program files' folder for example?

Thanks in advance..

Link to comment
Share on other sites

One quick question.

If i use i900 executor 2.6 to assemble, i got PDAxxxxxx.nb0

Is that nb0 able to flash directly? Or i need to do something else before i put to octan to flash.

Thanks a lot.

Learning and trying on newbie stages.

=)

Link to comment
Share on other sites

Guest rodrigofd
One quick question.

If i use i900 executor 2.6 to assemble, i got PDAxxxxxx.nb0

Is that nb0 able to flash directly? Or i need to do something else before i put to octan to flash.

Thanks a lot.

Learning and trying on newbie stages.

=)

Flash the NB0 directly

Link to comment
Share on other sites

Guest rodrigofd
Thanks for reply, is that i need to extract for the cab first? and put the extracted files to the cook rom?

One more thing, the cab instruct the files to install to specific folder, what i saw in rom is just plain files and dont have folder in it. i refer to '\OEM\OEMApps' folder(after dumping). how can i inject the instruction to specify the install to 'program files' folder for example?

Thanks in advance..

Files inside a ROM, get all stored under directory \Windows in your phone, you cannot change that.

What it can be done, is to create routines to COPY any of those files, to any other directory of choice. REMEMBER, HOWEVER, that as they are being copied, you will be storing them two or more times, so you are occupying more valuable storage space, so do it only when absolutely neccesary (e.g. when there are paths hardcoded in programs, etc) .

You can do that with two kinds of routines: INITFLASHFILES.DAT file, or PROVXML files, special files that you put in your dump, and get processed during first boot, making changes to file system, registry, etc.

Look on internet, XDA, or wait here in first post for info on how-to do this files

Link to comment
Share on other sites

Guest DocSnyder
Flash the NB0 directly

I did that, but after the first boot i get a blue screen, with some yellow dots and thats all. The O2 turns off and its not possible to switch on again.

First I disassemble the PDA_I8000NXXIL5_HW_40.MST with i900_EXEcutor_2.6. Than i edit the dump folder and assemble the folder to PDA_091230_011746.nb0. But its dont run. :)

Whats wrong?

Excuse my bad english!

Edited by DocSnyder
Link to comment
Share on other sites

I did that, but after the first boot i get a blue screen, with some yellow dots and thats all. The O2 turns off and its not possible to switch on again.

First I disassemble the PDA_I8000NXXIL5_HW_40.MST with i900_EXEcutor_2.6. Than i edit the dump folder and assemble the folder to PDA_091230_011746.nb0. But its dont run. :)

Whats wrong?

Excuse my bad english!

That's because the .MST rom is a multilanguage rom which has a language pack attached to the end of the file. That's what we have tried at the beginning of cooking i8000 rom and we couldn't bypass the language pack. After you extract the nb0 file and modify it it won't boot. If you put back language pack it may work, but it's not worth wasting time on that. I haven't tried using Pako's application to do it with .MST file - because we didn't have it at the time. So unless something has changed, it won't work. 

To get the proper nb0 file (as has been written many times before) you should use Sorg's application and dump a rom directly from your phone. You will get a .bin file which you rename to .nb0 and then use Pako's executor to dump it.

Link to comment
Share on other sites

Guest DocSnyder
To get the proper nb0 file (as has been written many times before) you should use Sorg's application and dump a rom directly from your phone. You will get a .bin file which you rename to .nb0 and then use Pako's executor to dump it.

Thx for your answer. But i have a new problem: dskdump.exe says "Error - Cannot create \Storage Card\rom_dump.bin".

I think the reason ist, that my "storage card" is called "Speicherkarte". What next?

Link to comment
Share on other sites

Thx for your answer. But i have a new problem: dskdump.exe says "Error - Cannot create \Storage Card\rom_dump.bin".

I think the reason ist, that my "storage card" is called "Speicherkarte". What next?

Try this patched version for Germany. I don't own a german phone, so I can't test it, but pls tell me if this works.

dskdumpde.exe

Link to comment
Share on other sites

Guest DocSnyder

Yeah, my first cooked German ROM is ready! 177MB free!

EDIT: Free RAM on first boot 77,74MB!

2 questions:

Why my changes on the registry away? I'm sure that i save my changes!

Where can i find folders like "autostart" etc?

Edited by DocSnyder
Link to comment
Share on other sites

Why my changes on the registry away? I'm sure that i save my changes!

You have to make sure that there are no entries in the *.provxml files that override your changes. Look for them in the OEMApps and in the language folder. In particular, all files called mxipupdate_*.provxml are processed every time you soft reset (if I am not mistaken).

Where can i find folders like "autostart" etc?

I am not sure I understand your question, but if you're asking where you can find the autostart folder to copy files, there are two places: a. in the initflashfiles.dat and b. in the *.provxml files, but there is a catch: these folders are special and language dependant, so they are encoded as CE strings. Check out this link for more information.

HTH

Edited by gtryf
Link to comment
Share on other sites

Guest MrChiliCheese

Ok, not as easy as i thought :) i used Sorgs utility to dump and extracted it with pakos executor... Now i have another file "OS.nb" and a "dump"-folder with all the files. So, this looks like i can just delete and add files like i want? But where are the informationen about the path are stored? And how to edit the registry?

Link to comment
Share on other sites

Guest DocSnyder
You have to make sure that there are no entries in the *.provxml files that override your changes. Look for them in the OEMApps and in the language folder. In particular, all files called mxipupdate_*.provxml are processed every time you soft reset (if I am not mistaken).

I am not sure I understand your question, but if you're asking where you can find the autostart folder to copy files, there are two places: a. in the initflashfiles.dat and b. in the *.provxml files, but there is a catch: these folders are special and language dependant, so they are encoded as CE strings. Check out this link for more information.

HTH

You are my man! Thank you!!!

Is this possible to delete mxipcold_zzzOEM_QIK.provxml? When i delete all QIK files?

Edited by DocSnyder
Link to comment
Share on other sites

Guest rodrigofd

Regarding provxml, not only mxipupdate_*.provxml but also consider mxip_* and mxipcold_* that also get processed.

For the ones asking above, remember all files in a rom get stored in \Windows\*.* by default. YOU CANNOT change destination directory, what you can do is make copy of them to different paths, by using either .provxml files or the single 'initflashfiles.dat' file.

In short you have to edit 3 kinds of files:

- *.RGU are registry settings file. Format is identical to the *.REG format used by Windows Registry Editor. Edit them in notepad, always save as UNICODE, first line must be REGEDIT4, and you have to keep an empty line (enter key) at the end of file.

Samsung original ROMs have a single 'huge' RGU file that contains registry settings for ALL OEM apps, and all samsung customizations to WM.

- INITFLASHFILES.DAT is a single, optional file, that is put in the dump, that indicates file operations directives, in text format. Study the included one by samsung, to learn how to use it, there are just a few commands.

NOTE: this file is in unicode, but you MUST NOT include the byte-order mark. What's that? When you save a textfile in Windows as unicode, two additional bytes are added to beginning of file (invisible while editing). So after modifying, edit it in a hex editor (like WinHEX), and REMOVE FIRST TWO BYTES.

- *.PROVXML are what is called 'provisioning files'. They are XML text files, that include various kinds of commands, including file operations, registry modifications, certificates installations, network settings, etc. All files starting with mxip_*, mxipupdate_* and mxipcold_* will get processed at first boot. Syntax is the same as the '_setup.xml' file that usually goes inside CAB installation packages.

File format is extensive so look for it on internet.

NOTE: if any file referenced in a PROVXML DOES NOT EXIST in the dump, then THE WHOLE PROVXML file IS IGNORED.

This is a common mistake: you remove some files from dump, like shortcuts, that are referenced in a PROVXML, then the whole PROVXML isn't processed. Keep in mind that.

Link to comment
Share on other sites

Guest MrChiliCheese

Wow, thanks for the information ~ right when i needed it :-)

- INITFLASHFILES.DAT is a single, optional file, that is put in the dump, that indicates file operations directives, in text format. Study the included one by samsung, to learn how to use it, there are just a few commands.

NOTE: this file is in unicode, but you MUST NOT include the byte-order mark. What's that? When you save a textfile in Windows as unicode, two additional bytes are added to beginning of file (invisible while editing). So after modifying, edit it in a hex editor (like WinHEX), and REMOVE FIRST TWO BYTES.

Is this a general windows think or only on notepad/editor?

edit: So, i changed some values, for testing. Then i used pako executor to assemble (i closed the relocator windows, that was ok?)... Now i have "PDA_091230_165150.nb0" but i don't now what to do... just flash? need to select a csc-File?

Edited by MrChiliCheese
Link to comment
Share on other sites

Guest DocSnyder

Nice tips!

My new version is very fast and small! 78,58MB RAM and 191,73MB free storage. Only some registry tweaks and than is the rom ready!

I'am happy!!!!

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.