Jump to content

Paul's guide to... changing the HTC Touch / T-Mobile Wing PagePool size


Guest PaulOBrien

Recommended Posts

;) BiggUPs to Paul. Your a frekkin genius! I contemplated for a week as to wether or not i try this, then today i did. Wow, what a difference. Anyone skeptical you should grow som balls and go for it. It makes a huge difference to your wing. In the process just make sure you spend som time double checking the hex editor. Im out Peace

Link to comment
Share on other sites

Guest mtn_lion

Paul, you're my HERO! Thanks so much for this. I was starting to get frustrated about having bought the Wing. Then I found your guide, followed the instructions, and it worked flawlessly. I've got a reasonable amount of RAM available for running apps now (~12MB)--and lo and behold, I can actually *use* the camera.

1. How are some people getting >20MB of free RAM?

2. Now, if we could just get VoiceCommand to respond as promptly as it does on my Imate Jam.... ;-)

Thanks again.

Link to comment
Share on other sites

Guest mtn_lion

Re: Question #1 in my previous post...nevermind. I figured out why I didn't get ~20MB free RAM like other people after implementing your awesome pagepool modification: I had already made several registry tweaks that are *supposed to* improve performance, and these were using up my RAM. So after playing around with them tonight, I left them at the values below, providing 12-15MB of free RAM at startup:

1. glyphcache: 16MB (default=8)

2. fatfs cache: enabled, 8MB (4MB datacachesize, 4MB fatcachesize) (default = disabled)

3. replstorecachesize: zero (=default)

So if I crank 1 & 2 back to defaults, I can reclaim more RAM. It's not really clear that these tweaks are improving performance at all. Could it be that WM6 is already pretty optimized as is?

Link to comment
Share on other sites

Thanks for your tip Paul. I was really worry about it at first but actually get it done without any error. I saw some restarted people posting your instruction in different forum and some with different language, they all miss some important little details. I think people should really consider whether they have real good translation skills before doing this. You don't want any one brick his phone just because missing a little step.

Note:

By the way, I am using HTC Touch from CSL carrier is Hong Kong. Just moved from US to HK and this is the first phone I bought in HK. I am using 4MB pagepool and it is working fine. I don't see the need to make it 6MB if 4MB is working fine.

Edited by sfo_sc
Link to comment
Share on other sites

Guest RobrechtV

Hi Paul,

I've been following your excellent guide and was able to get the rom file from my device (Toshiba g900), but I can't find the right place where the page pool size value is located. Searching for the second string (the hex one) didn't return any results. I wouldn't normally bother you with this but I've really tried everything (searching for all possible variants of the string etc.). Do you have any suggestion as to what I might be doing wrong?

Thanks in advance.

EDIT: Damn it. I made a typo and extracted the wrong file. Silly me. Serves me right for trying this at 4am yesterday... ;)

