Finally able to extract imgfs and xip from Stock Rom - Quantum Windows Phone 7 Development

For everyone who has an LG Quantum, I was finally able to extract the xip and imgfs from the stock rom and see what the insides look like. To do it, I modified the lgextract program, which was written for the LG KS20, whose rom image is similar in format to the quantum's. I will post my version of lgextract either later today or tomorrow for your amusement. From there, you can use the latest version of the htc rom editor to get the imgfs.bin and xip.bin. As of now, there is no way to piece it all back together for flashing, so custom roms are, unfortunately, not possible yet. The only annoyance (you could also call it a bug if you wanted to), is that you have to remove the rom header manually with a hex editor to make it work with the htc rom editor (but I am currently working on a version to do it automatically).
On another note, I did find out that the manufacturer program can read and write to the registry, so I could also write a program to view and edit the registry if there is enough need as to do registry editing on the quantum.
Update: I have fixed the program to do all the extraction automatically so you can automatically just open up the nb file in the HTC Rom Image Editor and see what goods are inside. However, there's still no way to create custom roms yet. As for the registry editor, I can't do anything until I get back in school and I have a chance to talk to the CS department at school about getting my quantum developer unlocked via Microsoft Dreamspark.
download: http://www.easy-share.com/1914181345/DZExtract_v1.0.rar
You can use the dz file found in one of the other LG Quantum threads here with the program. If you have any questions, feel free to post or pm me.

--reserved--

Very nice! Just a question, is this similar to using a hex editor to edit the seed files from the old razr phones? Or a registry editer like wm6.5? Just wondering.

can you update system files in anyway or read and wright or deleat registry edits?
I have a custom rom but I don't see what good it will do. if the bootloader is not unlocked.
might be able to copy parts of it over to the device but am unsure. can you sideload anything?:cyclops:
edit!!!!!!!! LINK IS DEAD!
File not foundZExtract_v1.0.rar

Related

Post Exteneded Rom Links Here.

