Vote if you got 100% SuperCharged! Does it work as advertised?

  • Definitely! Nothing beats it... PERIOD!

    Votes: 1,180 41.0%
  • Very good! Quite happy with the results!

    Votes: 1,051 36.5%
  • Snake Oil! It Does NOTHING!

    Votes: 394 13.7%
  • Makes things worse!

    Votes: 252 8.8%

  • Total voters
    2,877
Search This thread

zeppelinrox

Senior Member
Dec 21, 2010
9,374
21,587
IN THE FREAKIN' OP
Hey if somebody says that minfree tweaks don't work on ICS and JB, you can safely assume that they don't know what they're talking about lol

================================================= ==========================================
Please Rate the thread 5 Stars and click the Thanks Button! (any of my posts will do!) if you have enjoyed using The V6 SuperCharger!
Or consider donating:) - HUGE THANKS to those that have already donated! :cool:
And THANKS for constructive feedback - which makes this mod so AMAZING!
================================================= ==========================================

Rant: So I "cleaned up the OP" by adding little headings and hiding stuff. So if you want to post that it's still confusing, DON'T bother.
If you don't like it, don't use it. (And calling yourself a n00b is a BS excuse - READ and LEARN something like everybody else did.)

So... if you don't read and search first, and ask redundant questions anyway... be ready for...

SLNCMM

Main Download Page is HERE (V6 SuperCharger and all the latest RC/Beta/Tests for Kick Ass Kernelizer, 3G TurboCharger, and Die-Hard Battery Calibrator)

Latest V6 SuperChargers are Black Dog-63457-Fix and For Your Lag

Latest KAK and 3G TC
are HERE
Post #2 Info! - This is for the application of the following 3 Mods to services.jar!
Mod 1. ICS and Jelly Bean - require the Jelly ISCream Mod done in conjunction with the V6 SuperCharger Script to SuperCharger your launcher!
Mod 2. Froyo and up - can have the New Maximum MultiTasking Mods (Maximum Overdrive and the Time Killer Killer)
Mod 3. Sense 4 and up - remove the Sense 4 limit of only 8 visible apps with the Non-Sense App Limit!

These 3 mods are applied with my:
-=Ultimatic Jar Patcher Tools=- (fully automated exe/bat/sh tools) OR...
-=Ultimate Jar Power Tools=- patcher script (formerly called Jelly ISCream Smali Patcher) to automate Step 5 in Post #2 - the smali edits

Note: The webapp needs updating (aka the "Automatic Transmission" in V6 SuperCharger) and won't work on JB!
sigpic3357461_40.gif

.

SuperCharger = Speed + Multitasking!

No more lag! No more launcher redraws! Smooth & Snappy!

It's the ONLY Complete Memory Management Fix!

There is NOTHING ELSE LIKE IT!

It Runs Like A...
SYd4TP


So... HOLD ON TIGHT!


Terms of Use:

99SuperCharger Tweaking:
Of course, I don't own any rights in regards to the actual tweaks applied to system settings.
This means anybody is free to mess with OOM groupings, OOM priorities and minfrees.
So it's fine to modify and share your tweaked 99SuperCharger file as long as you leave the credits intact :)

Developers may include the attached V6 SuperCharger Installation Script in their roms. (This installs 99SuperCharger)
The attached V6 SuperCharger installation script may NOT be disassembled in any way, or be used as a part of any memory management app or package.
This is because it is no different than an app/apk found in the market. It's an installation program.
I don't own any right to tweak OOM Groupings, OOM Priorities, or minfree values. But I do own this program.

ATTN DEVS: Baking the V6 SuperCharger memory system in your ROM is 100% fine.
..................Don't make it a "secret" feature. Make it a PROMINENT feature and give proper credit and a HTML link to this thread.
..................You can include the V6 installation script in the system/xbin folder so users can use it with terminal emulator
.................. - giving it a short name is fine as it's a pain to type long file names in terminal.
..................Do not modify it, do not rebrand it (ie. It's not called "V6script"). Thank you.

This is the only permissible distribution of the attached installation script - unmodified, in a custom rom and in the system/xbin folder.

Modification and redistribution of the attached installation script is not permitted at all.
This means that you cannot feel free to zip up the attached installation script with other tweaks and this means that it is not be edited and shared.

ATTN USERS: If you use or encounter a ROM with the V6 SuperCharger memory system, without proper credit given and no SuperCharger source links, please make the Developer aware of it, and if necessary, please let me know about it. Thank you.

Personal Use: You may tweak the V6 installation script (leaving credits intact) to your own personal liking as long as it is NOT redistributed in any way.

If you want to share this, just link to this thread.
If you want to make a thread in other forums telling people about it, that's great.
But I would prefer that you do not post a copy of the V6 SuperCharger installation script in those forums.

Your co-operation is very much appreciated.

I don't want diluted/broken V6 SuperCharger installations floating around and then have people say it doesn't work.
=============================================================================

Bonus Battery Calibration Info:

First, let me link to my method of calibrating the battery without downtime so you can use your phone normally and do it whenever it's convenient.
It definitely works on Milestone and it seems to work on Droid.
I think that's a pretty good trick, anyway - it may even work on other phones ;)
Note: You can also try my Die-Hard Battery Calibrator script which is on the download page.
Update
: As I suspected, any calibration method doesn't magically make your battery last longer ;)
.............. - All my battery tips/scripts really do is help ensure that you are actually getting a full charge. THAT'S IT.
.............. - Which is why my Die-Hard Battery Calibrator has always notified the user the REAL percentage vs the REPORTED percentage :D
=============================================================================

Summary of Steps (Yeah, it's THIS friggin easy...)

Before you start reading, just know that this is not difficult to implement... it's easy. There's more specifics below but basically:
1. Download a script
2. Install BusyBox (Attached! - see install instructions above the attachments)
3. Install Script Manager (Enable Browse as Root in Config)
4. Load script into Script Manager (Run As Root - the skull and crossbones icon which turns green when selected)
5. Follow instructions/user prompts & select what you want
6. Patch services.jar as needed (see Post 2)

See? EASY!

Note: If you get errors, or fail the driving test, use the SuperCharger Starter Kit from the download page.

Essentially, the Starter Kit makes sure that your ROM has no silly stability issues.

It includes:
A proven busybox
Fixed su binary (for segmentation fault issues with superuser.apk on ICS only)
zipalign binary and sqlite3 binary (used in Update 9 RC*)

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

Know that the script explains what it does before it does anything!
It holds your hand along the way and it will answer nearly all your questions as it moves along!

It works on ALL Android devices - Custom Roms or Stock Roms, Phones or Tablets, it doesn't matter!

Also Note: Nothing else does what The V6 SuperCharger does!
................Not AutoKiller Memory Optimizer, Not Auto Memory Manager, Not Minfree Manager...
................And NOTHING BEATS IT. PERIOD.

So... if somebody says to you that V6 SuperCharger does the same thing as [pick any app], tell them to first read about what they're talking about so that they can actually have an informed opinion.

Get A Taste of The V8 SuperCharger - Some details for 3G TurboCharger & Kick Ass Kernel Tweaks are here (older versions there too)
......................................................... - V8 SuperCharger Alpha for Milestone!

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

Memorable User Comments:

  • "Feels like I have a new phone!"
  • "V6 is one the best things to come to android."
  • "Supercharger rocks bro, I'm actually mad I waited so long to do it..."
  • "I wish I hadn't upgraded yet"
  • "Now I can wait to upgrade",
  • "I was about to throw this phone through the wall",
  • "I was about to return it but now I don't have to",
  • "This cured my phone of cancer!"
  • "Oh man... just applied the V6 Supercharger Script by ZeppelinRox on my Android.. I think it fixed everything..",
  • "My phone is better than new!",
  • "my phones has turned god mode on or somthing",
  • "I never notice this at all, until I flash a new rom and realize its not there anymore lol."
=============================================================================

What's it do?

It makes your phone FAST... super snappy with better multitasking!
It rearranges and fixes the OOM Groupings and Priorites and lowmemorykiller values.

So basically, it's a COMPLETE MEMORY MANAGEMENT FIX!

It's the ONLY one of it's kind :D

NO LAUNCHER REDRAWS, faster than ever, multitasking is better... why?
Because it works with the lowmemorykiller and letting it work the way it's meant to work.

Also, because of the rearrangement, it works the same on all roms!
The problem with using minfree tweakers like AMM or AKMO is that it doesn't work the same on all roms.
Secondary apps may be in slot 3 on some roms but in slot 5 in others!
That's why you hear people comment "I tried AKMO but it didn't do anything..."
Most likely it didn't do anything because the apps weren't sitting where they were expected to be.

So fasten your seat belts and enjoy the ride!

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

RAM Lesson:

Important Note: FREE RAM IS NOT WASTED! - Read Linux Memory Consumption
...................... That article TOTALLY confirms what I've been saying!

To Summarize: Article: "Performance degradation occurs when "Absolute Free Memory" (includes Cached RAM) decreases."
...................... Me: "Lag happens when free ram goes below the 'lag level'"

Same thing, different language :D
Big Thanks to dev hardcore and this post for helping me figure stuff out way back when ;)
=============================================================================

Note: Do this at your own risk - regardless of how little risk there is .
............ It has the UnSuperCharger Option to uninstall, but do a nandroid anyway.
............ Simply reflashing your ROM will also wipe it clean from your system.

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

Requirements:


1. Rooted Android Device. Milestoners, you can use Universal Androot (not in market ?)

2. Script Manager or Terminal Emulator to run the script. Stock ROMs can also use SM to load up boot scripts!

3. Busybox v1.16.2 OR ABOVE. You can use any of the ones attached to this post which contain a Feature Rich busybox v1.19.4 by wraithdu (CWM flashable.zip, "Normal" Installation script by me and one which reinstalls BusyBox on EACH boot by me.)

OR,,,

Grab the SuperCharger Starter Kit and have busybox plus other tools (fixed su binary for ICS with superuser.apk and not supersu.apk, zipalign binary and sqlite3 binary) installed instantly!

BusyBox WARNING: Some versions are "minimal" with many missing applets and functions! I also find v1.18.3, v1.18.4 and 1.185 VERY much a hassle with errors that should NOT be errors! Avoid any such versions! Minimal is BAD!

4. Optional: AutoStart Script by me :D - Enables Stock ROMS (Milestone + a few other devices) to utilize etc/init.d for boot scripts.
=============================================================================

Installing/Using:


1. Download the attached V6_SuperCharger_for_Android*.txt/pdf script and save to your sdcard.
- Do NOT run the V6 SuperCharger install script at boot!

2. Run the script:
A) Load the script (V6_SuperCharger_for_Android*.txt/pdf) into Script Manager and select "Run as Root" (skull and crossbones "Su" icon - it turns green when selected)

OR...

B) Run Terminal Emulator and simply type: su and enter, sh /sdcard/V6*.sh and enter (provided you saved the script to the root of your sdcard)

OR...

C) via ADB on your computer. In a console, type: adb shell and enter, su and enter, sh /sdcard/V6*.sh and enter (provided you saved the script to the root of your sdcard)

3. Get SuperCharged! Just pick an option! The extra options (Engine Flush, etc.) explain things before doing anything :)

4. READ the script's output!

5. Afterwards, READ the html HELP FILE in the root of your SD Card!

6. Non-ICS/JB ROMS - Disable "Lock Home in Memory" if your ROM has this option. (This takes effect immediately.)

7. Optional: For a quick status check, you can put a Script Manager widget for V6 SuperCharger on you desktop :)

8. Reboot - required if it's your first time SuperCharging the rom.

9. Check if it works - After reboot, run the V6_SuperCharger script and check the info under the menu.

10. Patch services.jar as needed (see Post 2)
Cool! - Here are a few recent tutorials:

[GUIDE] How to install Supercharger V6 (includes patching steps)
[How To][Video Tut] Install/Run V6 Supercharger + Basics (uh... video)
[GUIDE] V6 Supercharger Update 9 RC 8.2 + for Samsung Galaxy Young (includes a little KAK tutorial too)

If you are using compcache and have lag or slow down after SuperCharging,
DISABLE compache, wipe caches and re-enable it.
Non-ICS/JB ROMS - Be sure to uncheck/disable lock home in memory!

Note: V6_SuperCharger-AOR.zip is for use with Milestone's Androidiani OpenRecovery. Even if you have a Milestone, don't run it within Android.
........ AOR Usage: Extract to the root of your sdcard (Directory structure is in the zip)
.........You will now have a SuperCharger Menu on the main screen. Simply select the menu and select 1 of the 12 options.

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

Pro Tips:

- CUST-OOMIZER! Use your settings without Autokiller Memory Optimizer or Auto Memory Manager!

- Use the 3rd slot to set how much free ram you want.

- If you have a viable init.XXX.rc file, it makes a backup and edits that single file. This is nice and tidy.
... Thank to kabaldan for pointing out the importance of certain things.

- Most Custom ROMs - If you have a /system/etc/init.d folder, it creates 99SuperCharger in there and edits your choice of either /data/local.prop or /system/build.prop (18 entries added for adjusting priorities and groupings). You shouldn't need to configure anything else.
- If the minfree levels do not stick on your Custom ROM:
........ Check /data/Ran_Supercharger.log to see if it ran... (Update 9 RC*)
........ If this happens to you, use Script Manager to load /system/etc/init.d/99SuperCharger "on boot" and "run as root"

- Stock ROMs - It also creates /data/99SuperCharger.sh which you can load up on boot (run as root) with Script Manager. The OOM groupings work as well since it happens on boot in local.prop or build.prop (18 entries added) :D

In case of any error, you will find a related help file in the root of your SD card.
So... I think this covers ANY Android ROM :)
The Help File! (Abbreviated)

-=The V6 SuperCharger=- created by zeppelinrox.

Here is some Background Info in case you're curious...

Linux Memory Consumption - Nice article!
Memory and SuperCharging Overview or... "Why 'Free RAM' Is NOT Wasted RAM!"
MFK Calculator Info - explanation for vm.min_free_kbytes

Stock ROMs: After running the script, have Script Manager load the newly created /data/99SuperCharger.sh on boot
In the "Config" settings, be sure that "Browse as Root" is enabled.
Press the menu key and then Browser. Navigate up to the root, then click on the "data" folder.
Click on 99SuperCharger.sh and select "Script" from the "Open As" menu.
In the properties dialogue box, check "Run as root" (SuperUser) and "Run at boot" and "Save".
And that's it!
Script Manager will load your most recent settings on boot!
If you run the script later and with different settings, you don't have to reconfigure anything.
Script Manager will just load the new /data/99SuperCharger.sh on boot automagically ;^]

Custom ROMs: If you have a custom rom that loads /system/etc/init.d boot scripts,
You DON'T need to use Script Manager to load a boot script. It will all be automatic!
Also, if you can run boot scripts from the /system/etc/init.d folder, there are other options.
For example you can use an app like Terminal Emulator to run the script.
NON-ICS ROMS: If your ROM has the option, DISABLE "Lock Home In Memory. This takes effect immediately.
Alternately, if you need to free up extra ram, you can use "Lock Home in Memory" as a "Saftey Lock".
ie. Use it to toggle your launcher from "Bulletproof" (0) or Hard To Kill (1) to "Weak" (2) in the event that you want to make the launcher an easy kill and free up extra RAM ;)

If Settings Don't Stick: If you have Auto Memory Manager, DISABLE SuperUser permissions and if you have AutoKiller Memory Optimizer, DISABLE the apply settings at boot option!
Also, if you have a Custom ROM, there might be something in the init.d folder that interferes with priorities and minfrees.
If you can't find the problem, a quick fix is to have Script Manager run /system/etc/init.d/*99SuperCharger "at boot" and "as root."

