starting out with a fresh kitchen - Windows Mobile

i wanted to start a kitchen and just play with the 23549 build if possible. I've had a couple of people hook me up with their kitchens that are ready to spit a rom out (which is great! thanks) but i don't know how much I'll learn going that route.
So..I've downloaded the latest EVK (heh..big step i know) and i see where/how to get rollups for 23549. But is the base rom still just 6.5? Or is there a specific base i need to get somewhere to get started and then apply the 6.5.x stuff?

You can find a nice and easy to use Kitchen here http://forum.xda-developers.com/showthread.php?t=628948 OsKitchen by Ondraster and Airxtreme.
In thread you will find some of the latest build ready for it and the thread its still alive and ready to help people.

AFAIK, the components you will need are:
ROM
OEMXIPKernel from recent (last) official HTC ROM for your device
MSXIPKernel from 23549
OEM
OEM folder from recent (last) official HTC ROM for your device
SYS
SYS folder from 23549
If HTC did not release a WinMO 6.5 version for you device, your final ROM will be running a hybrid 6.1/6.5 kernel - i.e. not a "real" 6.5 AKU.
HTH,

so ive dumped 5 or 6 roms since ive been home looking for sense 2.1 1919 (last build before 2.5 iirc). Anyone remember which rom it came from?

venelar said:
so ive dumped 5 or 6 roms since ive been home looking for sense 2.1 1919 (last build before 2.5 iirc). Anyone remember which rom it came from?
Click to expand...
Click to collapse
i think 2.1 1920 is the latest, you can find it in uk orange rom 1.90

To create your own custom kitchen you'll need to learn how to strip a shipped rom. So you'll want a kitchen that is already stripped, a dump of the ROM it is based on, and some utils like Beyond Compare (powerfull diff program) and Emeditor (TXT exitor with unicode support)
Then start diffing the two kitchen folder structures and files to see what was removed/added from your source kitchen (Beyond Compare is awesome for this). Start cooking your ROM in small steps so you see how your changes effect the resulting ROM. Also a good understanding of the kitchen you are using is important. In the case of EVK, there is no need for dsm's and rgu's in EXT. You need to understand the EVK "new style" package strcture.
First thing to do off of a dumped rom in EVK is to go through the initflashfiles.dat file and cut and paste each EXT packages entries into an app.dat file in the EXT folder (the one with app.reg). This lets you experiment with turning on/off packages in EVK and not having to edit the initflashfiles.dat each time.
That should get you started on the right track, but be patient... this process will take time to learn.

Hi,
Here's an example to dump a rom by hand, the tools you find in most visual kitchens today.
Before you start with a visual kitchen it's good to learn the tools inside I think.
Here's a small example and it's fun to see and learn.
After doing these steps manual you have a good first impression what a kitchen can do.
Open a CMD window in the directory with this tools and your Ruu_signed.nbh and type te following commands:
nbhextract ruu_signed.nbh [ENTER]
nbsplit -kaiser os.nb [ENTER]
imgfsfromnb os.nb.payload imgfs.bin [ENTER]
imgfstodump imgfs.bin [ENTER]
Dump created....
Now drag the dump folder on Bepe's packagebuider and your packages are created.
OEM
ROM
SYS
Cheers, leo
Edit2; Tools attached inclusive recmod so you have a file inside the module if you try my steps. Credits and thanks to Pof, Bepe and Mamaich for creating these tools.
I've also added a cmd shortcut in the zip, so if you unzip you only need to add your ruu_signed.nbh you want to dump and click the shortcut a command window will open.

To extract the EXT I like to recommend Ondraster's extRebuild.exe
http://forum.xda-developers.com/showthread.php?t=629190
If you drag the oem folder on it it creates the EXT.

pictorial for how to use evk..
u can check this thread for begining..
http://forum.xda-developers.com/showthread.php?t=552317

Thank you for the dump tools!

Related

HOWTO Rebuild own ROM with kitchen?

