[Nexus 6 Themes and Apps] makers_mark:
This is a hybrid batch and C program that I wrote to decode and encode the MotoLogo image container. It will allow you to edit or replace any of the 23 images in your logo partition. Click here to see all of the images. This will also work with any Motorola device utilizing this current format.

The logo partition has nothing to do with your boot animation. Your boot animation actually comes right after the static image, that in this case says "Google" in catull font; and if you have an unlocked bootloader, additionally there will be a little lock that appears to be open (aka "dummy locked") in the bottom center of the screen. Your boot animation follows after this screen goes away, your boot animation is typically animated or dynamic. The static screen with "Google" is known as your splash screen to some, or boot screen to others. This tool allows you to change the static image (splash screen) and not your boot animation.​

Thanks to GrayBoltWolf for making this video!!

[YOUTUBE]O7bra0OnZtU[/YOUTUBE]​

Download the "MotoLogo Injector v.97b" zip file at the bottom of this post.

Extract the zip file to a new folder.

To use just drag any file that you think might have a MotoLogo container in it onto the batch file "MotoLogo_Injectorv97b.bat" (I have included your Nexus 6 71.05 bootloader image in the zip, so just drag it onto the batch script)

The program will then find the Container in the file, extract it and validate every byte in it, and output it in the "Projects" folder.

A newly created folder will pop up that contains the raw image files, PNG image files, some identification files, and your extracted "logo.bin"

There will also be two new batch files in the folder that will make it easy to close the program, edit the images, then just click one of the batch files to get back into the program to re-encode the images. The difference in the two batch files is that one of them will re-encode the logo bin in a "Strict" way, and the other way is "Non-Strict"

Strict goes in the exact same order that the images were encoded in the first place.

Strict will fail if there are any more or any less images.

Strict will fail if any of the image names are changed.

Strict will check the resolution.

Strict will not let you have a Jpg, Bmp, ....any other format mixed in with the Pngs. (If you prefer to work with another image format, you can change that in the settings but you still can't mix them up inside of the "Images" folder; they should all be of the same type.

If an images resolution doesn't match the original images, it will warn you and give you options to resize or disregard the size difference.

Non-Strict simply goes through every file in the "Images" folder in alphanumerical order and makes it a raw file, encodes it, and puts the MotoLogo container together.

Non-Strict will take all kinds of differently formatted images.

The only reason I can see someone wanting to use Non-Strict is to delete images from a MotoLogo container.

In your "Images" folder is where you either edit or replace the PNG images. You can make them bigger, but I don't know what implications this may have as I do not have a Nexus 6. You must keep the names the exact same as the images, it is okay to change the image or even replace it (that's the whole point) but you have to keep the names the same for Strict mode, which I encourage you to use.

When you are finished editing your images:

You can open up the Original batch program if you haven't used it anymore (it remembers the last file loaded that had a successful validated container in it, so you don't have to drag and drop everytime). And then hit 1 "Rebuild Images Directory (Strict-In Order_Resolution Checks)"

Or you can click on the "Make MotoLogo Bin From Images Folder.bat" to go directly there.

After the program has rebuilt it, it will re validate the container, and then reconvert the container into view-able Pngs again. A new folder will automatically open. This contains your modified container called "build.bin". You can flash it from there.

This is a beta version, because I do not have a device to test on. So, the things I would normally know, i don't know. For instance:

I don't know if you can change all 23 images in the Nexus 6 bootloader, I assume you can, as they are all stored in the Logo partition. If you can, you can theme your bootloader ;)

I also don't know if you can make certain graphics bigger that may overlap another, like the "Start" button interfering with the "arrows" for the rocker buttons.

You need to stay under the size of your "Logo" partition, I'm pretty sure fastboot just errors out if you try to write more data than a partition can hold. But I would like to know how big the partition mmcblk0p30 is. You could find out by executing the following, and posting the size of the C:\LogoPartition.raw file

adb shell
su
dd if=/dev/block/mmcblk0p30 of=/mnt/sdcard/LogoPartition.raw
exit
exit
adb pull /sdcard/LogoPartition.raw "C:\LogoPartition.raw"
adb kill-server

You may not need the 'mnt' before the "/sdcard/LogoPartition.raw" in the DD command. Please do not try this if you are not familiar with the command, because you could mess some stuff up if you accidentally reverse the "if" and "of"
​

Thanks to [MENTION=3438131]grim489[/MENTION] for testing changing the logo_boot "Google" image!

I am not responsible for any damage done to your device!! Source is in Posts 2 & 3!