yashsingh1/xdaforums huggingface dataset:
[Windows Mobile Software Development] ND4SPD:
Here are the modded imgfs tools. Since I had them, I've also updated the rest of the tools so that they aren't using deprecated C++ methods, though I didn't get to all of them.

The added handle -imageupdatefix for ImgfsFromDump.exe will allow you to build an Image Update ready ROM for devices like the Diamond for which the -conservative handle on ImgfsToNb outputs a corrupt ROM image. It simply forces there to be the required minimum 9MB free space for Image Update to work. You can now use the -bigstorage without any problem for Image Update. I haven't tested building a rom with the -conservative handle yet.

This is an interim until Da_G posts his new NB tools that will be a lot better

I haven't tested it on anything but my Diamond, so feedback would be great :D
[Windows Mobile Software Development] jwzg:
I'll have to see if this works on the Hermes.
[Windows Mobile Software Development] drellisdee:
Dependancy question

The dsm from mxipkernel shows 5 dependancies that are nowhere in the xip or sys most of which are from prior builds. Can these non-existant dependancies be cleared using a dsm editor and still work with img update when a mxipkernel cab.pkg is made?
[Windows Mobile Software Development] drellisdee:
Very close for CDMA pro with ppc kitchen.

Processing Graph for GUID =	{E220DF95-8031-49FF-B5C3-95C1C2809B74}
using path 017E2B00 with weight 1375952
Path: 017E2B00
Target: Major: 5 Minor: 2 QFELevel: 5060 BuildNumber: 23000
Target: Major: 5 Minor: 2 QFELevel: 5300 BuildNumber: 23017
[B]VerifySignatures: WARNING: Signature validation failed for following node[/B]. Trimming Edge from node index 1 .
Name of the Package is: \UpdateBin\Packages\Livesearch.cab.pkg
This package has following FROM and TO versions
FROM Version	Major: 0 Minor: 0 QFELevel: 0 BuildNumber: 0
TO Version	Major: 5 Minor: 2 QFELevel: 5300 BuildNumber: 23017
VerifySignatures failed for graph with base name of\IMGFS\e220df95-8031-49ff-b5c3-95c1c2809b74.dsm
Trying to find another path.

Deleting edge from node index: 2

dist[0] = 2147483647

dist[1] = 0

dist[2] = 2147483647

pred[0] = 0

pred[1] = -100

pred[2] = -1

Searching for Shortest Path weight from Node with index 1

Parent of 2 = -1

Shortest Path weight from Node with Index 1 is 0

Parent of 1 = -100

Shortest Path weight from Node with Index 0 is 0
No Valid paths were found for graph with base name of\IMGFS\e220df95-8031-49ff-b5c3-95c1c2809b74.dsm

I've uploaded a folder with my defaultcert.dat(with test cert added) the pkg and the cab.pkg and the certs I signed it with. Can some one help me figure this out as it seems to be a signing issue. I'm using LZX compression on rom imgfs if that makes a difference. I also used ND4SPD's imgfsfromdump -imageupdatefix and have full ULDR partition and FWUPDATE PKG. Also, the original dsm built into rom was not altered at all during the build process and this pkg of Live Search has no dependencies.
[Windows Mobile Software Development] ND4SPD:
What did you use to build the ROM? I know you said the DSMs were unaltered, but it looks like they were altered - otherwise all of those errors for finding the graphs of the different dsms wouldn't be there.

It doesn't look like you added the Test_Privileged.cer file into the defaultcerts.dat. You might want to check that. btw, when you sign the .cab.pkg file with signcode, you need to specify both the .spc file and the .pvk file - the zip file you uploaded didn't have a .spc file.
[Windows Mobile Software Development] drellisdee:
I use PPC kitchen to build. The dsm and pkgs from dumped rom are the same as the source with the exception of the rgus being missing as the rgu's are pulled into .hv. The dsm wasn't updated to reflect the rgu being taken out. I used the copy cert syntax you posted to copy the Test_Privileged.cer into default certs but that cert didn't show in root certs on device nor show in cert info when built rom was dumped. It does show in default data when I click on the file. Are the .cer and spc not the same? If not do you have a better set of cert/pvk to sign with as this ws the only one I could find. I wasn't attempting to build a whole rom for image update just a few pkgs to test. If the cer is correctly loaded into defaultcerts.dat will it show on device under root certs? Mine did not on attempts with 2 different certs and I used the .spc and pvk with the new one and still get same signature validation error.
[Windows Mobile Software Development] mjb1994:
hey i know you guys are extremly busy and i am excited for this find

