Make Your Own Heat Sink for the LG Optimus 4X HD

Its not a rare occurrence that performing a resource heavy task on your Android device (e.g. … more

Learn How to Create an Old School Dialer

XDA is not only a great source for custom ROMs, kernels, and various modifications for numerous … more

USB Desktop Charger Roundup – XDA TV

Sometimes you learn one way to do something, and that’s the way you do it forever. You never … more

Samsung Galaxy Grand Duos Receives Early CM12 Port

Samsung Galaxy Grand is a dual-SIM phone with a 5 screen that was announced two years ago. … more

Welcome to XDA

Search to go directly to your device's forum

Register an account

Unlock full posting privileges

Ask a question

No registration required
Post Reply

Want more Storage? New bugfixed version 2.1 rc2!

OP tadzio

18th March 2007, 04:02 AM   |  #1  
tadzio's Avatar
OP Senior Member
Flag Munich, Germany
Thanks Meter: 8
 
466 posts
Join Date:Joined: Nov 2003
More
Edit: New version available! Compatible with Kaiser, Titan, Artemis, Hermes etc.
New version 2.1rc2! This is a major upgrade to version 2.0 (and a bugfix to 2.1rc1). The ImgfsTools now support generating ROMs for Kaiser, Hermes, Titan, Artemis and probably quite some more. All Hermes-specific code was replaced with code working for all devices :)

The new version is attached to this post.

These are the screenshots of the original version. Have a look:



This is a completely unmodified LVSW edition WM6. It usually has 47 MByte Storage....

What happened? Well, the IMGFS partition (a.k.a. OS.nb) has 8 MByte free space. Until now it was not possible to shrink the IMGFS partiton and enlarge Storage in return, so that space was wasted.

This has changed - now also on the Kaiser!

I modified mamaich's ImgfsTools so that they now create the smallest possible OS.nb from a 'dump' directory, and also write the partition table and MSFLSH header matching the new size. The result is what you see above.

This is an excerpt from the ReadMe file from the new version 2.1rc2:


ImgFS Tools Version 2

================================================== ==============
(Current version: 2.1rc2)


What it is
==========

These little programs help you with cooking your own ROM. They allow you to unpack an OS.nb file into individual files as you'd find them on your device, and to re-pack them into a new OS.nb which you can flash to your device. Of course, betweem unpacking and re-packing, you'll want to add/modify/remove some of them. :)

The tools are enhanced versions of mamaich's imgfs_tools - a huge Thank You goes to mamaich for creating them, and also for releasing the source code!

The most significant enhancement is that the IMGFS inside the generated OS.nb is no longer of fixed size, but is as small as possible. This means: the more of the unpacked files you remove before re-packing, the smaller it'll get and consequently the bigger your Storage memory will become. Also, the tools are no longer device-specific and should also work other devices than the Hermes.

*** WARNING: ***
Before you flash a ROM created with these tools, make sure you know how to recover from a non-booting ROM! For Hermes and Kaiser, you should install a HardSPL before you use these tools! I accept no responsibility for bricked devices!


Supported devices
=================
These tools have been tested on HTC devices only, and are known to work on Hermes, Kaiser, Titan and Artemis. Other devices were not tested and may or may not work.
If you want to try, I will gladly support you. However, I cannot accept responsibility for bricked devices!


How it works
============

On a high level, this is the chain of actions needed to unpack OS.nb:

RUU-signed.nbh ---(*NBHExtract)---> OS.nb ---(NBSplit)---> OS.nb.payload -->
--(ImgfsFromNb)---> imgfs.bin ---(ImgfsToDump)---> 'dump' directory

At that stage, you will want to edit the 'dump' directory. I recommend using bepe's excellent *Package Tool for this.

The reverse process is:

'dump' directory ---(ImgfsFromDump)---> imgfs-new.bin ---(ImgfsToNb)--->
OS-new.nb.payload ---(NBMerge)---> OS-new.nb ---(*NBHGen)--->
RUU-signed-new.nbh

(The tools marked with '*' are not part of the ImgfsTools, but are also available for free from xda-developers.com. There is also one additional tool, NBInfo, in this package.)



Version History
===============

2007-10-17 2.1rc2
ROMs generated by 2.1RC1 would not boot if created with a certain combination of parameters. Fixed.


2007-10-14 2.1RC1
Major overhaul:
- All Hermes-specific assumptions (like the sector size being always 0x200) are now gone.
- "conservative" mode added to ImgfsToNb and NBMerge
- on devices that have only two MSFLSH flash regions, ImgfsToNb overwrote a few bytes in the XIP section, causing unpredictable results. This was fixed.
- Removed "-emu" support from NBSplit and NBMerge, as this didn't work with WM6 emulator images.


2007-03-18 2.0 RC 2
All tools now linked statically to the MS runtime library, no longer needs DLL. No other changes.

2007-03-18 2.0 RC 1
Initial Release. Starting with version 2 to not collide with mamaich's version numbers.

===================

Enjoy!

