Questions... - XPERIA X1 ROM Development

I am thinking about cooking my first custom ROM. The question i have is where do you find the latest OEM,ROM and SYS Folders? I mean the official ones from microsoft. Do you extract them from newer devices? Could i somehow extracts the one from latest R3AA010 UK.nbh .I imagined cooking would be like installing Windows on a PC and then intalling the programs you like but that is not the case. If only someone could create a utility like nLite for Windows Mobile. Life isn't easy i guess...

Related

[Q]ROM Cooking Problems Please Help!!!

Before i get flammed like crazy. I have searched for guides to cooking roms and used all different kinds of kitchens but none seem to work at all. Unless there is something written between the lines that i can't see i just don't think i'm doing anything wrong.
Anyway. When I try an build a rom and create the os-new.nb file imgfsfromdump just crashes and i can't create the file. Sometimes it works but once it fails it doesn't start working for a long time. I'm not sure what i'm doing. I try and dumb a stock rom and rebuild exactly the same but the same thing happens.
If anyone with some xip|sys porting could give me a hand to get past this step i'd appreciate it.
Thanks..
I'm starting to believe it might be a conflict with SP3. Can anyone confirm that they have these kitchens working with SP3?
replace your ImgfsFromDump with the attached version
itje said:
replace your ImgfsFromDump with the attached version
Click to expand...
Click to collapse
Thanks itje. I tried this but it still crashes everytime i try and compile the files. I'm not sure why. Is there something i could be doing wrong? Have you seen this before?
Did ImgfsFromDump ever work for you? (That is, did you try just extract and create the image without modify any content)
For me, I am not following the script in the kitchen completely to create the image. Here is what I execute on the temp directory (w/ dump as sub-directory) and work fine so far. (just make sure you did not remove the imgfs.bin and the payload in extracting the image)
..\TOOLS\ImgfsFromDump imgfs.bin imgfs-new.bin
..\TOOLS\ImgfsToNb imgfs-new.bin os.nb.payload os-new.nb.payload
..\TOOLS\NBMerge -kaiser os-new.nb
Strangly enough it did work a couple of times then i just started getting that error that says "imgfsfromdump needs to close" that basic windows error. I thought it might have been DEP but i made a exception for that program. I'm going to try this and see if i have the same problems.
I'M SUCH AND IDIOT!!! The reason it was crashing is cause i kept building the dump into packages. So i assume it was looking for files in the wrong place which just causes the process to fail. Thanks guys!!!
Can someone help me find this 21109 build to where i can actuallyt port it? I've tried to extract it from various roms and all it does is fail everytime and my phone is stuck at the sony screen.
*******EDIT******
I finally figured out how to get XIP ported but now i'm having a problem with the SYS folder. No matter what SYS folder i use and no matter how many different tutorials i go through i still get the same point. I flash and it sits at the sony ericisson symbol and does nothing. Is there some folders i shouldn't change in the SYS?
run g'reloc on the stock sys folder from x1, note all the values..
then run g'reloc on your new UNTOUCHED sys, where you change NOTHING...no swapping of files (unless you port from vga or qvga, or change locale, but thats another story) then change the values on the new sys with the values from the stock x1 sys, apply changes, and you have ported the sys.
cheers
itje said:
run g'reloc on the stock sys folder from x1, note all the values..
then run g'reloc on your new UNTOUCHED sys, where you change NOTHING...no swapping of files (unless you port from vga or qvga, or change locale, but thats another story) then change the values on the new sys with the values from the stock x1 sys, apply changes, and you have ported the sys.
cheers
Click to expand...
Click to collapse
When i run g reloc i get the same values as i did with the original build. Let me see if i understand the file hierarchy correctly.
1. I run G'reloc where i have my stock ROM's SYS folde. (note those values)
2. then i run G'reloc where my Donor SYS folder with the rest of the crap from the Donor ROM.
3.Then i copy the Donor SYS folder into the location i have my stock ROM SYS folder and overwrite. I run G'reloc again if the information is different from the first time i ran g'reloc i change it and hit do it.
Is this what i should be doing? I do this and i get the same result no matter which ROM i try and port from. I am porting from a touch pro ROM so is there anything i would need to change due to the vga to wvga switch?
swap from the modules marked with red to blue
base_dpi_192_resh_480_resv_640
to
base_dpi_192_resh_480_resv_800
since our device is WVGA you need to have the value set to 800 instead og 640.
So swap the folders with 640 from donor rom to the ones from either blackstone or x1
I can't get anything to work... If i extract the xip from this 21109 build that i have and try an use xipporterex to create the new xip and write it into the os.nb.payload and then merge the files. If i take that os.nb that is created i can build that and it will boot but if i try use the rom build procedure where it makes the os-new.nb file it will never boot. Even if i do nothing but just extract and rebuild the rom will not boot. From this i assume that i'm doing something wrong, 21109 build is corrupted or both. I'm not this inept. This shouldn't be giving me this much trouble with all these tutorials. Can someone please help me out with the exact procedure they use when building an X1 rom with porting over a new build?

