[FAQ][HowTo][KITCHEN][GER][WM65]BlackStone Buddy Count - Touch HD Windows Mobile ROM Development

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

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!

How-To build ur own OEM Package - help!!

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

X1 ROM optimization with Kovsky kitchen

**********************************************************************************************************************
IMPORTANT: Use my guide as your own risk. I am not responsible for anything if you device is bricked. Please flash only if you have hardspl installed.
**********************************************************************************************************************
XPERIA ROCKS​**********************************************************************************************************************
I have been using Xperia's cooked roms from Jack and ITJE and they are good. However, there are some problems with working that and not working this. and also I found that either the roms are too light or too heavy.
My goal is making Xperia rom as light as possible and only using xperia original stuffs so that I don't have problems with bluetooth and other things.
And I found a way to taking out junks from Xperia X1 and increased X1's storage space to around 360 MB by using Kovsky Kitchen and working everything normal.
I found that X1i_GENERIC_UK_CDF1215-1832_R2AA010 is the best for me and I stripped out SE's junks from the rom using Kovsky Kitchen. You can do to any original rom for your need.
Preperation:
1. Download Kovsky Kitchen here http://forum.xda-developers.com/showthread.php?t=477801 .
2. Download X1i_GENERIC_UK_CDF1215-1832_R2AA010 .
Start Cooking your own rom:
Step 1: Preperation
1. Extract Kovsky Kitchen to any where you want. (Preferrably C:\Kovsky Kitchen)
2. Rename APP_SW_X1i_GENERIC_UK_CDF1215-1832_KOV_R2AA010.image to RUU_Signed.nbh and copy to Kovsky kitchen's BaseRom folder.
Step 2: Extracting
1. Run KovskyKitchen.CMD
2. Type "e" to extract the original X1 R2AA010 rom
3. Type "a" to start extracting. (It will take around 2 or 3 minutes)
4. Wait until you see "Press Any Key to continue...."
5. Leave the CMD windows open...
Now Kovsky Kitchen is ready to cook...
Step 3: Cooking
1. Go to a newly created folder called " OEM" in the kitchen that where you do stripping out SE's Junks.
2. Go to "ConfigAP" folder. You will see config_AP.txt. Make file writable by changing read only attribute. And delete all links to CAB files that you want to delete. I delete them all as I don't want any of them.
CAB: \WINDOWS\bejeweled2SX1.PPC_2577.WM5_signed.CAB
CAB: \WINDOWS\FM-Radio_Panel_MR1_R19_32318_signed.CAB
CAB: \WINDOWS\GoogleMaps-ms-sonyericsson_emb.cab
CAB: \WINDOWS\GooglePanel_UK_MR1_R19_32195_signed.CAB
CAB: \WINDOWS\GoogleSearch_SEMC_1.1.40_RC3_signed.CAB
CAB: \WINDOWS\MxP_R19_MR1_RC2_32367_signed.CAB
CAB: \WINDOWS\WM6.1_PPC_dawn_Opera_2532_signed.cab
CAB: \WINDOWS\sudokuSX1.PPC_2577.WM5.CAB
Leave only "CFG: \WINDOWS\config_end.txt" line . I don't want any junk in the rom. I will install them later by UC config or manually install them.
And put the file back "Read Only"
3. Delete folders that you don't want in the OEM folder whatever start with "PACKAGE_". For example:
PACKAGE_Kovsky_Bejeweled2
PACKAGE_Kovsky_Bejeweled2_0409
PACKAGE_Kovsky_FMRadioPanel
PACKAGE_Kovsky_FMRadioPanel_0409
PACKAGE_Kovsky_GoogleMap
PACKAGE_Kovsky_GoogleMap_0409
PACKAGE_Kovsky_Googlepanel
PACKAGE_Kovsky_Googlepanel_0409
PACKAGE_Kovsky_GoogleSearch
PACKAGE_Kovsky_GoogleSearch_0409
PACKAGE_Kovsky_HandangoInHand
PACKAGE_Kovsky_HandangoInHand_0409
PACKAGE_Kovsky_MxP
PACKAGE_Kovsky_MxP_0409
PACKAGE_Kovsky_Opera_Browser
PACKAGE_Kovsky_Opera_Browser_0409
PACKAGE_Kovsky_Sudoku
PACKAGE_Kovsky_Sudoku_0409
4. Deleting files from ExtendedPkg (Musics and Movies)
Make config.txt writable and delete
"XML: \WINDOWS\fileoperations.xml" line and Make the file read only again.
Delete all files that are larger than 22 KB except "Xperia Black.tsk", because i like Xperia black theme.
You can delete other files if you want to but for me I leave them alone as they are small enough.
5. Deleting files from SYS folder (These are original WM stuffs)
Delete "AUTOUPDATE" folder
Delete "NetCF" folder (You can install NetCF 3.0 later)
Delete "SampleMusic" folder
Delete "WelcomeCenter" folder
Delete "WelcomeCenter_Lang_0409" folder
You can delete OneNote, Office, or WindowsLive if you would like to. But I leave them alone.
Now.. our rom has no more unwanted stuffs..
Step 4: Building OS
1. Go back to CMD window and
2. Type "C" cook a rom.
3. Type "A" if you want to use the old BuildOS.exe (I can't figure out the second one)
4. BuildOS windows will appear.
5. Just click on green "Play" icon and It will start building our rom. Wait until it finishs and closes the "Build OS" window.
6. Go back to CMD windows again and wait until you see "press any key to contine".. press any key..
7. It will do some stuffs and you will see os-new.nb in the kitchen folder.
8. htc rom tool windows will appear.
Go to Rom Builder TAB. Choose Kovsky * in device. It will fill all the infomation in other fields. Just change the version to anything you like.
9. Choose "os-new.nb" in the OS field. and click on "Build" button.
10. Save it as "RUU_Signed.nbh" in the kitchen folder. A new window appear and it will quit itself.
11. Now. you will see "RUU_Signed.nbh" in the kitchen folder.
12. An Hexa Editor windows will appear. Just close it.
13. You can close CMD window now.
Step 5: Flashing
Now you are ready to flash your own cooked rom. You can flash your rom with RUU Update Utility or just change "RUU_Signed.nbh" to "KOVSIMG.nbh" and put is in SD card and flash it.
For information on how to flash using SD card here .
You can get my sample rom here.
*********************************************************************************************************************
FOR THOSE WHO WANT TO PUT CAB FILES IN THE ROM.
*********************************************************************************************************************
Step1:
Put the line in Config_AP.txt the line "CAB: \WINDOWS\FM-Radio_Panel_MR1_R19_32318_signed.CAB" . It has to be exactly as the cab file name that you are going to put in the OEM folder.
Step2:
Make 2 folders "PACKAGE_Kovsky_FMRadioPanel" and "PACKAGE_Kovsky_FMRadioPanel_0409" in the OEM folder. Put your cab file in the first folder.
And now you are good to go.
Step3:
Open KovskyKitchen.CMD and start the procedures "Step 4: Building OS "from my guide.
************************************************** ********
Step 4: Building OS
1. Go back to CMD window and
2. Type "C" cook a rom.
3. Type "A" if you want to use the old BuildOS.exe (I can't figure out the second one)
4. BuildOS windows will appear.
5. Just click on green "Play" icon and It will start building our rom. Wait until it finishs and closes the "Build OS" window.
6. Go back to CMD windows again and wait until you see "press any key to contine".. press any key..
7. It will do some stuffs and you will see os-new.nb in the kitchen folder.
8. htc rom tool windows will appear.
Go to Rom Builder TAB. Choose Kovsky * in device. It will fill all the infomation in other fields. Just change the version to anything you like.
9. Choose "os-new.nb" in the OS field. and click on "Build" button.
10. Save it as "RUU_Signed.nbh" in the kitchen folder. A new window appear and it will quit itself.
11. Now. you will see "RUU_Signed.nbh" in the kitchen folder.
12. An Hexa Editor windows will appear. Just close it.
13. You can close CMD window now.
************************************************** ************************************************** *****************
FOR THOSE WHO WANT TO PUT OTHER HTC DEVICE'S STUFFS IN THE ROM. (For example "Blackstone" HTC Touch HD)
************************************************** ************************************************** *****************
Step 1: Exact other device's ROM the same procedure as X1 rom.
Step 2: Simply copy folders from Blackstone kitchen's OEM folder to X1 kitchen's OEM folder. For example:
PACKAGE_Blackstone_AudioBooster
PACKAGE_Blackstone_AudioBooster_0409
Step 3: Follow the step 4: Building OS from the guide.
Working Stuffs:
Album
AudioBooster
AudioManagerEngine
Enlarge Startmenu
MP3 Trimmer
FMRadio
Manila
JetCet Print
LargeTitalbar
Volume Control
AdvancedNetwork
Not Working Stuffs: (May need shared files from other folders or tweakings)
Camera (I simply use X1 camera application . Copy \Program Files\CameraRunner.exe to \Windows and rename it to "Camera.exe".)
Youtube (You can simply install Youtube program that has been modified)
CyberonVoice Commander
Nice work!! Downloading at the moment, and see what your guide brings me
wow,that's what i'm looking for!
thanks for the work
How to cook rom 101.. This is what i've been looking for.. Thanks TS.
Brilliant, someone should sticky this.
Been wanting to try cooking my own rom for a while but didn't know where to start. Your example is pretty much exactly what i've been looking for in a cooked rom, strip out all the media junk but not mess with anything else.
What do I have to do to get UC working, is it just a case of having SDConfig.txt on my storage card or do I need to add something to the rom?
Any chance of a part 2 for how to add cab's to the rom? I would like to add a few light weight essentials such as blackstone dialer, fm radio & volume control to mine.
Nice Thread...I will try it later after work...
"Make config.txt writable and delete
"XML: \WINDOWS\fileoperations.xml" line and Make the file read only again.
Delete all files that are larger than 22 KB except "Xperia Black.tsk", because i like Xperia black theme."
One question...what do you mean "make config.txt writable?"
MykeChester said:
One question...what do you mean "make config.txt writable?"
Click to expand...
Click to collapse
In file properties, untick "read-only"
Q
a good guide.Thanks!
thank you very much
Actually, I have never tried to use UC yet. I just install whatever I want manually. Using UC should be quicker to install things. Great chefs like ITJE and Jack should know better. Please search their threads for UC stuffs.
For putting the cab files should be relatively easy. We can do reverse exactly how we stripped them out.
For example , you can do the following if you want to put FM Radio panel back or any other cabs you wanted to include in the rom.
But for me, I want the rom as light as possible and to get the largest storage space, I don't bother to put them in the rom. If I want them, I just install them manually.
Step1:
Put the line in Config_AP.txt the line "CAB: \WINDOWS\FM-Radio_Panel_MR1_R19_32318_signed.CAB" . It has to be exactly as the cab file name that you are going to put in the OEM folder.
Step2:
Make 2 folders "PACKAGE_Kovsky_FMRadioPanel" and "PACKAGE_Kovsky_FMRadioPanel_0409" in the OEM folder. Put your cab file in the first folder.
And now you are good to go.
Step3:
Open KovskyKitchen.CMD and start the procedures "Step 4: Building OS "from my guide.
**********************************************************
Step 4: Building OS
1. Go back to CMD window and
2. Type "C" cook a rom.
3. Type "A" if you want to use the old BuildOS.exe (I can't figure out the second one)
4. BuildOS windows will appear.
5. Just click on green "Play" icon and It will start building our rom. Wait until it finishs and closes the "Build OS" window.
6. Go back to CMD windows again and wait until you see "press any key to contine".. press any key..
7. It will do some stuffs and you will see os-new.nb in the kitchen folder.
8. htc rom tool windows will appear.
Go to Rom Builder TAB. Choose Kovsky * in device. It will fill all the infomation in other fields. Just change the version to anything you like.
9. Choose "os-new.nb" in the OS field. and click on "Build" button.
10. Save it as "RUU_Signed.nbh" in the kitchen folder. A new window appear and it will quit itself.
11. Now. you will see "RUU_Signed.nbh" in the kitchen folder.
12. An Hexa Editor windows will appear. Just close it.
13. You can close CMD window now.
**********************************************************
Hope this help.
i_am_jon said:
Brilliant, someone should sticky this.
Been wanting to try cooking my own rom for a while but didn't know where to start. Your example is pretty much exactly what i've been looking for in a cooked rom, strip out all the media junk but not mess with anything else.
What do I have to do to get UC working, is it just a case of having SDConfig.txt on my storage card or do I need to add something to the rom?
Any chance of a part 2 for how to add cab's to the rom? I would like to add a few light weight essentials such as blackstone dialer, fm radio & volume control to mine.
Click to expand...
Click to collapse
@htainlin
Thank you greatly for these posts - they are very clear and concise.
Most of all, they are explicit and very helpful. Trying to obtain a "road map" of ROM cookery is very frustrating - it's all a "big secret", where you are advised to read and read etc, but the multifarious references are truncated, incomplete, chaotic and contradictory. You've helped enormously in cleaning up this mess.
Straightforward now - generic RA3 versions will turn up sometime.
Re UC:
I use this to re-install most apps after a new ROM flash (see Jack Leung's thread for my posts). The only real hassle for UC are those apps that splatter files on installation to both the SD card and Storage. There is a huge thread on UC with most questions answered in one fashion or another, but it takes patience to sort through it. Having done it once, you need only update your sdconfig.txt as you add/remove apps over time.
Nice post!
However if you really want to make a streamlined rom use Ervius Visual Mulitlang Kitchen
http://forum.xda-developers.com/showthread.php?p=3147148#post3147148,
The GUI is pretty neat, and it uses Bepe's new kitchen system to get rid of extra gumpf in the roms (such as dsm files).
this then optimizes it a bit as /windows has less files in it. Ergo it does things faster.
this will also work with the newer format roms coming I think.
ianl8888 said:
@htainlin
Thank you greatly for these posts - they are very clear and concise.
Most of all, they are explicit and very helpful. Trying to obtain a "road map" of ROM cookery is very frustrating - it's all a "big secret", where you are advised to read and read etc, but the multifarious references are truncated, incomplete, chaotic and contradictory. You've helped enormously in cleaning up this mess.
Click to expand...
Click to collapse
There's no "big secret" the reasons you've stated are the reasons people tell you to read. If there was one post to point people to then don't you think people would have done it?
It takes a lot of time to do the work that htainlin did, which is why most people dont get around to doing it all.
htainlin stick it in the WIKI.
Very rom cooking guide for beginner
Nice work. I did something similar for Asus P525 long time back and I know it's takes a lot of effort to bring everything together, and explain the subject clearly for beginner.
This is a very good starter "re-cooking" document for beginner. There is no "big secret" for rom cooking. All you still need to do is research and read a lot more to do some hardcore stuff for the next level. e.g. remove unnecessary driver/service/registry Welcome center / Customer Satisfactory ...etc, replace driver w/ other device to get more functionality. Then XIP/Sys port .....etc
Thanks guys. I am not really into cooking.
My goal is to take the "Unwanted Stuffs" out from the rom so that the storage will be larger and just a small guide to everyone who wants to make their rom lighter. Everyone should be able to do it themselves for their likings to any future rom versions.
There is "NO BIG SECRET" for rom cooking. But for beginners, it is really hard to figure out how to use "Kovsky Kitchen". Once you are experienced, it's quite easy.
But for advanced stuffs as Jack mentioned.. we need more research and skills. I might write a detailed guide later, how to edit registry and replacing better dlls and applications.
Everyone has his/her own preferences and I just want to show them even a beginner could do themselves.
Windows mobile is the best ever mobile os for me so far and you can modify anyway you like. Thanks to many developers who created kitchen and make things easy for us.
how to's...
here are some of the how to's i stumbled on ppc geeks. hope this enlighten some in modding/customizing roms:
1. how to's for developing
2. adding registry entries (rgu method)
twisted said:
here are some of the how to's i stumbled on ppc geeks. hope this enlighten some in modding/customizing roms:
1. how to's for developing
2. adding registry entries (rgu method)
Click to expand...
Click to collapse
Thanks for the links. Very good.
There is no need to do such a hard job - to extract & rebuild all the ROM file.
Just take HTC Rom Editor, open your ROM there, clear all useless stuff and correct files
config.txt
config_AP.txt
config_operatior.txt
config_SP.txt (if exist)
fileoperations.xml
runlua.cc
Then save your rom and flash it. Easy way.
PS: My custom rom with cleared "stuff" (even SE Dialer) and some features is about 65MB, and makes about 360+MB free memory.
Great job! Big help to us new to WM and ROM cooking. Thanks, mate!
+1 to make this thread sticky
great write up. got a couple questions tho.
what effect does deleting the \windows\fileoperations.xml have on:
ringtones? will you have to maually load your ringtone, like for my alarm, notifications (mail, sms)
internet explorer start page?
startup animation?
panels? will i still have the se1 and 2 panels? how about the today panel?
thanks,
claudio

[01 DEC 09] TUTORIAL: How I cook ROMs for XPERIA + all my kitchens, tips and tricks

.
TUTORIAL:
HOW I COOK ROMs for the XPERIA X1
A complete, step by step GUIDE
[01 DEC 09]: SEX1 R5 pure ROM KITCHEN UP FOR DOWNLOAD at the ROM thread​
PS1 My ROMs are NOT intentionally protected: feel free to dump and use any components you please
PS2 Don't be shy: ASK !! but don't be dumb: SEARCH !!
INTRODUCTION​
Glad to see everybody is trying to cook these days: we are all here to learn and share
Following xda-devs spirit, I am writting this little guide to help those who could be intrested in cooking their own ROMs
Don't be shy: If I did it, YES YOU CAN do it too !!
Let's get real: NO COOKED ROM WILL 100% FULLFILL YOUR NEEDS/EXPECTATIONS BECAUSE WE ARE ALL DIFFERENT
Let's get real again: THE ONLY WAY TO STOP COMPLAINTING ABOUT "this" OR "that", FLAMING A CHEFF'S TREAD, IS BY DISCOVERING HOW HARD AND COMPLICATED THE PROCESS IS, but don't dismay: this thread is meant to guide you step by step into the cooking world
I have been reading and learning a lot, trying to build something that would suite MY OWN NEEDS, I have been using my ROMs for quite a while and I am happy and satisfied: I show off my phone and I can proudly say "I did it myself"
So I invite all of you to give it a try too: it's worth the experience
But first, may I invite you to take a look at some works:
Link to latest SEX1 R5 -release 5- ROM thread (kitchen and complete cooking log at post 3)
Link to DEUTSCH SEX1 ROM + KUCHEN thread
Link to LATIN SEX1 ROM + COCINA thread
Link to SEX1 R4 public beta testing thread
Link to SEX1 R3 -release 3- PURE, BareBone & XPERT ROMs thread
Link to SEX1 R3 public beta testing thread
Link to SEX1 release 1a ROM thread
STEP 1: BASIC REGISTRY SKILLS​
Every good cooker/cheff needs basic REGISTRY skills
As a good reading/searching-needed noob, I have compiled some knowledge and here are my 2 cents:
BASICS
1- Registry keys can be generated (created) or changed with a RGU file (unicode format) or XML/PROVXML file (UTF-8 format)
Both can be edited with notepad, but make sure you choose the right format when saving
(use "save as": it will let you choose format)
Differences:
- UTF-8 for XML or unicode for RGU
- dword values must be hexadecimal in RGUs and decimal in XMLs
- RGUs store registry keys only, XMLs store registry keys, file operations, etc
2- A PROVXML file is a glorified XML: it loads automatically when cold-booting the device (hard reset or first boot), which means all of it's instructions, file operations & registry keys will be auto-executed and will override similar instruction from RGUs
In the other hand, XMLs have to be invoked ("runned") during customization (usually from OEM\Operatorpkg\config*.txt)
ORDER OF IMPORTANCE
1- When cooking the ROM, all RGU files are compiled and gathered to create the main, barebone system registry (see Jack's comment some posts down)
2- After flashing the phone, when the ROM is loaded for the first time (when it takes forever to boot = "cold boot", same as after a hard-reset), all commands inside all PROVXMLs are auto-executed, overriding corresponding registry keys from REG/RGU files
3- After the "set date" and "align" screen, the auto-customization process starts:
Anything inside "config.txt" will be autoexecuted (apply themes, install CABs, run XMLs...)
Here is where I execute my customization XMLs and any required OEM customization XML
Here is an example "config.txt":
Code:
LOCK:Enabled
CAB: \WINDOWS\ActiveX_Deployment_signed.CAB
CAB: \WINDOWS\WM6.1_PPC_dawn_Opera_15969_signed.cab
CAB: \WINDOWS\gtrab_SEX1_Customization.CAB
XML: \WINDOWS\SEX1_fileoperations.xml
XML: \WINDOWS\My_panelconfig.xml
TSK: \WINDOWS\Naked_chiks.TSK
LOCK:Disabled
RST: Reset
- As a side note, "config.txt" usually goes inside OEM\OperatorPkg, and runcc.lua governs which files are auto-launched
- I put most of the big CABs inside OEM\PACKAGES, eg. PACKAGE_Kovsky_ActiveX_Deployment
- I put the small or orphan CABs into OEM\OperatorPkg, together with my XML files, to keep them handy and keep them in mind at a glance towards the customization files
Conclusion: Better put all of your important registry tweaks in XML or PROVXML files instead of searching for a specific registry key inside more than one hundred RGUs, anyway they will be overrided by any XML or PROVXML instruction pointing to that same registry key
COOKING IMPLICATIONS
1- If required, each OEM or SYS PACKAGE has its own RGU file and/or PROVXML files
Some PACKAGES don't need registry settings, so they don't have an RGU inside
2- The RGU name must be THE SAME as the PACKAGE identifier DSM file
3- Only ONE RGU file is allowed per PACKAGE, but each PACKAGE can contain as many PROVXMLs as required
4- PROVXMLs are a very useful tool because we can add lots of customized instructions to our ROMs ("move this file", "delete that file", "rename this one", "remove Hidden attributes", etc)
5- I prefer to edit the "stock" PROVXMLs instead of creating new ones: a single format error will make the whole XML unusable and the customization process will omit it
SAMPLE RGU FILE
BASIC RGU / REG RULES:
- First line must say "REGEDIT 4" (don't ask me why )
- Anything apres a ";" is just a comment and won't be processed
- Last line must be empty (again don't ask me why )
Code:
REGEDIT4
; this line has a semicolon, so it will not be processed
; gtrab SEX1 registry tricks compilation
; google rulez: those who search shall find !!
; DISABLE SECURITY WARNINGS
[HKEY_LOCAL_MACHINE\Security\Policies\Policies]
"0000101a"=dword:00000001
; VIBRATE AND RING
[HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0]
"Script"="av0pw3r"
"Sound"="\\Windows\\Rings\\Sony Ericsson.mp3"
"Category"="Ring"
; HIDE SIM CONTACTS
[HKEY_CURRENT_USER\ControlPanel\Phone]
"ShowSIM"=dword:00000000
; DISABLE AUTO WORD SUGGESTION
[HKEY_CURRENT_USER\ControlPanel\Sip]
"SuggAutoCorr"=dword:00000000
"SuggWords"=dword:00000000
; ENABLE SCREEN TAP SOFT SOUND
[HKEY_CURRENT_USER\ControlPanel\Volume]
"Screen"=dword:00000001
; DISABLE AUTO DIM / AUTO TURN OFF SCREEN
[HKEY_CURRENT_USER\ControlPanel\BackLight]
"BatteryTimeout"=dword:00000000
"ACTimeout"=dword:00000000
"LightDetectOn"=dword:00000000
; DISABLE AUTO TURN OFF DEVICE
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Power\Timeouts]
"ACSuspendTimeout"=dword:00000000
"BattSuspendTimeout"=dword:00000000
; ENABLE TOUCHFLO SCROLL SOUND
[HKEY_LOCAL_MACHINE\Software\OEM\TFLOSettings]
"EnableSound"=dword:00000001
; MIC AGC ON
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\AdvancedCPL]
"MicrophoneAGC"=dword:00000001
; IMPROVE BT A2DP SOUND QUALITY
[HKEY_LOCAL_MACHINE\Software\Microsoft\Bluetooth\A2DP\Settings]
"MaxSupportedBitPool"=dword:00000028
"BitPool"=dword:00000028
"UseJointStereo"=dword:00000000
; BT DEFAULT DEVICE NAME
[HKEY_CURRENT_USER\Software\Microsoft\Bluetooth\Settings]
"LocalName"="SEX1"
; WM6.5 PATCH - TASKBAR BATT ICON CLICK OPENS POWER SETTINGS
[HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\TaskBar]
"LimitedClock"=dword:00000001
"ConsistentClockOrBattery"=dword:00000000
; SCROLLBAR SLIGHTLY THICKER
[HKEY_LOCAL_MACHINE\System\GWE]
"cyHScr"=dword:0000000f ; Hex f = Dec 15, standard value was Dec 13
"cxVScr"=dword:0000000f ; Hex f = Dec 15, standard value was Dec 13
"cyVScr"=dword:00000015 ; Hex 15 = Dec 20, untouched standard value
"cxHScr"=dword:00000015 ; Hex 15 = Dec 20, untouched standard value
; DISABLE SMS WAKE UP
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\RIL]
"DisableSMSWakeUpEvent"=dword:00000001
; EMAIL LED ILLUMINATION ON
[HKEY_LOCAL_MACHINE\Software\Drivers\illumination\27]
"Enable"=dword:00000001
; USE LARGE KEYS FOR SIP KEYBOARD
[HKEY_CLASSES_ROOT\CLSID\{42429667-ae04-11d0-a4f8-00aa00a749b9}]
"KBMode"=dword:00000000
Again: DON'T FORGET to leave the last line empty !!!
XML / PROVXML SAMPLE
Check this *.PROVXML file guys, I edited it to rename my SEX1_stwater*.png custom backgrounds to stwater*.png (thus making them the "default" backgrounds after the flash)
Also, there's a registry change example included in this sample XML:
Code:
<wap-provisioningdoc>
<characteristic type="Registry">
<characteristic type="HKCU\Software\Microsoft\Today">
<parm name="Skin" value="\Windows\Classic Blue.tsk" datatype="string"/>
<parm name="UseStartImage" value="1" datatype="integer"/>
<parm name="DPI" value="192" datatype="integer"/>
<parm name="MultiColorThemeEnabled" value="1" datatype="integer"/>
</characteristic>
</characteristic>
<characteristic type="FileOperation">
<characteristic type="%CE2%" translation="install">
<characteristic type="stwater_480_800.jpg" translation="install">
<characteristic type="Copy">
<parm name="Source" value="%CE2%\SEX1_stwater_480_800.jpg" translation="install" />
</characteristic>
</characteristic>
<characteristic type="stwater_800_480.jpg" translation="install">
<characteristic type="Copy">
<parm name="Source" value="%CE2%\SEX1_stwater_800_480.jpg" translation="install" />
</characteristic>
</characteristic>
</characteristic>
</characteristic>
</wap-provisioningdoc>
Continued...
STEP 2: THE KITCHEN​
[01 JUL 09] Uploaded the kitchen I used to cook my SEX1 R3.61 XPERT ROM​Improvements: 1- During cooking process, it will let you choose between LZX or XPR compression without having to change any files (now it uses th "mythical" universal cecompr.dll ) 2- Before closing, it pauses to let you explore or copy temp files 3- Smaller in size and super FAST: cook a 100 MB ROM in one minute (using XPR)
[01 JUN 09] SEX1 KITCHEN, more simple, small & easy to use. Download at post footer
[01 JUN 09] COCINA SEX1 con ejecutable ('script') en español, más sencilla, pequeña y fácil de usar. Descarga al pie de este post
BASICS
Every Kitchen requires Microsoft Visual Basic redistributable & Microsoft .NET Frameworks 3.5 to run
Download here: http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&DisplayLang=en
Some Kitchens must to be placed in the root directory C:\
The SEX1 kitchen can be placed anywhere in your PC, even in your desktop if you wish
INTRODUCTION
A "kitchen" is a compilation of tools, some are optional and some required to cook a ROM
The SEX1 Kitchen has the minnimum required tools only, making it smaller
Some users have written SCRIPTS to automate the cooking process and make things easier, so even I can cook
The script guides you instead of manually launching every required app in the correct order
Just click "Cook.bat" "kovskykitchen.bat" or "buildNB.bat" (it depens on which kitchen you are using) and the automated script will do the rest
This SEX1 Kitchen is a modified derivant from Bepe's old Kitchen structure with updated tools, and in this case I wrote the script for the automated process myself
Erviu's Visual kitchen is a more modern, UI-oriented alternative, but by the time being I will focus on the structure and some basic concepts for this classic ole' style kitchen from Bepe because Visual Kitchen uses a dfferent folder structure
STRUCTURE
Inside the Kitchen you will find 4 folders and the Kitchen's batch script:
BATCH SCRIPT:
- When finished populating OEM, SYS and ROM (XIP) folders with your desired OEM packages and CE|OS build choice, double click the batch script to start cooking and have a smoke or a coffee while it finishes (this Kitchen is unattended, it takes around 2 minutes to auto-cook a 100 MB ROM with standard compression)
For the english Kitchen: double click "Cook.bat"
Para la Cocina en español: doble click "Cocinar.bat"
- The batch script can be edited with notepad
I inserted some REMARKS ("REM") inside the script:
1- First one if you want to include a pause in the right place to manually edit file attributes before cooking the ROM
2- Another one in case you want to Hex-edit "imgfs.bin" to manually change compression from stock WRX to new LZX
NOTICE 1: LZX compression can be used in this Kitchen by populating the \ROM\ folder with a LZX compression enabled "os.nb.payload" or by editing the new "imgfs.bin" during the cooking process
NOTICE 2: LZX uses a different compressor DLL, it can be downloaded at post footer and relaced in \tools\ folder
KITCHEN FOLDERS:
- The \Tools\ folder is the "oven": it contains all the required tools to cook the ROM
I added step by step explanations into the script, so you can check it to see what happens and which apps are called, to better understand the cooking process: It's worth taking a look
We should be grateful with bepe, bot, ervius, MrVanx, OM-BY, blasphemer, udk and many others for these amazing tools
One year ago the process was SO TEDIOUS and HARD... now it is a matter of clicks !!
- The other 3 folders, OEM SYS & ROM, are where the future ROM parts must be placed:
Download the Kitchen first, then populate these folders with your desired recipee
- Where to get OEM, SYS and ROM (XIP) contents from ??
Use mines (from this tutorial), or dumped ones, or from other users who have shared them
There are many many available around the subforum, just do your homework and search
NOTICE 1: SYS packages must be 192 dpi 480 x 800 resolution !!
NOTICE 2: ROM (XIP) with os.nb.payload must come from a XPERIA, otherwise it must have been ported for the XPERIA
NOTICE 3: If you plan to use a ROM (XIP) folder from jerpelea or my newer "SEX1 release 3", the proper compressor DLL must be downloaded and replaced at "/tools/" folder (the ROM compression selection lyes inside "os.nb.payload")
After populating these folders, your future ROM is basically already there, dismantled into the 3 folders:
- ROM folder is the core
CE build version is here, in "xip.bin" (in some kitchens like this one, "xip.bin" is already inside "os.nb.payload")
- SYS folder contains all Microsoft Operatin System shizzz (media player, Titanium, bootscreen, backgrounds, themes, calendar... etc)
OS build version is here, in \OS\ folder
- OEM folder contains Sony or HTC customizations (Dialer skin, Xperia Panels, TouchFlo...)
OEM version (customization) is here, in \OEMVersion\ and \OperatorPkg\ folders
- In most kitchens your new cooked ROM will "appear" in the RUU folder, which contains a "Rom Update Utility" app required to flash your fresh new custom smokin' cooked ROM to the phone
In the SEX1 Kitchen the new cooked ROM will "appear" in the root kitchen folder, renamed to kovsimg.nbh, ready to be flashed with the microSD method (safer IMHO)
Of course it can be renamed to RUU_signd.nbh and USB-flashed from the PC with the RUU app too
OPTIONAL TOOLS FOR THE SEX1 KITCHEN
Along with the Kitchen, I have uploaded some very useful tools to this post
They are not required but some people could find them usefull and can be optionaly added to the kitchen:
(I wrote and included instructions for each tool inside the ZIP)
xvi-32 Hex Editor -> useful to hex-edit files (I Hex-edit my ROMs to change the ROM initial date, tutorial @ post 90)
Page Pool changer by OM-BY -> Changes the ROM page pool size (some say 0 is better, others prefer 8MB or even 16MB. I use 0=auto)
SYS version by MRVanx -> Gives the real version of every package in SYS folder (don't be surprised: all SYSs floating around are hybrids somehow)
RUU ROM Update Utility 3.22.4.3 for Xperia X1 -> To flash ROMs from the PC
LZX compression: To make the SEX1 Kitchen COMPATIBLE with LZX-compressed ROM/XIPs, just replace the CE compressor DLL in \TOOLS\ folder with the one posted below
Continued...
STEP 3: The OEM folder, HERE'S WHERE WE'RE GONNA PLAY !!​
Downloads
Download OEM, ROM & SYS folders (OEM base: R3AA010 WWE) (XIP|SYS 21815) here from SEX1 R3.61 XPERT [01 JUL 09]
Download OEM folder (base: R2A+R3A "beta" WWE) here from W4X.23 [01 MAY 09]
NOTICE: All OEM folders and PACKAGEs I use are optimized for Bepe's old style Kitchen
Change Log of my OEM packages
release 3 OEM change log:
I dumped R3AA010 UK ROM -> deleted unnecessary OEM packages and streamlined others into \OperatorPkg ("AAinfo.txt", "runcc.lua", operators config "Provision.zip", etc), but kept \ExtendedPkg,
then I:
- Edited OEM\OEMDrivers RGU to:
enable XPERIA start up anime from cold boot (keys were originally added during customizaton in "fileoperations.xml"),
disable SMS sent notification pop up ("NoSMSsentmsg" value 0 -> 1)
disable reg keys for Auto Error Reporting's fatalerror DLL
- Edited OEM\ExtendedPkg\"fileoperations.xml" to:
remove the Bond trailer link inside
- Deleted "fatalerror.dll" in OEM\OEMDrivers
- Deleted "Bond trailer.mp4" and Handango store link in OEM\ExtendedPkg
- Added PACKAGE SD tune UP by tnyynt
- Added my multi-PACKAGE MS SDK certificates + registry lock OFF + CAB insallation warnings disabled
W4X.23 OEM change log:
I dumped XPERIA R2A ROM & downloaded R3A beta OEM packages @ cheffs develop and share centre thread,
then I:
- Deleted unnecessary OEM folders, gathered all XPERIA SEMC contents (from \ExtendedPkg) into two CABs, put them inside \OperatorPkg and edited "config*.txt" to invoke that CABs during customization
- Wrote XMLs for SEMC file operations and edited "config*.txt" to invoke those XMLs during customization (after my SEMC CABs installations, otherwise files wouldn't be found !!)
- Deleted Bejeweled, Sudoku and other unused packages
- Replaced R2A "kovsky" packages with R3A beta packages
- Added PACKAGE for Xtrakt game
- Added PACKAGE for other Panels (Growing panel, Facebook panel, etc)
- Edited OEM\OperatorPkg\"panelconfig.xml" accordingly to the new panels I added, and in my desired panel slot order
OEM - PACKAGES TUTORIAL
Inside SYS and OEM folders we will find PACKAGES
- A PACKAGE contains an app or util or configuration or else
- A PACKAGE is a group of files that do something: There's a PACKAGE for Adobe reader, another one for OEMDrivers, Dialer, VideoTelephony, GoogleMaps, etc
- Basically speaking, this is what we call "cook": to REMOVE or ADD PACKAGES to a recipe and customize the ROM with apps and utils or tweaks
MORE EASYER ?? Bepe's ole style kitchen uses bepe's BuilOS 0.91 utility to control which PACKAGES are included or not in the new ROM, without having to delete PACKAGES folders every time
You need to create a "option.xml" file inside each PACKAGE for the BuildOS to display it in the list of available, selectable PACKAGES
If a PACKAGE doesn't contain "option.xml" BuildOS will assume it must be cooked, by default
How to create "option.xml" ?? It can be manually created, or automatically created with ervius' package creator
HOW ARE FILES ARANGED ??
- Most files in a ROM (inside OEM or SYS PACKAGES folders) are "normal" files
- But some special "system" files have been disasembled in "Modules"
Eg.: If you search for "shellres.dll" you will not find it, but you will find a folder called "shellres.dll" with *.bin, *.txt and some S000, S001, S002 etc files inside: This is "shellres.dll", but disasembled into "modules"
"recmod.exe" converts Files <-> modules
Dissasembled files are re-assembled when the ROM is flashed
EVERY FILE inside all OEM and SYS PACKAGES will go to \Windows unless stated different​
How to tell a file not to go to \Windows ??
Read fards' explanation on post 12 from this thread Initflashes.dat governs what folders are created and which files are moved
Another way to move files is using ye ole *.PROVXML files with proper instructions (I suggest you to open and study some of the stock *.PROVXML files to understand the basic syntax, it's very easy once you have seen a couple of them)
SELECTING ROM CONTENTS
Each package is an app or utility or program or set of customizations, you can add or remove at will, replace a "KOVSKY" app for a "RHODIUM" or "BLACKSTONE" one, but beware: some apps require others !!! Example: If I delete "PACKAGE_Kovsky_PhoneCanvas_VT" (which i the XPERIA phone dialer) and replace it for another dialer skin, I should also delete (or replace) "PACKAGE_Kovsky_VideoTelephony" (It wouldn't make sense to mix up the skins)
Don't worry, this is basic common sense thing, but of course requires a standard trial and error learning curve​
CUSTOMIZING / TWEAKING THE ROM
Most of the more important user-related registry keys are inside OEM folder packages
As I stated before, registry changes can be made "inside" every RGU or, as Itje suggested, better put 'em on a PROVXML file, so the "basic" structure of the ROM is not altered next time you want to cook a different ROM and you don't want that change again
TIPS
- Build your mental "structure" of what you want in your ROM
- Start with basic packages cook the ROM and flash it, if it boots and workss, continue tweakin' / moddin'
- Make "maybe yes/maybe not" apps or utils (packages) OPTIONAL in BuildOS with Ervius Package Creator
(The file "option.xml" will not be cooked the ROM, it is there ONLY to tell the kitchen "this is an optional package and the cheff is going to decide wether to select it or not while cooking")
- Avoid LOTS of wasted time by following this advice from a somnolent beginner: KEEP TRACK OF EVERYTHING YOU DO -> WRITE AND MAINTAIN A CHANGE LOG !!!
Who knows ?? Maybe next day you won't remember "which" RGU you edited late last night, or even worst: "what da heck" you tweaked, or "what for"
- Some programs can not be added as packages because some of their files may have repeated names with other packages:
THE KITCHEN WILL STOP COOKING AND WARN FOR A "REPEATED" FILE
(the ROM can't flash 2 files with the same name to \Windows - remember everything goes into \Windows folder during first boot !!)
CABs are very usefull in this case, but beware:
CABs WILL NOT "auto-install", you have to "invoke" them during the CUSTOMIZATION PROCESS, usually adding a line into a "config*.txt"
I chose to drop some CABs inside "OperatoPkg" (again: to keep an eye on them), and kept "stock" PACKAGES for other CABs (check Xtrakt or Opera packages as an example, and open the config*.txt files to see how these CABs are "invoked" to install during first boot customization process)
SOME PACKAGES
Attached to this post footer you will find a OEM PACKAGE I prepared, meant to add the XPERIA boot start up animation to any ROM (my OEMs all have the animation enabled by default)
BatteEnhancer will include Ethermind's 1% battery driver for XPERIA with required registry changes
SDK+CAB-REG will install SDK certificates (SDKcerts), disable the "non-signed" warnings when installing CABs and turn registry security off (to be edited with any reg editor)
SD tune UP from tnyynt will make your SD card read/write faster
.NET Frameworks (.NET CF) version 3.7
Continued...
STEP 4: THE XIP AND SYS FOLDERS FROM MY ROMS​
Downloads
Download ROM (XIP) folder OS build 21806 here from SEX1 release 3
Download SYS folder CE build 21806 here from SEX1 release 3
Download ROM (XIP) folder OS build 21500 here from W4X.23 (source: jerpelea's kitchen)
Download SYS folder CE build 21500 here from W4X.23
Some changes I often make inside SYS folder
- SYS\Base_DPI_192\: Customize "StartMenu_Selection.png" (honeycomb background for selected item)
- SYS\Base_dpi_192_resh_480_resv_800\: Customize "stwater*.jpg" (XPERIA silver theme aluminum background)
- SYS\Redist_dpi_192_resh_480_resv_800\: Customize "welcomehead.192.png" (WM6.5 orange bootscreen says "SEX1")
Applying Halsted's principles to the cooking process, better avoid making changes inside the SYS folder,
instead, now I run my personalizations during the customization process (remember "\OEM\OperatorPkg\config*.txt" ?? Yey !! there, using some XMLs and CABs !!)
HOW TO CHANGE / UPGRADE AND PORT XIP | SYS GUIDE​
- XIP (CE build version) and SYS (OS build version) can be upgraded separatedly, which means you can have a "21500|21806" build or whatever
- Language and resolution can be changed without having to port
To upgrade SYS build version:
Replace folders inside SYS with newer build ones
Done
- Beware !! don't change ".VM" and "WinCENLS_WWE" folders, they are device specific
- The Kitchen's automated "G'reloc" will do the rest of the dirty work during cooking (reallocating modules in ROM memory)
- Wanna find out what SYS version each folder is ?? Use SYS version by MRVanx
To upgrade XIP build version:
Insert the new "xip.bin" into "os.nb.payload"
Easy, ain't ??
- Beware !! "xip.bin" is device specific
- If a "xip.bin" containing the desired OS build is not available for the device, it can be ported from any "xip.bin" (from other HTC device), then it can be inserted into the native "os.nb.payload"
- MORE INFO on how to extract "xip.bin" from "os.nb.payload", how to port "xip.bin" and how to insert the new "xip.bin" into payload: go to page 11, post 106
To change ROM resolution:
Let's say you just put your hands on a newer SYS build, but it is QVGA (XPERIA is WVGA):
All SYS folders labeled "resh_240_resv_320" should be replaced with "resh_480_resv_800" WVGA resolution folders
That's it !!
- TIP: It doesn't matter if correct res folders are taken from a previous build
- Syntax Note: "resolution horizontal 240 x resolution vertical 320"... get it ??
To change ROM language:
Let's say you want to convert the ROM to spanish language:
Dump a Spanish OEM and add folders to OEM (at least the basic OEM ones)
Replace all "Lang_0409" (WWEnglish) folders in SYS with "Lang_0c0a" (spanish) folders
Edit ROM\XIP\ RGU: change MUI locale lang from 0409 to 0c0a
Piece of cake
- Beware !! ".VM" and "WinCENLS_WWE" folders are device & language specific
- TIP: When editing the RGU, search strings for "lang" or "0409" & you will know what to change
HOMEWORK: I WANNA SEE YOUR NEWER BUILDS XIP | SYS PORTS POSTED, STRAIGHT AND RUNNING GUYS !! ​
KEEP READING THE THREAD GUYS, you can find more useful info and tips from Xperianced senior cookers !!
.
gtrab said:
1- When cooking the ROM, all *.RGU files are compiled and gathered to create the main, barebone system registry
Click to expand...
Click to collapse
Actually, all the rgu files will be compiled into user.hv (anything under HKCU) and default.hv(anything other than HKCU) first. Therefore, it's the final place to check the registry outcome if you have lots of RGUs and the content are overlapped.
Good job and keep up the good work.
Thanks for pointing out jack
Your help and tips are greatly appreciated, as much as your ROM works
.
Very nice thanks! This can be very usefull for our n00b cookers! Maybe I will try it sometime!
Thanks alot. This is a very good information for newbies like me.. Going to start and cooking later
Wow, thanks A LOT for that!
This was really needed... off to cooking
Thanks a Lot !!! You're really a GOOD MAN !
Great, that's really great and gives us a view inside the things behind the ROM
well researched however you've missed a couple of things..
initflashes.dat is editable using notepad and is used to set up files that you'd rather not access from windows. it is used to copy files from windows to the folders they need to be in, such as program files.
Every file you put into the rom will be in windows folder.
it's best if you reduce the amount of provxmls whenever you can, as well as the DSM files (one reason to use Bepes latest kitchen as it doesn't leave them in the rom),
the less files in windows the better if you want more speed.
great tutorial. thanks again.
I have downloaded the OEM package and tried. Everything works.
I have question:
Do you know how to turn off the notification stuff on the title bar? Every time when I press the task manager icon, I either hit the battery or the speaker volume icon, therefore these notifications pops up. I want to make the battery and speaker icon non-touchable.
kluks said:
great tutorial. thanks again.
I have downloaded the OEM package and tried. Everything works.
I have question:
Do you know how to turn off the notification stuff on the title bar? Every time when I press the task manager icon, I either hit the battery or the speaker volume icon, therefore these notifications pops up. I want to make the battery and speaker icon non-touchable.
Click to expand...
Click to collapse
I know how to disable the battery icon click -> power app in WM6.5:
undo the "click battery opens power control panel" REG trick
(batery icon tap response comes disabled by default... waiting for the NEW POWERDRIVER surprise )
@FARDS:
MANY TAHNKS: GOOD POINT,
Will quote your text in front page
you can also use runcc (with mortscript) to trigger Sdautorun on your Sd card.
http://forum.xda-developers.com/showthread.php?p=3613983#post3613983
Runcc looks like it's going to be more important in future..
great tut so far.
XIP and SYS folders uploaded
SYS changes explained
more details added to Step 1 and 2
great work man! you are the man!
Awesome! Thank you so much! I really want a 6.5 ROM with rhodium dialer, rhodium youtube, and rhodium album. I have been wanting to cook a 6.5 ROM but could not get through it so far. Hopefully I will be able to accomplish this now. Looking forward to the rest of your guide and your kitchen. Perhaps I can apply the knowledge you have already given to jerplea's kitchen though.
The option.xml info was much needed. I was so confused as to why when I added packages to the OEM folder they would not show up in build OS.
Thanks again!
If you cook many diffrent roms (multilang etc):
Make provxml files with your regsettings/tweaks/hacks or w/e, and run them in customization..so that when you swap with newer builds with your packages, you wont have to go through the rgu/reg files to make the changes everytime..
you just bring the provxml to next kitchen...in that way you always are sure to have your fav settings with you
Ofcourse...they might need update from time to time..and the settings in a 6.1 rom might not work on a 6.5 rom... and vice versa
cheers

[TUT] ROM Modding Guide to Visual Kitchen

DO NOT POST IN THREAD YET PLEASE
Intro
This guide was originally developed by hilaireg. It can be found here. It will be modified by me and maintained by me and hopefully users of this forum also.
The sections are intended to be followed in sequence as the last section should provide you with a final product that can be flashed to your device.
Applying Original/Cooked ROM's
You probably won't be able to apply an Original or Cooked ROM to your device as your Cellular Carrier has most certainly locked your device. You'll need to unlock your device before venturing into the world of ROM installation. These activities are beyond the scope of this guide; you can however, go to this Wiki page to learn more.
Outro
Lastly, this guide only covers the ROM cooking process; changing your device Startup Splash Screen and Radio or flashing a HardSPL are beyond the scope of this guide; you can however, go to these Wiki and/or Forum pages to learn more.
This guide is intended to help you learn how to cook your own ROM's; it will walk you through the process of extracting the contents of an Official ROM, adjusting the Page Pool, changing the Data Cache Size, and Patching the ROM to remove Certificate verification. The guide does not cover the steps required to add/remove ROM packages or port an XIP from a different ROM version or device.
Disclaimer; I take no responsibility and will not be held liable for any problems you encounter with your device before and after following this guide … flashing a ROM is done at your own risk. If you spot mistakes or inaccuracies in the guide however, please let me know so that I may correct them.
[TUT] Modding Guide to Visual Kitchen...continued
Location, Location, Location
There are many fine Kitchens out there to use; Semi-Automated Kitchens (Raphael, Da_G), Automated Kitchens (Bepe), and Visual Kitchens (Ervius). This guide uses the Ervius Visual Kitchen to assist you in learning the basics of operating a Kitchen; which ultimately, allows you to produce your own ROM.
References
Ervius..: http://forum.xda-developers.com/showthread.php?t=469420
Da_G....: http://forum.xda-developers.com/showthread.php?t=471288
Raphael.: http://forum.xda-developers.com/show....php?p=2453788
Bepe....: http://forum.xda-developers.com/showthread.php?t=467488
Inspecting the Facility
It’s important to get acquainted with any new facility; last thing you want to find out is that you don’t know where to plug your utensils or appliances. Here’s a brief tour of the facilities to get you on your way.
EXT Folder
The External packages (EXT) folder is divided into Device Specific folders and a Shared folder. The Shared folder is typically used for files (packages) that can be installed on any device. Device Specific folders are typically used for files (packages) that should only be applied to a specific type of the device – for example, the Raphael device.
Each Device Specific folder is further divided into Operating System Build Version Specific folders and a Common folder. The Common folder is typically used for files (packages) that can be installed on any Operating System build version. Operating System Build Version Specific folders are typically used for files (packages) that should only be applied to a specific build (version) of Operating System – for example, build version 20764.
Operating System Build Version Specific folders, the Common folder, and the Shared folder can be further divided into sub-folders making file (package) management simpler – for example, .\Raphael\20764\Raphael_External_Packages.
Tip
The EXT Build drop-down box in the Visual Kitchen permits selection of different Operating System Build Version Specific folders.
OEM Folder
The OEM folder can contain multiple Device Specific folders. Device Specific folders are typically used for files (packages) that should only be applied to a specific type of the device – for example, the Raphael device.
Each Device Specific folder is further divided into Locale Specific folders and a Common folder. The Common folder is typically used for files (packages) that can be installed in any locale – not specific to a language. Locale Specific folders are typically used for files (packages) that should only be applied to a specific locale – for example, 0409 (English).
Tip
The Language drop-down box in the Visual Kitchen permits selection of different Locale Specific folders.
ROM Folder
The ROM folder is divided into Device Specific folders and a Shared folder. The Shared folder is typically used for kernel system files that are compatible amongst devices. Device Specific folders are typically used for kernel system files that should only be applied to a specific type of the device – for example, the Raphael device.
The Shared folder is further divided into Operating System Build Version Specific folders. Operating System Build Version Specific folders are typically used for kernel system files that should only be applied to a specific build (version) of Operating System – for example, build version 20764.
Each Device Specific folder is further divided into Operating System Build Version Specific folders. Operating System Build Version Specific folders are typically used for kernel system files that should only be applied to a specific build (version) of Operating System – for example, build version 20764.
Tip
The XIP Build drop-down box in the Visual Kitchen permits selection of different Operating System Build Version Specific folders.
Advanced OEMXipKernel and MSXipKernel operations can be performed using the XIPPORTEREX & ROM tool.
SYS Folder
The system (SYS) folder is divided into Operating System Build Version Specific folders. The Build Version Specific folders will often contain files (packages) specific to the device DPI (Dot Per Inch) and Horizontal/Vertical display size.
Each Operating System Build Version Specific folder is further divided into a ROM DPI, ROM Resolution, and Shared folder – providing a significant amount of flexibility during ROM compilation.
The ROM DPI, ROM Resolution, and Shared folders are further divided into Locale Specific folders and a Common folder. The Common folder is typically used for system files (packages) that can be installed in any locale – not specific to a language. Locale Specific folders are typically used for system files (packages) that should only be applied to a specific locale – for example, 0409 (English).
Tip
The ROM DPI and ROM Resolution drop-down boxes in the Visual Kitchen permits selection of different Operating System Build Version Specific resolution and bit depth.
Continued
Preparing Your Facility
Before you can begin to cook your own ROM, you need to equip your facility with some Kitchen utensils. Your Kitchen is going to require a good Unicode & UTF-8 text editor; I personally use ConTEXT & Notepad. Another handy utensil to have is a comparison utility for date/file/binary comparisons; I use WinDiff & BeyondCompare. Some other utensils that you're going to require are: Microsoft ActiveSync, .NET Framework 2.x/3.x. You will also need an archive extraction utensil; I use IZArc, WinRAR, and WinZIP. You’ll also need a good Hexadecimal calculator; I use Windows Calculator (Scientific Mode).
It's also a good idea to ensure that your Kitchen remains "pest" free; common pest control services include AVG, McAfee, and Symantec anti-Virus. You'll need to add the RaphaelWrapper tool to your list of anti-virus exclusions as it may be detected as a "Generic Dropper (Trojan)".
References
CustomRUU for Raphael
http://forum.xda-developers.com/showthread.php?t=410761
To assist you in your apprenticeship, I have included a link to the Generic Visual Kitchen that I used to prepare this guide - the kitchen also includes a .DOC and .PDF format of this guide. The procedures were tested against a GSM Raphael device. I can’t confirm that these procedures will work on CDMA device ROM’s. Additionally, other device ROM’s may not be compatible with this kitchen format.
Generic Visual Kitchen (17 MB)
http://rapidshare.com/files/24006232...n_31052009.rar
You’re going to need a RUU_SIGNED.NBH file; I used the following HTC Official Generic ROM – you’ll need to extract the contents of the .EXE and .RAR/.ZIP using an archive utensil.
[ROM] [WWE] Raphael HTC 5.05.405.1 Radio Signed (52.58.25.3 0,1.11.25.01)
http://rapidshare.com/files/19396608...25.01_Ship.rar
http://www.megaupload.com/?d=0F50UM5K
For the purpose of this guide, I will assume that you have added the C:\XDA\ folder, sub-folder, and files to your anti-virus exclusion list – at the very least RaphaelWrapper.exe – and that the contents of the Generic Visual Kitchen were extracted to the following folder.
C:\XDA\MY_VISUAL_KITCHEN
The guide is divided into the following sections:
Extracting the RUU_SIGNED.NBH Contents ....... 4
Reducing the .PAYLOAD File ................... 5
Extracting the XIP.BIN Contents .............. 6
Increasing the Data Cache .................... 7
Unlocking the Paging Pool .................... 8
Disabling Certificate Checking ............... 9
Reducing the Update Loader (ULDR) Partition .. 10
Changing the Unsigned CAB Policies ........... 11
Changing the Unsigned Themes Policies ........ 12
Changing the Remote API (RAPI) Policies ...... 13
Compiling the New RUU_SIGNED.NBH File ........ 14
Flashing the RUU_SIGNED.NBH File ............. 15
Advanced Topic: XIP Porting .................. 16
Sous-Chef's TIPs ............................. 20
I will attempt to provide an overview, the list of tools required, and the process to follow in each section. As you become more comfortable (and familiar) with the activities, you will find that you can consolidate (or skip) certain outlined steps. Incidentally, you'll probably want to keep these web links open in case you need to lookup some of the terms or concepts in the guide.
Acronyms
http://wiki.xda-developers.com/index...ename=Acronyms
Glossary
http://wiki.xda-developers.com/index...ename=Glossary
Development Resources for Windows Mobile
http://forum.xda-developers.com/showthread.php?t=445396
Extracting the RUU_SIGNED.NBH Contents
An .NBH is a signed group of modules or packages; they are typically comprised of .NB files. An .NBH can contain any combination of .NB files. An .NB file is a block of code that can be a Radio ROM, Operating System packages (XIP and IMGFS), Startup Splash Screen (or SPL).
The file we will be working with is the OS.NB file; it contains the ULDR, XIP, and IMGFS (OEM, SYS). To extract the contents of an .NBH file, we initiate the Ervius NBH/NB/PAYLOAD Dumper tool from within the Generic Visual Kitchen.
Upon completion, the following files will have been extracted: OS.nb, OS.nb.payload. Additionally, the Ervius NBH/NB/PAYLOAD Dumper tool creates a DUMP folder that contains all the files required.
Tools Required:
The following Ervius Visual Kitchen tool will be used for the RUU_SIGNED.NBH extraction activities.
Dump NBH/NB/PAYLOAD
Procedure
The following procedure initiates the ROM extraction activity via the Ervius NBH/NB/PAYLOAD Dumper tool built into the Generic Visual Kitchen. The extraction process can take a significant amount of time to complete.
Copy the RUU_SIGNED.NBH file to the C:\XDA\My_Visual_Kitchen\BaseROM\ folder.
Navigate to the C:\XDA\My_Visual_Kitchen\ folder.
Launch ErviusKitchen.exe.
At the multiple warning messages, click OK.
Warnings that may appear include:
Folder Not Found
Could Not Find A Part Of The Path
You Need To Specify … First
Click the Dump NBH/NB/PAYLOAD button.
Navigate to the C:\XDA\MY_VISUAL_KITCHEN\BaseROM\ folder.
Select the RUU_signed.nbh file and then click Open.
At the All Done... Nbh/nb/payload Dumped and ''Kitchen'' created Successfull!!! message, close the Ervius Visual Kitchen application.
Navigate to the C:\XDA\MY_VISUAL_KITCHEN\DUMP\ folder.
Move the sub-folders (and content) to the C:\XDA\MY_VISUAL_KITCHEN\ folder.
At the Confirm Folder Replace message, click Yes To All.
At the Confirm File Move message, click Yes To All.
Tip
The C:\XDA\MY_VISUAL_KITCHEN\BaseROM\Dump\ folder should be empty at this point – and can be removed.
Reducing the .PAYLOAD File
At this point, the Ervius NBH/NB/PAYLOAD Dumper tool has removed the contents of the IMGFS (OEM, SYS) from the .PAYLOAD file in preparation for changes to the ULDR and XIP. Removing the IMGFS (OEM, SYS) contents from the .PAYLOAD file reduces the size of the .PAYLOAD file making it easier to work with.
The Ervius NBH/NB/PAYLOAD Dumper tool has placed a copy of the reduced .PAYLOAD file in the C:\XDA\My_Visual_Kitchen\ROM\Raphael\ folder.
Tip
Advanced .PAYLOAD file operations can be performed using the XIPPORTEREX & ROM tool.
References
[TUT] Manual Full XIP Porting (& MANY MORE TUTORIALS)
http://forum.xda-developers.com/showthread.php?t=438676
Extracting the XIP.BIN Contents
The Execute-in-place (XIP) region is an area where an application can execute code directly from ROM rather than loading it from RAM. It is possible to use the XIP.BIN contents from a newer version of a ROM from a different device or a newer operating system. This is typically done by chefs who are looking for the most recent versions of system files from a specific device or version of an operating system – you'll eventually do the same.
At this point, the Ervius NBH/NB/PAYLOAD Dumper tool has extracted the contents of the XIP.BIN and placed a copy of the file in the C:\XDA\My_Visual_Kitchen\ROM\Raphael\ folder.
For the purposes of this guide, we will be using the same version of the system files.
Tip
Advanced XIP.BIN file operations can be performed using the XIPPORTEREX & ROM tool.
You can change the ROM Date/Version using the XIPPORTEREX & ROM tool.
References
[TUT] Manual Full XIP Porting (& MANY MORE TUTORIALS)
http://forum.xda-developers.com/showthread.php?t=438676
XIP Porting Guide
http://forum.xda-developers.com/showthread.php?t=379598
Increasing the Data Cache
File caching improves performance and also improves power management; when an application accesses physical storage, the storage device uses much more power. The less often physical storage is accessed, the longer storage devices spend in a low-power state.
By increasing the DataCacheSize registry value, you effectively improve the performance of applications that are file system intensive such as database and mapping applications – which results in lower physical storage access requirements. Drastically increasing the DataCacheSize however, may have adverse effects and slow the device down as a result of longer auto-compaction processing.
For the purposes of this guide, we are going to increase the current DataCacheSize value from 4MB to 8MB.
Tools Required
The following tools are required to adjust the DataCacheSize value.
Unicode Text Editor
Hexadecimal Calculator
Procedure
The following procedure will change the current DataCacheSize value of 4MB to 8MB.
Navigate to the C:\XDA\MY_VISUAL_KITCHEN\ROM\Raphael\20764\OEMXipK ernel\ folder.
Launch a text editor and open the BOOT.RGU file.
Search for the following registry key entry:
[HKEY_LOCAL_MACHINE\System\StorageManager\Profiles\ FLASHDRV\FATFS]
Locate the following registry value underneath the key:
"DataCacheSize"=dword:00000800 ;2048 sectors(2048*2048=4MB)
Change the registry value to the following:
"DataCacheSize"=dword:00001000 ;4096 sectors(4096*2048=8MB)
Save the BOOT.RGU file.
Exit the text editor.
Tip
Make a backup copy of the BOOT.RGU file before editing; delete the backup file when done.
Disabling Certificate Checking
During the startup process of your device, the operating system verifies that each system file against an internal certificate store to ensure that each file is signed with a trusted certificate; if the system file is not signed, the file is ignored.
To allow execution of non-signed system files, we need to disable the internal certificate store verification. Once disabled, the operating system will trust all code installed regardless of its signature. This provides more control over the code that gets installed on the device – you no longer need to load and manually sign additional certificates such as those from the sdkcerts.cab into the device root certificate store.
For the purposes of this guide, we are going to apply a change to the kernel binary file which will disable the internal certificate store verification.
Tools Required
The following tools are required to disable the internal certificate store verification.
Unicode Text Editor
Procedure
The following procedure will change the kitchen_build_rom.bat disable the internal certificate store verification.
Launch a text editor.
Navigate to the C:\XDA\MY_VISUAL_KITCHEN\Tools\ folder and open the kitchen_build_rom.bat file.
In the Find (Search) box, type:
implantxip
Add the following implantxip command line option:
-NoCert
Select the Save option in your text editor.
Select the Exit option in your text editor.
Tip
Spaces are usually required between command line options; the command line option should only appear once.
You can add output logging to file by adding the following command instructions to the end of a command line:
| ..\tools\mtee /+ ..\%LOG_FILE%
Newer versions of Ervius Visual Kitchen provide built-in logging and an Option button to disable the Certificate Store verification.
Unlocking the Paging Pool
The Paging Pool serves as a limit on the amount of memory that can be consumed by pageable data. It includes an algorithm for choosing the order in which to remove pageable data from memory. Pool behaviour is typically determined by the OEM – Microsoft sets a default value for the paging pool, but the OEM can change that value. Applications do not have the ability to set the behaviour for their own executables or memory-mapped files.
For the purposes of this guide, we are going to apply a change to the kitchen_build_rom.bat to set the Paging Pool size (initially set to 6MB) to a new size of 8MB.
Tools Required
The following tools are required for the Paging Pool unlock activities.
Unicode Text Editor
Procedure
The following procedure will change the kitchen_build_rom.bat to set the Paging Pool size during ROM compilation.
Launch a text editor.
Navigate to the C:\XDA\MY_VISUAL_KITCHEN\Tools\ folder and open the kitchen_build_rom.bat file.
In the Find (Search) box, type:
implantxip
Add the following implantxip command line option:
-PP 8
Select the Save option in your text editor.
Select the Exit option in your text editor.
Tip
Spaces are usually required between command line options; the command line option should only appear once.
You can add output logging to file by adding the following command instructions to the end of a command line:
| ..\tools\mtee /+ ..\%LOG_FILE%
Newer versions of Ervius Visual Kitchen provide built-in logging and an Option button to set the Paging Pool size.
Reducing the Update Loader (ULDR) Partition
The boot loader can accommodate multiple execute-in-place (XIP) regions where individual modules can be updated after the initial operating system image file has been written to the device – the ULDR is an example of this use. The Update Loader (ULDR) provides Flash-Over-The-Air (FOTA) capabilities permitting your carrier to issue changes such as Hotfixes over the cellular network – generally, most carriers avoid this practice.
As this is generally undesirable in a cooked ROM, since we are making modifications that a carrier Hotfix might roll back, we will reduce the partition. This will cause the device to report insufficient ULDR space to the carrier FOTA request … and the freed up space becomes available for our uses.
For the purposes of this guide, we are going to apply a change to the kitchen_build_rom.bat to reduce the ULDR – effectively providing approximately 3 MB of space.
Tools Required
The following tools are required to disable the internal certificate store verification.
Unicode Text Editor
Procedure
The following procedure will change the kitchen_build_rom.bat disable the internal certificate store verification.
Launch a text editor.
Navigate to the C:\XDA\MY_VISUAL_KITCHEN\Tools\ folder and open the kitchen_build_rom.bat file.
In the Find (Search) box, type:
implantxip
Add the following implantxip command line option:
-uldr
Select the Save option in your text editor.
Select the Exit option in your text editor.
Tip
Spaces are usually required between command line options; the command line option should only appear once.
You can add output logging to file by adding the following command instructions to the end of a command line:
| ..\tools\mtee /+ ..\%LOG_FILE%
Newer versions of Ervius Visual Kitchen provide built-in logging and an Option button to enable or disable ULDR reduction.
Guide is not complete
The guide is not complete yet so PLEASE DO NOT POST IN THE THREAD until I complete it.
Thanks!
This is a work in progress and will be done some time today. Please do not post in thread.
At0mAng said:
Preparing Your Facility
………………
Generic Visual Kitchen (17 MB)
http://rapidshare.com/files/24006232...n_31052009.rar
…………
Click to expand...
Click to collapse
Hi At0mAng,thanks you tutorial. This link was deaded, can you repost or fixed it? thanks again.
Bumped as id really like to see the rest of this too =D
Can you please re-up the files Atom?
Wow Atom, fantastic work, must have cost you too much time to write all that, and it's well strucutred too. Thanks and keep up the good work

Categories

Resources