Another option is to make a Script Manager widget for /system/etc/init.d/*99SuperCharger or /data/99SuperCharger.sh on your homescreen and simply launch it after each reboot.

For those with a Milestone, I made a version for Androidiani Open Recovery too :D
Just extract the zip to the root of /sdcard (it contains the directory structure), load AOR, and there will be a SuperCharger Menu on the main screen!
==============================================================================

The above is ALL YOU NEED TO KNOW.

The V6 SuperCharger Script EXPLAINS EVERYTHING that it does - as you use it!

Anything below is extra info!

So get SuperCharged FIRST and then read the stuff below to see how it works!

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

The Nitty Gritty... For Geeks! (WARNING: This can make a non-Geek's head Assplode!)


If you read Post #3 (History Parts 1-3), you'll see that at first it was only about minfrees and launcher redraw.
But after installing GingerBread, I saw that it needed more work than Froyo LOL.
Groupings were ALL MESSED UP and made NO SENSE to me whatsoever...

So I figured out how to group them more like CM6 (Froyo) but that still wasn't good enough...

So I further rearranged the OOM Groupings and Priorites and lowmemorykiller values and created a SuperCharger for phone memory...
THE ONLY COMPLETE MEMORY MANAGEMENT FIX!

Upon installation, V6 SuperCharger will first clean up any previous supercharging so none of your files get cluttered.
But if you toggle between Hard To Kill and BulletProof launchers, the memory adjustments aren't affected.

So you can leave your minfrees at stock/default settings and apply the Hard To Kill Launcher and still get the OOM Grouping/Priority fixes.

So if you love your ROMs memory settings, just try a SuperCharged Launcher/OOM Fix... you won't regret it :)

It's pretty awesome :D

Here are some snaps....
Before...
SUWAbc
R7A8vN

After...
OfFqrD
VMJpgZ
Q63dbT

During....
ULQkUo
ULQlrj
VAqBDc


Bonus....
WDh7oH
QNJY8C
R3RfSm
ULQoTX


Say Buh Bye to AKMO or any app that has to load on start up to change minfrees...

So did you notice the difference in groupings?

By default, CM7 has nearly all the apps in slot 5 and the launcher in slot 3.
Slightly aggressive settings will kill any chance of multitasking in that situation.

After SuperCharging, the apps get moved to slot 3 while the launcher is in slot 2 but the most important item in slot 2.

I've read, "oh you don't need to run any scripts for memory management..."
Well that's not true.
Playing with minfree values is one thing... it's playing with minfree levels... it's not really memory management...

Look at the pics above... now THAT's memory management...

If you look below at Post #3... that's how it all started... good background info in case you're wondering what the hell I'm talking about.

Notes: Minfree changes take effect immediately!
.......... Switching between Hard To Kill (strong), Die-Hard (stronger) and BulletProof (strongest) Launchers require a reboot to take effect.
.......... Disable your OS's "Lock Home in Memory" option, if it has it
.......... Or use "Lock Home in Memory" as a "Saftey Lock" - to toggle your launcher from "Bulletproof" (0) or HTK (1) to "Weak" (2)
.......... Note: "Lock Home in Memory" is not ADJ 1 with my OOM Grouping/Priority Fixes ;)

Cool Tip: Sometimes it's difficult to keep a wanted background app alive, such as an SMS app. See how to Bulletproof Background Apps!

Remember: When using scripts, use the SuperUser app to DISABLE SuperUser permissions for AMM!
................. It can still monitor your OOM groupings but it can't change your custom settings on boot.
................. If you have AKMO installed, disable it's option to Apply Settings at Boot!
==============================================================================

BusyBox v1.19.4 Install Script Instructions:


First extract busybox_v1.19.4-wraithdu-installer_script.zip to the root of your sdcard
Method 1 - Just run the script inside/sdcard/bb1.19.4 with Script Manager as root.
Method 2 - Run terminal and type su and enter
............... - Type sh /sdcard/bb1*/busy* and enter
............... - Soup's On, Baby!
Boot Re-Installer! For BusyBox v1.19.4 Instructions:


For PITA kernels and roms that insist on reinstalling old busyboxes on boot!
Contains same script as above but includes another script that makes busybox v1.19.4 reinstall each boot!
Basically, it installs the above script as /system/etc/init.d/96busybox :D
So for those kernels and roms... TAKE THAT!

First extract boot_reinstaller_script+busybox_v1.19.4-wraithdu-installs_every_boot.zip to the root of your sdcard
Method 1 - Just run the boot_reinstaller* script found inside/sdcard/boot.bb1.19.3 with Script Manager as root.
Method 2 - Run terminal and type su and enter
............... - Type sh /sdcard/boot*/boot* and enter
............... - Soup's On, Baby! (again and again!)
==============================================================================

V6_SuperCharger-AOR.zip is for Androidiani OpenRecovery for Milestone!! - For Milestone ONLY! - See "Installing/Using" instructions above!

How To Save Attached Files
- Right click with your browser & select "save as" from menu, or use the QR Code or XDA app or Tapatalk
- Also a great method - use Opera Mini web browser. Very easy to download and it's FAST!

So... if you get an error like "line xxx: syntax error: unexpected end of file (expecting "blah blah")", it's an INCOMPLETE DOWNLOAD!
Download it again and DO IT RIGHT. :p

Most recent files are HERE (RC/Beta/Test releases)

Don't Mirror Or RePackage My Files - Just link here - Then your thread won't get real old, real fast.

If you're going to download something...
Please HIT THANKS and Give a 5 Star Rating!
 

Attachments

  • V6_SuperCharger-AOR.zip
    5.8 KB · Views: 109,275
  • V6_SuperCharger_for_Android-update7.sh.txt
    40.6 KB · Views: 77,760
  • V6_SuperCharger_for_Android-update8.sh.txt
    41 KB · Views: 340,555
  • busybox_v1.19.4-wraithdu-CWM_flashable_install.zip
    1.3 MB · Views: 44,519
  • busybox_v1.19.4_wraithdu--installer_script_v14.zip
    1.1 MB · Views: 23,998
  • busybox_v1.19.4_wraithdu--boot_reinstaller_script_v14--installs_every_boot.zip
    1.1 MB · Views: 17,983
Last edited:

zeppelinrox

Senior Member
Dec 21, 2010
9,374
21,587
IN THE FREAKIN' OP
I SCream SUPERCHARGER!!

===================================================================
If this information is helpful, please Rate the thread 5 Stars and click Thanks!
===================================================================

Hacking services.jar

What's this for? - Froyo, Gingerbread, Honeycomb, ICS, Jelly Bean AND Sense 4.0+!

ICS and Jelly Bean - Jelly ISCream Mod (SuperCharge Your Launcher)
Note 1: Earlier Android ROMS need ONLY The V6 SuperCharger Script to SuperCharge the launcher!
Note 2: The webapp is NOT working on some newer roms! The strings to be edited are slightly different and the webapp needs updating!
It also lacks the newest edits and is NOT recommended for the time being!

Froyo and Up - Maximum MultiTasking Mods - Includes -=Maximum Overdrive=- and The Time Killer Killer

Sense 4.0 and Up - Non-Sense App Limit

See the -=Ultimate Jar Power Tools=- thread for more details about the Multitasking and Sense mods!
Use the Ultimate Jar Power Tools patcher script to automate Step 5 (the smali edits) in the tutorial below!
Or use my latest -=Ultimatic Jar Patcher Tools=- to do ALL the Steps in the tutorial! It works for DEODEX and ODEX ROMS and can be run on Windows/Linux/Mac OSX OSes!

===================================================================
Jelly ISCream Mod Information!
===================================================================
The NEW Ultimatic Jar Patcher Tools and Ultimate Jar Power Tools patcher script include all the -=NEW=- Jelly ISCream edits described in Step 5 - PLUS many more! (over 50 edits!)
These additional edits truly makes your launcher SuperCharged!
They also apply the latest Maximum MultiTasking Mods :cool:
The webapp hasn't been updated so it's NOT recommended.

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

Installation - Easy as 1, 2, 3!

1. Run the NEWEST V6 SuperCharger script as always.

Note: You may get Segmentation Fault errors running the V6 SuperCharger script on ICS due to a flakey su (superuser) binary.

To resolve the issue, you can:
A) Go HERE for a fixed su binary. No more fugly segfaults! - Thanks to wraithdu :) (only for superuser.apk on ICS)
OR...
B) Go HERE and get the SuperCharger Starter Kit!

2. Patch and install services.jar - by whichever method you like best. Your options are, in order of EFFECTIVENESS:

Note: Options A, B and C require Java to be installed on your computer - Click to Verify Java Installation

Option A) Use one of the -=Ultimatic Jar Patcher Tools=- (exe or zip) which DO EVERYTHING for you "Fully Ultimatically" on DEODEX & ODEX ROMS!

Goto Step 3 if you did this!

Option B below is the next preferred method - but there's manual work involved.

Option B) Follow the complete tutorial below and use -=Ultimate Jar Power Tools=- patcher script to automate Step 5 - the actual smali editing!
There are actually 56 edits performed via script... many more than what is specified in the tutorial!

Note that the script allows you to choose the level of your Launcher's Super Strength! (BulletProof, Die-Hard, or Hard To Kill)
Also be sure to have the necessary smali files in the same folder as the script!

ODEX ROMS - ALL Stock ROMS are ODEX (I think... :p) So if you have a services.odex file, press the button!
All but Step 5 is automated on Windows with a batch script courtesy of rexstor .
See [Guide][Batch][Odex Rom only!] To get another 50% v6 Supercharged script for ICS!
So you'd run the batch script, and for the editing, run my Ultimate Jar Power Tools patcher script in Step 5 :cool:
Goto Step 3 if you did this!

Option C) Follow the complete tutorial below without using any Patcher tool.
This is actually pointless to do - there are less edits and it's more work :p And the laziest people should just do D) below lol
Goto Step 3 if you did this!

Option D) Use the latest Update 9 RC* and select ICS Service Centre's Automatic Transmission! (OUT OF DATE)
Seemless webapp integration and installation to "Lock home in Memory"
Note: This is currently out of date - latest edits and Maximum MultiTasking Mods are NOT included and it does not work on Jelly Bean!
Goto Step 3 if you did this!

Option E) ICS OOM Priority Charger webapp. Same effectiveness as D) but done manually (OUT OF DATE)
Latest Update 9 RC* can install and apply permissions via ICS Service Centre's manual mode
Important: The webapp WON'T WORK for ODEX roms! So if you have a services.odex file, you have use a more effective option above :p
Also won't work on Jelly Bean ROMS!

More Webapp Info
Just go to http://android.mimic.ca with your devices browser and follow instructions!

In case of upload problems: If your Android browser closes while selecting file to upload, use Opera Mini web browser because it lets you select a file from within the app. Just copy services.jar to the sdcard first :)

CWM zip option is available!

But if you don't get the CWM zip, and instead download the modded services.jar, you can:

A) Do Steps 8 to 10 below! But first In Terminal Emulator, just type su and enter, busybox mount -o remount,rw /system and enter (Mount system as read/write).
OR...
B) Use the ICS Service Centre's manual mode in V6U9RC*

Help for webapp: Go to http://webchat.freenode.net , channel #v6_supercharger and talk to blk_jack (or me if I'm there)
* All roms (odex & deodex) - to install a patched services.jar/odex, you can use the ICS Service Centre's manual mode in V6U9RC9+ (for Steps 8 and 9 below).
* If you ever have trouble applying permissions to services.jar/odex, just run the ICS Service Centre and permissions gets applied everytime just before returning to the main menu!

3. SuperClean & ReStart! (ie. Wipe Dalvik Cache & Reboot)

Notes: For decent launcher detection use at least V6U9 RC6.9 or newer and check the bOOM Stick to see if the launcher the desired ADJ value!
.......... - Boot will take a LONG time as it "optimizes all your apps"
.......... - If it doesn't boot (unlikely if you did the edits yourself), try wiping caches (not data)
.......... - If it still doesn't boot, you can always just re-flash your current untouched rom but do have a backup nevertheless.
.......... - If you get FCs, fixing permissions will solve that. (Use the "Fix Emissions" Option in the latest V6 SuperCharger Script! :D)

That's It!

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

OK I got ICS SuperCharged!!

The problem with SuperCharging ICS is that ICS doesn't read ADJ values from build.prop or local.prop - they are hardcoded into services.jar!
So the script alone can only give you a 50% SuperCharge Level with only the V6 SuperCharger script.
Patching services.jar gives you the other 50% along with a SuperCharged Launcher!

ICS users still have to run the V6 SuperCharger script just like before! Use V6U9 RC6.9 or newer for decent launcher status detection!

Note: Of course, the V6 SuperCharger script is ALL YOU NEED on all previous Android ROMS!

So the mod below is for getting the Launcher at a SuperCharged Priority on ICS!
This is akin to the ADJ entries in build.prop or local.prop on earlier Android ROMS which don't work on ICS.

What gets changed?

I rearranged Priorties on ICS like so:
Code:
System                -16                     (stock)
Persistent Process    -12                     (stock)
ForeGround app          0                     (stock)
Home Launcher           1 (Die-Hard Launcher) (stock=6)
Perceptible app         2                     (stock)
Visible app             3                     (stock=1)
Heavyweight app         4                     (stock=3)
Previous app            5                     (stock=7)
Service                 6                     (stock=5)
Backup app              7                     (stock=4)
Service_b               8                     (stock)
Hidden app min          9                     (stock)
Hidden app max         15                     (stock)
As you can see, there are ALOT more app categories now lol
I also decided to give a new app category a higher priority - Previous Apps.

Users with low ram devices will definitely be pleased with that :D
I was actually able to load Angry Birds, ran a different app, and went back to Angry Birds and it didn't have to restart.
It's practically unheard of for that game to stay in memory like that on my device ;)
I really don't understand the logic of making Previous apps more killable than some app that you were using awhile ago (ie Service) so I fixed it :D

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

How To:

This will make it easier [Guide][Tutor]Jar/Apk baksmali smali compiler and decompiler
Important! - Get the MOST RECENT smali/baksmali binaries located here (remove the version number so they are called smali.jar and baksmali.jar)

Click to Verify Java Installation - smali/baksmali requires Java to be installed on your computer.

