How to write .rgu properly?? - Wing, P4350 General

Hi, i have an Herald with the original windows mobile 6 executable i downloaded on a website and i extracted the RUU_signed.nbh, then i used Hypercore to get the OS.nb and then i got the OEM and SYS folders to start building my ROM the way i like it. First i thought about including my own registry modifications and i know those modification have to be installed in the device at the end of everything to over write the default that get install first so in the OEM folder i created a sub folder i called zzz_My_registry_OEM. As you can see, my attempt there is to put the .rgu file in there and because the name of the folder start by zzz, it will obviously be installed at the end. Is that right? Because if i'm wrong please tell me, i never did that before, its my first time cooking a ROM. Then, i face a new problem. I have the complete list of all the registry tweak i want to put in the .rgu file, i know i have to begin the file by REGEDIT4, the lines starting by ";" are not recognise so i can put a note of what the registry is for (for personnal reminder), then at the end of all my registry tweaks, i have to leave a blank line but... I just dont know how to write the lines properly because i know its some sort of code and i have to write in code. I'll show you precisely what i mean. Here i have a tweak to change the temp file to the storage card and it goes like this:
HKEY_LOCAL_MACHINE\System\FileSys
edit temp path key \Storage card\Volatile
Here an other one to change the language of the slide out keyboard to US:
HKEY_CURRENT_USER\ControlPanel\Keybd
create a new string
Name: Locale
Value: 0409
The problem as you can see, that is good if i tweak the registry of my already installed ROM from a registry editor, thats not valid for a .rgu file while cooking a ROM. But i have no idea how to write those codes properly and i found absolutely no instruction no where. And i have a lot more tweaks like that that i want to do. Is there any one here willing to link me to a detailed and intelligent tutorial or to translate my reg tweaks for me so i can finally nail that once for all? I thank you all in advance for your help. Anything could help because even if you dont have a complete answer, i'll do the job of reading the post and take all the bits together and figure it out. Some of you know a little bit that will complete some that an other one know to finally form the big picture.

Related

Way to make your Language OS for Universla

