|
||||
[TUT] Creating OEM's for your ROM
This tutorial is designed to teach you the method I use to make simple OEM's.
Not all .cabs can be made into OEM's. Some will need some advanced trickery. This thread will be open to discussing that advanced trickery. I will answer any questions that arise, and other members can share their experiences/knowledge as well. Not all topics are going to be added to this initial release, but I will add them with time, So check back later for more details! Insert bold colored disclaimer here about how it is not my fault if you mess up your phone or lose sleep after reading this tutorial... Thanks go's out to: -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- - Ervius @ xda. It's his program - PPCGeeks.com users. I've learned most everything here and can't list everyone. Misc. Stuff -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- - For this Tutorial, Ervius's Package Creator will be reffered to as EPC. - Here are some links to some other tutorials that may be helpfull when making OEM's: Prerequisite Reading, Recommended... -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Tutorial: Adding Registry Entries to your Rom (RGU Method) - Helpfull for learning the RGU structure Customizing Your Rom: Adding Personal Files & Other Stuff - Helpfull information on the initflashfiles.txt file. What is an OEM? -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- An OEM... It's a package that Rom Chef's use to install files into a Rom. once a Rom is flashed, .cab files are installed. Cab files are converted to an OEM so those programs can be installed into a rom. Not a good definition, but it'll do. Files inside an OEM, What are they?: -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- {guid}.DSM - I don't know the contents, I don't care, never needed them, so who cares what it contains? It's just gotta be there... {guid}.RGU - This file contains the registry entries for your OEM initflashfiles.txt - This file copies your files to where they need to be when winmo starts. option.xml - This file is needed by BuildOS. Specifies the Name, GUID, BuildOS description, other OEM requirements, etc... Everything else should be from your .cab file Prepare your HDD -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- By this I mean, download the attachments. Here is a look at my directory structure looks like on my harddrive where I prepare my OEM's: ..\oem_requests ..\oem_requests\vga_oems ..\oem_requests\regular_oems ..\oem_requests\ervius package creator ..\oem_requests\a_c When you are doing OEM's, EPC will create your oem's directory directly off of where your input cab was. So I would place my cab files in the appropriate directory. So decide how you want to do it, make your directories, unarchive the attached EPC, and copy the attached Kevtris.cab to your new OEM directory. Once you've got that done, here is a walkthrough of making an OEM out of kevtris.cab Let's build a simple OEM from Kevtris.cab: -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 1. Open Ervias's Package Creator 5.4 2. Click the "Open Cab File" button bottom left 3. Select your .cab file and click "Open" (This will open your .cab with a program called "WinCE CABs Analyzer" program) 4. On the top row, Click the 7th icon from the left. When you roll your cursor over it, it will say "Extract CAB Files with original name in folder". This will open a directory selection window, DO NOT CHANGE THIS, I ALWAYS just click the "OK" button 5. Once this is done, you can exit WinCE CABs Analyzer simply by clicking the "Red X" in the top right corner. 6. This will take you back to EPC to the initflashfiles tab. This where you create your start menu shortcuts. For this example, click kevtris.exe in the window, select the Games button, and then click apply. You should see that it created/added Kevtris.lnk. Click the "Done" button on the left, this will take you back to the main screen. 7. Here, click "Complete Package" and the program will tell you that you are Done, and you are. Now back to your File Explorer, you will notice that a new directory was made where the original .cab file was, this is your OEM. Copy to your kitchens ..\kitchen\OEM folder and enjoy. If you are using PPCKitchen.orgs kitchen, copy the OEM into your ..\USeR_OEM folder and restart BuildOS. I've included a basic .cab file and it's finished OEM. Here are a few notes on this one. - This contains a SetupDLL.dll file... You know how when you install some cAB's they prompt you for your language, screen resolution, unzips files (weatherpanel), etc??? This file is responsible for this. Now while this one does nothing, I always delete them. You will have to figure out what it does and manually adjust your OEM to compensate. Each one will be different and will come to you with experience. Figure 1: Screen shot of Main Screen w/correct options selected. Figure 2: Screen shot of WinCE CAB Analyzer and location of the 7th Icon Figure 3: Screen shot of the initflashfiles tab
__________________
If this post was helpfull, let me know by clicking Thanks!
Last edited by rstoyguy; 01-02-2009 at 09:25 AM. |
This post has been thanked 33 times. |
|
||||
Re: [TUT] Creating OEM's for your ROM
Advanced Topics & Tricks:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 1: Tweaking the "option.xml" 2: Tweaking the "initflashfiles.txt" 3: Importing Program Settings 4: Handling the Setupdll.dll file 5: Adding multiple files using OEMIzer (Good for Skins-n-Things) Advanced Topics: Tweaking the "option.xml" -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- The file option.xml is basically for BuildOS. Here is the contents from a freshly made OEM: Code:
<?xml version="1.0" encoding="UTF-16" standalone="yes"?> <Items> <Item name="Kevtris" group="Apps" checked="True"> <Tip></Tip> <Guid type="p">e29023a8-1df6-47e1-8b01-4c94430ece83</Guid> </Item> </Items> Kevtris - This is the name that show up in BuildOS Apps - This is the category sub-folder that the program will show up in BuildOS. True - True, it is checked when BuildOS is first started and will be included in the build. The other option is "False" for it will not be checked. Tip - This is the program description when you roll your mouse over that option in BuildOS (older) or to the right of the program name in the newer kitchen. Guid Type - This is the GUID of the OEM, the DSM and RGU files have this same name as well. Now let's add a few more components to the file. Code:
<?xml version="1.0" encoding="UTF-16" standalone="yes"?> <Items> <Item name="Kevtris" group="Apps" checked="True"> <Tip>Kevtris for winmo</Tip> <OEMAuthor>rstoyguy</OEMAuthor> <OEMDate>1/1/2009</OEMDate> <OEMVersion>1.00</OEMVersion> <AppVersion>0.xx</AppVersion> <AppAuthorURL>www.google.com</AppAuthorURL> <Guid type="p">e29023a8-1df6-47e1-8b01-4c94430ece83</Guid> </Item> </Items> This is a text file I keep so I can easily cut and paste the above information into the option.xml of most of the OEM's I do. Code:
<OEMAuthor>rstoyguy</OEMAuthor> <OEMDate>12/9/2008</OEMDate> <OEMVersion>1.00</OEMVersion> <AppVersion>0</AppVersion> <AppAuthorURL></AppAuthorURL> <Require> {GUID} </Require> - Adding this line will require BuildOS to include that OEM as well. Replace the {GUID} with the actual GUID of the OEM. Quote:
Advanced Topics: Tweaking the "initflashfiles.txt" -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Here is a look at the file: Code:
;***************************************************************************** ;initflashes.txt created with packages generator by ervius!!! ;package: Kevtris Directory("\Program Files\"):-Directory("Kevtris 2") Directory("\Program Files\Kevtris 2"):-File("176x220.dll","\windows\000-176x220.dll") Directory("\Program Files\Kevtris 2"):-File("240x240.dll","\windows\000-240x240.dll") Directory("\Program Files\Kevtris 2"):-File("240x320.dll","\windows\000-240x320.dll") Directory("\Program Files\Kevtris 2"):-File("Kevtris.exe","\windows\000-Kevtris.exe") Directory("\Program Files\Kevtris 2"):-File("SetupDLL.dll","\windows\000-SetupDLL.dll") Directory("\Program Files\Kevtris 2"):-File("sounds.dll","\windows\000-sounds.dll") Directory("\windows\start menu\programs\games"):-File("Kevtris.lnk","\windows\Kevtris.lnk") ;Help files: ;end of package: Kevtris ;***************************************************************************** I've already covered handling this file in some other tutorials. So check out this tutorial to find out more: Customizing Your Rom: Adding Personal Files & Other Stuff (the beef is in post #2 for those quick learners) Last edited by rstoyguy; 01-14-2009 at 12:34 AM. |
This post has been thanked 12 times. |
This post has been thanked 10 times. |
|
||||
Re: [TUT] Creating OEM's for your ROM
Quote:
|
This post has been thanked 3 times. |
|
||||
Re: [TUT] Creating OEM's for your ROM
Sorry about posting in your other thread
Honestly, I don't know. I am still pretty new at OEM creating and rom building in general. Did i miss something about email provisioning? Where can I learn about that? It might be just that simple...isn't that something that can be done in OEMizer? It makes sense now that you mention it since it does add to the email tab it probably works just like email. I don't set up my email through the tab. I use Seven and set up email that way...I still need to work that out as well so I don't have to manually setup Seven.
__________________
|
|
||||
Re: [TUT] Creating OEM's for your ROM
I don't mind answering questions to the best of my ability, just don't want my other thread....well...
Learn about EMAIL2 configurations service in the following thread, post #5 http://forum.ppcgeeks.com/showpost.p...76&postcount=5 Last edited by rstoyguy; 01-12-2009 at 01:15 PM. |
This post has been thanked 2 times. |
|
||||
Re: [TUT] Creating OEM's for your ROM
Ok, I read over this EMAIL2 thing. Been trying to wrap my head around it all day actually. I assumed that some of those setings would already bee in teh registry in order for picture mail to be identified but I have not seen anything associated with Picture mail and anything in the EMAIL2 provisioning. Even if I did set up according to that, I am not sure where I would get even half of the settings that need to be used in it.
|
|
||||
Re: [TUT] Creating OEM's for your ROM
Quote:
edit: I have heard that some have just copied \cemail.vol over and cook it into their roms... |
|
||||
Re: [TUT] Creating OEM's for your ROM
Quote:
They are mostly rebuilt when you build, which is why you can mostly ignore them. I think they're completely ignorred in Bepe's latest kitchen.
__________________
Grammar: The difference between knowing your shit and knowing you're shit.
|
|
||||
Re: [TUT] Creating OEM's for your ROM
Quote:
See this: PPCkitchen BuildOS tags |
|
|
|