- Download the tool from here or from attachments
- Run start.bat if you are using windows, run the start script if you are a llinux or mac user and extract the bootloader.imgdata.img file from the stock folder, follow the instructions on the screen.
- You will find the editable images in the "images" folder after the extraction.
- Use any tool to modfy the images or to create new ones.
- Make sure the image format is a 24 bit uncompressed windows bitmap bmp file and the dimension is not higher than 1080x1920;
- Edit pos.txt in the "images" folder for positioning your images.
- Build your new imgdata.img and flash the flash-me.zip in recovery.
About pos.txt file strucure:
First column: image name in imgdata.img
Second column: X_posisitonxY_position from the top left corner of your screen. X_position means how many pixels right form the left of the screen. Y_position means how many pixel down from the top of the screen.
See the picture:
- First report the error to me.
- You can run imgdata.exe in cmd.
- Navigate where imgdata.exe is in cmd.
To extract imgdata.img type this:
imgdata.exe extract <path to imgdata.img> <path to output folder>
imgdata.exe build <path to input folder> <path to output folder> copy .\dummy.zip ..\flash-me.zip /Y .\7za.exe a ..\flash-me.zip <path to output folder>/new-imgdata.img
imgdata.exe extract <imgdata file> <output folder>
imgdata.exe build <extracted images> <output folder>
imgdata.exe 16bit <image file>
imgdata.exe preview [option] <extracted images> <output folder>
- Do not delete the images, preview and custom folders.
- If you want to make sure everything is okay, then extract the recently build imgdata.img (new-imgdata.img). If you see the same pictures then it is okay. Dont use md5 or crc checks on the images for checking are they the same, because some infos missing from the header of the extracted images (like pixel/meter, number of colors end etc...) and some editors likes to put random datas in the gap bytes between the lines.
- I am not responsible if you brick your device.
- If the building or extracting fails at some point or the program ends up in endless loop, then please report me and send me the images and pos.txt file for fixing.
- To remove an image just replace it with a same sized only black image.
- Save bmp files to 16bit then save them again to 24 bit to make imgdata smaller at a little cost of quality loss.
- Windows XP users have to install .net framework 3.5 to make the bat file work.
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16
17 18 19 20 21 22
23 24 25 26 27 28
Linux and mac support.
Start.bat now adds C:\Windows\System32 and C:\Windows\SysWOW64 to the path environment variable if they are missing.
For imgdata binary: 16bit switch now checks the input file to determine is it a valid bmp file.
16 bit conversion: does in one step when you open an image with gimp then save it as 16 bit then reopen and save it as 24 bit.
the original image will get "o-" tag to the begining of its name
Option for flash with adb or fastboot.
Added more-space.img to the custom folder. I removed padlock, fastboot background, downloadmode screen and I minimalized fastboot screen and oem unlock screen to gain more space for custom boot logos.
Support for Gimp
Built from reworked code.
Added file size check for new-imgdata.img
First public version
DATA1: 8 byte string. It says IMGDATA!. It is similar to the begining of boot.img and recovery.img that says ANDROID!
DATA2: I don't know.
DATA3: Number of images. It is 12.
8 bytes of 0: I dont know the purpose of that
DATA4: 16 byte string. Tells the name of the image.
DATA5: image width in pixel
DATA6: image height in pixel
DATA7: X position of the image in pixel
DATA8: Y position of the image in pixel
DATA9: it tells where is the begining of the picture on imgdata
DATA10: size of the image
The origin is the top left corner of the screen. Look at the picture.
The first image is at 0x0400, and after that point there are only images.
If we find out how to edit these pictures then we could customize our beloved "Google" boot logo.
I have made an excell chart about the image headers and extracted all the 12 images. There is a little gap between images to fit the 512byte of block size on the partition. You will find image files with that additional gap and without of it and my chart in this link. The imgdata.img I used is from the KRT16M to KOT49E ota update.