PPCGeeks Forums HTC Arrive HTC HD2 HTC Thunderbolt HTC Touch Pro 2 HTC Evo 4G HTC Evo 3D Samsung Galaxy S II Motorola Droid X Apple iPhone Blackberry
Go Back   PPCGeeks > Windows Mobile > WM HTC Devices > HTC Apache
Connect with Facebook

Notices



Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 01-18-2007, 04:07 AM
Wideawake's Avatar
Founder & Owner
Offline
Pocket PC: Samsung Galaxy S2
Carrier: Sprint
Location: Clayton, NC
 
Join Date: May 2006
Posts: 5,556
Reputation: 4519
Wideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributions
Mentioned: 8 Post(s)
Tagged: 0 Thread(s)
Send a message via Skype™ to Wideawake
How To: Build your own Custom ROM!

First let me say that Im a novice at this, so take what I have said below with a pinch of salt. As its all done from my head and not recreating the steps myself. And if anyone wants to correct me on any point that Im wrong, feel free to do so. I took a simple method in which you had to use the command prompt and made .bat files to enter everything for ya. So this makes it quicker and easier than having to remember that to decode you use the command "prepare_imgfs.exe nk.nba -nosplit" and so on. I will post the advance/command prompt method when I get time. Big thanks always goes out to XDA-Developers, Buzzdev.net, and all others who helped in creation of these tools used. Detailed credits and links on the installer.
Have fun!
Mike

Note: You will need both parts of my custom package attached. And you have to be logged in to see and download the files.


Files you need to work on and how to get them.


1. You will need to download the Custom ROM package I put together. It includes almost every tool that I myself personally use in the making of my Custom ROM and other development tools. Once you have downloaded the package, extract the .exe file from the .zip. Run the .exe. This will create a new folder located at C:\Custom ROM Tools. It will also place a shortcut to the folder on your desktop.

2. Now we have the toolkit you can begin work. You will need a Offical (and/or unoffical) ROM and/or complete upgrade package. You can download that from the UTStarCom site.

3. Install winrar (located in the Apps folder) if you dont have it installed already. Extract the .exe downloaded by right-clicking on it and extract anywhere you like. (Just remember the location )

4. Once extracted you will have a folder that contains two folders. One will have 3 files in it. (nk.nbf, ms_.nbf, and radio.nbf) The two you want are the nk.nbf (the core OS) and the ms_.nbf (the ExtROM).


Decoding the .nbf to a .nba.


1. To decode you .nbf to a .nba open the Custom ROM Tools folder and cut and paste your nk.nbf into the 1. De-Encode .nbf folder.

2. Run the HTC64 Tool, select Decode. In the browse box find the nk.nbf. Click next, It will give you a warning that you CAN ignore. On the next screen, in the FAT16 File box, change the extension from .fat to .nba. Then click decode. This will decode the ROM to a nk.prj (Project File) and a .nba file which can be dumped.

3. Now you wanna cut you nk.nba from this folder and move over to the folder named 2. IMGFS Tools. Once you have the nbf in the folder you can run the nba_to_dump.bat. This will convert your nbf file into a DUMP folder. This folder contains both files (ones not in folders) and modules (the ones in folders). You can modify this folder as needed for your custom Rom.


Modifing the registry (hv files)

1. You have 3 main files that contain registry entries. (boot.hv, default.hv, and user.hv) boot.hv has been included (XIP Tools folder). The other two you can retreve from the DUMP folder. Make sure you set your folder options to view hidden/system files. Boot.hv is loaded on first boot I do believe and contains HKLM values. Default.hv also contains values for HKLM. User.hv contains values for HKCU. These files have to be as close to matching in values as possible. If one says it then the other should also.

2. Converting the files to txt files to edit. To do so just place whichever you would like to work on, in the folder named 3. HV Tools. Run the appropriate *blank*_hv_to_txt.bat and it will convert it to a txt file, that can be edited.

3. Once you have the txt file, open it and add the following line to the very top. "REGEDIT4" no quotes. And save as a unicode file. If the txt moves and becomes unformatted, disregard the txt file and start over. I would add the line to the top and save as unicode first BEFORE modifing the file, to cut down on issues.

4. Edit the file as you like.

5. Then just run the correct make_*blank*_hv.bat and this will convert it back into default.hv and so on.

6. To replace, just cut and paste it back into the DUMP folder with the exception for boot.hv. To replace/edit this one, go to step 7. Note: Dont go to step 7 until you have recompiled your DUMP folder back into a nk.nba file.

