Creating Splashboot Images

From Android Wiki

(Difference between revisions)
Jump to: navigation, searcha
m (fhtagn)
(Undo revision 1042 by Try OP9 (Talk))
Line 1: Line 1:
-
fhtagn
+
== Background ==
 +
This page details how to replace the boot image when your phone first boots. If you haven't already done this it is currently the "G1" logo before the android animation which is displayed as the actual android system starts up.
 +
 
 +
===Prerequisites:===
 +
* You MUST have the at least the [[Engineering Bootloader]] or the [[HardSPL]] already installed. These give you [[fastboot]], which is essential for sending new images to the phone while still in the bootloader.
 +
 
 +
==What to start with==
 +
* The image file you want to use, it should be 320x480 pixels. Here it has been called splash.png.
 +
 
 +
==Procedure==
 +
===Step 1 - Prepare the image===
 +
You should convert it to 256 colours (8-bit), remove the alpha channel if it exists and save as a PNG file.
 +
With linux (or cygwin etc.) use the convert tool form the ImageMagick toolkit:
 +
  $ convert -depth 8 splash.png rgb:splash.raw
 +
At this point you must make sure your image is EXACTLY 460800 bytes long, if you've done as you were supposed to everything will be fine and it will be the right size.
 +
Now you need to convert the file into the "565" format which is the raw format used by the G1's framebuffer.
 +
  $ rgb2565 < splash.raw > mysplash.rgb565
 +
Now another check: make sure this time that the file is exactly 307200 bytes! More or less will not fill the slot on the G1 and could spill over into something else bricking it.
 +
The file splash.raw565 is now ready to be sent to your G1.
 +
 
 +