ODEX ROMS: If you have an odex rom (ie. you have a services.odex file) you have extra work. See this
..................... - Watch for dark red text for odex specific instructions! Some of which were initially found in this services.odex hacking guide.
..................... - Going with the odex guide above, you will also need the dexopt-wrapper utility.
..................... - Download the utility "dexopt-wrapper". (Do a search - you'll find it.)
..................... - Mount system as read/write. Open up Terminal and type: su, enter, busybox mount -o remount,rw /system
..................... - Copy it to /system/bin and apply correct permissions.
..................... - In terminal type: chmod 755 /system/bin/dexopt-wrapper, enter.

OR... You can convert your ODEX ROM into an easily modded deodexed one. Here are a few options to do that:
..................... xdaAutoTool (Windows - the first 3 posts have 3 different tools!)
..................... AutoAPKTool + AutoDeodexTool (Linux port of xdaAutoTool)
..................... Auto Deodex & Zipalign Tool (Windows - looks easy)
..................... Manually Deodex and Odex Back (Windows - geeky)

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

Step 1. So grab the tutorial zip from above and unzip into a folder, say C:\super, along with the smali and baksmali jar files. This is all you need apart from a text editor and a zip program like 7zip or WinRAR.
............ Put services.jar (make sure you have a backup) in C:\super.
............ ODEX ROMS: Put services.jar AND services.odex in C:\super. (Note that services.jar will be very small with only a META-INF folder inside)

Step 2. Open up a dos/command prompt and navigate to the folder by typing cd c:\super

Step 3. Type: java -jar baksmali.jar -x services.jar -o classout (services jar gets decompiled into a classout folder.) Leave the dos/command prompt window open.
............ ODEX ROMS: Copy /system/framework folder(with all the jar+odex files) to c:\super
........................ Type: java -jar baksmali.jar -x -a <api_level> -d framework services.odex -o classout
........................ api_level is a number. See this page. So if you're on froyo, you put -a 8. On gingerbread it's -a 9 or -a 10.
........................ If you get an error: Add the $BOOTCLASSPATH to the above command.
........................ So do this command on your device using terminal emulator OR adb shell (easier): echo $BOOTCLASSPATH
........................ Example: You'll get something like this:
/system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/framework2.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar
........................ Remove the paths (/system/framework/) so end up with core.jar:core-junit.jar:bouncycastle.jar:ext.jar:framework.jar:framework2.jar:android.policy.jar:services.jar:apache-xml.jar
........................ Now, your final command becomes:
java -jar baksmali.jar -a ## -x -c :junit.jar:bouncycastle.jar:ext.jar:framework.jar:framework2.jar:android.policy.jar:services.jar:apache-xml.jar services.odex -o classout
........................ NOTE: This command may FAIL if you don't put the colon (:) after the "-c " and before that list of .jar files.

Step 4. Open explorer and navigate down to c:\super\classout\com\android\server\am folder and find ActivityManagerService.smali

Step 5. Use the -=Ultimate Jar Power Tools=- patcher script to perform the following edits (IT actually does TONS more for a smoother SuperCharge!)
Get it from THIS THREAD, and run it like my other scripts and be sure to have both ProcessList.smali AND ActivityManagerService.smali in the same folder as the patcher script! (Erm.... put them on your phone, run the Power Tools script, then copy the new smali files back to where you found them!)

Note that the Jelly ISCream Mod will read the previous ADJ values from ProcessList.smali, searches for those ADJs and replaces them with SuperCharged ones in BOTH smali files!

Then go to Step 6 :cool:

If you don't wanna go the easy way... click the button!
Open ActivityManagerService.smali in notepad or notepad++ and make following smali edits.

a. Note that the "====" are breaks and NOT part of the smali file
b. Underlined is the search term so you can find the location in the file easily.
... - The search term includes the "quotes" and is CaSe SEnsiTive (ie. select Match Case in search) so you should actually only get 1 hit for all but 1 search.
... - There are 5 hits for "backup" with quotes but just scroll down from the previous edit you'll find it :p (heh. the previous edit is for "previous" lol)
c. Bold is the edit (note that each edited line begins with "const/4 v10, " Update: New roms now have "const/4 v11, " or "const/4 v14, " instead)
d. (Italized) is the ORIGINAL value

So, for example, the first edit for "visible" apps:
const/4 v10, 0x3 (0x1)

Originally, it looks like: const/4 v10, 0x1
After edit, it looks like: const/4 v10, 0x3

Ok... so here it is :D

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

.line 13728
const/4 v2, 0x1

if-le v10, v2, :cond_118

.line 13729
const/4 v10, 0x3 (0x1)

.line 13730
const-string v2, "visible"

move-object/from16 v0, p1

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

if-ne v0, v2, :cond_154

.line 13768
const/4 v10, 0x4 (0x3)

.line 13769
const/16 v27, 0x1

.line 13770
const/4 v2, 0x0

move-object/from16 v0, p1

iput-boolean v2, v0, Lcom/android/server/am/ProcessRecord;->hidden:Z

.line 13771
const-string v2, "heavy"

move-object/from16 v0, p1

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

.line 13777
const/4 v10, 0x1(0x6) Note that this is for Die-Hard Launcher! To BulletProof it, make it 0x0, HTK 0x2

.line 13778
const/16 v27, 0x1

.line 13779
const/4 v2, 0x0

move-object/from16 v0, p1

iput-boolean v2, v0, Lcom/android/server/am/ProcessRecord;->hidden:Z

.line 13780
const-string v2, "home"

move-object/from16 v0, p1

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

.line 13788
const/4 v10, 0x5(0x7)

.line 13789
const/16 v27, 0x1

.line 13790
const/4 v2, 0x0

move-object/from16 v0, p1

iput-boolean v2, v0, Lcom/android/server/am/ProcessRecord;->hidden:Z

.line 13791
const-string v2, "previous"

move-object/from16 v0, p1

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

.line 13808
const/4 v10, 0x7(0x4)

.line 13809
const-string v2, "backup"

move-object/from16 v0, p1

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

-=NEW=-

.line 13828
const/4 v2, 0x6(0x5)

if-le v10, v2, :cond_203

.line 13829
const-string v2, "started-bg-ui-services"

move-object/from16 v0, p1

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

.line 13837
const/4 v10, 0x6(0x5)

.line 13838
const-string v2, "started-services"

move-object/from16 v0, p1

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

-=NEW=-

.line 13845
:cond_37f
const/4 v2, 0x6(0x5)

if-le v10, v2, :cond_203

.line 13846
const-string v2, "started-bg-services"

move-object/from16 v0, p1

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

This next part is actually hard to search for so I'm posting a large segment which contains 3 edits that make a HUGE difference!
To make it a little easier, search for "bg-services"
There are 2 hits - The second one is at the bottom of this segment.
Also, not that only one of them begin with the typical "const/4 v10, ", the other 2 begin with "const/4 v2, "

-=NEW=-

const-string v11, "service"

goto/16 :goto_3e1

.line 13932
:cond_487
iget v2, v15, Lcom/android/server/am/ConnectionRecord;->flags:I

const/high16 v5, 0x4000

and-int/2addr v2, v5

if-eqz v2, :cond_496

const/4 v2, 0x2

if-ge v12, v2, :cond_496

const/4 v2, 0x2

if-le v10, v2, :cond_496

.line 13935
const/4 v10, 0x2

goto :goto_471

.line 13936
:cond_496
const/4 v2, 0x3 (0x1)

if-le v12, v2, :cond_49b

.line 13937
move v10, v12

goto :goto_471

.line 13939
:cond_49b
const/4 v2, 0x1

move-object/from16 v0, p1

iput-boolean v2, v0, Lcom/android/server/am/ProcessRecord;->pendingUiClean:Z

.line 13940
const/4 v2, 0x3 (0x1)

if-le v10, v2, :cond_471

.line 13941
const/4 v10, 0x3 (0x1)

goto :goto_471

.line 13995
.end local v3 #client:Lcom/android/server/am/ProcessRecord;
.end local v4 #myHiddenAdj:I
.end local v11 #adjType:Ljava/lang/String;
.end local v12 #clientAdj:I
.end local v13 #clist:Ljava/util/ArrayList;,"Ljava/util/ArrayList<lcom android="" server="" am="" connectionrecord;="">;"
.end local v15 #cr:Lcom/android/server/am/ConnectionRecord;
.end local v17 #i:I
.end local v22 #kt:Ljava/util/Iterator;,"Ljava/util/Iterator<ljava util="" arraylist<lcom="" android="" server="" am="" connectionrecord;="">;>;"
.end local v26 #s:Lcom/android/server/am/ServiceRecord;
:cond_4a5
move/from16 v0, p2

if-le v10, v0, :cond_4b6

.line 13996
move/from16 v10, p2

.line 13997
const/4 v2, 0x0

move-object/from16 v0, p1

iput-boolean v2, v0, Lcom/android/server/am/ProcessRecord;->hidden:Z

.line 13998
const-string v2, "bg-services"

========================
Save it.

Step 6. Go back to the dos/command prompt and type: java -Xmx512M -jar smali.jar classout -o classes.dex (this creates classes.dex)
............ ODEX ROMS: Type the same command as above.

Step 7. Open up services.jar with 7zip or WinRAR (you will see a classes.dex file inside) and drag the newly created classes.dex into the window to refresh services.jar with the new classes.dex
............ Mount system as read/write. Open up terminal and type: su, enter, busybox mount -o remount,rw /system
............ ODEX ROMS: Do the above steps (though there won't be an existing classes.dex - just add it anyway) and then do the following, edited segment from the services.odex hacking guide:

Copy the new services.jar file into the root of your phone's sd card.
Create a new services.odex file from the new services.jar file:
In terminal, type: cd /sdcard, enter, dexopt-wrapper services.jar services.odex $BOOTCLASSPATH, enter.

Here's the "special sauce": copy over the "signature" from the current .odex file into the new .odex file. do NOT continue until this command succeeds!
Hint: the file size of the new services.odex file should not change!
In terminal, type: busybox dd if=/system/framework/services.odex of=/sdcard/services.odex bs=1 count=20 skip=52 seek=52 conv=notrunc
Now copy /sdcard/services.odex to /system/framework and overwrite the original (backed up, yes?) services.odex

Go to Step 9 :D

Step 8. Copy the new services.jar into your /system/framework folder.
............ ODEX ROMS: SKIP this step!

Step 9. a. In terminal type: cd /system/framework, enter, chown 0.0 services.jar, enter, chmod 644 services.jar, enter
................ ODEX ROMS: In terminal do: cd /system/framework, enter, chown 0.0 services.odex, enter, chmod 644 services.odex, enter
............ b. OR... you can just put it into a copy of your rom and flash that!

Step 10. SuperClean & ReStart! (ie. Wipe Dalvik Cache & Reboot)

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

It was a pain in the ass to find because the settings that get applied actually ignore any setting that is given.
It's all over-ridden by a calculated routine :p
So I just turned the tables to have it over-ride settings to be SuperCharged ;)

Remember that you will still need to run V6 SuperCharger to get your minfrees and grouping fix/adj limits in place.

Was this useful info? If so...
Please HIT THANKS and Give a 5 Star Rating!
 
Last edited:

zeppelinrox

Senior Member
Dec 21, 2010
9,374
21,587
IN THE FREAKIN' OP
[Script] V6 SuperCharger! HTK & BulletProof Launchers! The ONLY Android MEMORY FIXER!

So here's how it all started... don't worry if you don't understand it... the script does everything!

So... recently I came across/figured out some pretty neat stuff to make my Milestone run incredibly well.
Fast, Stable, and Smooth. FSS... heh... my Milestone used to make me say FFS too often... lol

In Part 2, you will find a way to make your launcher bulletproof!
What's that mean? No more screen redraws! AT ALL - I'm pretty sure :)

History Part 1. How To Control Android's Memory Manager via minfree

This revolves around Android's built-in memory manager/task killer.
I had been using Auto Memory Manager (AMM) with great results. AutoKiller Memory Optimizer (AKMO) had worked just as well.

These are NOT taskillers! (And neither is my SuperCharger :D)
They tweak Android's native memory management system by editing /sys/module/lowmemorykiller/parameters/minfree
This is a "dynamic" file that gets created on boot.
There is an in-depth thread that you can read right here on XDA: How to configure Android's *internal* taskkiller

Android puts each running app into 1 of 6 Out Of Memory (OOM) groups based on their priority.
FOREGROUND_APP, VISIBLE_APP, SECONDARY_SERVER, HIDDEN_APP, CONTENT_PROVIDER, and EMPTY_APP.

Additional Info: You can find each app's priority and OOM.
....................... In AMM, Press Menu > Running Processes > Group by OOM grouping.
....................... Expand each group and see what apps are included and each app's priority level. (Higher numbers get killed first!)
....................... If you tap on an app, you can get additional info. Tip: Check and see what's included with android.process.acore ;)

The default minfree values ("kill thresholds") for each OOM group are, as far as I can tell: 6, 8, 16, 20, 22 and 24 mb. (CyanogenMod 6.1.2)
This means that: when free memory lowers to 24 mb, EMPTY_APPS get killed; at 22 mb free ram, CONTENT_PROVIDER apps get killed; and so on...

Now, because the Milestone has only 256 mb of memory, I found these numbers too low, especially the 3rd one.
Basically, with those settings, you will usually be sitting with only 20 - 25 mb of ram.
Possibly less. Basically, it's the 3rd number (16) + 5. That's your free memory.
And my phone just chokes when it has that little ram available. Lag, home screen redrawing, the launcher getting killed.... ugh....

After extensive fiddling around, I've come to the conclusion that setting the third slot to about 25mb works great.
No home screen redraws while not being too aggressive on secondary/background apps while having about 30-35mb free all the time :)

BTW, free ram is not wasted. Android will use that memory to cache the file system and this speeds things up. See this informative post.



My other key settings were:
VM Heap Size = 48 mb.
Home Locked in Memory (not anymore due to my OOM Grouping Fix)
JIT enabled - You can try it on or off and decide what you like better (JIT uses some extra memory but makes the CPU more efficient)
Overclocked to [email protected] vsel.

About VM Heap size. 40 mb should be enough.
Actually, to prevent your launcher from splitting into 2 virtual machines, you should make it at around 40 mb.
I'm no expert about it, but that is the experience of others. (I've never tried it at 32 mb or below :p)

History Part 2. How To Control Your Launcher Redraws by Making It Bulletproof!

Most of you know about CM's "Lock Home In Memory" setting and how we would still get screen redraws after enabling it.
My suggested AMM settings above should be enough prevent that. You should hardly ever get screen redraws anymore.
But some people were still getting them.

I tried increasing the appropriate priority (for android.process.acore - which includes com.android.launcher) in AMM but the setting wouldn't "stick"
Android would revert it back to where it was - in the Visible App group with a priority of 1.
I had seen how foreground apps had a priority of 0 or -12 or -16 and I came up with a permanent solution - "The Bulletproof Launcher"

Here's how you can have a Bulletproof Launcher!

The line "ro.HOME_APP_ADJ=1" in /data/local.prop also keeps home in memory - it has the same effect as CM's "Lock Home In Memory".
So in light of what I was seeing in AMM, I have changed it to 0 so it now reads:
ro.HOME_APP_ADJ=0
(blank line)

Note: If there isn't a blank line at the end, the ro.HOME_APP_ADJ entry gets deleted.

If you do this and reboot, AMM may still show that android.process.acore (or whereever your launcher is) with a priority of 1
If that's the case, disabled CM's setting to lock home in memory.
Now, if you go back to AMM, you should see that android.process.acore is now a foreground app with a priority of 0... BOOYA!

Notes: Obviously, CM's "Lock Home In Memory" overrides the setting in local.prop.
.......... CM will set the priority back to 1 after local.prop gives a priority of 0.
.......... That's why CM's setting has to be disabled - so that the local.prop setting will "stick"
.......... Gaming Tip - You can use CM's lock home in memory as a "Safety Lock" - to toggle your launcher from Bulletproof (0) to Killable (1)
............................. If having problems with a game, put the "Safety Lock" on so the launcher is "killable" so android can free up some extra ram.

Note that BulletProofing is NO LONGER RECOMMENDED! The Hard To Kill Launcher is the PERFECT SOLUTION!

History Part 3. Blah Blah Blah...

Interesting Notes: I had installed the Telus Froyo Update yesterday (03/25/11) and still have it installed.
.......................... Only now did I think to look at the minfree values :p
.......................... 8, 12, 24, 28, 32, 32 <--- Telus Froyo. I'm a little shocked by the 3rd slot, 24mb?! :eek:
.......................... 6, 8, 24, 26, 28, 30 <----- See, I'm not crazy! Telus Froyo values are very similar to my Balanced Settings :cool:
.......................... In comparison, my Balanced script keeps your foreground apps alive longer, same free ram & more friendly to background apps!
.......................... For completeness:
.......................... 6, 8, 16, 20, 22, 24 <---- CM6 (Froyo)
.......................... 6, 8, 12, 16, 24, 32 <---- CM7 (Gingerbread)
.......................... 8, 12, 16, 24, 28, 32 <--- Google's Gingbread values, according to this.

Moved from OP (old Change Log)

UPDATED July 21, 2011:
- Update 8
Improved code
Tweaked Current Status functionality. It will tell you if your current and prior minfrees match but if you apply a setting, it won't update the "prior minfrees" with the values you just installed. It will update the prior minfrees the next time you run the script.

UPDATED July 18, 2011: - Update 7
Tweaked Status Checker. Update 6 sometimes gave wrong launcher status :p

UPDATED July 16, 2011: - Update 6
Added Second MegaRAM device setting.
Added installation to system option - for easy use with Terminal Emulator!
Added UnSuperCharger verification
Improved status checker. It can sometimes determine if home is locked in memory! If not, it asks you if it is.
Saves SuperCharger settings! - They are displayed on the main menu if they exist.
Saves Cust-OOM settings! - Cust-OOM settings get added to the menu!
Smart Cust-OOMizer - Just try it :)
Improved the code some more. It's smarter than ever :)
Improved messages to user. Clearer instructions and errors are given!
Final attempt to get this to load on boot. Custom ROMs will now get the /data/userinit.sh and /data/99SuperCharger.sh files.
Easily cook into your rom! Just change the variable (rcpath=) on line 116 to the path of your *rc file!
1224 lines of code! :eek: :cool:

UPDATED June 29, 2011: - Update 5
Removed 2 minute delay from userinit.sh. Sorry, I didn't know that it would pause the boot process on some phones/roms

UPDATED June 26, 2011: - Update 4
Fixed issue with error check - commented it out as it would stop the script dead on some roms :p
Improved Status Checker some more
Improved the code. The script is much smarter, cleaner and efficient (no more temp files)
1001 lines of code!

UPDATED June 25, 2011: - Update 3b
Pulled earlier Update 3 - fixed minor noticeable errors and one HUGE one that went unnoticed...

UPDATED June 25, 2011: - Update 3 -PULLED
Added error check that exits script on any error
Tweaked OOM groupings/priorities (Froyo is the same as always, Gingerbread now takes into account Perceptible App)
Improved Status Checker
ReReFixed!? userinit.sh now used as a launcher for 99SuperCharger - with a 2 minute delay! (This boot script fix HAS to work :p)
Fixed sysctl error on some phone configurations

UPDATED June 20, 2011: - Update 2
Added User Selectable Scrolling Speed!
Fixed a couple of weird issues that some people had in yesterday's update :p
ReFixed? Still trying to get the 99SuperCharger boot script to load automatically for everybody... grrrrr...

