ROM Porting Guides for Beginner and Seasoned Cooks
Roms! The heart and soul of xda-developers development. This is a long standing tradition and set of techniques that have been around for nearly as long as the site has been up and running (a little over seven years). Windows Mobile development in this site started with the single idea that our devices could perform better than what we were told by the companies that sold them to us. In fact, one of the reasons why the devices couldn’t perform any better was because the people who made shipped roms included a lot of bloatware in them. The term bloatware corresponds to a set of apps and/or files pre-installed in a system that we seldom use and take up precious memory, which was not abundant in older devices. That is when a group of developers took it upon themselves to free our devices from their chains.
Over the years, many things have changed. Particularly, rom structures have evolved as space allocated in the devices grew larger, which in turn, allowed to cook more apps into a rom saving users from having to use storage memory. To put this in perspective, the rom size for a Blue Angel is limited to only 32 MB, whereas the one for the HD2 can be about 220 MB! This is a key for development on older devices. While there is enough space for a port in a HD2, it gets increasingly complicated to port some of the newer OS to older devices, simply because they don’t fit. However, there is always a way when enough information is available.
Information in general is scattered around the site, where people have written guides, tutorials, posted videos, and some of them even teach younger chefs to cook. The current biggest resource that XDA has for new and aspiring Windows Mobile chefs is called Chef Central, which is a section created by XDA Senior moderator NRGZ28 (creator and chef of the Energy roms series for many of the newest devices). In there, you will find all the tools and support that you will need to start making roms for your own Windows Mobile device.
As previously mentioned, the roms have evolved and this lead to newer cooking techniques that slowly drifted away from the original techniques. For instance, the extension of the roms for devices older than the HTC Wizard (not including it) is .nbf, whereas the extension for newer roms is .nbh. To make things worse, it isn’t just a matter of changing the extension type, but rather the cooking process (particularly the porting) differs quite a bit. This link leads to a set of guides (both old and new) compiled by Retired moderator Ameet, that will give you some better understanding of the concepts behind cooking.
These are only a few examples of the vast amounts of information and resources available in this community. So, if you are thinking about starting down a path of rom development, you’ve come to the right place. Keep in mind though, that information is scattered everywhere, so a little searching may be required in order to get all the needed knowledge to become XDA’s Next Greatest Chef.