[XPERIA X1 ROM Development] TotalFire:
Setting Up The Kitchen​

The Kitchen is where all the files in the ROM are kept and where there put together into a ROM which is flashed. There are mainly two types of kitchens, an automated kitchen and a visual kitchen, in this tutorial I will be using a automated kitchen which was made by bepe and modified by gtrab. The only modification I did to the kitchen was to make it rename the ROM to RUU_signed.nbh so that it could be flashed from the PC. in this tutorial I will explain the filesystem used in the kitchen.

In the root of the kitchen you will find 4 folders, they are OEM, SYS, ROM and Tools, below I will explain whats in each folder and what it does.​

OEM

The OEM folder contains all the customizations made by the OEM or in this case chef. In the folder you will find lots of folders which begin with PACKAGE, these are most often applications, registry changes or both. The name can indicate which phone they come from for example a package which is called "PACKAGE_Kovsky_Camera" comes from the Kovsky (Xperia) and a package called "PACKAGE_Rhodium_PhoneCanvas" comes from the Rhodium (Touch Pro 2). Inside a Package you could find many different filetypes, every package has at least a dsm file inside, this is a identifier file. The dsm files name will have loads of random numbers and letters in such as "d9dd6d62-02d6-48d7-9764-18ac81aff3ad.dsm", this is it's unique identity no other package will have the same ID. Most Packages will also have a rgu file, an rgu file contains registry changes for the device, a package can contain only one rgu file and it must have the same name as the dsm file. Make sure when writing a rgu file to have the first line say "REGEDIT 4" and the last line must be empty, if this is not done the rgu will be ignored. One more filetype to look out for is a provxml file this contains registry changes just like the rgu but can be called anything and you can have as many provxml's as you want in a package, the registry edits are written in xml. The last file to look for is an "option.xml" file, these are used only by the kitchen to tell it if the package should be used, these are not needed but without one the kitchen uses the package without giving you a choice. The "option.xml" files can be made manually or generated with Ervius Package Creator but its easy enough to make it manually so I usually do. OEM Packages can be extracted from official ROMs and unprotected ROMs, you can also convert cab's into oem packages using Ervius Package Creator or doing it manually, later on in the tutorial I will add a guide on how to using Ervius Package Creator (manually doing it is too complicated). CABs can be installed without converting them to OEMs but the more CABs you have the longer it takes for the customization to finish when you first install the ROM, I will also show you how to install CABs without converting them to an OEM in a later tutorial, the use of this is if a CAB doesnt convert properly with Ervius Package Creator and you dont want to convert it manually.

ROM

In the ROM folder you will find the folder XIP and the file "OS.nb.payload", the "OS.nb.payload" file contains things such as the splashscreen, usually this file is not edited and the splashscreen is overwritten by a package in OEM. The "OS.nb.payload" is usually changed when upgrading the SYS folder because "XIP.bin" contains the kernel files which is inbuilt in the "OS.nb.payload" file. In the XIP folder there is boot.rgu file which contains registry entries used by windows mobile and isnt used by the OEM or chef, it is used exactly as an rgu file would in a package in the OEM folder. When upgrading to a new build of windows mobile this folder will be upgraded, it will need to be ported properly to xperia for it to work but i'll add a guide for that in a later tutorial.

SYS

The SYS folder contains all the files used by windows such as themes and applications like office mobile. Inside the SYS folder there are many other folders such as MediaOS (Windows Media Player) and WindowsLiveIM(Windows Live Messenger) These are basically packages made by windows similar to the OEM packages. I dont need to go into as much detail as I did with the OEM because the only time you use this folder is when you either swapping images to change skins or upgrading the windows mobile build. I will show you how to upgrade the SYS folder in a later tutorial because some of the files in SYS are device specific and resolution specific so you cant just take a SYS folder and overwrite your old one.

Tools

The Tools folder contains all of the applications the kitchen uses to build a ROM. I dont need to go into any detail because you never need to touch any of the files in the Tools folder but if you intrested, you can open the cook.bat file in the root of the kitchen which should tell you more about which applications do what.

Other than the 4 folders in the root of the kitchen is 4 files, they are Cook.bat, CustomRUU.exe, SYSVersion.exe and XVI32.exe Shortcut, below I will explain what each file does.​

Cook.bat

This files runs all of the tools in the kitchen to build to ROM.

CustomRUU.exe

You should have seen this file before, it is used to flash a ROM

SYSVersion.exe

This application checks the version of each individual SYS folder, useful to check the SYS build

XVI32.exe Shortcut

This application is used to HEX edit files, this can be used to HEX edit the ROM to change the default date, i'll show you how to do this at a later date.

Download the Kitchen Here​