[Touch Pro2, Tilt 2 Windows Mobile ROM Development] daxy:
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://xdaforums.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:

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:

<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://xdaforums.com/showthread.php?t=469420

Da_G: For providing the latest WM builds: http://xdaforums.com/showthread.php?t=544445

hilaireg: For providing his tuturial which was my starting point: http://xdaforums.com/showthread.php?t=521632

kwbr: For his tutorial on creating applications: http://xdaforums.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.