[JASJAR, XDA Exec, MDA Pro ROM Development] helmi_c:
Universal WM6 ROM Kitchen

Finally I'm able to steal some time to upload this Kitchen, the intention is to get everybody involved and understand and maybe help with the development of wm6 for universal, and also everyone can built their own personalize universal WM6 ROM, hopefuly user or any rom modder sending some patch or registry modification or some part update to the kitchen...

Big Thanks to MAMAICH and also my friend Bepe, the two Genius on the forum I know...

Most of this Guide is taken from bepe's, and also some of the dev tool are taken from Bepe's, and ofcourse MAMAICH so credits goes to them also for his great method and tools!

lets start,

helmi

----------

ROM Kitchen is a tool to cook your personal Universal Windows Mobile 6 ROM by the packages you need.

Your Computer must have .NET Framework v2.0 installed!

THE KITCHEN:

Someone might need to mirror it somewhere?

ftp://xda:xda@ftp.xda-developers.com/Uploads/Universal/helmi_c/helmi_uni_wm6_kitchen_r0.rar

OEM Pack Included in R0 Kitchen (Most of it part are newer then currently available rom):

Camera&MMS=3.5.1.5

CommManager=1.3.7.0

mHub=6.29.061106.I0

PicturesExt.dll=1.20.911.610

PowerService.dll=2.15.1.0

WirelessMgr_Service.dll=2.21.0.0

NETCF2_SP2= .NET Compact Framework 2 SP2

JAVA

SIM_Mgr=5.30

STK_Service.dll=4.47

StreamingMedia=2_10_1025621

Zip=1_20_25226_1

ps: the kithen is ready to build vanilla version, just

1. Click createos.exe

2. Click start button (createos.exe dialog) wait till its finish.

3. Click CreateROM.BAT, click encode, browse nk.prj, set operator

4. flash....Done.

OEM PACK:

I'm just too lazy to link them one by one...

BTFtp=1_1_27419_1

BTSapProfile.v1.45

CambridgeMSBTPlug-In

HtcWmpPlugin

Indialler_Phonepad_15_Language

MS.VoiceCommand=1.6_UNIVERSAL

OneNoteMobile=12.0.4518.1010

Pocket_MSN

PocketXPDF=0.50

Resco_Explorer 5.42

SDDaemon_UNIVERSAL

StowawayBTMouseKeyboard

SymbolPad=1_0_24075_1

Szilamer_BubbleFix

Szilamer_WordSuggestionFix

TaskManager=1_0_27407

USB_HDD

VGAMode

VOIP

WinliveVGA

WM5torage 1.7.3

WM6_CustomerFeedBack

NETCF2_SP2

JAVA

Zip=1_20_25226_1.rar

more will be added by others maybe? TOMTOM? SPB PLUS?, wiki page might be ideal for this...

How-To build a ROM:

1. Extract the kitchen pack to the c:\DEV folder (create the folder if u dont hv it)

2. Extract OEM Packages you need to OEM folder

3. Run CreateOS.exe and click the button

4. Run CreateROM.bat, proccesing....

5. HTC64_Extended_ROM_Tool.exe will start, click encode, then browse for C:\Dev\Helmi_UNI_WM6_Kitchen_R0\Temp\nk.prj then click next.

6. Set ur operator in operator name text field, default is set for 02 (02__01) u might change this to TMOB, MDL, etc then click encode when u finish to convert nk.nba to nk.nbf, the nk.nbf (ROM) will locate at C:\Dev\Helmi_UNI_WM6_Kitchen_R0\Temp folder.

7. ROMUpgradeUt.exe will start to update the rom to ur device or u might cancel if u planning to update latter.

Done! U Just create ur personal Universal WM6 ROM!

How-To build ur own OEM Package:

An OEM Package is just a simple folder containing files and registry settings for the ROM

First of all you'll need a GUID number for your Package.

Go to http://www.famkruithof.net/uuid/uuidgen to get one.

In my case:

283b9db7-cb03-4c1b-820e-ca49b2c3b5db

Necessary steps:

1. Create a new folder:

Dev/OEM/[Your package name]/

2. Create a empty text file:

Dev/OEM/[Your package name]/283b9db7-cb03-4c1b-820e-ca49b2c3b5db.dsm

(CreateOS.exe will finish this file for you)

If needed:

3. Create an UNICODE text file:

Dev/OEM/[Your package name]/283b9db7-cb03-4c1b-820e-ca49b2c3b5db.rgu

This file could be used to add registry entries to the ROM

First line is:

REGEDIT4

...

and there MUST be a empty line at the end!!

4. Create an UNICODE text file:

Dev/OEM/[Your package name]/initflashfiles.txt

This file could be used to create folders or copy files, shortcut on the ROM.

For Example/ Ilustration: Open or read Dev/LOC/initflashfiles.dat using a text editor or any premake initflashfiles.txt at one of the OEM folder.

and there MUST be a empty line at the end of iniflashfiles.txt also!!

Copy all files you need to Dev/OEM/[Your package name]/

How to change Universal paging pool SIZE:

Open nk.nba with hex editor and search for hex 64B00000640000002E2E2E2E00002E00 with 2E as a joker string and the last 2E00 is ur paging pool size. or just goto offset 51A502 and start mod ur paging pool see ilustration bellow:

the picture show us 4.8mb(48) paging pool (standart) change to 60 (6mb), 70(7mb), or any size u like.

How to fake ur CE version and OS Built

(only if u kinda person who like to fake stuff, not recommended thought)

How to fake ur CE version:

open nk.nba/nk.fat with any hex editor and go search unicode string 2.00.02 (the real version) or goto address 477C and 31437C and modify to any version u like, 2.99.99 or 2.00.99 or 2.01.06 or 2.01.08 or maybe 9.99.99? if u like... but still, its a fake, well its up to you...

Ilustration picture:

How to fake ur OS Build:

convert shellres.dll.0409.mui module (dir) to file and edit string 918 at resource ID 14683 and 14684 to any OS version u like, u'll have OS build 10.10 (Build 99999) OS if u like...but still, its a fake, well its up to you...

Ilustration picture (u'll hv OS 10.50.9999 (Build 99999) isn't amazing? more update then ms one...:

How to cook ur Extended_ROM

I'll update someday, running out of time...

Well, the kitchen and also some instruction (hopes u guys understand) are here now, so? why dont you guys built ur own personalize WM6 ROM...??

I hope more people will understand and gettin more involved and helpful with rom making stuff after this, and more people will support each others with bugs and updates... lets work togather guys... next would be AKU3.3 and AKU3.5 kitchen if I hv time...

hopes that i'm not forgot about something...lol...

regard,

Helmi

EDIT:

Added wiki page by my old buddy GerardNL, Thanks GerardNL, my friend...

Kitchen WIKI:

http://wiki.xda-developers.com/index.php?pagename=HTC_Universal_WM6_Kitchen_Helmi