Extracting files from ROM

Hello!
My question is: how can I extract for eg. programs .cab files from .image or .nbh ROM?
I want to get original Mobile Opera 9.5 from R2AA UK Generic ROM, because some other version of opera overwritten it and I don't want it - just need original one back.
Check this thread in Development and Hacking, a tool to view files inside nbh ROM files: http://forum.xda-developers.com/showthread.php?t=377514
Thanks! It helped. Is it also a way of cooking a new custom rom?
Edit:
I exported the file... but its "hidden" without option to make it visible. How to make it normally visible?
I'd really kick back, make yourself a couple of weeks worth of coffee and read, read read and then read some more.
There's quite a lot in the wiki on how to cook roms, which serves as a good start but to do it properly it will help to know some of the background to what you're doing.
Hence the reading.
FWIW I've just started playing with ervius visual multilang kitchen, it's quite nice, much better than some of the others. Do a search on it if you want to find it and try visualkitchen_v2_1
Of course it's a bit worrying that you want to cook your own roms, without knowing what's inside the one you're using.
IF you want the opera from r2aa and you're using a stock unmodified R2aa then look in windows (using a proper file explorer such total commander)
or use the search on here, as the one I posted has been linked a huge amount of times already, including 3 times in the past 2 days. .
http://forum.xda-developers.com/showthread.php?t=469420&highlight=kitchen
This is the link to ervius' kitchen
http://forum.xda-developers.com/showthread.php?t=377514
this is a good prog for viewing .nbh files
vinokirk said:
http://forum.xda-developers.com/showthread.php?t=469420&highlight=kitchen
This is the link to ervius' kitchen
http://forum.xda-developers.com/showthread.php?t=377514
this is a good prog for viewing .nbh files
Click to expand...
Click to collapse
nah you need to let people learn to use the search engine
he he he...just doing a good dead...maybe st peter will let me thru the pearly gates for this
Also im getting sick of seeing things in a thread and then never being able to find them again!!!
Same thing with prog and apps, ill download them then i can never remember what they are for, where i put them or where i unzipped them to...ARRRGGGGHHHHHH
vinokirk said:
he he he...just doing a good dead...maybe st peter will let me thru the pearly gates for this
Also im getting sick of seeing things in a thread and then never being able to find them again!!!
Same thing with prog and apps, ill download them then i can never remember what they are for, where i put them or where i unzipped them to...ARRRGGGGHHHHHH
Click to expand...
Click to collapse
Big folder (or series of folders) on the SD card with a text doc listing what does what. that's what I do..

[REF|TUT] My first Rhodium ROM - Completed

