yashsingh1/xdaforums huggingface dataset:
[G1 Android Development] Daneshm90:
Hey, i would advice you to wait till 1.7 sources are released. I had released an earlier test recovery image that took my code from 1.6 and placed it inside a 1.7 recovery image. People were having a LOT of problems hence ill just wait. Remember its not just the color stuff, the menu you see with all the options, by using my color mod made for 1.6 on a 1.7 recovery image, you are messing up the options as well. So sit tight, the sources should be released any moment :)

And yes i will be adding more customization options such as the text you get while flashing a rom "update.zip insalling blah blah" its color.

Hey, do me a favor, upon reviewing your issues, i can advice you to take these steps.

Reboot your computer, download/extract newest version of script. If not using a nexus download amonra's 1.6 recovery image for ur device. If its just background image issues, save your pictures in paint, as photoshop adds layers and they messup unless you flatten them. For testing purposes dont modify the background image, just try changing the colors. Let me know.
[G1 Android Development] :No-Frost::
There it worked!!!! The problem is Photoshop related... I flattened the image but still was keeping some layers, but after make it go through paint it worked... :D

Thanks mate... Oh, and sorry for all the invonvenience...

PS: It works con Amon_Ra 1.70
[G1 Android Development] Daneshm90:
Yes it sorta works on amonra's latest but i wudnt advice it, you'll prolly be missing a few menu items n stuff. Its up 2 u though. But hey glad u got it working, yea photoshop over complicates things sometimes :)
[G1 Android Development] Daneshm90:
Guys did neone get this working with different colors other than black ? let me know cuz nexus users cant mod their colors and in the code i see the same issue with dream users. Magic users should be fine.
[G1 Android Development] amazinglarry311:
Yeah at first i was like "what is he talking about it works fine"

Closer examination shows that the menu items for backuptool.sh are missing, the APPS2SD script is not operational (intentional in 1.7.0 and removed altogether) Nandroid+EXT backup DOES work to my surprise, so at least the recovery is mounting the ext partition correctly in cm 5.0.7

Nandroid backup is still BDS instead of the BCDS that 1.7.0 is supposed to implement.

All menu items that are available except for APPS2SD work and i didn't experience problems with flashing etc.. But i am reverting to 1.6.2 as this is the recovery i use anyway, 1.7.0 is mostly for CM users, accomodating for the SD partition mount location, 1.6.2 works flawlessly with EXT if you know how to do it.

AWESOME SCRIPT. I love being able to customize EVERYTHING and when the "carebear" recoveries were released i was pissed because they were so lame, yet i didnt want the boring green one.

1 question:

The script requires the old recovery.img (the one to be modified) be placed in the old folder, i was operating under the assumption that this was because

the script was decompiling the image, replacing the background, changing color offsets and recompiling. Since you speak of the source for 1.7.0 being required i imagine this is incorrect, is the image being built completely from source with the addition of the modifications? If this is the case, why is the original recovery image needed?

Any idea on the peculiar behavior that causes recovery to load into a really black screen (background transparency seems way too high) highlighted text is in yellow, and regular text in black? this happens with 1.6.2 about 1 out of every 5 recovery boots?
[G1 Android Development] Daneshm90:
Currently as i am adding other options im coming across a few bugs that can be prevented. So ill hold back and do thorough testing before releasing what will probably be the final build cuz honestly theres nothing left to customize :)

What i've done is added code to the amonra's recovery source code that looks into a file for color values. I compile that into the recovery binary which you can find inside ur sbin folder. Now when you put a recovery.img in ur old folder. It takes it apart, depending on colormod/no color mod it places the modified recovery binary inside the sbin directory and then repackages the recovery.img and before recompiling the batch file asks you for the rgb values which it then echoes to the file that that was intended for the recovery to read. Thats it, as for bugs, sit tight i tend to make the next one bug-less :)
[G1 Android Development] amazinglarry311:
Well i eagerly await. This is just great and i want to say thanks. Thanks for the explanation as well.
[G1 Android Development] Daneshm90:
Ok guys, here is the latest one. I need atleast one confirmation that this works for each devices then i will update the main post. I can vouch for 32a users it works very well. Anyway i need confirmation for dream/mytouch from this part of the forum. Let me know.

Download Here
[G1 Android Development] amazinglarry311:
So is 1.7.0 source available yet? it looks like Amon_ra is no longer considering it a test version.