i was wondering if anyone can convert this rom to image update please

i just bought a i-780 with 6.0 on it and i hate it. however i can not update the rom because the port on it is broken :( i didnt break it lol.

anyway can you please do this

i was into this project in the beginning but i gave away my wizard so i cant do anything

i updated the wizard every month

any please if anyone can do this tell me please.

just pm me if you can do it or can tell me how to please

i will b extremely grateful

heres the link to the rom i want converted

http://xdaforums.com/showthread.php?t=501366

thnx soooo much
[Windows Mobile Software Development] xda2_haseeb:
can i know how-to successfully create a .cab.pkg file?? and can i also know how-to add MyCertificate.cer into defaultcerts.dat on a flashed ROM?? THNX!!
[Windows Mobile Software Development] Star-Lite:
Is there still any progress made on this or has this idea died a silent death?

I would LOVE to see custom ROM's that can be updated OTA.
[Windows Mobile Software Development] xda2_haseeb:
Tools are under-construction acc. to my knowledge :D
[Windows Mobile Software Development] ND4SPD:
On the ROM side, current ROMs need to be converted to Image Update compatible ROMs manually. The only one that has been made is the one released by Da_G for the Touch Pro.

as xda2_haseeb said, tools are in progress. I've had to put the project aside temporarily because of a project I'm entering into a science fair. So the tools are in the same state as they were back in July. I can only restart this after November 15th.

You can see what it has looked like since July:
[Windows Mobile Software Development] DaveTheTytnIIGuy:
Well it's nice to see that somebody has actually been working on this at all; I was worried that this would end up going nowhere and no progress would be made past the initial exploration of ImageUpdate. And even if you can't start this until November 15th, its still nice to see any progress, no matter how small, being made on this groundbreaking yet unused feature. Thanks for your hard work (and good luck in the science fair)
[Windows Mobile Software Development] xda2_haseeb:
pretty cool :D i guess u have resume by now :D
[Windows Mobile Software Development] c_shekhar:
Never knew 15th Nov has arrived ;)
[Windows Mobile Software Development] xda2_haseeb:
oh my bad!! i pur Oct after Nov :p
[Windows Mobile Software Development] fredamexis:
not to spam the thread, but this is one big project!!
[Windows Mobile Software Development] Star-Lite:
Has this died? :'(
[Windows Mobile Software Development] xda2_haseeb:
i hope so not coz im really looking forward to this :)
[Windows Mobile Software Development] ND4SPD:
Just wanted to say that the project is continuing. However, it won't come in the same package you saw before. I can't say much, because the project has evolved into something a bit different. Once it does release, you will be able to create Image Update ROMs
[Windows Mobile Software Development] DaveTheTytnIIGuy:
Thanks a lot for keeping us updated. I think I can speak for everyone when I say "Keep up the good work, it's appreciated!" :)
[Windows Mobile Software Development] xda2_haseeb:
hmmmm... i just need the Image Update SYSTEM working, nothing else bothers me :D
[Windows Mobile Software Development] ND4SPD:
...well progress on the bigger project has come to a standstill for some time, so I think i will release a standalone image update creator this weekend to make up for the long wait.

keep in mind that though this software will create an image update package, the rom has to support image update and will need the same certs as the packages. there are only two roms i know of that are image ready atm: da_g's touch pro and touch pro2 roms
[Windows Mobile Software Development] Emrulez:
any news? anything we can expect?
[Windows Mobile Software Development] ND4SPD:
Almost done! :D It should be up in the next hour or so. I've been debugging it because I took a portion of the code to create a standalone version of it.

UPDATE: It might have to be tomorrow...I've been debugging for 3 hours and am trying to work out a small and pesky bug and it's being evil.
[Windows Mobile Software Development] Emrulez:
lol keep up the good work, I am looking forward to it ;)
[Windows Mobile Software Development] Star-Lite:
I'm keeping a Very close eye on this, it would be AWESOME if more cooks would support this. Imagine what would happen if just NRGZ would start supporting this :D
[Windows Mobile Software Development] ND4SPD:
I think I've isolated the problem - now dumping a new rom to test it out :P