Anyway, the correct file (http://rapidshare.com/files/54236179/Part02.zip.html) doesn't contain the long hex string either! What am I doing wrong? Or is there another way to identify the page pool size offset?

Can anybody help please... not only for me, but for all g900 users out there! :wub:

Edited by RobrechtV
Link to comment
Share on other sites

Guest slim1213

I meticulously followed the directions and changed mine to the 6mb section. NOw my device will not even power on. Does that mean its time to send it back?

[teaser]Welcome to another edition of 'Paul's Guide to...' :wub:

Today's guide is aimed at owners of the HTC Touch and the T-Mobile Wing, as they are 2 devices that seem to have particular problems with device memory, but the same techniques can probably be applied to other devices (untested by myself).

HTC Touch and T-Mobile Wing owners will know that these two devices suffer somewhat from low memory problems. Users need to be careful with what they have running at any one time, particularly if launching memory hungry applications such as the Camera.

Deep in the depths of the operating system of your device, there is something called the 'PagePool'. Without going into too much detail (and as I understand it!), the PagePool is a special area of memory reserved for loading apps into from ROM. This PagePool is a lot faster than ROM, so when things are executed from this 'cache' instead, the performance of a device will be quicker. On the flipside, if you have a 8MB pagepool (HTC Touch) and you're using, say, 4MB of the pagepool, then 4MB of space is wasted that could be program memory. Similarly if you have a 12MB pagepool (!) (T-Mobile Wing) in this instance you would we wasting 8MB of space!

The key is striking the balance...

On both my Touch and my Wing, i've been experimenting with the PagePool, and have personally settled on 4MB. I've tried 2MB (bad), 4MB, 6MB and 8MB, and I think I can happily use 4MB without noticing a performance decrease. I'm tempted to try 6MB out for a bit longer, particularly on the Wing (which has a generally better state of affairs than the Touch it seems), but this guide will let you choose your own.

Sadly, these PagePool settings are in an area that cannot be easily changed, hence this is a ROM guide.[/teaser]

Firstly, a disclaimer.

This guide involves downloading, editing and flashing of your device ROM.

This is dangerous, very dangerous. In a worst case scenario using these techniques, your device will become unusable, with a corrupted 'OS area'. While your bootloader will (should) still be accessible, your device will be a paperweight until such time as a RUU (Rom REPLACE INTO Utility) becomes available for your device with the shipping ROM. We won't be able to help you, and your operator / manufacturers won't either. It's quite possible your warranty will be invalidated by editing your ROM.

If you follow this guide, you take full responsibility for what could happen. I have of course successfully been through this guide myself, but be aware that I TAKE NO RESPONSIBILITY SHOULD SOMETHING GO WRONG.

You've read the disclaimer and you want to have a play, now what do you need to do? Here's the guide... enjoy ;)

Step 1: Install the permissions CAB to your device

In order to be able to do the read / write operations on your ROM, the security on your device needs to be set up in a certain way. Download this CAB file, and run it on your device.

ITSUTILS_Preperation.CAB

Step 2: Create a directory and download itsutils

Now we need to create a working directory. I suggest creating a directory called 'pagepool' on your desktop. When you've done this, download this ZIP file, and extract it to the new directory.

http://nah6.com/~itsme/itsutilsbin-20070323.zip (Kudos to Willem Jan Hengeveld (aka itsme) for this excellent toolkit!)

Step 3: Extract the ROM from your device

We're now going to extract the ROM from your device. This is a completely safe operation, so don't panic yet :D Take the following steps...

- Ensure device is connected to PC and Activesync'd / WMDC'd

- Open a command prompt at your new directory

- Type 'pdocread -l' (minus the quotes of course)

You will then be presented with something that looks like this:

 70.95M (0x46f2000) TrueFFS

	   |		   3.06M (0x30fc00) Part00

	   |		   3.06M (0x310000) Part01

	   |		  64.82M (0x40d2000) Part02

We want to read the Part02 area (the bottom line above), so...

- Type 'pdocread 0 0x40d2000 Part02.dump' substituting 0x40d2000 with the appropriate value from your 'pdocread -l' output

You will see something like 'CopyTFFSToFile(0x0, 0x40d2000, Part02.dump)' appear, and after a wait of a few minutes (it is dumping a lot of data!), you'll be returned to the command prompt. During the operation you can open Windows Explorer to your working directory and see the file growing.

Step 4: Use a hex editor to modify the pagepool size

To edit your Part02.dump ROM image, you'll need to use a Hex Editor. The instructions below assume use of the excellent, free HxD application.

After installing and launching HxD, do the following...

- Open your new 'Part02.dump' file

- Click 'Search'

- Enter 'NKKD8'

- Press F3 to find the second instance

- Click 'Search' again

- Change 'Data Type' to 'Hex Values'

- Enter 'FF FF FF FF FF FF FF FF 9B 4F FF FF 64 B0 00 00' and hit search

You will then be presented with the search results as shown below.

22-Jun-2007_HxD.jpg

After 8 more values, you'll see your pagepool setting. In the screenshot aobve, it is set to '00 00 40 00', which means 4MB. The possible values are as follows:

4MB = 00 00 40 00

6MB = 00 00 60 00

8MB = 00 00 80 00 (HTC Touch default)

12MB = 00 00 C0 00 (HTC Wing Default)

(for reference, on both my Touch and my Wing the offset location is 37B558... you can go straight to this location be selecting 'Search -> Goto').

So, to change your pagepool size...

- After locating your current pagepool value, REPLACE INTO it to one of those shown above by selecting the value and overtyping

- Select File -> Save As, and enter a new name (e.g. Part02.4MB.dump)

- Exit the hex editor

You have now edited your ROM dump, and are ready to flash it back to the device!

Step 5: Flashing your edited dump back to the device

So this is ; -- it gets dangerous. If you've done something wrong with your dump, then nasty things could (probably will) happen. If the flashing process goes wrong, then nasty things could happen. One final warning - you undertake this step at your own risk! Ready to continue? OK then...

- Ensure device is connected to PC and Activesync'd / WMDC'd

- Put the device in flight mode. This is for safety reasons... receiving a call during the flash would probably be bad

- Open a command prompt to your working directory (or use the one you already have open)

- Type 'pdocwrite Part02.4MB.dump' (or whichever name you used in the step above)

You will see something like 'CopyFileToTFFS(part02.4mb.dump:0, 0, 040d2000)' appear, and after a wait of a few minutes (it is writing a lot of data!), you'll be returned to the command prompt. DO NOT USE THE DEVICE DURING THIS OPERATION!

Step 6: Soft reset, cross fingers

Has that command finished (i.e. you have control again at the command prompt)? Then you're done! Simply press the soft reset pin on your device, and when it comes back up, you should see you the amount of program memory in the Settings -> Memory applet has changed. Good job! You can breathe easy again :D

P

Link to comment
Share on other sites

Guest krizduel

hi paul, im a noob with this. just got the wing and im trying to do what you did! i did step 1. and 2, now how do you make a directory, do i make em on the desktop or devise? and also how do you open the commond prompt>? thanks in advance!!!

Link to comment
Share on other sites

Guest krizduel

hi paul, im a noob with this. just got the wing and im trying to do what you did! i did step 1. and 2, now how do you make a directory, do i make em on the desktop or devise? and also how do you open the commond prompt>? thanks in advance!!!

Link to comment
Share on other sites

  • 2 weeks later...
Guest payaso77

This is a great post. Thanks for the guide. I've done stuff like this to PSP XBOXs and 360s, but to something I have to have like my cell phone, I was a bit nervous. Works great. Used the 4MB and now I have 24.54 Free instead of 9.4MB That awesome. I can see why you got your title.

Link to comment
Share on other sites

  • 2 weeks later...
Guest cesarvela

Hi paul...I followed step by step with no problem at all, thank you.

Do you think is posible to change, doing procedures like this, the memory of storage reduce and add it to program area?? That would be great.

Thak You

Cesar

Link to comment
Share on other sites

Guest hulsmsc

Im new to this site. I found this post searching google for a memory fix on my new Wing. I just performed this hack and it worked great. Thanks for the great post. I do have one question... If I hard reset the device ever will these settings keep, or will I have to change the PagePool again?

-Scott

Link to comment
Share on other sites

Guest cesarvela
Im new to this site. I found this post searching google for a memory fix on my new Wing. I just performed this hack and it worked great. Thanks for the great post. I do have one question... If I hard reset the device ever will these settings keep, or will I have to change the PagePool again?

-Scott

They stay

Link to comment
Share on other sites

Guest Confucious

It's a lot easier on the Athena - just run Midget's prog, it asks you what size you want (after asking for the offset) and does it all for you!

Link to comment
Share on other sites

Paul,

I've been in IT for a while and this had my heart in my throat as I waited for my Wing to reboot. My memory went from 2.3 Mb to 17.51 Mb updating with the 6 Mb patch file. I read the entire post and would like to just post a hiccup I saw... when I rebooted, the Wing rebooted itself about 3 times in a row before coming up completely. I didn't see anything showing this as normal but it works, and it works well. I apppreciate this guide. Touch sucked before this.

Cheers,

Will C.

Link to comment
Share on other sites

Guest georgessl
Happy to help!

Hmmm, now what to tweak next ;)

P

Hi Paul, THANKS so much for the guide. I just flashed my WING today and everything went phantastic. I started to hate my Wing since I could not open more then 1 programs, especially when I did not soft reset in a while. Now I run IE, opera browser, camera, KINOMA media playeron top of Styletap Palm shell.

It's amazing!! How can they sell the WING without enough memory in the first place????

THANK YOU!!!!!!!

Georg in L.A.

Link to comment
Share on other sites