Hello,
I want to cook my own ROM. After I read many many sites at this forum, I found a 'polaris kitchen 1.3' that seems to be good for me.
I want to use the original WM6.1 O2-ROM as base for my 'new' ROM.
My target is the original ROM without some progs (O2 specific) an also without tomtom, 'Erste Schritte' (First Steps) and opera.
I want to add MyMobiler, and some other cabs. Also, I want to make some registry corrections.
These steps I made:
1. Extract the Updatefile with 7Zip and got the neccassary file 'RUU_signed.nbh' as I understand correctly.
2. Extract the 'RUU_signed.nbh' with this command
Code:
NBHextract.exe RUU_signed.nbh
Now, I have these files
- '00_Unknown.nb', <== Radiofile (Thanx to ianl8888)
- '01_SPL.nb', <== ???
- '02_MainSplash.bmp', <== O2 BootSplashScreen Bitmap
- '02_MainSplash.nb' <== ???
- '03_OS.nb' <== OS file which we need to split
Question1: Do I need only the '03_OS.nb'? What do i need the other files for?
3. I used this command to split the nb-File '03_OS.nb'
Code:
NBSplit.exe -kaiser 03_OS.nb
I got this:
- '03_OS.nb.payload'
- '03_OS.nb.extra'
Question2: Is it OK to use the parameter -kaiser? Remember, I will create a orbit2/polaris ROM
Question3: What are this files for?
4. now I used this command
Code:
imgfsfromnb 03_OS.nb.payload imgfs.bin
to build the 'imgfs.bin' file
5. with the following command I've created a 'dump' folder
Code:
imgfstodump imgfs.bin
This dump folder include many subfolders and files
6. I start the package tool 'PKGTool.exe' an selected the dump-Folder
The output:
Code:
[Selected Path]
C:\Extracted ROM\dump
[Core OS]
Windows Mobile-based Pocket PCs
[Versions]
SYS: 5.2.19965.1203
OEM: 3.13.0.0
OEM: 0.0.1.0
SYS: 5.2.19958.1200
NET: 2.0.7045.0
OEM: 29.6.31301.207
OEM: 29.3.31301.207
[Language]
0407 - German (Germany)
[DPI]
96
[Certificates]
CN=Microsoft Windows Mobile PCA, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
CN=OEM_UpdateCert
CN=O2___102
[Missing Manifests]
d92a4f0a-378a-4482-8fd3-bd127a05e4de.dsm
723fb954-d931-4348-b672-82a188e587b5.dsm
3346da5d-3675-4a67-925e-75f623184bda.dsm
98af2d70-895d-99af-0ffc-ede71fc1186d.dsm
75bcb9fa-30b9-8705-5d86-11acd2e2c1b1.dsm
Question4: Everything OK till now?
7. Now I've selected 'tool' - 'build packages'
Inside the dump folder, I've only two subfolder 'SYS' and 'OEM'
Maybe this is the next step ... (Thanx to ianl8888)
8. Now we must dump the 'xip.bin' with this command:
Code:
RomMaster.exe 03_OS.nb.payload -w 5 -b 0x00310000 -x -o xip.bin
[The syntax recorded in the how-to page had left out the suffix "payload" ]
So I have a XIP.BIN about 3.3Mb which XIPPort.exe has dumped into \Out\Files & \Out\Modules
Question5: What to do next?
Hi,
that is exactly the same I wanna do. After you have the SYS and OEM folder the next would be to re-create the ROM folder for your kitchen. We need a new XIP. That is the point where I don't know how to continue. I have already tested to replace the original SYS and OEM with those versions I build via dumping the new O2 Germany ROM. But after trying to rebuild and flashing the ROM with the kitchen the ROM won't boot.
Therefore I asked the chefs at http://forum.xda-developers.com/showthread.php?p=2657634 to help me.
Hopefully we can take a step further.
Tom
I have already managed to build a new german rom based on the
O2 GER 3.13 released some days ago and I used the XIP 20743 from
Shayders thread to build. Had no errors in cooking but I did not
flash yet because of maybe wrong location of XIP files in the ROM.
But I have another problem with HTC ROM Tool when trying to cook
the radio 1.59.42.15 (or any other) in the ROM. The tool always states:
"The size of this file is greater than default. Do you want to assign this file?"
I said yes and it builds the rom but now I don't know if it would work
because of the warning. I tried different radio.nb files and all of them
are 17MB and all of them give the error in HTC ROM Tool when assigning
them... Is this normal?
Olioaglio
Orbitter2 said:
Hello,
6. I start the package tool 'PKGTool.exe' an selected the dump-Folder
The output:
Code:
[Selected Path]
C:\Extracted ROM\dump
[Core OS]
Windows Mobile-based Pocket PCs
[Versions]
SYS: 5.2.19965.1203
OEM: 3.13.0.0
OEM: 0.0.1.0
SYS: 5.2.19958.1200
NET: 2.0.7045.0
OEM: 29.6.31301.207
OEM: 29.3.31301.207
[Language]
0407 - German (Germany)
[DPI]
96
[Certificates]
CN=Microsoft Windows Mobile PCA, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
CN=OEM_UpdateCert
CN=O2___102
[Missing Manifests]
d92a4f0a-378a-4482-8fd3-bd127a05e4de.dsm
723fb954-d931-4348-b672-82a188e587b5.dsm
3346da5d-3675-4a67-925e-75f623184bda.dsm
98af2d70-895d-99af-0ffc-ede71fc1186d.dsm
75bcb9fa-30b9-8705-5d86-11acd2e2c1b1.dsm
Question4: Everything OK till now?
7. Now I've selected 'tool' - 'build packages'
Inside the dump folder, I've only two subfolder 'SYS' and 'OEM'
Question5: What to do next?
Question6: Should I copy these folder to the kitchen?
Click to expand...
Click to collapse
I don't know how to proceed yet with the "re-building stage", but I think you are still 3 steps short of this, anyway:
we need the XIP.BIN file to use the XIPPORT.exe tool on for XIP Files\Modules. The XIP build no. I have extracted is 19965, but we are already at 20753 for the device-independent MS files
I do NOT yet know how to extract the XIP.BIN file for this. I have successfully extracted it from an Eten temp.dat file (nbh equivalent) but not for HTC ROM files.
So I think we need to do steps 7,8,9 (xip.bin, xipport, \out) yet. How to extract xip.bin ??
Then re-build with edits (whole new ball game)
Some ROM chefs (eg. Ervius, swtos, cs) are generous enough to help, I hope, as they have in the past.
ianl8888 said:
I do NOT yet know how to extract the XIP.BIN file for this. I have successfully extracted it from an Eten temp.dat file (nbh equivalent) but not for HTC ROM files.
So I think we need to do steps 7,8,9 (xip.bin, xipport, \out) yet. How to extract xip.bin ??
Then re-build with edits (whole new ball game)
Some ROM chefs (eg. Ervius, swtos, cs) are generous enough to help, I hope, as they have in the past.
Click to expand...
Click to collapse
OK, later edit:
I've figured out how to dump xip.bin
RomMaster.exe OS.nb.payload -w 5 -b 0x00310000 -x -o xip.bin
[The syntax recorded in the how-to page had left out the suffix "payload" ]
So I have a XIP.BIN about 3.3Mb which XIPPort.exe has dumped into \Out\Files & \Out\Modules
But now, when attempting "make pkgs", XIPPort.exe falls over with "could not load file or assembly" errors these tools are so prone to. A path problem (I think) that continually drives me up the wall. We need the "packages" from XIP.BIN to know which files are the OEM drivers etc specific to the Polaris.
So I'm at steps 7, 8 and 8.5 ... it's like pulling teeth
BTW, 00_unknown.nb is the radio file.
ianl8888 said:
I have successfully extracted it from an Eten temp.dat file
Click to expand...
Click to collapse
I already thought I knew your nickname from somewhere .
ianl8888 said:
OK, later edit:
I've figured out how to dump xip.bin
RomMaster.exe OS.nb.payload -w 5 -b 0x00310000 -x -o xip.bin
[The syntax recorded in the how-to page had left out the suffix "payload" ]
So I have a XIP.BIN about 3.3Mb which XIPPort.exe has dumped into \Out\Files & \Out\Modules
Click to expand...
Click to collapse
Seems to be step 8, thank you! If we are sure that this is the right way, I will insert this step8 into the first post.
But where can I find 'RomMaster.exe'? I've only the beta without the command '-b'.
BTW, 00_unknown.nb is the radio file.
Click to expand...
Click to collapse
I already inserted this into #1
I did it the following way and created a new rom without glitches.
Though don't know if it works because I don't dare to flash it
Thanks, I see that you provided a new XIP in packages
20753 in your new thread. So I decided to use this one with your kitchen and I would breakdown the
steps now with which I built my ROM. Could you
please confirm if I have done right?
1. Download and unrar Shayder kitchen with included (3,8MB) os.nb.payload and imgfs.bin (4,0KB)
http://forum.xda-developers.com/showthread.php?t=421444
(Post #8 in the thread)
2. Download and XIP 20753 from the new thread.
http://forum.xda-developers.com/showthread.php?t=427730
3. Put the extracted SYS and OEM folder from
dumped and packaged ROM of you choice into the Build folder
of the Shayder Kitchen.
4. Put the extracted MSXIPKernel and MSXIPKernelLTK
folder from Shayders XIP 20753 into the SYS folder which
was before copied into the Build Folder.
5. Start ROM.bat in the kitchen
6. Select "1 - Build"
7. Select "1+2+3+4+5" in the next screen
8. Select "0" to let it run
9. Click the green button in the Build tool
10. Close Build tool when run ready
11. Wait to finish the nbh and enjoy!
I did so and got the ruu_signed.nbh file
ready to flash... think no need to XIPport etc.
but in fact I don't know exactly as I didn't flash my rom
Olioaglio
Olioaglio said:
I did it the following way and created a new rom without glitches.
Though don't know if it works because I don't dare to flash it
Thanks, I see that you provided a new XIP in packages
20753 in your new thread. So I decided to use this one with your kitchen and I would breakdown the
steps now with which I built my ROM. Could you
please confirm if I have done right?
1. Download and unrar Shayder kitchen with included (3,8MB) os.nb.payload and imgfs.bin (4,0KB)
http://forum.xda-developers.com/showthread.php?t=421444
(Post #8 in the thread)
2. Download and XIP 20753 from the new thread.
http://forum.xda-developers.com/showthread.php?t=427730
3. Put the extracted SYS and OEM folder from
dumped and packaged ROM of you choice into the Build folder
of the Shayder Kitchen.
4. Put the extracted MSXIPKernel and MSXIPKernelLTK
folder from Shayders XIP 20753 into the SYS folder which
was before copied into the Build Folder.
5. Start ROM.bat in the kitchen
6. Select "1 - Build"
7. Select "1+2+3+4+5" in the next screen
8. Select "0" to let it run
9. Click the green button in the Build tool
10. Close Build tool when run ready
11. Wait to finish the nbh and enjoy!
I did so and got the ruu_signed.nbh file
ready to flash... think no need to XIPport etc.
but in fact I don't know exactly as I didn't flash my rom
Olioaglio
Click to expand...
Click to collapse
I also did it this way. You're right, there is a ruu_signed.nbh after all that staff has finished. But the after flashing this ROM image to the orbit it won't boot. The splash screen is shown but nothing else happens.
I think this is caused by the XIP part.
Tom
tomduke99 said:
. But the after flashing this ROM image to the orbit it won't boot. The splash screen is shown but nothing else happens.
I think this is caused by the XIP part.
Tom
Click to expand...
Click to collapse
OK, what about the 20743 version as os.nb.payload version
as downloadable in Shayders XIP 20743 thread:
http://forum.xda-developers.com/showthread.php?t=424655
(the rapidshare link). This one does not have to be copied
into the SYS folder, but copied directly into the ROM folder.
I created a rom with this one with Polaris Kitchen 1.3.
Don't know if this would boot (didn't flash it either).
Orbitter2 said:
Seems to be step 8, thank you! If we are sure that this is the right way, I will insert this step8 into the first post.
But where can I find 'RomMaster.exe'? I've only the beta without the command '-b'.
Click to expand...
Click to collapse
1) Of course I'm not yet sure that this is the right direction. But I do know that if we want to upgrade the XIP build we have to sort the \OEM and \SYS "packages" from xip.bin. These directories contain OEM drivers specific to the device (here, Polaris)
Still cannot get XIPPort.exe to "make pkgs" although it works with an Eten X500 ROM
2) rommaster.exe is found (from my memory only) in any one of the Polaris or Kaiser kitchen files. It is a very old file, though - Nov 25, 2005. You can also find it in Shayder's kitchen on the front page of this sub-forum
Perhaps there's a later version of a "rommaster.exe" somewhere ?
Olioaglio said:
OK, what about the 20743 version as os.nb.payload version
as downloadable in Shayders XIP 20743 thread:
http://forum.xda-developers.com/showthread.php?t=424655
(the rapidshare link). This one does not have to be copied
into the SYS folder, but copied directly into the ROM folder.
I created a rom with this one with Polaris Kitchen 1.3.
Don't know if this would boot (didn't flash it either).
Click to expand...
Click to collapse
If you are too unsure to test with flashing (I thought that was what HardSPL was for !!) then try to extract your own RUU_signed.nbh in full and see what you get.
ianl8888 said:
1) Of course I'm not yet sure that this is the right direction. But I do know that if we want to upgrade the XIP build we have to sort the \OEM and \SYS "packages" from xip.bin. These directories contain OEM drivers specific to the device (here, Polaris)
Still cannot get XIPPort.exe to "make pkgs" although it works with an Eten X500 ROM
Click to expand...
Click to collapse
later edit: I have XIPPort.exe "making pkgs" now. XIPPort needs to be in its own folder ( ?? )with the support dll's etc.
So now I'm at Step 9 (the unknown) with \OEM and \SYS "packages" for editing.
The base ROM I'm trying to edit is the recent release of the official HTC WM6.1 Polaris ROM. This ROM is not protected by "all-commands-to-one" etc and so is fully extractable and editable if I can figure out how.
I think the next step (likely 10 or 12 sub-steps in there) is to understand the DSM's, RGU's, HV boot files etc. There is a tool XIPAddrTools available on this sub-forum that I have some hope for in helping here
I am trying to do two things with this ROM:
1) replace the XIP device-independent files with an upgraded set (build 1995 to build 2073)
2) remove all the crap that HTC and other ROM cooks put into it - like Cube, Home, Office etc etc
In other words, I'm trying for a WM6.1, recent XIP build, very clean ROM
Maybe ...
ianl8888 said:
I think the next step (likely 10 or 12 sub-steps in there) is to understand the DSM's, RGU's, HV boot files etc. There is a tool XIPAddrTools available on this sub-forum that I have some hope for in helping here
Click to expand...
Click to collapse
There is a very useful "sticky" thread on some of this, started by udK.
Olioaglio said:
OK, what about the 20743 version as os.nb.payload version
as downloadable in Shayders XIP 20743 thread:
http://forum.xda-developers.com/showthread.php?t=424655
(the rapidshare link). This one does not have to be copied
into the SYS folder, but copied directly into the ROM folder.
I created a rom with this one with Polaris Kitchen 1.3.
Don't know if this would boot (didn't flash it either).
Click to expand...
Click to collapse
I just tested without any modifications of XIP. I used the original XIP (os.nb.payload, imgfs.bin) delivered within the Kitchen. Only copied the SYS and OEM from the O2 ROM to the kitchen and tried to build a ROM. Result is a non booting ruu_signed.nbh.
Tom
tomduke99 said:
I just tested without any modifications of XIP. I used the original XIP (os.nb.payload, imgfs.bin) delivered within the Kitchen. Only copied the SYS and OEM from the O2 ROM to the kitchen and tried to build a ROM. Result is a non booting ruu_signed.nbh.
Tom
Click to expand...
Click to collapse
My version attached. If someone wants to try...
It's a german light version of O2 3.13.207.0 ROM
without Cube, TTN, Opera, useless stuff.
With XIP 20743 cooked in as os.nb.payload with
Polaris Kitchen V1.3
No radio included. You will most likely have to flash
1.59.42.15 manually after installation of the rom.
Olio v1 GER (Rapidshare link)
Olioaglio
If been testing around with this thread and this one and made a successful rom, some how the xip files needs to be extracted, 3,4 MB is little low, cause the one i got was 3.8 MB.
I used buildos+package_tools-2.7.exe to build my package and htcrt.exe to build the rom. (i change model from KAIS***** to POLA***** to get working and flash able rom)
I will experiment more cause i need to convert raw dump to original rom for warranty
tomduke99 said:
I just tested without any modifications of XIP. I used the original XIP (os.nb.payload, imgfs.bin) delivered within the Kitchen. Only copied the SYS and OEM from the O2 ROM to the kitchen and tried to build a ROM. Result is a non booting ruu_signed.nbh.
Tom
Click to expand...
Click to collapse
Yes, the various Registry addresses change as the XIP build changes so we need to understand RGU's, DSM's etc. The uDk sticky is helpful
Because the kitchens require a "template" to re-build a ROM, I still believe that the most thorough method is to use the just-released WWE WM6.1 HTC ROM as this template. Extract it all, replace the XIP device-independent filesystem with a newer build, remove all the stuff you don't want from \OEM "packages" and re-compile.
This is struggle street maybe, but this jigsaw is a challenge.
I've downloaded a newer version from Shayder's kitchen (found here: http://forum.xda-developers.com/showthread.php?t=427962). There is another os.nb.payload template. With this version of the kitchen I was able to produce a working ruu_signed.nbh with the SYS and OEM folder from the new German O2 ROM. Encouraged by this result I then tried to change the Kernel parts from XIP 20753 and replace NETCF2 with NETCF3.5 - Result: working ROM with NetCF3.5. Many thanks to all guys helping me especially those who have developed Kitchen's, Tools etc.
At this point I have OS version CE OS 5.2.20753 but the Build is still 19965.1.2.3. Therefore the next step should be replacing the SYS parts with its equivalents from a newer Build.
Questions about this:
1. Can I use a SYS folder from another (newer) ROM without modifications?
2. How to build a ROM with German localization? Shall I only copy the language specific folders from the original ROM to the SYS-part of the new ROM?
3. Are there some other stuff? What about Registry settings for different languages?
....
I read so many threads but I'm still not sure what to do next.
Thanks.
Tom
tomduke99 said:
I've downloaded a newer version from Shayder's kitchen (found here: http://forum.xda-developers.com/showthread.php?t=427962). There is another os.nb.payload template. With this version of the kitchen I was able to produce a working ruu_signed.nbh with the SYS and OEM folder from the new German O2 ROM. Encouraged by this result I then tried to change the Kernel parts from XIP 20753 and replace NETCF2 with NETCF3.5 - Result: working ROM with NetCF3.5. Many thanks to all guys helping me especially those who have developed Kitchen's, Tools etc.
Tom
Click to expand...
Click to collapse
Yes, that's real progress.
BUT - list step-by-step exactly how you did it, please
This is the problem - many posts about being successful, very few listing the detail.

[Kitchen][May 5 23563 WWE]Kitchen Tool for Ipaq 61x/91x

I finally found a way to overcome space issue that cause BuildIMGFS throw error when you put too many files in the ROM using captaintrip's kitchen
The repack used imgfsfromdump instead of buildimgfs which avoid the size issue and in additon can reduce the final size of flash.dio
The usage are the same with captaintrip's kitchen, I only rename the bat to "iPAQ61x_91x flex kitchen" since this works for both 61x and 91x
You will need to rename flash.dio to TEMPLATE.ROM and put it under ROM folder, when you run iPAQ61x_91x flex kitchen.bat it will also prompt you,follow instruction
keep in mind if you use flex kitchen to build your rom won't be able to extract it properly, anyone want to edit your room will need your kitchen instead. If you don't have buildimgfs issue you may want to stick with the old way of building rom
use iPAQ614c Rom Kitchen.bat if you want to build your rom in old way
Updated July 7th: attached new cecompr_nt.dll that fixed memory leak, necessary for LZX compression, replace the one under TOOLS folder
Download (v0.3):
mediafire
Updated: Dec 9th ,09
v4 Beta:
-improve ability to decompose ROM, however the packages in SYS and OEM portion is usually mix up so you have to manually move them to correct folder after extraction
Download:
21501 kitchen
21215 kitchen
Rom folder for w version for 21215 (Rename it to ROM if you want to build w version)
21232 kitchen
21234 kitchen
21725 kitchen - removed due to too many issue, use 21728 kitchen instead
21728 WWE Kitchen
21728 ITA Kitchen
21728 GER Kitchen
21728 FRA Kitchen
21812 WWE Kitchen
21815 WWE Kitchen
23001 WWE Kitchen
23001 CHT Kitchen
23004 WWE Kitchen
21921 WWE Kitchen
23009 Hybrid WWE Kitchen
23016 18.1 WWE Kitchen
21854 WWE Kitchen
23047 WWE Kitchen
23052 WWE Kitchen
21867 WWE Manila 24M2 Kitchen
21869 WWE Kitchen
21869 WWE Manila 25M Kitchen
23088 WWE Kitchen
28002 WWE Kitchen
28011 WWE Kitchen Beta 29
28011 WWE Beta 29_2 Kitchen - kitchen of Beta 29.2
note: you can replace WinCENLS_Lang_0404 with WinNLS_WWE (from other rom kitchen) to save ROM space
-arcsoft streaming player & codec can be removed if you don't need them
23515 xip (use with 23518 SYS)
23518 CHT Kitchen (LZX)
23518 WWE kitchen
21888 WWE Kitchen
23529 WWE Kitchen
28230 WWE Kitchen
23544 WWE Kitchen
23563 WWE Kitchen
91x 28011 WWE Kitchen -not tested since i don't own 91x device so use as your own risk, use dnw in the worst case
91x 23518(23515)/21888 untested xip
Official WM 6.5 Tookit/SDK/Emulator: here
FCC Information for 610c
FCC information for 910c
----------------------------------
Structure Overview
XIP is the kernel, this is also what you see those 2xxxx build mean, the whole term is called "Execute in Place", i.e execute files in rom directly without copying to ram, this is for boot process, anything wrong mean you will stuck in clean boot
OEM is for device/manufacturer specific program/drivers
SYS is for Windows Mobile system files
A package is a folder with at least a dsm file,all other files are extra
-rgu file is just reg file which you can use notepad to edit
-default all files goto Windows directory (obviously exclude rgu file)
-initflashfiles.dat/txt is a text file with instruction to move files to different directory
Files vs Modules
Modules are folder with ".dll" in their names. Inside the folder there is imageinfo.bin, S00X where x is a digit. When they are cooked into ROM they will become dll with proper relocation (done by WMReloc/G'Reloc). Supposedly being modules would make them load faster(because no need to relocate at runtime?) and some dlls must be in modules or else some program will not work properly. However there are also cases that modules must be converted to files.
Technically you can put everything in SYS since at the end buildOS will merge everything together but it is easier to manage if you follow the OEM/SYS structure
Common Issues TroubleShooting
hang on 1st boot screen (HP Logo)
-XIP porting issue, .rom , .vm file not correct .etc
hang on 2nd boot screen (WM splash screen)
-module did not relocate properly (did you run WMReloc or GReloc?)
-XIP (lower possibility, i don't think it affect..just in case you should keep in mind)
hang/crash on today screen
-software conflict/missing .etc , check your SYS/OEM files
Endless HP update/customization engine
-happens because of different model uses different customization engine, using one from other model/region will cause it to rerun every boot time, the only solution seem to prevent it to run from start by removing it from initflashfiles.dat. Convert all the fix into packages and integrate to the rom instead
installed SIP(virtual keyboard) cannot be switched
-use recmod (under tools folder) to convert all modules into files in browsingie folder
cannot compose new sms/email .etc
-replace redist_lang_[lang_code] folder with one that worked before
wifi cannot turn off after boot
-set HKLM/Comm/SDIO86861/Wireless to 1
XIP
To insert ported xip, run this command: osnbtool -c TEMPLATE.ROM 1 xip_out.bin
where xip_out.bin is your new XIP file
xip porting tutorial can be found all over the place in xda/ppcgeek .etc
Also make sure in ROM folder, the boot.rgu is from your device xip (the kitchen I provided only contains 61x xip so to cook for 91x you need to put 91x boot.rgu instead)
Phone Radio
rilgsm.dll is needed but usually it is in OEM folder
PagePool
Overview: xda wiki
edit using pagepool_by_wlodixon under flash folder, copy your flash.dio and run the appropriate cmd
The only exception is if the rom set pagepool to 0 (Dynamic PagePool), it won't able to recognize and you have to hex edit
hex edit the xip.bin at 0x000A75E4, change all 4 bytes to your desired value (all 0 for dynamic pagepool)
Convert cab to OEM
get package creator here
use it to open cab, then wince cab analyzer opened, choose extract folder icon, after close wince cab analyzer, you will be present with shortcut screen, do you things and hit done, finally hit complete package unless you want to change some option
Create simple cab for file/reg changes
get QuickCab
Xt9
corresponding lang files in OEMApp/OEMLang_#### where #### is the 4 digits lang ID
-[2letter langs code]hpd.ldb
-[2letter langs code]lbUN_xt9s/lsUn/.etc].kdb
-et9.SQR.[Language].bmp [Optional, some language like Polish/Portuguese just point to english bmp in registry]
-[a bunch of number/digit known as GUID].rgu (if you open it up you will find there is registry on xt9)
also under OEM\OEM_Lang_[Lang number]
-initflashfiles.dat (actually you can use notepad to open it and seacrh for ldb/kbd/bmp to see which lang files )
cooking different language
-you will need your language OEM folders from original HP rom
-your language wince.nls
-replace all language mui (e.g 0409=English) with your language mui
-some languages may added extra folders, be sure to copy them into SYS too
-sometime the hp customization/update will end up endless run in every start, in this case you will need to prevent it from running and integrate all updates into the ROM
OptionXML Addon
I have written this small .Net 3.5 App to generate option.xml for SYS packages which will allow you to select the common package and different language more easily without moving folders all the time, just unzip the zip to kitchen which will overwrite the existing batch file and put the exe under TOOLS folder.
To select/UnSelect a category in BuildOS, you can click on the Category group (e.g click on 0409 will select all 0409 packages in SYS), then click on one of the packages will select/unselect the whole group
Reserved for extra space in case
-------------Step by Step guide for xip porting-----------------------
Make sure you read this tutorial first
1. copy(either get it from kitchen or dump it using osnbtool) the existing xip_out.bin and rename it to xip.bin, open xipport, click dump xip.bin and you will get a OUT folder
2. choose write map then make packages , now rename this out folder to some other name
3. dump the new xip(from other device) using osnbtool, rename it to xip.bin & do the same as step 2 with xipport
4. now copy MSXIPKernel & MSXIPKernelLTK under Modules and Files folders from OUT folder(from step3) and overwrite to corresponding 61x OUT folder(from step1)
4.5 as said in the xda tutorial, remove hd.dll, osaxst0.dll folders and their corresponding text files under modules to avoid physical address overlap
5. use xipport to undo and then realloc and write maps. Then you check map files to make sure there is no !!!(memory address overlap) I recommend using XIP address tools to check for overlap, sometime you will get error when you realloc (key already exist .etc), use xip address tool and set work folder to OUT then you will see error on first dll addr which you have to fix all highlighted red cell(overlapped address). Note that to fix first dll addr address you have to highlight the cell, enter the new start address on the V address cell in bottom, click modify, then use mouse to highlight the 1A cell above, and change the D address cell to the same as V then click modify button(on the right of V cell). You should see the change in table then. For virtual base overlap you only need to modify V cell only
Note: first dll addr overlap will result error when you click realloc in xipport.
The goal is have no overlap as shown in MAP.txt. When there is no more overlap, use xipport to build xip_out.bin and then insert the xip into the dio file using osnbtool
Commands:
extract xip: osnbtool -d flash.dio 1 xip.bin
insert xip: osnbtool -c flash.dio 1 xip.bin
also make sure your ROM\boot.rgu is from your device xip
-----------------------------------
IPAQ 91x boot keys:
Clean bOOt - Voice Commander + OK + Reset
Download Image - Volume Down + OK + Reset
Calc Checksum - Volume Up + OK + Reset - disconnected, SD card out
RUU - Volume Up + OK + Reset - UsbConnected, SDcard out
SDloader - Volume Up + OK + Reset - USB disconnected,SDcard in SDloader
Modem_CAL - Voice COmmander + Volume Up + Reset
Diagnostics - Voice Commander + Volume Down + Reset
-------------------------------------
LZX Compression:
The default compression algorithm for ROM is XPR, if you must include lots of files that causes your resulting rom >80mb under XPR(81920kb - ROM Size limit for 61x, bigger than this the device won't boot), you need to use LZX compression. It reduces rom size by ~13% but with ~1-3% performance hit(from other post I read, I never verify the performance hit).
To use LZX compression, you need to replace the cecompr.dll folder in XIP Modules with the one attached in this post. Re-port the xip (realloc + write map + build xip_out.bin) and then use osnbtool to inject the xip inot TEMPLATE.ROM.
Then hex edit the imgfs_raw_data.bin in the rom kitchen, replace the first string "XPR" without quote you found with "LZX" without quote.
Make sure you have replace the cecompr_nt.dll under tools folder of the kitchen with the one I attached in 1st post to avoid memory leak
Now just build normally, you will notice the time to inject file will take much longer because of the compression
Is there any ROM kitchen tools for hp iPAQ h6365 WM2003?
Wow great kitchen. Thanks for sharing.
here, here! keyx you da man
One thing though - when you say this:
Phone Radio
if you are using SYS from other device, make sure you replace ril.dll and phone.dll from a working rom in phoneRedist or you will get a phone radio not installed which disable phone function
rilgsm.dll is also needed but usually it is in OEM folder
Click to expand...
Click to collapse
I'm not sure that is actually correct. I've been using ril.dll and phone.dll from all kinds of donor SYS; these are OS files that should be generic. It is only rilgsm.dll that is manufacturer-specific.
you are right, I corrected the post
I think I do anything wrong...
If I extract your ROM(WM 6.5 Beta 3.81) and put it together to a ROM again, it is 10MB smaller.....After extracting this, its 1MB smaller...
Question is, why?
Greets
chucknican
actually for unknown reason if you use my kitchen to build rom, you won't able to extract it properly...i am not sure why. But currently it is the only solution for me to overcome buildimgfs error
so the solution is that I use captaintrip's kitchen to extract and yours to build it together again?
I can't get this kitchen to build my ROM. The after WMReloc does the modules rebase, I get the following feedback...
Code:
Injecting files ...
Input file imgfs_raw_data.bin cannot be opened. Exiting.
In fact, when I watch the temp folder during this process, I see no imgfs_raw_data.bin at all. In your new script, I can't see where this file would come from anyway.
Help?
chucknican said:
so the solution is that I use captaintrip's kitchen to extract and yours to build it together again?
Click to expand...
Click to collapse
no in fact i will need to upload a kitchen as the result rom using my flex kitchen will not be extracted properly
benjaminries said:
I can't get this kitchen to build my ROM. The after WMReloc does the modules rebase, I get the following feedback...
Code:
Injecting files ...
Input file imgfs_raw_data.bin cannot be opened. Exiting.
In fact, when I watch the temp folder during this process, I see no imgfs_raw_data.bin at all. In your new script, I can't see where this file would come from anyway.
Help?
Click to expand...
Click to collapse
you have to run "prepare_imgfs flash.dio -nosplit" to get the imgfs_raw_data.bin first, this process is done when you extract a rom before but if you just directly use it to build a rom you need to manually run the command on a flash.dio first
Also keep in mind if you use flex kitchen your rom won't be able to extract properly, anyone want to edit your room will need your kitchen instead. If you don't have buildimgfs issue you may want to stick with the old way of building rom
keyx said:
no in fact i will need to upload a kitchen as the result rom using my flex kitchen will not be extracted properly
you have to run "prepare_imgfs flash.dio -nosplit" to get the imgfs_raw_data.bin first, this process is done when you extract a rom before but if you just directly use it to build a rom you need to manually run the command on a flash.dio first
Also keep in mind if you use flex kitchen your rom won't be able to extract properly, anyone want to edit your room will need your kitchen instead. If you don't have buildimgfs issue you may want to stick with the old way of building rom
Click to expand...
Click to collapse
So... these files go in the root folder? That's what works for me anyway. Hmm... I think this could be easily added to the script, if you ever have to release an update to the kitchen. Anyway, thanks.
21501 kitchen added on 1st post
EDITED: kitchen updated to detect missing of imgfs_raw_data.bin and extract it automatically, I also updated some tools versions
ADC and Ipaq Data Connect
Are both of these necessary? When both are installed the ADC seems to run first and configures a "Proxy Internet" Profile in the Connection Manager which lists all 3 possible connections for my data carrier, even though I can only use the internet2.voicestream.com with T-Mobile. Maybe I am not using this correctly, but once I removed the ADC, the ipaq data connection worked fine and I was able to connect to the internet without a problem. Is this all this app does, or is there another usage that I should leave it installed for?
Thank-you
you can remove ADC if you don't want it, i think it just help to setup data connections
Customization
Keyz
I have removed some of the OEMs from the kitchen, but am not sure that I modified the initflashfile.dat correctly,will you look at it for me and see (I highlighted what I have removed)? If I remove the entire last 3 lines that contain the Utility file the device does not reboot from sdlauncher when installing. When I leave the last line in it is very speedy to install and reboot, but I have the empty utility Folder in my programs folder! I also had tried to add the BSPropCab.cab to the OEM folder but cannot get it to install correctly. I saw that you had it installed in one of your previous roms along with the other 2 arc cabs. The arc cabs I can get to work, but I really dont want to put them in, just the bsprop. Is this possible?
In OEM I added Coreplayer, PdaNet, SKTools5, Live Search, Google Search and WM5torage1.9. I had to add Google Search in here because I could not get it to work by adding the original files back into the OEM App folder: In Systems I removed ADC, VOIP and One Note, replaced NETCF with NETCF3.5, and added Transcriber back in. I thought about removing WMWidgets, I use all SPB Software, but I dont understand all of its functions, I have Googled it and there really isnt alot out there about it. What I did find though makes me think Microsoft will add more function to it once the official 6.5 is officially released-So I will keep that. For me this is a very good ROM, you have done an excellent job with modifying the kitchen.
Thank-you
Sunday
Where do you test the new roms? In the device or in somekind of emulator?
gkleding said:
Keyz
I have removed some of the OEMs from the kitchen, but am not sure that I modified the initflashfile.dat correctly,will you look at it for me and see (I highlighted what I have removed)? If I remove the entire last 3 lines that contain the Utility file the device does not reboot from sdlauncher when installing. When I leave the last line in it is very speedy to install and reboot, but I have the empty utility Folder in my programs folder! I also had tried to add the BSPropCab.cab to the OEM folder but cannot get it to install correctly. I saw that you had it installed in one of your previous roms along with the other 2 arc cabs. The arc cabs I can get to work, but I really dont want to put them in, just the bsprop. Is this possible?
In OEM I added Coreplayer, PdaNet, SKTools5, Live Search, Google Search and WM5torage1.9. I had to add Google Search in here because I could not get it to work by adding the original files back into the OEM App folder: In Systems I removed ADC, VOIP and One Note, replaced NETCF with NETCF3.5, and added Transcriber back in. I thought about removing WMWidgets, I use all SPB Software, but I dont understand all of its functions, I have Googled it and there really isnt alot out there about it. What I did find though makes me think Microsoft will add more function to it once the official 6.5 is officially released-So I will keep that. For me this is a very good ROM, you have done an excellent job with modifying the kitchen.
Thank-you
Sunday
Click to expand...
Click to collapse
what do you mean by bsprop not installed correctly? if you convert it to OEM folder correctly it should work but if you leave the customization engine run on startup there is no point to preinstall bsprop since it will reinstall again from ipaq file store(unless you did not install the update before).
Also if you modify initflashfiles.dat i believe you should use hex editor to remove the FF FE header added by notepad.
Sometime when you flash a lot the device will act weird & does not reboot from flashing, you can try to clean boot it or reflash. I think you can remove all highlighted entries without issue. You may need to leave a blank line at the end of file though.
wmwidget is a widget engine that can run apps that use pie as a container/interface, for me it looks kinda like a shortcut to a webpage, msn weather/money .etc are the sample widget come with 6.5 for now. You can remove it if you don't use it.
SwimmerBoy said:
Where do you test the new roms? In the device or in somekind of emulator?
Click to expand...
Click to collapse
device only until i figure out the emulator issue

Creating Kitchen from Dumped ROM

This started out as a pm between hilaireg and me. i'm reposting the conversation here in order to benefit the rest of Chef Central.
I have a NEON400 which has recently been SPLed...finally.
However, there are no ROMs out there for the device and one guy who tried failed miserably. Mostly due to the fact that he doesn't own a device and can't test it.
what I'm looking for is a tutorial or some way to turn the dumped OEM ROMs we have into usable clean ROMs or upgraded to 6.5. Obviously there is no way that you can help me without having a device but is there any generic tutorial out there so I can get started learning how to do this?
Thanks for your help if you can... I appreciate anything you can do for us lowly NEON400 users.
thanks!!!
FROM: hilaireg
I'm not sure as to how much help I can be; that said ...
1) NEON Specs
I had a look at the NEON specs on the WIKI to get an idea of what is possible with the device.
From the specs, the unit is 128MB of ROM which may necessitate RECMOD'ing of module in order to achieve a bootable ROM. SLOT0 is generally the issue with WinMO 6.1 as SLOT0 should remain free of modules for the final ROM compilation. Here's some supporting information on Virtual Memory that will better explain what I am referencing:
Virtual Memory as it applies to the Windows CE 5.2 Kernel
http://forum.xda-developers.com/showpost.php?p=4268137&postcount=2
2) ROM's
I haven't conducted a search to see if an update ROM has been released for the NEON (either through BELL or HTC); I'm going to describe two possible scenarios.
Scenario 1: No update ROM
The best approach here would be to determine how to dump the ROM from an existing device. Once a device is "dumped", the dumped content could serve as the starting point for building a custom ROM. Dumping a device ROM requires a few procedures ... I recommend a forum search with these keywords:
dump device rom
The threads that will appear will not be NEON specific, you'll have a bit of reading on your hands, but may provide some insights at what may be required.
Scenario 2: Update ROM available via BELL/HTC
If an update ROM has been made available for download, it should be possible to perform a dump via a kitchen such as Ervius Visual Kitchen (EVK). Here's a link to a tutorial I put together that walks aspiring chefs through the process of dumping an official updated HTC ROM using EVK for the Raphael - but is essentially the same for any device. Once a ROM is dumped using EVK, this would serve as your starting point for building a custom ROM.
[TUT] Sous-Chef's Guide to XIP Porting in Ervius Visual Kitchen 9.7
http://forum.xda-developers.com/showthread.php?t=526610
3) Custom ROM
Once you have a starting point ROM, you can use it to create a net new kitchen. A net new kitchen could be a matter of copy/pasting the dumped kitchen from #2 (above). Things to keep in mind:
ROM: OEMXIPKernel is device specific and usually doesn't change until a NEON update ROM is release by BELL/HTC
ROM: MSXIPKernel is MS specific, this usually gets updated when a new O/S release is issued (ex: 6.1.21054, 6.1.21056, 6.5.23541, 6.5.23549, etc.)
OEM: this is device specific package which often are device drivers, carrier (operator) configuration, device functions, etc. and usually doesn't change until a NEON update ROM is release by BELL/HTC
SYS: this is MS specific and usually gets updated when a new O/S release is issued (ex: 6.1.21054, 6.1.21056, 6.5.23541, 6.5.23549, etc.) the MSXIPKernel & SYS should always match.
I would suggest starting with 6.1 and once you have a working build, you could look to move to 6.5. What's is important to keep in mind is:
you may need to RECMOD modules
closely review the .RGU (.REG), INITFLASHFILES.*, and .PROVXML files for any carrier (operator) specific lock downs
you will need to Cert Patch the ROM, possibly reduce the ULDR, possibly adjust the PagingPool - all selectable features in the newest version of EVK
Lastly, don't hesitate to ask questions in Chef Central ... some senior chefs may have some pointers that could help.
Chef Central: Windows Mobile/Windows Phone
http://forum.xda-developers.com/forumdisplay.php?f=612
HTH
OMG, this is so much info. you are awesome.
Okay...to get some stuff out of the way:
1.) No update ROM was ever released from Telus or Bell (the phone was released by both)
2.) the OEM ROMs have already been dumped.
1. you may need to RECMOD modules
2. closely review the .RGU (.REG), INITFLASHFILES.*, and .PROVXML files for any carrier (operator) specific lock downs
3. you will need to Cert Patch the ROM, possibly reduce the ULDR, possibly adjust the PagingPool - all selectable features in the newest version of EVK
Click to expand...
Click to collapse
This went entirely over my head.
RECMODding? How do I do this? It looks like No2Chem released some sort of EXE for this.
What am I looking for in the carrier specific files?
I don't think I can use EVK because I don't have an upgrade ROM, or can I?
FROM: hilaireg
Okay...to get some stuff out of the way:
1.) No update ROM was ever released from Telus or Bell (the phone was released by both)
2.) the OEM ROMs have already been dumped.
Click to expand...
Click to collapse
Haven't downloaded the file; ideally the download should either be an *.NBH or *.NB file. If it is, you should be able to use it in EVK.
The question to ask yourself is, has someone gone through the trouble of ... dumping the entire ROM from the phone? Or, only dumping the OEM portion?
If it's fully extracted, is there a ROM, SYS, OEM, (PACKAGES\EXT) folder structure? If so, then you should be able to use it in EVK. If there is a PACKAGES folder, they likely used the PkgBuildOS (oldstyle) kitchen to dump the ROM; Ervius released a tool to convert an oldstyle PACKAGES folder to a newstyle EXT folder.
1. you may need to RECMOD module.
Click to expand...
Click to collapse
Recoded Modules usually appear like this:
<filenameasfolder.dll>
imageinfo.txt
imageinfo.bin
S0001
S0002
S0003
...​
Included in the TOOLS folder of the EVK is a RECMOD.EXE, when you drag the <filenameasfolder.dll> folder (and contents) onto the EXE, it creates the compiled .DLL - ex: filenameasfolder.dll.
2. closely review the .RGU (.REG), INITFLASHFILES.*, and .PROVXML files for any carrier (operator) specific lock downs.
This went entirely over my head.
RECMODding? How do I do this? It looks like No2Chem released some sort of EXE for this.
What am I looking for in the carrier specific files?
Click to expand...
Click to collapse
Since WinCE is really a mobile version of Windows - being simplistic here - there are some things that are similar.
Registry changes are typically kept in .RGU/.REG files.
INITFLASHFILES.* are usually used for file copy operations on the device.
CONFIG_*.txt are usually used to launch .CAB files, copy operations, etc.
.PROVXML are usually used to configure MS and Carrier (Operator) specific settings. They can also be used for copy operations, registry changes, etc.
3. you will need to Cert Patch the ROM, possibly reduce the ULDR, possibly adjust the PagingPool - all selectable features in the newest version of EVK
Click to expand...
Click to collapse
As you are cooking a custom ROM, you need to disable the security certificate checking or the custom ROM may not boot. The reason for this is that MS/Carrier (Operator) don't want people doing what we're doing ... it's similar to HardSPL, it tells the device that "it's ok to use this ROM".
I don't think I can use EVK because I don't have an upgrade ROM, or can I?
Click to expand...
Click to collapse
Shouldn't be an issue. As long as you can obtain the ROM (OEMXIPKernel & MSXIPKernel), OEM, and SYS, you should be able to build a working custom ROM.
Have a look at my kitchen thread:
http://forum.xda-developers.com/showthread.php?t=471288
Download the kitchen and have a look through it to get a sense of what the final product should look like. The change logs will give you a sense of what had to be removed/changed/added to produce a custom ROM.
And once again, don't hesitate to ask questions in Chef Central ... that's why it was created; to help aspiring chefs learn.
Cheers,
All right, I downloaded v1.8.1 of EVK and used it to load the dumped .NBH. This seemed to work flawlessly and I now have a folder called 'dump' that contains the following folders. (I manually entered the Device name NEON400 when EVK prompted for it):
EXT
MyTools
OEM
RELEASE_NEON400
ROM
SYS
Tools
I'm guessing I've successfully extracted the ROM image.
i would like, for ease and simplicity, to just make this into a clean 6.1 version. I don't REALLY want to tackle 6.5 quite yet.
Is there a simple way to clean out the garbage? How do I know what's what?
I really appreciate your help, you've gotten me this far. I hope you don't get too exasperated with my noobness.
88fingerslukee said:
All right, I downloaded v1.8.1 of EVK and used it to load the dumped .NBH. This seemed to work flawlessly and I now have a folder called 'dump' that contains the following folders. (I manually entered the Device name NEON400 when EVK prompted for it):
EXT
MyTools
OEM
RELEASE_NEON400
ROM
SYS
Tools
I'm guessing I've successfully extracted the ROM image.
Click to expand...
Click to collapse
Looks like it; now take contents from the 'dump' folder and move it to the top of your kitchen folder. For example:
Move NEON400_Kitchen\dump to NEON400_Kitchen\ - Yes To All.
This was one of the steps in my Raphael Tutorial:
[TUT] Sous-Chef's Guide to XIP Porting in Ervius Visual Kitchen 9.7
http://forum.xda-developers.com/showthread.php?t=526610
Afterwards, make a copy of the kitchen as this copy ("backup") will serve as your source/baseline which you can always refer back against ... how you got started. You should never make changes to this copy; what I typically do is .RAR the copy and store it in a safe place along with the source file (ex: the download RRU from HTC, etc.)
i would like, for ease and simplicity, to just make this into a clean 6.1 version. I don't REALLY want to tackle 6.5 quite yet.
Is there a simple way to clean out the garbage? How do I know what's what?
I really appreciate your help, you've gotten me this far. I hope you don't get too exasperated with my noobness.
Click to expand...
Click to collapse
There's no quick or easy way; now comes the steep part of the climb.
If you haven't obtained a file comparison tool yet, that should be your next stop. You really should get a good one that allows binary comparisons and such ... I use BeyondCompare; it's not free but it's worth it. Once you obtain the file comparison tool, you can use it to compare an existing folder against another - such as comparing two kitchens. As an exercise, you could compare your kitchen against my last Raphael kitchen to give you an idea as to areas typically require additions/removals/changes.
WinMO6.1.21056 Raphael Kitchen
http://forum.xda-developers.com/showthread.php?t=471288
Also download the .TXT files attached to the kitchen thread as I noted all of the edits I made to the OEM, SYS, and ROM folders in those files. Examine those areas of your kitchen. Pay special attention to operator packages, '.PROVXML', and 'CONFIG_' files in the OEM folder. This is where you will usually where you will find many Carrier/Operator specific changes or lockdowns. I usually move most of this content to a 'profile' package in the EXT folder; I never use the profile directly, I copy/paste the to a 'custom profile' and use the custom profile ... this way, I can eliminate underised "Carrier/Operator" features and only apply those features that are absolutely necessary. Additionally, extra components (themes, cabs, etc.) are often installed via a series 'CONFIG_' packages; these will likely require alteration.
A few last things to remember along this part of the climb ...
stop for breaks
drink lots of coffee
have fun
and don't forget to yodel
may i ask a small Q....regardingthe OEM....
if i want to put an app in my cooke ROM i know that i can covert the app from cab--to---ext..however i can do cab--to--OME and OEM --to-- EXT...what are the different and which is better ??? really need help to understnad this
An OEM package is essentially a kitchen package. The term OEM came about partly because the ROM extraction tools - essentially, the tools extract the content of an OEM .NBH/.NB file. An OEM package usually consists of files, files as modules, <guid>.dsm, <guid>.rgu, shortcuts, *.provxml, *.txt, and *.dat.
When chefs refer to OEM packages, they are generally speaking about the folders that appear in .\OEM, .\SYS, and the .\PACKAGES (or .\EXT) folder. Here is some background for Ervius Package Builder (PkgBuildOS) & Ervius Visual Kitchen (EVK).
PkgToolsBuildOS
In the older PkgBuildOS kitchen, the OEM package had a relatively flat structure. Most OEM packages were prefixed with 'PACKAGE_' - chefs would see these folders in .\OEM and .\SYS. It was also preferable to move such folders into a '.\PACKAGES' folder structure making it easier to choose which packages to include during the ROM compilation. Ideally, chefs would only keep essential (critical) packages in the .\OEM and .\SYS. The structure of the OEM package would look similar to the following:
Code:
[B][COLOR="Blue"]<PACKAGE_oem_packagename>[/COLOR][/B]
[INDENT]<guid1>.rgu [COLOR="Purple"][I](<guid1>.rgu + <guid2>.rgu)[/I][/COLOR]
<guid1>.dsm
[COLOR="Purple"]<guid2>.dsm [I](removed)[/I][/COLOR]
files
*.provxml
shortcuts
*.txt
*.dat
option.xml
[B][COLOR="Blue"]<modulefoldername>.[[COLOR="Green"]ext[/COLOR]][/COLOR][/B] ([COLOR="green"][B]ext [/B][/COLOR]= dll, cpl, ocx, etc.)
[INDENT]imageinfo.bin
imageinfo.txt
S0001
S0002
S0003
...
[/INDENT]
[/INDENT]
Visual Kitchen
When Ervius created the Visual Kitchen, he also created a tool to convert old PkgBuildOS OEM packages into the new kitchen format. During the conversion process, the tool would read the .DSM filename information and rename the folder accordingly - sometimes a folder would be prefixed with 'PACKAGE_' and in other cases not; it depended on the internal .DSM name. The new format of the package was such that it divided the language-specific files into a sub-folder within the EVK OEM package.
Additionally, the tool would copy the OEM packages to the .\EXT folder as once again, it is preferable to have OEM packages in the '.\EXT' folder structure as it makes it easier to choose which packages to include during the ROM compilation. Ideally, chefs would only keep essential (critical) packages in the .\OEM and .\SYS. The structure of the OEM package would look similar to the following:
Code:
[B][COLOR="blue"]<oem_packagename>[/COLOR][/B][INDENT]<guid>.rgu
<guid>.dsm
app.reg
app.dat
_skip
[B][COLOR="blue"]Files[/COLOR][/B][INDENT]*.provxml
shortcuts
*.txt
*.dat
[B][COLOR="Blue"]<modulefoldername>.[[COLOR="Green"]ext[/COLOR]][/COLOR][/B] ([B][COLOR="green"]ext [/COLOR][/B]= dll, cpl, ocx, etc.)[INDENT]imageinfo.bin
imageinfo.txt
S0001
S0002
S0003
...
[/INDENT]
[/INDENT]
[B][COLOR="red"]<LANG> [/COLOR] ([COLOR="red"][B]LANG[/B][/COLOR] = 0409, 040C, etc.)[/B][INDENT]<guid2>.rgu
<guid2>.dsm
app.reg
app.dat
_skip
[B][COLOR="blue"]Files[/COLOR][/B][INDENT]*.provxml
shortcuts
*.txt
*.dat
[B][COLOR="Blue"]<modulefoldername>.[[COLOR="Green"]ext[/COLOR]][/COLOR][/B] ([B][COLOR="green"]ext [/COLOR][/B]= dll, cpl, ocx, etc.)[INDENT]imageinfo.bin
imageinfo.txt
S0001
S0002
S0003
...
[/INDENT]
[/INDENT]
[/INDENT]
[/INDENT]
The tutorials I put together for the Visual Kitchen (EVK) and Package Builder (PkgToolsBuildOS) provide some additional details about the folder structure of the kitchen so I won't get into more details about it here.
HTH,
The guy who failed miserably to cook a wm 6.5 rom,ultimately cooked the first ever wm 6.5 rom for Neon 400
http://forum.xda-developers.com/showthread.php?t=650446
damn... nothing to say just.......
if this guy wants to learn how to cook for his device... just leave him to learn, BTW why you dont leave intact the rom links?

