Related
Hi everybody
I want to edit ms.nbf, add/remove program in ExROM file, how can i do that?
And I want to create the ms.nbf from the Extended Rom folder ( that i copy from PPC). How can i do that?
Thanks so much!!!
http://wiki.xda-developers.com/index.php?pagename=ER2003Edit
http://wiki.xda-developers.com/index.php?pagename=BackupExistingRom
no real need to backup an extented rom though if one
can edit it one can just unhide it and copy out the cabs and txt file
Rudegar said:
http://wiki.xda-developers.com/index.php?pagename=ER2003Edit
http://wiki.xda-developers.com/index.php?pagename=BackupExistingRom
no real need to backup an extented rom though if one
can edit it one can just unhide it and copy out the cabs and txt file
Click to expand...
Click to collapse
ER2003Edit will not work on Magician EXTROM
You have to extract the FAT image using magician_ext_rom_tool [http://forum.xda-developers.com/attachment.php?attachmentid=24969&d=1130526115], modify it, and reencode it using magician_ext_rom_tool.
sounds like alot less hassel to just unhide and unlock it
and mess around that way then
Backup ROM need whole SD, and "size of the backup file nb1" = "size of SD"
I use 256MB -> it 's too large. And I not really like that.
Now I want to keep 1 ROM that i like most (include nk.nbf, Radio.nbf, ms.nbf).
Now I have 2 file radio.nbf and nk.nbf and I want create 1 file ms.nbf for myself that i like most.
I just got "Extended ROM" folder (By HR, and SR 3s before PPC auto config)
I dont know how to convert that folder to .nbf file?
How can i use "magician_ext_rom_tool" ? What is the header file?
Nobody help me?
hensiferum said:
Nobody help me?
Click to expand...
Click to collapse
The search function is made for that! Lazy!
Encode: -e -n <nbf filename> [-f <fat16 filename>] [-h <header filename>]
Decode: -d -f <fat16 filename> -h <header filename> [-n <nbf filename>]
I dont know what is header?
b0ris747, can you explain me?
The header file will be created on decode process
C:\ROMs>magician_ext_rom_tool.exe -d -n ms_.nbf
[msg] usage() - Generating FAT16 filename from NBF filename.
[msg] usage() - Generating Header filename from NBF filename.
It will contain device specific options to recreate the header contained in the nbf (which make it uploadable and recognizable on your device).
After modifying the FAT image, you'll have to encode header and FAT image to create a new NBF
C:\ROMs>magician_ext_rom_tool.exe -e -f ms_.fat -h ms_.hdr -n ms2.nbf
Will create a ms2.nbf (rename it to ms_.nbf and upload it.)
EDIT: wiki page created: http://wiki.xda-developers.com/index.php?pagename=MagicianExtrom
Oh, thank you.
When using it before, i have a mistake with encode and decode, so it not work...
Thank you very much
Can somebody explain to me how i can cook an external rom file? I would like to include the installation of tomtom with it so it is automatically installed (since battery runs empty occasionally). Any help maybe?
TUTORIAL AND KITHCEN FOR SAMSUNG OMNIA PRO B7320
Hi, my name mr.monster, from Samsung B7320 Indonesia community
I wanted to share the equipment that I use for cooking firmware samsung B7320.
just information to you that this kitchen I got from the kitchen by Tj_style valencia already modified.
as well as the knowledge I have gained about cooking firmware from Tj_style and py8. thanx bro
PART 1
I. Equipment
# Hex editor (recommendation chefs use HEX Workshop)
# Simple Kitchen - download link > http://forum.xda-developers.com/showpost.php?p=11210215&postcount=20
# Firmware Official B7320FAMIK3.rar (XXIK3)
# Firmware Official Donor WM 6.5.3 i took a sample of donors from samsung b6520 (omnia pro 5)
II. Firmware Structure GT-B7320_flash_XXIK3.pda
to build a new rom then we need to know the structure of the outline of this firmware.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
very easily we can call like the above chart GT-B7320_flash_XXIK3.pda firmware consists of, head, body and foot
This knowledge is very important because we will not cut all three parts separately using hex workshop.
III. Preparation
# Extract the simple kitchen in an empty folder named Jekiekitchen
# Download File donor of the official firmware with a resolution of 320 x 240 you can use a donor from Samsung Omnia Pro5 (WM 6.5.3)
# Download Official Firmware B7320
# Copy and extract FW [COLOR = "blue"]B7320FAMIK3.rar[/COLOR] then copy all the contents into the UPDATE folder in the kitchen
# Extract the Firmware Donor then Copy the file images to a folder on the kitchen tools. as an example of image files donors are: flash_dxJF5_REV02_RC4.nb0
IV. prepare donor Firmware
# run the program your cmd (cmd.exe)
after typing the command as follows:
osnbtool –sp flash_DXJG6_REV02_RC9.nb0
wait for the process, then type again to get XIP.BIN:
osnbtool -d flash_DXJG6_REV02_RC9.nb0.OS.NB 1 xip.bin
osnbtool -d flash_DXJG6_REV02_RC9.nb0.OS.NB 2 imgfs.bin
# Decompile and Dumping imgfs.bin donor fimware
typing the command at cmd as follows:
imgfstodump imgfs.bin
wait the process and you will get dump folder from donor fimware
# makes packages
Run the program pkgtool.exe
click file> open> select a folder dump
and thean click tools>build packages> wait and you've done dump donor firmware.
........................end of part 1.........................
RESERVED
in previous tutarial we've got images from ofiicial firmware files b6520 samsung omnia pro 5 build 23121
now we'll dumping original fimware XXIK3 WM 6.5.0
V. Cutting Firmware
as I have explained that the original firmware B7320 consists of header, body and footer.
and which will we are dumping the body, and later at the end of cooking, we will combine the header, body and footer again
# Header
Open the folder UPDATE in kitchen, open the GT-B7320_flash_XXIK3.pda file using HEXedit Workshop
and search for hex value: 4B4B4B4B4B4B4B4B at offset: 00706FFD
as in the picture (the black part is the header)
Click to expand...
Click to collapse
cut of the offset 00000000 to the offset 00706FFD divider column 2 hex value: 4B4B4B4B4B4B4B4B
and then create new hex document, paste the cutted hex.
save as GT-B7320_flash_XXIK3.pda.head
# Body
now we will separate the body and footer on a hex that had we cut the head section
search hex value: 4B4B4B4B4B4B4B4B in offset 07ADA5FA.
Click to expand...
Click to collapse
in the black until the end of the file is a footer, and the part and it is the body. whatever you want to cut the body or the footer first .
body save as : GT-B7320_flash_XXIK3.pda.body
footer save as : GT-B7320_flash_XXIK3.pda.foot
put three files in the base PDA folder at kitchen
VI. Dump Device Firmware
just double click cmd file DumpPDA.Body.cmd and wai for the process and you will got SYS,OEM and XIP.BIN device at XIPPORT folder
VII. SYS Porting
# Delete all content in \Kitchen\SYS, except .ROM .VM and Metadata.
# Copy all content in SYS Folder on \KITCHEN\TOOLS\DUMP\SYS, except .ROM .VM and Metadata to KITCHEN\Sys folder
VIII. XIPPORTING
# run XIPPORT.exe click
# On XIPPORT folder run xipport.exe Click "dump xip.bin" button and then Click "make pkgs"
# Copy your donor XIP.bin (from Kitchen\TOOLS) to XIPPORT\DONOR folder.
# run xipport.exe in DONOR folder and then Click "dump xip.bin" button and then Click "make pkgs"
# Replace MSXIPKernel folder and MSXIPKernelLTK on XIPPORT\OUT\FILES from XIPPORT\DONOR\OUT\FILES.
# then Replace MSXIPKernel folder and MSXIPKernelLTK on XIPPORT\OUT\MODULES from XIPPORT\DONOR\OUT\MODULES.
# Delete LangDB folder on XIPPORT\OUT\FILES and XIPPORT\OUT\MODULES.
# Click "undo" button then click “realloc P” to re calculate the reallocation addresses. Then click “write maps”close the both xipport.exe
..................................end of second Part .............................
RESERVED
IX. BUILD OS
# Click "Build OS" button
# Click "Play" button on BuildOS.exe, after finish building close the BuildOS.exe.
# On EXTReloc.exe Click "Import XIPPort" button.
# Click "Open ROMHDR + .VM + .ROM" and then Click "Realloc V (DLL)" button.
# On xipport.exe Click "realloc P"
# after pressing the button realoc P, an error message will appear click OK button until the message is dissapear and then Click "write maps" button.
# On EXTReloc.exe Click "Realloc NK.EXE,GIISR.DLL,etc." button.
# On xipport.exe Click "realloc P" button.
# an error message will appear again click OK button until the message is dissapear
reference link for eror message at Extra realloc http://forum.xda-developers.com/showpost.php?p=2919603&postcount=2
# On EXTReloc.exe Drag the white vertical line to the left.
# Click "Realloc IMGFS modules" button (If MAP.txt log appear, just close it).
# On xipport.exe Click "build xip_out.bin" button and close xipport.exe.
# Close EXTReloc.exe and wait to Build OS process finished.
X. BUILD ROM
# Double click BuildRom.bat
# wait the process untill PP changer appear
# fill the size of pagepool i think the most stable and fast is 8mb (i ve test it with 4,6,8 and 10mb)
# wait for a moment untill hnb hex appear
# go to Temp Folder at kitchen we will build footer to hnb (head and body)
# open hnb.bin with HEX workshop and clik ones at the end hex value and copy to clipboard
# create new hex document
# paste the the hex offset, then klik tab tools > Operatiin >byte flip
# choose treat data as 32 bit unsigned long
# after byte flip the hex, copy it to *bat and paste the value klik enter
# done you will see your custom rom in UPDATE folder
gatutkoco said:
For part 3
Click to expand...
Click to collapse
wait for u...
GREAT SHARE MY BRO
THANK U VERY MUCH,but now im very busy at school,so not be able to have free time to cook ROM as u doing
I know it isnt easy to creat it,many thanks to you for explaining and sharing
When will J-Reva 2.0 release,Monz?and Have you plan to making v3.0?
and with those you share,I NEEDN'T DUMP ROM,that right my bro?
@neetee: R U Kjt_9k_8100 from tinhte.vn
pbthanh_pg said:
@neetee: R U Kjt_9k_8100 from tinhte.vn
Click to expand...
Click to collapse
kjt?WHO IS HE?im not him as u know my bro : ) : )
what's the password for the SimpleKitchen.zip?
gatutkoco said:
For part 3
Click to expand...
Click to collapse
i hope i can build 1 rom for me like you
gatutkoco said:
For part 3
Click to expand...
Click to collapse
there is an kitchen GUI from tj_style [KIT] [Samsung GT-C6625] -=Valencia Kitchen=-
Can i use this to cook rom for B7320??
sori i forgot the password
link to simple kitchen update to first post
goingred said:
there is an kitchen GUI from tj_style [KIT] [Samsung GT-C6625] -=Valencia Kitchen=-
Can i use this to cook rom for B7320??
Click to expand...
Click to collapse
yes offcourse
but you can not use Valencia kitchen.exe to dump,build OS and ROM
you must do it by manually.
and change the options on extra realloc to " windows mobile " 6.5 (native NK.Exe support modules in slots 60 61)
this my bat files to dump official firmware
Code:
@ECHO OFF
title -=DUMPING PDA.Body=-
color F9
echo.
echo.
echo.
echo.
echo.
echo.
echo.
if not exist ROM (md ROM)
if not exist DUMP (md DUMP)
copy BasePDA\GT-B7320_flash_XXIK3.pda.body dump\GT-B7320_flash_XXIK3.pda.body
cd dump
cls
echo.
echo.
echo.
echo.
echo.
echo.
echo.
..\TOOLS\osnbtool -sp GT-B7320_flash_XXIK3.pda.body >> nul
echo Split GT-B7320_flash_XXIK3.pda.body done..
..\TOOLS\osnbtool -d GT-B7320_flash_XXIK3.pda.body.OS.NB 1 xip.bin >> nul
echo Decompress xip.bin done..
..\TOOLS\osnbtool -d GT-B7320_flash_XXIK3.pda.body.OS.NB 2 imgfs.bin >> nul
echo Decompress imgfs.bin done..
..\TOOLS\imgfstodump imgfs.bin >> nul
echo Dumping imgfs.bin done..
..\TOOLS\pkgtool dump
move dump\OEM ..\OEM
move dump\SYS ..\SYS
..\TOOLS\xidump -b -p LangDB xip.bin >> nul
..\TOOLS\xidump -f boot.rgu xip.bin >> nul
cls
color F9
move XIP\LangDB ..\OEM\LangDB
move XIP ..\ROM\XIP
copy xip.bin ..\XIPPORT\xip.bin
cd..\
rd dump /q /s
for Build PDA
Code:
@ECHO off
color F9
Title -=Building ROM=-
echo.
echo.
echo.
echo.
echo.
echo.
echo.
copy BasePDA\GT-B7320_flash_XXIK3.pda.body temp\GT-B7320_flash_XXIK3.pda.body
copy BasePDA\GT-B7320_flash_XXIK3.pda.head temp\GT-B7320_flash_XXIK3.pda.head
copy BasePDA\GT-B7320_flash_XXIK3.pda.foot temp\GT-B7320_flash_XXIK3.pda.foot
copy XIPPORT\xip_out.bin temp\xip.bin
cd temp
..\TOOLS\osnbtool -sp GT-B7320_flash_XXIK3.pda.body
echo Split done..
..\TOOLS\osnbtool -d GT-B7320_flash_XXIK3.pda.body.OS.NB 2 imgfs.bin
echo Decompress imgfs.bin done..
..\TOOLS\ImgfsFromDump imgfs.bin imgfs-new.bin
echo Inserting dump done..
..\TOOLS\osnbtool -c GT-B7320_flash_XXIK3.pda.body.OS.NB 2 imgfs-new.bin
echo Inserting imgfs.bin done..
set /p pp= Enter size of pool (in MB), example 4:
..\TOOLS\osnbtool -ap xip.bin %pp% -y
cls
echo.
echo.
echo.
echo.
echo.
echo.
echo.
..\TOOLS\osnbtool -c GT-B7320_flash_XXIK3.pda.body.OS.NB.new 1 xip.bin
..\TOOLS\osnbtool -extra GT-B7320_flash_XXIK3.pda.body.OS.NB.new.new
copy /b GT-B7320_flash_XXIK3.pda.head+GT-B7320_flash_XXIK3.pda.body.OS.NB.new.new.exa HnB.bin
set /p crc= Enter the size of HnB.bin in HEX:
..\TOOLS\HexTool GT-B7320_flash_XXIK3.pda.foot 8654 4 %crc%
copy /b HnB.bin+GT-B7320_flash_XXIK3.pda.foot GT-B7320_flash_XXIK3_new.pda
move /y GT-B7320_flash_XXIK3_new.pda ..\UPDATE\GT-B7320_flash_XXIK3.pda
del *.bin
del *.nb0
del *.nb
del *.new
del *.exa
del *.pda
del *.head
del *.foot
del *.body
cls
ECHO All Done..
pause
IF you want Bro, then i give to you tool for automat. XIPPorting
header & footer for flash_DDJA1.pda
My objective is to clean the unwanted apps from the official rom & add some custom apps.
I'm tyring to dump the rom DDJA1.pda using your tutorial. In this .pda file, there is no offset 07ADA5FA. I'm assuming that, the last occurence of 4B4B4B4B4B4B4B4B should be good enough to find the footer.
Please clarify
@goingred
DDJA1 is WM6.1 am i right
try this to search footer first:
in the end of file search that hex value,it will appear "cannot find the value" message and an option yes or no, choose "no",then klik "reverse"symbol button on hex workshop. you will find it.
the simple kitchen only works on XXIK3 redio version and Pda version WM 6.5.0. if you want to use another version,try to editing the cmd files in my simple kitchen
@nokser thanks mate.
gatutkoco said:
@goingred
DDJA1 is WM6.1 am i right
try this to search footer first:
in the end of file search that hex value,it will appear "cannot find the value" message and an option yes or no, choose "no",then klik "reverse"symbol button on hex workshop. you will find it.
the simple kitchen only works on XXIK3 redio version and Pda version WM 6.5.0. if you want to use another version,try to editing the cmd files in my simple kitchen
@nokser thanks mate.
Click to expand...
Click to collapse
No prob., this tool porting xip in my I600 automat.
I rebuild this apps, and then give to you. Tell me only, where must be copy package from XIP etc.. I see in yours file *.bat -> copy Lang Package To OEM
You want try this in tool?? and what you have a version .NetCF in yours Kitchen?
Nokser said:
No prob., this tool porting xip in my I600 automat.
I rebuild this apps, and then give to you. Tell me only, where must be copy package from XIP etc.. I see in yours file *.bat -> copy Lang Package To OEM
You want try this in tool?? and what you have a version .NetCF in yours Kitchen?
Click to expand...
Click to collapse
yup thats right bro in my *bat file i move langdb to oem.
be happy to try it. I'm still using .netCF 2.0
Finaly got the way to automatic modify the footer section, py8 sent me the tool.
can you try when you have time..
tj_style said:
Finaly got the way to automatic modify the footer section, py8 sent me the tool.
can you try when you have time..
Click to expand...
Click to collapse
off course bro.. sms wae
SimpleKitchen.zip
plz reupload the SimpleKitchen.zip file in another host, i can't download it. MF is good. thank.
dragon2991 said:
plz reupload the SimpleKitchen.zip file in another host, i can't download it. MF is good. thank.
Click to expand...
Click to collapse
here the kitchen
Hey Guys,
I found it very hard to find this method on the net. I looked for around 12 hours (over a period of 2 days). But here it is!
This method is very helpful if you need to increase the length of your signature on your apk. As Google Play has a minimum length of validity for signatures.
This tutorial contains some knowledge from other websites and some from my own self. Please feel free to use my hard work below. But try to reference me if you can. Thanks!
First of all,
jarsigner and keytool are .exe files that help create your "signed" application for release to the market to prevent fraud.
1.
Make a folder somewhere called "keytools" and make a folder in that called "key"
2. Now move your apk file to the folder keytools.
(Not inside any other folders)
3. Check
"C:\Program Files\Java\jdk1.7.0_11\bin" for jarsigner and keytools..
... or whatever jdk version you have
If you DONT have it install the following: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
4. open cmd.exe,
5. cd your way to where you have your keytools folder...
I had to do.. cd desktop, and to keytools to get to C:\Users\Matt\Desktop\keytools\
In this directory is you apk file which we will manipulate.
Now add the directory C:\"Program Files"\Java\jdk1.7.0_11\bin\ or something like that to PATH in Environment Variables.
Directions on how to do this can be found here: http://www.computerhope.com/issues/ch000549.htm
type the following now (or something similar to my example)
keytool -genkey -alias xda.keystore -keyalg RSA -validity 20000 -keystore keys/xda.keystore
Then you will have be presented with:
Enter keystore password: (type in a password you will use)
Re-enter new password: (type in same password here)
What is your first and last name? Matt <LAST NAME HERE>
What is the name of your Organization unit? (You dont NEED to type anything)
What is the name of your city or locality? <What it says>
What is the name of your state or providence? <What it says>
what is the two-letter country code for this unit? AU
is CN=Matt C=AU.....etc. correct?
[no]: yes (type yes there)
Enter key password for <xda.keystore>
<RETURN if same as keystore password>: (push enter)
6.
To add the directory of jarsigner to the PATH variable just do the steps from here: http://www.computerhope.com/issues/ch000549.htm but with the path of jarsigner. Which should be something like this: echo "PATH=/cygdrive/c/Program\ Files/Java/jdk1.7.0.11/bin:\${PATH}" >> .bash_profile
Now, type the following now (or something similar to my example) NOTE: This is all in cmd.
jarsigner -verbose -keystore key/donate.keystore -signedjar Donate_signed.apk xda.apk xda.keystore
Enter Passphase for keystore: (your password you made earlier)
DO NOT TYPE --> adding: META-INF/MINFEST.MF ....
.......
.....
...Signing: classes.dex <--DO NOT TYPE
and you're all set! you signed your apk file or whatever you wanted to create!
Congratulations.
NOW STOP BEING FRUSTRATED LIKE I WAS FOR HOURS!
Come on guys! Post what you think AKA I just bumped this thread.
I did this but the file gets signed , but when trying to install on device the signed file, it says its not signed .
LOL
Thanks but I can not do this
I have python working on ADB from the command line, I wasn't happy about having to develop with that little virtual keyboard so I made some changes and wrote a short shell script to launch python after setting up some variables.
What I did exactly:
1) I created a blank.img file on my pc and formated it to ext2 as if I was making a chroot image for ubuntu but instead I left it blank. I then named it apps.img but that doesn't matter.
2) I pushed it to my phone ( 4 gigs just for fun)
3) I mounted it via Terminal Emulator on my phone, had to use bash to get the syntax I used on the pc to work with "mount -o loop " . created a folder in /mnt called "myside" so "/mnt/myside" and mounted into "/mnt/myside"
4) I copied all the files, libs, execs, etc into/onto the img file
5) I put my script in "/system/bin" , named it "python" and made it executable, so "/system/bin/python"
6) I tested via "adb shell"
Code:
[email protected]:~$ adb shell
[email protected]:/ $ su
[email protected]:/ # python
Python 2.7.2 (default, Jun 3 2013, 20:01:13)
[GCC 4.4.3] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> import os
>>> import math
>>> import io
ANDROID_PRIVATE = /mnt/myside/com.hipipal.qpyplus0/files
>>> import android
>>> import twisted
>>> import PIL
>>> print(os.environ)
{'EXTERNAL_STORAGE': '/storage/emulated/legacy', 'LOOP_MOUNTPOINT': '/mnt/obb', 'BOOTCLASSPATH': '/system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar', 'ANDROID_PROPERTY_WORKSPACE': '8,49152', 'USER': 'shell', 'PATH': '/mnt/myside/com.hipipal.qpyplus0/files/bin:/mnt/myside/com.hipipal.qpyplus2/scripts/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin', 'HOME': '/', 'ANDROID_STORAGE': '/storage', 'LD_LIBRARY_PATH': '/mnt/myside/com.hipipal.qpyplus2/lib:/vendor/lib:/system/lib', 'EMULATED_STORAGE_TARGET': '/storage/emulated', 'SHELL': '/system/bin/sh', 'ANDROID_ASSETS': '/system/app', 'ANDROID_BOOTLOGO': '1', '_': '/mnt/myside/com.hipipal.qpyplus0/files/bin/python', 'TERMINFO': '/system/etc/terminfo', 'MKSH': '/system/bin/sh', 'PYTHONOPTIMIZE': '2', 'ANDROID_PRIVATE': '/mnt/myside/com.hipipal.qpyplus0/files', 'ANDROID_SOCKET_adbd': '9', 'SECONDARY_STORAGE': '/storage/sdcard1', 'PYTHONPATH': '/mnt/myside/com.hipipal.qpyplus2/lib/site-packages:/mnt/myside/com.hipipal.qpyplus0/files/lib/site-packages:/mnt/myside/com.hipipal.qpyplus0/files/lib/lib-dynload:/mnt/myside/com.hipipal.qpyplus0/files/lib/config:/mnt/myside/com.hipipal.qpyplus0/files/lib/python27:/mnt/myside/com.hipipal.qpyplus0/files/lib/QPython', 'RANDOM': '29772', 'ANDROID_DATA': '/data', 'TERM': 'linux', 'EMULATED_STORAGE_SOURCE': '/mnt/shell/emulated', 'TMPDIR': '/mnt/myside/com.hipipal.qpyplus2/cache', 'HOSTNAME': 'android', 'ANDROID_ROOT': '/system', 'PYTHONHOME': '/mnt/myside/com.hipipal.qpyplus0/files:/mnt/myside/com.hipipal.qpyplus0/files/bin/python', 'ASEC_MOUNTPOINT': '/mnt/asec', 'ANDROID_CACHE': '/cache'}
>>> dir(PIL)
['__builtins__', '__doc__', '__file__', '__name__', '__package__', '__path__']
>>> dir(twisted)
['__builtins__', '__doc__', '__file__', '__name__', '__package__', '__path__', '__version__', '_version', 'python', 'version']
>>> from PIL import image
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name image
>>> dir(android)
['AndroidBrowser', 'AndroidService', 'BuildInfo', 'KEYCODE_0', 'KEYCODE_1', 'KEYCODE_2', 'KEYCODE_3', 'KEYCODE_4', 'KEYCODE_5', 'KEYCODE_6', 'KEYCODE_7', 'KEYCODE_8', 'KEYCODE_9', 'KEYCODE_A', 'KEYCODE_ALT_LEFT', 'KEYCODE_ALT_RIGHT', 'KEYCODE_APOSTROPHE', 'KEYCODE_AT', 'KEYCODE_B', 'KEYCODE_BACK', 'KEYCODE_BACKSLASH', 'KEYCODE_C', 'KEYCODE_CALL', 'KEYCODE_CAMERA', 'KEYCODE_CLEAR', 'KEYCODE_COMMA', 'KEYCODE_D', 'KEYCODE_DEL', 'KEYCODE_DPAD_CENTER', 'KEYCODE_DPAD_DOWN', 'KEYCODE_DPAD_LEFT', 'KEYCODE_DPAD_RIGHT', 'KEYCODE_DPAD_UP', 'KEYCODE_E', 'KEYCODE_ENDCALL', 'KEYCODE_ENTER', 'KEYCODE_ENVELOPE', 'KEYCODE_EQUALS', 'KEYCODE_EXPLORER', 'KEYCODE_F', 'KEYCODE_FOCUS', 'KEYCODE_G', 'KEYCODE_GRAVE', 'KEYCODE_H', 'KEYCODE_HEADSETHOOK', 'KEYCODE_HOME', 'KEYCODE_I', 'KEYCODE_J', 'KEYCODE_K', 'KEYCODE_L', 'KEYCODE_LEFT_BRACKET', 'KEYCODE_M', 'KEYCODE_MEDIA_FAST_FORWARD', 'KEYCODE_MEDIA_NEXT', 'KEYCODE_MEDIA_PLAY_PAUSE', 'KEYCODE_MEDIA_PREVIOUS', 'KEYCODE_MEDIA_REWIND', 'KEYCODE_MEDIA_STOP', 'KEYCODE_MENU', 'KEYCODE_MINUS', 'KEYCODE_MUTE', 'KEYCODE_N', 'KEYCODE_NOTIFICATION', 'KEYCODE_NUM', 'KEYCODE_O', 'KEYCODE_P', 'KEYCODE_PERIOD', 'KEYCODE_PLUS', 'KEYCODE_POUND', 'KEYCODE_POWER', 'KEYCODE_Q', 'KEYCODE_R', 'KEYCODE_RIGHT_BRACKET', 'KEYCODE_S', 'KEYCODE_SEARCH', 'KEYCODE_SEMICOLON', 'KEYCODE_SHIFT_LEFT', 'KEYCODE_SHIFT_RIGHT', 'KEYCODE_SLASH', 'KEYCODE_SOFT_LEFT', 'KEYCODE_SOFT_RIGHT', 'KEYCODE_SPACE', 'KEYCODE_STAR', 'KEYCODE_SYM', 'KEYCODE_T', 'KEYCODE_TAB', 'KEYCODE_U', 'KEYCODE_UNKNOWN', 'KEYCODE_V', 'KEYCODE_VOLUME_DOWN', 'KEYCODE_VOLUME_UP', 'KEYCODE_W', 'KEYCODE_X', 'KEYCODE_Y', 'KEYCODE_Z', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '__test__', 'accelerometer_enable', 'accelerometer_enabled', 'accelerometer_reading', 'ack_stop', 'action_send', 'check_pause', 'check_stop', 'get_buildinfo', 'get_dpi', 'hide_keyboard', 'init', 'map_key', 'open_url', 'show_keyboard', 'start_service', 'stop_service', 'vibrate', 'wait_for_resume', 'webbrowser', 'wifi_scan', 'wifi_scanner_enable']
>>> help(twisted)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'help' is not defined
>>> help(os)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'help' is not defined
>>>
[email protected]:/ # set
ANDROID_ASSETS=/system/app
ANDROID_BOOTLOGO=1
ANDROID_CACHE=/cache
ANDROID_DATA=/data
ANDROID_PROPERTY_WORKSPACE=8,49152
ANDROID_ROOT=/system
ANDROID_SOCKET_adbd=9
ANDROID_STORAGE=/storage
ASEC_MOUNTPOINT=/mnt/asec
BOOTCLASSPATH=/system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar
COLUMNS=80
EMULATED_STORAGE_SOURCE=/mnt/shell/emulated
EMULATED_STORAGE_TARGET=/storage/emulated
EXTERNAL_STORAGE=/storage/emulated/legacy
HOME=/
HOSTNAME=android
IFS='
'
KSHEGID=0
KSHGID=0
KSHUID=0
KSH_VERSION='@(#)MIRBSD KSH R40 2011/10/07'
LD_LIBRARY_PATH=/vendor/lib:/system/lib
LINES=24
LOOP_MOUNTPOINT=/mnt/obb
MKSH=/system/bin/sh
OPTIND=1
PATH=/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
PGRP=4849
PIPESTATUS[0]=0
PPID=4844
PS1='$(precmd)[email protected]$HOSTNAME:${PWD:-?} # '
PS2='> '
PS3='#? '
PS4='+ '
PWD=/
RANDOM=5114
SECONDARY_STORAGE=/storage/sdcard1
SECONDS=289
SHELL=/system/bin/sh
TERM=linux
TERMINFO=/system/etc/terminfo
TMOUT=0
USER=shell
USER_ID=0
_=set
[email protected]:/ #
And this is the script that I used to launch it...
Code:
#!/system/bin/sh
export ANDROID_PRIVATE="/mnt/myside/com.hipipal.qpyplus0/files"
export LD_LIBRARY_PATH="/mnt/myside/com.hipipal.qpyplus2/lib:$LD_LIBRARY_PATH"
export PATH="/mnt/myside/com.hipipal.qpyplus0/files/bin:/mnt/myside/com.hipipal.qpyplus2/scripts$PATH"
export PYTHONHOME="/mnt/myside/com.hipipal.qpyplus0/files:/mnt/myside/com.hipipal.qpyplus0/files/bin/python"
export PYTHONOPTIMIZE="2"
export PYTHONPATH="/mnt/myside/com.hipipal.qpyplus2/lib/site-packages:/mnt/myside/com.hipipal.qpyplus0/files/lib/site-packages:/mnt/myside/com.hipipal.qpyplus0/files/lib/lib-dynload:/mnt/myside/com.hipipal.qpyplus0/files/lib/config:/mnt/myside/com.hipipal.qpyplus0/files/lib/python27:/mnt/myside/com.hipipal.qpyplus0/files/lib/QPython"
export TMPDIR="/mnt/myside/com.hipipal.qpyplus2/cache"
/mnt/myside/com.hipipal.qpyplus0/files/bin/python
I was just gonna add the variables to my "mkshrc" file but I found problems with that chroot'ing into linux, I guess its best for now to set it up in a script that way it doesn't effect the global system so to speak, I just hope that if another program or script calles python it will work like normal ( i.e. set up the variables and launch python, or run said script in /system/bin called python)
What do you think I am missing?
I am almost certain that the normal program that does the launching does some strange linking of libraries and thats why I am missing stuff like the twisted set of modules etc, it got twisted's main file but not its sub files, I am guessing the folder in the same dir that twisted file is in will contain what I need. Do I need to add all those folders to my PYTHONPATH?
Ha! I tried running python from Qpython's app w/ a fresh install and 'help()' didn't work there either.
2) Its 'from PIL import Image'
I'm starting to think i had it right the first time, irony.
This is a Windows batch script that converts png, jpg, bmp, or tif images into a raw rgb565 image, then flashes it to your Nexus 9 to replace the stock Google Splash Screen. With version 1.6 this script will work with any resolution image; using some built in scaling, cropping, and rotating. I have successfully tested this on my Wifi 32 GB Nexus 9 using Windows 7 Home Premium, but the batch file should work for all versions of Windows, even XP.
If you do not have windows and want instructions on how to do this manually, click the button below.
Make sure you have fastboot.exe, adb.exe, and your raw rgb565 image that you want to use in the same folder. Issue this command:
Code:
adb reboot bootloader
Please verify that you are in "FASTBOOT USB" mode and not "HBOOT"
In the next command replace imagefile.raw with the name of the raw file you want to use.
Please verify that your raw image is 6291456 bytes in size. This is checked for in my script, but you need to check it!
Why?? Because total pixels (1536*2048=3145728) * Bpp (2) = 6291456
Code:
fastboot flash splash1 [i]imagefile.raw[/i]
fastboot reboot
That's it!
You need to have an unlocked bootloader.
You have to have your necessary ADB drivers installed and functioning correctly.
You have to unzip the n9splash1.6.zip file into a new directory.
You can use pngs, bmps, jpgs, tifs, ....Pretty much any common format
To use, just drag and drop your image onto the n9splash.bat file
Make sure your Nexus is turned on and plugged into your computer
Follow the prompts from there
This download contains the programs ffmpeg.exe, adb.exe, & fastboot.exe.
It also contains my batch script, which can be viewed in the following post.
Notes:
To flash back to stock with v1.6, just open the "sys" folder. Inside is a "stock.bat" file. Run it, and of course make sure your device is plugged in to your computer and that your device is on.
With v1.6 you can also flash raw rgb565 files. The catch is that they have to already be the correct size, in bytes. There is no image information (like width, height, headers,...) in raw files as they are nothing but pixel data. So I can't take a raw file of yours and turn it into a ....x.... 2bpp image without knowing what the original width and pixel format is.
I check the size of the file several times before it is ever flashed, so you don't have to worry about a bad conversion being flashed.
Believe it or not the file size is the most important thing, it does not matter one bit what the file contains. But if it is 6291456 bytes, guess what? You are gonna have a new splash screen. It might look like a snow storm on your grandmothers TV, but there is no difference in rgb565 data and an executable files data, there is still 8 bits in a byte and that byte still has the same potential values.:cyclops:
If you don't care to see your images open up before rotating, or before reconverting and showing them to you before flashing, you can edit the n9splash.bat file and change:
Code:
set "showbeforeflashing=yesure"
set "showbeforerotating="
If you want it to show you the image, put anything to the right of the "=" sign. If you don't want it to open the image, have nothing after the equal sign (except for the closing quote). And of course save the file after you change it.
Version 1.6 probably will not work on Windows XP. You may get it to work by editing this line at the top of the batch file:
Code:
set "usedefaultviewer="
to
Code:
set "usedefaultviewer=yes"
Changelog:
Nov 9th, 2014 v1.6
Added the ability to use any resolution photo
If image needs to be rotated, it is automatic, you just choose right or left
Added an automatic aspect checker, and scaler
Added drag and drop support for images already in rgb565 pixel format
Added the binary copy of the stock splash screen from the bootloader
Added a stock.bat program in the sys folder to quickly flash binary stock image
Added a display of the image, if it needs to be rotated
Added a conversion to png after converting your image to raw to check before flashing
Nov 7th, 2014 Initial Upload v1.0
I take no responsibility for any damage caused by you trying this.
The script can be found in the second post!
Download
Nexus 9 Splash Tool v1.6
Download
Nexus 9 Splash Tool v1.0
Below I have provided some simple examples. A negative stock one and another one using the same 'catull' font that Google uses, but with the text "Nexus IX" instead.
Code:
@echo off&setlocal enabledelayedexpansion&set "vers=1.6"&title Nexus 9 Splash Tool v!vers!&color 0b&mode con cols=78 lines=45&cls&call :drawhead
set "videofilter="
set "showbeforeflashing=yesure"
set "showbeforerotating="
set "rotatesquares="
set "usedefaultviewer="
if exist "%~dp0sys\log\imageres" del /q "%~dp0sys\log\imageres"
set /a "expected_filesize=6291456"
set /a "aspectmultiplier=100000"
set /a "expected_pixels=%expected_filesize%/2"
set "loglevel=-loglevel debug"
set "hidebanner=-hide_banner"
set "ffmlog=>>"%~dp0sys\log\ffmpeg_log.txt" 2>&1"
if "%~1"=="stock" set "image_file=%~dp0sys\stock_binary\sp1.nb0"&set "base_name=Stock Google Splash Screen"&call :stock
set "image_file=%~1"
if not exist "%image_file%" call :nofile
if not exist "%~dp0sys\log\" mkdir "%~dp0sys\log"
set "irony="
cd /d "%~dp0"
for %%? in ("%image_file%") do set "base_name=%%~n?"&set "ext=%%~x?"&set "osize=%%~z?"
if /i "%ext%"==".bmp" goto :checkres
if /i "%ext%"==".jpg" goto :checkres
if /i "%ext%"==".jpeg" goto :checkres
if /i "%ext%"==".png" goto :checkres
if /i "%ext%"==".raw" if "%osize%"=="%expected_filesize%" call :fla**** "%image_file%"
if /i "%ext%"==".rgb565" if "%osize%"=="%expected_filesize%" call :fla**** "%image_file%"
if /i "%ext%"==".nb0" if "%osize%"=="%expected_filesize%" call :fla**** "%image_file%"
if not defined irony if "%osize%"=="%expected_filesize%" call :fla**** "%image_file%"
goto :checkres
:checkres
for /f "tokens=1-8* delims=," %%a in ('sys\bin\ffmpeg -i "%image_file%" 2^>^&1^|findstr /rxic:".*stream #0:0.*[0-9][0-9]x[0-9][0-9].*"') do (
echo.%%a >"%~dp0sys\log\imageres"
echo.%%b >>"%~dp0sys\log\imageres"
echo.%%c >>"%~dp0sys\log\imageres"
echo.%%d >>"%~dp0sys\log\imageres"
echo.%%e >>"%~dp0sys\log\imageres"
echo.%%f >>"%~dp0sys\log\imageres"
echo.%%g >>"%~dp0sys\log\imageres"
echo.%%h >>"%~dp0sys\log\imageres"
)
for /f "tokens=1-3 delims=x " %%d in ('type "%~dp0sys\log\imageres"^|findstr /rxic:".*[0-9][0-9]x[0-9][0-9].*"') do (set /a "width=%%d"&set /a "width=!width: =!"&set /a "height=%%e"&set /a "height=!height: =!")
if %width% gtr %height% goto :rotate
if defined rotatesquares if %width% equ %height% goto :rotate
set /a requiredaspect=%aspectmultiplier%*1536/2048
set /a aspectratio=%aspectmultiplier%*%width%/%height%
set /a pixels=%width%*%height%
if %aspectratio% neq %requiredaspect% goto :badresolution
if %pixels% neq %expected_pixels% goto :badresolution
goto :convertit
:badresolution
if "%aspectratio%"=="%requiredaspect%" echo.Auto resizing image.&set "videofilters=-vf "scale=1536:2048""&goto :resize
cls&call :drawhead&echo.&echo. Your image doesn't meet the required resolution of 1536x2048&echo.
:changeaspect
echo. Your image aspect ratio is different from the required 3:4 aspect ratio.&echo.
if %pixels% lss %expected_pixels% echo. Keep in mind that I can make your image bigger, but I can't add detail....
echo. ____________________________________________________________________________&echo. Please choose 1 or 2 and press ENTER&echo.&echo. 1 - Resize it by stretching or shrinking image ^(aspect ratio will change^)&echo. 2 - Keep aspect, but resize and crop ^(aspect ratio will stay the same^)&echo.
set /p ihatexp=?
if "%ihatexp%"=="1" set "videofilters=-vf "scale=1536:2048""&goto :resize
if "%ihatexp%"=="2" (
if %requiredaspect% gtr %aspectratio% set "videofilters=-vf "scale=1536:-1, crop=1536:2048""
if %requiredaspect% lss %aspectratio% set "videofilters=-vf "scale=-1:2048, crop=1536:2048""
goto :resize)
goto :badresolution
:resize
set "out_path=sys\temp"
if not exist "%~dp0%out_path%\" mkdir "%~dp0%out_path%"
%ffmlog%"%~dp0sys\bin\ffmpeg.exe" %hidebanner% %loglevel% -i "%image_file%" %videofilters% -y "%~dp0%out_path%\%base_name%.png"
call "%~dpnx0" "%~dp0%out_path%\%base_name%.png"
goto :convertit
:rotate
:again
cls&call :drawhead&echo.&echo.
echo. The image has to be rotated either left or right.
if defined showbeforerotating if not defined usedefaultviewer echo. CLOSE the image when you are done to continue
echo. Please choose 1 or 2 and press ENTER&echo.
echo. ____________________________________________________________________________
echo. 1 - Rotate Image Left&echo. 2 - Rotate Image Right&echo.
if defined showbeforerotating (
ping -n 3 127.0.0.1> nul
if defined usedefaultviewer start "" "%image_file%"
if not defined usedefaultviewer rundll32 "%ProgramFiles%\Windows Photo Viewer\PhotoViewer.dll", ImageView_Fullscreen %image_file%
)
set /p "ihatexp= ?"
if "%ihatexp%"=="2" set "videofilters=-vf "transpose=1""&goto :ready
if "%ihatexp%"=="1" set "videofilters=-vf "transpose=2""&goto :ready
goto :again
:ready
set "out_path=sys\temp"
if not exist "%~dp0%out_path%\" mkdir "%~dp0%out_path%"
%ffmlog%"%~dp0sys\bin\ffmpeg.exe" %hidebanner% %loglevel% -i "%image_file%" %videofilters% -y "%~dp0%out_path%\%base_name%.png"
call "%~dpnx0" "%~dp0%out_path%\%base_name%.png"
exit
:convertit
cls&call :drawhead
set "out_path=sys\raw images"
if not exist "%~dp0%out_path%\" mkdir "%~dp0%out_path%"
if exist "%~dp0%out_path%\!base_name!.raw" del /q "%~dp0%out_path%\!base_name!.raw"
echo.&echo. Converting file into a raw 2 byte per pixel rgb565 image..
%ffmlog%"%~dp0sys\bin\ffmpeg.exe" %hidebanner% %loglevel% -i "%image_file%" -f rawvideo -vcodec rawvideo -pix_fmt rgb565 -y "%~dp0%out_path%\!base_name!.raw"
for %%? in ("%~dp0%out_path%\!base_name!.raw") do set /a "out_filesize=%%~z?"
if not "!out_filesize!" == "%expected_filesize%" goto :badsize
call :fla**** "%~dp0%out_path%\%base_name%.raw"
exit
:stock
for %%? in ("%~dp0sys\stock binary\sp1.nb0") do set "out_filesize=%%~z?"
cls&call :drawhead
if exist "%~dp0sys\stock binary\sp1.nb0" echo.&echo. Preparing to flash a binary copy of the stock flash screen.&call :fla**** "%~dp0sys\stock binary\sp1.nb0"
cls&call :drawhead&echo. The stock binary image is missing, please re-download program.
ping -n 4 127.0.0.1> nul
start "" http://forum.xda-developers.com/nexus-9/themes-apps/tool-splash-screen-flasher-v1-0-t2931575/post56561564#post56561564&pause>nul&exit
exit
:fla****
if not "%base_name%"=="Stock Google Splash Screen" if defined showbeforeflashing call :regen "%~1"
cls&call :drawhead&echo. ____________________________________________________________________________&echo.
"%~dp0sys\bin\adb.exe" kill-server&&echo.
echo. Your image is ready to be flashed^!
echo. Press any key to reboot to the bootloader.&&pause>nul&&echo.______________________________________________________________________________&&"%~dp0sys\bin\adb.exe" reboot bootloader&&echo.&&echo.After your bootloader screen shows up, please verify that&&echo.you are in ^"FASTBOOT USB^" mode and press enter to flash the splash image.&&pause>nul
if exist "%~1" (
for %%? in ("%~1") do set /a "out_filesize=%%~z?"
if not "!out_filesize!"=="%expected_filesize%" (goto :badsize
) else ("%~dp0sys\bin\fastboot.exe" flash splash1 "%~1"&&echo.______________________________________________________________________________&&echo.&&echo.&&echo. Done..Press any key to reboot to your new splash screen..&&pause>nul&&"%~dp0sys\bin\fastboot.exe" reboot&&"%~dp0sys\bin\adb.exe" kill-server)
) else (goto :nofile)
rd /s /q "%~dp0\sys\temp"
exit
:regen
set "out_path=sys\temp"
if not exist "%~dp0%out_path%\" mkdir "%~dp0%out_path%"
%ffmlog%"%~dp0sys\bin\ffmpeg.exe" %hidebanner% %loglevel% -f rawvideo -vcodec rawvideo -pix_fmt rgb565 -s 1536x2048 -i "%~1" -y "%~dp0%out_path%\%base_name%_test.png"
echo.&echo. This is what it looks like when it is converted back into a viewable image.
echo. Close the image when you are done to continue&ping -n 4 127.0.0.1> nul
if defined usedefaultviewer start "" "%~dp0%out_path%\%base_name%_test.png"
if not defined usedefaultviewer rundll32 "%ProgramFiles%\Windows Photo Viewer\PhotoViewer.dll", ImageView_Fullscreen %~dp0%out_path%\%base_name%_test.png
goto :eof
:badsize
cls&call :drawhead&echo.
echo. The image you flash has to be 1536x2048..
echo. The filesize of the raw image in turn would
echo. be %expected_filesize%.&echo.&echo.Your raw image size is !out_filesize!&echo.&echo.&echo. Press Enter to delete file and exit.&pause>nul
del /q "%~dp0%out_path%\!base_name!.raw"&"%~dp0sys\bin\adb.exe" kill-server
exit
:drawhead
echo. __________________________________________________________________________-_-
echo. ____________________________________________________________________________
echo.
echo. Nexus 9 Splash Tool: v%vers% by makers_mark
echo. ____________________________________________________________________________&echo.
if not defined image_file (echo. Loading..............) else (echo. File: "%base_name%%ext%")
if defined width if defined height echo. Resolution: %width%x%height%
if defined out_filesize (echo. Size: %out_filesize%) else (echo. Size: %osize% ^(image hasn't been converted^))
echo. Target Size: %expected_filesize%
echo. ____________________________________________________________________________
echo.
goto :eof
:nofile
cls&call :drawhead&echo.&echo. You have to drag and drop your png, bmp, or jpg file onto&echo.the %~nx0 batch file&echo.&pause>nul&"%~dp0sys\bin\adb.exe" kill-server
exit
ty
so PNG's work awesome
rename the .img to bmp
USBhost said:
rename the .img to bmp
Click to expand...
Click to collapse
Cool! thanks!
How to solve the signature mismatched problem when flash a modified bootloader.
I have read your post about Google Splash on Nexus 7. I have found out the Google logo. with your help. However, when I flash the new bootloader into my N7, I got signature mismatched problem. Do you have any experience about this situation?
Hi,
Is not working here, i drop my png in n9splash.bat and the .bat closes itself and nothing else in the files.
heyker said:
I have read your post about Google Splash on Nexus 7. I have found out the Google logo. with your help. However, when I flash the new bootloader into my N7, I got signature mismatched problem. Do you have any experience about this situation?
Click to expand...
Click to collapse
Quick note to anyone reading this thread:
This user is talking about the Nexus 7 2013, it has a totally different bootloader setup than the Nexus 9. The thread that the user is referring to is this one: http://forum.xda-developers.com/showthread.php?t=2764354Yeah, after I figured out how the image was encoded on the Nexus 7, the first thing I did was to try to change the image. I didn't try much and here is why. The signature mismatch is a safety in fastboot. There are ways around that (like "DD"), but then you would still have to conquer the even bigger wall of Qualcomms "Secure Boot". If you are really wanting to try and change it, you would have to find some way to disable secure boot. In your bootloader screen, there is some green text that says "Secure Boot: Enabled" (or something like that), you would need it to say "Secure Boot: Disabled"
I'm not saying it isn't possible, but no one has ever shared how to do that. There is a series of file checks that happen, where one file in the bootloader checks the next (or previous) and so on. To learn more about it, please visit E:V:A's thread about the bootloader. It is real thorough and involves a lot of leaked information, because after all, it is proprietary stuff you are messing with. While you are there give him a thanks if you don't mind.:good:
Max128 said:
Hi,
Is not working here, i drop my png in n9splash.bat and the .bat closes itself and nothing else in the files.
Click to expand...
Click to collapse
What version of Windows are you trying it on? Do you for some reason have Command Extensions disabled? Can you upload the file on here, or somewhere else and send me a PM with the link?
makers_mark said:
What version of Windows are you trying it on? Do you for some reason have Command Extensions disabled? Can you upload the file on here, or somewhere else and send me a PM with the link?
Click to expand...
Click to collapse
I use windows 8.1, Here is the picture i want convert: http://i.imgur.com/meGTv5n.png
Max128 said:
I use windows 8.1, Here is the picture i want convert: http://i.imgur.com/meGTv5n.png
Click to expand...
Click to collapse
I've sucessfully flashed your image using my Windows 7 computer, and I just did it on a Windows 8 computer. I'm updating to Windows 8.1 right now, to see if that makes a difference. One possibility is that for some reason "command extensions" has been disabled on your computer. You can test it by editing the n9splash.bat file with any text editor, and insert this at the very top line above everything else.
Code:
setlocal enableextensions
(it should be on it's own line, above everything else)
Save the batch file, and try it again.
@Max128
It worked fine on Windows 8.1 too. Are you trying to do this with v1.6 or v1? Because you can't use images that are out of aspect or out of resolution on v1. You can use any image with v1.6.
EDIT:
I've attached two files.
meGTv5n.cab is the raw image that you need to flash if you want to do this manually. It is not a cabinet file like the extension suggests, it is the raw rgb565 file of your htc logo. "fastboot flash splash1 meGTv5n.cab"
meGTv5n_test.png This is how the splash would look. This is also a file that you could use on version 1.0, if that is indeed what you have.
Hi,
I add your line like you said: setlocal enableextensions , and is still not working , the command prompt closes after i drop the image and nothing. Yes i use your last version 1.6.
Now.. i have flash your meGTv5n.cab and is working great on my tablet. Thanks you!
Have you find why this does not work for me? the conversion.
Max128 said:
Have you find why this does not work for me? the conversion.
Click to expand...
Click to collapse
No. It is really hard (but not impossible) for me to fix a problem when I can't replicate the symptoms. I have drawn it up as a fluke, since It worked perfectly for me on the same OS, but I didn't know you were still interested. But, if you want to try to make it work, I do have some things to try.
Copy and paste this code below. Save it as anything.bat. DRAG a file onto it, and report if it runs, AND when it stops running, if it does.
Code:
@echo off
echo.Echo off....Press any key.
pause>nul
color 0b
echo.Color set...Press any key.
pause>nul
setlocal enabledelayedexpansion
echo.Delayed expansion enabled.....Press any key.
pause>nul
set "vers=2000"
echo.Variable set...Press any key.
pause>nul
title Nexus 9 Splash Tool v!vers!
echo.Title set....Press any key.
pause>nul
mode con cols=78 lines=45
echo.New windowsize...Press any key.
pause>nul
echo.The file you dropped is %~1
echo.Press any key.
pause>nul
echo.Did you make it this far....
pause>nul
In the meantime, I have no problem converting images for you, if you pm me the image or link.
I created a .bat with your code and I drag an image into it.
I got this:
Echo off....Press any key.
Color set...Press any key.
Delayed expansion enabled.....Press any key.
Variable set...Press any key.
Title set....Press any key.
'mode' n'est pas reconnu en tant que commande interne
ou externe, un programme exécutable ou un fichier de commandes.
New windowsize...Press any key.
The file you dropped is
Press any key.
Did you make it this far....
Also when i drag my picture in the n9splash.bat, the window closes right away but I managed to see: findstr is not recognized as an internal control ..
This can probably help.
@Max128
Yeah, that can definitely help.
Open a cmd "command" window and type:
Code:
findstr /?
does it say the same thing?
Yes the same thing.
Max128 said:
Yes the same thing.
Click to expand...
Click to collapse
If you type:
Code:
echo.%path%
into command window, is "c:\windows\system32" listed?
No is not listed how fix it?
Max128 said:
No is not listed how fix it?
Click to expand...
Click to collapse
That's the problem. In the windows command shell you have internal commands; that are built into the command shell, and you have external commands, that are actual programs (most of which are shipped with Windows, but you obviously can make your own). I always thought findstr was a built in Windows internal command, but thanks to the pros at www.dostips.com, I have found out that is is an external command. It is located at C:\Windows\system32\findstr.exe (your drive letter may vary).
Here is how you change your path in Windows. You don't want to delete everything that is already there, you just want to add "c:\windows\system32" to the path. Make sure there is a semicolon separating it and all the other variables too.