7. Editing/Replacing the boot.hv and boot.rgu (both have to be matching files) In folder 4. XIP Tools you will find the files boot.hv and boot.rgu. If you wanna modify your boot.hv then you can right click on boot.rgu, edit it as you like, and save. The boot.rgu then can be converted to a boot.hv by running make_boot_hv.bat. To replace these files, place your nk.nba into the the XIP Tools folder and run the Replace&AddBootXIP.bat. This will replace both files for you.


Setting up file flash directories. (Creating new folders....etc.)


1. You will need to find the file names initflashfiles.dat

2. Open the file with notepad and add any .lnks or new folder directories you want here.
Code:
Directory("\Windows\Start Menu\Programs\Games"):-File("Pocket Chess.lnk","\Windows\Pocket Chess.lnk")
Would add a link to pocket chess to the games folder.

3. After editing, just click file/save.

4. Install Hex Workshop Trial if you havent already. Open initflashfiles.dat in the hex editor. The first 4 digits should say FFFE or something like this. Highlight those first 4 numbers and right click and delete. This is the header written in by notepad. This HAS to be removed for you initflashfiles.dat to work correctly. Then save.

5. Replace the original file with the modified version.


Rebuilding your nk.nbf from your modified DUMP folder.

1. After you are finished with all the above (minus replacing the boot.rgu and boot.hv) and have a "finished" product. You can run the dump_to_nba.bat which will convert your modified DUMP folder back into a working nk.nba file.

2. Now to convert back to a nk.nbf. To do so, just take ur newly created nk.nba and move it over to folder labeled 1. De-Encode nk.nbf. Run HTC64 Tool and select Encode. It will ask for the .prj file. Open it and press encode. You may get a overwrite warning....just ignore and click ok.

3. You now have a nk.nbf thats ready to be flashed onto your device.


Changing bootscreen.

1. copy your nk.nba file into the directory 5. BootScreen, then rename to nk.fat.

2. Run patchlogo.exe, select nk.fat in the first dialog and your preferred .nb file in the second. Note: If you have a 320X240 image you would like to use, you can use the nb_image_converter_859_418.exe to create a custom .nb file

3. Rename the nk.fat back to nk.nba and convert back into a nk.nbf.


Flashing your newly made nk.nbf.

1. Take the nk.nbf and move to the 6. Flash folder. Once there connect your device to the PC in bootloader mode.

2. Run MaUpgradeUt_noID.exe and wait! Your almost there.

3. After it upgrades, Hard Reset. And voila your own Custom ROM!


Making a flashable ExtROM.

1. Take the ms_.nbf we extracted in the beginning and decode using the HTC64 Tool. This time instead of changing the file extension from .fat to .nba we are gonna leave it as a .fat file.

2. Install Extra Drive Pro Trial, if you havent done so already. Now in Extra Drive Pro. Select the option to make a file to drive. In the panel open up the ms_.fat we just created. This will mount the .fat to a editable drive.

3. Open the drive, you will see a folder that says something like TFAT_SOMETHING. Open it and add your cabs and config.txt here making sure that it is READ-ONLY!

4. Close/unmount the drive.

5. Reconvert back into a ms_.nbf using the HTC64 Tool. Drop it in the flash directory and run MaUpgradeUt_noID.exe. Or you could place both the ms_.nbf and the nk.nbf in the flash directory and flash both at the same time.

Other Info.

You can use the included app Resouce Hacker to edit .exe and .dll files. Important if your gonna be replacing icons of programs.

WinCE Cab Mgr is included so that you may learn how to build/make your own .cab files. Can also be used to extract the contents of .cabs.
Attached Files
File Type: zip custom_rom_toolspart2_152.zip (5.83 MB, 5856 views) Click for barcode!
File Type: zip custom_rom_toolspart1_149.zip (5.79 MB, 5448 views) Click for barcode!
__________________
Reply With Quote
This post has been thanked 21 times.
  #2 (permalink)  
Old 01-18-2007, 11:41 AM
naigaboy's Avatar
Regular 'Geeker
Offline
Pocket PC: PPC 6700 (Apache) ;PPC 6800 (Mogul)
Carrier: Sprint
Location: Maryland
 
Join Date: Dec 2006
Posts: 430
Reputation: 24
naigaboy is just getting started
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Send a message via AIM to naigaboy Send a message via MSN to naigaboy
Lot of info, but I am definitely going to test this out over the weekend. Thanks for trying to make all of us PPC gurus.
__________________
This message has been brought to you by your friendly System/Network Administrator

Hey Brian, Its been 24 hrs, Got my money?
Stop playing with me man.
This what happens man.
You got till 5 o'clock

Kitchen Info:
Reply With Quote
  #3 (permalink)  
