Modded Cappackage.pxp Files - Palm Treo 750 ROM Development

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

Related

initflashfiles.dat -- Help Needed

So I've been playing around for a little while with the intention of creating my own custom ROM. I think I've got everything all figured out - however I'm having a problem that I think is related to the initflashfiles.dat file. Basically, after flashing my new OS ROM, my 8125 hangs at the splash screen with the version numbers on it. As a test, I redid my modified ROM, except I used the original initflashfiles.dat - this worked just fine. Tried it again by building the ROM with my modified initflashfiles.dat - same problem.
Here are the steps I'm going through.
1. Parse out the nk.nbf file using typhoonnbfdecode -x
2. prepare_imgfs 80040000-OS.nb -nosplit
3. viewimgfs imgfs_raw_data.bin
4. Modify contents of dump directory. Basically I've deleted files I don't need and added new ones.
5. Modifiy initflashfiles.dat (which I've attached). After modifying the file I open it in a hex editor and remove the first two bytes - making the first byte 3B (";"). I save it and mark it as read-only.
6. buildimgfs
7. make_imgfs 80040000-OS.nb -nosplit
8. Run nb2nbf_tornado.exe. I do run this correctly, using the correct memory address for the OS .nb file.
9. Put the new nk.nbf into an existing RUU self-extracting archive and run it.
It really seems like it's the initflashfiles.dat file - as I've successfully loaded this ROM with the original file (its really not the original, it's from a summiter ROM that I'm basing mine off).
Any thoughts?
I'm going to bump this once just in case people missed it originally.
I've messed around a bit more, and have pretty much isolated that this is my problem - but for the life of me I can't figure out what I'm doing wrong.
CameronJ said:
I'm going to bump this once just in case people missed it originally.
I've messed around a bit more, and have pretty much isolated that this is my problem - but for the life of me I can't figure out what I'm doing wrong.
Click to expand...
Click to collapse
Hi,
i see that the file you've attached isn't actually a .DAT file. It is a .dat.TXT that's the same that saying it's a TXT file!!!
If the file you're putting inside your ROM is this very same file (.dat.txt) then you've found your problem: you need a .DAT and NOT a .dat.txt file!!!
Try following this procedure on your PC (i suppose you're using XP or 2003 server):
- open a folder (whichever folder you like, it's not important)
- on the Tools menu click Folder Options.
- click the View tab.
- clear the Hide extensions for known file types check box.
- press OK
PS: Here is an illustrated guide on how to show file extensions
Now go to the place where your initflashfiles.dat is. If the file is named 'initflashfiles.dat.TXT' (like the file you uploaded in this forum) then:
- select the file
- press F2 (or right click and choose 'Rename')
- remove the tailing .txt from the name
Finally:
- let us know if it worked
Bye bye
risidoro said:
i see that the file you've attached isn't actually a .DAT file. It is a .dat.TXT that's the same that saying it's a TXT file!!!
Click to expand...
Click to collapse
:lol: Thanks for the reply.
I had to add the .txt extension otherwise the forum wouldn't let me upload the file (.dat files are not on the list of available file types for upload).
When I loaded the file I meant to put that explanation in there but forgot before I finished the post.
Hi. I don't know if you're still working on this, but I'd like to share with you my experience last night. I examined your initflashfiles.dat, and it is perfectly ok.
As I see in your initflashfiles.dat, there are a lot of folder customization like:
Directory("\Program Files\Task Manager"):-File("taskmanager.exe","\Windows\taskmanager.exe")
There is nothing wrong with this as we need the file to be in the right location. BTW, THIS FORMAT WORKED FOR ME. Just a thought, you might be editing the default.hv and user.hv (hives) to put in the registry keys of some applications?
My device (Himalaya) did not start out correctly and did not execute the initflashfiles.dat, BUT when I connected my Hima through active sync, you can actually explore the contents. SO, in this non-working state, I experimented in tracing the culprit, by restoring a couple of the original files I edited. I found out that it has something to do with the way I edited the hives.
Steps I made in experimenting:
1. I sync my Hima to my PC.
2. Copied the original default.hv to \windows directory
3. Hard Reset Hima, BUT answer NO to all three boot options
4. My Hima started normally and executed initflashfiles.dat to the detail.
Discovery from experiment:
1. The files were only copied to the directory were we wanted it, BUT the original file is still in the \windows directory. Therefore, we did not save storage memory.
2. We only benefitted from an already installed app built into the ROM.
Hope this gives you some insight.

Run SD Cab with autorun.exe

hello
i need to add a username into the registies for a number of devices i'm flashing. Unfortunatly the usernames all need to be different i.e. PDA001, PDA002 and so on...
I've created a number of different cab files each for a different device that will add the username in.
So is it possible to run the cab file off the storage card as part of the hard reset process. i've updated the SD card with the file Username.cab which is the name of all the cab file, then added "CAB: \Storage Card\Extended_ROM\Username.cab" in to config.txt which is in the Extended ROM. i tested it but it didn't work.
Has anyone got any ideas
Or may be have a shortcut to the cab file added into start up. Would that work?
I'd suggest that you instead edit an existing (or relatively insignificant) CAB file (that you'd probably have no use for anyway) with the registry entries/additions so that its guaranteed to be included when you do the Extended ROM customization.
Did you ensure that you copied all the files from an original extended ROM correctly (before making your modifications)?
The thing is I have around 250+ device which need flashing with the same image and as all the devices will require a different Username adding into the registies I 'll need to run an external cab file, a cab file which will be different for all the devices and it's best to run it from the SD card.
I tried to adding a cab file into the Extended ROM which will install a shortcut into the startup folder the shortcut is to the cab file on the storage card. But for some reason it didn't run.
I have a couple of SD cards with an image of my Extended rom on so if anything goes wrong i have the backups.
Whats wrong with having the 'end-user' maually execute the .CAB file?
Why don't you simply customise one PDA (the way you wan't with your preconfigured settings) (minus the user/device name), then do an entire backup using SPB BACKUP (onto a SD Card). You can then restore this image on all 250+ devices (sounds time-consuming,but it really isn't).
All the end user had to do, is to manually execute your .CAB file when they are issued the units.
This is your true answer (in my opinion):
http://www.spbsoftwarehouse.com/products/backup/?en
RE: Whats wrong with having the 'end-user' maually execute the .CAB file?
Basically the devices are used by Market research interviewers who work for us, most of whom are not familier with the devices and are not computer litterate. I'm responsible for a small support team and also the development of the devices. The software we use is already extremley simple and all they need to do is click a buttom "Connect" if the username is not already inserted they get a box "Logon Failed, please check the following details are correct." and a username and password box is displayed and they simply need to type in the id number from the sticker on the back of the pda (like PDA001).
We have just had a large project in feild and over the period we have around 200+ user. Around 50% of the call we took, at some point they had problems entering the username. As much as SPB backup would be of use, if they can't already do a simply thing like type in PDA123, asking them to do this seem like asking alot and would probabily cause more issues.
We already have all the other information in the registries for this application and the username is the only thing which isn't consistant through out.
Do you know if it would be possible to prompt them to run the cab from the sd card which enters the username into the registires on startup?
Nunwood PDA said:
Do you know if it would be possible to prompt them to run the cab from the sd card which enters the username into the registires on startup?
Click to expand...
Click to collapse
Sure it is possible. Did you already try placing a shortcut to the .CAB in "Windows\StartUp" ?. Likewise, you can easily create another script that deletes that shortcut (to ensure that its only used once).
Please keep us posted, on your developments.
Nokia 3650 said:
Sure it is possible. Did you already try placing a shortcut to the .CAB in "Windows\StartUp" ?.
Click to expand...
Click to collapse
Yeah, it didn't do anything. I had a cab file in the extended ROM which placed the shortcut in the dir. \Windows\startup\. For some reason nothing happened, but when I navigate to the .cab file it ran without any problems.
When you say create another scipt, how would I go about doing that? If i had an .exe it could act as a link to the cab on the SD card. i'm not familier with this kind of method. But I think that would solve the problem.
The location of the .cab is: \Storage Card\Help\UserName.cab
Thanks for the exact location. I'm just compiling something for you in visio Studio 2005, that will execute the .CAB file when run at automatically from startup (it'll do this only once).

How to merge multiple .cab files into single .cab file

Hi,
I am looking for a utility to merge multiple small ( free ) utilities into a single .cab file to automate the installation; just to ease the installation process after the hard reset or ROM upgrade.
Though i tried Win CE Cab Manager but unable to achieve that functionality - its look like to me that i am missing something somewhere.
Regards.
I'd like to know this too...
Does this help? Not used it myself
http://forum.xda-developers.com/showthread.php?t=392983
mic_888 said:
Does this help? Not used it myself
http://forum.xda-developers.com/showthread.php?t=392983
Click to expand...
Click to collapse
Thanks mic for the link... But according to that software ... one have to place all the required cab files in a specially designated directory and software start installing the files from there one by one...
But; what i am looking is a software that creat a single .cab file which includes all the required ( individual ) cab files along with the parameters e.g. installation location ( Device or Storage Card )....
sashami is the best solution which was actually inspired by a script called autorun back in the days of win mo but only way to do a auto install of cabs or all one one would be to attempt and cook into you're own rom or see if it's possible to cook all cabs into 1
Maybe extract all cabs with ini or XML file. Merge ini or XML place all extracted components in same folder and use cab building program to build cab from ini/xml...
Maybe.
This is the best thing I have found........not really an app per se.
What is UC? It is a feature contained in UC capable ROMs. A UC capable ROM extends initial customization to your SD card so you can load cabs and install XML files that are located there too. What this means is that once you get your customization scripts right, you can flash any UC capable ROM and all your apps and settings will be restored as part of the initial customization process whenever your SD card is inserted in the slot.
http://forum.xda-developers.com/showthread.php?t=366337
I have been using Slueth's ROM and this UC method for quite a while now and it works fantastically. Takes a little effort but anything worth it's oats will take atleast a little effort.
http://forum.xda-developers.com/showthread.php?t=366284
I just come a across while searching, here is another solution:
http://www.pocketpctoolkit.com/
this should not be a advertisement, because it is not freeware, but a suggestion.
you can add cabs and the program builds an desktop or device installer and merges the cabs (and other files). the device installer is a exe not a cab....
if you look deeper in the internet you find a full time solution...
hope it helps...
chipsxj said:
This is the best thing I have found........not really an app per se.
What is UC? It is a feature contained in UC capable ROMs. A UC capable ROM extends initial customization to your SD card so you can load cabs and install XML files that are located there too. What this means is that once you get your customization scripts right, you can flash any UC capable ROM and all your apps and settings will be restored as part of the initial customization process whenever your SD card is inserted in the slot.
http://forum.xda-developers.com/showthread.php?t=366337
I have been using Slueth's ROM and this UC method for quite a while now and it works fantastically. Takes a little effort but anything worth it's oats will take atleast a little effort.
http://forum.xda-developers.com/showthread.php?t=366284
Click to expand...
Click to collapse
i flash phones like everyday. using that method is for doing a couple of cabs. if you are trying to do like 100 cab files it will take a loooooooooooong time.
wince cab manager
if you just want to make one cab i would use Wince Cab Manager (OCP Software) (google it) to extract all the neccesary information from all the cab files.
then re-import all the information (links, registry, files etc) into a brand new Cab File.
so long as you keep all the extracted cab files separated this should be easy enough, but time taking.
Hope that helps. =D
Dan

Simple WM6.1 ROM kitchen

For those of you who want to customize wm6.1, here it a simple ROM kitchen to do so. Beginners, please wait for my GUI release. It is much simpler to use. This isn't that hard, but it takes a little bit of time on your side.
The basics:
All software and regedits are contained in folders called OEM packages. These are in the OEM folder.
All operating system stuff is in the SYS folder. I've also moved the shadow drivers here so you don't have to mess with them.
To make OEM packages:
Download ervius's package creator 5.4 from XDA-developers. Use this to open the cab file to convert into a package.
Copy the OEM package to the OEM folder.
Do NOT delete the OEM packages you don't want. You will choose them later in a different way.
NOTE: You can always download premade OEM packages from XDA-Develoers. There are tons of options.
If you want to make a regedit.
Create a new folder in the OEM folder and convert it into a package using Package Creator 5.4.
Open the RGU file inside with notepad
Edit like following. Note that this isn't the way to comment in regedit files:
Code:
REGEDIT4 <-----Make sure this is always the first line
------Leave one line blank here-------
[HKEY_LOCAL_MACHINE\Software\Example Software\Example Key] <----- Navigate to keys like this
"Example String" = "test" <-------- Write values with quotes. Strings are given with quote after the equal sign.
"Example Directory" = "Windows\\test.jpg" <------ Use \\ to indicate a \ between directories. Otherwise, the ROM build will not work.
"Example Number" = dword: 5000 <----- use dword: to indicate a number or hex value.
<----- You can add more reg entries after the first one. Make sure to specify a different key when needed
-----leave 2 lines at the end of file------
For Sliding Panels:
Leave ROM as it is.
For Neo interface:
Replace Chome folders and bronze folders in SYS folder with the ones attached below.
Select Neo Interface in the buildos step.
Build ROM:
start buildos.bat
when it opens packagetools+buildos, click on the buildos tab.
Click load rom and navigate and select the kitchen folder
Select which oem packages you want and then click Go.
Once it is done, close out.
Sit back and relax for a while so the batch file can build the ROM.
Self-explanatory from here.
Post any questions/problems here.
link: http://www.sendspace.com/file/ap9n8w
NOTES: The inlcuded T-Mobile Edition Package is my beta version. Feel free to build on it. You might also notice the empty placeholder folder for my N33D4SP33D Edition rom that I haven't worked on yet.
To make OEM packages:
Download ervius's package creator 5.4 from XDA-developers. Use this to open the cab file to convert into a package.
Click to expand...
Click to collapse
I found the program but get many errors when I start it up on my computer.. Im currently running Vista Ultimate. I went into control panel and changed the enviroment to emulate WinXP when the program runs and still get many errors..
Is there a vista friendly program out there or alternative available?
I'm running Vista Ultimate too and it works perfectly for me.
Attached is the version I have.
ND4SPD said:
I'm running Vista Ultimate too and it works perfectly for me.
Attached is the version I have.
Click to expand...
Click to collapse
Great! yours works thanks alot now to get my feet wet in all this lol
I got this error
'Error building default.hv and user.hv! (see imto "BuildOsX-log.Txt")
i can't see anything in there. What now. Thanks
Do you mean there's nothing in the BuildOsX-lot.txt? There should be. A few lines from the last, or the last line, there should be the registry file that messed up and on which line it messed up on. The file is given by the GUID, or that long string of numbers and letters that you see.
no, there is nothing what tell me what to do. so what should i do with that error.
i will make stick this thread.Hope next times will see some roms with this kitchen
Thanks tom. I'll make sure to post my GUI kitchen soon to let more people create ROMs a lot easier.
kormanb1123 said:
no, there is nothing what tell me what to do. so what should i do with that error.
Click to expand...
Click to collapse
what kind of things did you modify or add? Maybe I can help based on that.
I get the same error for the following:
InitRegistry FAILED in file ".\Registry\fcbf420c-04fd-478f-bd29-e4ab55973337.rgu" within a few lines of line 359.
ImportFromPackageListStrict: (RGUComp) !ERROR failed importing ".\Registry\fcbf420c-04fd-478f-bd29-e4ab55973337.rgu"
wmain: (RGUComp) !ERROR failed building DEFAULT hives
Looked through each App in the OEM folder until I found the matching rgu number, which in my case is the HTC DirectShow. Took that out of my ROM build, ran again and it states that it completed.
I think there is a problem with the directshow package. I'll check the registry entries. Until then, I think you might need to go without that.
This may sound like a stupid question, but hear me out. I have used BuildOS in the past for an Apache from PPCGeeks\PPCKitchens. Once the ROM is finished creating in that version it auto prompts to update your device.
After the ROM is done in your version, I then selected the Package Tool tab and pointed it to the "temp" directory and it did it's thing. Now I am at a loss for what to do next. I see a .nb file temp\dump\ROM directory but i don't see a .nbh file. Do I use the NBHTool even though PHOEB is not listed?
ND4SPD said:
I think there is a problem with the directshow package. I'll check the registry entries. Until then, I think you might need to go without that.
Click to expand...
Click to collapse
I'm not too worried about the directshow, I just that maybe the other guy was getting the error for the same reason so figured I would pass on my resolution.
Sorry, I guess I didn't completely read you post. For the HTC Rom Tool, use the exacalibur settings. Those are the exact same as the Juno.
all I have is o4_osxip.nb.exe in the temp folder no nbh is this the right nb. file I use with
htc tool I put exacalibur settings but don't no what to put in firmware contents
do I put o4_osxip.nb.exe in system and none in the ipl spl and splash and 0x800 radio
ok i did this
Build ROM:
start buildos.bat
when it opens packagetools+buildos, click on the buildos tab.
Click load rom and navigate and select the kitchen folder
Select which oem packages you want and then click Go.
Once it is done, close out.
Sit back and relax for a while so the batch file can build the ROM.
ok where is the rom all i have is o4_osxip.nb.exe in the temp
i have no file imgfs-new.bin in the temp all i have is 04_OSXIP.nb.exe and cecompr_nt.dll and CECompressv4.dll
and where would i look for the batch file
Thank you for your works, ND4SPD
but i can not download your kitchen, it says reached the 4G limit.
because i want to know is there any wrong method i used.
My issue is :
when buildimgfs, the total sections can not bigger than 1B200.
when i put too many files into the imgfs file, the buildimgfs will quit without any info.
but the 71M imgfs.bin have about 22000 sections.
do you have issue too ?
Is it because my PC have only 1G RAM, not enough to do the building?
@Hikey: I have that same problem too. It's the way t-mobile packaged the rom. I'm going to try using the dopod rom for the base next. It might be the PC too. I only have 1GB of RAM, maybe it isn't enough.
@kron2:
run buildos
download this zip: http://www.sendspace.com/file/xuhlc5
copy the files from the zip archive to the temp directory.
open up the cmd that's now in the temp directory.
type the following:
Code:
ImgfsFromDump imgfs-old.bin imgfs-new.bin
Sit back and relax. If this finishes without crashing like Hikey said, do this:
Code:
ImgfsToNb imgfs-new.bin 04_OSXIPN.nb os.nb -conservative
Now you can run the htccert program in the main directory of the kitchen to build the rom. When you are done making the nbh, copy it to the RUU folder and run the update utility.

[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