the way to OS Localize your Universal
*****the files and tools you need*******
*imgfs_tool by mamaich
*boot_hv_tool by mamaich
http://forum.xda-developers.com/viewtopic.php?t=34171&start=0
*HTC-64 Encodetool by bal666
http://forum.xda-developers.com/viewtopic.php?p=191164#191164
*hex editor (i used Heiw32 accroding to suggestion of Mamaich)
*NotePad in Windows
*Other high performanced Editor(if you have)
*Resource Hacker or PE Editor + Resource Tunner to edit mui
*Signcode.exe and sign with certificate
-----sorry can not write all in here,,, pls go to link---
http://www.asukal.jp/WM5_MUI/the way to OS Localize your Universal.mht
***********additional information 2006-May-15**********
regarding to initflashfiiles.dat and initboji.dat
i tired to write initflashfiles.dat in Japanese chalachtor, but not in CODE,
seems to work.
*write initflashfiles.dat in Japanese to specify Japanese Localized shell folders and Japanese re-named Short cuts. then add into rom.
also deleate both of 2 old dat files from rom.
then flash it back to my Uni, the localized shell folders were created!
this can save a lot of time to create the Localized ROM :shock:
But,,, still testing that ROM can work correctry.......or not.
<some appurication buttons can not assained if without initboji.dat>
*************2006-May 22 aditional********************
@ to edit the dll or exe from AKU2 rom, they have some difference.
Strings can be edited only with Platform Builder now.
pls reffer to this thread
http://forum.xda-developers.com/viewtopic.php?t=49423&highlight=
Can I have your instructions?
Hi Asukal(sama):
I'm trying to localize my Universal to my local language.
I'm stuck now before boot set-up process after hard reset.
So, I would like to ask you several questions.
Could you show me your instructions / suggestions?
1) Certification Store (way 2-1)
You said I have to take out CertificationStore from registry file.
I could not find any key of "CertificationStore", so I compared my registry before and after SDK_Cert installation.
I found there are some differences in registry file, which are:
HKEY_LOCAL_MACHINE\Comm\Security\SystemCertificates\SPC\Certificates\XXXXX] –- 3 keys
HKEY_LOCAL_MACHINE\Comm\Security\SystemCertificates\Privileged Execution Trust Authorities\Certificates\XXXXX] – 3 keys
[HKEY_LOCAL_MACHINE\Comm\Security\SystemCertificates\Unprivileged Execution Trust Authorities\Certificates\XXXXX] – 2 keys
I removed "\" that locates on each line of hex data and write these keys on default.hv file.
However, the start-up process just after hard reset didn't start...
I also found some other differences on registry files, which seems certification file update time.
Do I have to put update time keys on default.hv file?
Or am I still missing something?
2) MUI (way 2-2)
I could sign *.mui files with SDK_Cert.
You said PE header must be corrected if I cannot sign *.mui.
In other words, you mean I don't have to correct PE headers because I can sign my *.mui?
As far as I checked my *.mui files, it seems OK.
3) iniboj.dat (way 3)
I could dump iniboj.dat and initflashfiles.dat and translated them to my language.
Of course I saved in Unicode (UTF-16) and removed the first 2 byte "ff fe".
When I run "delfile.exe", I noticed "delfile.exe" showed the error message that "delfile.exe" could not find iniboj.dat.
But I could add iniboj.dat with "addfile.exe".
Is this a normal message from "delfile.exe"? FYI, my base ROM is Qtek's AKU2; 1.30.77.
4) *.hv files (way 4)
I think the following is the keys that I must change.
[HKEY_LOCAL_MACHINE\System\Explorer\Shell Folders]
"StartUp"="\\Windows\\StartUp"
"Recent"="\\Windows\\Recent"
"Programs"="\\Windows\\Programs"
"Favorites"="\\Windows\\Favorites"
"Desktop"="\\Windows\\Desktop"
Even I changed these keys, I cannot start my start-up process...
Are these keys enough to start start-up process?
I appreciate any suggestions / supports / instructions!!
Thank you.
hi! Camrade!
Re Qeuestions
1;certificate sotre. 3 entries are correct.
@But i am not sure what you removed???
i did not remove any thing and copy it to HV.
@yes update time must be in HV also.
like follows.
without this. no work as sertificate authentification.
[HKEY_LOCAL_MACHINE\Comm\Security\SystemCertificates\Privileged Execution Trust Authorities]
"UpdateTime"=hex:\
00,e0,46,50,1c,96,c5,01
2;if your mui can be signed, they should be workable.
but i am afraid your mui of core-dll Strings Table were broken.
PLS reffer this thread about that!
http://forum.xda-developers.com/viewtopic.php?t=49423&highlight=
if you are not sure, pls send me one of them to check it.
3:re-iniboj.dat, as you told me the eror message of delfile.exe will notice you, because i doesnt exisit in rom files. it was in XIP area.
But dont mind that. procceed it!
4;Shell folders; that is enough in hv, to just specify the loaction of Shell folder.<this also discribed in shellres.dll.
But no start up menu if there were localized Shell folders by failed initialized 2 dat files.
@the os can boot even the shellres.dll.xxxx.mui is not worked,
just missing Programs in StarMenu.
Now i am afraid your shellres____mui is read by OS, but it was incorrect.
@to change the Dr.Johnson screen to Japanes one, replace "stylus2.192.gif" and "stylus1.192.gif" with ones from JP os.
But the fisrt sentence before Stylus work for Dr.Johnson is from Shellres.mui, so your are failed in to read shellres_mui if it was still english.
Good luck!
Almost completed
Thank you, Asukal!
With your responses and instructions, I can finally boot my Universal with my language from boot screen!
I’ll make init*.dat file and try to make more localized ROM.
It seems a little difficult (complicated) to make initflashfiles.dat file translating to Unicode character code. But I’ll try!
Again, Thank you very much!!
shugoh
pls try to write iniflshfile.dat in Katakana, instead of Code,
i did try this some part of them just now.
Seems to be worked. But not sure .........didnt test all of in this dat,
just a part of it.
if the Katakana written dat was workable, it will be so easy to create
the Shell folders in Japanese................ :lol:
Hi Asukal,
I also want to join but I don't have the hex editor....the process is so complicated and the "key" is we have you on this website that do cook the ROM for us. Thanks a lot again.
If you have invented some easy installation files that want me to try, please let me know. I tried to edit the latest O2 ROM but unsuccessful....
Cheers,
chris_khho said:
Hi Asukal,
I also want to join but I don't have the hex editor....the process is so complicated and the "key" is we have you on this website that do cook the ROM for us. Thanks a lot again.
If you have invented some easy installation files that want me to try, please let me know. I tried to edit the latest O2 ROM but unsuccessful....
Cheers,
Click to expand...
Click to collapse
free hex editors can be downloaded.
many kinds of hex editors were in web.
Anyway, if i need something need test, i will call u! :lol:
Hi, Asukal:
This my be very stupid question...
I could translate html portion of shellres.dll with your instruction.
However, I still cannot do of tapres.sll and tshres.dll.......
Maybe this is because the type of resouce is different from shellres's.
So I tried to move html of tapres and tshres to another resources using PB because the other tools I have doesn't work...
When I wanted to save modified resource on PB, PB said I could not save the new resource because PB could not load resources from executable file...
I know this question is the basic one if I want to use PB.
But if you can show (a) hint(s) to me, I would appreciate your support very much.
Thank you!
shugoh
i guess PB can only save the files as "*****.exe" or "******.dll",
but not as a "******.dll.xxxxx.mui"
so you must save it as "anyname_you_want.dll" with out xxxx.mui to other folder.
then go to next step, because files edited with PB can not to be signed.
To enable to be signed, go following steps.
1;Open "any dll" or exe which havs correct PE header with Restorator.
2;Dlelete all of resources from this dll or exe.<make empty dll>
3:On another window of Resotrator ,
Open "anyname_you_want.dll" edited and save by PB
4rag and drop all resources exept "255" resource from
"anyname_you_want.dll" to "empty.dll"
5;save this empty.dll filled with resources of "anyname_you_want.dll",
as the name of your tagert xxxx.mui
6:Close all windows of resotrator.
7;try to sign on that mui, you may able to sign on that!
Good luck
Thank you for your instruction about PB and html.
however, I still cannot save modified file even though I put file name with *.exe or *.dll.
As my test, I opened x86 file and modified its file and I can save the modified. But still cannot tapres and tshres.......
I also tried some WM5 files, but not succeeded in saving it...orz
I installed all PB functions but for MIPS or SH4, which should not necessary for WM5.
The attaced is the error massage appreared when I wanted to save modifed WM file. (I installed Japanese PB, so error message is in Japanese)
"ta.dll" is only a temporary name for modified tapres.
I appresitate your any comments.
Thank you.
shugoh
I did it!!
Asukal:
I finally can make localized tapres and tsh with your recommended tools!!
Please see my blog at your convenience!
I'll try to localize folders with init*.dat files!!
Thank you very much!!
(If I have difficulties on making init*.dat files, I may ask you suggestions after I make every effort I can make,)
Thanks again
shugoh
Hi, Asukal
I can localize init*.dat file according to your post on May-15.
As you said, it seems OK that we can describe folder names on both *.dat file, not Unicode Code #.
So far I have no trouble with these *.dat files.
Thank you.
shugoh
Glad to here that!
You have done! you r a MAN!
Keep on going Dark Side!
Hello, Asukal
I'm back...
I have had a strange problem. As a matter of fact, I haven't solved this problem even though I could make Universal ROM in my language.
When I make my Universal hard & soft reset, I always see 2 white bold lines above and below "Windows Mobile" on 2nd splash screen.
I found these lines don't appear when I change mui regional setting. I mean no white lines on 2nd splash when I change:
1) shellres.dll.0411.mui to shellres.dll.0409.mui
2) shellresapps.dll.0411.mui to shellresapps.dll.0409.mui
(I'm trying to change English ROM to Japanese.)
0411 and 0409 have exactly same contents; I just change their name and place them on "windows" folder.
3) Change mui setting both of the following from 411 to 409.
[HKEY_LOCAL_MACHINE\MUI]
"SysLang"=dword:00000411
[HKEY_CURRENT_USER\MUI]
"CurLang"=dword:411
With these changes, I can boot my Universal without white lines and Uni seems working well. (Of course, all letters except for the ones in these 2 mui are in English. But I suppose I can see Japanese if I change all 0411.mui to 0409.mui. (Haven't tested)
I also noticed I didn't change the region code in init*.dat. (i.e. LOC_0409_DIRWINDOWSHELP, not LOC_0411_DIRWINDOWSHELP)
So I changed init*.dat files and made new ROM with 0411.mui (incl. shellres & shellresapps).
However, there were still 2 white bold lines on 2nd splash...
I haven't added:
[HKEY_LOCAL_MACHINE\Security\ColdInit]
"Locale"=dword:00000411
"ColdInit2Done"=dword:00000001
"ColdInit1Done"=dword:00000001
Because my Uni has always stuck before the initial setup (screen alignment and Dr. Johnson etc.).
This time, I added these keys per your instruction, but I'm stuck again...
Do I have to add [HKEY_LOCAL_MACHINE\Security\ColdInit] ?
This would not directly relate to my experience, but I think I can find where I made mistakes.
I appreciate your response.
Thank you.
on my rom, i changed
LOC_0409_DIRWINDOWSHELP, to LOC_0411_DIRWINDOWSHELP
also i added folows
HKEY_LOCAL_MACHINE\Security\ColdInit]
but i dont think those are not reason of your problem,
did you tried to edit new one from versin nbf??
i guees the ROM was crashed,,, i never happend,
you think some reason of registry,,,
how about htis,,,
[HKEY_LOCAL_MACHINE\ControlPanel\Stylus\192DPI]
"FontArray"="500,600,900,1000,1200"
"CurFont"=dword:384
this is the for Screen resolution.
But in my case,,without this,, not happend problems like you,,,,
strange,,,,
Hi, Asukal:
I finally find the root cause of 2 bold lines on welcomehead screen!
the mui file taking charge of screen alignment on start-up set-up process causes this problem. I made the new one with PB and solved this problem!!
(I made the previous one with another tool...)
I'm very glad to inform you this and appreciate your supports very much!!!
P.S. However, I'm still stuck with Coldinit... But this is not an issue.

Is there an autorun.exe that points to..

Howdy.
Does anyone know of an autorun.exe which is coded to look in "extendedROM"? (As opposed to "extended_ROM").
I'm aware of PocketPC Installer and that it probably can create a custom autoexec.exe for me, but I'm looking for a free solution if there's already one hacked up out there.
Thanks
--SUmmiter
I thought that it got that value from the registry:
[HKEY_LOCAL_MACHINE\Comm]
"AutoRun"="\\Extended_ROM\\AUTORUN.EXE"
"AutorunCFG"="\\Extended_ROM\\CONFIG.TXT"
"AutoRunType"=dword:0
"TurnRadioFlag"=dword:0
Yes but you have to add this into rom before building if you want it to look for autorun there after flashing
Right. My possibly incorrect assumption was that autorun.exe is hardcoded to look inside "Extended_Rom" for it's config, ignoring what is in the registry. I'll mod my OS rom and try changing AutorunCFG and see what happens.
joemanb said:
I thought that it got that value from the registry:
[HKEY_LOCAL_MACHINE\Comm]
"AutoRun"="\\Extended_ROM\\AUTORUN.EXE"
"AutorunCFG"="\\Extended_ROM\\CONFIG.TXT"
"AutoRunType"=dword:0
"TurnRadioFlag"=dword:0
Click to expand...
Click to collapse
Autorun.exe and config.txt can be anywhere as long as the registry points to them.
(if the registry points to Extended_Rom, then of course the files need to be included in the Extended_Rom.)
My autorun.exe is in windows, and config.txt is in the extended rom, but I've tried it other ways and it's worked.
alot of cooked roms use this feature to do a final modification like loading a theme from the windows directory.
BTW config.txt contains the paths to the files you wish to process, so it doesn't matter where autorun.exe, or config.txt are.
In other words, you could put autorun.exe, and config.txt in windows or anywhere else as long as the registry points to them, and it will process the files on the paths contained in config.txt
Little question, has autoexec any link in startup, or not?
(I make in intiflash registry entry es mentioned before, I have hope corect congig.txt but after HR ... nothing, co customization . Interesting is, that I can launch autoexec in ext rom manualy and it runs ok. I rebuld quite naked WM 6.1 rom)
Thx for help...

[Q] OEM package with dll

hey there,
i created an oem package which contains an dll file, one that exists also in the sys-folder as folder (contains imageinfo.bin and s000), when cooking with my kitchen buildos gives an error, something about that the expected file already exists as folder...
what can i do?
It's not a good idea to over-write a module; in fact, it's a bad idea, because it crashes most kitchens (buildos will crash every time).
1. Why are you trying to over-write a module with a file?
2. If you really want to do it, you need to remove the module from the sys directory. I'm not sure it's a good idea myself; you should at least convert the file to a module. If you don't know the difference between a file and a module, then you should search and find the answer. It's easy enough to do.
It would help a great deal when you start a topic if you give more information. What build are you using? What device? Most importantly, what module are you trying to replace?
Thanks Ted,
sorry for the small amount if informations. I'm using EXEcutor von pako777, it's kitchen tool for the omnia 2... almost, it dissambles the dump-file, then i can delete/add files and then it assembles it again... some kitchens i saw over here a really great, but the executor get the work done...
i found the informations, thanks for the hint i will now try reversmode.exe
right now i want to convert a taskbar.cab to an oem package and so i need to replace shellres.192.dll and some other files
I think that kheb 1.1 (search, it's easy to find) is the best way to make a package for your cab. Just run a snapshot, install the cab, then run another snapshot (+difference). Select the 'make an oem' function. It doesn't make a working oem, but it will dump the reg keys that you need, and collect all the files (I assume they'll all go to windows). It sounds like you're building the rom straight from a dump, and not with full packages? Then you'll need to just swap the new files in for any old ones (as well as add new ones), and figure out how to add the registry keys, if there are any. I guess you can use ceregeditor or something similar to import the keys into the default.hv. Convert files to modules, if that's how the dll's appear in the dump.
You have to be a little careful with an app like kheb (or sk tracker): it may dump out some extraneous files or reg keys, as changes occur all the time to a device's registry and file system. Make sure you separate the wheat from the chaff. It's best not to soft reset after the cab install, if you're prompted to do so. That creates a butt-load of random new reg values that are irrelevant. If any certificates are installed by the cab, you can probably ignore them.
Thanks again, but i used the package creator from ervius to convert the cab, converted the rgu to an provxml and the dll-files with reversmode and everything worked fine
but i will take a look onto kheb, sound promising when converting a cab with setup.dll

[Solved] how to speedup the first boot?

Hi,
I've been cooking my own Roms for a few months and I'm happy with the results.
One big difference I've noted compared with shipped and other master cooks' roms is the first boot time. My last Rom (21683 + Sense) takes over 10min to boot the first time. After the fist boot, the booting time is normal.
Would you have some tips of how to improve it?
Can it be related to the order that the packages are cooked?
or just related to the size of the Rom (about 195 Mb for a Blackstone using LZX compression and CFC manila)?
what compresion do you normally use? LZX, XPR or none?
Anyway to 'slim' my packages more? (I'll try manual PNG compression on my next cook as OSkitchen PNG compression does not work for me)
Thanks in advance.
[Edit]: Thanks for your good advices. now my Blackstone Rom boots in less than 2 min. What I did was:
- Get ride off some provxml and change them for normal reg files.
- Reduce the size of the rom under 180 Mb.
- Manually reduce png and in some case replace by jpgs.
- S2U2 delay start 120 secs.
If someone have additional ideas, pls advise! I'll try!
Well, 195 mb for any LZX rom is a bit too much but this depends of what are you cooking into your rom.
Main things that slow down the boot up are:
provxml files, basically .reg files are much fastets.
Check your Config.txt file , as many files are you trying to install after first boot as ,many time it gets to boot up , these are cabs,mortscripts,provxml.
Dont use png compression if you dont want your theme ruined.
In my Leo i use both LZX and XPR and i have 134 and 158 mb roms.
Leave al the unecessary such default pictures in Album folder,some ringtones and wallpapers, these files are a lot bigs .
ypsmav said:
Hi,
I've been cooking my own Roms for a few months and I'm happy with the results.
One big difference I've noted compared with shipped and other master cooks' roms is the first boot time. My last Rom (21683 + Sense) takes over 10min to boot the first time. After the fist boot, the booting time is normal.
Would you have some tips of how to improve it?
Can it be related to the order that the packages are cooked?
or just related to the size of the Rom (about 195 Mb for a Blackstone using LZX compression and CFC manila)?
what compresion do you normally use? LZX, XPR or none?
Anyway to 'slim' my packages more? (I'll try manual PNG compression on my next cook as OSkitchen PNG compression does not work for me)
Thanks in advance.
Click to expand...
Click to collapse
Yup, provxml's slow things down a ton.
What not to do:
So, you have a reg setting that you put in an .rgu, but it never 'sticks', and you can't figure out why. Someone tells you to put it in a provxml named zzz-BandAid.provxml. Awesome, now the reg setting sticks.
Not so awesome. Now you have two provxml's that run during first boot, one that sets the reg setting to a default value, and a second that corrects the reg setting. XML's are slow (try running one during customization, and you can see just how slow they are).
What to do: Look through all of your provxmls; it's easy to do, just pull them out of the build dump. Find the ones that install reg keys-there are many, and some are huge (mostly the OEM provxml's). Just export the reg keys with a reg editor from your device and put them in an .rgu that gets compiled at the end of your build. Make whatever tweaks you want in that .rgu as well. Make sure you don't eff up the provxml's that install certificates and databases (there are a few that look like reg keys, but it's crap for the databases, so be careful of them). If you use Autorun during customization, there may be an oemprovxml with autorun reg keys in it. Leave that sucker alone; in my experience, it needs to run or else autorun didn't work (I don't use autorun anymore, so I've since deleted it). Put blank or editted (reduced) copies of the provxml's in a package that runs at the end of your build, so that the stock copies are over-written.
You should also look at the apps that run during startup. This slows down first boot a little bit. For instance, you really don't need to have MSVC to run at first boot. So, remove the line in initflashfiles.dat that sends the msvc shortcut into the startup folder. Figure out a way to get it into startup during second boot, like running a cab during customization (slow, though), or better, using a mortscript (fast). There's a lot of other crap that doesn't need to run, like tmail and poutlook (those never need to run at startup, imo). But you need to figure out how to get them to run after first boot, if that's what you want.
Finally, reduce the amount of crap that gets copied into \Program Files. Most apps run fine out of \windows, and using initflashfiles.dat to copy a ton of files is slow and it wastes memory. Just figure out how to make leaner packages. And don't use cab-2-oem converters. They always create packages that copy files out of rom into other directories, which is almost always unnecessary. It's much better to make packages manually (use kheb to find all the files and reg keys, if you can't do it on your own).
My first boot takes ~85 seconds to get to the alignment screen. Removing all the crap from provxml's saved around a minute on the first boot time. 10 minutes is crazy long, you should be able to drop it to 2 min, easy.
WOW
Farmer Ted said:
Yup, provxml's slow things down a ton.
What not to do:
So, you have a reg setting that you put in an .rgu, but it never 'sticks', and you can't figure out why. Someone tells you to put it in a provxml named zzz-BandAid.provxml. Awesome, now the reg setting sticks.
Not so awesome. Now you have two provxml's that run during first boot, one that sets the reg setting to a default value, and a second that corrects the reg setting. XML's are slow (try running one during customization, and you can see just how slow they are).
What to do: Look through all of your provxmls; it's easy to do, just pull them out of the build dump. Find the ones that install reg keys-there are many, and some are huge (mostly the OEM provxml's). Just export the reg keys with a reg editor from your device and put them in an .rgu that gets compiled at the end of your build. Make whatever tweaks you want in that .rgu as well. Make sure you don't eff up the provxml's that install certificates and databases (there are a few that look like reg keys, but it's crap for the databases, so be careful of them). If you use Autorun during customization, there may be an oemprovxml with autorun reg keys in it. Leave that sucker alone; in my experience, it needs to run or else autorun didn't work (I don't use autorun anymore, so I've since deleted it). Put blank or editted (reduced) copies of the provxml's in a package that runs at the end of your build, so that the stock copies are over-written.
You should also look at the apps that run during startup. This slows down first boot a little bit. For instance, you really don't need to have MSVC to run at first boot. So, remove the line in initflashfiles.dat that sends the msvc shortcut into the startup folder. Figure out a way to get it into startup during second boot, like running a cab during customization (slow, though), or better, using a mortscript (fast). There's a lot of other crap that doesn't need to run, like tmail and poutlook (those never need to run at startup, imo). But you need to figure out how to get them to run after first boot, if that's what you want.
Finally, reduce the amount of crap that gets copied into \Program Files. Most apps run fine out of \windows, and using initflashfiles.dat to copy a ton of files is slow and it wastes memory. Just figure out how to make leaner packages. And don't use cab-2-oem converters. They always create packages that copy files out of rom into other directories, which is almost always unnecessary. It's much better to make packages manually (use kheb to find all the files and reg keys, if you can't do it on your own).
My first boot takes ~85 seconds to get to the alignment screen. Removing all the crap from provxml's saved around a minute on the first boot time. 10 minutes is crazy long, you should be able to drop it to 2 min, easy.
Click to expand...
Click to collapse
Thanx for this tut Farmer Ted.
Seems like I also have a lot to do to speed up my first boot
Thanx
Grumps said:
Thanx for this tut Farmer Ted.
Seems like I also have a lot to do to speed up my first boot
Thanx
Click to expand...
Click to collapse
Also check the OEMLang directory for the initflashfiles.dat. Normally, this is 200kb... Mine is 40Kb, and first bootup on my HD2 is 20-30 seconds...
Later bootups are so fast that the HTC Quietly Brilliant animation stops at Brilli and boots the OS...
gotta love farmer teds his reps
i learn from almost every post he makes
think i need some things to be done in my rom to get a even faster boot time
edit: one question though
i just updated ervius kitchen to the latest and it has the future to make provxml files from reg files
if provxml makes the bootup slow wouldnt it be better to make it the other way arround?
all the provxml to reg(just asking as it could be handy for ervius to make it the other eay arround in the kitchen)
miniterror said:
all the provxml to reg
Click to expand...
Click to collapse
Hi,
I don't know if this helps, but there is a tool that you could use for converting some provxml to reg here. It was made for xml --> reg conversion but it is also useful for provxml files that contain "pure" registry settings.
Regards!
Sometimes I have taken the provxml and convert the registry portion to rgu file and delete it from the provxml. Now the provxml only has the file operation and certificate stuff in it.
The thing you have to be careful about is rgu happens early in the boot and provxml happens latter. I learned the hard way by not figuring out why my rgu tweak did not happen. It was another provxml that overwrote the reg settings. Once I found it and deleted those lines everything worked the way I wanted.
RoryB said:
Sometimes I have taken the provxml and convert the registry portion to rgu file and delete it from the provxml. Now the provxml only has the file operation and certificate stuff in it.
The thing you have to be careful about is rgu happens early in the boot and provxml happens latter. I learned the hard way by not figuring out why my rgu tweak did not happen. It was another provxml that overwrote the reg settings. Once I found it and deleted those lines everything worked the way I wanted.
Click to expand...
Click to collapse
For this, OSBuilder is the best. You can see the whole registry before you compile, and you can look up what file causes the changes. It really makes cooking a whole lot easier...
Great thread, thanks for the tips.
What I'm gowing to try is search all provxmls in my kitchen and convert them to one big reg.
Make a new EXT package and name it 'zzzSample' so I'm sure it overwrites all other regs.
If an error exist in the reg created by provxmltoreg the new integrity check in Oskitchen will point me to it so I can easy locate and fix.
After that I delete all provxmls.
But first a backup.
Cheers,
Leo
Edit; btw I think you need to take in consideration that some provxml's contain path which are language depended.
So here's my next tip, create a package which contain these regs in separate files.
zzzSample/
0409/app.reg
0413/app.reg
etc...
Farmer Ted said:
Yup, provxml's slow things down a ton.
Click to expand...
Click to collapse
Great info, just wondering should it be possible to build a rom and make a backup of the registry, once you have that backup, edit the backup and place it at the end of the kitchen and delete all the provxml-files.
I've recently tried to make a little application for converting provxml files to reg files.
Thanks to AlexVallat's XmlToReg this was possible and I'd like to share it with you guys. Still all the credits go to Alex!
It is supposed to handle all provxml files, meaning even those which have other entries along with registry entries.
The most important feature that I tried to implement is recursive conversion of provxml files in order to automatically do in a few seconds what Laurentius described here:
Laurentius26 said:
What I'm going to try is search all provxmls in my kitchen and convert them to one big reg.
Click to expand...
Click to collapse
Example :
To parse all provxml files inside OEM folder(and all included sub-folders) type in cmd prompt:
Code:
xml-2-reg_gui.exe r:OEM
When it's done, you'll get all the converted reg files in a subfolder where the application is placed.
If the provxml files had other entries along with registry entries, they will be left where they were but "reduced"(the registry entries will be removed).
If the provxml files didn't have any registry entries, they will be left where they were untouched.
If the provxml files had only registry entries they will be deleted after convertion.
Backing up of provxml files is done automatically.
So try it and see for yourself if it makes things easier or not...
Regards!
EDIT :
I've made a revised version of the tool which isn't based on AlexVallat's XmlToReg but does the same job plus the reverse here.

.RGU file entries not applied.

While cooking my ROM for testing under emulator, i create a directory called "MyTweeks" and copy it under sys folder.
That directory includes the following files:
1- "mytones.mp3".
2- "initflashfiles.txt" --> empty.
3- "option.xml" --> contents are not necessary.
4- "7fd5181e-f7fc-4404-908a-7f71e2568c53.rgu"
The .RGU file includes:
REGEDIT4
;
; Set Default RingTone
;
[HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0]
"Script"="apr"
"Sound"="\\Windows\\mytones.mp3"
After the ROM boots-up, i found the .MP3 file copied successfully to \windows directory, but the registry tweak is not there
can any one tell me what's wrong with this .RGU?
Also, any registry entry is missing....
You should post this to the respective kitchen thread to get an answer.
you better check for duplicated GUID(number) or post your whole rgu contents. do you have enter(empty line) at its end?
eventually - another guid has priority because of overall number rule(thus your tweak is overwritten by another rgu).
and ignore posts like above...it's typical here;/(you know +1 to posts count, but 0 help given).
pupakota said:
you better check for duplicated GUID(number) or post your whole rgu contents. do you have enter(empty line) at its end?
eventually - another guid has priority because of overall number rule(thus your tweak is overwritten by another rgu).
and ignore posts like above...it's typical here;/(you know +1 to posts count, but 0 help given).
Click to expand...
Click to collapse
Your comment sounds good for me.
I already post all the content of the .RGU file as above, nothing more in the file.
Yes, i entered a blank line just before the end of the file.
There is no other GUID with the same name in the whole project at all, it is actualy unique number like this:
7fd5181e-f7fc-4404-908a-7f71e2568c53.rgu
How can i give this .RGU a priority? or make the changes after all other changes?
if this question couldn't be answer here, where exactly should i post (whitch Threads)?
higher number has higher priority(at last in normal kitchens), so ffxxxxxx- will overwrite 7fxxxxxx-.
just do search for HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0 on whole kitchen(UNICODE search) to determine, if that reg entry is doubled/tripled etc...also, make another search(ascii search) for same reg entry regarding provxmls(as it's another way of reg import, and this is overwriting all rgu's eventually).
on the other hand i wonder about mp3 as ringtone, are you sure, if that file is ok(i mean, if it really work as ringtone on your actual rom)? sometimes system sets ringtone to default, if file set is let's say..bad.
btw, do not make guid by yourself, use tool for this:
www.guidgen.com
ahhh, another thought:
try to add
"DefaultSound"="\\windows\\xxx.xxx"
to your reg.
|
v
Code:
REGEDIT4
[HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0]
"Script"="apr"
"DefaultSound"="\\Windows\\mytones.mp3"
pupakota said:
higher number has higher priority(at last in normal kitchens), so ffxxxxxx- will overwrite 7fxxxxxx-.
just do search for HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0 on whole kitchen(UNICODE search) to determine, if that reg entry is doubled/tripled etc...also, make another search(ascii search) for same reg entry regarding provxmls(as it's another way of reg import, and this is overwriting all rgu's eventually).
on the other hand i wonder about mp3 as ringtone, are you sure, if that file is ok(i mean, if it really work as ringtone on your actual rom)? sometimes system sets ringtone to default, if file set is let's say..bad.
btw, do not make guid by yourself, use tool for this:
www.guidgen.com
ahhh, another thought:
try to add
"DefaultSound"="\\windows\\xxx.xxx"
to your reg.
|
v
Code:
REGEDIT4
[HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0]
"Script"="apr"
"DefaultSound"="\\Windows\\mytones.mp3"
Click to expand...
Click to collapse
1- MP3 as a ringtone is working fine if i manually change it. why you're wondering about that?
2- I tried to do the registry manually after booting, it works great. but in kitchen it isn't.
3- I tried many time to Generate a UUID by the help of the site you sent me with no success.
4- I did a search in the project and found the following:
Search "RingTone0" (4 hits in 4 files)
G:\HTC-HD2\Work\SYS\OS\mxipupdate_metabase_001.provxml (1 hits)
Line 1: <?xml version="1.0"?><wap-provisioningdoc><characteristic type="Metabase"><characteristic type="FileOperation\%CE2%\MenuUpArrowDisabled.bmp\*" translation="install"><parm name="datatype" value="string" /><parm name="semantic-type" value="file" /><parm name="rw-access" value="3" /><parm name="access-role" value="88" /></characteristic><characteristic type="FileOperation\%CE2%\MenuUpArrowBackground.bmp\*" translation="install"><parm name="datatype" value="string" /><parm name="semantic-type" value="file" /><parm name="rw-access" value="3" /><parm name="access-role" value="88" /></characteristic><characteristic type="FileOperation\%CE2%\MenuUpArrow.bmp\*" translation="install"><parm name="datatype" value="string" /><parm name="semantic-type" value="file" /><parm name="rw-access" value="3" /><parm name="access-role" value="88" /></characteristic><characteristic type="FileOperation\%CE2%\MenuSelector.bmp\*" translation="install"><parm name="datatype" value="string" /><parm name="semantic-type" value...
G:\HTC-HD2\Work\SYS\Phone\2a6583ff-6047-46cc-b9be-b7deca1152c3.rgu (1 hits)
Line 125: [HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0]
G:\HTC-HD2\Work\SYS\Shell\mxip_system.vol (1 hits)
Line 71: 
G:\HTC-HD2\Work\SYS\zzz_MyTweeks\ffe8dc40-7d63-11e0-a411-0800200c9a66.rgu (1 hits)
Line 17: [HKEY_CURRENT_USER\ControlPanel\Sounds\RingTone0]
5- I tried "DefaultSound" with no success.
Thanks.
You didn't mention a .dsm. I suspect you need to create one with the same guid as the .rgu.
Farmer Ted said:
You didn't mention a .dsm. I suspect you need to create one with the same guid as the .rgu.
Click to expand...
Click to collapse
I used "totalfire" to create one but the same problem still there.
also, if i removed it from the folder, the BuildOS creates a dummy one with the same results.
really, i fed-up, but i'm thanking all of you whom tried to help
I just need any one of whom success to apply his own registry tweaks in his cooked ROM to tell me how he did it..
As Simple As this....
edit.. I attached the files that i need it to be installed...
ok, this may be weird what i am gonna write, but have you tried to place your ringtone in proper place designed for additional ringtones by initflashfiles?
here's catch - some things WONT work when not COPIED while first boot.
i have no time for explaining this, but try to edit initflashfiles to copy this ringtone to proper place, than edit reg to match.
and another interesting thing: try to rename Mytones to mytones.
before this - check one thing with rom that was not working earlier - make sr, and go into windows to see, if your file became..folder.
there's small chance of getting weirdness with files with capital letters in name, sometimes.
and finally - did you make softreset before checking, if ringtone is set after flash(do NOT check this before first softreset)?
and postfinally - convert your file to something native for WM(weak advice, but...).
btw, skip dsm for this, it is useless for such things.
@pupakota
I tried but still something wrong.
I have no problems with the file copy, the file copied successfully.
The problem with the registry entries... any registry entries within the .RGU file didn't applied after flashing the ROM or even First Softreset after first boot.......
There are nothing changed in the emulator registry for any of the registry entries.
one thing, you are making this for emulator(Oo)?
have you checked your pack on real device?
you shouldn't take emulator behaviour as sure mirror of real thing...
You should try putting another registry key into that .rgu; it could just be a dummy key (like hklm\software\test). Then see if it is parsed during cooking. It's starting to sound more like a provxml is over-writing your values during bootup.
Farmer Ted said:
You should try putting another registry key into that .rgu; it could just be a dummy key (like hklm\software\test). Then see if it is parsed during cooking. It's starting to sound more like a provxml is over-writing your values during bootup.
Click to expand...
Click to collapse
That's exactly what happened.
The Dummy was not posted.
So, Whitch provxml is over writing my REG? or how i could come over this prob?.
robekia1 said:
That's exactly what happened.
The Dummy was not posted.
So, Whitch provxml is over writing my REG? or how i could come over this prob?.
Click to expand...
Click to collapse
Search for all provxml in oem, and go through them!

Categories

Resources