View Full Version : [release] nbimg: HTC splash screen tool
pof
3rd July 2008, 10:49 AM
nbimg is a command line tool which allows to convert HTC Splash Screen images from NB to BMP and create NB splash screens from BMP format. Any splash screen size is supported (yes, it works for Diamond or Athena at 640x480 resolution too).
=== nbimg v1.1
=== Convert NB <--> BMP splash screens
=== (c)2008 Pau Oliva - pof @ xda-developers
Usage: nbimg -F file.[nb|bmp]
Mandatory arguments:
-F <filename> Filename to convert.
If the extension is BMP it will be converted to NB.
If the extension is NB it will be converted to BMP.
Optional arguments:
-w <width> Image width in pixels. If not specified will be autodetected.
-h <height> Image height in pixels. If not specified will be autodetected.
-t <pattern> Manually specify the padding pattern (usually 0 or 255).
-p <size> Manually specify the padding size.
-n Do not add HTC splash signature to NB file.
-s Output smartphone format.
NBH arguments: (only when converting from BMP to NBH)
-D <model_id> Generate NBH with specified Model ID (mandatory)
-S <chunksize> NBH SignMaxChunkSize (64 or 1024)
-T <type> NBH header type, this is typically 0x600 or 0x601
Example to convert a NB to BMP:
$ ./nbimg.exe -F diamond137.nb
=== nbimg v1.1
=== Convert NB <--> BMP splash screens
=== (c)2008 Pau Oliva - pof @ xda-developers
[] File: diamond137.nb
[] Image dimensions: 480x640
[] Encoding: diamond137.nb.bmp
[] Done!
Example to convert a BMP to NB:
$ ./nbimg.exe -F diamond137.bmp
=== nbimg v1.1
=== Convert NB <--> BMP splash screens
=== (c)2008 Pau Oliva - pof @ xda-developers
[] File: diamond137.bmp
[] Encoding: diamond137.bmp.nb
[] Image dimensions: 480x640
[] Done!
Download
Windows version attached to this post.
Linux version and source code available in my blog (http://pof.eslack.org/blog/2008/07/03/nbimg-htc-splash-screen-tool/).
MarcLandis
3rd July 2008, 11:07 AM
This is awesome!
Thanks.
R3PUBL1K
3rd July 2008, 01:56 PM
nice one...
!Aman!
3rd July 2008, 02:07 PM
this is amzing tool :)
tom_codon
3rd July 2008, 02:21 PM
:) well done brother
pudgedaddy
3rd July 2008, 02:49 PM
OK so i took a .bmp file i created and converted it to .nb ... what exactly do i do next? can you only inject this file while a ROM is being cooked? or do i need to overwrite an existing file in the \windows directory?
I am using Kavana 6.1 ROM for the Excalibur BTW...
pof
3rd July 2008, 03:03 PM
This has nothing to do with OS side. You need to create a NBH file for your device, with the NB splash screen inside, and flash it to replace the bootscreen.
pudgedaddy
3rd July 2008, 03:38 PM
so how to do "inject the .nb file int the .nbh file?
i have the original .nbh file and i've created the .nb file... what's the next step exactly?
and it's an .nbh unsigned file so its not locked down
pof
3rd July 2008, 03:48 PM
Use any tool available to create NBHs, for example HTC Rom Tool (http://forum.xda-developers.com/showthread.php?t=311909). To flash your custom NBH file you'll need USPL or HardSPL installed on your device. Also for Excalibur specific instructions look here ("http://forum.xda-developers.com/showpost.php?p=2366103&postcount=13), because you'll need to add the smartphone signature manually.
pudgedaddy
3rd July 2008, 04:02 PM
i tried using the htc rom tool but when it loads, it fails to update the devices list. says internet connection probs... im on the net to its not my internet connection. oh well. guess i will wait a little longer..... im really a noob when it comes to this part of modding. All i want to do is to replace the first splash screen that comes up ( the HTC one ) and the second splash screen ( the windows mobile one) with the two i created.
pudgedaddy
3rd July 2008, 06:21 PM
ok i finally created an .nbh file from the .nb file i used to get the mainsplash.nb file. But when i do the flash all i get is a green gradient filled mainsplash screen and not the image that i converted. Was there something i did wrong? bear in mind i have the HTC Excalibur Smartphone
Basically since all i wanted to do was to flash the main splash screen i created a .txt file with this info:
EXCA10000
1111111
1.11.0.0
USA
600,02_MainSplash.nb
i made sure i named the created .nb file to "02_MainSplash.nb" and dropped it into the directory where the .txt file was located. I got the output .nbh file and compared it with my original .nb file and it was 1kb larger than the .nb.....
When i created the .nb file i used the code you posted on another thread and it looked like this: nbimg.exe -F MainSplash.bmp -w 320 -h 240 -n .... the name of the file was MainSplash.bmp any suggestions? i had heard you talk about adding the "this is smartphone signature" manually. Could this be the problem? If that's the case, i suck as hexediting, so maybe you can hexedit it 4 me?
also note that i got a flash wtire error too when running the RUU
sean222
3rd July 2008, 07:41 PM
When I first saw this thread I was like "yay! a new EASY way to flash a just the boot image!" But I was wrong, just gets you one step closer :( Still thanks for the tool tho...what would be nice is a tool that you just insert the BMP or image, then it generates a flashable .nbh like the one I attatched (but that's asking too much) :D. The .nbh below is only 500kb and it flashes to my Vogue and ONLY replace the first boot screen (then hard-resets the phone). How did that person make that!?
pudgedaddy
3rd July 2008, 08:02 PM
So here's the deal on my ventures.
I've found out that although the excalibur is a 320 X 240 sozed screen the actual .bmp and .nbh files are 240 X 320 ... I verified this by extracting the .nb and .bmp files from the HTC ROGERS and TMO .nbh files the images looked fuzzy, but they work when they are injected into my phone. So here's what i did. I created a .bmp image from scratch using 320 X 240 attributes. the name of the file was 00_MainSplash.bmp. I then used pof's nbimg.exe file and typed in cmd window: nbimg.exe -F 00_MainSplash.bmp -w 320 -h 240 -n
. then it gave me 00_MainSplash.bmp.nb which i renamed and took off the extra .bmp in the middle. Then i did this .nb file in reverse by typing nbimg.exe -F 00_MainSplash.nb to see what the output .bmp file would look like. When i looked at the output .bmp file it was all distorted in the same way the official carrier .bmp files looked like. So i figure ok, i got it correct now. Here's where the issue occurs. I use the nbhgen.exe file and type nbhgen dash.txt (the .txt file is called dash.txt)
The text reads:
EXCA10000
1111111
1.11.0.0
USA
600,00_MainSplash.nb
so i execute it and it gives me the RUU_signed.nbh file . The file size is around 151kb I then use the RUU updater and execute that (after i run the USPL CID Bypass) Then after the updater states it's successful the phone reboots and gives me a green gradient screen as the first splash screen and not the file i created. I figured i must be going something wrong (obviously)
if i try and re-extract the .nb files out of my new .nbh file using NBHExtract.exe the only file that turns out is: 00_MainSplash.nb ... now when i ran that same utility on the Tmobile, Rogers and HTC official. nbh files the output files were 2: one was: 00_MainSplash.nb & 00_MainSplash.bmp,,, so it seems like the .nbh files should contain a .nb and a .bmp file somehow.
So i went back to my dash.txt file and changed it to read:
EXCA10000
1111111
1.11.0.0
USA
600,00_MainSplash.nb
600,00_MainSplash.bmp
i also tried:
EXCA10000
1111111
1.11.0.0
USA
600,00_MainSplash.nb
601,00_MainSplash.bmp
and tried using that output file with the RUU updater. Either way it gave me a flash error and kept that same green gradient screen upon first boot.
So if anyone can tell me where i fouled up i'd be indebted to you.
edit: ok a retract what i said about the nbhextract.exe not outputing 2 files when i extract the .nb file i created. So there must be something else im not doing right..... pof had mentioned something in another thread about using a hex editor to sighn the .nb file for smartphones. but i have no idea how to do that.
Edit2: I think one of two things are going on. 1. The .nb or .nbh file must be signed for smartphones like pof mentioned.... or 2. the nbhgen.exe is somehow malforming the format of the image ( such as converting it from 320x240 to 240x320 ) or the certificate doesnt work with the excalibur that nbhgen uses
pof
3rd July 2008, 08:48 PM
Wait a while and I will make it smartphone friendly :) and with option to directly generate NBH for you. I'll update the first post when its done.
pudgedaddy
3rd July 2008, 09:30 PM
Wait a while and I will make it smartphone friendly :) and with option to directly generate NBH for you. I'll update the first post when its done.
friggin sweet! thanks a lot! i'll make sure to "spread the wealth" if i can get it workin on my phone.
pudgedaddy
5th July 2008, 09:55 PM
Wait a while and I will make it smartphone friendly :) and with option to directly generate NBH for you. I'll update the first post when its done.
any timeline on when you expect this development to be completed?
pof
7th July 2008, 05:32 PM
Check the first post, I updated it.
Nosferatos
11th July 2008, 02:09 PM
pof, please, check this thread http://forum.xda-developers.com/showthread.php?t=404449&highlight=splash, for my problem
farukb
11th July 2008, 02:37 PM
mucas gracias...or something like that:D
how do great roms always have bad(dumb) splashes...well not any more
thanks for the update
canardwc
18th July 2008, 06:16 PM
Hi All,
What is the HTC Thouch Diamond MODEL ID ? Where can I found it?
Regards,
Sebastien
WIzard200x
18th July 2008, 06:29 PM
Thanks Pof... :)
This little tool comes in way handy.
Look forward to trying this.
Great Work, Again :D
pudgedaddy
20th July 2008, 06:54 AM
This still doesn't seem to work for smartphones ( or at least mine ). I have an HTC Excalibur 620 running on Kavana Wm 6.1 ROM. I have tried using your .nbh generator function but it doesnt work. to give you some examples of what i've tried here they are:
I first created a .bmp image with 320 X 240 dimensions
i named it MainSplash.bmp
then in cmd window, i typed c: nbimg -F MainSplash.bmp -w 320 -h 240 -n -s -t 0 -p 0 -D EXCA10000 -S 1024 -T 0X600
i've also tried : c: nbimg -F MainSplash.bmp -w 320 -h 240 -s -t 0 -p 0 -D EXCA10000 -S 1024 -T 0X600
and i've tried:
c: nbimg -F MainSplash.bmp -w 320 -h 240 -n -s -D EXCA10000 -S 1024 -T 0X600
Each one of these has generated either error 228: invalid file size or, error 226 flash write error. I've also tried just only creating the .nb file and using bot's .nbh generator. i've also tried dark simpson's ROM builder with the same results. B-4 ver 1.1 oh this software, i was at least getting some sort of change with my screen ( although it was a green screen and not what i created ) at least it wasn't giving me any errors. If someone can help me with what i might be doing wrong, i'd appreciate it.
BTW... i am running the spl CID bypass b-4 running the RUU
pof
22nd July 2008, 05:05 AM
I first created a .bmp image with 320 X 240 dimensions i named it MainSplash.bmp
The resulting NB file size must be equal to the original NB splash screen file size, in case of Excalibur, NB file for splashscreen is 262144, so you need to calculate the padding.
Try this:
nbimg -p 108514 -n -s -w 320 -h 240 -F MainSplash.bmp -T 0x600 -S 1024 -D EXCA10000
mahsidi
25th July 2008, 04:18 PM
Hi how do i set up my splash screen i have made a .nbh file of just the splash screen using NBHUtil. what do i do next
pof
29th July 2008, 11:10 AM
what do i do next
Flash it? :)
mugglesquop
30th July 2008, 12:30 PM
hey,
whenever i try and run the nbimg.exe (either version), the DOS box appears, then closes quickly.
Any reason for this?
(trying to run off the desktop with Windows XP Pro)
cheers,
pof
31st July 2008, 10:01 AM
@mugglesquop: Yes, it's a command line app. You need to run it from a cmd prompt.
donjuantip
31st July 2008, 08:33 PM
why isn't the file, ms_splash.png, being loaded on bootup for me???
i still see the plain old windows mobile screen instead of the windows mobile 6.1 screen? is it built into the rom somewhere or the registry? how can i point to \windows\ms_splash.png??
pudgedaddy
1st August 2008, 05:37 AM
The resulting NB file size must be equal to the original NB splash screen file size, in case of Excalibur, NB file for splashscreen is 262144, so you need to calculate the padding.
Try this:
nbimg -p 108514 -n -s -w 320 -h 240 -F MainSplash.bmp -T 0x600 -S 1024 -D EXCA10000
Well i tried this code . and although i didnt get a flash error when running the RUU, the splash screen didnt change from the previous one. Basically, nothing changed after running the .nbh via RUU. IF you want to see the actual file i'm trying to use i will upload it if you want to see it.
pof
1st August 2008, 01:44 PM
@donjuantip: this tool is for the HTC Splash screen that appears when you boot the device, and WinCE has not booted yet. Has nothing to do with the windows mobile splash screen, sorry.
@pudgedaddy: Feel free to send me the NBH so I can see what is wrong.
ov2rey
1st August 2008, 02:34 PM
sorry do this software change the start up screen????
i mean as change the starting up pda image?
donjuantip
1st August 2008, 02:45 PM
sorry back.
pudgedaddy
2nd August 2008, 04:24 PM
@donjuantip: this tool is for the HTC Splash screen that appears when you boot the device, and WinCE has not booted yet. Has nothing to do with the windows mobile splash screen, sorry.
@pudgedaddy: Feel free to send me the NBH so I can see what is wrong.
@ pof. PM sent with .nbh link
pof
2nd August 2008, 07:08 PM
@ pof. PM sent with .nbh link
You forgot the -T 0x600 in the command I told you before. Just in case you didn't, the "x" must be lowercase.
pudgedaddy
2nd August 2008, 09:06 PM
You forgot the -T 0x600 in the command I told you before. Just in case you didn't, the "x" must be lowercase.
yup it was the upper X instead of the lower x that was the issue. This worked perfectly.... I'm going to write out an instruction manual out on the excalibur forum using your program (if you dont mind) and our RUU and CID bypass procedure..... if that's ok...
pudgedaddy
2nd August 2008, 09:35 PM
BTW.... is there a way to also change the second splcashscreen that comes up on the excalubir? basically what excalibur users see is first the splash screen that is usually your mobile operator's splash screen. then after that one the second is the splash screen with the windows mobile logo and background, then the phone shows the home screen. I tried doing this with the same command line, but with 0x601 and that just replaced the first screen and then i tried it with 0x700 and i got a flash error. so basically if you can tell me if that can be changed , or how then i'd appreciate it.
pof
3rd August 2008, 03:46 AM
the second is the splash screen with the windows mobile logo and background
Excalibur only has one Splash Screen in ROM, that is the 0x600 part of the NBH. The second splash screen you see (windows mobile logo) is part of the OS ROM, so you have to cook the OS ROM to change that, most probably it's called welcomehead*.png file in \windows\ folder.
pudgedaddy
3rd August 2008, 08:04 PM
Excalibur only has one Splash Screen in ROM, that is the 0x600 part of the NBH. The second splash screen you see (windows mobile logo) is part of the OS ROM, so you have to cook the OS ROM to change that, most probably it's called welcomehead*.png file in \windows\ folder.
weird.... i don't have that file and i've checked EVERY SINGLE IMAGE FILE i could find in the /windows root directory and none of them are the 2nd boot screen that i see.
this is the second boot image i see:
http://i36.photobucket.com/albums/e21/pudgedaddy/WM6_Logo.png
i have basically made a reg hack to include another boot screen, but it ends up giving me 3 boot screens. 1, first boot screen from your nbimg proggy, 2 the windows boot screen (shown above) 3, my other custom boot screen (using reg hacks) ... so i really don't know where this image would be located, but i figured since this was a cooked (kavana 6.1) ROM, that the OS boot image could have been omitted and instead a second flash .nbh image was used to emulate the 2nd ( OS BOOT) image.
Liferepeat
3rd August 2008, 10:53 PM
Prof
You have already proved your talent. So let's cut the crap and concentrate on bricking and unlocking the thing as well as find how to operate the iGO on it.
Cheers genious.;)
pof
4th August 2008, 11:35 AM
@pudgedaddy: This is for sure inside the OS rom, not a NB splash screen.
@Liferepeat: wtf?
pudgedaddy
5th August 2008, 04:48 PM
@pudgedaddy: This is for sure inside the OS rom, not a NB splash screen.
@Liferepeat: wtf?
you have any idea how i might change that screen then?
pof
6th August 2008, 09:36 AM
you have any idea how i might change that screen then?
Look in \windows\ for a Hidden file named "welcomehead.96.png". To change it on a running ROM you need a decent file browser like total commander, won't work with the default windows file explorer. Format is PNG and size cant exceed about 100Kb.
mbarvian
9th August 2008, 07:30 PM
what do we put in for device_id for kaiser?
mbarvian
9th August 2008, 08:44 PM
after doing this:
nbimg.exe -F splash.bmp
nbimg.exe stops responding
what now?
natong
18th August 2008, 11:56 AM
how to calculate padding size ?
mccune
12th September 2008, 02:22 PM
after doing this:
nbimg.exe -F splash.bmp
nbimg.exe stops responding
what now?
I had the same problem when I wanted to convert a BMP other then 24 bits. Might be your problem as well :)
----
I'm having a problem with my splash screen. It's completly white.
Used the tool from the first post to convert from BMP to NB.
After this I've used NBHUTIL to convert from NB to NBH.
One thing that happend was when I wanted to cook the NB file into my persnal ROM I got the message "File is larger than default, do you want to continue?". I chose "Yes". Thought it might be bigger because I used a different BMP.
Of course I flashed my device and now I can't get rid of the white screen.
This is what I've tried to fix it:
- hard reset
- flashed with users boot splash from this topic.
- flashed completly different ROM
- HardSPL again
- flashed with new ROM again.
Hope somebody can help me out here...
Small update:
My device: Touch Diamond (MDA Compact IV)
In another thread somebody told me to use the SplashTool. This seems to be for qVGA devices but I tried it anyway.
No positive result so far.
mccune
13th September 2008, 12:46 PM
Update after one day.
I did discover what I must have done wrong.
For the splash screen I used a BMP file with dimensions 640x640 instead of 480x640.
The HTC ROM Tool gave the following message when I selected the NB file:
"Size of this file is greater than default. Do you want to assign this file?".
Since I thougt it was Ok I selected Yes.
I've tried multiple solutions but I just can't seem to get rid of this white splash screen :(
Also tried extracting an original splash screen and rebuild it to flash my device. No changes so far.
There are multiple topics about splash screens, so I was wondering where this problem should be placed?
So far I found the following topics:
Change Splash Screen (Diamond section) (http://forum.xda-developers.com/showthread.php?t=404449)
htc rom tool: new software to deal with ROMs (NEW RELEASE 1.1.0) (http://forum.xda-developers.com/showthread.php?t=311909)
I guess I will continue in the HTC Rom Tool thread since this is probably where I screwed up big time.
Moved this problem to THIS (http://forum.xda-developers.com/showthread.php?p=2635380#post2635380) thread.
UPDATE: Problem solved!! Downloaded the latest HTC ROM Tool and rebuild my ROM using the original Splash screen. I'm one happy camper now :D
ilkhan
18th September 2008, 01:53 AM
will this work for the CDMA diamonds?
What would the -D -S and -T arguments if so to go direct to .nbh?
bennec83
19th September 2008, 12:59 PM
When i run the exe nothing happens, a small windows flashes up and disappears instantly.
I have my bmp created but this doesnt seem to work for me
please can someone tell me how to use this?
freddy_krueger
24th September 2008, 10:43 PM
When i run the exe nothing happens, a small windows flashes up and disappears instantly.
I have my bmp created but this doesnt seem to work for me
please can someone tell me how to use this?
For me , same problem , i'm under vista 64sp1 and when i launch your program, it open window and close it immediately :o
I'm so sick , this app appeared too great
tussi4711
3rd October 2008, 06:58 AM
hi all,
interesting thread. As interesting, that I had to play a bit, because the magenta splash screen makes me sick. Oh, got my raphael today, flashed it with German HTC rom and still kept the t-mobile splash.
I took the org HTC logo found in the HTC rom, made a 480x640 image, converted it and let it run onto my new toy. Nothing went wrong and magenta is history. ;-)
might be someone of you will check the file, just to be sure, that there is nothing wrong.
many thanks to all.
cheers
tussi4711
jlito
16th October 2008, 06:33 PM
First of all, thanks pof for this great tool, it really makes things easier...
Unfortunatelly I'm having some difficulties in getting this done. When I create the nbh file it keeps prompting that the file is too big and it turns out to be useless when I try to flash it.
Please, can you help me get this done with the right parameters ?
by the way, my phone is an elfin.
thank you.
-----------------------
nevermind, I ended up figuring out how to make it work....
the_maker
23rd October 2008, 01:37 AM
Hi Pof, i have a tiny question, i hope u can help. First i don't remember if on the first boot screen where it shows the R; G & D numbers, there is also an red H (just H). i had a problem of some sort, and now i have very low speaker quality, i don't know why :( and since then, i noticed the red H..
Can u help me? Thanks..
Thimo83
25th November 2008, 09:03 PM
Im trying to maken my own splashscreen for my Elfin.
I used nbimg to convert a .bmp to .nbh
I tried the following command:
nbimg -F EARTH2.bmp -D T-MOB003
But when i try to flash the .nbh file with RUU, it is giving ERROR 228 (Invalid File Size).
The original splashscreen filesize is 192kb and the nbimg output .nbh file is 256kb.
My question is, how to change the filesize to 192kb?
Thanks in advance.
el_gery
15th December 2008, 08:07 PM
Pof is a genius !
thanks for your work and patience, Pof.
your next beer is on me. ;)
paolonio
5th January 2009, 01:43 AM
Thank you POF for this incredible tool!!!
SomethingWicked
7th January 2009, 11:34 PM
For me , same problem , i'm under vista 64sp1 and when i launch your program, it open window and close it immediately :o
I'm so sick , this app appeared too great
you have to run it from within an already open dos command box! to get one on xp (i dont use vista - sorry) click [start] then [run] and type 'cmd' (without the quotes of course) into the run box. that will open a dos command line box with the 'c:\' prompt. thats where you use prof's tool.
hope this helps... --jesse
Wolfpaxx
26th January 2009, 07:25 PM
First of all, thanks to POF! It's really a great, simple tool!
But I have one question: I tried to flash my HTC Touch HD with a bmp-to-nbh, but now I got a black bar at the bottom. The pixels in the last line are cut in the middle, it looks like it reached the end-of-file.
The BMP is not corrupted, I tried it with different images and the arguments:
nbimg -F test.bmp -D BLAC100 -S 64 -T 0x600
I think I missed out one or more arguments. Can anybody help me?
Thanks in advance!
paolonio
8th February 2009, 01:46 PM
First of all, thanks to POF! It's really a great, simple tool!
But I have one question: I tried to flash my HTC Touch HD with a bmp-to-nbh, but now I got a black bar at the bottom. The pixels in the last line are cut in the middle, it looks like it reached the end-of-file.
The BMP is not corrupted, I tried it with different images and the arguments:
nbimg -F test.bmp -D BLAC100 -S 64 -T 0x600
I think I missed out one or more arguments. Can anybody help me?
Thanks in advance!
Please take a look here:
http://forum.xda-developers.com/showthread.php?t=468444
and also in the wiki pages:
http://wiki.xda-developers.com/index.php?pagename=HTC_Blackstone
I made a quick guide for the HD splash screen, using this marvelous sw called nbimg :D
Cheers
Wolfpaxx
8th February 2009, 05:31 PM
Please take a look here:
http://forum.xda-developers.com/showthread.php?t=468444
and also in the wiki pages:
http://wiki.xda-developers.com/index.php?pagename=HTC_Blackstone
I made a quick guide for the HD splash screen, using this marvelous sw called nbimg :D
Cheers
Thanks for your answer!
I already read your posts and all the others and I would love to follow your quick guide!
But besides my distaste of registering in all forums on the world, I couldn't register on htcforum.com because I simply don't speak Italian.
And if I'm guessing right, the guide is also in Italian?!?
And all other guides and the wiki are pointing back on this thread, your guide or non-nbimg-solutions.
So... I'm screwed! :eek:
...unless you would help me out by posting your guide here or sending it to me via PM. :rolleyes:
Thank you in advance!
ramakrishna
14th February 2009, 07:27 AM
im trying to maken my own splashscreen for my elfin.
I used nbimg to convert a .bmp to .nbh
i tried the following command:
Nbimg -f earth2.bmp -d t-mob003
but when i try to flash the .nbh file with ruu, it is giving error 228 (invalid file size).
The original splashscreen filesize is 192kb and the nbimg output .nbh file is 256kb.
My question is, how to change the filesize to 192kb?
Thanks in advance.
tried several times with no sucess......pls helppppppp...........
Celso Marques
18th February 2009, 01:59 PM
For all those are having troubles (like file size and/or ugly green splash instead your art) with this tool, I can reach the goal only after a big help of the chef !Aman!, thanks guy! :D
So, try this command (change the Splash.bmp with your .bmp file, of course):
nbimg.exe -p 0 -s -F Splash.bmp
pay attention to the -s parameter, it did all difference for me. And forget the file size problems using the htcrt tool, the application will do the job for you!
I got it for an Elfin device, but I think it work for others devices, since you use the htcrt tool to create the .nbh image file.
ramakrishna
20th February 2009, 01:53 AM
:)hey hai Celso Marques thankyou very much.I was looking for this for quite some time. yes -s has really made the difference and chnaging the splash screen became very easy and also i have seen ur gifts on onyx forum which were really cool
thnx again
)For all those are having troubles (like file size and/or ugly green splash instead your art) with this tool, I can reach the goal only after a big help of the chef !Aman!, thanks guy! :D
So, try this command (change the Splash.bmp with your .bmp file, of course):
nbimg.exe -p 0 -s -F Splash.bmp
pay attention to the -s parameter, it did all difference for me. And forget the file size problems using the htcrt tool, the application will do the job for you!
I got it for an Elfin device, but I think it work for others devices, since you use the htcrt tool to create the .nbh image file.
Celso Marques
20th February 2009, 12:39 PM
Yeah! Great news!
But please tell us which device it's yours.
And don't forget to thank to the chef !Aman!, he is the man behind our goal:D I only share the expience here.
Lokosis
27th February 2009, 06:49 PM
I'm not exactly sure what my problem is as I've tried many command line options, but I always get "No padding added. Check file size." error and a .nb file size of 0kb. How do I 'add' padding or fix file size of .bmp?
EDIT: Fixed the problem with padding, had to help Photoshop save the bmp as 24 bit instead of the forced 8 bit it wanted.
BUT, after compiling and flashing, the splash screen does not change on the device.
paolonio
4th March 2009, 10:00 PM
For those who are still facing the problem with the splash screen...
Here you can download the quick guide ITA + WWE and tools, I made it for the HD, but the basic concept should be applicable also for other devices
http://rapidshare.com/files/179849983/Splash_HD.rar
6Fg8
28th May 2009, 12:43 AM
For those who are still facing the problem with the splash screen...
Here you can download the quick guide ITA + WWE and tools, I made it for the HD, but the basic concept should be applicable also for other devices
http://rapidshare.com/files/179849983/Splash_HD.rar
awesome guide paolonio, gave it a try and worked out really nice!
Thanks!
dundeal67
25th September 2009, 08:19 AM
I've been trying for hours and this still isn't working for me.
This is what I typed in cmd in vista:
c:\users\administrator\desktop\nbimg.exe nbimg -p 108512 -t 255 -w 320 -h 240 -F splash.bmp -T 0x600 –S 64 -D MAPL100
It would always return with
=== nbimg v1.1
=== Convert NB <--> BMP splash screens
=== (c)2008 Pau Oliva - pof @ xda-developers
[] File: splash.bmp
[!!] Could not open 'splash.bmp'
Can anyone tell me what I'm doing wrong here?
EDIT: I figured it out...the picture file wasn't in the same directory lol.....everyone make sure its in the same directory! cmd is very specific, and therefore tricky for a cmd virgin like me.
alvin8088
31st December 2009, 05:58 PM
thanks a lot
guanodude
2nd January 2010, 02:45 AM
Thanks, this can help me make my own splashscreen!
Badwolve1
6th January 2010, 10:26 PM
can't get it to work on win 7 Pro, build 7600 32bit
Error, Appcrash 01
hobot39
10th January 2010, 01:19 AM
how calculate padding? What size padding in my htc shift. Thanks:confused:
4D3
12th January 2010, 03:24 AM
Hi,
Is there a tool like this for WVGA screens like the HD2?
I used this for the diamond and it was great!
Thanks in advance
MG
[★]
2nd February 2010, 10:22 PM
Hi,
Is there a tool like this for WVGA screens like the HD2?
I used this for the diamond and it was great!
Thanks in advance
MG
Check out this thread (http://forum.xda-developers.com/showthread.php?t=625911), he has just released a splash screen for our HD2's (an actualy splash screen this evening) and he recomended this program, so I assume it works.
And btw this isnt opening, everytime I try to open it, it closes instantly (dos box appears and re appears in a flash) Im running win7 32bit which is probably the cause of my problems, but it didnt work when running it in compaibility mode for xp/vista
4D3
3rd February 2010, 12:47 AM
;5525830']Check out this thread (http://forum.xda-developers.com/showthread.php?t=625911), he has just released a splash screen for our HD2's (an actualy splash screen this evening) and he recomended this program, so I assume it works.
And btw this isnt opening, everytime I try to open it, it closes instantly (dos box appears and re appears in a flash) Im running win7 32bit which is probably the cause of my problems, but it didnt work when running it in compaibility mode for xp/vista
you dont open it, you use it through the command line!! lol:D:D
MG
[★]
3rd February 2010, 05:52 PM
you dont open it, you use it through the command line!! lol:D:D
MG
stfu T_T
Pfft... I knew that ¬_¬
pathologo
9th February 2010, 01:58 PM
What would be the command line to create a NBH for HD2?
I guess we need the exact NBH arguments, because we cannot flash a NB.
michyprima
8th April 2010, 05:00 PM
What would be the command line to create a NBH for HD2?
I guess we need the exact NBH arguments, because we cannot flash a NB.
for hd2 you need to use:
-p 18400 -w 480 -h 800 -F file.bmp
then use a nbh generator.
Cheers
Vosberg1
20th April 2010, 10:16 PM
OK, this is what i have done, i have just got the Leo (have not updated the specs in sig, so that is incorrect) but i am using the nbimg tool. As of yet, it is working, but one thing. I created the image threw Photoshop, saved it as a 480x800, and when i flash the .nbh, there is part of the image missing. I have tryed using differnt resolutions, and tryd to use the -w and -h commands, but when i use that, the tool does not create any .nb file. What am i doing wrong? Attached is the file that i am trying to use as the Splash Screen.
Update - I just tryed again after work, and now when i try to create the .nb file, Comand Prompt says that it cannot find the file. I have the .bmp in the same folder as nbimg, and file size is 1,126. I have tryed to resave the file, but to no avail, and i have tried moviung the file (but i dunno where to move it so that it can find it) Any ideas / help will be much appricated.
Update 2 - I have tryed yet again, successful to get the .nbh, now the splash screen is white, and i found an instruction,
Make sure you have HSPL instaled in your HD2 !!!
How to make the first Splash Screen:
1) First make a 480x800 pixel *.bmp picture for your Splash Screen.
2) In PC Windows Go to Start, Run and type cmd.
3) In cmd, go to where you extracted the tools directory and type nbimg -F *.bmp
4) Check the size of *bmp.nb . It must be 786.432 byte. If it's not, calculate by hand: 786432- *bmp.nb size and type again in cmd nbimg -F *bmp -w 480 -h 800 -p "hand calculation result"
5) Check again file size of *bmp.nb. It should be 786.432 byte.
6) Close cmd.
7) Open Htcrt.exe from Tools folder and go to ROM builder tab.
8) Go to Device and select LEO.
9) Go to Splash (... right side of window) and select your *bmp.nb
10)Click Build.
Tryd that, the pading size is above 18400 - but when i run the tool, it says unknown command. I am at wits end, what am i doing wrong? I attached a screen shot.
Here is the link to the image that i am trying to make as the splash screen -
http://yfrog.com/0zsplashrp
Thanks much.
Vosberg1
20th April 2010, 10:39 PM
All is consalidated above
Sookels
25th April 2010, 04:23 AM
I am also trying to get something simular done, but I am looking for the application to make the .nbh file. I did get a copy of htcrt.exe but it doesnt have the LEO inside, when I try to update it says I have an internet connection issue (I dont, I am posting now then ;)
I only got my HD2 2 days ago and this is all new to me. I have managed to flash custom radio's and ROMS's but now I want to make my own boot screen and flash that.
Please help.
Sookels
27th April 2010, 01:51 AM
Hey Vosberg1,
Maybe we can help each other ;)
I can make the splash screen without an issue. What I did was the following:
1.) Get picture you want (must be 480 x 800)
2.) Save picture as .BMP (24-bit, I used windows paint)
3.) I entered this command -> nbimg.exe -p 18400 -w 480 -h 800 -F Splash.bmp
4.) I verified that the file was correct by converting it back to a .BMP, worked fine.
The issue that I now have is making the .nbh file, I found a NBH Utility but it does not contain any LEO models. Do you have or know where I can find something to make a .nbh with my splash screen?
Edit: Managed to update the .XML file with the LEO info's and all is well in Splash screen world :)
jmdearras
17th August 2010, 06:51 PM
Use any tool available to create NBHs, for example HTC Rom Tool (http://forum.xda-developers.com/showthread.php?t=311909). To flash your custom NBH file you'll need USPL or HardSPL installed on your device. Also for Excalibur specific instructions look here ("http://forum.xda-developers.com/showpost.php?p=2366103&postcount=13), because you'll need to add the smartphone signature manually.
Where can I get the devices file for this, since the domain is gone?
SpottierPython
20th August 2010, 12:11 PM
I am also trying to get something simular done, but I am looking for the application to make the .nbh file. I did get a copy of htcrt.exe but it doesnt have the LEO inside, when I try to update it says I have an internet connection issue (I dont, I am posting now then ;)
I only got my HD2 2 days ago and this is all new to me. I have managed to flash custom radio's and ROMS's but now I want to make my own boot screen and flash that.
Please help.
Here are the LEO XML Details for NBHUtil XML.
<device name="Leo" chunksize="64">
<ModelID>PB8110000</ModelID>
<CID>HTC__E11</CID>
<Ver>1.43.leo</Ver>
<Lang>WWE</Lang>
<Item value="0x200">SPL</Item>
<Item value="0x301">Radio</Item>
<Item value="0x400">OS</Item>
<Item value="0x500">Diag</Item>
<Item value="0x600">Splash</Item>
</device>
If you are using HTCRT.exe then you should search for same parameters in ini format. :)
romracer
29th September 2010, 05:19 PM
Here's a compiled version of nbimg for OS X. I compiled this on an Intel-mac running Leopard (10.5). I can't guarantee it will work anywhere else, but I think it should.
Of course if you don't trust my compile, people can compile for Mac using the following command after downloading the Linux source code:
gcc -o nbimg nbimg.c
Casbah
29th September 2010, 08:22 PM
Here's a compiled version of nbimg for OS X. I compiled this on an Intel-mac running Leopard (10.5). I can't guarantee it will work anywhere else, but I think it should.
Of course if you don't trust my compile, people can compile for Mac using the following command after downloading the Linux source code:
gcc -o nbimg nbimg.c
Great! Thanks for this.
melethron
29th October 2010, 03:49 AM
Got three warnings when i compiled it:
nbimg.c:430: warning: format not a string literal and no format arguments
nbimg.c:453: warning: format not a string literal and no format arguments
nbimg.c:461: warning: format not a string literal and no format arguments
Can't code and have no idea what this means ....
pipomolo42
18th November 2010, 04:51 AM
Hello,
Just for your info, I've noted two small issues with nbimg-1.1:
- when compiling on a 64bit OS, it won't be able to generate a BMP, as in convertNB2BMP, biSize is declared as an unsigned long, and the size of this type is 4 bytes in 32bit and 8 bytes in 64bit. Changing it to an unsigned int fixes this.
- the way you convert pixels in convertBMP2NB rounds values down, thus making the image a bit darker. I fixed this by doing rounded integer divisions:
unsigned short tmpdata;
tmpdata = ((int)(pixdata[0]) + 4) / 8;
encoded = tmpdata > 0x1f ? 0x1f : tmpdata; //B
tmpdata = ((int)(pixdata[1]) + 2) / 4;
encoded |= (tmpdata > 0x3f ? 0x3f : tmpdata) << 5; //G
tmpdata = ((int)(pixdata[2]) + 4) / 8;
encoded |= (tmpdata > 0x1f ? 0x1f : tmpdata) << 11; //R
A blue value of 0x7 should be converted to 0x1, and not 0x0, but a value of 0xff should be kept to 0x1f, as 0x20 would overflow the blue component of RGB565.
Ricky Liang
3rd December 2010, 10:16 AM
Thanks, nbimg is a very good tool, but could you tell me the NBH argument -D <model id>. what's the id fo LEO model?
Sneakyghost
3rd January 2011, 03:01 AM
Hi!
Thanks for some funtastic Tools, really.
I just succeded to create my own first, second and boot splash screens. Now my HD2 boots very slick with one image (Oh yes! my mighty Gamer-Nick and Logo! hrhrhr) through the whole process. Very nice indeed.
Now i need some smart gfx junkie to animate the second LEO_animated.gif for me... :D
Understanding and setting up everything for changing the first splash screen took me half a day. I also noticed, that explanations and comprehensive help for the LEO/HD2 owners are given only to some geeky extend. It took all my (limited) brain processing power to understand whats going on here.
So i decided to give back something. I will rather not be able to compile a smoothy one-click fix-my-splash exe, i cannot even write a batch script (well, yes, windows users are known to be a little numb on that part) but i can very well write up a specific guide. The one from Paolonio is already quite nice but i found it very frustrating not knowing wether or not that guide would suffice for the Leo/HD2. Especially on the calculation and padding bit i got very unsure of what i am doing.
Actually another stupid part is the lack of support for Dark Simons ROM tool. I was searching quite a while for a htcrt_devices.ini which includes the Leo. Plus, Mr. Simon seems to be gone somehow. hasn't visited XDA for a while and his host for his prog is gone too.
I'll probably drop a little guide within the next few days. I'll make it a pdf but with embedded fonts so people can actually copy/paste the lines.
Thanks again folks... so long...
[EDIT]
@pipomolo42
I did this on Windows 7 64bit. Both directions worked flawless. I am currently under the impression that there is no fault with nbimg.exe on x64...
[EDIT 02]
I attached a rough first version of this guide. I do not claim its any better than Paolonio's guide but i claim that it looks at it from another minds perspective and thus it offers more chances of understanding if one individual reads both guides.
Plus i think its time i put up the htcrt_devices.ini i found, which contains the leo info... please feedback on errors and mistakes and click thanks if it helped you somewhat.
cheers.
[EDIT 03]
New Guide attached. Please use this commandline to create your Splashscreen.nb file:
NBIMG - w 480 -h 800 -p 18400 -F splash.bmp <-- mind that the padding might not be universal, i did not fully understand that yet. you might have to calculate it. read last post from me here (http://forum.xda-developers.com/showpost.php?p=10360125&postcount=95)
Substitute "splash.bmp" for the name of your file.
Make sure the padding is correct.
Do NOT use the -s argument (at least not for the LEO)
pipomolo42
3rd January 2011, 11:07 AM
[EDIT]
@pipomolo42
I did this on Windows 7 64bit. Both directions worked flawless. I am currently under the impression that there is no fault with nbimg.exe on x64...
Well, there is only a problem if you compile it from sources as a 64bit executable.
Sneakyghost
3rd January 2011, 02:41 PM
My apologies.
At the time of writing that i was already having watering eyes and was constantly yawning because i overstayed bedtime for hours... i simply didn't notice that you where referring to compiling the executable instead of using it. Sorry.
Here's the Guide, rough first version. feedback on errors and mistakes welcome. check attachment. I might be doing a german version soon if i find the time. I might not. I am very busy and need do all this shite at night...
For those just looking for the HTC ROM Tool Devices.ini information on the LEO, check codebox below:
[Info]
Magic=kateiloveyou
Version=1011
[Defaults]
DefCountryId=11111111
DefVersionId=1.00.000.0
DefLanguageId=WWE
[Devices]
Leo=1
[Leo]
Experimental=1
ModelId=PB8110000
SignMaxChunkSize=64
RomSections=7, “0x100,IPL,0,TRUE”, “0x200,SPL,524288,TRUE”,
“0x600,Splash,786432,FALSE”, “0x601,Subsplash,0,FALSE”,
“0x301,Radio,20840448,TRUE”, “0x700,””Ext. ROM””,0,FALSE”,
“0x400,OS,0,FALSE”
Sneakyghost
5th January 2011, 01:05 AM
After having successfully set up my Splashscreen with nbimg and rom tool i now tried to achieve the same goal by using the build-in nbh-creator of nbimg.
i derived the device information from the ini-file of the rom tool. those informations had lead me to success before.
using this info, the resulting nbh did not differ in size but was, when checking it with a hex/text editor, different in some parts. compared to the rom-tools output. Apart from a file comment inside the file i could not identify the exact differences.
Since everything looked pretty decent i decided to flash the nbh. unfortunately a blank screen was what the device woke up with, no pretty splash, just a white splash with nothing on it.
i then reflashed my rom-tool generated splash. the white stayed.
i then flashed a stock rom. the white was gone and the stock splash was there.
i then flashed my rom-tool generated splash again. the white returned. WTF?!
so i somehow managed to rip me off a chance to exchange the stock splash for a decent one. how? is nbimg at fault? are my params at fault?
I used these: "nbimg -w 480 -h 800 -p 18402 -s -D PB8110000 -S 64 -T 0x600 -F filename.bmp"
The padding is the calculated one to get my bmp up to required 786432 bytes length. i assume the deviceID is correct and so is the chunksize and the splash type.
could anyone help and point out a possible cause for this mess? i'd like to get my splash back in and also i would like to write down a little pretty guide to use only nbimg without the rom tool.
thanks guys.
Bonito77
5th January 2011, 09:28 PM
Hi,
the only thing I can see in your parameters is different to mine is the size (p). At your it's p 18402, at me it's p 18400. The other what is importantly you make the .bmp image as 24bit.
Hope it's help you. Please let me know if it works now.
nbimg -p 18400 -w 480 -h 800 -F Imagename.bmp -T 0x600 -S 64 -D PB8110000
Sneakyghost
5th January 2011, 11:49 PM
sure mate. the padding will defo be different as you certainly use a different bmp picture. i am very astonished that my padding is so close to your padding even.
The other difference is, if you didnt forget to type it in your post, the "-s" argument, which defines the Smartphone format.
did u use that when creating your nbh?
and on the other hand: my bitmap works for sure. it did work in the first attempt when i created the nbh with the rom tool. it only doesnt work anymore since i involved the nbimg nbh function. since i created an nbh with that and flashed that one i cannot flash a custom splash anymore. only the stock one works.
weird isnt it?
[EDIT]
I tested nbimg last night again with some combinations of arguments. while doing so i noticed that suddenly the conversion of the bmp to the nb does not work anymore. the very same bmp i used with the first go.
i then fetched that bmp from a backup location on a different disk because i thought maybe it got corrupted.
same stuff. parameters set as in my guide on the first go, bitmap corrupted when i converse it backwards now. always the rightmost 20 pixels are swithched over to the left side of the bmp. really weird as i did exactly the same steps as first time. and i did it about a hundred times, i also tried various other arguments, i tried to create the nbh with nbimg etc....
[EDIT 02]
PROBLEM SOLVED.
Reason for corruption: Signature.
Reason for bad flash ((no new splash installable after flash, white screen): wrong padding size.
Explanation:
NBIMG can add a smartphone signature if -s is set. if this is not set it does not set no signature but it sets a "HTC Splashscreen signature".
Assuming the LEO is a smartphone, i set this argument. when i did the first go, i obviously forgot (yes, for real!) to set that option but i did not forget to set it when i tried it again afterwards (i wasn't drunk anymore).
when i looked at the two different nbh-files (the working one i did when i made my first attempt and the new one i did today) with a hex-compare-tool (UltraCompare) i found the reason for the mentioned pixelswitch right away. The Smartphone Signature is added right at the beginning of the nbh. The HTC Splashscreen Signature is located at the very bottom.
Seing this, i noticed that the actual data shifted by the size of the signature, which means the offset of the picture data is wrong when using the -s argument. until then, i didn't notice the filesize difference yet.
So i redid the nbh file today without the smartphone signature, did a hash-check and was horrified to still see different hashes. so i compared them again with UltraCompare and found - nothing of any use.
Only then i checked the filesize and guess what?! the HTC Splashscreen Signature is exactly two bytes longer!!!
So this is why everyone else used 18400 for padding when i used 18402 for the shorter Smartphone Signature (obviously when doing this first i not only forgot the -s argument but also got the padding wrong, i presume i copied the commandline from this thread instead of creating my own. I think i was very drunk then).
This brings me to one more question: why was i thinking that i need to calculate my padding value myself when it seems to be the same for everyone?
Does NBIMG reduce the bitmap-size to a standard-value when converting it? It looks like.
That would imply that we don't need to make such a big fuss about the padding value.
I re-did the guide. Please do not use version 1.1 as it contains the wrong commandline. Version 1.2 contains correct info now.
pof
7th January 2011, 01:08 AM
@Sneakyghost: the '-s' flag is only for use in old non-touchscreen phones (example: htc vox, htc wings...). Now we call everything a "smartphone", but HTC made a difference between "smartphones" and "PocketPC phones" a few years ago when I wrote this tool :) In modern phones, like HTC Leo, you should not use the '-s' flag.
Sneakyghost
7th January 2011, 02:39 AM
Thank you POF. This clarifies a few things actually.
Why don't you update Post 1 with some of these Infos? I think it'd save quite some folks quite some hassle.
I have read about similar problems like mine in a few places and i think if someone points out the missing info it does help a lot since many people don't manage to figure themselves.
Somehow i got this odd feeling that i am moving in a very old thread which hardly anyone still sees. Somehow i feel like there must be more advanced/better/easier methods to generate a Splashscreen somewhere on the forums.
Should i be bothered to keep investigating the mysteries of NBIMG? :eek: :D
If there is better ways which everyone is using nowadays please just someone put a link in here so people get redirected before they start messing here (like me ;) )
[EDIT]
Today i checked the nbh-function of NBimg again and it worked flawless this time (mind the -s argument!).
I attached a new guide which does the trick without using the HTC Rom Tool. Only downside i could discover so far: you can't set an individual String for "version" and no Language setting either with NBimg. Doesn't really matter cuz the only moment one can see that is just before the flash in the RUU. Only cosmetical.
JLowe
20th January 2011, 05:41 PM
Thanks for the nice guide, works like a treat!
Java the Hut
31st January 2011, 05:02 PM
I'm failing to use Ubuntu terminal in order to do this...
bla@bla bla:~$ nbimg.exe -F splash1.bmp -n
nbimg.exe: command not found
bla@bla bla:~$ nbimg -F splash1.bmp -n
nbimg: command not found
that is the splash screen i want:
"DON'T PANIC"
mind to help?
Wicked1ab
2nd April 2011, 04:50 PM
This works awesome! Thank you
ddvniek12
3rd July 2011, 09:18 PM
Hi there. I need some help because everytime I try to run nbimg.exe on windows 7 it just opens up and closes immediately... Sorry if I'm making a mistake somewhere, noob at creating splash screens lol.
PLEASE HELP
Thanks!
EDIT:
Never mind. Lol got it to work in CMD...
Schimmerlos
4th July 2011, 06:12 PM
can't get it to work on win 7 Pro, build 7600 32bit
Error, Appcrash 01
Had that, too. Using v1.1 AND v1.0 on Windows 7 64bit. My command:
nbimg -F splash.bmp
Problemsignatur:
Problemereignisname: APPCRASH
Anwendungsname: nbimg.exe
Anwendungsversion: 0.0.0.0
Anwendungszeitstempel: 487234d9
Fehlermodulname: nbimg.exe
Fehlermodulversion: 0.0.0.0
Fehlermodulzeitstempel: 487234d9
Ausnahmecode: c0000005
Ausnahmeoffset: 000015f8
Betriebsystemversion: 6.1.7601.2.1.0.256.48
Gebietsschema-ID: 1031
Zusatzinformation 1: 0a9e
Zusatzinformation 2: 0a9e372d3b4ad19135b953a78882e789
Zusatzinformation 3: 0a9e
Zusatzinformation 4: 0a9e372d3b4ad19135b953a78882e789
645373
However, a "splash.bmp.nb" file was generated.
roboprint
26th August 2011, 10:06 PM
Hi,
I have small problem with command in nbimg.
I type
nbimg.exe -w 480 -h 800 -F splash1.bmp | rename .bmp to .img
and file splash1.bmp.nb is created but not changing a name to img.
What can be wrong?
Edit: Solved
Can be :
nbimg.exe -w 480 -h 800 -F splash1.bmp
rename *.bmp.nb splash1.img
vBulletin® v3.8.7, Copyright ©2000-2012, vBulletin Solutions, Inc.