I guess I'll need to start writing up a tutorial to use this program. In the form I'm hopefully releasing today, the features are pretty limited but are just a small teaser for what is to come. After my finals this week, I'll work on the fully loaded version that I showed the screenshot of earlier.

For ROM chefs/developers:

If you want to build a rom that is image update compatible, you CANNOT use bepe's platformrebuilder or any kitchen that is based off of it. The reason is that bepe's platformbuilder strips the rom of all the dsms (Device Side Manifests) and populates a single dsm with all files in the ROM. This defeats the purpose of the Image Update system which updates the ROM with those pre-built packages. As well, ROMs that are created this way need to retain the ULDR partition as well as packages such as FWUPDATE. This means that either roms have to be built with the -conservative handle for ImgfsFromDump or using my modded ImgfsFromDump that I released a few pages before this one.
[Windows Mobile Software Development] ND4SPD:
Image Update Standalone v1 BETA release

After a hurried debug time, I'm finally done with this initial release!

Thought I might as well write this tutorial as the code is running through a last debug:

Before starting:

Dump a rom, but don't package it. Please use Tadzio's Imgfstools 2.0rc1 - atm, my program doesn't recreate modules and you need the modules to exist in their specified folders.

modify defaultcerts.dat to include certificate data that you are signing with

Extract Image Update Tools to any folder

Extract public to the directory that the dump folder is in - this is important for package validation - otherwise program may throw errors

Run it

Click browse to select the .cer file you wish to sign the .dsms with (make sure it's the same file you put into defaultcerts.dat)

Click Generate Packages from Flat and select the dump directory

Sit back and relax! :P

When complete, there should be a folder called Packages in the directory above the dump directory that has all the new DSMs as well as the .cab.pkg Image Update files!

Let me know of any errors - there's bound be a few in this quick release.

I don't mind people disassembling the code. However, if you build something off of this - please give me credit and consider a donation :P

Check latest post for latest version
[Windows Mobile Software Development] vetvito:
^ Great work!!!
[Windows Mobile Software Development] anryl:
Ok i did dump with tadzio 2.0 rc2 (with yours as well)

i put public with dump

i modify defaultcert with sdksamplepriv

i use sdksamplepriv

but it wont create nothing here the errors :confused:

os windows 7

on vista it will copy bublebreaker.exe to temp write copy to packages and thats it it stopped working no error no more output
[Windows Mobile Software Development] ND4SPD:
i meant use tadzio's 2.0rc1 (the build that supports emulator roms and places each module in the folder). that will make it work. I don't know how to create recmod so that's my temporary solution.
[Windows Mobile Software Development] anryl:
could u upload it pls ?
[Windows Mobile Software Development] ND4SPD:
here you go
[Windows Mobile Software Development] anryl:
this is 2.0 RC 2 :confused:

it makes the dll in module folder so the problem is somewhere else
[Windows Mobile Software Development] ND4SPD:
found the problem :P I forgot to attach Microsoft.Cabinet which creates the .cab.pkg files...stupid me

edit: I've attached the new version to this post
[Windows Mobile Software Development] anryl:
wm6.1 :) gona try 6.5
[Windows Mobile Software Development] ND4SPD:
cool - but it was my fault to - also posted update in post above
[Windows Mobile Software Development] anryl:
now we need patched and m$ signed updateloader without cert checks for updating any official ROM :D and any device :D
[Windows Mobile Software Development] :
@N4SPD Based on your post it means that this can be use with old style kitchen right?
[Windows Mobile Software Development] ND4SPD:
Yes, but it might not work if the old-style kitchen alters the dlls in any way at build time. I think they've been known to do that.

Here's how I understand the full process would work with the current tools available. Keep in mind that I haven't actually had the time to test this:

To create an Image-Update compatible ROM:

Dump a Windows Mobile 6.5 based ROM

Modify DefaultCerts.dat to include custom cert

Run Image Update Creator to recertify the dsms with custom cert and create base line .cab.pkg files

Dump XIP into packages and run Image Update Creator with the custom certs to create the XIP .cab.pkg files

Use signcode to sign all of the .cab.pkg files with the private key (.pvk) and the .spc files associated with that custom cert

Rebuild XIP with the new DSMS

Build ROM using -conservative handle or my Image Update mod.