I’ve started cooking my own ROM’s only a week ago. I wanted to share my experiences here as it’s not as easy as it seems Well, with the right settings, tools, references, etc it makes it easier though. So this is my sharing back to the community, my tutorial/reference guide on how to cook a ROM.
The result of my days of hard work is named DaxyROM and can be found here.
If you want to start cooking, be prepared to read a lot and spent a lot of time trying your home cooked meals. But when it boots and works as expected, you’ll enjoy all the time spent.
There are 3 steps I’d like to discuss in the following 3 posts:
1) Basic ROM extraction and cooking
2) Adding / Removing programs
3) Upgrading your XIP/SYS (aka install new OS version)
First of all get to know what you’re dealing with. Understand what SYS/EXT/OEM/ROM/XIP is ‘cause at the end of the week you can’t think of anything else. Good source here.
1 Basic ROM extraction and cooking
I’ll be using the Ervius Visual Kitchen and the official WM6.5 ROM from HTC to start with.
* Download Ervius Visual Kitchen. Always use the latest version.
* Download WM6.5 ROM’s from HTC
* Download CustomRUU.exe
Preparing the kitchen:
Extract Visual Kitchen (VK) to C:\Kitchen (will be refered to as Kitchen now)
Create a directory in the Kitchen named RomDump
Open the WM6.5 HTC ROM .exe file with Winzip
Extract the file named RUU_signed.nbh to the RomDump directory
Now open the Kitchen (erviuskitchen.exe). Ignore the warning messages
Click on the bottom left button named “Dump nbh/nb/payload”
Open the RUU_signed.nbh file and wait till it’s completed.
Enter the Kitchen\RomDump\dump directory
Move all files to Kitchen directory
There seems to be an issue with kitchen_build_rom.bat while building your ROM.
Modify your kitchen_build_rom.bat file from this:
Code:
set DSM_TEMPLATE=%dsm%
set DSM_INCLUDES=*
REM **************** TOOLS\platformrebuilder.exe
if not "%errorlevel%"=="0" goto error
To this:
Code:
set DSM_TEMPLATE=%dsm%
set DSM_INCLUDES=*
REM **************** TOOLS\platformrebuilder.exe
REM **************** if not "%errorlevel%"=="0" goto error
You’re now ready to go.
Built your first ROM – The Visual Kitchen Basics:
Click on the pull-down menu next to RHODIUM and select RHODIUM
Ignore the messages. You’ll see the screen building now
Fill in the name of your ROM at the ROM ver. Field
Check the “Real WM 6.5 AKU” field
Click on the “Other” button
Change the –PP value from 6 to 18 and click on the Close button
Save the settings: hit the “Save ROM” button. Filename must end with extension .erv.
You’re ready to hit the Create ROM button
Wait till it finishes
Now open the Kitchen\RELEASE_Rhodium directory
Copy the CustomRUU.exe to this directory and run it
You’re now running the HTC WM 6.5 ROM rebuilded by yourself
Right now your kitchen is ready to use and you can modify it as much as you like.
Part 2: Adding / Removing programs
Right now we know that the kitchen works. We have rebuiled the official version and it boots up fine. Make sure to test your extracted ROM works otherwise you will loose a lot of time. Now it's time to make changes. Keep in mind that the following is what I've teached myself and that there might be better methods in adding/removing packages.
The easiest is removing packages. Just double-click on the package and it won't be included. If you want it back, just double-click again and it's back in. Easy as that.
Keep in mind that you can't remove OEM packages and that if you're removing packages from the SYS you have to be carefull as you might run the risk you remove a core application and that Windows won't boot anymore. You can however safely remove packages like LiveSearch, MSTag, OneNote, etc without any problems.
The EXT directory is where all packages reside. This directory is devided in 2 sub-directories. One for Rhodium specific packages and one for Shared platforms. By default all applications are in the Rhodium directory but you might want to change this manually to Shared if you're planning on building for multiple platforms. For now we'll keep them in the Rhodium directory.
You need to either find EXT packages online, or you need to convert CAB files to EXT packages. That is basically it.
I've found a lot of new EXT files here: http://www.everythingdiamond.info/showthread.php?t=94. You can download new EXT folders and copy them into the VK\EXT\Rhodium\<built>\Rhodium_External_Packages directory. Now load VK and Load your previous saved config. Scroll down the list and you will see your new package. This package is not yet included in the Kitchen. This is useful if you're upgrading packages so you'll know which one is new and which one is old.
If you're upgrading packages, keep in mind that some do depend on each other. For example Manila heavily depends on all kinds of other packages. When you're upgrading one, upgrade the others as well unless you're certain there are no dependances. You'll find out when your upgrading. Make sure to safe your work very often so you can always revert back to your previous situation.
As I mentioned you can also convert CAB's to EXT. This can be done using the package-creator from Ervius. TotalFire Package Converter does the job as well, but I haven't used it yet.
Download your application as cab file. Open the package converter, open the cab file and it converts to an EXT directory. This EXT directory can be copied into the kitchen again.
Adding your own EXT is more complicated. For example if you want to create a package which holds all your registry tweaks.
You can either download this file and change the .reg file, or you can take the hard way and learn by using this tutorial: http://www.mediafire.com/file/j15nqfzkwz5/CreatingOEM.zip
Both are written by user kwbr. See here for more info: http://forum.xda-developers.com/showthread.php?t=480714.
I believe this concludes this section. You should be able to add and remove packages right now. Next stop, installing a different Windows build.
Please sent me feedback on how to improve my posts.
Part 3: Upgrading your XIP/SYS (aka install new OS version)
It's time for the last part of my Tutorial. This time I will explain how to upgrade your XIP/SYS.
First you need to find your new XIP/SYS. I get mine WM 6.5.1 at http://forum.xda-developers.com/showthread.php?t=544445 but there are probably more sources.
First you need to know what to get. If I'm taking the above URL as example, there are several files.
The first one you need is the XIP/SYS one. This however is the OS for a screen resolution of 480x600 (The Touch Pro2 has a screen resolution of 480x800). You still need this file as it the the base OS combined with the (wrong) resolution files. That's why you need the 2nd file named "0409 USA English United States (Includes COMMON DPI, required for others)" as well. This is the english version for all resolutions.
The first file you can just extract in your SYS directory. It will create a new directory with the new build number and a directory named Shared.
The Shared directory you need to move to your ROM directory. This means you end up with a new build number in the Shared directory.
Now we just need to make sure the resolution files are copied. This means you need to copy a list of directories. At first create a directory named SYS\<build>\dpi_192_resh_480_resv_800. Just extract the complete 0409 Language file into a temp directory and the create the following directory structure by moving directories:
Code:
SYS\<build>\dpi_192_resh_480_resv_800\0409\Base_Lang_0409_DPI_192_RESH_480_RESV_800
SYS\<build>\dpi_192_resh_480_resv_800\0409\Themes_Lang_0409_DPI_192_RESH_480_RESV_800
SYS\<build>\dpi_192_resh_480_resv_800\COMMON\base_dpi_192_resh_480_resv_800
SYS\<build>\dpi_192_resh_480_resv_800\COMMON\MediaOS_dpi_192_resh_480_resv_800
SYS\<build>\dpi_192_resh_480_resv_800\COMMON\Phone_dpi_192_resh_480_resv_800
SYS\<build>\dpi_192_resh_480_resv_800\COMMON\Redist_dpi_192_resh_480_resv_800
This concludes the SYS, now the XIP.
The zip file you downloaded also contains a directory named "MSXIPKernel".
Extract this directory to your ROM\Shared\<build> directory.
Now go into the directory ROM\Rhodium.
Inside the builds you can find the OEMXipKernel which are basically the device specific drivers.
Usually these drivers don't change, unless you are upgrading the OEMXipKernel using a newly released ROM from HTC.
For now you have to copy the original build directory over to the new directory and you're done.
Right now your OS is ready to cook:
Open your Kitchen
Open your saved configuration file
Change the XIP and SYS versions (top right) to the new build version
Hit the Create ROM button
You're all set
After creating your new SYS, I suggest changing some default values. For example changing Unsigned Themes/CAB Policies:
Open the file named OEM\Rhodium\0409\Operator Pkg\mxipupdate_oemoperators_100.provxml
Find the section <!--337.01_SecurityPolicy-->
Add the following lines:
Code:
<parm name="4101" value="8" />
<parm name="4102" value="1" />
<parm name="4122" value="1" />
<parm name="4103" value="16" />
<parm name="4097" value="1" />
Save the file
Cook your ROM
Basically this means:
ID 4101: Unsigned CABS Policy = 8
ID 4102: Unsigned Applications Policy = 1
ID 4122: Unsigned Prompt Policy = 1
ID 4103: Unsigned CABS Policy = 16
ID 4097: Unsigned Prompt Policy = 1
Now you won't get warnings if you install unsigned applications etc.
One last thing to keep in mind. Don't forget to grab a new version of the OEM directory once it gets released by HTC.
I've ran into a situation where ActiveSync ran out of memory and a new OEM fixed this.
Thanks
Ervius: Big thanks to Ervius for his great Kitchen and Package creator: http://forum.xda-developers.com/showthread.php?t=469420
Da_G: For providing the latest WM builds: http://forum.xda-developers.com/showthread.php?t=544445
hilaireg: For providing his tuturial which was my starting point: http://forum.xda-developers.com/showthread.php?t=521632
kwbr: For his tutorial on creating applications: http://forum.xda-developers.com/showthread.php?t=480714
Everyone I forgot to add. Make yourself known and I'll add you of course!
This concludes my Tutorial. I hope you find it useful. Please feel free to provide feedback so I can adjust the tutorial or provide answers.
Eventually I may try cooking my own ROM.
Not because I can't find any good roms out there.
But just for the simple fact that I want to learn how to do it.
Thanks for taking the time to write this all up.
Just what I was looking for. I have been searching and reading and searching and reading but not getting anywhere. After following your post I've dissasembled a ROM, renamed it, and then reassembled it.
Now I was just following a recipe and didn't understand everything that happened (what is the -PP value and why am I changing it?) but I'm finally making some progress. Looking forward to your upcoming posts.
BTW, I just used the official TMo US 6.1 ROM that CDGuider dumped and made available. It'll do while I'm learning but I'm really waiting for the Official TMo US 6.5 to be released so I can use it as the main ingredient.
S
sleonard said:
Just what I was looking for. I have been searching and reading and searching and reading but not getting anywhere. After following your post I've dissasembled a ROM, renamed it, and then reassembled it.
Now I was just following a recipe and didn't understand everything that happened (what is the -PP value and why am I changing it?) but I'm finally making some progress. Looking forward to your upcoming posts.
BTW, I just used the official TMo US 6.1 ROM that CDGuider dumped and made available. It'll do while I'm learning but I'm really waiting for the Official TMo US 6.5 to be released so I can use it as the main ingredient.
S
Click to expand...
Click to collapse
Let me know if I missed something. I had to do it from the top of my head so if I forgot to add an action, let me know and I'll add it.
PS, the -PP allows you to change the PagePool size (sort of swapfile for WM).
Some people set it to 0, some to 12-18. I found 18 to be working fine. I must admit that I have too little knowledge to truly understand the PP stuff to come to a clear correct value (I believe it's questionable, the values).
If anyone disagrees, let me know
This is a great post.
I've subscribed because I'm really interested in learning and once I've ran through it myself will reference it on my site for all to use.
Well done you, supply and demand.
Daxy, On Tuesday I get my Pro2 and begin to try. Thanks for a great post!!!!!!!!!!!!!
I download the files of 23069, for example, where should I hold?
Xip and sys...
Awesome Information!! Thanks a lot and I appriciate it because rarely people share knowledge!
Thanks for the clear tutorial! Looking forward to future updates!
really excited to start making my own roms...
thank you for taking the time and making this
hopefully in the future ill be able to contribute to the community...
my touch pro2 could use some of my own flavor lol
thanx for the effort ...
gonna read thru it when i am more awake ... lol ... this seem to be what i am looking for ... wanna cook my own rom but proper info is few and far between for the rhodium ... unless i waslooking in the wrong places ... hehehe
I have used this tool to dump official rom, it works. But when i dump others' customized roms, it always says 'lost XIP'. why?
Thanks all for your kind words.
I've updated Post 2: Adding / Removing programs
Hope you like it. Please let me know if anything is missing.
Next post will be regarding using a new version of Windows, where to place files etc. This one should be up in a couple of days.
eddy16112 said:
I have used this tool to dump official rom, it works. But when i dump others' customized roms, it always says 'lost XIP'. why?
Click to expand...
Click to collapse
Customized ROMs are protected. You cant dump them. You can only dump official ROMs.
eddy16112 said:
I have used this tool to dump official rom, it works. But when i dump others' customized roms, it always says 'lost XIP'. why?
Click to expand...
Click to collapse
ai6908 said:
Customized ROMs are protected. You cant dump them. You can only dump official ROMs.
Click to expand...
Click to collapse
Correct! even if the customized rom was unprotected you still would not be able to rebuild a rom off of it because of the loss of rgu's and dsm's in the origional building process. would be very difficult.. best thing to do is ask for the kitchen files from the chef and hope they can share.
edit: one thing you can do is use an app called rom imaged editor and open the nbh with that, you can grab individual files out, even protected roms you can.. then you can add things on your own.
I've changed the topic to My first Rhodium ROM. Though it would sound better.
joshkoss said:
edit: one thing you can do is use an app called rom imaged editor and open the nbh with that, you can grab individual files out, even protected roms you can.. then you can add things on your own.
Click to expand...
Click to collapse
I have extracted files from kooked roms no biggie. saves time from flashing for sure...
I have tried to extract all files from kooked rom too, and it seems to work. but might be able to use some dll files.
Everytime I build the ROM (rebuilding the stock rom, not config changes) towards the end the kitchen gives me a runtime error, I have tried on a 64-bit vista and 32-bit XP.
After reviewing the log it appears that the problem is:
Executing: kitchen_build_rom.bat.....
ERROR! (errorlevel: 1)
ERROR executing: kitchen_build_rom.bat
ERROR!!!
Wait some seconds...
No ''SVN'' folders present...

Question to Cooks Regarding Old style kitchen

I use an old style Kitchen, and wanted to dump this rhodium rom in oreder to include its manila, however dumping the rom old style entails using a prog call IMGFS that consists of different .exe files.
Now here's the problem....these file are only used through Command Prompt, I tried and re-tried, followed the command list in the read-me.....but nothing, I alwasy get wrong syntax.
If anybody uses this method and would share what exctly he writes in the command prompt would be gr8.
I know i could dump roms using visual kitchen, and I did, but are the resulting folders usable with old style kitchen ?? cuz cooking in some stuff resulted in a bricked device
Use Kovsky kitchen to dump the rom into old style folders....
Regards,
WC
thanks WC will try it out now.....you are my savior today

Noob has a Question.

Hello, im new here and im trying to cook my first TP2 ROM.
Im using "Ervius Visual Bepe´s Kitchen 1.8.2" and my used Stock-Rom is "RUU_Rhodium_S2_HTC_GER_2.07.407.1_Radio_Rhodium_4.49.25.91_Signed_Ship"
It´s Core is "21887", it´s Language Code is "0407" (Germany) and i allready test cooked it after dumping and it worked, i mean i wondered a little bit because of the RUU_Signed.nhb of the Cooked "Stock" had 198 MB while the Original-Stock got 248 MB but in German Forums they told me that´s Normal so i think all is Okay.
Cooking is no Problem so far, i only have two problems:
First is, i don´t have my TP2 Yet, i will get it 2-6 Weeks and would appreciate if someone could test my ROM´s until then.
Second is, i try to integrate some Things that i wanted to have on my TP2, such as a Packet of new Icons for the Battery-State in combination with a tweaked Battery.dll for showing State in 1% Steps.
I import my Cab´s with "50Chickens Ervius Kitchen Updater 1.31 (160110)"
The tweaked Driver integrate´s fine, then next has to be the first attachedment: Some Certificate´s so that Custom-Icon´s can be used. (The Second attachement are the Icons self so that you know which i mean)
The problem is that whatever i do, i find no way to get the Certificate´s in EXT Folder Format (EXT Folders from Ervius Kitchen) or in OEM Format. I tried "Ervius Packages Creator 5.4" in Combination with "MSCEInf", i tried to open the .cab with 7-Zip, open the _setup.xml (the only containing File) but i dont have a Plan where to put the Code Strings, i included a Text file that contains the .xml Content, maybe you Guys now what to do with this, but generally all Cab Converter´s (no matter if OEM or EXT) Fail at this Cab (the first, second runs fine again) and the cab only contains that _setup.xml, i personally think that the "Certificate´s" are some kind of Regesrty Entries or somewhat but i am Noob at this thematics.
Can you please tell me what i have to do with this?
*Pushing*...

Categories

Resources