Old 01-18-2007, 03:54 PM
JackSchitt28's Avatar
Retired Staff
Offline
Pocket PC: iPhone 4
Carrier: AT&T
Location: New Jersey
 
Join Date: Dec 2006
Posts: 1,443
Reputation: 173
JackSchitt28 is keeping up the good workJackSchitt28 is keeping up the good work
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
thanks for all the hard work mike. thats a huge brain overload for me right now. i will have to read it piece by piece over time to grasp the whole concept or else my head might explode.
__________________
No more Sprint for me. Thank you Baby Jesus.

Reply With Quote
  #4 (permalink)  
Old 01-18-2007, 03:59 PM
Wideawake's Avatar
Founder & Owner
Offline
Pocket PC: Samsung Galaxy S2
Carrier: Sprint
Threadstarter
Location: Clayton, NC
 
Join Date: May 2006
Posts: 5,556
Reputation: 4519
Wideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributions
Mentioned: 8 Post(s)
Tagged: 0 Thread(s)
Send a message via Skype™ to Wideawake
Its actually been dumbed down with the use of the .bat files. And yea I hope to see some user custom ROMs available soon
~Mike
Reply With Quote
  #5 (permalink)  
Old 01-18-2007, 04:15 PM
Bushrod's Avatar
PPCGeeks Regular
Offline
Pocket PC: My using is a Touch Pro
Carrier: Sprint
 
Join Date: Jan 2007
Posts: 157
Reputation: 20
Bushrod is just getting started
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
How much free space is there in a ROM to add files? For example, if I wanted to create a ROM with something that takes 2.5 MB already installed, would I just copy the files to the directory, create the reg entries and add the link with initflashfiles.dat? This sounds pretty simple!
Reply With Quote
  #6 (permalink)  
Old 01-18-2007, 04:17 PM
JackSchitt28's Avatar
Retired Staff
Offline
Pocket PC: iPhone 4
Carrier: AT&T
Location: New Jersey
 
Join Date: Dec 2006
Posts: 1,443
Reputation: 173
JackSchitt28 is keeping up the good workJackSchitt28 is keeping up the good work
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
i am scared. makes my face tingle thinking about doing this.
Reply With Quote
  #7 (permalink)  
Old 01-18-2007, 04:22 PM
MadManX's Avatar
PPCGeeks Regular
Offline
Pocket PC: Touch Pro
Carrier: Sprint
Location: Maricopa, AZ
 
Join Date: Dec 2006
Posts: 73
Reputation: 15
MadManX is a n00b
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Send a message via AIM to MadManX
Great work...

Well when I'm done moving and get some time to rest... I think I'll borrow one of your ROMs and start hacking away at my requests Anyone know where I can find the old Red Sprint Logo?

-MadManX
Reply With Quote
  #8 (permalink)  
Old 01-18-2007, 04:28 PM
JackSchitt28's Avatar
Retired Staff
Offline
Pocket PC: iPhone 4
Carrier: AT&T
Location: New Jersey
 
Join Date: Dec 2006
Posts: 1,443
Reputation: 173
JackSchitt28 is keeping up the good workJackSchitt28 is keeping up the good work
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
here are 2 variations of it

Reply With Quote
  #9 (permalink)  
Old 01-18-2007, 04:58 PM
Wideawake's Avatar
Founder & Owner
Offline
Pocket PC: Samsung Galaxy S2
Carrier: Sprint
Threadstarter
Location: Clayton, NC
 
Join Date: May 2006
Posts: 5,556
Reputation: 4519
Wideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributionsWideawake should be added to the payroll for their contributions
Mentioned: 8 Post(s)
Tagged: 0 Thread(s)
Send a message via Skype™ to Wideawake
Yea bush that's it, simple as that but it may take a lot of trial and error before u get I completely figured out.

Jack just give a whirl, promise its not as hard as it looks.

madmanx feel free too, and enjoy.
~Mike
Reply With Quote
  #10 (permalink)  
Old 01-18-2007, 05:02 PM
Bushrod's Avatar
PPCGeeks Regular
Offline
Pocket PC: My using is a Touch Pro
Carrier: Sprint
 
Join Date: Jan 2007
Posts: 157
Reputation: 20
Bushrod is just getting started
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
It looks pretty simple, in theory!

How would I put files in \Program Files? I can see all of the decoded files from the \Windows folder. What I'd like to do is start with something simple like TCPMP in ROM. Do you think that is possible?
Reply With Quote
Reply

  PPCGeeks > Windows Mobile > WM HTC Devices > HTC Apache

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On





All times are GMT -4. The time now is 06:01 AM.


Powered by vBulletin® ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0
©2012 - PPCGeeks.com