Flash ROM to device

Any new SYS and XIP updates could be built by following the above procedure except the actual ROM wouldn't need to built. Instead you would cab all of the .cab.pkg files into a .cab.pks file and run it on the device. That would update the Windows Mobile build.

The same could be done with OEM stuff and custom packages, but atm, the Image Update Creator only makes it really manageable for the SYS updates and actual OEM updates. Any custom packages would need new dsms created by another program that are a good base to generate the packages from. My next version of the program will incorporate that feature.
[Windows Mobile Software Development] ND4SPD:
One thing I forgot to mention is that this system makes it a lot more easier to manage a ROM project.

A chef or rom project group could create a custom cert that all the files are signed with to give any mod or windows mobile build updates without losing any of the users data.

Just another thought...:D
[Windows Mobile Software Development] DaveTheTytnIIGuy:
Hey ND4SPD,

I'm not sure if it would help with further development or not, but AT&T just released some .exe updates for the Tilt2/Pure, and they use Image Update. Inside one of the .exe's (which can be extracted with 7-zip) are two .cab.pku files. One contains a single .dsm, and the other contains registry settings, a DLL, and another .dsm. You can find them on HTC's site here. Like I said, I'm not sure if this will be useful to you or not, but I figured it'd be worth mentioning to you.
[Windows Mobile Software Development] Soul_Est:
This will definitely come in handy for the ROMs I'll be building over the holidays. (Now I know which kitchen to use!) Thank you so much for all your hard work on this everyone.

Thank you for posting this. :D
[Windows Mobile Software Development] omek07:
Hellooooooo

Can i ask you something ???

Do we have the possibility to change the lang of the Rom ???

For example from English to Greek ???

Thanksssssssssssss
[Windows Mobile Software Development] ND4SPD:
Nice find! I'll definitely take a look at that! the .cab.pku files are delta packages. The way they make those are by taking a package with and older version number and finds the difference between the files in that package and in the new package. It makes for smaller Image Updates, but they take much more time to build. I'll release an update that has the ability to do that - my finals are over and I've got two weeks of nothing to do :D
[Windows Mobile Software Development] ND4SPD:
While you can add in new packages that have a different language, I don't think wm6.5 has that ability to delete Image Update packages. Windows Mobile 7, however, supposedly has that feature.
[Windows Mobile Software Development] petard:
I just remembered this project after those at&t updates came out and I read on the HTC site that they will survive a hard reset. Looks like this is finally starting to go! I am excited for ROMs and updates without having to flash my phone all the time!
[Windows Mobile Software Development] anryl:
Can we use spadcert to add root cert for imageupdate into live ROM :confused:

put cert into root off storage card and run programm on ppc then soft reset the certificate is aded . WILL IT WORK :confused: ???
[Windows Mobile Software Development] jmz:
Da_G, check your pm's about this
[Windows Mobile Software Development] ND4SPD:
Well, that will add the cert to the OS residing on the TFAT partition, but I'm pretty sure that when Image Update runs, it looks at the defaultcerts on the IMGFS partition. I think the answer, unfortunately, is no for this.

