PPCGeeks

PPCGeeks (http://forum.ppcgeeks.com/index.php)
-   HTC Titan (http://forum.ppcgeeks.com/forumdisplay.php?f=44)
-   -   Custom ROM Howto *Advanced Devs Only* (http://forum.ppcgeeks.com/showthread.php?t=11174)

zeurx 11-06-2007 01:52 PM

Custom ROM Howto *Advanced Devs Only*
 
Custom Titan ROM ***For Advanced Users Only***

I will not take any responsibility for bricked titans. If you do not understand a step stop and do not try to flash it to your phone!

Step 1: Download the 6800 ROM tools kit
Titan Custom Rom Kit.rar in my folder on the ftp
Step 2: Download a official ROM from Alltel or Sprint
Step 3: Extract the ROM
open a command line to the location you saved the official ROM to.
Use nbhextract to unpack the ROM into all the parts (boot splashes, radio, os, extROM)
Code:

nbhextract RRU_Signed.nbh
This will also give you important information used to repack the ROM
Code:

=== NBHextract v1.0
=== Extract contents from HTC NBH files
=== (c)2007 xda-developers.com
=== by: pof & TheBlasphemer based on itsme perl scripts

Device:  TITA10000
CID:      ALLTE001
Version:  2.14.671.3
Language: USA

Step 4: Split the OS ROM
Next use the nbsplit command to break the OS portion of the ROM into the payload and extras
Code:

nbsplit –titan 0#_OS.nb
This will produce 0#_OS.nb.payload and 0#_OS.nb.extras, we will not worry about the extras portion
Step 5: Convert the nb to a bin
Code:

imgfsformnb 0#_OS.nb.payload imgfs.bin
Step 6: Convert bin to dump
Code:

imgfstodump imgfs.bin
Step 7: Convert from dump to OEM/SYS (AKA Kitchen)
Use pkgtools included in the ROM Tool kit. Goto File->Open and select the dump directory.
Code:

[Selected Path]
  C:\Titan\CustomRom\dump

[Core OS]
  Windows Mobile-based Pocket PCs

[Versions]
  SYS: 5.2.18125.402
  OEM: 24.6.22001.707
  OEM: 2.20.0.0
  NET: 2.0.7045.0
  OEM: 24.2.22001.707
  OEM: 24.4.22001.707
  OEM: 24.3.22001.707

[Language]
  0409 - English (United States)

[DPI]
  96

[Certificates]
  CN=Microsoft Windows Mobile PCA, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
  CN=OEM_UpdateCert
  CN=DOPOD001

[Missing Manifests]
  d92a4f0a-378a-4482-8fd3-bd127a05e4de.dsm
  723fb954-d931-4348-b672-82a188e587b5.dsm
  4e71f192-a1e0-da69-6fa4-eef7baef76bd.dsm

After getting something similar to the following, go to the Tools menu and select Build Packages. To verify the packages are built go to your dump folder and there should be a OEM and SYS folder
Step 8: Copy OEM and SYS folders
Copy the OEM and SYS folders up one level
Step 9: Have fun!
This is where you add your own applications and modifications. Beware of duplicate files for they will crash the next step. Also I have included the good old Apache Kitchen Walkthrough pdf
Step 10: Repacking
Run BuildOS and select the packages you would like to build into the rom. Also I recommend using Process Manager from sysinternal to find problems. Another place to look if you have a rgu errors is temp\log.txt.
Step 11: Build an image
Go into the temp folder
Code:

imgfsfromdump ..\imgfs.bin ..\imgfs.dev.bin
Step 12: Convert the image to a nb
Go back to where the img.bin and 0#_OS.nb. files are stored. I also recommend renaming the original 0#_OS.nb.payload to something like 0#_OS.nb.payload.org
Code:

imgfstonb imgfs.dev.bin 0#_OS.nb.payload.org 0#_OS.nb.payload –bigstorage
YOU MUST USE BIGSTORAGE!!!
Step 12: Merge the payload and extras
Code:

nbmerge –titan 0#_OS.nb
Step 13: Encode to flashable ROM
Open nbhtools and go to the NB to NBH tab
Enter in the information from the nbhextract and select your new 0#_OS.nb file. Include any other parts like radios and boot screens here.
Step 14: Flashing
Flash the new ROM to your titan. I will not explain this part, for you should already know how to do this or you shouldn’t be making your own ROM.

cmucooper 11-06-2007 02:08 PM

i only have one question. I looked in the ftp and cannot find the rom kit......can you post a link thanks

p.s. thanks for the tutorial

Edit: i found it read your post wrong

dcd 11-06-2007 02:26 PM

[Versions]
SYS: 5.2.18125.402
OEM: 24.6.22001.707
OEM: 2.20.0.0
NET: 2.0.7045.0
OEM: 24.2.22001.707
OEM: 24.4.22001.707
OEM: 24.3.22001.707

what dump is that?

zeurx 11-06-2007 02:36 PM

Quote:

Originally Posted by dcd (Post 115223)
[Versions]
SYS: 5.2.18125.402
OEM: 24.6.22001.707
OEM: 2.20.0.0
NET: 2.0.7045.0
OEM: 24.2.22001.707
OEM: 24.4.22001.707
OEM: 24.3.22001.707

what dump is that?

that is from pkgtools

Edit:
The information was from the touch rom... the only one i was extracting at the time

nerdstrap 11-06-2007 05:31 PM

Is there a note, somewhere in the PPC6800 Rom Tools rar, that tells you to copy over the pkgcommon.dll, that is in the same folder with pkgtool.exe, with the version in the root? I finally noticed the multiple versions and copied the newer version to the running directory to stop the exceptions from crashing the application

dishe 11-06-2007 06:46 PM

...or, you can use DogGuy's Educational rom toolkit (command line kitchen?), which has all these tools you mention PLUS batch file scripts to automate most of the command lines!!

There's a whole thread on it already here:
http://forum.ppcgeeks.com/showthread.php?t=11071

It really seems to simplify alot of this process, so I don't think there really is much need to muck about with these tools directly...

zeurx 11-06-2007 07:55 PM

i guess the biggest think about this tut is you can do it for almost any rom/device this way... and youll have a better/deeper understanding then just clicking 2 bat files

dishe 11-07-2007 12:48 AM

no, the bat files just do the command lines for you. You still have to do all the work yourself, and it comes with a great little tut readme.doc file that goes into detail.

Did you even look at it? Its using mostly the same tools you have packaged here, only he labelled things for Mogul fans to follow easier- I'm fairly certain this would work with any ROM, you just have to drop the .nbh into the proper RUU.

Its really just an easier to follow version of what you posted here. And he beat you to it (sorry!). But I respect that you took the time to write this out for us! Kudos!

jakdillard 11-07-2007 01:19 AM

hey man your work is appreciated despite what others say thank you for your time

nerdstrap 11-07-2007 10:27 AM

Thanks for the tutorial man. I don't get the need for the automated bat files. If you want to learn how to do this stuff, you need to go step by step! I'd like to see the next step in this from you or one of the others making roms. Maybe an example of removing Live Messenger or Office from the ROM and then flashing it to the device.

DogGuy 11-07-2007 02:59 PM

Quote:

Originally Posted by nerdstrap (Post 115881)
Thanks for the tutorial man. I don't get the need for the automated bat files. If you want to learn how to do this stuff, you need to go step by step! I'd like to see the next step in this from you or one of the others making roms. Maybe an example of removing Live Messenger or Office from the ROM and then flashing it to the device.

The point is precisely what was said in the readme / first post of that kitchen, for people to basically be able to open the .bat file and see exactly what is going on (a step-by-step much like Zeurx has written out, but more involved because it has lots of cleaning up and moving of files). Some people do better deconstructing a working object and understanding the process that way. I also mainly wrote the scripts for myself because I found myself breaking apart every custom and stock rom out there to compare and learn how different things were added, removed, and modified. Thats a process I encourage anyone getting into this to do.

Definitely not a bash or anything on Zeurx, quite the opposite actually. The more opportunities and approaches offered for folks to learn the ins-and-outs of the process, the better. Nice job Zeurx!

After reading the steps I do have a question on your process ... what BuildOS are you using that doesn't need a ROM\XIP directory with a pulled boot.rgu from the original nbh, or a renamed os.nb.payload?

I go through a mess of processes with RomMaster and DumpRom to pull the right boot.rgu, but if you have a way of eliminating that step, I'm all ears.

Keep up the good work,
- DogGuy

zeurx 11-07-2007 03:24 PM

crap i left that out :$ well anyways i pulled the XIP extracter from HyperCore i think


All times are GMT -4. The time now is 11:02 AM.

Powered by vBulletin® ©2000 - 2025, Jelsoft Enterprises Ltd.
©2012 - PPCGeeks.com


Content Relevant URLs by vBSEO 3.6.0