[TUT] Beginers guide to cooking for the TG01

Welcome to my tutorial in cooking for the TG01.
I shall no longer be updating this thread, so please feel free to post and make any contribution you see fit.
This is meant to be a very simple, plain English guide to cooking.
With this in mind i will not be showing you how to port a new sys/xip or any of the more advanced features like sense
lets just see if we can dump, modify, build then flash a working, booting ROM for now.
This tutorial is only what i have learnt whilst beginning to cook my own ROM, so if you find a mistake or have something to offer feel free to post
If you have a question that your going to post, please please search the forum first, i learnt a lot of what i know from threads that have nothing to do with the TG01 or even the type of kitchen we're using. So as the rules state - Search before posting, Thank you.
Modifying the ROM of a Windows Mobile is dangerous to your devices health. If you mess it up it can be fatal.
The information contained in this tutorial is only as far as i am aware. Don't blame me if you brick it.
Having said that, i have never had a problem the short pin method couldn't fix.
You will need the attached .zip file, it contains the kitchen and associated applications.
In this tutorial i am using L3V5Ys kitchen, cab converter by Jason8, Package converter by Total Fire and Package Creator by Ervius.
So thanks to them and everyone in the XDA community for making this kind of thing possible.
1. Dump a ROM
1.1. Download the ROM you wish to modify. I suggest Miros miROM4, its clean and fast without any clutter.
1.2. Extract the ROM and place the resulting .tsw file in the BASE folder in the kitchen. Then rename it "TG01WP_5005000176.tsw"
1.3. Run dump.bat and wait for it to finish, this could take a little time depending on you PC, it may be worth making a tea as it seems to take longer if you watch it.
1.4. You should now have some new folders in your kitchen, for now the only one were interested in is SYS.
2. Modify a ROM (Removal of packages)
2.1 Open your kitchen folder then open the SYS folder,
2.2 You should now be faced with a window with lots of folders in it. The folders are called packages.
2.3 Delete the package Entertainment and its associated packages (Entertainment, Entertainment_DPI_192, Entertainment_Lang_0409 and Entertainment_Lang_0409_DPI_192)
2.4 This has effectively deleted the games that ship with your chosen ROM,
2. Modify a ROM (Adding packages)
2.1 Open your kitchen folder then open the SYS folder.
2.2 Copy the package from its source to the SYS folder. Remember that for this kitchen it must be an OEM\old type package (see post #4)
2.3 Thats it, you added software to your custom ROM.
2. Modify a ROM (modify existing package)
2.1 Open your kitchen folder then open the SYS folder.
2.2 Open the folder titled "Redist_dpi_192_resh_480_resv_800"
2.3 Replace welcomehead.192.png with the one in the downloaded zip.
2.4 That's it, when you boot your new ROM it should show the new welcome screen.
3. Building and flashing a ROM
3.1 Run "2. build no XIP port_no auto.bat" (this is the original build.bat, modified by myself to skip the port xip and BuildOS/auto parts)
3.2 When the cmd prompt opens press any key
3.3 When BuildOS opens check the packages you wish to install then click the green arrow in the top left.
3.4 When BuildOS has finished, close it and the cmd window will carry on opening and closing other programs as it goes. You do not need to touch any thing till it has finished and it asks you to hit enter.
3.5 Assuming you pressed enter when it asked, the cmd window will have now closed.
3.6 Go into your kitchen folder and you should have a new file called "TG01WP_00.tsw" This is your ROM.
3.7 Copy "TG01WP_00.tsw" to a folder called PRG on your storage card (if its not there then create it) and then run SDDL+ or use the short pin method to flash it.
3.8 That should be it, you should now have the rom you started with but minus solitaire.
The Kitchen:
In your "Kitchen" you will find some folders and some files. They all relate to either the ROM ityself,
or the tools used to edit/dump/create the ROM.
BASE - This is the folder in which you put the rom you are dumping
OEM - This is the folder where the Toshiba part of the ROM would be if it was an official Rom that was being dumped,
however when dumping a cooked ROM this folder will be empty as a cooked ROM cannot be dumped correctly by the tools available
and all packages are put in the SYS folder. This will not affect the output, and the OEM packages can be left in the sys folder.
If you dump a cooked ROM you will need to create the OEM folder as BuildOS panics without it, even if its empty it needs to be there.
SYS - This folder contains the dumped ROM separated into packages
ROM - This folder contains the xip, boot.rgu and boot.hv. For this tutorial we won't be working with anything here.
TOOLS - This is where the exe's are that make up the kitchen, you don't need to touch these, the .bat files do it all for you.
Temp - This is the kitchens working folder, you don't need to go here unless there are problems building the ROM but that is beyond the scope of this tutorial.
Packages: (there are 2 types, EXT and OEM, our kitchen can only handle OEM so thats what i'll be discusing)
Each package contains an element of the ROM. For example the BROWSING package contains the parts of the ROM required for internet browsing.
For a package to be usable it requires certain things
Required:
.dsm file - This is to complicated for the scope of this tut so for now just accept that this file is necessary and should never be deleted. All dsms must have a unique name.
That is all a package needs to be a package, though without any files in it won't actually do anything.
Optional:
.rgu file - This file contains the reg entries for the package in question and its name will be the same as the .dsm file in your package.
initflashfiles.txt / initflashfiles.dat - This file tells the PPC where to put the files that are within the package, ie. a short cut to a program in the start menu.
NOTE without an initflashfiles.txt all items within the package will go to the Windows folder.
option.xml - Holds information relevant to the package
The files you wish to install, without them its pretty pointless.
Packages often have other packages associated to them, for example the Entertainment package also has Entertainment_DPI192, Entertainment_Lang_0409 and Entertainment_Lang_0409_DPI_192.
Where Entertainment is the package, Entertainment_DPI_192 has the files specifically for our screen size, Entertainment_Lang_0409 has the files for our language (0409 is WWE)
and Entertainment_Lang_0409_DPI_192 has files that are for our lang and our screen size.
Modifying a .rgu file:
.rgu files contain registry information for the package they are in. If you wish to modify this data then you can do so with notepad, though i recommend downloading Notepad2. If you open a .rgu file and don't understand what's in it then you need to go learn about windows registry editing first. I am assuming that if you are looking at building a custom ROM you already know about reg editing.
CAB Converter:
This program is used to convert a .cab file into a package to be cooked into a ROM
1.Open CAB_Converter.exe
2.Click "add a cab" and browse to your cab or drag and drop your cab into the window
3.Click on the text representing your cab at the top of the window so its selected.
4.Click CAB->OEM, and wait till its finished. Should only be a few seconds.
5.Your package will be in the CAB Converter folder in the converted OEM folder
Package Converter:
Our kitchen only supports OEM\Old type packages, so what if we want to use an EXT\Visual type package? Well Total Fire kindly made and distributed a tool that converts from one to another.
The program is fairly self explanatory but i'll quickly cover converting from a visual to an old package.
1.Open the converter, then click "select" where the greyed text say package,
2.Browse to and open your visual package.
3.click "Convert VTO", now wait till you see "Conversion Complete".
4.Your now usable package will be in the same directory as the visual package with the text "PACKAGE TF" added to the title.
Package Builder:
If you wish to create your own packages, this is the tool to do it.
1.Create a folder named whatever you want your package to be named
2.Add to it the files you want
3.Add to it a .reg file if required
4.Open package Creator, in the bottom right you can choose ITA or ENG.
5.Click open package and browse to the folder you created.
6.Now the initflashes.txt options page appears, here you can select the .exes in your package and choose where to create short cuts. You will need to click apply on each one.
7.Now click complete package.
8.The creator will now create a .dsm file, a .rgu file with your .reg file settings in, an initflases.txt file and an option.xml file within the folder turning it into a package.
9.This package can now be used in your kitchen.
Reserved...
Reserved....
leeston2379 said:
CAB Converter:
This program is used to convert a .cab file into a package to be cooked into a ROM
1.Open CAB_Converter.exe
2.Click "add a cab" and browse to your cab or drag and drop your cab into the window
3.Click on the text representing your cab at the top of the window so its selected.
4.Click CAB->OEM, and wait till its finished. Should only be a few seconds.
5.Your package will be in the CAB Converter folder in the converted OEM folder
Click to expand...
Click to collapse
Thanks for a lovely tutorial! Makes sense!
I am continuously facing this attached error! Any ideas how to solve this! :s
Wich cab do you use ?
What is your Operating System ?
EVEALEX62 said:
Wich cab do you use ?
What is your Operating System ?
Click to expand...
Click to collapse
I used Opera.cab (opera 10) and with windows 7
EVEALEX62 said:
Wich cab do you use ?
What is your Operating System ?
Click to expand...
Click to collapse
chek property of your folder in c: or test to reinstall this program with administrator right (clic right).
Can you send me MP with your cab, I'll test tomorow morning
Have a good night
drupad2drupad said:
Thanks for a lovely tutorial! Makes sense!
I am continuously facing this attached error! Any ideas how to solve this! :s
Click to expand...
Click to collapse
Its better to grab hold of one of the existing opera packages on the forum, I never successfully converted it to a working package. Just seemed to be the opera cab as i have no problems with any other. I think ninjaduck does a nice version with flash and the like already in.
I never saw that particular error myself though. Sorry I can't be more help.
So long and thanks for all the fish.
I will no longer be updating this or any of my ROM threads as its upgrade time and I've got a shiny new Desire HD, my trusty TG01 has been retired and i'm off to have a bodge with Android.
The TG01 forum is a nice little place with only a hand full of regular contributors/posters but its always friendly and development seems to move along at a steady pace, so thanks to all its members for that.
To those who PM me, feel free to continue as i will still be around here somewhere and will help in anyway i can.
See you later.
leeston2379 said:
I will no longer be updating this or any of my ROM threads as its upgrade time and I've got a shiny new Desire HD, my trusty TG01 has been retired and i'm off to have a bodge with Android.
The TG01 forum is a nice little place with only a hand full of regular contributors/posters but its always friendly and development seems to move along at a steady pace, so thanks to all its members for that.
To those who PM me, feel free to continue as i will still be around here somewhere and will help in anyway i can.
See you later.
Click to expand...
Click to collapse
i have one samsung galaxy tab and next week i get also one HTC Desire HD of my company. Android is really good- but more fun i have with WinMo.
today i have get my second "new" tg01!
you were ever friendly and helpful. thank you for your activity and cooking for our tg01 community.
i wish you all best, good luck and cheers, miro
leeston2379 said:
I will no longer be updating this or any of my ROM threads as its upgrade time and I've got a shiny new Desire HD, my trusty TG01 has been retired and i'm off to have a bodge with Android.
The TG01 forum is a nice little place with only a hand full of regular contributors/posters but its always friendly and development seems to move along at a steady pace, so thanks to all its members for that.
To those who PM me, feel free to continue as i will still be around here somewhere and will help in anyway i can.
See you later.
Click to expand...
Click to collapse
Hi Lee!
TG01 community will miss your contributions! In case your retired TG01 lures you back to development, I will keep my eyes peeled. I hope you like your new android, but in case, Winmo is missed (I wish!), do come back!
Hi.
Leeston2379 will not be doing any changes here any more so I allow myself to upload my version of his kitchen here without creating new thread.
What has been changed ?
"Virgin" kitchen was only for packages modification without any pagepool changes or xip porting. Leeston2379 was basing on l3v5y kitchen which have certain bug. Interestingly this bug was "not active" as far as old ( original ) xip.bin was taken in .tsw file creation.
There are 4 batch files for new system building:
a) 2. build_without_xip_port.bat - the same as original leeston2379 batch but with fixed bug although here it is not "active"
b) 2. build_without_xip_port_pagepool_set.bat - allows to set pagepool size
c) 2. build_with_xip_port.bat - like original but allows to port new xip
d) 2. build_with_xip_port_pagepool_set.bat - like original but allows to set pagepool size and port new xip
I did not utilize automatic execution via for example
AutoExecAndClick.exe /launch "xipport.exe" /clickbutton "dump xip.bin" /clickbutton "write maps" /clickbutton "make pkgs" /kill
In my oppinion it is buggy . There are any timing races or something other causing any strange errors from time to time. User has to like in original l3v5y kitchen press different buttons in xipport software.
Thanks Mangasora for his post concerning porting xip
Regards
fxdjacentyfxd
fxdjacentyfxd said:
Hi.
Leeston2379 will not be doing any changes here any more so I allow myself to upload my version of his kitchen here without creating new thread.
What has been changed ?
"Virgin" kitchen was only for packages modification without any pagepool changes or xip porting. Leeston2379 was basing on l3v5y kitchen which have certain bug. Interestingly this bug was "not active" as far as old ( original ) xip.bin was taken in .tsw file creation.
There are 4 batch files for new system building:
a) 2. build_without_xip_port.bat - the same as original leeston2379 batch but with fixed bug although here it is not "active"
b) 2. build_without_xip_port_pagepool_set.bat - allows to set pagepool size
c) 2. build_with_xip_port.bat - like original but allows to port new xip
d) 2. build_with_xip_port_pagepool_set.bat - like original but allows to set pagepool size and port new xip
I did not utilize automatic execution via for example
AutoExecAndClick.exe /launch "xipport.exe" /clickbutton "dump xip.bin" /clickbutton "write maps" /clickbutton "make pkgs" /kill
In my oppinion it is buggy . There are any timing races or something other causing any strange errors from time to time. User has to like in original l3v5y kitchen press different buttons in xipport software.
Thanks Mangasora for his post concerning porting xip
Regards
fxdjacentyfxd
Click to expand...
Click to collapse
2. build_without_xip_port_pagepool_set.bat is my mod based
on leestone 2. build_without_xip_port.bat. bug?
please explain a little bit better: what you have do, what changed, the method for xip porting and how works? i hope is testet from you