Modifying 1.6.2 now testing your engine, be back to you in a few...
[G1 Android Development] Daneshm90:
Nope, the sources arent available yet. The new version ill put-up today will be based on the one ur trying which is a LOT more stable than previous versions, has the option of changing color of update-script syntax but also it'll have the option of defining where you want the progress bar to be placed on ur screen (height wise).
[G1 Android Development] Daneshm90:
Ok guys, update is out. 2 new features + A lot more stable.
[G1 Android Development] insanedrunk:
I can vouch for a 32B mytouch heres a screenie,

Note 1: For some reason the screen capure made the white on the background really dark, but it doesnt look like that on the phone.

Note 2: Anyone using cyan mod 5.0.7 flash the recovery using fasboot, my recovery became corrupt or deleted when i attempted to flash using the terminal.
[G1 Android Development] Daneshm90:
Well i think thats an issue with cyan's 5.0.7 in general no matter what recovery you are doing. Anyway glad its working.
[G1 Android Development] Jeffro64:
I had sent you a PM, but went ahead and gave this new one a spin and it works great! It will be nice when we can use it for the 1.7.0 recovery too, atleast if running a Cyanogen 5.0.7 ROM.:D
[G1 Android Development] Daneshm90:
Hey bro, sorry ya been busy as well :(

Yea a lot of things have changed :)

I have heard no complaints, so i am porting this to cliq and desire. Let me know guys of other features if there are any you'd like to see.
[G1 Android Development] Jeffro64:
Can you still edit the text colors from console?
[G1 Android Development] Daneshm90:
Oh yea, i have just added onto to previous features. So these are the total features :

Menu text color

Highlited text color

Highlight bar transparency

Divider line transparency

Black overlay transparency

update-script color

progress-bar height
[G1 Android Development] Jeffro64:
This is AWESOME! Nice work man!!:D It seemed like all of those were in it when I played around with it earlier, but maybe one or two weren't i'm not positive. But it has come a long way for sure.
[G1 Android Development] Daneshm90:
Make sure u download latest one. Let me know of issues, all options described should be there :)
[G1 Android Development] Jeffro64:
Did you upload it today? Cause I downloaded the one I have early this afternoon.
[G1 Android Development] Daneshm90:
Nope thats the latest u have....wht options u not seeing ?
[G1 Android Development] Jeffro64:
Yup... Just ran it again and they are all there. Like I said earlier it works great!:D

I really like the Black overlay transparency option... made mine look a lot better.
[G1 Android Development] Daneshm90:
Uploading newest version which will now work with amonra's 1.7 recovery. YAY :)
[G1 Android Development] Daneshm90:
Update Out : Supports Amonra's latest recovery :)
[G1 Android Development] Jeffro64:
SaWeet!!!!:cool:
[G1 Android Development] 1wingangel:
nevermind:):)
[G1 Android Development] amazinglarry311:
still having the same issue from when you started posting the color-mod

the fact that the values are not being HARD coded to the recovery image cause issue.

Almost every other reboot to recovery i am greeted with a dark black screen, all the text is also black and can only bee seen when the trackball is hovered over the corresponding text.

Are you still patching the images and having them obtain the values every time it starts? If so this is a really sloppy implementation, because if you can patch the strings to point toward a file for the values, would it not just be easier to have the color-change mod just hard code the values to the image itself?

Awesome work, but the same bug has persisted over every release.
[G1 Android Development] amazinglarry311:
And i spoke with Amon_ra in IRC a while back, he said he was going to post the source for 1.7.0 dream/sapphire any news on that?
[G1 Android Development] Daneshm90:
Ok, here we go :

Note there is no way to "hard-code" the values into the recovery binary since that would require on-site compiling. I simply store the values in a text file inside the recovery.img and i read the values only ONCE, which is when you first see the recovery menu. Amonra did give me his 1.7 source and if you read a couple posts back or download my latest version, its for amonra 1.7 recovery. As for "everything black except when u highlight" that happens 99% of the time due to images having layers and not being flattened. Best way to ensure your image is not the source of the problem, is to open the image in paint, and resave it as a png. This will ensure that the image is flattened and hence no layers will be present.

Please let me know if you are still having issues and i will look into it. I have heard nothing but positive feedbacks hences i assumed everything works as intended.
[G1 Android Development] cauli:
What about the equivalent using 'on-site' hex editing - ie overwrite the relevant words in the binary?
[G1 Android Development] Daneshm90:
Being a lazy programmer that was one of the first things i tried :rolleyes:

There is no pattern when comparing the hex code of a recovery with blue text vs red text. Try it out urself.
[G1 Android Development] Jeffro64:
I just sat here and rebooted my phone 10 times and the black screen and text never happened. Boots into recovery nice and clean with the png and the text color I used from the start.... No problems here.
[G1 Android Development] Daneshm90:
Same here jeffro, i created this script as much for myself as for the community. I have been using the recovery images it *spits* out now for a couple of weeks and i have zero issues.

amazinglary, try downloading the newest version, download a new copy of amonra's recovery 1.7, dont palce custom images and try changing the colors. If it works you know for a fact its ur images.
[G1 Android Development] Jeffro64:
And we thank you!:cool: Has become one of my favs to use.:D
[G1 Android Development] cauli:
My thinking was compile the binary using a marker value for colour, then search the binary for that marker & note the offset into the binary. I guess a random value would make an ok marker value.

Or, you could compile two binaries, each differing only in colour values, & compare them to find the offsets.

BTW Lazy == Efficient :D
[G1 Android Development] Daneshm90:
K so here is a diff comparing the hex code of 2 recovery binaries i compiled in which the only difference was in one i set menu-color to be 0,0,0 and in another for it to be 255,255,255

This is what diff spit out after i hex dumped the 2 binaries into a text file and compared them :

< 0004da0 2400 e062 4d47 4e48 2000 197d 19be 2100
< 0004db0 2200 23ff f009 ff1e 6829 6833 18c8 00c4
---
> 0004da0 2400 e062 4d47 4e48 20ff 197d 19be 21ff
> 0004db0 22ff 23ff f009 ff1e 6829 6833 18c8 00c4

Let me know if you see any sort of pattern here. Cuz i dont :confused:
[G1 Android Development] cauli:
< 0004da0 2400 e062 4d47 4e48 2000 197d 19be 2100
< 0004db0 2200 23ff f009 ff1e 6829 6833 18c8 00c4
---

> 0004da0 2400 e062 4d47 4e48 20ff 197d 19be 21ff
^^ ^^
> 0004db0 22ff 23ff f009 ff1e 6829 6833 18c8 00c4
^^

Um, am I missing something?
[G1 Android Development] Daneshm90:
My bad, so yes there is a pattern. However it begs the question, why would this be more beneficial than reading the values from a file ?

How do you propose a user be allowed to modify these values without depacking the recovery.img and hex-editing the binary ? This sentence alone will make most ppl turn in the other direction :)

I suppose a program like hexedit could be incorporated with the argument "-replace" but ugh, why lol.
[G1 Android Development] sunzoje:
i'm getting error "missing bitmap icon_error1(code -1) and icon_error2(code -1)" when using colormod. but no errors with no colormod while using the same pngs.
[G1 Android Development] Daneshm90:
do me a favor, make sure its recovery 1.7 ur using and just for test purposes dont place custom pics, just try changing colors. let me know if tht works
[G1 Android Development] sunzoje:
daneshm90, even without custom pics, it's giving the same error. yeap, i'm using amon_ra 1.7 recovery.
[G1 Android Development] cauli:
As you unpack the image already that just leaves the editing as an extra task. I expect there's a way to do that with one command in Linux, but I'm no Gnu/Linux expert. As the repack script already exists & is perl, I guess I'd shove a line or two into that to make the change/s to $kernel before packing it into the new $bootimage (perl being easily up to doing the job in a compact & readable fashion). You could build a text file (using the previous diff/s) with a list of offsets into the kernel & their new values, preferably with sanity checks that the values to be replaced are as expected, then process this within the repack script.

Why do it this way? No great reason. On the downside, whenever the source recovery image changes you need to rebuild the offsets file which being a somewhat heuristic process could introduce error. On the upside though, you haven't added any runtime complexity to the recovery image in order to make any colour changes. It just seems slightly more natural, a matter of personal taste maybe. It really hinges on whether being able to further change colours after the image has been rebuilt & installed is of value to the end user, in which case the existing system wins. On the other hand, if no one relies on that, the above is an alternative approach which keeps the final code smaller, simpler & possibly improves stability of the overall recovery mod process marginally.

For my uses, I can only see myself making colour mods at the same time as changing the background image, hence only during the rebuild process, so in the absence of any other motives, would have a preference for the byte substitution method, as opposed to compiling in support for variable colours.

A six & two threes, maybe. I only started thinking about this cos someone suggested something similar iirc, but I'm too tired to go back to the first page to check. Time for sleep, if I could only remember where I'd left it.
[G1 Android Development] bunu:
Can this be updated to work with the magic recovery image. I'm sure the source is out by now. I saw a link to the source for the magic recovery image on the OP of the magic recovery thread.

I @r3 no0b.
[G1 Android Development] Daneshm90:
Hey can u point me to what pictures you are trying to use ? also as a test try this recovery.img i created, if it works that means that there is a problem on ur end otherwise its something in the script.

Here
[G1 Android Development] Daneshm90:
cauli, i do see your point of view. For now though i think this serves the purpose, if however amonra starts spitting out recoveries like every other week which he wont ;), then that method might be the way to go. For now im going to focus on stabilizing my method further and making it more user-friendly, although ive reached a point where those 2 goals are limited.
[G1 Android Development] sunzoje:
getting the same error with mentioned recovery. i'm trying to use these pics download
[G1 Android Development] Daneshm90:
Can someone else confirm this ? btw im guessing ur using a non rogers dream ?

Btw, just used ur images with a amonra 1.7 32a recovery imge. Works flawlessly. So its not ur image, its something else. I need confirmation cuz right now its an isolated issue.
[G1 Android Development] Jeffro64:
I had suggested being able to change the color earlier in the thread simply because of the reason that if a color is chosen and applied and it just doesn't look right once in recovery it can be changed.

For me it is a good option to have, but at the same time this script has evolved and become alot more easy to use. So it would be simple now to just redo the recovery... but the option is nice to have. Either way this script rocks!:D
[G1 Android Development] sunzoje:
yeap, it's non rogers dream. it's 32b.
[G1 Android Development] Daneshm90:
Hey jeffro what phone do u have and are you having any issues with this script ?
[G1 Android Development] Jeffro64:
I have a 32b... I think you might have upped a newer version than the one I have, what issues are being reported?
[G1 Android Development] Daneshm90:
Hmm well sunzoje is reporting that in the non color mod script the background changes fine but when using the color mod, the very same images dont show up and he is presented with those bitmap errors.
[G1 Android Development] Jeffro64:
Is that using amons 1.7? If so i'll have to go get the final version of it and download your new script. But I'll test it out... I need the new one anyways LOL.
[G1 Android Development] Daneshm90:
Yea hes using 1.7 recovery. Let me know, its working fine on magic and has been for a while on nexus. Dream is the only unconfirmed one :(
[G1 Android Development] Jeffro64:
OK... let me go get 1.7 and i'll report back.:cool:
[G1 Android Development] Jeffro64:
Yup... I get the same error. All of the text and colors I chose show up but no background.

Just to check, the boot.png only needs to be in the place-image-here folder right? That is the way i've always done it and it worked.
[G1 Android Development] Daneshm90:
Yea, ok so its confirmed, let me go take a look at it. Ill get back to u guys, sorry :(
[G1 Android Development] Jeffro64:
No prob... I hadn't got a chance to use the new one yet anyway cause i've been working too much LOL. So this gave me a chance to download it and give it a spin.:D
[G1 Android Development] Daneshm90:
Will u do me a favor ? i found the problem if i upload just the binary and tell u where to place it will u give it a shot ?
[G1 Android Development] Jeffro64:
Sure...up away.:D
[G1 Android Development] Daneshm90:
Here download this and place it in other/recoverychanger/colormod/ then run the script and let me know. Thnx.
[G1 Android Development] Jeffro64:
OK... will do and i'll get back soon as I try it out.

Also... in the how-to it says something about a boot1.png? I've always just used just one (the original) not both... what is the boot1 for and is it just a copy of the original png?
[G1 Android Development] Daneshm90:
Hey, boot1 is the screen ull see when flashing a rom. its different from the main screen u see on the main menu.
[G1 Android Development] Jeffro64:
So just copy the png i've made and name it boot1.png and place in the same folder?

BTW... The new binary worked like a charm!:D
[G1 Android Development] Daneshm90:
Yes sir, an thanks for trying and giving me the awesome news :)

Will update main post as well :)
[G1 Android Development] Jeffro64:
Kewl.. that's what I did.:D Not a problem at all... I help out any way I can.
[G1 Android Development] Daneshm90:
Sorry about that dream users. Update is out, it works perfectly as tested by jeffro on amonra 1.7 recovery.
[G1 Android Development] sunzoje:
daneshm90, text color and background pics works now. but i'm missing console option in the menu.
[G1 Android Development] Jeffro64:
Yup... Sorry I didn't notice that before, but I just looked and no console option in the menu.:o

Also... not sure if it's just how the 1.7.0 recovery was made, but it doesn't show the "[Alt +*] options anymore either. Just FYI incase they are supposed to be there.
[G1 Android Development] Daneshm90:
Lol, i mixed one of my folders up. The fix works its just for 1.6, let me merge to 1.7 and uploading in 2 minutes. I need to get organized :(
[G1 Android Development] Jeffro64:
Gotcha:cool:
[G1 Android Development] Daneshm90:
Updated, and PLEASE tell me this works flawless :)
[G1 Android Development] Jeffro64:
OK... Downloading and testing.
[G1 Android Development] Jeffro64:
Still not getting the console option nor the [alt +*] next to the text on the menu when in recovery.

I thought maybe it was just me booting into the recovery from the script so I went ahead and flashed it to the phone. Still those are missing.

If you look at the text in your two on the OP and then look at the text in my old one herehttp://xdaforums.com/showpost.php?p=6436733&postcount=73 you'll see what i'm talking about if i'm not explaining it right LOL.:D
[G1 Android Development] Daneshm90:
That is strange, i can see the options are clearly there in the files im compiling.

"[Alt+0] Wipe data/factory reset",
"[Alt+1] Wipe cache",
"[Alt+2] Wipe Dalvik-cache",
"[Alt+3] Wipe SD:ext partition",
"[Alt+4] Wipe battery stats",
"[Alt+5] Wipe rotate settings",

Let me build from scratch, ill upload just the binary if any of u are still interested.
[G1 Android Development] Jeffro64:
Yeah... thats how it should look, so you know what I was trying to explain LOL. Only thing missing there is the [Alt+X] Go to Console option.

LMK on the new binary and i'll test it for ya.
[G1 Android Development] Daneshm90:
Hey man can u try this binary, put it in same spot /other/recoverychanger/colormod

Thnx for being a trooper :)
[G1 Android Development] Jeffro64:
That did it! Everything is there and the console works.:D
[G1 Android Development] Daneshm90:
Ok good, can u test ALL conditions :) Yea cuz had a lot of junk in my folders :(

I want to be 100% sure :) See if console actually works as well.
[G1 Android Development] Jeffro64:
OK... I know console comes up and it will go back to recovery just by typing recovery and hitting enter, but I didn't put in any commands. I will check out doing a nandroid backup and flashing a rom and then restoring the nandroid, along with wipes and such.
[G1 Android Development] Daneshm90:
Ok guys thanks to Jeffro for daring to try my stuff :) we have a stable release. Update is linked already.
[G1 Android Development] Jeffro64:
Yup... I can confirm that most if not all is working fine! I did backups, wipes, repairs, flashed and restored backup. All worked and the restore is working just fine.:D
[G1 Android Development] sunzoje:
daneshm90, yeap everything works fine now. thnx for the tool and help. hope to see linux port of this. also, thnx jeffro64, for daring tests.
[G1 Android Development] Jeffro64:
No problem at all.:cool:

Also D, I might have asked this before... this script will do 1.6.2 as well won't it?
[G1 Android Development] Daneshm90:
Em the color mod wont, the noncolor mod will as always work on majority of recoveries. But thats a good point, perhaps i should have an option in there for 1.6/1.7 recovery, but honestly why goto 1.6 ? is 1.7 giving u problems ?
[G1 Android Development] Jeffro64:
No problems... I'm just not sure with the new nand backup stuff in it if it will still work on ROMs that aren't Cyanogen based as far as backing up the ext.
[G1 Android Development] Daneshm90:
Oh k, well im not up to date on those issues, i use a 32a magic so app2sd aint a concern for me, as for nandroid issues i havent had any so far.
[G1 Android Development] Jeffro64:
Oh well no biggie... I still have the one that works with 1.6.2. Amon_RA did say 1.7.0 should work with all roms but I want to test that out before I delete anything LOL.
[G1 Android Development] Daneshm90:
lol. yea 1.7.1 is out for nexus. we,ll see when it comes for dream/sapphire :)
[G1 Android Development] Jeffro64:
(Palm against Forehead) LOL... Just when we thought it was final!:D