• Login:

Welcome to the Xoom Forum - Motorola Xoom Forum.

Register ButtonIf this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed.

[Tutorial] Changing the XOOM Splash Screen

This is a discussion on [Tutorial] Changing the XOOM Splash Screen within the Motorola Xoom Development forums, part of the Motorola Xoom Hacks category; I have searched the web and many forums regarding this issue and found many many discussions on how to use utilities to do this and ...

Results 1 to 9 of 9
Like Tree3Likes
  • 1 Post By tarsk
  • 2 Post By tarsk

Thread: [Tutorial] Changing the XOOM Splash Screen

  1. #1
    Xoom Lurker
    Member #
    27858
    Join Date
    Jan 2013
    Location
    Quadrent 7, Area 51, Earth
    Posts
    6
    Liked
    3 times

    [Tutorial] Changing the XOOM Splash Screen

    I have searched the web and many forums regarding this issue and found many many discussions on how to use utilities to do this and that to the Motorola XOOM Splash Screen. Most of which involved cropping the image to 256x320, but none detailed why or exactly what the steps were. They all just wanted you to get this utility or that. This seemed a bit odd on 2 levels. First, no one ever seems to what to explain the process or the whys and wherefores, and second with a 1280x800 screen, having such a small splash screen just seemed odd. I thought after all this time, maybe someone should take the mystery out of the splash screen and eliminate the misunderstanding that the splash has to be 256x320.


    So starting with the utility in :

    [DEV] Splash Screen Logo Maker Scripts - Windows, Linux, and Market App - xda-developers


    and found I was randomly able to change my splash screen. I say randomly as it did not always seem to succeed, even though it appeared it had. As there was no feed back to indicate success or failure, one must presume it worked. So I did a bit of digging on how it worked and found that the image is an RGBA image with a depth of 8 for the XOOM. Additionally the image is simple stored on the partition pointed to by :


    /dev/block/platform/sdhci-tegra.3/by-name/logo


    This is simply a link to /dev/block/mmcblkXp4 (where the 'X' is 0 or 1 depending on if and when the external SD card was mounted). I therefore INSIST that the long path to the logo name be used to reference this partition as it will always point to the proper partition as mounted.


    Another note -- sdhci-tegra.3 is the internal SD card while sdhci-tegra.2 is the external SD card.


    Also, I found that the link above and the utility are only partly accurate. The utility requires you to crop an image to 256x320 before applying it the splash. This is actually not accurate. You can use an image up to 1280x800. The full size of the XOOM sxcreen. As long as you know the secret, and the BIN file isn't over 4M (4,194,304 bytes), which I am going to show you. For some reason I can find a lot of information on special tools to do this, but no one seems to want to just give away the format details. If you're like me, tools are nice, but you like to know what they are doing.


    The best tool I found for converting an image to the RGBA format needed is ImageMagicK. If you used the utility I mentioned before, then you already have it installed. I think it's best because of the many features and simplicity. Plus the price is right. To modify the splash as I describe or use the tools I have attached below, you need to have ImageMagicK installed. With it you can do a convert of any image to the proper RGBA format by using the following command:


    convert -size <W>x<H> -depth 8 <FILE> <RGBA>


    Where <W> is the width of the image. Up to 1280.
    <H> is the image height. Up to 800.
    <FILE> is the image file (jpg, png, tiff, etc)
    <RGBA> the name of the output rgba file, MUST have rgba as the file extension


    This will create the RGBA file of the image needed to create the BIN file. This is where the utility in the other post fails out. The RGBA file must be converted to a "BIN" file. Which is basically nothing but the RGBA file with 20 extra bytes at the front. These bytes are:


    ID - "SOL:"
    xOffset - Offset from the left side of the screen (Being in landscape mode), up to 1280
    yOffset - Offset from the top of the screen, up to 800
    Width - Image width
    Height - Image height


    All values are in big endian format. Meaning that the value for 256 would be x'00000100' as opposed to the PC storage mode of little endian which would produce x'00010000'. I am including a windows program as an attachment that will make the BIN file. It is a command line program, and if you run it with no options, you get :


    USAGE: MakeBIN.exe <input> <output> <width> <height>


    Where -- <input> is the rgba file to be converted to bin
    <output> is the name of the bin file to create


    Note that for flashing to XOOM logo, the output BIN file
    cannot be more than 4 meg in size.


    If the width and height of the image are not specified to the MakeBIN utility, it defaults to 256x320. Additionally, the offsets are dynamically calculated to center image on the XOOM.


    With this header in the front of the image, you are ready to "flash" the new splash screen. All you have to do for this is use ADB. First push the new file over to the XOOM using something like:


    adb push mysplash.bin /data/local/.tmp


    Once the file is there, you flash it. Again turning to ADB:


    adb shell


    This will put you at the command line on the XOOM. From there perform the following:


    cd /data/local/tmp
    dd if=mysplash.bin of=/dev/block/platform/sdhci-tegra.3/by-name/logo
    exit


    When you return to the command line, you are ready to go. Just reboot the XOOM your preferred way and enjoy your new splash screen. I like to do :


    adb reboot


    I hope this information has been helpful to others looking to make a bigger splash with the XOOM.


    Oh. Two other things to keep in mind. The default background is black. So unless you're going full screen, you want to be sure you're using a black background. Or the second thing comes in handy - Transparency works. As the image is an RGBA format image, the attribute information for the pixel is supplied allowing transparency.


    Now. I usually like to back up things before I do changes like this. If you do as well, simply perform the following prior to writing the above image out. This will create a 4M copy of the splash partition. Not all of the partition contains the existing image, but it doesn't hurt to have it all.


    adb shell


    cd /data/local/tmp
    dd if=/dev/block/platform/sdhci-tegra.3/by-name/logo of=backup_splash.bin
    exit


    adb pull /data/local/tmp/backup_splash.bin


    You can always reimage it to the partition by following the steps above.


    I have attached a Apple image I used as a test. As it is 1280x800, the full screen was presented with my image. It's really an awesome site to see your full screen splash for the first time.


    Further, I decided to make things easy. I developed a simple batch script for the Windows command like that will perform all the steps addressed above. It first verifies that the tools it needs are available, the creates the image and will flash it. Each sequence of steps it reported to the command window and you are prompted to perform each block. A "N" or empty response to the continuation questions causes the script to exit. So you could generate the BIN file without flashing it.


    This is a very basic script. I could have developed a Windows application, and hidden all these steps so only I knew how to do it. Or even developed a XOOM app that would do it so you'd never know what I was doing. But I think the best way for others to learn about their systems is to know where things are and how they are used.


    With that in mind, I have included the batch file in the zip.


    Lastly, some information about partition sizes. I mentioned above that the partition size for the XOOM logo partition is 4M. That is to say it is 4,194,304 bytes in length. Why is this important? Because it will hold a full size 1280x800 image. When converted, a 1280x800 image using a depth of 8-bits is calculated as follows:


    Size = Width x Height x 4


    Why '4'? Because this is an RGBA file. The type says it all. As there is a depth of 8 bits, each color representation is 1 byte in length. 1 for Red, 1 for Green, 1 for Blue, and 1 for the attribute. That makes 4 bytes per pixel on the screen.


    We then have to add the 20 byte header that tells the loader where to place the image and how big it is.


    In total, the most a full screen splash will EVER be is : 4,096,020 bytes


    This leaves 98,284 bytes as a buffer in case someone makes a boo boo.


    Following the steps and using the tools I have documented in this thread, you will never make a boo boo and you will have lots of fun putting any image you like as your splash screen. (I'm using a photo of my family).


    Thanks for taking the time to read my ramblings.
    Attached Images Attached Images
    Attached Files Attached Files
    Astrix likes this.

  2. # ADS
    Ads


  3. #2
    Administrator

    Member #
    2101
    Join Date
    Mar 2011
    Location
    Wichita Falls
    Posts
    35,845
    Liked
    2223 times
    Twitter
    mgrant76308
    Welcome to the forum. Glad you decided to join us. Are you the developer of this process?

    LG V60 Dual Screen
    Note 10 Plus
    OnePlus 7 Pro


  4. #3
    Xoom Lurker
    Member #
    27858
    Join Date
    Jan 2013
    Location
    Quadrent 7, Area 51, Earth
    Posts
    6
    Liked
    3 times
    Yes I am. It is based on the other works I found through out the web, but no one totally documented the formats. Additionally everything on the web indicated that the splash image must be 256x320, when that's just not the case. The steps I developed and the program / script I wrote allow any image up to 1280x800 to be used.

    I hope this to be useful to others. If nothing else, to explain what the splash screen is, where it is, and how to properly change it.
    ggrant3876 and Astrix like this.

  5. #4
    Xoom Lurker
    Member #
    22425
    Join Date
    Apr 2012
    Location
    Dundee, Scotland
    Posts
    25
    Liked
    3 times
    Twitter
    dthorntonsnr
    TeamEOS have a Xoom boot splash app, very easy to use.

  6. #5
    Super Moderator

    Member #
    11318
    Join Date
    Aug 2011
    Location
    Singapore
    Posts
    7,340
    Liked
    729 times
    Twitter
    It's a bird

    Re: [Tutorial] Changing the XOOM Splash Screen

    Quote Originally Posted by tarsk View Post
    Yes I am. It is based on the other works I found through out the web, but no one totally documented the formats.
    Welcome to the forum
    Great to have you with us and thanks for the tutorial

    Additionally everything on the web indicated that the splash image must be 256x320, when that's just not the case. The steps I developed and the program / script I wrote allow any image up to 1280x800 to be used.
    This will be awesome :thumbup:

  7. #6
    Xoom Lurker
    Member #
    27858
    Join Date
    Jan 2013
    Location
    Quadrent 7, Area 51, Earth
    Posts
    6
    Liked
    3 times
    Quote Originally Posted by taysider View Post
    TeamEOS have a Xoom boot splash app, very easy to use.
    It's because of their utility that I decided to write this. They have no clear information about what it does as if it's a big secret. I do not fault them as the work they do is great. But a bit of background is helpful.also their utility crops the image and that isn't needed as a fell screen image works just fine.

    I would like to thank the great work that TeamEOS has done on their tool and for having driven me to do more investigation on my own.

    Just a minor note. I reference thier threat at the top of my discussion.

  8. #7
    Super Moderator

    Member #
    4076
    Join Date
    Apr 2011
    Location
    Savannah area of Coastal Georgia, USA
    Posts
    2,415
    Liked
    283 times
    Twitter
    fish1552

    Re: [Tutorial] Changing the XOOM Splash Screen

    Dang. The parts about the little endian and extra data sounds like the old method we used for the OGDroid sbf files for the logos.

    Sent from my Nexus 7 using Tapatalk HD
    What is rooting: the advantages/disadvantages | Set-up ADB | Need Help? Post Here | ADB Commands for Newcomers | Boot Animation Requests
    Remember to post the solution that worked to solve your problem so you can help others with their problems later.








  9. #8
    Xoom Lurker
    Member #
    27858
    Join Date
    Jan 2013
    Location
    Quadrent 7, Area 51, Earth
    Posts
    6
    Liked
    3 times
    Quote Originally Posted by fish1552don't 883
    Dang. The parts about the little endian and extra data sounds like the old method we used for the OGDroid sbf files for the logos.

    Sent from my Nexus 7 using Tapatalk HD
    Probably is. I don't see Motorola coming up with anything original.

  10. #9
    Xoom Informant
    Member #
    213
    Join Date
    Feb 2011
    Posts
    33
    Liked
    2 times
    I tried this method, with no luck, on my Xoom after running BigPart and installing CM 11 (unofficial) 4.4.2.

    Am I doing something wrong? If it doesn't work on Kit Kat, is there a new method?


 

Remove Ads

Ads

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Similar Threads

  1. [DEV] Splash Screen Logo Maker for Linux + Windows
    By Bazar6 in forum Motorola Xoom Development
    Replies: 48
    Last Post: 02-01-2013, 02:05 PM
  2. splash screen logos
    By AKCOALROLLER in forum Motorola Xoom Development
    Replies: 1
    Last Post: 12-09-2012, 10:16 PM
  3. Changing lock screen app
    By you2nosey in forum Motorola Xoom General Discussion
    Replies: 12
    Last Post: 01-20-2012, 03:21 PM
  4. How keep screen from changing?
    By jgraff1 in forum Motorola Xoom General Discussion
    Replies: 3
    Last Post: 10-24-2011, 10:12 PM
  5. Changing my home screen?
    By Caelm in forum Motorola Xoom Help
    Replies: 4
    Last Post: 08-10-2011, 10:44 AM

Search tags for this page

adb pull splash
,
boot screen location motorola xoom
,
change m logo motorola xoom
,
earth xoom tutorial
,
goomanager
,

motorola xoom custom splash

,
motorolla splash screen
,
replace logo.bin in motorola xoom 2
,
xoom flashing red in background
,
xoom splash image
Click on a term to search for related topics.