UPDATED June 19, 2011: - Update 1
Added MegaMemory Device setting!
Fixed formatting for Script Manager update (40 columns)
Fixed (I hope) boot script not booting on many ROMs
Fixed long press back button kill (wasn't working)
Modified OOM groupings/priorities: Nothing breaks... EVER!
Improved the help html files
Was this useful info? If so...

Please HIT THANKS and Give a 5 Star Rating!
 
Last edited:

zeppelinrox

Senior Member
Dec 21, 2010
9,374
21,587
IN THE FREAKIN' OP
[Script] V6 SuperCharger! HTK & BulletProof Launchers! The ONLY Android MEMORY FIXER!

Dunno what happened... the real OP and Post 4 got switched :p

So feel free to hit the thanks button on the "OP" again... LOL

Actually, Post 3 got somehow moved to Post 5 too.

So I dunno what's going on...

But at least Post 2 is still in the right place!

Easy as 4, 2, 5, 1, 3!


Oh and posts 6 through to 16,878 seem to be in the right order!
 
Last edited:

-SAIUN-

Senior Member
Feb 28, 2010
115
19
Nice tips, zeppelin. The settings have much improved the performance of my Milestone, but I am still getting occasional redraws with LPP. Free RAM is usually between 38MB and 45MB, using VM Heap of 40M and your 6,10,24,40,50,60 settings for AMM.

EDIT: Also, when I add the ro.HOME_APP_ADJ=-1 line to the /data/local.prop file, after a reboot that line has disappeared from the file.
 
Last edited:

afadel

Senior Member
Aug 16, 2010
285
54
Campinas, SP
EDIT: Also, when I add the ro.HOME_APP_ADJ=-1 line to the /data/local.prop file, after a reboot that line has disappeared from the file.

For that, make sure you have a empty line at the end of the file (hit enter after entering the home_app line). This would make it not go away after reboot.

Sent from my Milestone using Tapatalk
 

zeppelinrox

Senior Member
Dec 21, 2010
9,374
21,587
IN THE FREAKIN' OP
How do I check what ade the currently minfree values on the system? I supose you don't have to reboot for the settings to go into effect, right?

Sent from my Milestone using Tapatalk

Thanks for the empty line tip. I forgot about that

AMM displays your current values whenever you run it.
EDIT: NO It does NOT... oops AKMO does though.

I was under the impression that a reboot is required. I'll look into that further.

Let me know how it works for you.

Sent from my Milestone using Tapatalk

Edit: The local.prop edit requires reboot.
........AMM (or AKMO) and the disabling CM's lock home in memory setting do not require a reboot. So you can tweak AMM's settings on the fly!
 
Last edited:

zeppelinrox

Senior Member
Dec 21, 2010
9,374
21,587
IN THE FREAKIN' OP
nice.
Yes minfree's values are in pages and 1 page = 4kbytes.
24mb would show as 6144.
ie. 6144*4/1024=24
Nice tips, zeppelin. The settings have much improved the performance of my Milestone, but I am still getting occasional redraws with LPP. Free RAM is usually between 38MB and 45MB, using VM Heap of 40M and your 6,10,24,40,50,60 settings for AMM.

EDIT: Also, when I add the ro.HOME_APP_ADJ=-1 line to the /data/local.prop file, after a reboot that line has disappeared from the file.
Yes see afadel's post after yours regarding the local.prop edit.
Hit enter so that you have an empty line at the end.
You're still getting redraws because the "bulletproof launcher" entry got deleted. Damn kryptonite!
I edited the OP accordingly.

Also, after you get the local.prop file working properly, see how much free ram you have at that time.
I'm thinking that you currently have 45mb free because the launcher is still getting killed.
So, if it doesn't get killed, it should be more like 30-35 mb free.

Now if you aren't getting redraws (launcher is kept alive) and your ram is still 40-45mb free, you can probably lower the 3rd value from 24 to 20.
 
Last edited:

clmta

Member
Feb 6, 2011
41
9
Buenos Aires - CABA
Hello, nice tips

In my MM I had to change some the cache, using 40m is too much because phone is slowly, I notice it have low memory than using the standard memory configuration (28m in APAC) but I changed to 24m as I had in 2.1u1.

In normal use I have now 32MB free but setting to aggresive mode it goes to 40MB free.

The problem using aggresive mode is that if you are looking into maps and change to make some sum (i.e. using realcalc) you lost maps ubication, or if you return to maps you lost the state of other programs, so kernel kill the program.

Regards,
Claudio.
 
  • Like
Reactions: calpipo

zeppelinrox

Senior Member
Dec 21, 2010
9,374
21,587
IN THE FREAKIN' OP
Hello, nice tips

In my MM I had to change some the cache, using 40m is too much because phone is slowly, I notice it have low memory than using the standard memory configuration (28m in APAC) but I changed to 24m as I had in 2.1u1.
Are you referring to VM Heap size?
I'm pretty sure now that VM heap size shouldn't really affect free ram.
But if it's too big, small apps will lag and if it's too small, large apps will lag.
I recommended 40mb because it would prevent most launchers from splitting into 2 virtual machines.
In normal use I have now 32MB free but setting to aggresive mode it goes to 40MB free.

The problem using aggresive mode is that if you are looking into maps and change to make some sum (i.e. using realcalc) you lost maps ubication, or if you return to maps you lost the state of other programs, so kernel kill the program.

Regards,
Claudio.
I guess here you are referring to AMM's aggressive settings?
The second number in AMM's aggressive settings is 12, which would make visible apps more likely to get killed than the 10 mb I suggested.
Come to think of it, perhaps I will test with that set to the default 8 mb ie. 6, 8, 24, 40, 50, 60
 

n3n00

Senior Member
Dec 7, 2010
1,561
258
Split
Im currently running 6,8,16,40,50,60. Is that crazy? XD

Btw one question, I posted in cm7 thread but no answer :(. Can I change this values without using AMM(uninstalled)? I mean, change it from Root Explorer, and settings would be the same after rebooting?
 
Last edited:

zeppelinrox

Senior Member
Dec 21, 2010
9,374
21,587
IN THE FREAKIN' OP
lol no you're not crazy.
Like I said, I may tinker a little more with my settings - 6, 8, 24, 40, 50, 60 is not that different from yours.
I was testing 6, 10, 20, 40, 50, 60 this afternoon but I didn't like it too much.

Sorry, I hadn't visited the the CM7 thread in a few hours.
I usually save that one till last because it always has some good reading lol.

But yes, you can edit the same file that gets edited by AOR's memory manager:
/system/etc/init.d/99complete

Be sure to get the permissions right.
I cheat and use SuperManager ;)

Edit: Permissions for 99complete = chmod 755 /system/etc/init.d/99complete
 
Last edited:

n3n00

Senior Member
Dec 7, 2010
1,561
258
Split
lol no you're not crazy.
Like I said, I may tinker a little more with my settings - 6, 8, 24, 40, 50, 60 is not that different from yours.
I was testing 6, 10, 20, 40, 50, 60 this afternoon but I didn't like it too much.

Sorry, I hadn't visited the the CM7 thread in a few hours.
I usually save that one till last because it always has some good reading lol.

But yes, you can edit the same file that gets edited by AOR's memory manager:
/system/etc/init.d/99complete

Be sure to get the permissions right.
I cheat and use SuperManager ;)

And right permissions are? Im newbie with them xD.

With 16 I don't get FCs in apps I'm using. I did this because I read a tutorial for AMM, and realized that these numbers (6,8 etc) are RAM, and when system reaches 16mb, it will FC the secondary server (i guess that is, lets say game or something? Am I wrong?)

Edit: wtf I don't have a 99complete o_O.
59c9e835-5aac-2237.jpg
 
Last edited:

zeppelinrox

Senior Member
Dec 21, 2010
9,374
21,587
IN THE FREAKIN' OP
99complete for your settings of: 6,8,16,40,50,60

Code:
#/sbin/sh

echo "1536,2048,4096,10240,12800,15360" > /sys/module/lowmemorykiller/parameters/minfree

I attached it as well - just remove the .txt extension.

Permissions are the same as 10overclock ie.


Edit: The hard core way ---> chmod 755 /system/etc/init.d/99complete
 

Attachments

  • 99complete.txt
    99 bytes · Views: 424
Last edited:
  • Like
Reactions: MarcoToo

clmta

Member
Feb 6, 2011
41
9
Buenos Aires - CABA
Are you referring to VM Heap size?
I'm pretty sure now that VM heap size shouldn't really affect free ram.
But if it's too big, small apps will lag and if it's too small, large apps will lag.
I recommended 40mb because it would prevent most launchers from splitting into 2 virtual machines.

ok, I understand the point now. I checked now and I saw 2 LauncherPro running, so I will make some tests to try to put them in only one VM.

Regards.
 

zeppelinrox

Senior Member
Dec 21, 2010
9,374
21,587
IN THE FREAKIN' OP
After reading this page, I was under the impression that it's less efficient and that memory is wasted.

In my testing ADW Ex needs at least 38mb to run totally smoothly so I set mine to 40 mb. Interesting that it splits itself into 2 separate processes to get around the heap size issue but still runs into it.

If the two processes are running in the same virtual machine they should share the same memory space though. I mean, two different applications will run in different VMs, however even if one application requests to create a second process they will still be in the same VM.

I may be wrong, but this was my understanding behind it.

System Panel only shows 1 of the 2, the one that uses less memory. Out of its consumption of 30mb only 10mb is shared, presumably with the one that uses 38mb that OS Monitor shows.

I've seen the larger process go up to 39mb after watching it a bit more. Also, Facebook will take as much as it can get, easily 50mb+.
Is my conclusion correct, or not so much?
 
  • Like
Reactions: MarcoToo