Guest MrCrimson

Paul-

Thank you so much for this guide!

I did it, carefully, and thoughtfully last night on my T-Mo Wing.

A word of warning to anyone thinking of doing this, this wasn't my first hex edit. I remember doing hex edits on my Commodore 64 save games, in order to... enhance my in game money, without a guide. Obviously the stakes were much higher here. If you accidentally changed ANYTHING else besides the affected section, you quite likely will BRICK YOUR PHONE. Know the risks and do it while you won't be distracted... or better yet, not during a major thunderstorm. ;)

However, the results are nothing short of amazing!

Typically, I've been able to only use my camera when either:

  1. All other apps have been shut down.
  2. The phone has been freshly restarted.
I went with the 4MB option, and my free memory on the program side went up to ~20MB's from around ~7 or 8ish.

The ability to think, "Man, look at that, I'd love to take a photo of that real quick.", and then not immediately consider, "When did I reboot my phone last?", is a real joy.

Just to test things, I've tried opening nearly every app I have, and the camera still comes immediately only after hitting the button.

Huzzah! Thank you Paul! You are truly a life... errr... phone saver!

-Crim

Edited by MrCrimson
Link to comment
Share on other sites

Guest schrodinger

Paul

I just flashed my Wing using your updater. I had no major problems, and true to its word, the memory increased roughly three fold and as expected, the results (not to mention the usability of the device) is fascinating.

I just wanted to post a few minor issues:

1. In page 3, someone presented an detailed (step by step) version of your instructions. I think the colleague did a remarkable job, but some of the program files have been CAPITALIZED. The files in the pagepool directory are usually not capitalized in their entirety (for example, Part02.dump). One needs to pay attention to this minor issue if following the more detailed instructions.

2. When you run the patch, make sure you select "browse" and identify the "Part02.dump" file for patching. The default says "Part02.dump" but gives you an error message if the "browse" function is not utilized. I remember reading that one user had similar issues, and he went the safe route (using the manual edit).

A few more questions:

1. Is it okay if I delete the UACcontents file from my wing. It shoots a reminder that "File 0 is a system file" and I should probably not delete it.

2. Are the results significantly different if using a 4MB pagepool? I went with 6MB thinking it was a safer route and it was the more "tried and tested" method for the Wing.

Thanks for your wonderful work.

Schrodinger

H |Yn> = En |Yn>

Link to comment
Share on other sites

Guest mtn_lion
Happy to help!

Hmmm, now what to tweak next :(

P

Paul, if you're looking for the next thing to tweak--I wouldn't know where you'd start, but--as I've complained elsewhere (there's a whole thread on it), the speed and accuracy of Microsoft VoiceCommand running on the Wing are both MUCH worse than the same app's performance on the Imate Jam. Fix that and you'd be in line for a Nobel.... ;)

Link to comment
Share on other sites

Guest alexkywalker

;) I am in the middle of the process right now... after hitting "ENTER" when typing the pdocwrite Part02.my.dump I didn't see any "Copying...." stuff, the cursor just jumped the line.

It's been 4 minutes so far, I have my fingers crossed... :(

I opened Task Manager and noticed that the pdocwrite command is there and consuming memory, so I think that means that it must be working...

Stay tuned for the conclusion of this....

Edited by alexkywalker
Link to comment
Share on other sites

Guest alexkywalker
:( I am in the middle of the process right now... after hitting "ENTER" when typing the pdocwrite Part02.my.dump I didn't see any "Copying...." stuff, the cursor just jumped the line.

It's been 4 minutes so far, I have my fingers crossed... :D

I opened Task Manager and noticed that the pdocwrite command is there and consuming memory, so I think that means that it must be working...

Stay tuned for the conclusion of this....

It's been almost 40 minutes and nothing ;) ... however "pdocwrite" has decreased its memory usage... What's going on? :)

Link to comment
Share on other sites

Guest alexkywalker
It's been almost 40 minutes and nothing ;) ... however "pdocwrite" has decreased its memory usage... What's going on? :D

Phew... for whatever reason Vista disconnected my device and I didn't notice it, so that's why there was no "CopyFileTo..." message when I hi ENTER.

Now it's in progress...

START TIME: 8:09 PM (PST)

:( waiting...

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.