Cheers
tadzio
Attached Files
File Type: zip ImgfsTools 2.1rc2.zip - [Click for QR Code] (265.6 KB, 25161 views)
Last edited by tadzio; 24th October 2007 at 09:39 AM. Reason: Bugfixed new release 2.1rc2; now with RecMod.exe
18th March 2007, 04:28 AM   |  #2  
lpsi2000's Avatar
Senior Member
Flag TriState
Thanks Meter: 143
 
2,435 posts
Join Date:Joined: Jan 2004
More
Great job tadzio,
Looking forward to this new tool.
18th March 2007, 04:32 AM   |  #3  
jasjamming's Avatar
Senior Member
Flag In the Basement
Thanks Meter: 1
 
1,246 posts
Join Date:Joined: Nov 2006
Quote:
Originally Posted by tadzio

Have a look:



This is a completely unmodified LVSW edition WM6. It usually has 47 MByte Storage....

What happened? Well, the IMGFS partition (a.k.a. OS.nb) has 8 MByte free space. Until now it was not possible to shrink the IMGFS partiton and enlarge Storage in return, so that space was wasted.

This has just changed!

I modified mamaich's ImgfsTools so that they now create the smallest possible OS.nb from a 'dump' directory, and also write the partition table and MSFLSH header matching the new size. The result is what you see above.

This currently runs on my TyTN with boot loader 1.10 OliPro. I haven't had a chance to test it with other configurations, but I see no reason why it shouldn't work.

I do not plan to offer any cooked ROMs myself, as there are many excellent chefs in this forum already. But I would think a new approach to ROM cooking may emerge: make a ROM as small as at all possible, removing anything that users may not want, and turn every removed feature into a .cab that users can install to Storage (bepe's excellent Package Tool makes this very simple!). This will give maximum flexibility without wasting any memory.

Give me one more day to write up the documentation, and then I'll upload the new Imgs Tools version.

Cheers
Daniel

sounds great man,

once your instructions are posted I will use this technique for Black version 1.2.

Well Done,

Cheers,
18th March 2007, 05:02 AM   |  #4  
pof's Avatar
Retired Moderator
Barcelona
Thanks Meter: 66
 
3,571 posts
Join Date:Joined: Mar 2005
Donate to Me
Well done man
18th March 2007, 06:23 AM   |  #5  
hatori's Avatar
Senior Member
Thanks Meter: 20
 
199 posts
Join Date:Joined: Jan 2005
Thumbs up
Waiting for your great work....
18th March 2007, 08:39 AM   |  #6  
xultar's Avatar
Senior Member
Atlanta, GA
Thanks Meter: 1
 
327 posts
Join Date:Joined: Aug 2003
Quote:
Originally Posted by tadzio

Have a look:



This is a completely unmodified LVSW edition WM6. It usually has 47 MByte Storage....

What happened? Well, the IMGFS partition (a.k.a. OS.nb) has 8 MByte free space. Until now it was not possible to shrink the IMGFS partiton and enlarge Storage in return, so that space was wasted.

This has just changed!

I modified mamaich's ImgfsTools so that they now create the smallest possible OS.nb from a 'dump' directory, and also write the partition table and MSFLSH header matching the new size. The result is what you see above.

This currently runs on my TyTN with boot loader 1.10 OliPro. I haven't had a chance to test it with other configurations, but I see no reason why it shouldn't work.

I do not plan to offer any cooked ROMs myself, as there are many excellent chefs in this forum already. But I would think a new approach to ROM cooking may emerge: make a ROM as small as at all possible, removing anything that users may not want, and turn every removed feature into a .cab that users can install to Storage (bepe's excellent Package Tool makes this very simple!). This will give maximum flexibility without wasting any memory.

Give me one more day to write up the documentation, and then I'll upload the new Imgs Tools version.

Cheers
Daniel


Brilliant! Truly BRILLIANT!
18th March 2007, 11:47 AM   |  #7  
Penske MB's Avatar
Senior Member
Flag California
Thanks Meter: 0
 
368 posts
Join Date:Joined: Feb 2007
good job!!!!
18th March 2007, 02:11 PM   |  #8  
Junior Member
Flag Sydney
Thanks Meter: 0
 
5 posts
Join Date:Joined: Jun 2006
More
That would be great findings for upcoming roms. For curiosity sake, are there any initials for increasing phone storage from extended rom. Cheers.
18th March 2007, 02:28 PM   |  #9  
Senior Member
New York
Thanks Meter: 97
 
1,845 posts
Join Date:Joined: Dec 2006
More
That's just great... We're all going to run for the smallest ROM possible ! Even maybe strip out Windows Media Player (We all use other players...) and some of the useless aplications (Who uses Solitaire or Bubble Breaker ?)
18th March 2007, 02:55 PM   |  #10  
Member
Flag Tokyo
Thanks Meter: 0
 
35 posts
Join Date:Joined: Nov 2006
who uses Solitaire or Bubble Breaker

Hey. Don't knock it till you've tried it!


But I still wouldn't mind if it was in a .cab

Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes