Related
Hello everyone, put my old kitchen, a little 'restored.
IMPORTANT: To build a good rom, you 1st have to dump an original rom for your preferred device, to have all files needed to build it after (header.xml, splash.xml ecc...)
List of Features:
Check rom version for exchange for new payloads (tested on hd2 rom 3.14 and it worked!), some minor adjustments, the editor, RGU, app.ref etc ..., now always starts as an administrator.
to test it, dump an original rom and then have fun customizing!
New style, new tricks at runtime, new tools for dumping and building !!!!! (Libnb.dll!)
Fixed bugs on inclusion radio.nb and splash.nb !!!!!
Import into .\ext, old-style packages, OEMpack, EXTPack (and also from Cab files
in the context menu is also remodule package (from files to module!) and re-file package (from modules to files!); other bugs solved!
Rapi connection problem solved with device in activesync and remove ring tones, images by default!:
Feature on delete files (ringtones, images (wallpapers) and other images (avatars) from a folder in oem \ langdevice \ .....)
Features to all feedback packages, from kitchen and easily editable text file (packages_usefull_infos.txt) in the root of the kitchen.
Can also import "rebuild dumped roms", from DFT dumped, OSkitchen kitchens and RAW Dumped roms!
Support to run the cabs charged by hands at 1st boot after flash!
Save & restore all tweaks in all the tabs when save/load a rom!
Added info exchange Rom language and Rom on the first use of header.xml libnb.dll nbh file to create!
Added new feature to force the run provxmls in Rom
Now when a dump .NBH, the new build is imported, in your EVK in use!
.\TOOLS folder
Inside the folder .\tools, you will find a new folder: registry_tweaks. The .\registry_tweaks folder includes some sample files. Replace and/or add .REG and .PROVXML files, name the files properly and the .REG files will be added as registry entries, the .PROVXML will be renamed as ****. ZZZZ_ provxml, as files are added. provxml, precisely in the rom and run when you first start to customize the rom as you like
The kitche includes two context menus for adding new .REG or .PROVXML files, edit them or delete if unused one!
Also includes new versions of DSM_editor and implantxip (no fake virus info about, someone in previous version, not me, inserted automatic "admin execution" with a kind of utility, into my implantxip.exe!, and maybe that "trick", was detect as fake virus, now, with my original updated version of implantxip.exe, my kaspersky doesn't find anything!!!!!)
Note
DSM_editor and implantxip (no fake virus info about, someone in previous version, not me, inserted automatic "admin execution" with a kind of utility, into my implnatxip.exe!, and maybe that "trick", was detect as fake virus, now, with my original updated version of implantxip.exe, my kaspersky doesn't find anything!!!!!)
System Requirements.
.NET FRAMEWORK 4.0 to execute new version of visualkitchen and new tools inside (dsm_editor and implantxip!)
Version History
12.2.9: compatible with x64 system machines, was libnb.dll,not was dll, was my exe, only I had to force x86 execution, also on x64 machines, that version was only for x86 machine, now at runtime, it is recreated, if is x64, compatible version is putted into .\tools folder, else a x86 compatible version will be copyed into .\tools folder!!!
12.3.7: package creator added as optiona choice when wanna import a cab into packages!
12.3.7: Added option to turn tricks "reg" to be placed in rom that will be in a good provxml 'forced to be the last to be executed, overriding any settings from other taxes proxml !!!!!
12.3.7: when forced execution provxml, reg cab, the sequence is .PROVXML in Rom, .PROVXML uploaded by you, proxml derived from the reg trick and finally the cabs
12.3.7: added possibility to add and execute a .tsk file into ROM!!!
12.3.9: bug solved on provxml creation when found "delete regkey" or "delete regvalues"
12.4.3: bug solved on save and load roms, new icon for exe!
12.4.3: "reloaded" update pagepool options on new implantxip.exe
12.4.4: solved problems with implantxip value as default
12.4.5: inserted possibility to load, edit and delete mortscript scripts into rom to run (config.txt will be populated with selected scripts) at 1st boot!
12.4.8: when you choice a bmp to became a splash screen, the kitchen automatically check if the format and size is good, if not, automatically modifyes the image, makeing before a backup of it, and adjusts it according to the file "splash.xml"
(I suggest to redump an original rom for your device, becouse there are a lot of libnb.dll, and I've changed in times, so maybe splash.xml, could be different in format!)
12.5.0: updated package_creator, see and edit into \tools folder user_folders.txt to add your own modded folders into start menu for lnk files extracted by cab files; now, all manila-language files will be stored automatically into relative 04XX subfolders, so only real lang-manila files needed will be stored into rom, and before build, cfc_gui.exe will be executed to compress and patch manila, if you want, only have to click on "tools<>patch manila", on cfc_gui.....
see U!
12.5.2: new built of implantxip, and some little little improvements on erviuskitchen.exe!
12.5.3: Added Visual advices for packages that have to be recmode or reversemode!
12.5.6: re-file or re-module packages that you insert into comments like "remodule, or re-file! (only id relative poackage is enabled while build rom!)
solved little bug on packages colouring (same color on "false/true" packages (enabled/disabled!))
12.5.8: solved some trubbles with LZX Compression!
12.6.0: more compatibility with new xipporterex to change rom version on nk.exe into 3.14 TMOUS ROMS! and now recontruct better alla lang files/folders for manila!!!!
12.6.2: Full compatibility with all Language codecs to recontruct well all lang files/folders for manila, and also all MUIS files will be stored in relative language SubFolders!!!
12.6.3: only exe, now remove also all *.cpr files with resolution different thankn used by your device, and store all of them into :\moved\cpr_moved\namepackage\resolution\...
Download Link
http://www.4shared.com/file/0Nv3ETFr/VisualKitchen_12_5_8.html
Updated only exe! (12.6.3_rev2)
http://www.4shared.com/file/9yFFf6YA/erviuskitchen_12_6_3_only_exe_.html
Quick Thread Link
Discussion on Latest kitchen start here: http://forum.xda-developers.com/showpost.php?p=9500214&postcount=2484
Reserved for future expansion
OLD visual multilang/multidevice/multibuild kitchen for last bepe rom-tools!! V1.8.2
Hi, this is a visual multilang kitchen based on last bepe's tools to build a rom.
Last Version: 1.8.1 aka 10.8.1 (1.8.1)
Date: 28.07.2009
Download Links: 1.8.1, 1.8.2
new_visualkitchen_v_1_8_1_only_exe_+_Tools_folder.rar 7MB
erviuskitchen_1_8_2_fixed.rar 523 KB
Latest version of Ervius Visual Kitchen tools. New visualkitchen with all dsm/rgu recreations/updater to have complete old_style roms ready to use .pkg updater!!!!! The KITCHEN has been updated to include logging; (see build_log.txt into root of kitchen after built a rom!!!)
Note: Also attached to this post as <filename>.RAR.ZIP. After download, remove (.ZIP) before UnRAR'ing.
Changes In This Release:
XIPPORTEREX:
Added compatibility with new 2.09 kn.exe to r/w correctly date/version on ROM!
Added capability to find version/release_date on new wm 6.5 nk.exe!!!
DUMP Process:
Now if dump a stocked rom, in EXT packages it leave relative dsm/rgu, create a global packages.ini (with all dsms infos inside!) and for each EXT Package, create "package.ini" file, with all infos about relative dsm,
All shadows, depepndencies, certificate needed in .\tools folder, it populate "dependencies" and "certificates" folder with all dsms and certs files found during dump process, used to insert/edit all dsms into rom with dsm_editor
OTHER button:
Provides for selection of ULDR reduction, PagePool sizing, disable Certificate
Verification, etc. Settings are stored in: ERVIUSKITCHEN.INI.
Editor:
Addresses issues when using "editor".
Compilation:
Solved bug on 6.5 reak aku roms
Addresses issues when searching structures and duplicate files during compilation.
Added possibility to change max number of modules in an hybrid ROM (nk.exe from 6.1 kernel and XIP From 6.5 kernel) the value is saved on that rom configuration, so every rom loaded has his max-modules value setted
Extraction:
Addresses issues when extracting contents of some device .NBH/.NB files.
Compatibility:
Addresses unsupported Language code (ex: 040C).
Added compatibility with old style rom (IMGFS & XIP).
All modules can be reallocked.
DSM processing; all dsm and rgu are updated/created -only with old_style roms creation! (required for cab.pkg updater support.)
In old style ROM mode; all is executed automatically, XIP porting is automated:***
- Correct realtive device's .VM must be copied to .\OEM\<devicename>\.VM
- Correct XIP.BIN must be copied to .\ROM\SHARED\<buildnum>\
Post-Download Instructions:
Extract the contents of kitchen archive to the root of your hard drive (ex: C:\XDA) to avoid path length errors.
Backup existing kitchen files. Files/Folders to backup are:
- Files in root of kitchen (ex: C:\XDA\My_Visual_Kitchen)
- .\TOOLS folder
Remove (delete) ERVIUSPACKAGES from TOOLS folder (ex: C:\XDA\My_Visual_Kitchen\TOOLS\ERVIUSPACKAGES).
Copy the contents of the extracted archive to the kitchen (ex: C:\XDA\My_Visual_Kitchen\) folder.
----------------------------------------------------------------------------------------------------------------------------------
Implantxip.exe (Pagepool Patcher/changer!)
Download Link: implantxip.rar 166 KB
implanxip can works with:
all kind of payload file, and more:
if a payload has ULDR removed (ULDR part not present!), it can work on it and reallign well some bytes into MBR
you can also remove completelly the uldr section (you could save some more space into payload in this way! (be attenction: in some payloads this operation causes non-booting roms!!! make a backkup of original
payload before use: "-uldr tryremove parameter!!!)
for help about: in prompt command write: implantxip /h )
Note: Also attached to this post as <filename>.ZIP.
----------------------------------------------------------------------------------------------------------------------------------
EXT Packages Rebuilder
To build EXT_Packages from old style ones; use the tool at your own risk!!! Fixed lost modules into new package created, now all modules are into .\files subfolder after ext package is built.
Download Links:
EXT_PAckages_rebuilder+Structurer_all_lang_enabled_v3.zip 8 KB
EXT_PAckages_rebuilder_modules_fixed.rar 9KB
Note: Also attached to this post as <filename>.ZIP.
Excellent work as always ervius.
Grazie mille.
^.^
That might come in handy for some ppl.
For my part, I'm used to command line as my primary WS is linux based. As a matter of fact, i prefer it.
@Ervius: Do you have any experience in coding for unix/linux?
At some point, pof coded a htc-flasher kitchen, but it was mostly wrappers for the windows programs.
Most of the tools we use for ROM building have their source code available, so...
Anyways, I'm off.
A.
GREAT!!
I'm testing it in my kitchen just today. I'm looks fantastic. Thanks!!.
If now you can integrate your XIP porting tool then.....
Regards,
elparra72 said:
I'm testing it in my kitchen just today. I'm looks fantastic. Thanks!!.
If now you can integrate your XIP porting tool then.....
Regards,
Click to expand...
Click to collapse
this is a alpha version, and stucks on platformrebuilder.exe execution, , but when I have some time more maybe insert all inside, xipporterex and other tools of mine!
can you post it on rapidshare please, megaupload is a menace. thanks.
In any case this is a great work!!.
I've been checking folders structure and adapte it to Spanish (or another language) is really easy. I'm preparing a new ROM, but as soon as I post it in a Spanish site, I'm going to 'play' with this application and l'll inform you about troubles. Thanks !!
On the other hand (I know this is not the best post to speak about), Your active sync killer is not working fine in 2.xx ROMs. Are you preparing a new one? Do you have a solution?. Thank a lot in advance.
Kind regards!!!
El Parra72
elparra72 said:
In any case this is a great work!!.
I've been checking folders structure and adapte it to Spanish (or another language) is really easy. I'm preparing a new ROM, but as soon as I post it in a Spanish site, I'm going to 'play' with this application and l'll inform you about troubles. Thanks !!
On the other hand (I know this is not the best post to speak about), Your active sync killer is not working fine in 2.xx ROMs. Are you preparing a new one? Do you have a solution?. Thank a lot in advance.
Kind regards!!!
El Parra72
Click to expand...
Click to collapse
you can adapt, but add other languages, near 0409\ and 0410 folders you can add 04xx\ or o8xx\ all you want, the kitchen at start recognizes how many into, and show all into combobox, you only have to choice in witch language want build the rom
for activesync killer, what you refer to, mine or the original by eliasweb???
bye!
I've detected this trouble in both. I've test them in several ROMS based on 'oficial' v.2.xx. I'm going to look for your post and follow this trouble there. Thanks.
..................
this looks better and better. I dearly hope that it will come with some kind of manual.. anything... just to know what to press and which button does what...
Thanks!
mjaxa said:
this looks better and better. I dearly hope that it will come with some kind of manual.. anything... just to know what to press and which button does what...
Thanks!
Click to expand...
Click to collapse
visual kitchen version beta1 released at 1st post, and see all ROM\ structures.....
Hi ervius, thanks for your tool.
I was trying beta1.
I have a couple of questions:
i've tried to import a package (generated with package creator) , I browse to the folder containing it, but after the right-click-> import package, it doesn't appear in the list of the applications.
I see it has been copied to the EXT folder but nothing more.
Also importing a package resets all the choices I made on what packages to include/exclude
If you need more details just ask
Thanks
A.
very nice, I will test this this week, and see if i notice anything. once again thank you
andreapappy said:
Hi ervius, thanks for your tool.
I was trying beta1.
I have a couple of questions:
i've tried to import a package (generated with package creator) , I browse to the folder containing it, but after the right-click-> import package, it doesn't appear in the list of the applications.
I see it has been copied to the EXT folder but nothing more.
Also importing a package resets all the choices I made on what packages to include/exclude
If you need more details just ask
Thanks
A.
Click to expand...
Click to collapse
well, well, so, some bugs are detected...
continue ti test it
Hi
I dump a rom (use:1s streps of Surface Kitchen v1.01), now i have "sys", "oem", and "rom" folders. Were i put this folders in your kitchen?
first steps!!!
ruipgouveia said:
Hi
I dump a rom (use:1s streps of Surface Kitchen v1.01), now i have "sys", "oem", and "rom" folders. Were i put this folders in your kitchen?
first steps!!!
Click to expand...
Click to collapse
Check the screenshots. You'll see the directory structure there.
ruipgouveia said:
Hi
I dump a rom (use:1s streps of Surface Kitchen v1.01), now i have "sys", "oem", and "rom" folders. Were i put this folders in your kitchen?
first steps!!!
Click to expand...
Click to collapse
use bepe's packagebuilder.exe on a dumped rom, after use my EXT_PAckages_rebuilder+Structures_rebuilder (attached here!) on dumped rom, finally you'll have all rom structures ready to be koocked by my visual kitchen!!!
bye!!!
P.S.: at first post "beta 2" is ready (some bugs solved!)
I finally found a way to overcome space issue that cause BuildIMGFS throw error when you put too many files in the ROM using captaintrip's kitchen
The repack used imgfsfromdump instead of buildimgfs which avoid the size issue and in additon can reduce the final size of flash.dio
The usage are the same with captaintrip's kitchen, I only rename the bat to "iPAQ61x_91x flex kitchen" since this works for both 61x and 91x
You will need to rename flash.dio to TEMPLATE.ROM and put it under ROM folder, when you run iPAQ61x_91x flex kitchen.bat it will also prompt you,follow instruction
keep in mind if you use flex kitchen to build your rom won't be able to extract it properly, anyone want to edit your room will need your kitchen instead. If you don't have buildimgfs issue you may want to stick with the old way of building rom
use iPAQ614c Rom Kitchen.bat if you want to build your rom in old way
Updated July 7th: attached new cecompr_nt.dll that fixed memory leak, necessary for LZX compression, replace the one under TOOLS folder
Download (v0.3):
mediafire
Updated: Dec 9th ,09
v4 Beta:
-improve ability to decompose ROM, however the packages in SYS and OEM portion is usually mix up so you have to manually move them to correct folder after extraction
Download:
21501 kitchen
21215 kitchen
Rom folder for w version for 21215 (Rename it to ROM if you want to build w version)
21232 kitchen
21234 kitchen
21725 kitchen - removed due to too many issue, use 21728 kitchen instead
21728 WWE Kitchen
21728 ITA Kitchen
21728 GER Kitchen
21728 FRA Kitchen
21812 WWE Kitchen
21815 WWE Kitchen
23001 WWE Kitchen
23001 CHT Kitchen
23004 WWE Kitchen
21921 WWE Kitchen
23009 Hybrid WWE Kitchen
23016 18.1 WWE Kitchen
21854 WWE Kitchen
23047 WWE Kitchen
23052 WWE Kitchen
21867 WWE Manila 24M2 Kitchen
21869 WWE Kitchen
21869 WWE Manila 25M Kitchen
23088 WWE Kitchen
28002 WWE Kitchen
28011 WWE Kitchen Beta 29
28011 WWE Beta 29_2 Kitchen - kitchen of Beta 29.2
note: you can replace WinCENLS_Lang_0404 with WinNLS_WWE (from other rom kitchen) to save ROM space
-arcsoft streaming player & codec can be removed if you don't need them
23515 xip (use with 23518 SYS)
23518 CHT Kitchen (LZX)
23518 WWE kitchen
21888 WWE Kitchen
23529 WWE Kitchen
28230 WWE Kitchen
23544 WWE Kitchen
23563 WWE Kitchen
91x 28011 WWE Kitchen -not tested since i don't own 91x device so use as your own risk, use dnw in the worst case
91x 23518(23515)/21888 untested xip
Official WM 6.5 Tookit/SDK/Emulator: here
FCC Information for 610c
FCC information for 910c
----------------------------------
Structure Overview
XIP is the kernel, this is also what you see those 2xxxx build mean, the whole term is called "Execute in Place", i.e execute files in rom directly without copying to ram, this is for boot process, anything wrong mean you will stuck in clean boot
OEM is for device/manufacturer specific program/drivers
SYS is for Windows Mobile system files
A package is a folder with at least a dsm file,all other files are extra
-rgu file is just reg file which you can use notepad to edit
-default all files goto Windows directory (obviously exclude rgu file)
-initflashfiles.dat/txt is a text file with instruction to move files to different directory
Files vs Modules
Modules are folder with ".dll" in their names. Inside the folder there is imageinfo.bin, S00X where x is a digit. When they are cooked into ROM they will become dll with proper relocation (done by WMReloc/G'Reloc). Supposedly being modules would make them load faster(because no need to relocate at runtime?) and some dlls must be in modules or else some program will not work properly. However there are also cases that modules must be converted to files.
Technically you can put everything in SYS since at the end buildOS will merge everything together but it is easier to manage if you follow the OEM/SYS structure
Common Issues TroubleShooting
hang on 1st boot screen (HP Logo)
-XIP porting issue, .rom , .vm file not correct .etc
hang on 2nd boot screen (WM splash screen)
-module did not relocate properly (did you run WMReloc or GReloc?)
-XIP (lower possibility, i don't think it affect..just in case you should keep in mind)
hang/crash on today screen
-software conflict/missing .etc , check your SYS/OEM files
Endless HP update/customization engine
-happens because of different model uses different customization engine, using one from other model/region will cause it to rerun every boot time, the only solution seem to prevent it to run from start by removing it from initflashfiles.dat. Convert all the fix into packages and integrate to the rom instead
installed SIP(virtual keyboard) cannot be switched
-use recmod (under tools folder) to convert all modules into files in browsingie folder
cannot compose new sms/email .etc
-replace redist_lang_[lang_code] folder with one that worked before
wifi cannot turn off after boot
-set HKLM/Comm/SDIO86861/Wireless to 1
XIP
To insert ported xip, run this command: osnbtool -c TEMPLATE.ROM 1 xip_out.bin
where xip_out.bin is your new XIP file
xip porting tutorial can be found all over the place in xda/ppcgeek .etc
Also make sure in ROM folder, the boot.rgu is from your device xip (the kitchen I provided only contains 61x xip so to cook for 91x you need to put 91x boot.rgu instead)
Phone Radio
rilgsm.dll is needed but usually it is in OEM folder
PagePool
Overview: xda wiki
edit using pagepool_by_wlodixon under flash folder, copy your flash.dio and run the appropriate cmd
The only exception is if the rom set pagepool to 0 (Dynamic PagePool), it won't able to recognize and you have to hex edit
hex edit the xip.bin at 0x000A75E4, change all 4 bytes to your desired value (all 0 for dynamic pagepool)
Convert cab to OEM
get package creator here
use it to open cab, then wince cab analyzer opened, choose extract folder icon, after close wince cab analyzer, you will be present with shortcut screen, do you things and hit done, finally hit complete package unless you want to change some option
Create simple cab for file/reg changes
get QuickCab
Xt9
corresponding lang files in OEMApp/OEMLang_#### where #### is the 4 digits lang ID
-[2letter langs code]hpd.ldb
-[2letter langs code]lbUN_xt9s/lsUn/.etc].kdb
-et9.SQR.[Language].bmp [Optional, some language like Polish/Portuguese just point to english bmp in registry]
-[a bunch of number/digit known as GUID].rgu (if you open it up you will find there is registry on xt9)
also under OEM\OEM_Lang_[Lang number]
-initflashfiles.dat (actually you can use notepad to open it and seacrh for ldb/kbd/bmp to see which lang files )
cooking different language
-you will need your language OEM folders from original HP rom
-your language wince.nls
-replace all language mui (e.g 0409=English) with your language mui
-some languages may added extra folders, be sure to copy them into SYS too
-sometime the hp customization/update will end up endless run in every start, in this case you will need to prevent it from running and integrate all updates into the ROM
OptionXML Addon
I have written this small .Net 3.5 App to generate option.xml for SYS packages which will allow you to select the common package and different language more easily without moving folders all the time, just unzip the zip to kitchen which will overwrite the existing batch file and put the exe under TOOLS folder.
To select/UnSelect a category in BuildOS, you can click on the Category group (e.g click on 0409 will select all 0409 packages in SYS), then click on one of the packages will select/unselect the whole group
Reserved for extra space in case
-------------Step by Step guide for xip porting-----------------------
Make sure you read this tutorial first
1. copy(either get it from kitchen or dump it using osnbtool) the existing xip_out.bin and rename it to xip.bin, open xipport, click dump xip.bin and you will get a OUT folder
2. choose write map then make packages , now rename this out folder to some other name
3. dump the new xip(from other device) using osnbtool, rename it to xip.bin & do the same as step 2 with xipport
4. now copy MSXIPKernel & MSXIPKernelLTK under Modules and Files folders from OUT folder(from step3) and overwrite to corresponding 61x OUT folder(from step1)
4.5 as said in the xda tutorial, remove hd.dll, osaxst0.dll folders and their corresponding text files under modules to avoid physical address overlap
5. use xipport to undo and then realloc and write maps. Then you check map files to make sure there is no !!!(memory address overlap) I recommend using XIP address tools to check for overlap, sometime you will get error when you realloc (key already exist .etc), use xip address tool and set work folder to OUT then you will see error on first dll addr which you have to fix all highlighted red cell(overlapped address). Note that to fix first dll addr address you have to highlight the cell, enter the new start address on the V address cell in bottom, click modify, then use mouse to highlight the 1A cell above, and change the D address cell to the same as V then click modify button(on the right of V cell). You should see the change in table then. For virtual base overlap you only need to modify V cell only
Note: first dll addr overlap will result error when you click realloc in xipport.
The goal is have no overlap as shown in MAP.txt. When there is no more overlap, use xipport to build xip_out.bin and then insert the xip into the dio file using osnbtool
Commands:
extract xip: osnbtool -d flash.dio 1 xip.bin
insert xip: osnbtool -c flash.dio 1 xip.bin
also make sure your ROM\boot.rgu is from your device xip
-----------------------------------
IPAQ 91x boot keys:
Clean bOOt - Voice Commander + OK + Reset
Download Image - Volume Down + OK + Reset
Calc Checksum - Volume Up + OK + Reset - disconnected, SD card out
RUU - Volume Up + OK + Reset - UsbConnected, SDcard out
SDloader - Volume Up + OK + Reset - USB disconnected,SDcard in SDloader
Modem_CAL - Voice COmmander + Volume Up + Reset
Diagnostics - Voice Commander + Volume Down + Reset
-------------------------------------
LZX Compression:
The default compression algorithm for ROM is XPR, if you must include lots of files that causes your resulting rom >80mb under XPR(81920kb - ROM Size limit for 61x, bigger than this the device won't boot), you need to use LZX compression. It reduces rom size by ~13% but with ~1-3% performance hit(from other post I read, I never verify the performance hit).
To use LZX compression, you need to replace the cecompr.dll folder in XIP Modules with the one attached in this post. Re-port the xip (realloc + write map + build xip_out.bin) and then use osnbtool to inject the xip inot TEMPLATE.ROM.
Then hex edit the imgfs_raw_data.bin in the rom kitchen, replace the first string "XPR" without quote you found with "LZX" without quote.
Make sure you have replace the cecompr_nt.dll under tools folder of the kitchen with the one I attached in 1st post to avoid memory leak
Now just build normally, you will notice the time to inject file will take much longer because of the compression
Is there any ROM kitchen tools for hp iPAQ h6365 WM2003?
Wow great kitchen. Thanks for sharing.
here, here! keyx you da man
One thing though - when you say this:
Phone Radio
if you are using SYS from other device, make sure you replace ril.dll and phone.dll from a working rom in phoneRedist or you will get a phone radio not installed which disable phone function
rilgsm.dll is also needed but usually it is in OEM folder
Click to expand...
Click to collapse
I'm not sure that is actually correct. I've been using ril.dll and phone.dll from all kinds of donor SYS; these are OS files that should be generic. It is only rilgsm.dll that is manufacturer-specific.
you are right, I corrected the post
I think I do anything wrong...
If I extract your ROM(WM 6.5 Beta 3.81) and put it together to a ROM again, it is 10MB smaller.....After extracting this, its 1MB smaller...
Question is, why?
Greets
chucknican
actually for unknown reason if you use my kitchen to build rom, you won't able to extract it properly...i am not sure why. But currently it is the only solution for me to overcome buildimgfs error
so the solution is that I use captaintrip's kitchen to extract and yours to build it together again?
I can't get this kitchen to build my ROM. The after WMReloc does the modules rebase, I get the following feedback...
Code:
Injecting files ...
Input file imgfs_raw_data.bin cannot be opened. Exiting.
In fact, when I watch the temp folder during this process, I see no imgfs_raw_data.bin at all. In your new script, I can't see where this file would come from anyway.
Help?
chucknican said:
so the solution is that I use captaintrip's kitchen to extract and yours to build it together again?
Click to expand...
Click to collapse
no in fact i will need to upload a kitchen as the result rom using my flex kitchen will not be extracted properly
benjaminries said:
I can't get this kitchen to build my ROM. The after WMReloc does the modules rebase, I get the following feedback...
Code:
Injecting files ...
Input file imgfs_raw_data.bin cannot be opened. Exiting.
In fact, when I watch the temp folder during this process, I see no imgfs_raw_data.bin at all. In your new script, I can't see where this file would come from anyway.
Help?
Click to expand...
Click to collapse
you have to run "prepare_imgfs flash.dio -nosplit" to get the imgfs_raw_data.bin first, this process is done when you extract a rom before but if you just directly use it to build a rom you need to manually run the command on a flash.dio first
Also keep in mind if you use flex kitchen your rom won't be able to extract properly, anyone want to edit your room will need your kitchen instead. If you don't have buildimgfs issue you may want to stick with the old way of building rom
keyx said:
no in fact i will need to upload a kitchen as the result rom using my flex kitchen will not be extracted properly
you have to run "prepare_imgfs flash.dio -nosplit" to get the imgfs_raw_data.bin first, this process is done when you extract a rom before but if you just directly use it to build a rom you need to manually run the command on a flash.dio first
Also keep in mind if you use flex kitchen your rom won't be able to extract properly, anyone want to edit your room will need your kitchen instead. If you don't have buildimgfs issue you may want to stick with the old way of building rom
Click to expand...
Click to collapse
So... these files go in the root folder? That's what works for me anyway. Hmm... I think this could be easily added to the script, if you ever have to release an update to the kitchen. Anyway, thanks.
21501 kitchen added on 1st post
EDITED: kitchen updated to detect missing of imgfs_raw_data.bin and extract it automatically, I also updated some tools versions
ADC and Ipaq Data Connect
Are both of these necessary? When both are installed the ADC seems to run first and configures a "Proxy Internet" Profile in the Connection Manager which lists all 3 possible connections for my data carrier, even though I can only use the internet2.voicestream.com with T-Mobile. Maybe I am not using this correctly, but once I removed the ADC, the ipaq data connection worked fine and I was able to connect to the internet without a problem. Is this all this app does, or is there another usage that I should leave it installed for?
Thank-you
you can remove ADC if you don't want it, i think it just help to setup data connections
Customization
Keyz
I have removed some of the OEMs from the kitchen, but am not sure that I modified the initflashfile.dat correctly,will you look at it for me and see (I highlighted what I have removed)? If I remove the entire last 3 lines that contain the Utility file the device does not reboot from sdlauncher when installing. When I leave the last line in it is very speedy to install and reboot, but I have the empty utility Folder in my programs folder! I also had tried to add the BSPropCab.cab to the OEM folder but cannot get it to install correctly. I saw that you had it installed in one of your previous roms along with the other 2 arc cabs. The arc cabs I can get to work, but I really dont want to put them in, just the bsprop. Is this possible?
In OEM I added Coreplayer, PdaNet, SKTools5, Live Search, Google Search and WM5torage1.9. I had to add Google Search in here because I could not get it to work by adding the original files back into the OEM App folder: In Systems I removed ADC, VOIP and One Note, replaced NETCF with NETCF3.5, and added Transcriber back in. I thought about removing WMWidgets, I use all SPB Software, but I dont understand all of its functions, I have Googled it and there really isnt alot out there about it. What I did find though makes me think Microsoft will add more function to it once the official 6.5 is officially released-So I will keep that. For me this is a very good ROM, you have done an excellent job with modifying the kitchen.
Thank-you
Sunday
Where do you test the new roms? In the device or in somekind of emulator?
gkleding said:
Keyz
I have removed some of the OEMs from the kitchen, but am not sure that I modified the initflashfile.dat correctly,will you look at it for me and see (I highlighted what I have removed)? If I remove the entire last 3 lines that contain the Utility file the device does not reboot from sdlauncher when installing. When I leave the last line in it is very speedy to install and reboot, but I have the empty utility Folder in my programs folder! I also had tried to add the BSPropCab.cab to the OEM folder but cannot get it to install correctly. I saw that you had it installed in one of your previous roms along with the other 2 arc cabs. The arc cabs I can get to work, but I really dont want to put them in, just the bsprop. Is this possible?
In OEM I added Coreplayer, PdaNet, SKTools5, Live Search, Google Search and WM5torage1.9. I had to add Google Search in here because I could not get it to work by adding the original files back into the OEM App folder: In Systems I removed ADC, VOIP and One Note, replaced NETCF with NETCF3.5, and added Transcriber back in. I thought about removing WMWidgets, I use all SPB Software, but I dont understand all of its functions, I have Googled it and there really isnt alot out there about it. What I did find though makes me think Microsoft will add more function to it once the official 6.5 is officially released-So I will keep that. For me this is a very good ROM, you have done an excellent job with modifying the kitchen.
Thank-you
Sunday
Click to expand...
Click to collapse
what do you mean by bsprop not installed correctly? if you convert it to OEM folder correctly it should work but if you leave the customization engine run on startup there is no point to preinstall bsprop since it will reinstall again from ipaq file store(unless you did not install the update before).
Also if you modify initflashfiles.dat i believe you should use hex editor to remove the FF FE header added by notepad.
Sometime when you flash a lot the device will act weird & does not reboot from flashing, you can try to clean boot it or reflash. I think you can remove all highlighted entries without issue. You may need to leave a blank line at the end of file though.
wmwidget is a widget engine that can run apps that use pie as a container/interface, for me it looks kinda like a shortcut to a webpage, msn weather/money .etc are the sample widget come with 6.5 for now. You can remove it if you don't use it.
SwimmerBoy said:
Where do you test the new roms? In the device or in somekind of emulator?
Click to expand...
Click to collapse
device only until i figure out the emulator issue
[WM Kitchen] OsKitchen Zero v1.33.5: The Easiest & Most Complete Kitchen (20/10/2010)
Index of this thread
(This Page) General Informations, Download links, Screenshots
Using OsKitchen Zero (Tutorial)
Moving from Ervius Visual Kitchen to osKitchen
Frequently Asked Questions
Useful Resources (Links where to find the latest Windows Mobile Builds and EXT packages)
Description
What does this kitchen do that others don't? You should ask yourself what the other kitchens do that this one doesn't because it literally does everything: importing the ROM directly from the EXE updater, detecting all the informations to rebuild the ROMs from the ROM file itself (no more messy BAT/CMD to edit to get things working), sorting the packages with the best EXT packages conversion engine available (no more EXT packages with weird names or out of place), building ROMs for different languages in the same pass picking all the correct windows mobile packages (EA/NonEA/AH/CS/Transcriber/Uniscribe/Fonts) to use, directly installing packages on the devices without having to flash each time (package installer), automatically recmodding of packages (without touching any of the original files) to allow cooking windows mobile 6.5 ROMs using older kernels, automatic manila CFC compression to save space and improve speed (and supporting latest manila builds where CFCGui has issues) and much, much more while keeping all the user interface well organized and being extremely easy to use. Start the kitchen, import a stock ROM and go! Give it a try and find out yourself how it lives up the hype or if still unconvinced scroll down to see how much simple yet complete the kitchen is by looking at the screenshots.
Features
The kitchen has the most streamlined and self-explanatory UI you can find, it can natively import and rebuild ROMs for all the devices in the supported list without having to mess with any batch/cmd files, it shows detailed informations about every Windows Mobile package and warn about conflicts and unmet dependencies, it can build multilanguage ROMs in the same pass by automatically choosing all the right localization packages required for each language, it can import windows mobile builds of any kind, convert OEM packages/CABS/HTC Hotfixes directly to EXT packages, can automatically recmod/UPX and natively compress/patch manila manila files with CFC, it automatically detects older kernels and suggests all the right packages to recmod to get the ROM working, it checks the ROM integrity while building to avoid many common user mistakes, has a lot of tweaks directly selectable with just a click from the kitchen interface, it has the most advanced search system available and much more.
Supported devices
HTC: Artemis, Athena, Blackstone, Diamond, Elf, Gene, HD Mini, Herald, Hermes, Iolite, Jade, Kaiser, Leo, Mega, Nike, Opal, Polaris, Pharos, Quartz, Raphael, Rhodium, Sedna, Titan, Topaz, Trinity, Vogue, Whitestone (CDMA variants of all phones are supported as well)
Palm: Treo Pro
Sony-Ericsson: Xperia X1 (HTC Kovsky)
Samsung: i900/i910 (Omnia) (delete the giisr.dll in the OEMXIPKernel folder or the ROM won't boot)
Asus: P565 (XDA Zest) (even thought not officially on the list the kitchen can import the NB0 ROM extracted from the ABI file with p835abisplit2)
Other devices, with caveats: as long as you have tools to convert between NB and your phone format the kitchen should work fine unless platformrebuilder doesn't support your device (I.E. it crashes). If platformrebuilder DOES NOT support your device you can still put a dummy NK.exe from another device to stop platformrebuilder from crashing (be sure the NK version (6.1/6.5) is the same) and insert your own crafted XIP.bin (there's a setting in Advanced Tweaks to use a custom xip file).
Download link
(First time using osKitchen? Read the brief tutorial in the 2nd post)
v1.33.5 All in one package:
http://forum.xda-developers.com/attachment.php?attachmentid=423263&stc=1&d=1287585346
DISCLAIMER: This software is provided "as is" and I don't take any responsibility for any damage caused to phones or anything else. I added all sorts of integrity checks I could think of to prevent the generation of invalid ROM files and so far none of the thousands of users who downloaded the kitchen reported invalid ROM files but just like when flashing any cooked ROM don't forget that there is always the risk that the phone may end up bricked (due to defective usb controllers, defective cables, defective phone memory, wrong radio file, software interfering with the flashing tools, power outages, etc).
System requirements
Microsoft .NET 2.0 (.NET 3.0 and 3.5 are 2.0 based so those work as well), already preinstalled on most computers, the kitchen won't start without it so it's easy to find out if it's missing
The following three system requirements also are preinstalled on most computers; the kitchen will warn you if they are needed so don't worry installing them unless required:
Microsoft Visual Studio 2008 runtime, required by xidump during the importing process
Visual Studio 2003 (7.1) Runtime Libraries, required by platformrebuilder to solve the "cereg400.dll cannot be loaded" error message, required by XIDump to solve the "Failed to init decompression!" error message and required by IMGFSFromDump to solve the "Unable to load compression DLL!" error message. Copy those libraries in the Resources\Tools folder and if that still doesn't work in the system32 subfolder of your windows folder (the right subfolder for 64bit systems is syswow64)
XmlLite Update Package required to solve the "Unable to load LibNB.dll" errors (only for Windows XP SP2)
Changelog from v1.33.4 to v1.33.5
Fixed os.nb file deletion issue for devices with no sectorinfo
Changelog from v1.33.3 to v1.33.4
Fixed delete shadow order entries not being saved
Implemented internal manifest management to reduce disk overhead during package scanning
Implemented detection of registry values that are found without a preceding registry key specifier
Improved file copy and file deleting speed
Changelog from v1.33 to v1.33.3
Fixed issue with packages with duplicate files causing errors in the package installer
Fixed issues on CAB files with "\." InstallPath attribute
Un-tied Calibration Data and Skip Welcome screen settings
Fixed IMGFS cache not being applied correctly
Fixed issues when installing packages registry files containing multi_sz strings with the package installer
Fixed new packages sorting issue
Changelog from v1.32 to v1.33
Fixed issue when using a drive root directory as temp folder
Fixed a localization manager issue that was causing longer startup times
Fixed some issues in CAB file folder mapping
Fixed the kitchen truncating i780/i900 BIN files
Added error messages when the DPI or MUI settings are missing on the phone
The kitchen now allows importing ROMs even when the language folder is missing (multilanguage Samsung ROMs)
Added a warning when the initflashfiles/app.dat files are not Unicode
The kitchen now reads app.dat as ASCII when Unicode characters are not detected
Fixed issue in which the initflashfiles.dat file was left locked for a few seconds during the import process prompting a retry/cancel file operation
Added detection and parsing of DPI_ EXT subpackages
Changelog from v1.31 to v1.32
Implemented total integrity check that checks all the structure of packages, modules and every single line of initflashfiles/registry files for issues. All the issues within the package will be shown next to the package name in the packages list.
Added support for variables in initflashfiles.dat, app.dat to make localization easier (because the variables will be replaced with the correct localized folder when the ROM is built). The list of supported variables can be found in the FAQ of the official osKitchen thread.
Added “RAM Drive Mode” setting to have additional cleanups performed during the build process to reduce the space usage of the temporary folder
Fixed crash when trying to open a search result file that has a defective associated application
Implemented total integrity system: every package, DSM, module and initflashfiles file will be validated for integrity and all the problems detected will be shown with an error/warning icon on the left of the package
When importing a ROM the initflashfile values are saved with the converted hexadecimal values like the generated app.dat files
When importing a ROM the progress bar will now warn of temporary folder cleanup even when the import has failed
Removed the unnecessary PackagePath attribute from the project files
Fixed the kitchen crashing when the resources folder was missing or the command line parameters were wrong
Renamed universal package converter to universal package importer
Fixed LCID validation not checking the LCID length correctly
Fixed the pagepool size patching message reporting unlimited instead of the real size
In-line comments are now maintained when the initflashfiles is split during the ROM import
When importing a ROM the initflashfiles lines that are not valid will now be commented out
Removed the %LCID% variable as alternative to %ROM_LCID% in the ROM filename
The ROM filename variables replacement is now case-insensitive and the value of the variables has any non-filename friendly characters removed
Remove Uniscribe/Transcriber mutual exclusion warning
Improved error handling during the NBH generation process
Fixed error message during build when packages contain more than one RGU file
Fixed some registry entries being unrecognized when tabs were used for spacing
Fixed the recmod messagebox appearing twice when the device is selected and no is chosen as answer
Fixed the windows mobile build importer not deleting the imageinfo.txt files in modules
Implemented a rudimentary “Install Package on device” function that allows installing a package on the device to avoid having to flash the phone for every changed file. Currently only sends the main package (no LCID/res subpackages), doesn’t apply registry entries and applies initflashfiles entries with no variables replacement.
Fixed the kitchen crashing when the packages contained corrupted DSM files
Fixed WinCENLS_Lang_RTL_0401 detected as having the wrong syntax
Fixed error messages saying that the packages had a wrong syntax on _CS packages
Fixed Danish appearing as “da-dk” and “Portuguese” listed as “Portugese”
Fixed the locale listview showing the LCID in the country code column
Now the locale combobox shows the locale name and country instead of just the LCID
Implemented automatic Unicode detection in initflashfiles.dat files
Fixed the file copy operations continuing even after the non-resumable error message
Fixed package validation not working in the universal package importer/windows mobile build importer
Added an “Expand all” context menu entry for search results
Added warning when wince.nls ends up in both XIP and IMGFS partitions
The packages issues are now listed by subpackage
The “Install Package on Device” function now also includes the subpackages, the settings to compile the packages are extracted from the phone itself and all registry values except multistring/binary are added
Removed missing DSM warnings
Implemented binary entries support in the “Install Package on Device” function and fixed temporary folder issues
Fixed duplicate DSM creation in package properties and reduced the wait before the packageproperties form is shown
Fixed error message when loading old kitchen project files
Added support for REG_NONE registry keys
The kitchen GUI is now shown before the project files or imported ROM informations are automatically loaded
Fixed the new DSMs file for SYS/OEM packages being saved with a Guid different from the registry key one
Added support for REG_MULTI_SZ on “Install package on device”
Fixed the kitchen leaving old combo box values when loading projects referencing non-existing devices, profiles or windows mobile builds
Search now removes unnecessary wildcard characters from the search string when wildcard mode is enabled to improve search speed
Renamed “Empty project” to “New project”
Fixed crashes in “Install package to device” with some SYS/OEM packages
Implemented integrity check support for boot_ms.rgu and boot.rgu files
Removed TGTool from the kitchen archive
Disabled F5 refresh during ROM generation
Implemented path variables support in the “Install package on device” function (note: the WM build on the phone must be present in the kitchen and have the build number as folder name for the localization to work)
Fixed issue with "Install package on device" function and short filenames and multiple initflashfiles files
Halved the time required for project loading and packages list refreshing
Implemented IMGFS support for unicode characters
Implemented CE variables support in “Install package to device” function
Added HTC Oboe to the devices list
The sort column order is now reapplied after loading a project instead of defaulting to sorting by name
Fixes some issues with empty DSM files
Fixed crash when using unicode package names
Added check to prevent boot.rgu and boot_ms.rgu from being present in non-XIPKernel packages
Fixed the locales combo box not being refreshed after a new ROM has been imported
Fixed issue in which the kitchen would save a DSM file with random name instead of overwriting the correct DSM file if the source DSM file was corrupted
Implemented case insensitive manila.exe/mode9 CFC patch
Completed translation entries list for ROM importer
Added tools error handling in UPX/Recmod/PNG Compression/xidump/nbimagetool/TGTool/o2Util/ImgfsFromDump/OsNbTool/Platformrebuilder
Fixed erroneous error handling in imgfsfromdump that was causing file copy error messages if the tool failed
Fixed reduced OS file generation ignoring imgfsfromdump error messages
Fixed TSW/MST management not checking that the output file was correctly created
Fixed the kitchen ignoring missing custom user tools error messages and continuing the build process
Initflashfiles parsing now parses files as UTF8 when the UTF16 BOM header is not detected
The registry file validation now checks if the REGEDIT4 header is present
Fixed the locales selection combobox not detecting new language changes during refresh
Fixed “Install to device” function copying square resolution packages for some resolutions
Fixed LCID EXT packages lacking the RGU file not being moved into the correct main package folder
Fixed registry validation generating errors about dwords where values have initial spacing/tabulation
Added translation entries for the module validation messages
The kitchen now reads partitions informations from the OS.NB file and calls osnbtool with the proper partition numbers (to support older ROMs without ULDR)
The kitchen can now extract BIN files from more updaters (Samsung i780 and others)
Added translation entries for OS.NB generation error management
Added translation entries for the registry validation error messages
Improved error messages (added categories) on the error tooltips
Added translation entries for the package validation error messages
Added translation entries for the initflashfiles validation error messages
Added translation entries for the manifest validation error messages
Added initflashfiles variables for Application Data (%CE19%) and Program Files\Games (%CE8%)
The initflashfiles entries of imported CAB files are now mapped to the correct initflashfiles variables
How to use
Once unpacked the kitchen is ready for use, as soon as you start it you will be asked to import data from a stock ROM.
Screenshots
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Tree Structure
The new kitchen structure is very simple however it requires a ROM to be imported for device configuration files to be generated. Always import a ROM for your device and start working on it.
Output - Where generated roms are saved
Projects - Where the project files are saved
Resources - Tools and other internal kitchen files, shouldn't be touched!
Sources - Contains all the files of your Windows Mobile builds and Devices
Devices
#DEVICE NAME# (You can use the name "Common" to share packages between multiple devices)
EXT Packages - All the EXT packages must go here
OEM Packages - All the OEM packages must go here
Profiles
#Device Profile Name# - Contains the "Device Informations.XML" file and all the various packages required for building the ROM
NBH Structure - Contains files required by the kitchen to rebuild the NBH correctly
OEMXIPKernel - The OEMXIPKernel with all the device drivers and native kernel must go here
NB Structure - Contains files required by the kitchen to rebuild the Os.NB correctly
ROM Parts - .ROM, .VM, imgfs-template.bin, romhdr.bin and other files needed for relocation and XIP/IMGS generation must go here
Windows Mobile Builds
#Windows Mobile Build Number#
All - The language-neutral DPI and Resolution files must go here
Common - All the language-neutral Main Packages must go here
#LCID FOLDER# - All the localized packages must go in the appropriate LCID folder
Additional files
Visual Studio 2003 (7.1) Runtime Libraries, needed to solve the cereg400.dll cannot be loaded issue: http://www.mediafire.com/?mjmmgtwmion
ImplantXIP and ImgfsToNB tools, needed for the alternative building method: http://forum.xda-developers.com/attachment.php?attachmentid=374999&stc=1&d=1281153923
Using OsKitchen Zero
What you need to know first
The first thing you need to know is that Windows Mobile is not like a desktop operating system: you can't take a ROM from another phone and flash it on a different phone model because Windows Mobile relies on an extremely specific kernel and drivers that are compiled by the manufacturer for each device model. The Windows Mobile ROM contains only the Windows folder - yes, that's right, the ROM is just the plain Windows folder with NO subfolders - while every other folder (Windows\Start Menu, Program Files, My Documents and also Start Menu links etc.) is generated when the ROM boots the first time.
Every official Windows Mobile ROM is composed of packages. Microsoft and device makers create those packages to split windows mobile and the additional software into separated components. The real "Windows Mobile" code, interchangeable between phones, is stored in packages commonly called SYS packages, while everything the manufacturer added (the drivers and the additional applications for customization) are called the OEM packages. The EXT packages are "fake" packages that the kitchen uses to overcome the limitations of standard packages (for example EXT packages are often used to build multilanguage packages without having to create a single additional package for each language).
The Windows Mobile package structure is very simple. SYS and OEM packages are identical in structure and can only contain:
A DSM file (a file that contains some package informations, for example what other packages it require or what files it contains, most kitchens usually ignore this)
A RGU file (a registry file containing the registry entries associated with the packages)
Other files or modules that compose the package: the modules are folders that usually have file-like names (meaning they have an extension) and are a different way to store executable and DLL files on the ROM.
Note: A SYS/OEM package cannot have any subdirectory with the exception of modules directories.
EXT packages - that as already said are "fake" packages that are converted to the Windows Mobile package format by the kitchen - have a different layout: everything goes into a "files" folder except the registry files (app.reg), dsm files, initflashfiles entry files (.dat) and there can be subfolders with a LCID (language-ID) code as name (a LCID is a string composed of four HEXadecimal numbers identifying a language, e.g. 0409 for US English, 040C for Spanish, etc.) to store language-specific files in the same structure (.dsm and .reg in another "files" subfolder, like for the main folder).
EXT packages are the main way custom packages or packages from other devices are distributed on websites and forums. Recent HTC ROMs contains additional informations that allow kitchens to automatically convert OEM packages to the more user-friendly EXT packages: this allows to quickly remove applications just by disabling the package; other ROMs instead have everything stored in a single package (usually OEMMisc) and require more work to remove original applications.
The only important thing you still need to know is how the rest of the filesystem structure (Program Files, My Documents, Start Menu, etc.) is created during the first boot. All the system folders are generated and populated during the first boot because, as wrote before, the ROM contains only the Windows folder. Windows Mobile has two facilities for the first-boot (hard-reset) initialization: INITFLASHFILES.DAT, a text file that is usually in the OEM_Lang folder and that only allows creating folders and copying files (Documents folders, default pictures, and most start menu entries are usually added this way) and .PROVXML files that are some XML files that can do other advanced operations (like setting registry keys, certificates, phone settings).
Usually anything you can perform with PROVXML files, that unfortunately are difficult to edit and require a large knowledge of the format, can also be easily performed using initflashfiles and registry files. You can use the app.dat and app.reg files inside EXT packages (or initflashfiles.txt and RGU files in OEM packages) to add entries to both the initflashfiles file and to the registry: the kitchen will use them properly during the building process adding the app.dat entries to initflashfiles.txt and the reg entries to the final registry (the ROM boots with a precompiled registry HV file but you'll usually never have to mess with that when using a kitchen).
Manufacturers also use some advanced proprietary post-install tools to install custom cabs, apply themes and operator configurations (e.g. AutoRun, RunCC). Those rely on TXT configuration (*config.txt) files and can cause trouble (error messages about missing files during the first boot) when removing packages or files from packages that those config file point to if you don't update them.
When you want to upgrade a Windows Mobile Build the changes in the start menu are usually so many that it's REALLY recommended to start over with a new fresh initflashfiles.txt for that windows mobile build (you can find one for each language in the Da_G's rollup threads). Since in the official ROMs the start menu entries are all crammed into the initflashfiles.txt file (the app.dat exists only in the "fake" EXT packages) you will have to either take the time to create app.dat files for each package or to copy back all the initflashfiles entries for OEM/EXT applications back after you put the new initflashfiles for the windows mobile build you changed. The kitchen will try to move the config.txt and initflashfiles entries inside the correct packages while the ROM is imported to make SYS upgrades easier.
Now that you know the basics you can proceed to the first step...
Preparing the kitchen (Importing the Device ROM file)
1. Download osKitchen Zero and unpack the ZIP archive
2. Find a ROM update file for your device: the kitchen can import the EXE from all HTC and some Samsung updaters or alternatively the raw ROM file (the main used extensions: .NBH,.BIN and .NB are supported)
3. Open osKitchen Zero and the Import ROM Wizard will open
4. Select the device you want to work on from the drop-down list, you can actually write any device name because the list is just for reference to make sure people understand that the kitchen has been tested only with those devices
5. Select the ROM update file
6. Click NEXT
Building your first ROM to make sure everything works
At this point the main kitchen window will open. Since you imported a ROM all the "Project Settings" options will only have one choice, go on and select the only available choice for all the fields (device model, device profile, windows mobile build, language) and clicking Yes in case the kitchen asks you to automatically apply recommended changes should be enough to build a bootable and working ROM. The only setting that has more than one choice is the Compression setting that if you want to have the most available space to add your programs should be set to "LZX", if you want to use another compression first make sure that your phone will be able to flash a bigger ROM file.
Now you can go ahead and build your first ROM by clicking the "Start building button": the kitchen will work for a while, then tell you that the building process has been completed and ask you if you want to open the Output ROM folder; you can then answer yes, take the ROM file that has been generated and flash it, making sure it's the right format for your phone.
NOTE: don't try importing a ROM made for other phones different than the one you want to flash because the kitchen will rebuild the ROM for the device you imported and not any other. If you flash a ROM made for another device you risk bricking your device.
Once the ROM works (if it's a supported device it should work fine on the first try, if it doesn't please report the issue here so we can help fixing it) you can start working on the ROM. So that's it, you're ready to go. If you read the "What you need to know first" you will probably already have an idea of where to start for whatever change you want to do.
Moving from Ervius Visual Kitchen to osKitchen
Open osKitchen and import the latest ROM for your device
Replace the OEM packages
Locate the folder oskitchen created in your device (it's in the Sources folder) and delete all the packages in the "OEM Packages" folder
Open the OEM folder in the Ervius Kitchen folder, locate the folder of your device and copy&paste all the OEM packages that are inside the Common and the LCID folder (0409 for english, etc.) into a folder with any name you want inside the osKitchen "OEM Packages" folder (where you deleted them). The .VM folder can be ignored.
Replace the EXT packages
Locate the folder oskitchen created in your device (it's in the Sources folder) and delete all the packages in the "EXT Packages" folder
Open the EXT folder in the Ervius Kitchen folder, locate the folder of your device and copy&paste all the folders that are inside the Common (usually empty) and the Windows Mobile Build subfolder (it's a 5-digit number) in the osKitchen "EXT Packages" folder (where you deleted them).
Replace the OEMXIPKernel
Locate the folder oskitchen created in your device (it's in the Sources folder), go in the Profiles subfolder and then in its "default" subfolder, you'll find a folder named OEMXIPKernel, delete it.
Open the ROM folder in the Ervius Kitchen folder, locate the folder of your device, open the Windows Mobile Build subfolder (it's a 5-digit number) and then copy the OEMXIPKernel folder in the osKitchen "Profile\default" subfolder (where you deleted it).
Import the Windows Mobile Build
Locate the oskitchen Sources folder, open the "Windows Mobile Builds" subfolde and delete any folder in there.
Create a new folder with the number of the windows mobile build present in ervius kitchen (5-digit number) and create three subfolders inside: Common, All and a LCID one for each language (0409 for english, etc)
Open the ROM folder in the Ervius Kitchen folder, locate the folder named "Shared", open its Windows Mobile Build subfolder (it's a 5-digit number) and copy the MSXIPKernel folder in the osKitchen Windows Mobile Build "Common" folder you created earlier.
Open the SYS folder in the Ervius Kitchen folder, locate the Windows Mobile Build subfolder (it's a 5-digit number) and proceed as following:
Everything in the "Common" subfolders of the folders that start with DPI_ goes in the "All" folder you created in the osKitchen Windows Mobile Build folder.
Everything in the LCID (0409 for english, etc) subfolders of the folders that start with DPI_ and of the SHARED folder goes in the LCID (0409 for english, etc) folder you created in the osKitchen Windows Mobile Build folder.
Everything in the "Common" subfolder of the "SHARED" folder goes in the "Common" folder you created in the osKitchen Windows Mobile Build folder.
Frequently Asked Questions
How do I share packages between devices?
Create a folder named "Common" inside the "Sources" folder and put your packages (grouped in folders like standard device packages) in the "EXT Packages" and "OEM Packages" folders
Why is the final ROM file bigger or the total and available storage space lower than when using another kitchen?
It shouldn't. The other kitchens probably come with LZX compression selected as default while instead you told osKitchen to use XPR or None compression. You can also save additional space by using the ImplantXIP building method that removes the ULDR and some other wasted space.
How do I speed up the ROM generation process?
The kitchen needs to copy a lot of data and this may be a problem on computers where the hard-drive performance is low (i.e. laptops); antiviruses, firewalls and other applications may also interfere with the process speed therefore it's suggested to keep them off while the building process to save time. The kitchen allows setting another drive as a temporary folder to speed up the ROM generation and you can use a RAM drive (if you have enough RAM) or another hard-drive to improve the process speed.
How do I translate the kitchen?
When you start the kitchen for the first time if a translation file isn't found it will be created in "Resources\Localization" with the name matching your locale code (en-US.lng for american english, fr-FR.lng for french, it-IT.lng for italian, etc.): open that file with a text editor and translate all the text that comes after the "|||" separator (the text on the left of the separator shouldn't be touched, it's used both for reference and to identify the lines by the kitchen). Remember to post on this thread the translated files if you want them included in the official releases.
How do I reduce the space used by "Temporary OS.nb"?
It's suggested not to because the file will be needed in the next kitchen versions with the internal libnb NB dumping engine that will analyze the file, generate a new OS Structure.xml and delete it for good. The kitchen creates its own reduced files and keeps them in the Cache folder: if you really want to reduce the space used by the kitchen you can take the reduced file and replace the Temporary OS.nb with it.
How do I upgrade from an older kitchen version?
Simply delete oskitchen.exe and the Resources folder from your previous kitchen folder and put the new ones included in the archive or just unpack the archive overwriting the files. If you were using a version previous to 1.26 you will have to reimport a ROM and replace the imported packages with old ones (SYS/OEM/EXT/OEMXIPKernel (with nk.exe added inside) and remember to look at how the packages are structured). If you upgrade from 1.30 or below to 1.31 you may have to move your OEM Packages in a group subfolder because now the OEM packages are grouped like the EXT packages.
What are the variables that are supported in app.dat/initflashfiles.dat? (works only with 1.32 and higher)
%SystemDrive% (/)
%MyDocuments% (/My Documents)
%MyDocuments-MyMusic% (/My Documents/My Music)
%MyDocuments-MyPictures% (/My Documents/My Pictures)
%MyDocuments-MyVideos% (/My Documents/My Videos)
%MyDocuments-Templates% (/My Documents/Templates)
%ProgramFiles% (/Program Files)
%Windows% (/Windows)
%Windows-Fonts% (/Windows/Fonts)
%Windows-StartUp% (/Windows/StartUp)
%Windows-StartMenu% (/Windows/Start Menu)
%Windows-StartMenu-Programs% (/Windows/Start Menu/Programs)
%Windows-StartMenu-Programs-Games% (/Windows/Start Menu/Programs/Games)
Useful Resources
Windows Mobile Builds
Da_G All-In-One Windows Mobile 6.5.x Builds (Strongly recommended, contains all languages and all resolutions needed for almost any device)
Latest SYSs and OEMs XDA thread (where all the latest SYS builds are posted)
Common EXT Packages
(if you have suggestions or know where to find newer versions please post them)
Latest Touch Pro 2 EXT Packages (English-only, WVGA only)
Coming soon...
Help wanted!
1. Kitchen translation
Translators for the kitchens are needed! The kitchen is now completely localizable and will generate a translation template in the Resources\Localization folder when it's started up the first time: that file can be easily edited to translate all the text of the kitchen (also include an about entry for credits) and the kitchen will validate it and keep it updated every time it's launched organizing the entries that are missing or not found. If somebody has some spare time to help me translate the kitchen in other languages please attach a translated lng file to a post so I can include it in the kitchen archive.
2. Informations about the WM6.5.X packages required for each language
In order to improve the automatic localized packages selection I need to know which of the following packages:
Code:
BronzeEA BronzeNonEA BronzeAH | CommonEA CommonNonEA | SYSTEM_DEFAULT_FONTS COMPLEXSCRIPT_FONTS | gb18030 | Riched20 Riched20_CS | SipAR | Transcriber UNISCRIBE | Webview Webview_CS
are needed for each of the following languages:
Code:
0402 BRG Bulgarian (Bulgary)
0404 CHT Chinese Traditional
0405 CSY Czech (Ceská republika)
0408 ELL Greek (Ellas)
0411 JPN Japanese
0412 KOR Korean
0415 PLK Polish (Polska)
0419 RUS Russian
041B SVK Slovak" (Slovensko)
041D SVD Swedish (Sverige)
041F TUR Turkish (Türkiye)
0424 SVN Slovenian (Slovenija)
0804 CHS Chinese Simplified
081A SPB Serbian (Latin)
If anybody knows the right packages needed for one (or hopefully more) of those languages please let me know.
nice thread but i think u should post new sys files..... iam not able to cook may be still my format is wrong so i wanted to take reference but its old further links are broken
jagan2 said:
nice thread but i think u should post new sys files..... iam not able to cook may be still my format is wrong so i wanted to take reference but its old further links are broken
Click to expand...
Click to collapse
I uploaded 28223 SYS/XIP files, if you want other builds tell me.
@AirXtreme The kitchen is great and I like it way better than Ervius' VK, but I do have some small questions though. Since the split from the original osKitchen things have been a little vague, this is what I understand of it.
OndraSter developed the kitchens core code and you developed the new gui. Both trees still exist and both trees are 'updated' to RC3, but the version number in the .exe still says RC2.7.
Second, what is the latest version? Would it be possible to include build date and changelog in the first post, so it's easy to follow the updates to the kitchen? I know it's a lot to ask, but it would help a lot.
For the rest, great kitchen!
airxtreme said:
I uploaded 28223 SYS/XIP files, if you want other builds tell me.
Click to expand...
Click to collapse
Upload 23529 and I'll give this kitchen a whirl
Cheers.
KilZone said:
@AirXtreme The kitchen is great and I like it way better than Ervius' VK, but I do have some small questions though. Since the split from the original osKitchen things have been a little vague, this is what I understand of it.
OndraSter developed the kitchens core code and you developed the new gui. Both trees still exist and both trees are 'updated' to RC3, but the version number in the .exe still says RC2.7.
Click to expand...
Click to collapse
It's because my sources are from 2.7 and didn't update the titlebar.
KilZone said:
Second, what is the latest version? Would it be possible to include build date and changelog in the first post, so it's easy to follow the updates to the kitchen? I know it's a lot to ask, but it would help a lot.
Click to expand...
Click to collapse
The last version is the one in the first post, when I'll release other updates I'll update the first post and add a changelog.
dickenz said:
Upload 23529 and I'll give this kitchen a whirl
Cheers.
Click to expand...
Click to collapse
It was already up but with the wrong name (28223), now names are fixed.
Awesome, thank you that clears it I guess. Just forgive my stupidity... Downloading the ... latest ... version now (and updating my current version).
airxtreme said:
The last version is the one in the first post, when I'll release other updates I'll update the first post and add a changelog.
Click to expand...
Click to collapse
@Airxtreme
The version in 1st post supports Iolite?
I didn't see it in supported devices list.
dancer_69 said:
@Airxtreme
The version in 1st post supports Iolite?
I didn't see it in supported devices list.
Click to expand...
Click to collapse
Yes, I think I added its device file.
I'll download now and test, thanks.
EDIT
I just checked and I allready have this version(Os kitchen 1.4 RC2.7)
and I have successfully build an nbh with this version, I just not flash it yet.
So, it's supported.
Okay,
I just download the New ATT Shipped ROM from HTC and I was going to give this kitchen a try.
I extracted the files from the shipped ROM.
When I started the kitchen, it asked me to point to the RUU file. I selected the RUU_signed.nbh that I had just extracted and I get the message "There was no os.nb present i this file! Can't continue"
What am I doing wrong?
rgb-rgb said:
Okay,
I just download the New ATT Shipped ROM from HTC and I was going to give this kitchen a try.
I extracted the files from the shipped ROM.
When I started the kitchen, it asked me to point to the RUU file. I selected the RUU_signed.nbh that I had just extracted and I get the message "There was no os.nb present i this file! Can't continue"
What am I doing wrong?
Click to expand...
Click to collapse
Give me the link to download the rom so I can try to see why no OS.nb is detected.
airxtreme said:
Give me the link to download the rom so I can try to see why no OS.nb is detected.
Click to expand...
Click to collapse
http://www.htc.com/us/support/tilt-2-att/downloads/
Third download on the list. Complete ROM
airxtreme said:
I uploaded 28223 SYS/XIP files, if you want other builds tell me.
Click to expand...
Click to collapse
Thankyou actually i wanted to test the sys xip provided by u coz whenever i try to sort sys and xip myself for oskitchen it crashes platformbuilder.exe so will try the one made for oskitchen.
But plz plz its too big file for me. I request you to upload build 23529 qvga lang 0409 only and specially on mediafire or any uploading site which supports parallel downloads. I will be waiting ....
jagan2 said:
Thankyou actually i wanted to test the sys xip provided by u coz whenever i try to sort sys and xip myself for oskitchen it crashes platformbuilder.exe so will try the one made for oskitchen.
But plz plz its too big file for me. I request you to upload build 23529 qvga lang 0409 only and specially on mediafire or any uploading site which supports parallel downloads. I will be waiting ....
Click to expand...
Click to collapse
http://www.mediafire.com/?zy0ejwmiwmy
Hi, I'm trying to add CFC compression manually to leo 1.66 ROM without adding anything else (actually cooked on an Xperia but everything was working before the change)
I converted all QTC files to CFC and added padding, I edited manila.exe and mode9.dll\s001 to replace all the libgles_cm.dll entries with libgles_mn.dll (one patch in manila.exe, two patches in mode9.dll of which one in unicode format), I added the two runtime DLLs (libgles_mn.dll and zlib_m.dll), cooked everything but manila doesn't seem to start, the home screen keeps saying to tap to start HTC sense.
Any idea of what could I have missed? Do the files have to be signed/unsigned or need to have some special file attributes?
Thanks in advance for the help.
Are you sure you have all the necessary pkgs for manila?
I dont manually cfc, i usually do the automatic cfc, and it seem to work flawless in various manila version starting from 2012.
ai6908 said:
Are you sure you have all the necessary pkgs for manila?
I dont manually cfc, i usually do the automatic cfc, and it seem to work flawless in various manila version starting from 2012.
Click to expand...
Click to collapse
I think all the packages are fine since manila works before compressing and patching it. I just tried with CFC Gui as well and it doesn't seem to work at all.
Hello there, im trying to make a 6.1 rom with ESP lang but i can't port the one posted by Da_G be cause the rom maker cab sends me problems with some files.
I hope some of you can help me with the lang porting or any pack I can use.
I'm using Old style kitchen made by aeroflyluby
Since you are speaking about WM 6.1 i suppose that you got the right build from the right Da_G thread....anyway ,here is the link:
http://forum.xda-developers.com/showthread.php?t=547314
Actually I'm using that package that you mentioned but no luck, when i change the files from the SYS folder the program "my build os" sends me an error anywhere and if y solve it (by deleting the problematic file) the rom maker (the .cab that calls the pack of tools) sends me an error while is rebuilding the files so I dont know what I'm doing wrong.
Do I have to use the SYS files with or without the 0409(ENG) files or i have to replace them?
Is there any proble if I cant find any 0C0A(ESP) OEM folder files?
I hope you can help me.
Regards.
If you are cooking for 0c0a then every 0409 folders must be left from your kitchen.
With 0c0a SYS you need 0c0a OEM at least OEM_Lang_0c0a otherwise your rom will not work.
Lokmetro said:
Actually I'm using that package that you mentioned but no luck, when i change the files from the SYS folder the program "my build os" sends me an error anywhere and if y solve it (by deleting the problematic file) the rom maker (the .cab that calls the pack of tools) sends me an error while is rebuilding the files so I dont know what I'm doing wrong.
Do I have to use the SYS files with or without the 0409(ENG) files or i have to replace them?
Is there any proble if I cant find any 0C0A(ESP) OEM folder files?
I hope you can help me.
Regards.
Click to expand...
Click to collapse
Oh i see. So i can extract 0c0a OEM files from any 6.0 dump folder? or I have to find a new oem folder files for 6.1?
BTW i'm cooking for a BenQ-e72 so I can't find any rom in spanish except for the one that came with my phone (WinMo 6.0)
a_GWM 6.0 OEM should be work with WM 6.1 at least you will need a WM 6.1 Initflashfile.dat (it is in OEM_Lang), sometimes Da_G shares his build within the Initflashfiles for every language,check in that thread to see otherwise try to cook it with your 6.0 initflashfile.dat and check if something is missing in StartMenu.
Lokmetro said:
Oh i see. So i can extract 0c0a OEM files from any 6.0 dump folder? or I have to find a new oem folder files for 6.1?
BTW i'm cooking for a BenQ-e72 so I can't find any rom in spanish except for the one that came with my phone (WinMo 6.0)
Click to expand...
Click to collapse
Thanks for the fast answer. I'm going to look for the WM from Da_G but I don't remember if i have seen that thread before, and btw I will take some time after I can post any advance be cause I'm not at home. for now I can only ask things if I have any question.
I have tried what you said but no luck. the phone wont start. it just stay in black screen, i don't know what i'm doing wrong
can you xplain exactly where does your rom stucks? maybe is not a SYS trouble maybe is a XIP trouble due to not pòrting ok or maybe is the wince. nls WWE or any SYS pkg missed
Well the rom wont give me any image, it just shows me a black screen and the normal screen lights for the rest it does nothing.
Once i got lucky but I had problems with the Start menu be cause i wasn't able to see the icons, i think it was caused by the initflashfiles.dat but now I can't do it again