I think that if we just patch the defaultcerts of any existing official ROM, we should be able to run the Image Update.
[Windows Mobile Software Development] anryl:
yep but on imate the romupdate utilities are checking all hashes and crc's so no way to change nothing in the image as well as pdocwrite is protected here so we need some certs from imate to make it running or we can't do nothing :(
[Windows Mobile Software Development] ND4SPD:
I have no clue about this, but is it possible to patch the RUU so that it doesn't check the hashcodes and checksums?
[Windows Mobile Software Development] anryl:
nobody was able to do it not even in china if u look on 8502 or 9502 this 2 sets are still un-cracked. In cn they gave away some sets for developing rom tools but nobody was succesful :(

The only hope is to patch bootloader and sign it with MS cert to make live sys xip updates with uldr . hope it will work . Or make roms update with ms cert or i-mate certs ............... hmmmm so it will stay for ever on telstras wm6.1 :(
[Windows Mobile Software Development] rgb-rgb:
Maybe someone can help me with an answer to this.

Since AT&T has released a couple of updated packages now, and I don't think that we can run these on a custom ROM (or maybe I am wrong about that).

Is there a way to take the updated packages from AT&T and combine them into the original package that we have in the Kitchen so that in the end, we can cook the combined new package into our ROMS?

One of the packages from AT&T updates the phonecanvas with some .dll files. From what I can see, the updated .dll files are not complete, they are just delta differences so how can we updated the kitchen files without having to do it on the device?
[Windows Mobile Software Development] twopumpchump:
couldnt you run the update with stock ATT rom, then extract rom from your device and re-build with old style kitchen and then dump that rom?
[Windows Mobile Software Development] rgb-rgb:
Maybe I am wrong, and I haven't tried it yet, but I don't think that we have a real stock ROM any more. And, this is the part that I am probably really wrong about, but I know that there is a reconstruced ROM but isn't that ROM just created in one of our Kitchens which is basically a custom ROM now?
[Windows Mobile Software Development] twopumpchump:
not sure about the others, but when i bought my tilt 2 i extracted and rebuilt with old-style(buildos) kitchen...and rom is totally dumpable and rebuilds great :) i have no idea if flashing that rom and trying the update from att will work, if not maybe someone who hasnt ever flashed custom rom yet can extract the rom from their device and post the .raw files. if you want to try flashing this and run update be my guest....this has no radio/spl included.

reconstructed AT&T rom without new update(no spl or radio included)
[Windows Mobile Software Development] rgb-rgb:
Thanks, I'll give it a try later and see what happens.
[Windows Mobile Software Development] keyx:
is there a bug for 96 dpi that it always read 3 characters (assuming 128 dpi?) when reading dpi package/folder? I stuck in detecting dpi and I used reflector & vs to debug the code it seems it reads after 96 when reading THEMES_DPI_96 and throw a silent indexoutofrange error (slient because of the doWork background process i suppose?)

edited: I have fixed the code as follow

if (manifest.Name.Contains("96"))
writer.WriteAttributeString("Value", this.findValueAfter(manifest.Name.ToUpperInvariant(), "DPI_", 2)); //dpi_96
else
writer.WriteAttributeString("Value", this.findValueAfter(manifest.Name.ToUpperInvariant(), "DPI_", 3)); //dpi_128 or greater

however i have problem with onenote depends on office in the dsm which cause validation error since there is no AssociationType for onenote in the office.pkd.xml generated ...

it also happens with NETCF which depend on BaseApp, i wonder if it is possible to make AssociationType optional instead of making it minoccur=1?
[Windows Mobile Software Development] ND4SPD:
thanks for making that change, I completely forgot about 96 DPI. About the association type problem, it seems that it happens with HTC's wm6.5 builds. If you run it on any of MS's wm6.5 branches, it works perfectly. I don't know about other OEMs or why it happens. I haven't stepped through it yet to see what's different with HTC's associations.

I made association type optional, but then it invalidated the OS package in wm6.5 branches. I wasn't sure if manually checking for OS package and adding an associationtype for that would break the image update package. So the code would have to detect some problematic wm6.5 branches somehow.

I know you used reflector, but do you just want the source code out right? I can setup a code project or something so you can access and make changes to the code. I'll also add some meaningful comments :D You've probably also noticed that the code isn't optimized in the slightest.
[Windows Mobile Software Development] keyx:
yes sure it would be nice to access the source code :). I haven't fully understood how the whole thing work but you don't have problem with NetCF and the office package? they are currently skipped because the validation failed on that missing AssociationType for dependency to other packages (non dpi/ RES). I run it on a WM6.5 28011 rom dump. There is also some other error (ADC.exe and some other exe .etc) that I haven't step though to see what happened yet
[Windows Mobile Software Development] ND4SPD:
I'll set up a codeplex project for it so you can access source code. I don't have a problem with the builds I've tested with except for htc's builds. I'll try the 28xxx roms to see if I can come up with some solution. As for those other errors you got, if you didn't run the imgfsfromdump with the version I attached in this thread, the packages won't include any modules. I don't know how to recmod the modules and that's why I had this temporary solution.
[Windows Mobile Software Development] l3v5y:
Anyone managed to edit defaultcerts.dat? I haven't noticed it whilst looking through this thread...
[Windows Mobile Software Development] ND4SPD:
I just added that feature into my program. I'll post it in a few mins.
[Windows Mobile Software Development] ND4SPD:
CodePlex project created for Image Update Creator and added latest version along with source code there

check it out: xdaimageupdate.codeplex.com