We have lost the exteneded roms again.
This is the 2nd time that I know of.
I think this has to do with the fact that they were not linked to post thus unkonw files get killed. I read that some were when I first came here.
I have most of them and will start uploading them again, linking them to a post.
Anybody have a better idea or know why they have gone?
Not sure whether they've been deleted or not, unless you have been reposting. They are under BlueAngel_Roms instead of Extended_Roms. Things seem to keep getting moved.
And what are they doing there ?
Sure I have been uploading to ExtenedRoms for over an hour now.
I will move the buggers!
Rename The Folder Exteneded_Roms
Clean up the file names
Gee I love house work thought I was would be cooking in the Rom Kitchen, but no.
We are going to have to post the links as they got killed once before.
Thought you were out.
Can you belive this!
Got a folder name that says "Dont touch MDAIIIUser Uploading" and we have dowloades.
You around need so help.
ok done
cleaned up the Exteneded_Roms
Will post in the morning.
We need to take these apart and find what version they are then rename them.
ftp://xda:[email protected]/BlueAngel/Exteneded_Roms/IIs Asia WWE Ext ROM.zip
ftp://xda:[email protected]/BlueAngel/Exteneded_Roms/Seimens_SX66_Ext_ROM_ENG.zip
ftp://xda:[email protected]_MDAIII_Extended_Rom_Inc_DeviceInfo.zip
Do you need some assistance with the Excel sheet for ROM Versions and contained cab files?
Is there a neater way of structuring the ftp server directories? Is there any way of setting folder permissions on the server for read/write only and not alter/delete?
Bebbo
Do I need help in the Exteneded Rom Kitchen. Does the .... (ok no bad jokes)
Sure do BIG Time!!! Its not my kitchen, I just work there!
The Idea of the Kitchen is not realy to find out what version number Orange Rom A has for an application but to see if Orange's Rom A has application / Patches that are better than our base.
The Sheet just is a list of the files which go:
Base (I-mate) + Rom A + Rom B = Extended Rom Kitchen (ERK) Rom
My end goal is to generate a ERK Rom Version which is as upto date as possible.
And have this info on wiki so we dont need to hunt for it.
How far am I, Well The UK orange rom has been looked at but info not posted in the kitchen.
( I think RTP worked on that but I am not sure as I was haveing PMs with few people about that rom. )
We have the 3 roms above that need to be looked and info posted in the Kitchen and added to the Excel Sheet.
The Excel Sheet needs to be made to look nice so the rest of us can undersatand it.
We need to check against the "List of know Blue angels" to see what rom is missing and see if we can find it.
Oh yes and its friday, I get to pick my kids as its "The 3rd weekend of every month" and as my ex-wife has got a date, thus By 12:00.
Chances of me doing much till monday are ZERO.
So you want a job, pay is s**t, hours are bad, it can get hot in the kitchen when there is a fire and you lose all your stuff.
You need to understand Roms, read cab files, use your brain and most of all admit to the fact that you don't know everything and thus ask.
I am looking for Pastry Chef as well. One that can write applications.
Is there any way of setting folder permissions on the server for read/write only and not alter/delete?
Click to expand...
Click to collapse
Given that at the moment we are all the user XDA, I would say no.
What we need is a "BA_Admin" that revokes the rights of XDA to Read only, then we just get into the next problem, the person that posted (XDA) can't update it, so he needs to be BA_Admin...
The FTP site is a public place and like Toilets some people just can't pee in the Pot like the rest of us and sonebody has to clean up the mess.
Is there a neater way of structuring the ftp server directories?
Click to expand...
Click to collapse
Got some ideas, then share them with us.
Will have a look at dir structure but seems reasonable to me at the moment (Though Extended is the correct spelling ). Will use my WinCE CAB Manager to see what if anything is different on rom's you haven't had chance to view yet and generally assist where I can.
I will have a look at the orange rom as well, time permitting.
Would it be better to extract the .nbf files to sub dirs under the Extended_ROMS dir and have similar structure for radio and CE ROM?
ie ->
BlueAngel/Extended_Roms/Imate_PDA2k_WWE_12200_162_10600_SHIP/ms_.nbf
(With cabs extracted as well under a cabs sub dir?)
BlueAngel/CE_Roms/Imate_PDA2k_WWE_12200_162_10600_SHIP/nk.nbf
BlueAngel/Radio_Roms/Imate_PDA2k_WWE_12200_162_10600_SHIP/radio_.nbf
Or leave as is and use the kitchen with a CAB's dir under it with all known versions of cab files so we can select the most appropriate ones?
I've posted the document on the Orange 1.12.139 ROM into the Kitchen. It's fairly large since there is so much in the Orange ROM.
Here's a link:
ftp://xda:[email protected]_1_22/Docs/Orange_WWE_1.12.139_ExtROM.doc
Unfortunately nothing really new though (Wish I had known you were doing this rom - just wasted 2 hours!).
I haven't looked at the WModem.exe update yet - any ideas what this is for?
Who keeps moving files in the BlueAngel section of the FTP server? Makes life difficult having to keep searching each time. Please let us all know what you are trying to achieve as it keeps breaking links on other web pages!
Running it comes up with this text:
The utility will simulate this device as a wireless modem, and let your PC/Notebook be connected to network wirelessly.
Before you press the 'Start' button, please make sure you have connected the device to your PC/Notebook by serial or IrDA connection and disabled the Activesync.
When the wireless modem is activated you will not be able to receive any voice calls.
Click to expand...
Click to collapse
It then gives options for Serial, IrDA, USB and Bluetooth. Start, Stop and View Log buttons. Plus connection status LEDs - Connection, Send Data and Receive Data.
I've never tried it. I tend to use something more direct for dialup from my laptop.
OK guys!!!
I don't know what your naming system is but I've uploaded the O2 UK EXT ROM and I've called it "O2_UK_XDAIIs_Ext_ROM_112178_WWE.zip". This one is the original from my device.
Regards,
Dom
Ext_ROM password??
MDAIIIUser said:
ok done
cleaned up the Exteneded_Roms
Will post in the morning.
We need to take these apart and find what version they are then rename them.
ftp://xda:[email protected]/BlueAngel/Exteneded_Roms/IIs Asia WWE Ext ROM.zip
ftp://xda:[email protected]/BlueAngel/Exteneded_Roms/Seimens_SX66_Ext_ROM_ENG.zip
ftp://xda:[email protected]_MDAIII_Extended_Rom_Inc_DeviceInfo.zip
Click to expand...
Click to collapse
Any known pw's for those .nbf files? I tried Rom editor but couldn't recognize the pw's
Re: Ext_ROM password??
Cyber-mate said:
Any known pw's for those .nbf files? I tried Rom editor but couldn't recognize the pw's
Click to expand...
Click to collapse
They aren't .nbf files???????? They are zipped up (rar'd up) cab files extracted from the extended roms.
+*+*+*+ FOR INFO +*+*+*+
The xda3nbftool has an extra command line option of -t which attempts to discover the xor key used to encrypt the .nbf files. This seems to work well for all files except the radio_.nbf file which causes it problems. Try it on roms that you are having problems with to see if it is the correct key. You can check the resulting .nba file with a hex editor to ensure the PH20B and other data is shown at the beginning of the .nba file.
+*+*+*+*+*+*+*+*+*+*+*+
I have pulled the above ext roms apart and the version numbers are as follows:
IIs Asia WWE Ext ROM.zip = Version "1.12.925 WWE"
Seimens_SX66_Ext_ROM_ENG.zip = Version "1.20.115 WWE"
T-Mobile_MDAIII_Extended_Rom_Inc_DeviceInfo.zip = Version "1.06.117 WWE"
Files renamed appropriately so any links will now be broken (plus the fact that some kindly person has renamed the Extended ROM directory to its correct spelling!)

Building Wizard ROMs with mamaich tools