Top Liked Posts

  • There are no posts matching your filters.
  • 4316
    Hey if somebody says that minfree tweaks don't work on ICS and JB, you can safely assume that they don't know what they're talking about lol

    ================================================= ==========================================
    Please Rate the thread 5 Stars and click the Thanks Button! (any of my posts will do!) if you have enjoyed using The V6 SuperCharger!
    Or consider donating:) - HUGE THANKS to those that have already donated! :cool:
    And THANKS for constructive feedback - which makes this mod so AMAZING!
    ================================================= ==========================================

    Rant: So I "cleaned up the OP" by adding little headings and hiding stuff. So if you want to post that it's still confusing, DON'T bother.
    If you don't like it, don't use it. (And calling yourself a n00b is a BS excuse - READ and LEARN something like everybody else did.)

    So... if you don't read and search first, and ask redundant questions anyway... be ready for...

    SLNCMM

    Main Download Page is HERE (V6 SuperCharger and all the latest RC/Beta/Tests for Kick Ass Kernelizer, 3G TurboCharger, and Die-Hard Battery Calibrator)

    Latest V6 SuperChargers are Black Dog-63457-Fix and For Your Lag

    Latest KAK and 3G TC
    are HERE
    Post #2 Info! - This is for the application of the following 3 Mods to services.jar!
    Mod 1. ICS and Jelly Bean - require the Jelly ISCream Mod done in conjunction with the V6 SuperCharger Script to SuperCharger your launcher!
    Mod 2. Froyo and up - can have the New Maximum MultiTasking Mods (Maximum Overdrive and the Time Killer Killer)
    Mod 3. Sense 4 and up - remove the Sense 4 limit of only 8 visible apps with the Non-Sense App Limit!

    These 3 mods are applied with my:
    -=Ultimatic Jar Patcher Tools=- (fully automated exe/bat/sh tools) OR...
    -=Ultimate Jar Power Tools=- patcher script (formerly called Jelly ISCream Smali Patcher) to automate Step 5 in Post #2 - the smali edits

    Note: The webapp needs updating (aka the "Automatic Transmission" in V6 SuperCharger) and won't work on JB!
    sigpic3357461_40.gif

    .

    SuperCharger = Speed + Multitasking!

    No more lag! No more launcher redraws! Smooth & Snappy!

    It's the ONLY Complete Memory Management Fix!

    There is NOTHING ELSE LIKE IT!

    It Runs Like A...
    SYd4TP


    So... HOLD ON TIGHT!


    Terms of Use:

    99SuperCharger Tweaking:
    Of course, I don't own any rights in regards to the actual tweaks applied to system settings.
    This means anybody is free to mess with OOM groupings, OOM priorities and minfrees.
    So it's fine to modify and share your tweaked 99SuperCharger file as long as you leave the credits intact :)

    Developers may include the attached V6 SuperCharger Installation Script in their roms. (This installs 99SuperCharger)
    The attached V6 SuperCharger installation script may NOT be disassembled in any way, or be used as a part of any memory management app or package.
    This is because it is no different than an app/apk found in the market. It's an installation program.
    I don't own any right to tweak OOM Groupings, OOM Priorities, or minfree values. But I do own this program.

    ATTN DEVS: Baking the V6 SuperCharger memory system in your ROM is 100% fine.
    ..................Don't make it a "secret" feature. Make it a PROMINENT feature and give proper credit and a HTML link to this thread.
    ..................You can include the V6 installation script in the system/xbin folder so users can use it with terminal emulator
    .................. - giving it a short name is fine as it's a pain to type long file names in terminal.
    ..................Do not modify it, do not rebrand it (ie. It's not called "V6script"). Thank you.

    This is the only permissible distribution of the attached installation script - unmodified, in a custom rom and in the system/xbin folder.

    Modification and redistribution of the attached installation script is not permitted at all.
    This means that you cannot feel free to zip up the attached installation script with other tweaks and this means that it is not be edited and shared.

    ATTN USERS: If you use or encounter a ROM with the V6 SuperCharger memory system, without proper credit given and no SuperCharger source links, please make the Developer aware of it, and if necessary, please let me know about it. Thank you.

    Personal Use: You may tweak the V6 installation script (leaving credits intact) to your own personal liking as long as it is NOT redistributed in any way.

    If you want to share this, just link to this thread.
    If you want to make a thread in other forums telling people about it, that's great.
    But I would prefer that you do not post a copy of the V6 SuperCharger installation script in those forums.

    Your co-operation is very much appreciated.

    I don't want diluted/broken V6 SuperCharger installations floating around and then have people say it doesn't work.
    =============================================================================

    Bonus Battery Calibration Info:

    First, let me link to my method of calibrating the battery without downtime so you can use your phone normally and do it whenever it's convenient.
    It definitely works on Milestone and it seems to work on Droid.
    I think that's a pretty good trick, anyway - it may even work on other phones ;)
    Note: You can also try my Die-Hard Battery Calibrator script which is on the download page.
    Update
    : As I suspected, any calibration method doesn't magically make your battery last longer ;)
    .............. - All my battery tips/scripts really do is help ensure that you are actually getting a full charge. THAT'S IT.
    .............. - Which is why my Die-Hard Battery Calibrator has always notified the user the REAL percentage vs the REPORTED percentage :D
    =============================================================================

    Summary of Steps (Yeah, it's THIS friggin easy...)

    Before you start reading, just know that this is not difficult to implement... it's easy. There's more specifics below but basically:
    1. Download a script
    2. Install BusyBox (Attached! - see install instructions above the attachments)
    3. Install Script Manager (Enable Browse as Root in Config)
    4. Load script into Script Manager (Run As Root - the skull and crossbones icon which turns green when selected)
    5. Follow instructions/user prompts & select what you want
    6. Patch services.jar as needed (see Post 2)

    See? EASY!

    Note: If you get errors, or fail the driving test, use the SuperCharger Starter Kit from the download page.

    Essentially, the Starter Kit makes sure that your ROM has no silly stability issues.

    It includes:
    A proven busybox
    Fixed su binary (for segmentation fault issues with superuser.apk on ICS only)
    zipalign binary and sqlite3 binary (used in Update 9 RC*)

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

    Know that the script explains what it does before it does anything!
    It holds your hand along the way and it will answer nearly all your questions as it moves along!

    It works on ALL Android devices - Custom Roms or Stock Roms, Phones or Tablets, it doesn't matter!

    Also Note: Nothing else does what The V6 SuperCharger does!
    ................Not AutoKiller Memory Optimizer, Not Auto Memory Manager, Not Minfree Manager...
    ................And NOTHING BEATS IT. PERIOD.

    So... if somebody says to you that V6 SuperCharger does the same thing as [pick any app], tell them to first read about what they're talking about so that they can actually have an informed opinion.

    Get A Taste of The V8 SuperCharger - Some details for 3G TurboCharger & Kick Ass Kernel Tweaks are here (older versions there too)
    ......................................................... - V8 SuperCharger Alpha for Milestone!

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

    Memorable User Comments:

    • "Feels like I have a new phone!"
    • "V6 is one the best things to come to android."
    • "Supercharger rocks bro, I'm actually mad I waited so long to do it..."
    • "I wish I hadn't upgraded yet"
    • "Now I can wait to upgrade",
    • "I was about to throw this phone through the wall",
    • "I was about to return it but now I don't have to",
    • "This cured my phone of cancer!"
    • "Oh man... just applied the V6 Supercharger Script by ZeppelinRox on my Android.. I think it fixed everything..",
    • "My phone is better than new!",
    • "my phones has turned god mode on or somthing",
    • "I never notice this at all, until I flash a new rom and realize its not there anymore lol."
    =============================================================================

    What's it do?

    It makes your phone FAST... super snappy with better multitasking!
    It rearranges and fixes the OOM Groupings and Priorites and lowmemorykiller values.

    So basically, it's a COMPLETE MEMORY MANAGEMENT FIX!

    It's the ONLY one of it's kind :D

    NO LAUNCHER REDRAWS, faster than ever, multitasking is better... why?
    Because it works with the lowmemorykiller and letting it work the way it's meant to work.

    Also, because of the rearrangement, it works the same on all roms!
    The problem with using minfree tweakers like AMM or AKMO is that it doesn't work the same on all roms.
    Secondary apps may be in slot 3 on some roms but in slot 5 in others!
    That's why you hear people comment "I tried AKMO but it didn't do anything..."
    Most likely it didn't do anything because the apps weren't sitting where they were expected to be.

    So fasten your seat belts and enjoy the ride!

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

    RAM Lesson:

    Important Note: FREE RAM IS NOT WASTED! - Read Linux Memory Consumption
    ...................... That article TOTALLY confirms what I've been saying!

    To Summarize: Article: "Performance degradation occurs when "Absolute Free Memory" (includes Cached RAM) decreases."
    ...................... Me: "Lag happens when free ram goes below the 'lag level'"

    Same thing, different language :D
    Big Thanks to dev hardcore and this post for helping me figure stuff out way back when ;)
    =============================================================================

    Note: Do this at your own risk - regardless of how little risk there is .
    ............ It has the UnSuperCharger Option to uninstall, but do a nandroid anyway.
    ............ Simply reflashing your ROM will also wipe it clean from your system.

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

    Requirements:


    1. Rooted Android Device. Milestoners, you can use Universal Androot (not in market ?)

    2. Script Manager or Terminal Emulator to run the script. Stock ROMs can also use SM to load up boot scripts!

    3. Busybox v1.16.2 OR ABOVE. You can use any of the ones attached to this post which contain a Feature Rich busybox v1.19.4 by wraithdu (CWM flashable.zip, "Normal" Installation script by me and one which reinstalls BusyBox on EACH boot by me.)

    OR,,,

    Grab the SuperCharger Starter Kit and have busybox plus other tools (fixed su binary for ICS with superuser.apk and not supersu.apk, zipalign binary and sqlite3 binary) installed instantly!

    BusyBox WARNING: Some versions are "minimal" with many missing applets and functions! I also find v1.18.3, v1.18.4 and 1.185 VERY much a hassle with errors that should NOT be errors! Avoid any such versions! Minimal is BAD!

    4. Optional: AutoStart Script by me :D - Enables Stock ROMS (Milestone + a few other devices) to utilize etc/init.d for boot scripts.
    =============================================================================

    Installing/Using:


    1. Download the attached V6_SuperCharger_for_Android*.txt/pdf script and save to your sdcard.
    - Do NOT run the V6 SuperCharger install script at boot!

    2. Run the script:
    A) Load the script (V6_SuperCharger_for_Android*.txt/pdf) into Script Manager and select "Run as Root" (skull and crossbones "Su" icon - it turns green when selected)

    OR...

    B) Run Terminal Emulator and simply type: su and enter, sh /sdcard/V6*.sh and enter (provided you saved the script to the root of your sdcard)

    OR...

    C) via ADB on your computer. In a console, type: adb shell and enter, su and enter, sh /sdcard/V6*.sh and enter (provided you saved the script to the root of your sdcard)

    3. Get SuperCharged! Just pick an option! The extra options (Engine Flush, etc.) explain things before doing anything :)

    4. READ the script's output!

    5. Afterwards, READ the html HELP FILE in the root of your SD Card!

    6. Non-ICS/JB ROMS - Disable "Lock Home in Memory" if your ROM has this option. (This takes effect immediately.)

    7. Optional: For a quick status check, you can put a Script Manager widget for V6 SuperCharger on you desktop :)

    8. Reboot - required if it's your first time SuperCharging the rom.

    9. Check if it works - After reboot, run the V6_SuperCharger script and check the info under the menu.

    10. Patch services.jar as needed (see Post 2)
    Cool! - Here are a few recent tutorials:

    [GUIDE] How to install Supercharger V6 (includes patching steps)
    [How To][Video Tut] Install/Run V6 Supercharger + Basics (uh... video)
    [GUIDE] V6 Supercharger Update 9 RC 8.2 + for Samsung Galaxy Young (includes a little KAK tutorial too)

    If you are using compcache and have lag or slow down after SuperCharging,
    DISABLE compache, wipe caches and re-enable it.
    Non-ICS/JB ROMS - Be sure to uncheck/disable lock home in memory!

    Note: V6_SuperCharger-AOR.zip is for use with Milestone's Androidiani OpenRecovery. Even if you have a Milestone, don't run it within Android.
    ........ AOR Usage: Extract to the root of your sdcard (Directory structure is in the zip)
    .........You will now have a SuperCharger Menu on the main screen. Simply select the menu and select 1 of the 12 options.

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

    Pro Tips:

    - CUST-OOMIZER! Use your settings without Autokiller Memory Optimizer or Auto Memory Manager!

    - Use the 3rd slot to set how much free ram you want.

    - If you have a viable init.XXX.rc file, it makes a backup and edits that single file. This is nice and tidy.
    ... Thank to kabaldan for pointing out the importance of certain things.

    - Most Custom ROMs - If you have a /system/etc/init.d folder, it creates 99SuperCharger in there and edits your choice of either /data/local.prop or /system/build.prop (18 entries added for adjusting priorities and groupings). You shouldn't need to configure anything else.
    - If the minfree levels do not stick on your Custom ROM:
    ........ Check /data/Ran_Supercharger.log to see if it ran... (Update 9 RC*)
    ........ If this happens to you, use Script Manager to load /system/etc/init.d/99SuperCharger "on boot" and "run as root"

    - Stock ROMs - It also creates /data/99SuperCharger.sh which you can load up on boot (run as root) with Script Manager. The OOM groupings work as well since it happens on boot in local.prop or build.prop (18 entries added) :D

    In case of any error, you will find a related help file in the root of your SD card.
    So... I think this covers ANY Android ROM :)
    The Help File! (Abbreviated)

    -=The V6 SuperCharger=- created by zeppelinrox.

    Here is some Background Info in case you're curious...

    Linux Memory Consumption - Nice article!
    Memory and SuperCharging Overview or... "Why 'Free RAM' Is NOT Wasted RAM!"
    MFK Calculator Info - explanation for vm.min_free_kbytes

    Stock ROMs: After running the script, have Script Manager load the newly created /data/99SuperCharger.sh on boot
    In the "Config" settings, be sure that "Browse as Root" is enabled.
    Press the menu key and then Browser. Navigate up to the root, then click on the "data" folder.
    Click on 99SuperCharger.sh and select "Script" from the "Open As" menu.
    In the properties dialogue box, check "Run as root" (SuperUser) and "Run at boot" and "Save".
    And that's it!
    Script Manager will load your most recent settings on boot!
    If you run the script later and with different settings, you don't have to reconfigure anything.
    Script Manager will just load the new /data/99SuperCharger.sh on boot automagically ;^]

    Custom ROMs: If you have a custom rom that loads /system/etc/init.d boot scripts,
    You DON'T need to use Script Manager to load a boot script. It will all be automatic!
    Also, if you can run boot scripts from the /system/etc/init.d folder, there are other options.
    For example you can use an app like Terminal Emulator to run the script.
    NON-ICS ROMS: If your ROM has the option, DISABLE "Lock Home In Memory. This takes effect immediately.
    Alternately, if you need to free up extra ram, you can use "Lock Home in Memory" as a "Saftey Lock".
    ie. Use it to toggle your launcher from "Bulletproof" (0) or Hard To Kill (1) to "Weak" (2) in the event that you want to make the launcher an easy kill and free up extra RAM ;)

    If Settings Don't Stick: If you have Auto Memory Manager, DISABLE SuperUser permissions and if you have AutoKiller Memory Optimizer, DISABLE the apply settings at boot option!
    Also, if you have a Custom ROM, there might be something in the init.d folder that interferes with priorities and minfrees.
    If you can't find the problem, a quick fix is to have Script Manager run /system/etc/init.d/*99SuperCharger "at boot" and "as root."

    Another option is to make a Script Manager widget for /system/etc/init.d/*99SuperCharger or /data/99SuperCharger.sh on your homescreen and simply launch it after each reboot.

    For those with a Milestone, I made a version for Androidiani Open Recovery too :D
    Just extract the zip to the root of /sdcard (it contains the directory structure), load AOR, and there will be a SuperCharger Menu on the main screen!
    ==============================================================================

    The above is ALL YOU NEED TO KNOW.

    The V6 SuperCharger Script EXPLAINS EVERYTHING that it does - as you use it!

    Anything below is extra info!

    So get SuperCharged FIRST and then read the stuff below to see how it works!

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

    The Nitty Gritty... For Geeks! (WARNING: This can make a non-Geek's head Assplode!)


    If you read Post #3 (History Parts 1-3), you'll see that at first it was only about minfrees and launcher redraw.
    But after installing GingerBread, I saw that it needed more work than Froyo LOL.
    Groupings were ALL MESSED UP and made NO SENSE to me whatsoever...

    So I figured out how to group them more like CM6 (Froyo) but that still wasn't good enough...

    So I further rearranged the OOM Groupings and Priorites and lowmemorykiller values and created a SuperCharger for phone memory...
    THE ONLY COMPLETE MEMORY MANAGEMENT FIX!

    Upon installation, V6 SuperCharger will first clean up any previous supercharging so none of your files get cluttered.
    But if you toggle between Hard To Kill and BulletProof launchers, the memory adjustments aren't affected.

    So you can leave your minfrees at stock/default settings and apply the Hard To Kill Launcher and still get the OOM Grouping/Priority fixes.

    So if you love your ROMs memory settings, just try a SuperCharged Launcher/OOM Fix... you won't regret it :)

    It's pretty awesome :D

    Here are some snaps....
    Before...
    SUWAbc
    R7A8vN

    After...
    OfFqrD
    VMJpgZ
    Q63dbT

    During....
    ULQkUo
    ULQlrj
    VAqBDc


    Bonus....
    WDh7oH
    QNJY8C
    R3RfSm
    ULQoTX


    Say Buh Bye to AKMO or any app that has to load on start up to change minfrees...

    So did you notice the difference in groupings?

    By default, CM7 has nearly all the apps in slot 5 and the launcher in slot 3.
    Slightly aggressive settings will kill any chance of multitasking in that situation.

    After SuperCharging, the apps get moved to slot 3 while the launcher is in slot 2 but the most important item in slot 2.

    I've read, "oh you don't need to run any scripts for memory management..."
    Well that's not true.
    Playing with minfree values is one thing... it's playing with minfree levels... it's not really memory management...

    Look at the pics above... now THAT's memory management...

    If you look below at Post #3... that's how it all started... good background info in case you're wondering what the hell I'm talking about.

    Notes: Minfree changes take effect immediately!
    .......... Switching between Hard To Kill (strong), Die-Hard (stronger) and BulletProof (strongest) Launchers require a reboot to take effect.
    .......... Disable your OS's "Lock Home in Memory" option, if it has it
    .......... Or use "Lock Home in Memory" as a "Saftey Lock" - to toggle your launcher from "Bulletproof" (0) or HTK (1) to "Weak" (2)
    .......... Note: "Lock Home in Memory" is not ADJ 1 with my OOM Grouping/Priority Fixes ;)

    Cool Tip: Sometimes it's difficult to keep a wanted background app alive, such as an SMS app. See how to Bulletproof Background Apps!

    Remember: When using scripts, use the SuperUser app to DISABLE SuperUser permissions for AMM!
    ................. It can still monitor your OOM groupings but it can't change your custom settings on boot.
    ................. If you have AKMO installed, disable it's option to Apply Settings at Boot!
    ==============================================================================

    BusyBox v1.19.4 Install Script Instructions:


    First extract busybox_v1.19.4-wraithdu-installer_script.zip to the root of your sdcard
    Method 1 - Just run the script inside/sdcard/bb1.19.4 with Script Manager as root.
    Method 2 - Run terminal and type su and enter
    ............... - Type sh /sdcard/bb1*/busy* and enter
    ............... - Soup's On, Baby!
    Boot Re-Installer! For BusyBox v1.19.4 Instructions:


    For PITA kernels and roms that insist on reinstalling old busyboxes on boot!
    Contains same script as above but includes another script that makes busybox v1.19.4 reinstall each boot!
    Basically, it installs the above script as /system/etc/init.d/96busybox :D
    So for those kernels and roms... TAKE THAT!

    First extract boot_reinstaller_script+busybox_v1.19.4-wraithdu-installs_every_boot.zip to the root of your sdcard
    Method 1 - Just run the boot_reinstaller* script found inside/sdcard/boot.bb1.19.3 with Script Manager as root.
    Method 2 - Run terminal and type su and enter
    ............... - Type sh /sdcard/boot*/boot* and enter
    ............... - Soup's On, Baby! (again and again!)
    ==============================================================================

    V6_SuperCharger-AOR.zip is for Androidiani OpenRecovery for Milestone!! - For Milestone ONLY! - See "Installing/Using" instructions above!

    How To Save Attached Files
    - Right click with your browser & select "save as" from menu, or use the QR Code or XDA app or Tapatalk
    - Also a great method - use Opera Mini web browser. Very easy to download and it's FAST!

    So... if you get an error like "line xxx: syntax error: unexpected end of file (expecting "blah blah")", it's an INCOMPLETE DOWNLOAD!
    Download it again and DO IT RIGHT. :p

    Most recent files are HERE (RC/Beta/Test releases)

    Don't Mirror Or RePackage My Files - Just link here - Then your thread won't get real old, real fast.

    If you're going to download something...
    Please HIT THANKS and Give a 5 Star Rating!
    2630
    Prior betas are here

    Latest -=V6 SuperCharger=- is Black Dog-63457

    Looking for the -= Maximum Overdrive=- Multitasking Mod?

    Check out the new -=Ultimate Jar Power Tools=- Thread!

    Kick Ass Kernelizer Help File! (Abbreviated)

    The Kick Ass Kernelizer

    What Does The Kick Ass Kernelizer Do?

    Memory Management++

    MFK Calculator Info - explanation for vm.min_free_kbytes
    LinuxInsight - The /proc filesystem documentation (Fantastic!)
    XDA [REF] Startup script speed tweaks OP by hardcore
    XDA Speed up your system with the noop scheduler

    TCP Speed & Security

    Security and Hardening the TCP/IP stack to SYN attacks
    3G TurboCharger Help File! (Abbreviated)

    The 3G TurboCharger

    In case of connection issues, see the notes in the 3G TurboCharger section at the top of /system/build.prop!

    Homework/Background Info... see the folllowing links for resources used.

    XDA Thread 1
    XDA Thread 2
    XDA Thread 3

    Wi-Fi AfterBurner.

    XDA Thread (Faster WIFI - N Standard Enabling)

    The 3g build.prop tweaks aren't really anything new... but I did put a new spin on it! ;^]

    You can find various individual configurations but as far as I know, my script is the only one that lets the user choose from more than one configuration.
    Before Updating V6 SuperCharger, Wipe Caches! (It's a menu option now!!)
    This is just a precaution in the event that you experience any lag and lessen the chance of bootloops...

    If XDA attchments aren't working, I sometimes post files at http://d-h.st/users/zeppelinrox
    Afterwards, when attachments work again, I upload here as well :p

    Change Logs:

    Updated Feb 11, 2013: - V6 SuperCharger Update 9 RC12 Test 6
    - Bugfix - Manual install of services.jar in Jelly ISCream Parlor (didn't find services.jar... blind ass script :p)
    - Reworked - Flush-O-Matic again - got rid of the while loop as well
    - Tweaked - BulletProof_Apps and One-Shot scripts - got rid of the while loops again
    - Tweaked - come code (got rid of many of "wc -l" commands - Thanks to gu5t3r for constructive feedback!)

    Updated Feb 7, 2013: - V6 SuperCharger Update 9 RC12 Test 3 & 4
    - Bugfix - the check for busybox applets... oops :eek:
    - Bugfix - FOM loop check

    Updated Feb 6, 2013: - V6 SuperCharger Update 9 RC12 Test 2
    - Tweaked - bOOM Stick... some more... even more extra speed.
    - Bugfixed - Flush-O-Matic and BulletProof_Apps not exiting previous instance properly.
    - Tweaked - Code a bit - the check for busybox applets

    Updated Feb 5, 2013: - V6 SuperCharger Update 9 RC12 Test 1
    - Added - SPEED!! - to the bOOM Stick... zOOM and vROOM are both much faster... especially the zOOM... zOOM... Stick! lol
    - Revamped - Flush-O-Matic - not all busyboxes have the start-stop-daemon so added and gave priority to the nohup applet. Involved quite a bit to make it work even if you don't have those 2 applets.
    - Revamped - BulletProof Apps and teh One Shot scripts - see above note regarding busybox and missing applet compatibility
    - Fixed - busybox ps compatibility (some versions don't have the -w option)
    - Fixed - bug in Detailing script (related to the boot counter thingie)

    Updated Feb 2, 2013: - V6 SuperCharger Update 9 RC11
    - Added - FixAlign! - zipalign and fix permissions all at once!
    - Added - Flush-O-Matic! - Engline Flush option was revamped! The script can now dump caches automagically and can now be launched within V6 too!
    - Added - Entropy-ness Enlaaaaaaaaaaaaaaaargerrrrr!!
    - Added - Option to run Detailing (database optimization) after a certain number of boots (you decide how many)
    - Separated - Misc & 3G Tweaks
    - Optional - Kernel Strength / Reboot Tolerance
    - Tweaked - Launcher Detection (yeah... yeah...)
    - Added - Support for newer kernels which involved a massive revamped code of the bOOM Stick! (they now do funky stuff with the adj and app's oom_adj files)
    - Revamped - BulletProofing scripts (due to the new kernel thing) and *97BulletProof_Apps can also be launched within V6!
    - Refined - Calculated Minfrees for some devices.
    - Bugfix - Wheel Alignment and FixAlign skips SystemUI.apk (problematic)
    - Updated - Infos in all generated scripts.
    - Updated - Help file
    - Tweaked - LOTS of code and LOTS of user infos!

    Updated Nov 1, 2012: - V6 SuperCharger Update 9 RC11 Test 9
    - PULLED! - U9RC11 Tests 7 and 8 - init.d boot script wasn't sticking good.
    - Fixed - Bug (may drain battery!) in init.d/99*SuperCharger - Renaming scheme and bootloop detection should work PERFECT now!
    - Tweaked - A bit of code/interface messages

    Updated Oct 25, 2012: - V6 SuperCharger Update 9 RC11 Test 8
    - Tweaked - Launcher Detection - Never ending story! Geez!
    - Tweaked - A bit of code/fix a grep error
    - Removed - The losing of 10% if using web app - I had forgot you lose % automatically anyway lol (launcher shows up as locked in memory ie NOT SuperCharged)
    - Fixed - Bug in 99SuperCharger (false alarm / bootloop message)

    Updated Oct 23, 2012: - V6 SuperCharger Update 9 RC11 Test 7
    - Reworked - Launcher Detection - Stupid Go widgets/notification process names can just KMA!
    - REWORKED - ICS Service Centre - is now the Jelly ISCream Parlor - and you LOSE 10% if you're patched with the Web App!
    - Fixed - Situation where the adj file doesn't exist anymore - Also effected the bOOM Stick.
    - Fixed - Bug in 99SuperCharger where it doesn't apply settings if it renames itself on boot (it worked fine during the next boot tho since it wouldn't need to rename itself)
    - Tweaked - Interface/Messages and LOTS of code

    Updated Sept 4, 2012: - V6 SuperCharger Update 9 RC11 Test 6
    - Fixed - a bug/error in /data/99SuperCharger.sh
    - Tweaked - launcher detection

    Updated Sept 2, 2012: - V6 SuperCharger Update 9 RC11 Test 5
    - Added - Calculation for Dalvik Cache (based on device's RAM)
    - Disabled - Misc/3G tweaks by default
    - Fixed - a couple of small bugs
    - Tweaked - root testing code for all generated scripts
    - Tweaked - Interface/Messages and some code

    Updated Aug 4, 2012: - V6 SuperCharger Update 9 RC11 Test 4
    - Added - Messages for Jelly Bean in ICS Service Centre (webapp needs updating blah blah)
    - Tweaked - Launcher Detection
    - Tweaked -Interface/Messages
    - Fixed - Loop that rookies had.

    Updated Aug 4, 2012: - SuperCharger Starter Kit RC12
    - Fixed - Will no longer install su binary on JB either... ONLY INSTALLS ON ICS! (Jelly Bean doesn't have the segfault issue anyway)
    - Fixed - Previous sqlite3/zipalign installer didn't install zipalign either if sqlite3 was skipped

    Updated Aug 1, 2012: - SuperCharger Starter Kit RC11
    - Options - Choose what you want to install - one at a time.
    - Tweaked - Code for all scripts (more stock rom friendly)
    - Tweaked - BusyBox installer (won't interfere with busybox built into some kernels)
    - Tweaked - su binary will only install on ICS or Jelly Bean
    - Tweaked - sqlite3 script installs a different binary on Jelly Bean.

    Updated July 29, 2012: - V6 SuperCharger Update 9 RC11 Test 3
    - Tweaked - SuperClean - shouldn't cause isssues anymore
    - Tweaked - init.rc search - smarter rc file search.

    Updated July 28, 2012: - V6 SuperCharger Update 9 RC11 Test 2
    - Fixed - A couple of wheel alignment bugs.

    Updated July 27, 2012: - V6 SuperCharger Update 9 RC11 Test 1
    - Removed - UnKernelizer from menu.
    - Added - 3 Kernel/VM Tweak Options! (Rock Hard, Rock & Roll, Soft Rock)
    - Tweaked - Re-SuperCharger behaviour on startup
    - Added - SD Card Read Speed Tweak (sd card cache) entry to init.rc
    - Improved - Wheel Alignment script.
    - Tweaked - ALOT of code - more efficient and smarter than ever :)
    Updated July 27, 2012: - SuperCharger Starter Kit RC10
    - Tweaked - Code for StartMeUp.sh and su binary installer
    - Tweaked - Backs up old busybox, if found, before replacing it.

    Updated July 15, 2012: - V6 SuperCharger Update 9 RC10
    - Improved - Jelly Bean compatibility!
    - Added - BootLoop detection for 99SuperCharger - If it thinks that it's bootlooping, it won't run again until you enable it by deleting /data/!!SuperChargerBootLoopMessage.log
    - Added - Calculated dalvik heap size which is based on devices RAM - found in Miscellaneous Tweaks)
    - Added - SD Card Read Speed Tweak (sd card cache) which is based on devices RAM (you really DON'T need it higher than 1MB - do the tests :p) - found in Miscellaneous Tweaks
    - Added - Counter to Wheel Alignment log along with improved statistics and logging.
    - Improved - logging for Detailing and Fix Emissions scripts.
    - Tweaked - Alot of code - should find external storage no matter what (removed SD Card references and put in the system's actual external storage path)
    - Tweaked - Interface (Driving Test PASS/FAIL notification, Boot Loop notification, Tasker warning when bulletproofing launcher, among various other things)
    - Improved - Root check along with the root checks in all generated scripts.
    - Removed - su binary check since updating Superuser and it's su binary fixes the segfaults.

    Updated July 13, 2012: - SuperCharger Starter Kit RC9
    - Tweaked - StartMeUp.sh again - It still failed to find the scripts on some roms :eek:

    Updated July 9, 2012: - SuperCharger Starter Kit RC8
    - Tweaked - StartMeUp.sh - It failed to find the scripts on some roms.
    - Added - Display of each script's version number

    Updated July 4, 2012: - KAK U3RC11 Test 1, 3GTC U3RC11 Test 1, DHBC RC8
    - Scripts updated with better root checks... again :p

    Updated July 1, 2012: - Fix Alignment Test 2
    - Added - Counter along with improved statistics and logging.
    - Tweaked - root check

    Updated June 30, 2012: - KAK U3RC10, 3GTC U3RC10, DHBC RC7, SuperCharger Starter Kit RC5
    - Scripts updated with better root checks and Jelly Bean compatibility in mind (ie. sdcard path can be different)
    - Just be sure that if you're on Jelly Bean, busybox is properly configured with symlinked applets and all that good stuff :)

    Updated June 26, 2012: - V6 SuperCharger Update 9 RC9 (twitter followers would already be up to speed due to all the testing but... )
    - Added - ICS Service Centre! Patch services.jar Automagically WITHIN THE SCRIPT with the Automatic Transmission! (transmission... transmit data... doyagettit?)
    - Added - Wheel Alignment ie. "ZepAlign" (ZipAlign even!)
    - Added - Lots of options (your launcher strength preference, 3g & misc tweaks optional, Detailing and Wheel Alignment boot options without delaying boot)
    - Added - More BRAINS! - It holds your hand through the first run for everything, tells you exactly what 25% SuperCharger Level increments you're missing, washes your dishes, etc...
    - Enhanced - BulletProof Apps LOTS: You can now unsupercharge apps individually, add apps to hitlist without viewing process list, tweaked code lots, interface tweaks, etc...
    - Tweaked - Launcher detection... What a ROYAL PITA!
    - Improved - Detailing script lots with check for sqlite3 binary, added animation, added logging, etc....
    - Tweaked - Fix Emissions script - Improved code and it no longer excludes framework-res.apk or com.htc.resources.apk
    - Added - Lots of error checking/idiot proofing
    - Tweaked - Lots of code everywhere, really
    - Tweaked - Lots of interface enhancements
    - Added - About 1500 more lines of code! Hell, it was 1001 lines in total a year ago :p
    - Most Importantly - Added More Threats!

    Updated June 26, 2012: - Kick Ass Kernelizer RC9
    - Added - Support for SmartReflex... so it don't break (lulz?)
    - Tweaked - Value for vfs_cache_pressure and swappiness (was 25 and 30, now 20 and 20)
    - Added - Value fs.inotify.max_queued_events, max_user_instances, max_user_watches
    - Added - More TCP Hardening (that's what she said)
    - Tweaked - Root check
    - Tweaked - Code a bit

    Updated June 26, 2012: - 3G TurboCharger RC9
    - Fixed - Wi-Fi AfterBurner situation where tiwlan.ini isn't found
    - Tweaked - CDMA Mode check
    - Tweaked - lte buffersize (was 262144,524288,1048576 - now 262144,524288,3145728)
    - Tweaked - Root check
    - Tweaked - Code a bit

    Updated June 26, 2012: - Die-Hard Battery Calibrator RC6
    - Tweaked - Root check
    - Tweaked - Code a bit

    Updated April 10, 2012: - V6 SuperCharger Update 9 RC8.2
    - Fixed - Bug when trying to apply calculated values automatically on rookies' first run - it would just loop back to menu :eek:
    - Fixed - Bug regarding fix emissions option when resupercharging.
    - Fixed - Bug regarding the installation marker in build.prop.unsuper.
    - Improved - Has proper rounding of decimals instead of just truncating them. This was a royal pain in the ass.
    - Enhanced - User prompts. No more confusion regarding the "applet not found" note
    - Tweaked - Method by which /init.d/*97BulletProof_Apps is launched.
    - Tweaked - Code a bit

    Updated April 03, 2012: - V6 SuperCharger Update 9 RC8.1
    - Fixed - Bug where the script appied all 0s for the minfrees :p
    - Fixed - Bug where the script would crash when supercharging current minfrees that had a decimal value (ie. 32.532 MB was bad)

    Updated April 02, 2012: - V6 SuperCharger Update 9 RC8
    - Added - Fix Emissions Script! (Fix Permissions)
    - Added - Option to run Fix Emissions on boot! (Does NOT slow down boot time!)
    - Removed - Market links to BusyBox Installer (suddenly half assed busybox builds are running rampant ;p)
    - Added - Link to my OP to get BusyBox builds compiled by wraithdu instead (So There! smali ass busybox builds!)
    - Added - Automatic direction to use calculated values for Rookies! (after selecting Driver Options)
    - Added - Support for a couple of more launchers
    - Tweaked - Delay time in *97BulletProof_Apps - reduced to 30 seconds from 60 seconds. Shouldn't effect battery life since it still goes to deep sleep as it always does.
    - Tweaked - Method by which /init.d/*97BulletProof_Apps is launched.
    - Tweaked - Interface and user prompts.
    - Changed - "Help File" to "Owner's Guide" ;)
    - Removed - Most DNS Tweaks (too many weird connection issues started happening)
    - Tweaked - net.tcp.buffersize.* settings
    - Changed - "Market" to "Google Play"

    Updated April 02, 2012: - Kick Ass Kernelizer RC8
    - Tweaked - vm.vfs_cache_pressure (25, was 10)
    - Tweaked - vm.swappiness (30, was 0)

    Updated April 02, 2012: - 3G TurboCharger RC8
    - Removed - Most DNS Tweaks (too many weird connection issues started happening)
    - Tweaked - net.tcp.buffersize.* settings
    - Changed - "Market" to "Google Play"

    Updated March 15, 2012: - V6 SuperCharger Update 9 RC7
    - Added - Display of SuperCharger Percentages in 25% Sections!
    - Added - DNS Tweaks.
    - Enhanced - BulletProof Apps: You can now add ANY app to the HitList! (App doesn't have to be running at the time)
    - Fixed - Bug in Un-BulletProof Apps routing (HitList remained... doh)
    - Fixed - Small bug in /init.d/97BulletProof_Apps (effected only a few roms)
    - Fixed - Small bug in ICS launcher detection.

    Updated March 15, 2012: - Kick Ass Kernelizer RC7
    - Tweaked - Values for dirty_ratio, dirty_background_ratio, vfs_cache_pressure.
    - Added - Conditional execution of 98KickAssKernel
    - Tweaked - Interface a bit.

    Updated March 15, 2012: - 3G TurboCharger RC7
    - Added - DNS Tweaks.
    - Fixed - A couple of bugs (#Credit and thanks entries in bad location)
    - Added - Help file to the menu
    - Tweaked - Help file content.
    - Tweaked - Reboot feature

    Updated March 15, 2012: - Die-Hard Battery Calibrator RC5
    - Tweaked - Reboot feature

    Updated March 02, 2012: - V6 SuperCharger Update 9 RC6.9
    - Tweaked - minfrees for all 256 and 512 HP settings
    - Tweaked - ADJs and MEMs and adj (ie. I messed with groupings a bit lol) - Should be smoother ;^]
    - Tweaked - Launcher detection
    - Tweaked - Interface - It now tells you where the 100% comes from (4 x 25% sections)
    - Fixed - Segmentation Fault errors on ICS when launching Help file, Web Sites or Market links.
    - Tweaked - ReSuperCharger so it only asks you ONCE if you want to resupercharge after flashing a rom
    - Tweaked - Alot of the code in general
    - If you switch between build or local.prop, the entries are immediately moved the the new prop file (hey I learned a new trick :D)
    - Increased - Value (percentage of expected free ram) for min_free_kbytes
    - Tweaked - tcp buffersizes
    - Changed - kernel.panic_on_oops to 1 (I may make panic settings a selectable option - for now this may lead to more reboots as they won't be prevented)
    - Tweaked - Values for net mem values
    - Tweaked - PowerShift Scripts - If you use them, REFRESH them by running each setting that you normally use!
    - Added - Un-BulletProof Apps option to Option 17.
    - Tweaked - Other stuff in BulletProof Apps (ie. Added a couple of tips... and when you have more than 1 matching process it was a pain in the ass)

    Updated March 02, 2012: - Kick Ass Kernelizer RC6
    - Increased - Value (percentage of expected free ram) for min_free_kbytes
    - Tweaked - Values for dirty_ratio, dirty_background_ratio, vfs_cache_pressure and net mem values to be more conservative (should be smoother with less chance of gags)

    Updated March 02, 2012: - 3G TurboCharger RC6
    - Added - Wi-Fi After Burner!
    - Will go into GSM or CDMA Mode automatically!
    - Fixed - Wi-Fixer (didn't work on some devices)
    - Fixed - Segmentation Fault errors on ICS when launching Market or Help File
    - Tweaked - tcp buffersizes
    - Added - ro.mot.eri.losalert.delay, ril.cdma.ppp.up
    - Removed - persist.ril.mux.noofchannels

    Updated March 02, 2012: - Die-Hard Battery Calibrator RC4
    - Fixed - Segmentation Fault errors on ICS when launching Battery History
    - Added - Ability to launch Power Usage Summary
    - Tweaked - Code a bit

    Updated February 13, 2012: - V6 SuperCharger Update 9 RC6.1
    - ICS SuperCharger compatible lol (launcher detection should work!)
    - Tweaked ADJ values and adj grouping limits! Should be FASTER and SMOOTHER than EVER!
    - The init.d boot scripts now have debugging turned on by default.
    - Fixed a couple of bugs

    Updated February 13, 2012: - Kick Ass Kernelizer RC5
    - Final bug fix to I/O tweaks?

    Updated February 13, 2012: - 3G TurboCharger RC5
    - Added a couple of CDMA tweaks. Thanks to motcher41!

    Updated February 06, 2012: - V6 SuperCharger Update 9 RC6, 3G TurboCharger RC4, KAK RC4, and DHBC RC3
    - Killed a couple of bugs
    - Talon kernel support
    - SuperSticky SuperCharger!
    - Smarter/improved code/enhanced user prompts
    - Changed the oom/adj grouping limits (less chance of gags - had too much stuff in slot 3 in RC5.2 lol)

    Updated January 29, 2012: - V6 SuperCharger Update 9 RC5.2, KAK RC3.1
    - Fixed the stupid setprop issue on some devices. Looks to be problem free :D

    Sorry but I have temporarily pulled latest V6 and KAK.
    Seems that the innocent setprop command is preventing boot on some roms... which is totally unexplainable :p

    Updated January 27, 2012: - V6 SuperCharger Update 9 RC5, 3G TurboCharger RC3, KAK RC3 and DHBC RC2
    - UnSuperCharge with your current version first (no need to reboot yet), and then run the new V6 SuperCharger RC5... and then reboot!
    - Read ALL Script Output as there are MANY changes!
    - BulletProofing Apps is very polished now so read the comments in all generated scripts as well!
    - ICS Note! The launcher won't supercharge YET but alot of changes were made to make it run error free on ICS

    Updated November 22: - V6 SuperCharger Update 9 RC4, 3G TurboCharger RC2, KAK RC2 and DHBC RC1.
    Change Log is too huge to write up at the moment - CHECK MY TWITTER FOR MOST PERTINENT INFO (Link In Signature
    I recommend to UnSuperCharge and reapply everything because NOTHING is untouched.
    This way all your PowerShift, BulletProof, etc. scripts get refreshed!

    Updated October 30: - V6 SuperCharger Update 9 RC3.2
    Fixed - A mkdir error when exiting the script
    Removed - Entry from *.prop file (dalvik.vm.dexopt-flags=m=y,v=n - I forgot it there after testing it :eek: - caused some devices to not boot!)

    Updated October 29: - V6 SuperCharger Update 9 RC3.1
    Fixed - Boot up issue with /data/99SuperCharger.sh
    Fixed - Sqlite_stmt_journals error (for temporary files) on some devices

    Updated October 27: - V6 SuperCharger Update 9 RC3
    Fixed - Bug where duplicate entries would occur in your *.prop and *rc file with options 11 -13 (OOM Fix + * Launcher)
    Added - debug tool - (Was in RC2.1 but forgot to mention it) - /data/SuperChargerRan will contain info on when 99SuperChargers ran!
    Tweaked - Detection of launcher change
    Tweaked - 99SuperChargers' delay... but if you experience a delay with no benefit (if settings where already sticky so waiting for nothing or they still don't stick) you can put a # in front of the sleep 60 command in /data/99SuperCharger.sh
    Tweaked - PowerShift scripts - they now have output/notification like the main V6 script plus there is a copy in the data folder too :)
    Tweaked - BulletProof One Shot scripts - they now have output/notification too!
    Tweaked - 97BulletProof_Apps script - You guess it: Added output/notification messages for each bulletproof attempt!

    Updated October 26: - V6 SuperCharger Update 9 RC2.1
    Smarter - If you change launchers, it tells you that you need to reboot ;)
    Smarter - If it's your first SuperCharge, it brings to the wipe caches & reboot tool
    Misc. Tweaks - Removed "debug.sf.hw=1", Added "pm.sleep_mode=1" (saves battery)
    Tweaked - Minfrees again - less multitasking but not as aggressive as before
    Enhanced - the interface some more
    Improved - the code some more
    Tweaked - init.rc support - off by default
    Tweaked - 99SuperCharger a bit - Added an echo command to make busybox v1.19.1 stfu and be happy.

    Updated October 24: - V6 SuperCharger Update 9 RC1
    Improved - Cust-OOMizer - redid all the code (can now do a quick charge with current minfrees)
    Improved - Engine Flush - shows before and after stats (It's really :cool:)
    Improved - Re-SuperCharger - won't ever overwrite existing system files with old ones from a different rom and with an easy workaround for that.
    Added - Option to wipe dalvik cache and cache partition!
    Tweaked - Minfrees - Presets above 256HP are now more multitasking friendly
    Tweaked - init.rc support - now optional to copy a supercharged init.rc to root on boot.
    More - Lenient busybox recommendations v1.16.2 and up (excluding versions greater than 1.18.2 and lower than 1.19.0)
    ReWrote - ALOT of the code - It's ALOT more efficient and smarter :)
    Enhanced - the interface all over the place...
    Added - Misc. Tweaks... debug.sf.hw=1, persist.sys.purgeable_assets=1, wifi.supplicant_scan_interval=120, windowsmgr.max_events_per_sec=75
    Added - something fun... :cool:
    Added - something controversial... :eek:

    Updated October 24: - 3G TurboCharger Installer Update 3 RC1
    Added - Wi-Fixer - Try and fix wifi issues after applying 3G tweaks...
    Added - 6th setting (uses less battery)
    Added - Market Link in menu - Opens up to speedtest.net app
    Added - something fun... :cool:

    Updated October 24: - Kick Ass Kernelizer Installer Update 3 RC1
    Added - Uninstaller
    Added - sio scheduler support
    Added - vm.oom_dump_tasks=1, vm.laptop_mode=0, vm.block_dump=0, fs.lease-break-time=10
    Changed - vm.min_free_kbytes=4096 (was 8192), vfs_cache_pressure=20 (was 10)
    These are NOT PDFs!

    The V6 SuperCharger script is now too big to upload as .txt and making a .zip causes confusion ("Can I flash it?" etc...)
    The other scripts are no longer .txt either because people are having trouble recently downloading .txt attachments.
    Remove the pdf extension if you want but Script Manager will still run it as is.

    In case of bootloops due to KAK I/O Scheduler tweaks, go here! - Thanks to wraithdu!
    CWM flashable busybox v1.19.4! - See attachments in OP! - Thanks to wraithdu again!
    Segmentation Faults on ICS with superuser.apk? go here for a fixed su binary! - Thanks to... you guessed it... wraithdu! lol

    Using SuperCharger Starter Kit (Prepares your ROM with the fixed su binary (only for superuser.apk on ICS), zipalign binary, sqlite3 binary and busybox v1.19.4... and does NOT include the V6 SuperCharger scipt):
    - Extract the zip to the root of the sdcard and it will all be in /sdcard/SuperCharger_Starter_Kit
    - With Script Manager, just run StartMeUp.sh to install everything at once.
    - Or, in terminal do: su, enter, sh /sdcard/Super*/Start*

    How To Save Attached Files
    - Right click with your browser & select "save as" from menu, or use the QR Code or XDA app or Tapatalk
    - Also a great method - use Opera Mini web browser. Very easy to download and it's FAST!

    So... if you get an error like "line xxx: syntax error: unexpected end of file (expecting "blah blah")", it's an INCOMPLETE DOWNLOAD!
    Download it again and DO IT RIGHT. :p

    Don't Mirror Or RePackage My Files - Just link here or the OP - Then your thread won't get real old, real fast.

    If you're going to download something...
    Please HIT THANKS and Give a 5 Star Rating!

    Newest Files Are Listed Last!
    1293
    I SCream SUPERCHARGER!!

    ===================================================================
    If this information is helpful, please Rate the thread 5 Stars and click Thanks!
    ===================================================================

    Hacking services.jar

    What's this for? - Froyo, Gingerbread, Honeycomb, ICS, Jelly Bean AND Sense 4.0+!

    ICS and Jelly Bean - Jelly ISCream Mod (SuperCharge Your Launcher)
    Note 1: Earlier Android ROMS need ONLY The V6 SuperCharger Script to SuperCharge the launcher!
    Note 2: The webapp is NOT working on some newer roms! The strings to be edited are slightly different and the webapp needs updating!
    It also lacks the newest edits and is NOT recommended for the time being!

    Froyo and Up - Maximum MultiTasking Mods - Includes -=Maximum Overdrive=- and The Time Killer Killer

    Sense 4.0 and Up - Non-Sense App Limit

    See the -=Ultimate Jar Power Tools=- thread for more details about the Multitasking and Sense mods!
    Use the Ultimate Jar Power Tools patcher script to automate Step 5 (the smali edits) in the tutorial below!
    Or use my latest -=Ultimatic Jar Patcher Tools=- to do ALL the Steps in the tutorial! It works for DEODEX and ODEX ROMS and can be run on Windows/Linux/Mac OSX OSes!

    ===================================================================
    Jelly ISCream Mod Information!
    ===================================================================
    The NEW Ultimatic Jar Patcher Tools and Ultimate Jar Power Tools patcher script include all the -=NEW=- Jelly ISCream edits described in Step 5 - PLUS many more! (over 50 edits!)
    These additional edits truly makes your launcher SuperCharged!
    They also apply the latest Maximum MultiTasking Mods :cool:
    The webapp hasn't been updated so it's NOT recommended.

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

    Installation - Easy as 1, 2, 3!

    1. Run the NEWEST V6 SuperCharger script as always.

    Note: You may get Segmentation Fault errors running the V6 SuperCharger script on ICS due to a flakey su (superuser) binary.

    To resolve the issue, you can:
    A) Go HERE for a fixed su binary. No more fugly segfaults! - Thanks to wraithdu :) (only for superuser.apk on ICS)
    OR...
    B) Go HERE and get the SuperCharger Starter Kit!

    2. Patch and install services.jar - by whichever method you like best. Your options are, in order of EFFECTIVENESS:

    Note: Options A, B and C require Java to be installed on your computer - Click to Verify Java Installation

    Option A) Use one of the -=Ultimatic Jar Patcher Tools=- (exe or zip) which DO EVERYTHING for you "Fully Ultimatically" on DEODEX & ODEX ROMS!

    Goto Step 3 if you did this!

    Option B below is the next preferred method - but there's manual work involved.

    Option B) Follow the complete tutorial below and use -=Ultimate Jar Power Tools=- patcher script to automate Step 5 - the actual smali editing!
    There are actually 56 edits performed via script... many more than what is specified in the tutorial!

    Note that the script allows you to choose the level of your Launcher's Super Strength! (BulletProof, Die-Hard, or Hard To Kill)
    Also be sure to have the necessary smali files in the same folder as the script!

    ODEX ROMS - ALL Stock ROMS are ODEX (I think... :p) So if you have a services.odex file, press the button!
    All but Step 5 is automated on Windows with a batch script courtesy of rexstor .
    See [Guide][Batch][Odex Rom only!] To get another 50% v6 Supercharged script for ICS!
    So you'd run the batch script, and for the editing, run my Ultimate Jar Power Tools patcher script in Step 5 :cool:
    Goto Step 3 if you did this!

    Option C) Follow the complete tutorial below without using any Patcher tool.
    This is actually pointless to do - there are less edits and it's more work :p And the laziest people should just do D) below lol
    Goto Step 3 if you did this!

    Option D) Use the latest Update 9 RC* and select ICS Service Centre's Automatic Transmission! (OUT OF DATE)
    Seemless webapp integration and installation to "Lock home in Memory"
    Note: This is currently out of date - latest edits and Maximum MultiTasking Mods are NOT included and it does not work on Jelly Bean!
    Goto Step 3 if you did this!

    Option E) ICS OOM Priority Charger webapp. Same effectiveness as D) but done manually (OUT OF DATE)
    Latest Update 9 RC* can install and apply permissions via ICS Service Centre's manual mode
    Important: The webapp WON'T WORK for ODEX roms! So if you have a services.odex file, you have use a more effective option above :p
    Also won't work on Jelly Bean ROMS!

    More Webapp Info
    Just go to http://android.mimic.ca with your devices browser and follow instructions!

    In case of upload problems: If your Android browser closes while selecting file to upload, use Opera Mini web browser because it lets you select a file from within the app. Just copy services.jar to the sdcard first :)

    CWM zip option is available!

    But if you don't get the CWM zip, and instead download the modded services.jar, you can:

    A) Do Steps 8 to 10 below! But first In Terminal Emulator, just type su and enter, busybox mount -o remount,rw /system and enter (Mount system as read/write).
    OR...
    B) Use the ICS Service Centre's manual mode in V6U9RC*

    Help for webapp: Go to http://webchat.freenode.net , channel #v6_supercharger and talk to blk_jack (or me if I'm there)
    * All roms (odex & deodex) - to install a patched services.jar/odex, you can use the ICS Service Centre's manual mode in V6U9RC9+ (for Steps 8 and 9 below).
    * If you ever have trouble applying permissions to services.jar/odex, just run the ICS Service Centre and permissions gets applied everytime just before returning to the main menu!

    3. SuperClean & ReStart! (ie. Wipe Dalvik Cache & Reboot)

    Notes: For decent launcher detection use at least V6U9 RC6.9 or newer and check the bOOM Stick to see if the launcher the desired ADJ value!
    .......... - Boot will take a LONG time as it "optimizes all your apps"
    .......... - If it doesn't boot (unlikely if you did the edits yourself), try wiping caches (not data)
    .......... - If it still doesn't boot, you can always just re-flash your current untouched rom but do have a backup nevertheless.
    .......... - If you get FCs, fixing permissions will solve that. (Use the "Fix Emissions" Option in the latest V6 SuperCharger Script! :D)

    That's It!

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

    OK I got ICS SuperCharged!!

    The problem with SuperCharging ICS is that ICS doesn't read ADJ values from build.prop or local.prop - they are hardcoded into services.jar!
    So the script alone can only give you a 50% SuperCharge Level with only the V6 SuperCharger script.
    Patching services.jar gives you the other 50% along with a SuperCharged Launcher!

    ICS users still have to run the V6 SuperCharger script just like before! Use V6U9 RC6.9 or newer for decent launcher status detection!

    Note: Of course, the V6 SuperCharger script is ALL YOU NEED on all previous Android ROMS!

    So the mod below is for getting the Launcher at a SuperCharged Priority on ICS!
    This is akin to the ADJ entries in build.prop or local.prop on earlier Android ROMS which don't work on ICS.

    What gets changed?

    I rearranged Priorties on ICS like so:
    Code:
    System                -16                     (stock)
    Persistent Process    -12                     (stock)
    ForeGround app          0                     (stock)
    Home Launcher           1 (Die-Hard Launcher) (stock=6)
    Perceptible app         2                     (stock)
    Visible app             3                     (stock=1)
    Heavyweight app         4                     (stock=3)
    Previous app            5                     (stock=7)
    Service                 6                     (stock=5)
    Backup app              7                     (stock=4)
    Service_b               8                     (stock)
    Hidden app min          9                     (stock)
    Hidden app max         15                     (stock)
    As you can see, there are ALOT more app categories now lol
    I also decided to give a new app category a higher priority - Previous Apps.

    Users with low ram devices will definitely be pleased with that :D
    I was actually able to load Angry Birds, ran a different app, and went back to Angry Birds and it didn't have to restart.
    It's practically unheard of for that game to stay in memory like that on my device ;)
    I really don't understand the logic of making Previous apps more killable than some app that you were using awhile ago (ie Service) so I fixed it :D

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

    How To:

    This will make it easier [Guide][Tutor]Jar/Apk baksmali smali compiler and decompiler
    Important! - Get the MOST RECENT smali/baksmali binaries located here (remove the version number so they are called smali.jar and baksmali.jar)

    Click to Verify Java Installation - smali/baksmali requires Java to be installed on your computer.

    ODEX ROMS: If you have an odex rom (ie. you have a services.odex file) you have extra work. See this
    ..................... - Watch for dark red text for odex specific instructions! Some of which were initially found in this services.odex hacking guide.
    ..................... - Going with the odex guide above, you will also need the dexopt-wrapper utility.
    ..................... - Download the utility "dexopt-wrapper". (Do a search - you'll find it.)
    ..................... - Mount system as read/write. Open up Terminal and type: su, enter, busybox mount -o remount,rw /system
    ..................... - Copy it to /system/bin and apply correct permissions.
    ..................... - In terminal type: chmod 755 /system/bin/dexopt-wrapper, enter.

    OR... You can convert your ODEX ROM into an easily modded deodexed one. Here are a few options to do that:
    ..................... xdaAutoTool (Windows - the first 3 posts have 3 different tools!)
    ..................... AutoAPKTool + AutoDeodexTool (Linux port of xdaAutoTool)
    ..................... Auto Deodex & Zipalign Tool (Windows - looks easy)
    ..................... Manually Deodex and Odex Back (Windows - geeky)

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

    Step 1. So grab the tutorial zip from above and unzip into a folder, say C:\super, along with the smali and baksmali jar files. This is all you need apart from a text editor and a zip program like 7zip or WinRAR.
    ............ Put services.jar (make sure you have a backup) in C:\super.
    ............ ODEX ROMS: Put services.jar AND services.odex in C:\super. (Note that services.jar will be very small with only a META-INF folder inside)

    Step 2. Open up a dos/command prompt and navigate to the folder by typing cd c:\super

    Step 3. Type: java -jar baksmali.jar -x services.jar -o classout (services jar gets decompiled into a classout folder.) Leave the dos/command prompt window open.
    ............ ODEX ROMS: Copy /system/framework folder(with all the jar+odex files) to c:\super
    ........................ Type: java -jar baksmali.jar -x -a <api_level> -d framework services.odex -o classout
    ........................ api_level is a number. See this page. So if you're on froyo, you put -a 8. On gingerbread it's -a 9 or -a 10.
    ........................ If you get an error: Add the $BOOTCLASSPATH to the above command.
    ........................ So do this command on your device using terminal emulator OR adb shell (easier): echo $BOOTCLASSPATH
    ........................ Example: You'll get something like this:
    /system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/framework2.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar
    ........................ Remove the paths (/system/framework/) so end up with core.jar:core-junit.jar:bouncycastle.jar:ext.jar:framework.jar:framework2.jar:android.policy.jar:services.jar:apache-xml.jar
    ........................ Now, your final command becomes:
    java -jar baksmali.jar -a ## -x -c :junit.jar:bouncycastle.jar:ext.jar:framework.jar:framework2.jar:android.policy.jar:services.jar:apache-xml.jar services.odex -o classout
    ........................ NOTE: This command may FAIL if you don't put the colon (:) after the "-c " and before that list of .jar files.

    Step 4. Open explorer and navigate down to c:\super\classout\com\android\server\am folder and find ActivityManagerService.smali

    Step 5. Use the -=Ultimate Jar Power Tools=- patcher script to perform the following edits (IT actually does TONS more for a smoother SuperCharge!)
    Get it from THIS THREAD, and run it like my other scripts and be sure to have both ProcessList.smali AND ActivityManagerService.smali in the same folder as the patcher script! (Erm.... put them on your phone, run the Power Tools script, then copy the new smali files back to where you found them!)

    Note that the Jelly ISCream Mod will read the previous ADJ values from ProcessList.smali, searches for those ADJs and replaces them with SuperCharged ones in BOTH smali files!

    Then go to Step 6 :cool:

    If you don't wanna go the easy way... click the button!
    Open ActivityManagerService.smali in notepad or notepad++ and make following smali edits.

    a. Note that the "====" are breaks and NOT part of the smali file
    b. Underlined is the search term so you can find the location in the file easily.
    ... - The search term includes the "quotes" and is CaSe SEnsiTive (ie. select Match Case in search) so you should actually only get 1 hit for all but 1 search.
    ... - There are 5 hits for "backup" with quotes but just scroll down from the previous edit you'll find it :p (heh. the previous edit is for "previous" lol)
    c. Bold is the edit (note that each edited line begins with "const/4 v10, " Update: New roms now have "const/4 v11, " or "const/4 v14, " instead)
    d. (Italized) is the ORIGINAL value

    So, for example, the first edit for "visible" apps:
    const/4 v10, 0x3 (0x1)

    Originally, it looks like: const/4 v10, 0x1
    After edit, it looks like: const/4 v10, 0x3

    Ok... so here it is :D

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

    .line 13728
    const/4 v2, 0x1

    if-le v10, v2, :cond_118

    .line 13729
    const/4 v10, 0x3 (0x1)

    .line 13730
    const-string v2, "visible"

    move-object/from16 v0, p1

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

    if-ne v0, v2, :cond_154

    .line 13768
    const/4 v10, 0x4 (0x3)

    .line 13769
    const/16 v27, 0x1

    .line 13770
    const/4 v2, 0x0

    move-object/from16 v0, p1

    iput-boolean v2, v0, Lcom/android/server/am/ProcessRecord;->hidden:Z

    .line 13771
    const-string v2, "heavy"

    move-object/from16 v0, p1

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

    .line 13777
    const/4 v10, 0x1(0x6) Note that this is for Die-Hard Launcher! To BulletProof it, make it 0x0, HTK 0x2

    .line 13778
    const/16 v27, 0x1

    .line 13779
    const/4 v2, 0x0

    move-object/from16 v0, p1

    iput-boolean v2, v0, Lcom/android/server/am/ProcessRecord;->hidden:Z

    .line 13780
    const-string v2, "home"

    move-object/from16 v0, p1

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

    .line 13788
    const/4 v10, 0x5(0x7)

    .line 13789
    const/16 v27, 0x1

    .line 13790
    const/4 v2, 0x0

    move-object/from16 v0, p1

    iput-boolean v2, v0, Lcom/android/server/am/ProcessRecord;->hidden:Z

    .line 13791
    const-string v2, "previous"

    move-object/from16 v0, p1

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

    .line 13808
    const/4 v10, 0x7(0x4)

    .line 13809
    const-string v2, "backup"

    move-object/from16 v0, p1

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

    -=NEW=-

    .line 13828
    const/4 v2, 0x6(0x5)

    if-le v10, v2, :cond_203

    .line 13829
    const-string v2, "started-bg-ui-services"

    move-object/from16 v0, p1

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

    .line 13837
    const/4 v10, 0x6(0x5)

    .line 13838
    const-string v2, "started-services"

    move-object/from16 v0, p1

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

    -=NEW=-

    .line 13845
    :cond_37f
    const/4 v2, 0x6(0x5)

    if-le v10, v2, :cond_203

    .line 13846
    const-string v2, "started-bg-services"

    move-object/from16 v0, p1

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

    This next part is actually hard to search for so I'm posting a large segment which contains 3 edits that make a HUGE difference!
    To make it a little easier, search for "bg-services"
    There are 2 hits - The second one is at the bottom of this segment.
    Also, not that only one of them begin with the typical "const/4 v10, ", the other 2 begin with "const/4 v2, "

    -=NEW=-

    const-string v11, "service"

    goto/16 :goto_3e1

    .line 13932
    :cond_487
    iget v2, v15, Lcom/android/server/am/ConnectionRecord;->flags:I

    const/high16 v5, 0x4000

    and-int/2addr v2, v5

    if-eqz v2, :cond_496

    const/4 v2, 0x2

    if-ge v12, v2, :cond_496

    const/4 v2, 0x2

    if-le v10, v2, :cond_496

    .line 13935
    const/4 v10, 0x2

    goto :goto_471

    .line 13936
    :cond_496
    const/4 v2, 0x3 (0x1)

    if-le v12, v2, :cond_49b

    .line 13937
    move v10, v12

    goto :goto_471

    .line 13939
    :cond_49b
    const/4 v2, 0x1

    move-object/from16 v0, p1

    iput-boolean v2, v0, Lcom/android/server/am/ProcessRecord;->pendingUiClean:Z

    .line 13940
    const/4 v2, 0x3 (0x1)

    if-le v10, v2, :cond_471

    .line 13941
    const/4 v10, 0x3 (0x1)

    goto :goto_471

    .line 13995
    .end local v3 #client:Lcom/android/server/am/ProcessRecord;
    .end local v4 #myHiddenAdj:I
    .end local v11 #adjType:Ljava/lang/String;
    .end local v12 #clientAdj:I
    .end local v13 #clist:Ljava/util/ArrayList;,"Ljava/util/ArrayList<lcom android="" server="" am="" connectionrecord;="">;"
    .end local v15 #cr:Lcom/android/server/am/ConnectionRecord;
    .end local v17 #i:I
    .end local v22 #kt:Ljava/util/Iterator;,"Ljava/util/Iterator<ljava util="" arraylist<lcom="" android="" server="" am="" connectionrecord;="">;>;"
    .end local v26 #s:Lcom/android/server/am/ServiceRecord;
    :cond_4a5
    move/from16 v0, p2

    if-le v10, v0, :cond_4b6

    .line 13996
    move/from16 v10, p2

    .line 13997
    const/4 v2, 0x0

    move-object/from16 v0, p1

    iput-boolean v2, v0, Lcom/android/server/am/ProcessRecord;->hidden:Z

    .line 13998
    const-string v2, "bg-services"

    ========================
    Save it.

    Step 6. Go back to the dos/command prompt and type: java -Xmx512M -jar smali.jar classout -o classes.dex (this creates classes.dex)
    ............ ODEX ROMS: Type the same command as above.

    Step 7. Open up services.jar with 7zip or WinRAR (you will see a classes.dex file inside) and drag the newly created classes.dex into the window to refresh services.jar with the new classes.dex
    ............ Mount system as read/write. Open up terminal and type: su, enter, busybox mount -o remount,rw /system
    ............ ODEX ROMS: Do the above steps (though there won't be an existing classes.dex - just add it anyway) and then do the following, edited segment from the services.odex hacking guide:

    Copy the new services.jar file into the root of your phone's sd card.
    Create a new services.odex file from the new services.jar file:
    In terminal, type: cd /sdcard, enter, dexopt-wrapper services.jar services.odex $BOOTCLASSPATH, enter.

    Here's the "special sauce": copy over the "signature" from the current .odex file into the new .odex file. do NOT continue until this command succeeds!
    Hint: the file size of the new services.odex file should not change!
    In terminal, type: busybox dd if=/system/framework/services.odex of=/sdcard/services.odex bs=1 count=20 skip=52 seek=52 conv=notrunc
    Now copy /sdcard/services.odex to /system/framework and overwrite the original (backed up, yes?) services.odex

    Go to Step 9 :D

    Step 8. Copy the new services.jar into your /system/framework folder.
    ............ ODEX ROMS: SKIP this step!

    Step 9. a. In terminal type: cd /system/framework, enter, chown 0.0 services.jar, enter, chmod 644 services.jar, enter
    ................ ODEX ROMS: In terminal do: cd /system/framework, enter, chown 0.0 services.odex, enter, chmod 644 services.odex, enter
    ............ b. OR... you can just put it into a copy of your rom and flash that!

    Step 10. SuperClean & ReStart! (ie. Wipe Dalvik Cache & Reboot)

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

    It was a pain in the ass to find because the settings that get applied actually ignore any setting that is given.
    It's all over-ridden by a calculated routine :p
    So I just turned the tables to have it over-ride settings to be SuperCharged ;)

    Remember that you will still need to run V6 SuperCharger to get your minfrees and grouping fix/adj limits in place.

    Was this useful info? If so...
    Please HIT THANKS and Give a 5 Star Rating!
    548
    [Script] V6 SuperCharger! HTK & BulletProof Launchers! The ONLY Android MEMORY FIXER!

    So here's how it all started... don't worry if you don't understand it... the script does everything!

    So... recently I came across/figured out some pretty neat stuff to make my Milestone run incredibly well.
    Fast, Stable, and Smooth. FSS... heh... my Milestone used to make me say FFS too often... lol

    In Part 2, you will find a way to make your launcher bulletproof!
    What's that mean? No more screen redraws! AT ALL - I'm pretty sure :)

    History Part 1. How To Control Android's Memory Manager via minfree

    This revolves around Android's built-in memory manager/task killer.
    I had been using Auto Memory Manager (AMM) with great results. AutoKiller Memory Optimizer (AKMO) had worked just as well.

    These are NOT taskillers! (And neither is my SuperCharger :D)
    They tweak Android's native memory management system by editing /sys/module/lowmemorykiller/parameters/minfree
    This is a "dynamic" file that gets created on boot.
    There is an in-depth thread that you can read right here on XDA: How to configure Android's *internal* taskkiller

    Android puts each running app into 1 of 6 Out Of Memory (OOM) groups based on their priority.
    FOREGROUND_APP, VISIBLE_APP, SECONDARY_SERVER, HIDDEN_APP, CONTENT_PROVIDER, and EMPTY_APP.

    Additional Info: You can find each app's priority and OOM.
    ....................... In AMM, Press Menu > Running Processes > Group by OOM grouping.
    ....................... Expand each group and see what apps are included and each app's priority level. (Higher numbers get killed first!)
    ....................... If you tap on an app, you can get additional info. Tip: Check and see what's included with android.process.acore ;)

    The default minfree values ("kill thresholds") for each OOM group are, as far as I can tell: 6, 8, 16, 20, 22 and 24 mb. (CyanogenMod 6.1.2)
    This means that: when free memory lowers to 24 mb, EMPTY_APPS get killed; at 22 mb free ram, CONTENT_PROVIDER apps get killed; and so on...

    Now, because the Milestone has only 256 mb of memory, I found these numbers too low, especially the 3rd one.
    Basically, with those settings, you will usually be sitting with only 20 - 25 mb of ram.
    Possibly less. Basically, it's the 3rd number (16) + 5. That's your free memory.
    And my phone just chokes when it has that little ram available. Lag, home screen redrawing, the launcher getting killed.... ugh....

    After extensive fiddling around, I've come to the conclusion that setting the third slot to about 25mb works great.
    No home screen redraws while not being too aggressive on secondary/background apps while having about 30-35mb free all the time :)

    BTW, free ram is not wasted. Android will use that memory to cache the file system and this speeds things up. See this informative post.



    My other key settings were:
    VM Heap Size = 48 mb.
    Home Locked in Memory (not anymore due to my OOM Grouping Fix)
    JIT enabled - You can try it on or off and decide what you like better (JIT uses some extra memory but makes the CPU more efficient)
    Overclocked to [email protected] vsel.

    About VM Heap size. 40 mb should be enough.
    Actually, to prevent your launcher from splitting into 2 virtual machines, you should make it at around 40 mb.
    I'm no expert about it, but that is the experience of others. (I've never tried it at 32 mb or below :p)

    History Part 2. How To Control Your Launcher Redraws by Making It Bulletproof!

    Most of you know about CM's "Lock Home In Memory" setting and how we would still get screen redraws after enabling it.
    My suggested AMM settings above should be enough prevent that. You should hardly ever get screen redraws anymore.
    But some people were still getting them.

    I tried increasing the appropriate priority (for android.process.acore - which includes com.android.launcher) in AMM but the setting wouldn't "stick"
    Android would revert it back to where it was - in the Visible App group with a priority of 1.
    I had seen how foreground apps had a priority of 0 or -12 or -16 and I came up with a permanent solution - "The Bulletproof Launcher"

    Here's how you can have a Bulletproof Launcher!

    The line "ro.HOME_APP_ADJ=1" in /data/local.prop also keeps home in memory - it has the same effect as CM's "Lock Home In Memory".
    So in light of what I was seeing in AMM, I have changed it to 0 so it now reads:
    ro.HOME_APP_ADJ=0
    (blank line)

    Note: If there isn't a blank line at the end, the ro.HOME_APP_ADJ entry gets deleted.

    If you do this and reboot, AMM may still show that android.process.acore (or whereever your launcher is) with a priority of 1
    If that's the case, disabled CM's setting to lock home in memory.
    Now, if you go back to AMM, you should see that android.process.acore is now a foreground app with a priority of 0... BOOYA!

    Notes: Obviously, CM's "Lock Home In Memory" overrides the setting in local.prop.
    .......... CM will set the priority back to 1 after local.prop gives a priority of 0.
    .......... That's why CM's setting has to be disabled - so that the local.prop setting will "stick"
    .......... Gaming Tip - You can use CM's lock home in memory as a "Safety Lock" - to toggle your launcher from Bulletproof (0) to Killable (1)
    ............................. If having problems with a game, put the "Safety Lock" on so the launcher is "killable" so android can free up some extra ram.

    Note that BulletProofing is NO LONGER RECOMMENDED! The Hard To Kill Launcher is the PERFECT SOLUTION!

    History Part 3. Blah Blah Blah...

    Interesting Notes: I had installed the Telus Froyo Update yesterday (03/25/11) and still have it installed.
    .......................... Only now did I think to look at the minfree values :p
    .......................... 8, 12, 24, 28, 32, 32 <--- Telus Froyo. I'm a little shocked by the 3rd slot, 24mb?! :eek:
    .......................... 6, 8, 24, 26, 28, 30 <----- See, I'm not crazy! Telus Froyo values are very similar to my Balanced Settings :cool:
    .......................... In comparison, my Balanced script keeps your foreground apps alive longer, same free ram & more friendly to background apps!
    .......................... For completeness:
    .......................... 6, 8, 16, 20, 22, 24 <---- CM6 (Froyo)
    .......................... 6, 8, 12, 16, 24, 32 <---- CM7 (Gingerbread)
    .......................... 8, 12, 16, 24, 28, 32 <--- Google's Gingbread values, according to this.

    Moved from OP (old Change Log)

    UPDATED July 21, 2011:
    - Update 8
    Improved code
    Tweaked Current Status functionality. It will tell you if your current and prior minfrees match but if you apply a setting, it won't update the "prior minfrees" with the values you just installed. It will update the prior minfrees the next time you run the script.

    UPDATED July 18, 2011: - Update 7
    Tweaked Status Checker. Update 6 sometimes gave wrong launcher status :p

    UPDATED July 16, 2011: - Update 6
    Added Second MegaRAM device setting.
    Added installation to system option - for easy use with Terminal Emulator!
    Added UnSuperCharger verification
    Improved status checker. It can sometimes determine if home is locked in memory! If not, it asks you if it is.
    Saves SuperCharger settings! - They are displayed on the main menu if they exist.
    Saves Cust-OOM settings! - Cust-OOM settings get added to the menu!
    Smart Cust-OOMizer - Just try it :)
    Improved the code some more. It's smarter than ever :)
    Improved messages to user. Clearer instructions and errors are given!
    Final attempt to get this to load on boot. Custom ROMs will now get the /data/userinit.sh and /data/99SuperCharger.sh files.
    Easily cook into your rom! Just change the variable (rcpath=) on line 116 to the path of your *rc file!
    1224 lines of code! :eek: :cool:

    UPDATED June 29, 2011: - Update 5
    Removed 2 minute delay from userinit.sh. Sorry, I didn't know that it would pause the boot process on some phones/roms

    UPDATED June 26, 2011: - Update 4
    Fixed issue with error check - commented it out as it would stop the script dead on some roms :p
    Improved Status Checker some more
    Improved the code. The script is much smarter, cleaner and efficient (no more temp files)
    1001 lines of code!

    UPDATED June 25, 2011: - Update 3b
    Pulled earlier Update 3 - fixed minor noticeable errors and one HUGE one that went unnoticed...

    UPDATED June 25, 2011: - Update 3 -PULLED
    Added error check that exits script on any error
    Tweaked OOM groupings/priorities (Froyo is the same as always, Gingerbread now takes into account Perceptible App)
    Improved Status Checker
    ReReFixed!? userinit.sh now used as a launcher for 99SuperCharger - with a 2 minute delay! (This boot script fix HAS to work :p)
    Fixed sysctl error on some phone configurations

    UPDATED June 20, 2011: - Update 2
    Added User Selectable Scrolling Speed!
    Fixed a couple of weird issues that some people had in yesterday's update :p
    ReFixed? Still trying to get the 99SuperCharger boot script to load automatically for everybody... grrrrr...

    UPDATED June 19, 2011: - Update 1
    Added MegaMemory Device setting!
    Fixed formatting for Script Manager update (40 columns)
    Fixed (I hope) boot script not booting on many ROMs
    Fixed long press back button kill (wasn't working)
    Modified OOM groupings/priorities: Nothing breaks... EVER!
    Improved the help html files
    Was this useful info? If so...

    Please HIT THANKS and Give a 5 Star Rating!
    416
    And so here it is...

    The latest n greatest V6 SuperCharger script so far...

    BD-63457!! (Fixed)

    attachment.php
    attachment.php


    Posted image with white background in case you can't see the clear background one :p

    Change Dog since BDRC2...

    Code:
    fixed disappearing apps in zipalign/fixalign scripts (and no more problematic/skipped apps)
    fixed frandom
    fixed crosslink error in 99SC.sh
    fixed bug when configuring boot options from within zepalign, fixfc and fixalign scripts
    fixed bug in sdcard calculation
    added frandom check
    added 6i9 ass easter egg
    added vm.vfs_cache_pressure=10
    removed pm.sleep_mode
    moved config options in boot scripts to the end (after script runs)
    /init.d/92vac opens bootlog if no sqlite3 binary
    /init.d/93zepalign and /init.d/95fixalign opens bootlog if no zipalign binary
    ask before bp launcher
    v6 does not run if running from int.d (duh)
    tweaked FOM output/stats/user info
    tweaked logic when resupercharging re. getting previous options/regenerating
    tweaked launcher function (updated whenever you return to menu)
    tweaked ram function
    enhanced user infos and help file...
    ...example: Notes about init.d scripts making BootLogs
    tweaked lots of code to be more efficient...
    ...example: No more `cat /file/name | awk or grep` (just awk or grep a file directly... duh...)
    Hell... tons of code tweaking anyway lol


    Quick Fix...
    Code:
    Fixed Fixalign and Fix Emissions Bugs
    Couple of other smaller bugs

    Click Thanks...
    the Dog won't bite... hard (since it's Die Hard... nyuk nyuk...)
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone