Introducing XDA:DevCon – A Conference For Developers By Developers
XDA Developers Android and Mobile Development Forum
Forgot your password?
 
Post Reply+
Tip us?
 
Rodderik
Old
(Last edited by Rodderik; 8th November 2011 at 04:45 PM.)
#1  
Rodderik's Avatar
Recognized Developer - OP
Thanks Meter 1297
Posts: 1,296
Join Date: Sep 2010

 
DONATE TO ME
Default [MOD]Custom Boot Logo (not the boot animation)

I AM NOT RESPONSIBLE FOR ANY THING THAT HAPPENS TO YOUR HARDWARE! FLASH AT YOUR OWN RISK!

Objective: Change Samsung Boot Logo


Proof of Concept: http://www.youtube.com/watch?v=4rGRZgry8lk

Tools Needed:
Samsung Epic running DK28 ***MUST BE ROOTED*** (See Question #5 below for non rooted devices)
Heimdall 1.1.1 (I'm not going to get into how to install the drivers...read the README) Download HERE
Modified param.lfs HERE
ADB or terminal emulator
480x800 jpg 64KB or less in size (use the above image as a template if you need to) or use the skull logo from the video HERE UPDATE: blademonkey posted some more logos that should work here

Steps:
1. Unplug and power off your phone and put it into download mode by holding '1' on the keyboard while powering on.
2. Open Heimdall and select the modified param.lfs (make sure no other boxes are checked besides the param.lfs box)
3. Hit start and let the phone reboot. (I didn't but if you get a garbled screen on boot just ignore it)
4. After the phone boots copy the new jpg file to the sdcard via 'adb push newlogo.jpg /sdcard/' or mounting the sdcard on your computer.
5. open an 'adb shell' or your favorite terminal emulator and issue the following commands and replace newlogo.jpg with your file name:
Code:
$ su
# cp /sdcard/newlogo.jpg /mnt/.lfs/logo.jpg
6. Reboot your phone the normal way or just type 'reboot' and look for your new logo to show up!

Q&A:
1. Why 64KB or less for the jpg? Well the original logo.jpg is 64KB and with replacing files on flash memory it is a good idea to stick to that or smaller. I have tested with jpg files ranging from 11KB-58KB. If any one feels daring and wants to push a bigger jpg then please post your results. In theory, the partition is 5120KB which would leave us with about 3800KB free on that partition. But I would still recommend sticking to 64KB or less.

2. Why Heimdall and not odin? Whenever I tried to flash with Odin it soft bricked my phone every time. Returning to download mode and using Heimdall to flash the param.lfs file worked every time for me (and unbricked my phone). I used Odin 1.3 with and without the victory .pit and I don't know if it was my .tar or what but it never goes through. If any one wants to figure out why it doesn't work in Odin or figures out how to make it work then please post in this thread and I'll update the OP.

3. Why does the Samsung logo still show up after my image? The logo is a two part deal. The first part is contained in the param.lfs file that we are dealing with here. The second part is somewhere in the kernel. If some one knowledgeable wants to try and tackle the kernel I would be very interested to know how. It may not be possible until we get the source code.

4. Can I do this with ClockworkMod? I attempted to make a zip to flash the param.lfs with redbend_ua doing a redbend_ua restore does not flash correctly. In fact after I flashed with CWM the phone does not even mount /dev/block/stl6 (seen as bml6 by CWM) anymore. If any one has any ideas or can figure this out please let me know. This would allow the ROM developers another way to include a new logo in their ROM.

5. How can I replace the logo on my NON-ROOTED DK28 phone? To do this you will need a dump of the param.lfs from some one else's phone that has already followed the above steps. To dump an existing param.lfs in an adb shell or terminal and 'dd if=/dev/block/stl6 of=/sdcard/param.lfs' Then you can flash the modified param.lfs with Heimdall and ignore the rest of the steps above.

How it Works: (If you are curious)
The boot logo is stored /dev/block/stl6 which is mounted in /mnt/.lfs/ on the file system. By typing 'mount' in a terminal you can see it is mounted as a j4fs file system. From what I understand in my research is that j4fs is a closed source type of file system and is not well documented. Also you might notice it is mounted 'rw' but this is only partially true. You CAN create a NEW file in /mnt/.lfs/ but you can NOT delete or modify an existing file in that partition. So how do we get replace that logo.jpg to our custom image? We don't replace it. Instead I used a hex editor on the DK28 stock param.lfs file and changed every instance of '6C 6F 67 6F 2E 6A 70 67' to '6C 30 67 30 2E 6A 70 67' What this did is change the logo.jpg file name to l0g0.jpg. This allows us to flash that modified param.lfs and put a new logo.jpg on that partition. This same method could be used to replace the other files you can see in the /mnt/.lfs/ folder. Ideally I would have liked to delete the original jpg file all together but after many many different attempts, I couldn't find a way to do so. I'm also a noob when it comes to hex editing (this was my first time) so I don't posses the knowledge to do it that way nor do we know enough about the j4fs to make it happen.

References & Credits:
I would like to thank all of the people who contributed to this thread:
http://forum.xda-developers.com/showthread.php?t=849789

Thanks to connexion2005 for this video and files that I used for reference:
http://forum.xda-developers.com/show...php?p=11039455

Thanks to z4ziggy for his research on diff forums and his site here:
http://z4ziggy.wordpress.com/page/2/

If you have any questions, concerns, bitches, or complaints please leave a post in this thread. Thanks.
Devices: EVO 4G LTE (pre-ordered), Epic 4g, Sprint 7" Galaxy Tab, HP TouchPad (CM9), Nook Color (CM7), Transform, Intercept

Epic 4G Kernel: Genocide EC05 Kernel v2.0|1.4GhzOC|RomManager|CustomUV|DUALBOOT
Galaxy Tab: [SPRINT][CDMA]Samsung Galaxy Tab (SPH-P100) Mega Development Starter Thread

http://devphone.org
The Following 9 Users Say Thank You to Rodderik For This Useful Post: [ Click to Expand ]
 
insanity213
Old
#2  
Senior Member
Thanks Meter 135
Posts: 396
Join Date: Oct 2010
You rock! Keep up the good work!
 
S0ckM0nk3y
Old
#3  
S0ckM0nk3y's Avatar
Recognized Developer
Thanks Meter 327
Posts: 616
Join Date: Nov 2010
Location: Michigan

 
DONATE TO ME
I love the fact that everytime you post something Rodd you have phenomenal directions on how to do it. Great to see that you are trying to educate people on how to do stuff that they normally wouldn't even think about doing. Keep up the good work.
Nokia Lumia 920
HTC One X AT&T
 
MeetFace
Old
#4  
MeetFace's Avatar
Senior Member
Thanks Meter 311
Posts: 1,362
Join Date: Dec 2010
Sweet action...thanks for explaining the workings, helps to know what's going on so we can all learn as we go
Devices:
GINORMOUS Samsung Note II - WHOMP 2.9
HP Touchpad - Schizoid CM10/AOKP/PA
[deceased]Samsung Epic 4G - CM10 Nightlies

Happy Wife, happy LIFE

 
makipsee
Old
#5  
makipsee's Avatar
Senior Member
Thanks Meter 27
Posts: 295
Join Date: Feb 2010
Location: central islip, ny
thanks man worked like a charm!!!

Samsung GS3 running Odexed Blue By Team VeNuM and strongsteve

-past phones-
Sanyo MM-9000
Samsung Rant M540 Red
LG Rumor Black
Samsung Moment
Samsung Epic
Samsung Epic 4G
 
Dante of the Inferno
Old
#6  
Senior Member
Thanks Meter 20
Posts: 148
Join Date: Sep 2010
Why can't you just rename a jpg with the proper dimensions and size the same as the Samsung image and replace the original image using Root Explorer? We already know the location, size, and dimensions of the image.
 
Rodderik
Old
#7  
Rodderik's Avatar
Recognized Developer - OP
Thanks Meter 1297
Posts: 1,296
Join Date: Sep 2010

 
DONATE TO ME
Quote:
Originally Posted by Dante of the Inferno View Post
Why can't you just rename a jpg with the proper dimensions and size the same as the Samsung image and replace the original image using Root Explorer? We already know the location, size, and dimensions of the image.
Read 'How it works' in the OP. With j4fs partitions you can only create a NEW file. You can not modify, rename, or delete an existing file. And yes the method you are suggesting was the first thing I tried.
Devices: EVO 4G LTE (pre-ordered), Epic 4g, Sprint 7" Galaxy Tab, HP TouchPad (CM9), Nook Color (CM7), Transform, Intercept

Epic 4G Kernel: Genocide EC05 Kernel v2.0|1.4GhzOC|RomManager|CustomUV|DUALBOOT
Galaxy Tab: [SPRINT][CDMA]Samsung Galaxy Tab (SPH-P100) Mega Development Starter Thread

http://devphone.org
 
asj2583
Old
#8  
asj2583's Avatar
Senior Member
Thanks Meter 35
Posts: 444
Join Date: Jul 2010
Location: San Antonio, Texas

 
DONATE TO ME
Question? Will this be like the evo where if you flash a new rom it will stay or will you have to refash every time a new rom is flashed?
 
Rodderik
Old
#9  
Rodderik's Avatar
Recognized Developer - OP
Thanks Meter 1297
Posts: 1,296
Join Date: Sep 2010

 
DONATE TO ME
Quote:
Originally Posted by asj2583 View Post
Question? Will this be like the evo where if you flash a new rom it will stay or will you have to refash every time a new rom is flashed?
it will stay until it is overwritten by odin or heimdall so it will stay through rom flashes
Devices: EVO 4G LTE (pre-ordered), Epic 4g, Sprint 7" Galaxy Tab, HP TouchPad (CM9), Nook Color (CM7), Transform, Intercept

Epic 4G Kernel: Genocide EC05 Kernel v2.0|1.4GhzOC|RomManager|CustomUV|DUALBOOT
Galaxy Tab: [SPRINT][CDMA]Samsung Galaxy Tab (SPH-P100) Mega Development Starter Thread

http://devphone.org
The Following User Says Thank You to Rodderik For This Useful Post: [ Click to Expand ]
 
asj2583
Old
#10  
asj2583's Avatar
Senior Member
Thanks Meter 35
Posts: 444
Join Date: Jul 2010
Location: San Antonio, Texas

 
DONATE TO ME
Quote:
Originally Posted by Rodderik View Post
it will stay until it is overwritten by odin or heimdall so it will stay through rom flashes
Do you know of any custom boot/splash screens that are available to download or can the evo's be used?

 
Post Reply+
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Go to top of page...