I had posted this to the mamaich's thread. posting here as well since it is wizard specific:
I've been trying to use the tools for building an HTC wizard ROM. Now, before starting out on any modifications, I simply tried to break apart and rebuild it. So, I extracted a ROM using typhoondecode_v5, then followed this:
1. prepare_imgfs.exe OS.nb -nosplit
2. viewimgfs.exe imgfs_raw_data.bin
3. BuildImgfs.exe
But then my imgfs_raw_data.bin is not rebuilt and stays at its original self. The buildimgfs tool does not give me an error, however the last 3 lines of its output reas something like :
total sectors: 0000
used: <some number>
free: <some number>
I searched the forums but couldn't find an answer. Saw a couple of posts having the same prob but no answer. Since I havent done any modifications to the ROM and have tried with both AKU2.3 and AKU 3.3 (and custom ROMs as well as official Qtek ROMs), the ROM that i am using is also not an issue.
Now, since there are so many custom wizard ROMs out there and ppl swear by mamaich's tools so there must be a solution. Please help me out or let me know if there is no way out and I ve to use some other way to make ROMs, i also found bepe's kitchen post but couldn't find how to use it for wizard..
Thanks in advance.
for the wizard, this line:
1. prepare_imgfs.exe OS.nb -nosplit
should be:
prepare_imgfs.exe 80040000-OS.nb –nosplit
see if that helps...
prepare_imgfs.exe 80040000-OS.nb –nosplit
Click to expand...
Click to collapse
I used that one only, and I have no probs with the "prepare" and "view" commands. I correctly get the bin files as well the modules/files are correctly extracted. I have problem with the "build" and "make" commands.
side question. should have thought of this earlier. how do you know its not updating? its been stated that this file will for some reason not change date/time and size.
hopefully that helps.
see this post:
http://forum.xda-developers.com/showpost.php?p=1110892&postcount=13
see this post:
http://forum.xda-developers.com/show...2&postcount=13
Click to expand...
Click to collapse
oopsie I am sure I read that post some time ago when I was collecting all the info for ROM cooking, but somehow forgot abt it when I started. Thnx for reminding
But There's another problem after this. When I run make_imgfs command it gives me some weird characters, however, a couple of posts above the one that you pointed at, there is a comment that I've to give the name of the old file only instead of new one. Will try that tonight when I go home and report back.
Thnx for the help dude
Anyways, another question:
This one is about the "universal id" part (dont remember the name of the app correctly, smthing like genuuid), for which all packages do we have to use this app? I mean if I wanted to add an executable (say a.exe) to the ROM, is it enough to simply add it to the "dump" directory and follow the build/make path or do I have to use the genuuid app path, or is this app used for some special kinda apps?
Thnx in advance. I'm not a newbie by any means in programming, GSM, and programming for GSM etc (I work in a Nokia GSM BTS project ) but am cooking a ROM for the first time.
yupz, worked...I was able to rebuild the rom. (Though the size/date-time stamp of the final 80040000-OS.nb also remains the same as the older one. I take that to be OK like the same thing happening with img_raw_data.bin. Haven't flashed the ROM onto my phone to see...)
Moreover, about the uuidgen program, I found out that it is bepe's way of doing it. We can do it the mamaich way that is simply add the programs that we want to the /dump folder and rebuilding. Correct me if I'm wrong.
Now that I've tested the waters, I'm on to making a custom ROM myself...
Thnx xda-dev...
shantzg001 said:
yupz, worked...I was able to rebuild the rom. (Though the size/date-time stamp of the final 80040000-OS.nb also remains the same as the older one. I take that to be OK like the same thing happening with img_raw_data.bin. Haven't flashed the ROM onto my phone to see...)
Moreover, about the uuidgen program, I found out that it is bepe's way of doing it. We can do it the mamaich way that is simply add the programs that we want to the /dump folder and rebuilding. Correct me if I'm wrong.
Now that I've tested the waters, I'm on to making a custom ROM myself...
Thnx xda-dev...
Click to expand...
Click to collapse
Hi shantzg001
i too am doing similar steps and all gone well ( i.e breaking/rebuilding).
but im surprized why dump dir size is extremaly different in compare to
imgfs_raw_data.bin . I tried some OS.nb and got the size of dumb approx
456kb or 368 kb or some MBs. Also dump dir contains only some modules and
some files.
Am i doing some mistake or u too r getting similar result
reply ASAP
thanx
nandlal
That seems strange, because in my case the dump folder is even bigger than the bin file (more than double the size)..
Can you list out the exact steps that you are following, and which ROM were you breaking apart?

Modded Cappackage.pxp Files

So I thought it would be worthwhile to create a thread focusing on modified "cappackage.pxp" files. These are the files which control the default carrier specific configurations. In my case, I am running the Aussie "Three" WM6 OS, however I wanted some, but not all, of the ATT customizations. For example, I wanted the proxy tool, the logos and the certs . . . Attached is a modified version of the ATT cappackage.pxp file. I had difficulty configuring WindowsMobileLive.cab and the HTC task manager to automatically install as part of this new file so I will post those cab files as well for convenience (for those who may want it).
If you have a customized cappackage.pxp, please post it in this thread and describe how it has been modified so everyone can decide which they may want to use.
Here are the changes I made to the cappackage.pxp file. Note, all of these .cab files should be possible to install directly simply by extracting from original ATT WM6 cappackage.pxp in case you happen to need one of them:
delete getgood.cab
delete getmail.cab
delete realplayer.cab
delete getmobitv.cab
delete cmradio.cab
delete attmallandmusic.cab
delete musicid.cab
delete jarguarrm.cab
delete gettelenav.cab
alter "Att_Settings.prov.xml" to remove messaging and Windows Mobile Live registry customizations
add install of new devstate.dll (exists in 3AUS cappackage.pxp and also in ROW 2.23 cappackage.pxp)
ABS
EDITED 12-30-2007: Note - this altered cappackage.pxp file is based off the "leaked" ATT WM6 ROM.
abs99 said:
So I thought it would be worthwhile to create a thread focusing on modified "cappackage.pxp" files. These are the files which control the default carrier specific configurations. In my case, I am running the Aussie "Three" WM6 OS, however I wanted some, but not all, of the ATT customizations. For example, I wanted the proxy tool, the logos and the certs . . . Attached is a modified version of the ATT cappackage.pxp file. I had difficulty configuring WindowsMobileLive.cab and the HTC task manager to automatically install as part of this new file so I will post those cab files as well for convenience (for those who may want it).
If you have a customized cappackage.pxp, please post it in this thread and describe how it has been modified so everyone can decide which they may want to use.
Here are the changes I made to the cappackage.pxp file. Note, all of these .cab files should be possible to install directly simply by extracting from original ATT WM6 cappackage.pxp in case you happen to need one of them:
delete getgood.cab
delete getmail.cab
delete realplayer.cab
delete getmobitv.cab
delete cmradio.cab
delete attmallandmusic.cab
delete musicid.cab
delete jarguarrm.cab
delete gettelenav.cab
alter "Att_Settings.prov.xml" to remove messaging and Windows Mobile Live registry customizations
add install of new devstate.dll (exists in 3AUS cappackage.pxp and also in ROW 2.23 cappackage.pxp)
ABS
Click to expand...
Click to collapse
Thanks, any idea if we can add another carrier in the carrier_db file that isn't there?
john_99 said:
Thanks, any idea if we can add another carrier in the carrier_db file that isn't there?
Click to expand...
Click to collapse
I honestly do not know. Sorry. You might ask Olipro as he seems to be very knowledgeable.
abs99, what tool did you use to repackage your PXP file. I've tried several archive tools to .ZIP and rename, but no joy. I've looked, but can't find any info on PXP file creation. Surely, I'm missing something simple here.
TIA
I found that "winrar" can handle the files without a problem. I had also noticed that the date stamps were the same for all the files in the original package, so I also use a tool called "stamp it" to set all the dates on all the files in the new package to the same original date.
thanks. I found that 7-zip is working too.
Now, the next step, I'm trying to mod the capdata.xml file and for whatever reason the device will not recognize it after my mods.
Here's my version of an ATT config file:
Code:
<?xml version="1.0" encoding="utf-8" ?>
- <Varnish xmlns="http://www.ephox.com/product/editliveforxml/document/Untitled20062026011007629">
<Version />
<Notes />
<UpgradePath>always|</UpgradePath>
- <PolA>
- <Certificates>
<File>CingularCert.prov.xml</File>
</Certificates>
- <Certificates>
<File>Class3_PCA_G2_v2.xml</File>
</Certificates>
- <Certificates>
<File>entrust_gssl_ca.prov.xml</File>
</Certificates>
- <Certificates>
<File>RSA1024RootCA.prov.xml</File>
</Certificates>
- <Certificates>
<File>RSA2048RootCA.prov.xml</File>
</Certificates>
- <Certificates>
<File>VeriSign_C3_PCA_G3v2.prov.xml</File>
</Certificates>
- <Ringtone>
<File>AT&T Tone.wav</File>
</Ringtone>
- <ProvXML>
<File>ATT_Settings.prov.xml</File>
</ProvXML>
- <ProvXML>
<File>MSFPHeartbeat.prov.xml</File>
</ProvXML>
- <ProvXML>
<File>ResetRequired.prov.xml</File>
</ProvXML>
- <InstallApp>
<File>WindowsLive.CAB</File>
</InstallApp>
- <InstallApp>
<File>ATT_Theme.CAB</File>
</InstallApp>
- <InstallApp>
<File>ProxyManager.CAB</File>
</InstallApp>
- <InstallApp>
<File>ATT_Content.cab</File>
</InstallApp>
- <ExtractZip>
<From>DevState.zip</From>
<To>\Windows</To>
</ExtractZip>
</PolA>
- <Welcome>
<WaitImage>E_PolishImage.bmp</WaitImage>
</Welcome>
- <Sweatshop>
<AccountName>GEN</AccountName>
<VarnishName>ENG</VarnishName>
<BuildName>005</BuildName>
<User>[email protected]</User>
<Environment>Sweatshop QA Staging</Environment>
<CoreVersion>1.9.9</CoreVersion>
<Treo750Version>3.0.0</Treo750Version>
<DateStamp>Wed Aug 22 6:10:15 PDT 2007</DateStamp>
</Sweatshop>
</Varnish>
Any thoughts? This is just a basic mod and plan to get more detailed configs in there once I figure out what I'm doing wrong.
TIA
The issue with this file may be that editor you are using is adding "white space". I found that some editors caused this to occur. I ended up the file in notepad to avoid the problem as it was a real mess to deal with any other way. You should open the original unedited file and your new edited file in notepad and compare both. For whatever reason, the OS does not like to deal with a properly formatted .xml file!
Thanks mate, the white space and file size were the culprit. Was trying to cheat and use MS xmlnotepad - very easy to use, but it added the whitespace as it made it pretty to look at. I also was trying to cram too much into my archive; the extracted archives need to fit in the 8.4mb along with the archive itself.
Attached is a custom CapPackage.PXP with the following (based from ATT 2.25 ROW, CapPackage.PXP):
ATT Theme
Regional Settings: US, - 5 EST
ExtROM mount and rename
Custom ringtone
Custom Sounds Settings
Delete poutlook.lnk from startup
Set Hello to ATT
Disable CAB security policy
Removed all ATT applications (CV, real, win live, etc)
TODO: Incorporate RegHacks of additional settings customization and tweaks (lots of typing...), right now I install and merge the apps I want after initial setup completes.
Cheers
HOW TO
***always a good idea to backup existing files before attempting any modification***
1. mount your extended rom (search for the cabs and instructions on this site)
2. copy the CapPackage.PXP from ExtendedROM\Partition to your PC
3. extract the contents to a folder named CapPackage on your PC (any ZIP compliant archive tool will do)
4. remove/add the *signed* cab files your desire (unsigned cab files simply get passed over)
5. open capdata.xml in epcEDIT or notepad.
6. add/remove the configuration information as desired - this is where some trial and error comes in trying to determine what commands control what function.
7. ZIP (no other archive format seems to work) the CapPackage folder to CapPackage.PXP (or rename .zip to .pxp).
8. copy to ExtendedROM and hardreset.
TODO:
-Hope to be able to post a list of commands for the XML to enable configure of most if not all device "settings"
-Hope to figure out a way to get unsigned cabs to install (present workaround is a zip extract and registry commands if the app isn't too complex (e.g. lots and lots of typing required)
--Not sure yet if reg hack setting "HKLM\Security\Policies\Policies' valuename '0000101a' to dword:1" will resolve this during initial setup
Okay, after getting my questions about how this all works and saves the space on the phone, I took the plunge and upgraded from 2.23ROW to 2.25ATT. Went smooth as butter, and I have a "decrapified" phone with the official, supported ATT release (just in case I have any problems and need support).
Of course, being a hacker, now I'm totally intrigued by this cappackage customization, and want to play with it myself. So, Tim et. al., two questions:
Does the capdata.xml file have to match the contents of the archive? Or, if something's missing, it's just ignored? I'd like to be able to delete some more stuff and remake the PXP file without having to hassle with the XML file and run into the problems you have (workable, but I just don't want to waste time on whitespace issues if I don't have to).
Does the carrierDB file need to stay in the extended ROM for any reason after install and setup? I'd like to archive it on my PC, and delete it from the extrom so I can use that space for general storage.
microsoft word has a wonderful xml file editor. rather than try and keep everything straight in that jumbled up mess you get out of notepad or some other editor, word indents all the xml, and makes it look like it should. it was a snap to edit. I used Winrar and opened the PXP file. I never extracted the contents. Just the capdata file. I edited it, and then put the edited version back into winrar. using winrar I deleted the files I didn't want. saved the archive and moved it back to the device.
dwallersv said:
Does the capdata.xml file have to match the contents of the archive? Or, if something's missing, it's just ignored? I'd like to be able to delete some more stuff and remake the PXP file without having to hassle with the XML file and run into the problems you have (workable, but I just don't want to waste time on whitespace issues if I don't have to).
Does the carrierDB file need to stay in the extended ROM for any reason after install and setup? I'd like to archive it on my PC, and delete it from the extrom so I can use that space for general storage.
Click to expand...
Click to collapse
1. The XML will bypass anything it can't actually do.
2. I have tried it both ways and feel like I've had no issues, but I have seen some reports of strange behavior without it. I currently have it in my ExtROM since I hard reset my device often as I test apps and config settings. If you don't hard reset very often then once the device is hard reset you may delete and gain an additional 1.45mb.
The thing I intend to work on next is creating a provisioning XML to call an external XML (outside of the cappackage). I'm hoping this way I will be able to strip even more out of the cappackage (literally everything but the capdata.xml) and hav an on the fly configuration capability and call installations and configuration from the SD card. Haven't had much time to play with it though.
Can someone help point me in the right direction to get start loading the cappackage. I can't seem to find how to mount the extended ROM. I did a search for it and everything that came up didn't explain it (or at least I didn't understand it if it did).
Hmm, I can't seem to find the original thread either. Really just registry entries, but the cab's make it easier.
See attached...
Run each in order, then soft reset
Cheers
FYI: You can use my cappackage (see pg 1) as a starting/reference point for building the extROM mount into the initial config process after hard reset...
Try this. ...............
sodak said:
Can someone help point me in the right direction to get start loading the cappackage. I can't seem to find how to mount the extended ROM. I did a search for it and everything that came up didn't explain it (or at least I didn't understand it if it did).
Click to expand...
Click to collapse
Thanks to both of you for the quick response
I don't know whether it is because of this or because of something else. But I started modding this CapPackage file, and all of a sudden my treo just started acting weird. I had to hard reset it several times throughout the day. Then I upgraded to the 2.25 WM6. And that is where **** really hit the fan (I upgraded and put my own CapPackage version in it). And after that I've had nothing but trouble. Soft resets didn't work anymore, it just crashed on the boot screen. Hard resets work, but really slow, takes about 20min. So now I'm re-upgrading to 2.25 and just leaving that CapPackage file alone for now .
The tale away message: Don mess with this unless you know what you're doing, which isn't me
-Robert

Creating your own ROMs

I am a software developer by trade and so I hope I will be comfortable with creating my own ROM. However, I have no idea where to begin! Can anyone point me in the right direction?
on the wiki you can all read about it.
xmoo said:
on the wiki you can all read about it.
Click to expand...
Click to collapse
Thanks for the quick replu xmoo. I've had a look there before but it's not answering any questions. I have no idea what dev environment I need nor how to do it. Am I missing something or is it just my Sunday head?
you need a kitchen, in the kitchen you unpack a ROM image, you then exchange, remove or add files to the extracted ROM image. then you repack it. thats it. no programming skills involved.
and all information regarding kitchens can be found in the wiki, I did at least.
schaggo said:
you need a kitchen, in the kitchen you unpack a ROM image, you then exchange, remove or add files to the extracted ROM image. then you repack it. thats it. no programming skills involved.
and all information regarding kitchens can be found in the wiki, I did at least.
Click to expand...
Click to collapse
Thanks for the info.
I have Hard-SPL'ed my X1 and am ready for a new ROM now. I have downloaded a NBH file and used the NBHUtil to unpack it. Is this the point at which I customise the individual parts? If so what do I use to do this with the NB files?
NBHUtil is not a kitchen, its a utility only. And NB files are just the components of the NBH file, like a NB for the radio part, a NB for the OS part, a NB for ... you get the idea. The actual contents (exe, dll, eg.: files that ARE windows mobile) are encoded inside the NB's.
Search for "RaphaelKitchen" version 0.62, download that. Once you got that far, get back in here and I'll give you the config files you'll need for the RaphaelKitchen.
Instructions on how to do what: http://forum.xda-developers.com/showthread.php?t=427507
In that message, leave out the parts about dumping and get directly to the instructions for the kitchen. The actual "cooking" (thats what its called, hence its called a kitchen) comes between instructions "e, b (for dumped ROM),space key" cuz now you just unpacked the ROM and you have tons and tons of DLLs, EXEs, eg.: you unpacked the NBH in NBs and decoded the NBs to its contents.
You cook by removing and adding stuff to the respective folders.
After you did that, continue by following the post: "c, a, press BuildOS Play icon and wait to finish, Close BuildOS, close PagePool Changer and press space" which equals putting the files back together and compiling a new NBH which you can flash...
and i'm sorry but the WIKI acutally REALLY does explain all that:
http://wiki.xda-developers.com/index.php?pagename=Kaiser ROM Kitchen Tutorial
The RaphaelKitchen is a modified version of alex kitchen for the kaiser, it is essentially exactly the same.
Cheers Schaggo!
I was looking at the Xperia Wiki not the main Wiki My bad sorry.
I'll give this a go later and report back
No problem, no problem. As I said, as you start cooking, get back in here and I'll provide pre-edited config files with all the settings for the X1.
schaggo said:
No problem, no problem. As I said, as you start cooking, get back in here and I'll provide pre-edited config files with all the settings for the X1.
Click to expand...
Click to collapse
Hi, could you provide the pre-edited config files for X1? Thanks.
Ok so here's what I have done:
Download and unpacked RaphaelKitchen 0.62 as stated.
Ran it with 'e' then 'a' as the command line parameter to extract the NB files again (just to see).
Found all the NB files in BaseROM folder and a sh*tload of mixed files in the temp folder. At the root I have a couple of BIN files as well as some NB related files. dump_imgfs and dump_xip are the main folders in there with lots of bits beneath then. Is this right?
Then ran the build ROM commands as you stated. Pagepool wasn't open though(?) or couldn't see it anyway. Everything else went to plan and I got a NBH file in the end.
I expected the packages folder to be populated but nothing went in. Has this all gone to plan?
**Edit: Also never saw PagePool **
Here is the extra config you need for X1
Extract and put the files in the root of the RaphaelKitchen.
Run "X1Kitchen.CMD".
This is what I am using for "e"xtract and "c"ook a room and it's working perfectly w/ me. Other options is not tested or use by me.
I even added/modded some more files. Replace all files and run RaphaelKitchen.cmd and continue as instructed in the manual.
Cheers guys. Will try this config tonight and get back to you
In the extract ROM there are two options:
- one needs RUU_signed.nbh only
- the other one needs RUU_signed.nbh + part01.raw and part02.raw
which is the right one to choose? if b): where do i get those files?
/edit: never mind, figured it out myself
Flashing now :-D
For future reference, if some more people ask:
if you just want to unpack an existing ROM image (nbh-file) use option 1. this unpacks the file and fills up the folders with the files to cook with.
if you want to reconstruct a ROM you (or someone else) dumped from his device, chose option 2. this decodes the raw-files (dumps) according to (simply spoken, please forgive my inaccuracy ) the template which is given by the nbh-file. without the nbh-file the kitchen doesnt know how to decode the raw-files, it needs a reference file (the nbh) to do so.
hi i'm a noob to the whole wm scene and i'd like to learn how to cook my own roms as well. I've downloaded the kovsky kitchen but i can't find anywhere on how to use it. i've looked in the wiki but can't find how to use kitchens. maybe i've overlooked something. at any rate, if someone could post a link on a tutorial or any info that could get me started, it'd be greatly appreciated. thanks in advance
figurine said:
hi i'm a noob to the whole wm scene and i'd like to learn how to cook my own roms as well. I've downloaded the kovsky kitchen but i can't find anywhere on how to use it. i've looked in the wiki but can't find how to use kitchens. maybe i've overlooked something. at any rate, if someone could post a link on a tutorial or any info that could get me started, it'd be greatly appreciated. thanks in advance
Click to expand...
Click to collapse
take yer pick, but the first one looks okay!
http://www.google.com/cse?cx=000825...orial&sa=Search&cof=FORID:0&ie=utf-8&oe=utf-8
thanks! one more thing... should i backup my original rom? if so, how do i do this?
Hypercore and X1 "kovsky"
i just had to ask, well kovsky kitchen works for the experia right? so hypercore multidevice, shows no experia or kovsky config, #11 post says raphael kitchen xperia.cmd, so you can use that kitchen for x1 as well, so how do you get hypercore/X1? to work

[REF|TUT] My first Rhodium ROM - Completed

I’ve started cooking my own ROM’s only a week ago. I wanted to share my experiences here as it’s not as easy as it seems Well, with the right settings, tools, references, etc it makes it easier though. So this is my sharing back to the community, my tutorial/reference guide on how to cook a ROM.
The result of my days of hard work is named DaxyROM and can be found here.
If you want to start cooking, be prepared to read a lot and spent a lot of time trying your home cooked meals. But when it boots and works as expected, you’ll enjoy all the time spent.
There are 3 steps I’d like to discuss in the following 3 posts:
1) Basic ROM extraction and cooking
2) Adding / Removing programs
3) Upgrading your XIP/SYS (aka install new OS version)
First of all get to know what you’re dealing with. Understand what SYS/EXT/OEM/ROM/XIP is ‘cause at the end of the week you can’t think of anything else. Good source here.
1 Basic ROM extraction and cooking
I’ll be using the Ervius Visual Kitchen and the official WM6.5 ROM from HTC to start with.
* Download Ervius Visual Kitchen. Always use the latest version.
* Download WM6.5 ROM’s from HTC
* Download CustomRUU.exe
Preparing the kitchen:
Extract Visual Kitchen (VK) to C:\Kitchen (will be refered to as Kitchen now)
Create a directory in the Kitchen named RomDump
Open the WM6.5 HTC ROM .exe file with Winzip
Extract the file named RUU_signed.nbh to the RomDump directory
Now open the Kitchen (erviuskitchen.exe). Ignore the warning messages
Click on the bottom left button named “Dump nbh/nb/payload”
Open the RUU_signed.nbh file and wait till it’s completed.
Enter the Kitchen\RomDump\dump directory
Move all files to Kitchen directory
There seems to be an issue with kitchen_build_rom.bat while building your ROM.
Modify your kitchen_build_rom.bat file from this:
Code:
set DSM_TEMPLATE=%dsm%
set DSM_INCLUDES=*
REM **************** TOOLS\platformrebuilder.exe
if not "%errorlevel%"=="0" goto error
To this:
Code:
set DSM_TEMPLATE=%dsm%
set DSM_INCLUDES=*
REM **************** TOOLS\platformrebuilder.exe
REM **************** if not "%errorlevel%"=="0" goto error
You’re now ready to go.
Built your first ROM – The Visual Kitchen Basics:
Click on the pull-down menu next to RHODIUM and select RHODIUM
Ignore the messages. You’ll see the screen building now
Fill in the name of your ROM at the ROM ver. Field
Check the “Real WM 6.5 AKU” field
Click on the “Other” button
Change the –PP value from 6 to 18 and click on the Close button
Save the settings: hit the “Save ROM” button. Filename must end with extension .erv.
You’re ready to hit the Create ROM button
Wait till it finishes
Now open the Kitchen\RELEASE_Rhodium directory
Copy the CustomRUU.exe to this directory and run it
You’re now running the HTC WM 6.5 ROM rebuilded by yourself
Right now your kitchen is ready to use and you can modify it as much as you like.
Part 2: Adding / Removing programs
Right now we know that the kitchen works. We have rebuiled the official version and it boots up fine. Make sure to test your extracted ROM works otherwise you will loose a lot of time. Now it's time to make changes. Keep in mind that the following is what I've teached myself and that there might be better methods in adding/removing packages.
The easiest is removing packages. Just double-click on the package and it won't be included. If you want it back, just double-click again and it's back in. Easy as that.
Keep in mind that you can't remove OEM packages and that if you're removing packages from the SYS you have to be carefull as you might run the risk you remove a core application and that Windows won't boot anymore. You can however safely remove packages like LiveSearch, MSTag, OneNote, etc without any problems.
The EXT directory is where all packages reside. This directory is devided in 2 sub-directories. One for Rhodium specific packages and one for Shared platforms. By default all applications are in the Rhodium directory but you might want to change this manually to Shared if you're planning on building for multiple platforms. For now we'll keep them in the Rhodium directory.
You need to either find EXT packages online, or you need to convert CAB files to EXT packages. That is basically it.
I've found a lot of new EXT files here: http://www.everythingdiamond.info/showthread.php?t=94. You can download new EXT folders and copy them into the VK\EXT\Rhodium\<built>\Rhodium_External_Packages directory. Now load VK and Load your previous saved config. Scroll down the list and you will see your new package. This package is not yet included in the Kitchen. This is useful if you're upgrading packages so you'll know which one is new and which one is old.
If you're upgrading packages, keep in mind that some do depend on each other. For example Manila heavily depends on all kinds of other packages. When you're upgrading one, upgrade the others as well unless you're certain there are no dependances. You'll find out when your upgrading. Make sure to safe your work very often so you can always revert back to your previous situation.
As I mentioned you can also convert CAB's to EXT. This can be done using the package-creator from Ervius. TotalFire Package Converter does the job as well, but I haven't used it yet.
Download your application as cab file. Open the package converter, open the cab file and it converts to an EXT directory. This EXT directory can be copied into the kitchen again.
Adding your own EXT is more complicated. For example if you want to create a package which holds all your registry tweaks.
You can either download this file and change the .reg file, or you can take the hard way and learn by using this tutorial: http://www.mediafire.com/file/j15nqfzkwz5/CreatingOEM.zip
Both are written by user kwbr. See here for more info: http://forum.xda-developers.com/showthread.php?t=480714.
I believe this concludes this section. You should be able to add and remove packages right now. Next stop, installing a different Windows build.
Please sent me feedback on how to improve my posts.
Part 3: Upgrading your XIP/SYS (aka install new OS version)
It's time for the last part of my Tutorial. This time I will explain how to upgrade your XIP/SYS.
First you need to find your new XIP/SYS. I get mine WM 6.5.1 at http://forum.xda-developers.com/showthread.php?t=544445 but there are probably more sources.
First you need to know what to get. If I'm taking the above URL as example, there are several files.
The first one you need is the XIP/SYS one. This however is the OS for a screen resolution of 480x600 (The Touch Pro2 has a screen resolution of 480x800). You still need this file as it the the base OS combined with the (wrong) resolution files. That's why you need the 2nd file named "0409 USA English United States (Includes COMMON DPI, required for others)" as well. This is the english version for all resolutions.
The first file you can just extract in your SYS directory. It will create a new directory with the new build number and a directory named Shared.
The Shared directory you need to move to your ROM directory. This means you end up with a new build number in the Shared directory.
Now we just need to make sure the resolution files are copied. This means you need to copy a list of directories. At first create a directory named SYS\<build>\dpi_192_resh_480_resv_800. Just extract the complete 0409 Language file into a temp directory and the create the following directory structure by moving directories:
Code:
SYS\<build>\dpi_192_resh_480_resv_800\0409\Base_Lang_0409_DPI_192_RESH_480_RESV_800
SYS\<build>\dpi_192_resh_480_resv_800\0409\Themes_Lang_0409_DPI_192_RESH_480_RESV_800
SYS\<build>\dpi_192_resh_480_resv_800\COMMON\base_dpi_192_resh_480_resv_800
SYS\<build>\dpi_192_resh_480_resv_800\COMMON\MediaOS_dpi_192_resh_480_resv_800
SYS\<build>\dpi_192_resh_480_resv_800\COMMON\Phone_dpi_192_resh_480_resv_800
SYS\<build>\dpi_192_resh_480_resv_800\COMMON\Redist_dpi_192_resh_480_resv_800
This concludes the SYS, now the XIP.
The zip file you downloaded also contains a directory named "MSXIPKernel".
Extract this directory to your ROM\Shared\<build> directory.
Now go into the directory ROM\Rhodium.
Inside the builds you can find the OEMXipKernel which are basically the device specific drivers.
Usually these drivers don't change, unless you are upgrading the OEMXipKernel using a newly released ROM from HTC.
For now you have to copy the original build directory over to the new directory and you're done.
Right now your OS is ready to cook:
Open your Kitchen
Open your saved configuration file
Change the XIP and SYS versions (top right) to the new build version
Hit the Create ROM button
You're all set
After creating your new SYS, I suggest changing some default values. For example changing Unsigned Themes/CAB Policies:
Open the file named OEM\Rhodium\0409\Operator Pkg\mxipupdate_oemoperators_100.provxml
Find the section <!--337.01_SecurityPolicy-->
Add the following lines:
Code:
<parm name="4101" value="8" />
<parm name="4102" value="1" />
<parm name="4122" value="1" />
<parm name="4103" value="16" />
<parm name="4097" value="1" />
Save the file
Cook your ROM
Basically this means:
ID 4101: Unsigned CABS Policy = 8
ID 4102: Unsigned Applications Policy = 1
ID 4122: Unsigned Prompt Policy = 1
ID 4103: Unsigned CABS Policy = 16
ID 4097: Unsigned Prompt Policy = 1
Now you won't get warnings if you install unsigned applications etc.
One last thing to keep in mind. Don't forget to grab a new version of the OEM directory once it gets released by HTC.
I've ran into a situation where ActiveSync ran out of memory and a new OEM fixed this.
Thanks
Ervius: Big thanks to Ervius for his great Kitchen and Package creator: http://forum.xda-developers.com/showthread.php?t=469420
Da_G: For providing the latest WM builds: http://forum.xda-developers.com/showthread.php?t=544445
hilaireg: For providing his tuturial which was my starting point: http://forum.xda-developers.com/showthread.php?t=521632
kwbr: For his tutorial on creating applications: http://forum.xda-developers.com/showthread.php?t=480714
Everyone I forgot to add. Make yourself known and I'll add you of course!
This concludes my Tutorial. I hope you find it useful. Please feel free to provide feedback so I can adjust the tutorial or provide answers.
Eventually I may try cooking my own ROM.
Not because I can't find any good roms out there.
But just for the simple fact that I want to learn how to do it.
Thanks for taking the time to write this all up.
Just what I was looking for. I have been searching and reading and searching and reading but not getting anywhere. After following your post I've dissasembled a ROM, renamed it, and then reassembled it.
Now I was just following a recipe and didn't understand everything that happened (what is the -PP value and why am I changing it?) but I'm finally making some progress. Looking forward to your upcoming posts.
BTW, I just used the official TMo US 6.1 ROM that CDGuider dumped and made available. It'll do while I'm learning but I'm really waiting for the Official TMo US 6.5 to be released so I can use it as the main ingredient.
S
sleonard said:
Just what I was looking for. I have been searching and reading and searching and reading but not getting anywhere. After following your post I've dissasembled a ROM, renamed it, and then reassembled it.
Now I was just following a recipe and didn't understand everything that happened (what is the -PP value and why am I changing it?) but I'm finally making some progress. Looking forward to your upcoming posts.
BTW, I just used the official TMo US 6.1 ROM that CDGuider dumped and made available. It'll do while I'm learning but I'm really waiting for the Official TMo US 6.5 to be released so I can use it as the main ingredient.
S
Click to expand...
Click to collapse
Let me know if I missed something. I had to do it from the top of my head so if I forgot to add an action, let me know and I'll add it.
PS, the -PP allows you to change the PagePool size (sort of swapfile for WM).
Some people set it to 0, some to 12-18. I found 18 to be working fine. I must admit that I have too little knowledge to truly understand the PP stuff to come to a clear correct value (I believe it's questionable, the values).
If anyone disagrees, let me know
This is a great post.
I've subscribed because I'm really interested in learning and once I've ran through it myself will reference it on my site for all to use.
Well done you, supply and demand.
Daxy, On Tuesday I get my Pro2 and begin to try. Thanks for a great post!!!!!!!!!!!!!
I download the files of 23069, for example, where should I hold?
Xip and sys...
Awesome Information!! Thanks a lot and I appriciate it because rarely people share knowledge!
Thanks for the clear tutorial! Looking forward to future updates!
really excited to start making my own roms...
thank you for taking the time and making this
hopefully in the future ill be able to contribute to the community...
my touch pro2 could use some of my own flavor lol
thanx for the effort ...
gonna read thru it when i am more awake ... lol ... this seem to be what i am looking for ... wanna cook my own rom but proper info is few and far between for the rhodium ... unless i waslooking in the wrong places ... hehehe
I have used this tool to dump official rom, it works. But when i dump others' customized roms, it always says 'lost XIP'. why?
Thanks all for your kind words.
I've updated Post 2: Adding / Removing programs
Hope you like it. Please let me know if anything is missing.
Next post will be regarding using a new version of Windows, where to place files etc. This one should be up in a couple of days.
eddy16112 said:
I have used this tool to dump official rom, it works. But when i dump others' customized roms, it always says 'lost XIP'. why?
Click to expand...
Click to collapse
Customized ROMs are protected. You cant dump them. You can only dump official ROMs.
eddy16112 said:
I have used this tool to dump official rom, it works. But when i dump others' customized roms, it always says 'lost XIP'. why?
Click to expand...
Click to collapse
ai6908 said:
Customized ROMs are protected. You cant dump them. You can only dump official ROMs.
Click to expand...
Click to collapse
Correct! even if the customized rom was unprotected you still would not be able to rebuild a rom off of it because of the loss of rgu's and dsm's in the origional building process. would be very difficult.. best thing to do is ask for the kitchen files from the chef and hope they can share.
edit: one thing you can do is use an app called rom imaged editor and open the nbh with that, you can grab individual files out, even protected roms you can.. then you can add things on your own.
I've changed the topic to My first Rhodium ROM. Though it would sound better.
joshkoss said:
edit: one thing you can do is use an app called rom imaged editor and open the nbh with that, you can grab individual files out, even protected roms you can.. then you can add things on your own.
Click to expand...
Click to collapse
I have extracted files from kooked roms no biggie. saves time from flashing for sure...
I have tried to extract all files from kooked rom too, and it seems to work. but might be able to use some dll files.
Everytime I build the ROM (rebuilding the stock rom, not config changes) towards the end the kitchen gives me a runtime error, I have tried on a 64-bit vista and 32-bit XP.
After reviewing the log it appears that the problem is:
Executing: kitchen_build_rom.bat.....
ERROR! (errorlevel: 1)
ERROR executing: kitchen_build_rom.bat
ERROR!!!
Wait some seconds...
No ''SVN'' folders present...

Categories

Resources