Upgrading from 6.1 to 6.5

I have cooked a few roms for my diamond using the HTC WM6.1 1.93 release as a base. But i'd like to try Titanium and I gather i'd need WM6.5.
I have downloaded OEM xip kernel, SYS_23563_192DPI_0409, SYS_23563_Common and SYS_23563_XIP.
Please could someone give me some idea of what to do with these folders.... I use EVK 12.5.8
rikpotts said:
I have cooked a few roms for my diamond using the HTC WM6.1 1.93 release as a base. But i'd like to try Titanium and I gather i'd need WM6.5.
I have downloaded OEM xip kernel, SYS_23563_192DPI_0409, SYS_23563_Common and SYS_23563_XIP.
Please could someone give me some idea of what to do with these folders.... I use EVK 12.5.8
Click to expand...
Click to collapse
first thing is port the SYS (common and DPI 192),unpack this two archives then useing the Packer.jar you will create a new SYS for youre build,next you will need some OEMDrivers(the touch.dll for WM 6.5) and a OEMXIPKernel (the nk.exe for WM 6.5) and last but not least the MSXIPKernel,in ROM/Shared (just create a new folder and copy the content of SYS_23563_XIP.
Thankyou so much for your reply.
I have just built my first wm6.5 rom and will attempt to flash in a minute.
The only thing i'm left slightly confused about is a few bits in the OEM folder.
OEM/DIAMOND/COMMON/OEMVERSION/mxipupdate_OEMVERSION_100.provxml
It reads "ROMVersion" value="1.93.401.2"" Surely I should have a second file for wm6.5?
Also in ROM/DIAMOND there were a load of files in the OEMXIPKernel I downloaded that wanted to overwrite some existing files.... namely info.txt, ROMHdr.bin, xip.bin, os.nb.payload.
I didn't let them overwrite but do I need to keep both sets of files?
rikpotts said:
Thankyou so much for your reply.
I have just built my first wm6.5 rom and will attempt to flash in a minute.
The only thing i'm left slightly confused about is a few bits in the OEM folder.
OEM/DIAMOND/COMMON/OEMVERSION/mxipupdate_OEMVERSION_100.provxml
It reads "ROMVersion" value="1.93.401.2"" Surely I should have a second file for wm6.5?
Also in ROM/DIAMOND there were a load of files in the OEMXIPKernel I downloaded that wanted to overwrite some existing files.... namely info.txt, ROMHdr.bin, xip.bin, os.nb.payload.
I didn't let them overwrite but do I need to keep both sets of files?
Click to expand...
Click to collapse
the part with the rom version, you can modified as you wish ,yo can put you're name in there(PS: dont modify the phones ID or things like that)...then,you don't need the info.txt files anymore,delete them(PS: don't delete them if you are trying to build a new XIP.bin).If it says to overwrite.overwrite them with the new ones.Because the xip.bin,os.nb.payload,and the ROMHdr.bin are the old build files.so you need to replace them with the new ones,but you need to make a backup,just to be shure...or if you dont have the xip.bin and also the os.nb.payload for the new build you have to create the xip.bin with XIPport.exe and then we use again the XIPport app to inplant the new created xip.bin in the OS.nb.payload...that its a little tricky even i can do it properly

Resources