HTC Blackstone USPL
- 1 Blackstone USPL version 2.5 (by stepw)
- 2 Objective
- 3 The Thread on this subject is.
- 4 Disclaimer
- 5 Warning
- 6 What is USPL?
- 7 Current version and supported devices
- 8 Why version 2.x? Where are the previous versions?
- 9 How does it work (under the hood)?
- 10 Why another SPL?
- 11 What's in the package?
- 12 Who should (not) use it?
- 13 How to use it?
- 14 Limitations
Blackstone USPL version 2.5 (by stepw)
1. To provide an application that allows you to flash your device without changing the stock SPL.
The Thread on this subject is.
THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT ANY EXPRESS OR IMPLIED WARRANTY OF ANY KIND. I SHOULD NOT BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES HOWEVER CAUSED ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE. USE AT YOUR OWN RISK!!!
USPL does not make any permanent changes to your device. It operates from volatile memory (RAM) and once the device is power-cycled, no traces of USPL remain there. As long as there's a valid SPL flashed and starting up, you can run USPL to help you solve many other troubles.
Therefore USPL itself is safe and can NOT damage your device. You CAN... USPL is not foolproof; inrepairable damage can be caused through incorrect use of USPL, so be cautious.
Unless you know what you are doing, NEVER:
- flash an unsigned/cooked ROM/SPL/Radio/Splash/etc... that wasn't tested by someone else;
- issue SPL commands known to be dangerous or if their purpose is unclear or unknown;
- upgrade/downgrade SPL using USPL.
Again USE AT YOUR OWN RISK
What is USPL?
USPL is Unsigned... Unbricker... Universal... Ultimate... SPL, you name it! USPL is for running different SPL versions and installing cooked/unsigned ROMs on your device without flashing patched SPL. USPL is for unbricking your device if OS doesn't load, you don't have HardSPL installed and there's no stock ROM you can find for your device. USPL is for debugging and testing if you are up to your own SPL patching.
Current version and supported devices
USPL is highly experimental. It is alpha software, and it will remain such forever. This is *version 2.x* of USPL for HTC Blackstone (HTC Touch HD) only. Please don't try it with any other devices! It will not cause damage, but it won't work either.
Why version 2.x? Where are the previous versions?
USPL version 1.0 was originally created in April, 2007 for HTC Trinity (HTC P3600), however my laptop with all source codes was stolen in May, 2007 just as I was about to make it public.I didn't have time and will back then to start the project all over. Now that I own an HTC Blackstone, it made better sense to do it again. RIP trin_uspl! Long live blac_uspl! Version 2.0 was developed in early December 2008, but it was too buggy to release at that time.
How does it work (under the hood)?
USPL is exploiting multiple bugs/vulnerabilities in HTC SPL codebase (known since 2007) to inject and execute unsigned code.
The same concept was reused by pof to implement HTC Trinity splxploit in this thread
Why another SPL?
Why not? Personally, I don't like the idea of flashing patched/hacked bootloader onto my device, so HardSPL doesn't work for me. Having just SoftSPL is not enough, as sometimes OS doesn't boot to allow SoftSPL/~JumpSPL execution.
What's in the package?
USPL comes as a single Windows executable - blac_uspl.exe. blac_uspl.exe is a console application developed and primarily tested on Windows XP. As of version 2.2 USPL should work in Windows Vista as long as ROM Upgrade Utility (RUU) does;
- if you are still having problems with USPL under Windows Vista, consider downgrading HTC Sync drivers as described in this thread.
Sorry Linux lovers, no version for you You may be able to run it from Wine, but I didn't try.
By default Blackstone USPL loads SPL 1.14 (or SPL 1.15 starting from version 2.4) patched to allow flashing of unsigned/cooked .nbh files. You can specify a different SPL (for example HardSPL or MFG SPL) to be loaded instead via command line.
Who should (not) use it?
If you can't tell the difference between SoftSPL (SSPL) and HardSPL (HSPL), then USPL is probably not for you.
How to use it?
New: cRaCKwHoRe developed a GUI for USPL for those not familiar with command line, see http://forum.xda-developers.com/showthread.php?t=508361. It makes USPL a better experience, check it out!
Check for the latest version USPL attached to the second post of the above thread and extract anywhere on your computer.
- Download uspl_2.5.zip Current version
- Download uspl_2.4.zip Old version
- Download uspl_2.3.zip Old version
- Download uspl_2.2.zip Old version
- Download uspl_2.1.zip Old version
- Go to ActiveSync properties and disable "Allow USB Connections" option.
- Turn off your device (long press "Power" key or remove/replace battery),
- then enter SPL bootloader mode (tri-color) by pressing and holding "Power" and "VolDown" keys simultaneously.
- Connect USB cable and make sure "USB" label appeared in the white portion of the screen on your device.
- Execute blac_uspl.exe; current status and any error messages USPL encounters will be displayed in the console window.
If everything goes well, your device will restart and SPL version label should read "1.15.USPL" indicating that USPL was loaded successfully.
You can then start RUU update to flash RUU_signed.nbh. Once RUU update is completed, device will restart using regular flashed SPL.
If SPL version *does not include "USPL"* or if the screen is black, soft reset and try again. If "USB" label disappeared and did not reappear, reinsert USB cable. If you want to *flash from SD card* instead,
- make sure your SD card is not inserted when you enter the bootloader originally.
- SPL will try to install it and would fail if blacimg.nbh is not signed by HTC.
- Insert the card after "USB" label comes up in SPL but before running USPL.
You can run "blac_uspl.exe ?" to get command line parameter help.
- Only 1 parameter is accepted and that is the name of an SPL file you want to load.
- You can load an MFG SPL or HSPL. USPL automatically takes care of allowing unsigned/cooked ROM flashing with any SPL you use.
USPL relies heavily on multiple bugs specific to certain SPL versions, so it will only work on devices running SUPPORTED SPL versions. The following Blackstone SPL versions are currently supported:
- SPL 1.13
- SPL 1.14
- SPL 1.15 (TELSTRA)
- SPL 1.19
- SPL 1.54
If you run it on a device with unsupported SPL, an appropriate error message will be displayed and USPL will not run. If you have a device with unsupported SPL version and you want to add support for it, please PM me (stepw) to discuss.
blac_uspl.exe may not work in Windows Vista, unless HTC Sync drivers are downgraded. The ultimate solution to this problem is to use WinUSB instead of HTC Sync, this enhancement is not planned at this time though.
- Virus software gives me a warning on downloading*
- Read this post
- ~Des - for original SoftSPL
- pof - for JumpSPL and HTCflasher
- ~OliPro - for original HardSPL
- OliNex (cmonex and OliPro) - for Blackstone HardSPL
- ~Dark Simpson - for HTC ROM tool
- ~ViperBJK - for QMAT
- jess6217 - for Telstra RUU
- AnDim - for HTC Rom Editor tool
- cRaCKwHoRe - for USPL GUI wrapper