[Touch GSM ROM Development] Swiftblade:
For Cooks
​

The main reason for creating this thread is that many here in this forum have asked me for the method to change the pagepool of the later ELFin ROMs that are based on the 2.20.xxx.xx stock roms. Incidentally, these ROMs are also used for the ELFs.

Firstly, I must thank duttythroy's thread HERE in the Kaiser forum that inspired me to successfully search for the illusive pagepool offsets in the ELFin ROMs, which I was searching for months. Following the same modus operandi, the unique hex string pattern responsible for the pagepool was found to be:

|03 15 A0 03 | 02 15 A0 13 | 00 10 83 E5 | DA C2 FF EB|

This walkthrough is targeted at the more advance users i.e. Chefs and I shall not be responsible for any damages to your devices if you do not follow the instructions given below.

For Regular Non Cooking Users please Look at The Second Post with the Multi PP Changer (Beta For Now)

Let me do a walkthrough on how to change the ELFin's 12MB Default Pagepool to 18MB Pagepool and other pagepools of your desire

[12MB Pagepool] |03 15 A0 03 | 02 15 A0 13 | 00 10 83 E5 | DA C2 FF EB| ELFin's Default Pagepool

[16MB Pagepool] |10 16 A0 03 | 02 15 A0 13 | 00 10 83 E5 | DA C2 FF EB|

[18MB Pagepool] |12 16 A0 03 | 02 15 A0 13 | 00 10 83 E5 | DA C2 FF EB|

[24MB Pagepool] |18 16 A0 03 | 02 15 A0 13 | 00 10 83 E5 | DA C2 FF EB|

To begin with, we will need a few stuff to perform the pagepool change:

- OS.nb or .NBH file (your targeted 2.20.xxx.xx ROM)

- A Hex Editor [Hex Edit Free 2.5] to edit the offsets

- Alot of guts.... keke :D

1. [HOW TO CHANGE ELFIN'S PAGEPOOL]

Step 1: Open the OS.nb or .NBH file with a Hex Editor

Step 2: Search the for hex string pattern |03 15 A0 03 | 02 15 A0 13 | 00 10 83 E5 | DA C2 FF EB| (Two addresses should be found)

Step 3: At the first address found, change the first two bytes "03 15" to "12 16" for 18MB pagepool

Step 4: Repeat Step No.3 at the 2nd address found

Step 5: Save & Exit the Hex Editor

Step 6: If you are using the OS.nb, start cooking your new ROM with it

Step 7: Flash the new .NBH file to your ELFin and enjoy the 18MB True Pagepool

For other pagepool sizes, change the first byte "03" to "XX" hex value corresponding to your desired pagepool in Step No.3 & 4. (Remember that this is hex value, i.e. "10" = 16MB, "12" = 18MB, "18" = 24MB, etc.)

2. [HOW TO CHANGE ELF'S PAGEPOOL]

Through comparison, I also discovered that the ELF's Default Pagepool is 8MB and is different from the ELFin's 12MB Pagepool within the same ROM. I reckoned then that it must be determined by a different set of bytes in the unique hex string pattern and discovered that they are "02 15", the fifth and sixth bytes of the string pattern:

[8 MB Pagepool] |03 15 A0 03 | 02 15 A0 13 | 00 10 83 E5 | DA C2 FF EB| ELF's Default Pagepool

[4 MB Pagepool] |03 15 A0 03 | 04 16 A0 13 | 00 10 83 E5 | DA C2 FF EB|

[6 MB Pagepool] |03 15 A0 03 | 06 16 A0 13 | 00 10 83 E5 | DA C2 FF EB|

[0 MB Pagepool] |03 15 A0 03 | 00 16 A0 13 | 00 10 83 E5 | DA C2 FF EB|

Step 1: Open the OS.nb or .NBH file with a Hex Editor

Step 2: Search the for hex string pattern |03 15 A0 03 | 02 15 A0 13 | 00 10 83 E5 | DA C2 FF EB| (Two addresses should be found)

Step 3: At the first address found, change the 5th & 6th bytes "02 15" to "04 16" for 4MB pagepool

Step 4: Repeat Step No.3 at the 2nd address found

Step 5: Save & Exit the Hex Editor

Step 6: If you are using the OS.nb, start cooking your new ROM with it

Step 7: Flash the new .NBH file to your ELF and enjoy the 4MB True Pagepool

For other pagepool sizes, change the fifth byte "02" to "XX" hex value corresponding to your desired pagepool in Step No.3 & 4. (Remember again that this is hex value, i.e. "04" = 4 MB, "06" = 6 MB, "00" = 0 MB, etc.)

3. [EFFECTS OF ZERO PAGEPOOL:]

No pagepool or zero pagepool will force the device to go into the dynamic mode where the entire RAM can be used for pagepooling without limits. Your device should be snappier but your used RAM memory might suffers at times. Appear to work well for devices like Elf, Prophet, etc with low RAM memory of 64MB and below. Some tests carried out by the Dynamic Duo ababrekar and htctouchp had confirmed this phenomenon. Tests on Kaiser with 128MB RAM had shown disastrous results: the kaisers were just crawling very slowly... hehe. Some people sweared by it and said it's SUPER-FAST! Well, this you got to find out by yourself...:p

NOTE: I have intentionally described the steps in details in the hope that someone who is good in programming will develop a simple "Change Pagepool" program that can do all these with the simple click of a few buttons. Better still if the progam can change the pagepool of the ROM that is in use through USB activesync...That will be the day! :D

HAVE FUN & ENJOY YOUR TRUE PAGEPOOL! ;)

For Reference: SPB Benchmarking on the different pagepools done by pof and Larentius26

For those who want to change pagepool in ELF, the easy way using USB Activesync, download the small Change Pagepool App (ELF) created by tabi13 below:

ChangePPvAS