Alternitavely there is a windows GUI which prepares the image entirely for you. It is called [http://forum.xda-developers.com/attachment.php?attachmentid=143640&d=1231220492 CreateG1Splash.zip] and you can currently download it from the xda-developers forum, but there should be a mirror somewhere?
 +
# Extract the contents of the zip file somewhere convenient
 +
# Find that directory in Windows Explorer go into the "create" folder and run "CreateG1Splash.exe"
 +
# Open the splash.png file you wanted and click "convert"
 +
# The file mysplash.rgb565 file should be in the same "create" folder, if not it might be in the same folder as your original image, for simplicity copy it into the "fastboot" folder (the other one that was in the zip)
 +
 
 +
===Step 2 - Sending to the G1===
 +
Now you are ready to send the file to your G1
 +
# Boot into SPL mode (This is why you needed the engineering bootloader). To do this hold 'power' + 'camera' while turning your phone on, you should see the skating androids
 +
# Plug in the USB cable to the phone and your computer. The message in the middle of the screen should be "FASTBOOT" if not just press the trackball or 'back' button. If it doesn't are you sure you are using either of the bootloaders mentioned above?
 +
# You now need to find the fastboot binary on your computer. You will probably have to compile it for linux from the android source and it is in mydroid/out/host/[OS]/bin/fastboot when completed.
 +
You can check the G1 is showing up with:
 +
  $ fastboot devices
 +
You may need to do it as root if you can't access usb devices and you might need to fiddle with some Device IDs
 +
 
 +
If you used the windows method above you will already have the binary.
 +
*Open up a command prompt: Start > Type 'cmd' > Hit enter (Vista), Start > Run > 'cmd' (XP)
 +
*'cd' to that "fastboot" folder 
 +
 
 +
Now the commands to actually send it to the phone are these:
 +
  $ fastboot flash splash1 mysplash.rgb565
 +
  $ fastboot reboot
 +
 
 +
==Extra==
 +
===Show image for longer===
 +
When you did the last step above you could have replaced it with this:
 +
 
 +
  $ fastboot flash splash1 mysplash.rgb565
 +
  $ fastboot flash splash2 mysplash.rgb565
 +
  $ fastboot reboot
 +
To put the same image in the second splash screen slot. This has the effect of making the splash screen last a little longer but you can of course repeat the procedure for a different image and flash that into the second slot instead to show one image then the other.
 +
 
 +
This is not replacing the animated android that appears after it. As stated above that is actually part of the android build and not the bootloader. The second slot is not actually used at all in stock G1s.
 +
 
 +
===If the device doesn't show up===
 +
TODO: this section
 +
 
 +
Windows: Device manager etc. reinstall driver blah blah blah...
 +
 
 +
Linux: See [[fastboot|the fastboot page]] for information on configuring udev for fastboot.
 +
 
 +
==References==
 +
* http://www.gotontheinter.net/trackback/9
 +
* http://forum.xda-developers.com/showthread.php?t=456071
 +
* http://forum.xda-developers.com/showthread.php?t=467064

Revision as of 01:42, 2 August 2009

Contents

Background

This page details how to replace the boot image when your phone first boots. If you haven't already done this it is currently the "G1" logo before the android animation which is displayed as the actual android system starts up.

Prerequisites:

  • You MUST have the at least the Engineering Bootloader or the HardSPL already installed. These give you fastboot, which is essential for sending new images to the phone while still in the bootloader.

What to start with

  • The image file you want to use, it should be 320x480 pixels. Here it has been called splash.png.

Procedure

Step 1 - Prepare the image

You should convert it to 256 colours (8-bit), remove the alpha channel if it exists and save as a PNG file. With linux (or cygwin etc.) use the convert tool form the ImageMagick toolkit:

 $ convert -depth 8 splash.png rgb:splash.raw

At this point you must make sure your image is EXACTLY 460800 bytes long, if you've done as you were supposed to everything will be fine and it will be the right size. Now you need to convert the file into the "565" format which is the raw format used by the G1's framebuffer.

 $ rgb2565 < splash.raw > mysplash.rgb565

Now another check: make sure this time that the file is exactly 307200 bytes! More or less will not fill the slot on the G1 and could spill over into something else bricking it. The file splash.raw565 is now ready to be sent to your G1.

Alternitavely there is a windows GUI which prepares the image entirely for you. It is called CreateG1Splash.zip and you can currently download it from the xda-developers forum, but there should be a mirror somewhere?

  1. Extract the contents of the zip file somewhere convenient
  2. Find that directory in Windows Explorer go into the "create" folder and run "CreateG1Splash.exe"
  3. Open the splash.png file you wanted and click "convert"
  4. The file mysplash.rgb565 file should be in the same "create" folder, if not it might be in the same folder as your original image, for simplicity copy it into the "fastboot" folder (the other one that was in the zip)

Step 2 - Sending to the G1

Now you are ready to send the file to your G1

  1. Boot into SPL mode (This is why you needed the engineering bootloader). To do this hold 'power' + 'camera' while turning your phone on, you should see the skating androids
  2. Plug in the USB cable to the phone and your computer. The message in the middle of the screen should be "FASTBOOT" if not just press the trackball or 'back' button. If it doesn't are you sure you are using either of the bootloaders mentioned above?
  3. You now need to find the fastboot binary on your computer. You will probably have to compile it for linux from the android source and it is in mydroid/out/host/[OS]/bin/fastboot when completed.

You can check the G1 is showing up with:

 $ fastboot devices

You may need to do it as root if you can't access usb devices and you might need to fiddle with some Device IDs

If you used the windows method above you will already have the binary.

  • Open up a command prompt: Start > Type 'cmd' > Hit enter (Vista), Start > Run > 'cmd' (XP)
  • 'cd' to that "fastboot" folder

Now the commands to actually send it to the phone are these:

 $ fastboot flash splash1 mysplash.rgb565
 $ fastboot reboot

Extra

Show image for longer

When you did the last step above you could have replaced it with this:

 $ fastboot flash splash1 mysplash.rgb565
 $ fastboot flash splash2 mysplash.rgb565
 $ fastboot reboot

To put the same image in the second splash screen slot. This has the effect of making the splash screen last a little longer but you can of course repeat the procedure for a different image and flash that into the second slot instead to show one image then the other.

This is not replacing the animated android that appears after it. As stated above that is actually part of the android build and not the bootloader. The second slot is not actually used at all in stock G1s.

If the device doesn't show up

TODO: this section

Windows: Device manager etc. reinstall driver blah blah blah...

Linux: See the fastboot page for information on configuring udev for fastboot.

References

Personal tools