How-To build ur own OEM Package - help!! - MDA III, XDA III, PDA2k, 9090 Software Upgrading

Hi, I am starting to get a bit more ambitious and decided i would like to put together my own collection of apps to go in bepe's ROM kitchen. I have a collection of about 30 .cabs that I want to have as part of my ROM.
I went to the wiki, and here are the instructions:
Code:
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:
# 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!!
# Create an UNICODE text file:
Dev/OEM/(Your package name)/initflashfiles.txt
This file could be used to create folders or copy files on the ROM.
Example: Open Dev/LOC/initflashfiles.dat using a text editor
So from the directory with BuildOS in it, I created a folder Dev, then OEM.
Now how do I integrate my cabs into the rom? (Everything before was so I don't get flamed for not reading the wiki because I did!)
Thanks,
hardingt0110

Related

Personalising ROM's... without Ext_ROM

Okay, there a couple of CAB files I install no matter what ROM I use (Total Commander, Today Screen Speed Dial, MortRing [by .exe], Morphy's Call Filter etc), now that I'm getting to grips with the whole ROM building thing I have a question:
How can I add a program installed via a CAB into a ROM so that it is installed into ROM, I've searched on the forum and can't find much. I know it can be done as ROM's such a TuMa's, Logout's and Ivan's have apps in ROM which aren't there by default...
EDIT: In addition, I overwrite some of the default ROM stuff once I've installed (ETEN M600 Dialler in particular), so again, how can I get the 'bits' out the cab and overwrite the default contents of the ROM, this would make my life much easier...
If this has been posted previously then please point me in the right direction
First extract files, shortcuts and registry entries from the .cab using wince cab manager or similar http://www.ocpsoftware.com/, take note on what directory each file/shortcut is in. (often more reg entries will be stored as a file called 'platformxxx.reg' use these too)
Normal rom edit way: add the contents of the exported .reg files to default.rgu, making sure that you leave a blank line on the end, copy all the files to the \dump directory and edit initflashfiles.dat to copy them to the right directory on first boot. (remeber to remove the first two bytes - ff fe with a hex editor). then build your rom!
Bepe's rom edit way: create a folder '[your software name]' in the oem folder and get yourself a guid from here http://kruithof.xs4all.nl/uuid/uuidgen. create a blank file called '[yourguid].dsm and a blank text file called '[yourguid].rgu'. add the contents of the exported .reg files to '[yourguid].rgu' and make sure you save as unicode. then copy all the other files to the folder and create a blank unicode txt file called 'initflashfiles.txt' and use it like initflashfiles.dat in the first method except there is no need to hex edit out the first two bytes. then build your rom!
midget, you're a star, I thought it may be something simple... I'm off out with the family now for the day, but I'll work on this later, cheers!

Building your own kitchen (Part 1)

Xplode has created a really great kitchen for us to play with and have made my custom ROM with this kitchen. I think it’s so easy that everyone is now able to create his own ROM.
However, I would like to go a bit further: Instead of just using the kitchen someone has made, I would like to take any of the ROMs (e.g. Helmi_BA_WM2k5_AKU3.5_v1.4.CF2 R2 by baniaczek) and use that as my kitchen starting point.
I’ve been doing a lot of reading on the subject and this is what I’ve figured out so far. It is by no means complete (or maybe even correct), but I can certainly use some help to get further. Below information is not something I found out on my own, but is based on what is mentioned in other postings in different forums and websites and picking apart the batch files I’ve found in several kitchens.
My intention of this posting is to make a simple how-to wiki-page so anyone could create his/her own kitchen and from that kitchen create the best possible ROM for their own use: Add the packages they use and leave out the stuff they don’t need. My plan is not that everyone will start publishing the ROM they have created from a decompiled ROM since there would simply be to many chefs
------------------
Step 1: Convert the nbf file to an nba file.
The ROM file that you load on your phone is always called nk.nbf. However, before you can do anything with this file, you’ll need to convert to to nk.nba. For this you use a tool called “xda3nbftool.exe” (yes, the one you used to set the operator with)
The command to do the conversion is: xda3nbftool.exe -x nk.nbf nk.nba 0x20040521
After a minute or so, you’ll have a file called “nk.nba” that is the same size as the original
Step 2: Brake the nk.nba file into separate files.
The nk.nba file consists of 2 parts and need to be split. To do this split, you’ll use the following command:
prepare_imgfs.exe nk.nba
After the program has run, you’ll have 2 files: “imgfs_removed_data.bin” (0.5 mb) and “imgfs_raw_data.bin” (variable size, but e.g. 27 mb)
Obviously, the part we’re interested in is the bigger file of the 2.
Important remark: For other HTC platforms (like HTC Uni), the above command is executed with an extra parameter “-nosplit”. However, if that parameter is added the output is unusable when performed on the Blue Angel ROM.
Step 3: Extract the modules
Now you have the raw image file, you’ll need to extract it and convert it back into modules.
To do this, you’ll first need to place a file called “recmod.exe” in the directory where the imgfs_raw_data.bin file is. The next step is to run this command:
viewimgfs imgfs_raw_data.bin
This command will create a directory called “dump” and it will extract all the files and many directories in this directory. You can have a look in this directory and will probably recognize a lot of the names if you have been building ROMs on someone’s kitchen.
Step 4: Dividing the modules into SYS and OEM
Before you can do anything with these modules, you’ll first need to convert them to packages. To do this, you’ll need a piece of software called “Package Tool” (from Bepe)
Start the program and select the dump folder via “File\Open”. Once selected, it will give some basic information about the dump directory like OS etc.
Now select Tools\Build Packages, but before you start the command, make sure you have the file map.txt in the same directory as the Package Tools application. That way, many of the GUID numbers will be translated to readable names.
This program will just run a few seconds. After it is complete, you’ll now find a SYS and OEM directory in the dump directory. If everything went well, then there will be just 1 file left: initflashfiles.dat. All other files and directories that were there before are now in the SYS or OEM directory.
However, in the real world…. My experience with several ROMs I’ve tried, the Package Tools program is unable to properly complete the process for a, to me, unknown reason and when it has run, the directory is far from empty. Under the section “[Missing Files]” there is the information about files that are missing.
When you look in this file, you’ll see that all the missing files are not really missing but are directories with the same names and extension of the files that where not placed in the correct sub-directories. All is not lost yet. You can manually move the files to the mentioned directories. Once you have completed this job, you should still end up with a virtually empty dump directory.
There is also a chance, like with fake WM6 ROM on this forum, that after you move all the files that are mentioned in the “missing files”-section but still end up with a long list of files in the dump directory. If that’s the case, then obviously something went wrong. However, at this point, I don’t know why this happens. However, it does look like it’s not a good starting point to build your own ROM with.
Remark: The “Missing files” section may also contain entries like this one:
19a7f28b-6bc7-4fe9-b060-76ae3a65ff72
19a7f28b-6bc7-4fe9-b060-76ae3a65ff72.rgu (File)
This indicates that the RGU file is missing. However, this is not a big problem. Just create an empty file with the name in the mentioned directory. Later on, the BuildOS.exe program will use the empty file to place the correct information in the file.
Step 5: Move the 2 directories
Now you have the correct SYS and OEM files, you’re on you way to start cooking. Move the 2 directories to a different directory. (like how it is in Xplode kitchen for example) and remove the dump directory
------------ Now, I’m at this point and here I’m a bit lost ------
Step 6: Adding and removing
Now you are at the part that was the whole point of the exercise: Adding and removing packages. Adding premade packages is not too difficult: With some luck the packages you want to add can be found in a different kitchen or is otherwise available. (Helmi and others wrote some documents on how to create packages, so refer to those).
Take the packages and place them in the OEM directory.
Taking out packages should be as simple as well: Just move the directories of packages you don’t want to a different directory (you could also just delete them, but you might need them again later). When removing packages, there is of course a big chance that you remove something that is essential for a part of the OS that you are not aware of, so removing bit and pieces is more trail, error and a bit of luck.
(continued on the next post)
Building your own kitchen (Part 2)
(continued from above port)
Step 6a: Changing the registry
After you’ve followed step 1 to 5, you also extracted the default.hv and user.hv and can be found in SYS\Metadata directory. This is the registry that also contain all the bits and pieces of registry files that are in the packages (the .RGU files)
To modify these 2 files, use these commands:
SET _FLATRELEASEDIR=.
rgucomp -o default.hv -nologo > default.txt
rgucomp -o user.hv -nologo > user.txt
Add "REGEDIT4" in the beginning of the files and leave a blank line at the end of the file. Save the file as UTF-16 or Unicode format. (Ultra-Edit is very good editor for this)
After you have made the changes, you will need to covert them back to a format your PPC will understand. Use these commands:
SET _FLATRELEASEDIR=.
copy default.txt boot.rgu
rgucomp -b
ren boot.hv default.hv
copy user.txt boot.rgu
rgucomp -b
ren boot.hv user.hv
---------------
The next steps are basically the reverse from the first 5 steps: After taking the files apart, they now need to be put back into place.
----------------------------------
Step 7: Building the ROM up again.
To start building the ROM now, the first command you execute is BuildOS.exe.
This program will create the dump directory again and will copy the directories and files from SYS and OEM to the directory.
Remark: There are several versions of BuildOS on this forum. Xplode’s kitchen is using a more advanced version where you can easily select the packages you want to be included (instead of moving them in and out the directory). This is a much nicer approach and will make ROM building as simple as installing a regular piece of software on your PC. However, to keep it a bit more simple for this how-to, I’m assuming an older version of BuildOS.exe that will not ask for any user input. (The more advanced version will require you to modify XML files to add packages. It’s not too difficult, but does require a bit more background knowledge)
Step 8: Building the file image system
Now you have all the files and directories that make up the ROM, you’ll need to convert it back into a file image.
For this, you run the program BUILDIMGFS (without any parameters)
Remark: For some reason, but this program is very memory intensive. If you don’t have that much internal memory, or your swap file is too small, this program is never able to completely run. I’ve noticed this problem on more then 1 computer. (I have the source code of this program and tried if I could do something about this. However, the program is heavily relying on a DLL called “cecompr_nt.dll” and I expect that that DLL is the culprit. I’ve been searching for more information on this DLL, but have not found anything on the internet about it)
Important note: If you have added to many modules to your own ROM, the BUILDIMGFS process may crash. So, if this happens, you’ll need to go back to step 6 and remove some of the packages you’ve added. If you go back to step 6, you’ll need to delete the “dump” directory first.
This program will convert the dump directory back in the file “imgfs_raw_data.bin”.
Once the program has run, the file should be something like 27 mb again.
If the program does not crash and runs to completion, there is still a chance that you have added to many packages to your ROM. When the BUILDIMGFS is ready, it will show the number of free sectors at the end of file system image. If it is showing something like ffffef that means that it’s too big, since it should show a small (hexadecimal) number like 1e or something like that.
Since/If you want to add as many packages as possible to the ROM (instead of installing them in RAM) you may need to repeat step 6, 7 and 8 several times. To make your life a bit easier, make a screen shot of the OEM directory and keep track which one worked and which one didn’t). If you go back to step 6, you’ll need to delete the “dump” directory first.
Step 9: Building the nk.nba
To create the nk.nba file again, you need the file you just created in step 8, but also the other file created in step 2: imgfs_removed_data.bin (maybe this file is created by buildimgfs??)
When you have these 2 files in a directory together, run this command:
MAKE_IMGFS nk.nba
Once the program is complete, the nk.nba file should be something 32 mb again.
Important remark: For other HTC platforms (like HTC Uni), the above command is executed with an extra parameter “-nosplit”. However, if that parameter is added the output is unusable when performed on the BA ROM.
Step 10: Convert the nk.nba back into nk.nbf
The final step of the process: creating the file that our BA understands: nk.nbf
This step is into 2 pieces:
A: Update the check-sum of the nk.nha file with this command:
XDA3NBFTOOL -c -u nk.nba
B: Convert the file:
XDA3NBFTOOL -x nk.nba nk.nbf 0x20040521
As you can see, the last parameter is the same as in step 1. This is some sort of password that is needed to encode the file with.
Now, the ROM is complete and you’re ready to flash it on your BA. I assume that you know how to do that part
** Can I use Notepad to edit and save ???
I got error here. When I try to do
To modify these 2 files, use these commands:
SET _FLATRELEASEDIR=.
rgucomp -o default.hv -nologo > default.txt
rgucomp -o user.hv -nologo > user.txt
Add "REGEDIT4" in the beginning of the files and leave a blank line at the end of the file. Save the file as UTF-16 or Unicode format. (Ultra-Edit is very good editor for this)
After you have made the changes, you will need to covert them back to a format your PPC will understand. Use these commands:
SET _FLATRELEASEDIR=.
copy default.txt boot.rgu
rgucomp -b
ren boot.hv default.hv
copy user.txt boot.rgu
rgucomp -b
ren boot.hv user.hv
************************************************************
C:\Scoter Kitchen\Utilities\TOOLS>rgucomp -b
Microsoft (R) RGUComp Version 1.0.000
Registry file processor and hive builder.
Copyright (C) 2004 Microsoft Corporation All Rights Reserved.
built: Nov 19 2004 15:17:13
importing registry file ".\boot.rgu"...
InitRegistry FAILED in file ".\boot.rgu" within a few lines of line 1.
BuildBootHive: (RGUComp) !ERROR failed importing ".\boot.rgu"
wmain: (RGUComp) !ERROR failed building BOOT hive
****************************************************
Now, I got errors on line 3 of default.rgu and line 154 of user.rgu ...
I didn't edit those line at all .. Why errors !!
I put REGEDIT4 in the first line of both default.txt, and user.txt and leave 1 blank line at the end.
I saved it into unicode.
Thank you for the info, will sure to give it a try when I have time later on...
Thank you very much! Will try to localize ROM using OEM Packages.
How to localize WWE ROM to other language?

How to change registry entries / Cooking ROM

Hi,
Does anyone know how to edit registry entries from within KovskyKitchen or any other kitchen? I mean before the ROM is flashed is it possible to tweak the registry?
Thanks,
Phil Rich
Sorry but, bump.
http://www.google.com/cse?cx=000825...tries&sa=Search&cof=FORID:0&ie=utf-8&oe=utf-8
or from Helmi
How-To build your 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. For example: 283b9db7-cb03-4c1b-820e-ca49b2c3b5db
Necessary steps:
1. Create a new folder: Dev/Helmi_UNI_WM6_Kitchen_R0/OEM/Your package name/
2. Create a empty text file: Dev/Helmi_UNI_WM6_Kitchen_R0/OEM/Your package name/283b9db7-cb03-4c1b-820e-ca49b2c3b5db.dsm (?CreateOS.exe will finish this file for you)
3.
(Optional) Create an UNICODE text file: Dev/Helmi_UNI_WM6_Kitchen_R0/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/Helmi_UNI_WM6_Kitchen_R0/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/Helmi_UNI_WM6_Kitchen_R0/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/Helmi_UNI_WM6_Kitchen_R0/OEM/Your package name/
The next time you build your ROM (as described above), the OEM package will be included in the ROM.
Click to expand...
Click to collapse

[FAQ][HowTo][KITCHEN][GER][WM65]BlackStone Buddy Count

RESERVED for FAQs and HowTos. Cauz posting is limited to 10.000 chars, I'll move the FAQs and HowTos to this thread and links to them will be posted in the kitchen/ ROM thread. The first two posts in that thread are too limited for the flood of FAQs and HowTos to that kitchen! So please don't post into this FAQ/ HowTo thread!!!
FAQs: Kitchen
FAQs
Kitchen:
The right order to flash:
Make sure your phone is plugged to an AC or at least charged at 50 percent!!!
HSPL: Flash HSPL first. The provided version is located in "_PREREQ" folder.
See http://forum.xda-developers.com/showpost.php?p=2710548&postcount=1 for help flashing HSPL and most recent versions.
Radio: Flash after HSPL! (it should meet the "rilphone.dll" version in "EXT\SHARED\MY_Drivers\DRV_Rilphone_(VERSION)". The radio is
provided in "_PREREQ\Radio_(VERSION)" folder. Radios can be flashed via microSD card. (See below for instructions)
ROM: Should be flashed last! Your custom ROM will be placed in "RELEASE_Blackstone" folder after hitting the create
button in ervius kitchen. ROMs should be flashed via microSD card. (See below for instructions). Remember to hardreset after flashing
new ROMs.
Flashing via SD Card:
Make sure your phone is plugged to an AC or at least charged at 50 percent!!!
Rename any file (e.g. "ruu_signed.nbh") you wish to flash to "BLACIMG.nbh" and copy it to the root of your microSD folder.
Next start the OlliNex Bootloader: This is best achieved by shutting your device down (or remove the battery), hold down the
"volume down" hard button and SHORTLY press the "Power switch". As soon as the "tricolor bootloader" appears, release the
"volume down" hard button (or else the process will be cancelled). The loader automatically searches for the "BLACIMG.nbh" file
in the root of your microSD card. When the bootloader is prompting to flash, hit the "Power switch" and wait for the progress to finish!
It will say, that everything has been flashed o.k. HARDRESET after flashing a new ROM!!! (See below for instructions)
Hardreset:
Make sure your phone is plugged to an AC or at least charged at 50 percent!!!
If you just flashed your new ROM and the loader is halted, saying everything is fine, remove the back cover and the battery (Unplug AC
also, if plugged in). After putting everthing together again, hold dow "volume down" and "volume up" together and SHORTLY press
the "Power switch". As soon as the "tricolor bootloader" appears, release the two volume buttons (or else the process will be cancelled). The
bootloader will prompt you to press "volume up" to proceed the hardreset. After the process has finished, press "volume up" again to boot your ROM.
Phone freezes during initial boot:
There are several reasons, why the phone sometimes freezes during boot:
The most obvious one: Be patient! Stay cool! Keep calm!
Due to the new Windows mobile 6.5 release and the fully loaded packages (HTC and custom features) ROMs will need a bit more time for the initial
(first) boot! Just be patient! Drink a coffee!
If the bootloader doesn't switch to the Windows mobile logo and freezes while displaying the ROM version (smart mobility screen, with orange
infos), you forgot to check "Real WM 6.5 AKU" in ervius kitchen options.
If the initial boot stops during the customizing screen, this is an issue of the OEM files, mostly some missing app in
"OEM\BlackStone\0407\ConfigAP\config_AP.txt". So remove the lines containing an app, you removed from the selection in ervius kitchen
(e.g. Opera).
Many things don't work (like installing cabs):
There could be several reasons, why some programs and apps don't work:
Windows Mobile customizing dind't start: If this happens hard-reset and be PATIENT on first (initial) boot. Wait some additional minutes
BEFORE calibrating the screen and "first use" of the phone. Due to the new Windows mobile 6.5 release and the fully loaded packages
(HTC and custom features) ROMs will need a bit more time for the first (initial) boot! Just be patient! Drink a coffee!
You missed some packages, when building your ROM. Check that the packages marked "KEEP THIS!!!" are not set to "FALSE" and
doublecheck, that there are no duplicated packages!
Future system builds:
A merge will be easily possible, Ill also provide a batch script for that. (But that is one of my last tasks...) By now you only have to copy
the new system files and folders into SYS directory (e.g. "SYS\23009") and copy all the language specific folders from the old release to the
new one. (e.g. "\SYS\23003\SHARED\0407\" to "\SYS\23009\SHARED\0407\". This is not a difficult task. Be sure to get the system files of
a WVGA release. All modifications needed to make WM65 builds run on BlackStone devices will be put in "MY_Drivers", "MY_Packages",
"MY_RegTweaks", ... folders in "EXT\SHARED". So new system builds should directly work without great changes. Im still working on the
folder structure. If you got any improvements, let me know.
FAQs: External packages
External packages:
Owner information:
In "EXT\SHARED\MY_RegTweaks_XDA\REG_Owner_Info_XDA" is a sample owner information. Edit this by going to "Start=>Settings=>Personal=>
Owner information". Make sure under "options" both entries are marked. Export the the following registry key with "PHM RegEdit" (Utilities folder):
[HKEY_CURRENT_USER\ControlPanel\Owner] into your kitchen. (Replace app.reg in "EXT\SHARED\MY_RegTweaks_XDA\REG_Owner_Info_XDA" folder.
If you cooked your ROM or just downloaded the provided ROM without the kitchen and you think the info box is annoying, it can be
turned off, by going to "Settings=>Personal=>Owner info=>Options". Disable the two options available. Or disable "REG_Owner_Info_XDA" in the
kitchen, when buidling ROMs to avoid future displaying of the information.
Sprite Terminator:
In "EXT\SHARED\MY_Packages\APP_SpriteTerminator" you will find the base app. Sprite Terminator is a commercial software, for tracking and
remote controlling your phone, once it gets lost or stolen. Cooking this into the ROM is a nice security feature. (Not for the thief... ) With
this kitchen a demo version is provided, but it will not function, until you install the original CAB (from manufacturers site) and export the
registry keys and "spriteterminator.xml" into the kitchen, after configuring/ registering the app. The files in
"EXT\SHARED\MY_RegTweaks_XDA\REG_SpriteTerminator_XDA" are just for file structure and registry setting demonstration. Registry information
is stored in "[HKEY_LOCAL_MACHINE\Software\Sprite Software\SpriteGuard]".
Use "PHM RegEdit" (Utilities folder) to export the values and replace "app.reg" in "EXT\SHARED\MY_RegTweaks_XDA\REG_SpriteTerminator_XDA"
folder.
FAQs: General troubleshooting
General troubleshooting:
Power failure during flash/ BRICK:
Make sure your phone is plugged to an AC or at least charged at 50 percent!!!
If you bricked your phone due to a power failure or another flash failure, try to remove the battery and AC, put everything together and let
the phone charge (Fully charged when the LED placed on the "power switch" changes from orange to green). Try to access the "tricolor
bootloader" after your phone has fully charged (See "Flashing via SD Card"). Reflash your ROM, the process should now finish. For more
detailed troubleshooting see section "How to reflash Stock/Shipped SPL - STEP BY STEP - FOR WARRANTY REASONS ONLY!" under this
link: http://forum.xda-developers.com/showpost.php?p=2710548&postcount=1
Registry files (app.reg):
Watch out for empty lines in values and keep the reg file conventions (REGEDIT4), breaking those will cause a parsing error when building
the ROM. Make sure there is an emtpy line feed at the end of each *.reg file. Files are stored in MS notepads' unicode format. Double
check for missing qutoes! Pathes in values have double backslashes ("\\"). If you export a file with "PHM RegEdit" (Utilities folder), by
"right clicking" a key and choosing "Export..." make sure the export type is "WinCE Registration Files (*.reg)". Always check the exported
files in notepad for parsing errors.
ROM will not build:
Most errors are space related. Make sure you got at least 1,5GB of free space on the partition, where you placed the kitchen.
Make sure the kitchen is placed in the root of a partition (e.g. "D:\Blackstone_WM65_kitchen")
Be sure, that the kitchen contains no folders with blanks in their name.
If any errors occour while building the ROM with ervius kitchen, which are VB based, make sure you got
Microsoft .NET Framework 3.5 installed.
Time bomb:
No need to worry about them, I didnt have one in the last three releases, I think these are shipping versions for the OEMs, but MS is still
improving things (like the slider speed in this Version) and it is no hack like removing animations or sth. like this. Furthermore ervius kitchen
would autmatically remove timebombs if found. So releases with this kitchen can be always used.
WM65 lock:
Some users don't like the WM65 "slide lock" feature or want to use their own locking program. In cooked ROMs use
"PHM RegEdit" in "Utilities" folder of your device to disable the locking feature, as the following code shows:
Code:
[HKEY_CURRENT_USER\ControlPanel\Backlight]
"AutoDeviceLockEnable"=dword:00000000
In the kitchen there is also a registry entry for that:
"REG_AutoDeviceLock_ON" in "MY_REG_Tweaks". Just disable that, if you cook your own ROMs with the kitchen to disable autolock.
(I prefer to use it)
FAQs: Part X
Part X of the FAQs
FAQs: Temporarily fixes/ hints for different builds
Temporarily fixes/ hints for different builds :
23004
Bluetooth HTC Comm Manager:
For (de-) activating Bluetooth, don't tap the green switch, tap left of the switch on the text saying "Bluetooth" and watch your taskbar, if the icon appears/ disappears. The switch is not working in that version. (But the workaround has the same effect )
HowTos/ tutorials
HowTos/ tutorials
WM65 honeycomb icons:
For easy editing of honeycomb icons, directly on your HTC device, start "hComber" from tools folder in the start menu.
General info for the kitchen:
In "EXT\SHARED\MY_Packages\APP_AAA_Icons" you will find the package for the Windows mobile 6.5 honeycomb icons.
Under "files" you will find all the icons in PNG format (90x90 Pixel for WVGA and 24bit depth), keep the naming convention, when creating
new icons. ("Start_Icon_APPNAME.png") See your windows folder for the standard WM6.5 honeycomb icons (e.g. "Start_Icon_Solitaire.png")
for sample icons. Put all your new icons in "EXT\SHARED\MY_Packages\APP_AAA_Icons\files\".
After creating new icons, you will have to add them to the registry. Use notepad for editing "EXT\SHARED\MY_Packages\APP_AAA_Icons\0407\app.reg".
Normal apps:
You got a REG key for every "*.lnk" file in "Windows\Start menu\Programs\" folder. e.g.:
[HKEY_LOCAL_MACHINE\Security\Shell\StartInfo\Start\AIM.lnk]
"Icon"="\\Windows\\Start_Icon_AIM.png"
I think it is self explaining, that you have to add such a key for your app/ icon, according to the sample.
Folders:
Same thing for apps in folders (e.g. Startmenu's "Utilities" folder), you just have to to add the folder before the "*.lnk" file in the registry.
Folders are created using "app.dat" for each language (e.g. "EXT\SHARED\MY_Packages\APP_AAA_Icons\0407\app.dat"). See the file
(e.g. with notepad), it is self explaining. Add a new line for each directory. This way you can create your own directories in the start menu
folder.
Icons for folders are applied through a reg entry for the directory itself, e.g.:
[HKEY_LOCAL_MACHINE\Security\Shell\StartInfo\Start\Multimedia]
"Icon"="\\Windows\\Start_Icon_Folder_Multimedia.png"
these are also in the language specific app.reg files. (e.g. "EXT\SHARED\MY_Packages\APP_AAA_Icons\0407\app.reg" as stated above.
System Icons:
System icons are mostly described by CPL numbers. Changes to them can be made by editing:
"EXT\SHARED\MY_Packages\APP_AAA_Icons\app.reg". I devided these from the other ones, because they are not language specific and all
packages and fixes made by me are supposed to be used in multilanguage kitchens.
By the "*.pngs" name you know which number belongs to which system shortcut. If you update a package in one of the folders of
"EXT\BlackStone\COMMON\" (e.g. "TouchFLO 3D") these numbers will change. So you will have to update
"EXT\SHARED\MY_Packages\APP_AAA_Icons\app.reg" as well.
The packages CPL number can be found out by editing the *.rgu" (registry file) or "app.reg" of the package you updated.
(e.g. "EXT\BlackStone\COMMON\BlackStone_External_Packages\TouchFlo_3_0_32567_2\938d4209-f7c2-4ea5-9b57-a338c0c645f8.rgu")
Manila program launcher icons:
Create a PNG:
Use you favorite image manipulating program (e.g. GIMP). The PNGs are 128 x 128 pixels and 24bit, no interlace.
Save it to "MyTools\Icon_Tools\CFC_Tool\_PNGs\APP_NAME.png" (no spaces in name)
Use CFC GUI to convert PNGs:
Up to date versions in this thread: http://forum.xda-developers.com/showthread.php?t=437777
Browse to "MyTools\Icon_Tools\CFC_Tool" folder, run "cfc_gui.exe", press "F3" (or "File"=>"Select folder"), choose the path:
"MyTools\Icon_Tools\CFC_Tool\_QTCs". Choose "Tools"=>"Import from PNGs"=>"Yes", locate the folder, where your PNGs are stored.
After conversion has been done, you'll end up with some new files in "MyTools\Icon_Tools\CFC_Tool\_QTCs" folder. So you can close
"CFC GUI".
Compress the icon:
Start "MyTools\Icon_Tools\CFC_Tool\1_compress_to_cfc.bat". The new files are stored in "MyTools\Icon_Tools\CFC_Tool\_CFCs\"
Renaming the files:
Rename the files to the naming convention. (e.g.: "MPI_MY_AIM.qtc") by starting: "MyTools\Icon_Tools\CFC_Tool\2_rename_to_qtc.bat"
Correct last spelling issues like capitalisation.
Copying the files:
From your PC copy the compressed icon files in "MyTools\Icon_Tools\CFC_Tool\_CFCs\*.*" to your phone's storage card. To test the files
on your device open "Total Commander" from "Utilities" folder and copy them to "\windows" folder.
Testing the icons:
Start "PHM RegEdit" from "Utilities" folder. Navigate to: "[HKEY_LOCAL_MACHINE\Software\HTC\Manila\ProgramLauncher]" The folders from
"0" till "29" contain the different apllications and the icon link. Choose the one you want to change. (e.g. "10:"IconPath"="windows\MPI_MY_ICQ.qtc"")
SOFT RESET!
Exporting for the kitchen:
When everything works fine, start "PHM RegEdit" again and export the: "[HKEY_LOCAL_MACHINE\Software\HTC\Manila\ProgramLauncher]" key
to your storage card.
Copy the CONTENT! of the reg file into app.reg file in "EXT\SHARED\MY_Packages_EXPERIMENTAL\APP_Manila_ProgramsTab_ON\0407\app.reg"
into the kitchen folder. (For german translations, 0409 for WWE)
Copy the icon files from "MyTools\Icon_Tools\CFC_Tool\_CFCs\*.*" to "EXT\SHARED\MY_Packages_EXPERIMENTAL\APP_Manila_ProgramsTab_ON\files\*.*"
Enable "APP_Manila_Rhodium_QTC" and "APP_Manila_ProgramsTab_ON" in ervius kitchen! You are ready to have cooked in manila program launcher icons!
Hints:
"OEM\BlackStone\0407\OperatorPkg\mxipupdate_oemoperators_102.provxml" contains the OEM standard links. (These were commented out
as sample, changes should be made to "EXT\SHARED\MY_Packages_EXPERIMENTAL\APP_Manila_ProgramsTab_ON\0407\app.reg") instead.
Also reserved
Also reserved
another reserved post for HowTos
another reserved post for HowTos
HowTos/ tutorials
Porting new WM65 builds into the kitchen: (Part I)
Example on Da_G's source, build 23052:
Thread:
[OS][WM6.5.x] Latest Releases (23052), Porting, Tutorials, Tools, VM, etc.
In this example the new release build, we want to port to the kitchen is 23052. Build 23037 is used as the old build version and the language is "0407" (german). But you can use this guide for any new/ old build version (e.g. 23054/ 23016) and any language. To port other languages, just replace the the language specific code with the one for your language. (e.g. 0409=english; 040c= french; 041D=swedish)
Obtain needed files:
Initflashfiles.dat for all languages (for build 23052)
Code:
Filename: "initflashfiles-dat-all-langs.zip"
=> This file is needed for language specific WM65 links in your startmenu
0407 DEU German Deutschland (for build 23052)
Code:
Filename: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar"
=> These are the german MUI files for the WM65 build
0409 USA English United States (for build 23052)
Code:
Filename: "WM65-23052-CE-OS-5-2-4098-LANG-0409-DPI-ALL-RESH-ALL-RESV-ALL.rar"
=> This is needed for the device specific DPI (192 for BlackStone's resolution)
23052 XIP/SYS CE OS 5.2.4098 Lang 0409 DPI 192 RESH 480 RESV 640
Code:
Filename: "WM65-23052-CE-OS-5-2-4098-LANG-0409-DPI-192-RESH-480-RESV-640.rar"
=> This is the WM65 operating system (OS)
Extract OS build and MSXIPKernel
Source: WM65-23052-CE-OS-5-2-4098-LANG-0409-DPI-192-RESH-480-RESV-640.rar
Code:
Extract:
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0409-DPI-192-RESH-480-RESV-640.rar\23052"
To: "SYS\"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0409-DPI-192-RESH-480-RESV-640.rar\Shared\23052\MSXIPKernel"
To: "ROM\Shared\23052\"
This is the WM65 build specific part of the kernel (MSXIPKernel), it changes with every release. So it has to be
updated in the kitchen, when testing new releases.
Copy OEMXipKernel:
Code:
Copy (including whole content):
Folder: "ROM\BlackStone\23037"
To: "ROM\BlackStone\23052"
This is the device specific part of the kernel (OEMXipKernel), its identical for each release, until HTC releases a
new BlackStone ROM, where we can dump a new device specific part.
Delete wrong resolutions:
Code:
Delete folder: "\SYS\23052\dpi_192_resh_480_resv_640"
Because BlackStone needs "dpi_192_resh_480_resv_800".
Create correct resolution folders:
Code:
Create folders:
"\SYS\23052\dpi_192_resh_480_resv_800"
"\SYS\23052\dpi_192_resh_480_resv_800\0407"
"\SYS\23052\dpi_192_resh_480_resv_800\COMMON"
Because BlackStone needs "dpi_192_resh_480_resv_800".
Extract correct resolutions files
Source: WM65-23052-CE-OS-5-2-4098-LANG-0409-DPI-ALL-RESH-ALL-RESV-ALL.rar
Code:
Extract: All folders ending in "*_dpi_192_resh_480_resv_800"
In this case:
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0409-DPI-ALL-RESH-ALL-RESV-ALL.rar\base_dpi_192_resh_480_resv_800"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0409-DPI-ALL-RESH-ALL-RESV-ALL.rar\MediaOS_dpi_192_resh_480_resv_800"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0409-DPI-ALL-RESH-ALL-RESV-ALL.rar\Phone_dpi_192_resh_480_resv_800"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0409-DPI-ALL-RESH-ALL-RESV-ALL.rar\Redist_dpi_192_resh_480_resv_800"
To folder: "\SYS\23052\dpi_192_resh_480_resv_800\COMMON"
Extract DPI files:
Source: WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar
Code:
Extract: All folders ending in "*_0407_DPI_192_RESH_480_RESV_800".
In this case:
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Base_Lang_0407_DPI_192_RESH_480_RESV_800"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Themes_Lang_0407_DPI_192_RESH_480_RESV_800"
To folder: "\SYS\23052\dpi_192_resh_480_resv_800\0407"
Create folder for language specific DPI files:
Code:
Create folder: "SYS\23052\DPI_192\0407"
Extract language specific DPI files:
Source: WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar
Code:
Extract: All folders ending in "*_0407_DPI_192".
In this case:
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Base_Lang_0407_DPI_192"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Enterprise_Lang_0407_DPI_192"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Entertainment_Lang_0407_DPI_192"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Office_Lang_0407_DPI_192"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Phone_Lang_0407_DPI_192"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\PhoneRedist_Lang_0407_DPI_192"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Redist_Lang_0407_DPI_192"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Transcriber_Lang_0407_DPI_192"
To folder: "SYS\23052\DPI_192\0407"
Create folder for language specific OS packages:
Code:
Create folder: "SYS\23052\SHARED\0407"
Extract language specific OS packages:
Source: WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar
Code:
Extract: All folders ending in "*_Lang_0407".
In this case:
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\ADC_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\AdobeFlash_LANG_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Autoupdate_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Base_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Bluetooth_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Browsing_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\browsingie_LANG_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Bth_A2DP_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Bth_HID_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Bth_Watch_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\CHome_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Enterprise_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Entertainment_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Fwupdate_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\IPSECVPN_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\IRDA_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\MediaOS_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\MSTag_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Office_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\OneNote_lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Phone_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\PhoneRedist_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Redist_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\RemoteDesktopMobile_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Skybox_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Skymarket_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\SqlCeMobile_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\Transcriber_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\VoiceCommand_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\WelcomeCenter_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\WindowsLive_Lang_0407"
Folder: "WM65-23052-CE-OS-5-2-4098-LANG-0407-DPI-ALL-RESH-ALL-RESV-ALL.rar\WMWidgets_LANG_0407"
To folder: "SYS\23052\SHARED\0407"
Extract initflashfiles.dat
Source: "initflashfiles-dat-all-langs.zip"
Code:
Extract:
File: "initflashfiles-dat-all-langs.zip\0407\initflashfiles.dat"
To: "OEM\BlackStone\0407\OEM_Lang_0407\initflashfiles.dat"
You may backup your old one, if you like. This is for creating links in WM65's startmenu.
Create folder for build specific extensions:
Code:
Create folder: "EXT\BlackStone\23052"
COPY THE DUMMY PACKAGES:
Code:
Copy:
Folder: "SYS\23037\SHARED\COMMON\FWUPDATE_Dummy"
Folder: "\23037\SHARED\COMMON\SQM_Dummy"
To folder: "SYS\23052\SHARED\COMMON\"
These are needed fo deactivating MS's home phoning functions (recommended). Deactivate
the corresponding "non dummy packages" (e.g. "SQM") and acrivate these ones in
ervius kitchen.
HowTos/ tutorials
Porting new WM65 builds into the kitchen: (Part II)
REDUCE SPACE:
Code:
Delete:
Folder: "SYS\23052\SHARED\COMMON\IRDA"
Folder: "SYS\23052\SHARED\0407\IRDA_Lang_0407\"
Because BlackStone has no IRDA. This is just an example. If you want to reduce more space, delete the
packages you like with their corresponding language. But remember, you don't have to delete them, you
can deactivate them in your ervius kitchen project, by doubleclicking the package, which sets it's
"Included" option to "False". So this package wont be build and doesn't waste space on your device.
RECMOD PACKAGES (the manual way):
Code:
Source: "TOOLS\RecMod.exe"
Create a shortcut of "RecMod.exe" to your desktop.
Navigate to:
"SYS\23052\SHARED\COMMON\browsingie\"
Drag and drop each "DLL folder" (e.g.: "browsui.dll") to the "RecMod.exe" shortcut on your desktop. A small
DOS windows will appear and close automatically. After that navigate to the folder of any DLL:
e.g.: "SYS\23052\SHARED\COMMON\browsingie\browsui.dll". You will notice a new DLL ("browsui.dll" in this case).
This is the unpacked version of the module. A module consists of at least three files: imageinfo.txt, imageinfo.bin,
S000. There can be more like S001, S002, S003 on so on. These modules are optimized for the BlackStone's (or any
other WM65 device) module memory. Due the module memory for the BlackStone being really limited, one has to make
files of some of them, or WM65 won't boot (Even with BlackStone native WM65 kernel, aware of WM65's slot 60 and 61).
After dragging and dropping all the files to your "RecMod.exe" shortcut, you will have to delete the modules.
Because in a windows file system a folder and a file cannot have the same name, you have to rename the folder, before
copying the new made "file DLL". e.g.: Rename "browsui.dll" to "browsui.dl" and then copy
"SYS\23052\SHARED\COMMON\browsingie\browsui.dl\browsui.dll" to
"SYS\23052\SHARED\COMMON\browsingie\browsui.dll". After that delete the module folder
("SYS\23052\SHARED\COMMON\browsingie\browsui.dl"). You will have to do this with every recmodded module.
I recommend to recmod the modules of at the following packages:
- Internet Explorer ("SYS\23052\SHARED\COMMON\browsingie")
- Microsoft Tag ("SYS\23052\SHARED\COMMON\MSTag")
Do not recmod the MUI files, these are small sized and not worth it. I do NOT recommend to recmond files
of the base as well. HTC has many modules in the new WM65 devices (like LEO/ FireStone). Modules
enhance speed and memory consumption. But because the module memory of the BlackStone is limited, you
cannot put too many of them into it.
Further information on modules will be posted later in the FAQ.
RESERVED
as u might have guessed, its reserved

Modification.

i cant find how to modify a ROM..
i mean after converting NK.NBF into DUMP folder if i want to remove any application and add another one how to do that?
like i want to add some plugins like arcsoft MMS,office and adictionary into a ROM how to do that..
thanx
well, that is done manually, you need to remove all the files/add the files from the OEM package there (exclude the option.xml and initflashfiles.dat and the dsm's and RGU) just copy the files, then when you goto the next step,or the step where you need to modify the HKLM and HKCU files, just open the OEM's RGU file, cpoy the keys and paste it in the Presented HKCU/HKLM and when you go to the other step, where you are required to edit the initflashfiles.dat, open the OEM's initflashfile in notepad, copy its content and paste it into the Main initflashfiles.dat of the ROM you are extracting, ther, that should do it
Note : make shure you hex edit the initflashfiles.dat and remove the first 2 bytes from the file (something like dd dd) or else your rom wont boot!!
if you dont want to hex edit, you can use my intiflashfiles Builder which is included in my kitchen, http://forum.xda-developers.com/showthread.php?t=378498
Ps. there is a guide too there

Categories

Resources