Windows Phone 7 – Unlocked ROMs

JustinAngel

Hi Folks,

In the following blog post we’ll review a topic which has been widely discussed in mainstreamtechjournalism but languishes in obscurity within the WP7 developer community. I am of course talking about the Windows Phone 7 Unlocked ROMs.

Prior to starting this blog post, I’d like to call out this is the 1st blog post in a series of multiple advanced Windows Phone 7 blog posts. Additional subsequent blog posts will include Windows Phone 7 Emulator Automation, Windows Phone 7 and TFS2010 Continuous Build integration and other topics. I’ve been told on many occasions that blog posts should be shorter than 50 pages (nonsense if you ask me), so I’ve split up this massive Advanced Windows Phone 7 blog post into several short blog posts.

What’s in a ROM?

“A […] ROM, is a computer file which contains a copy of the data from a read-only memory chip, often […] a computer's firmware.”

It’s vitally important that Windows Phone 7 developers realize that the Windows Phone Emulator is in fact not powered by magical Microsoft pixies. I’ve checked. The WP7 Emulator is in fact a mix between a virtualization software known as “XDE” (“Emulator Virtual TransportDevice“) and an Image.

Both XDE and the Image change with each public build Microsoft ships for WP7. Since Microsoft only shipped the Image for development purposes there is limited functionality enabled in them. Specifically: Custom Application support, and Internet Explorer for HTML support.

Compare and contrast these Print screens of the WP7 home screen from the locked ROM and the Unlocked ROM.

In this blog post I intend to show the benefits of the Unlocked ROMs for developers. If this is the first time you’ve heard about the unlocked ROMs and want to see what they offer, there’re great resources online.

How do I get these unlocked ROMs?

It’s important to mention there are currently 2 Unlocked ROMs:

1. The 6077 build – Also known as the Mix10 WP7 ROM. Has unlocked Zune Marketplace functionality, lots of apps which has been dropped since and terrible performance. 2. The 6177 build – Also known as the April10 WP7 ROM. Has unlocked Office, lots of new functionality that has lighten up since Mix10 and considerably improved performance.

And there will probably be many more of these Unlocked ROMs as Microsoft ships more and more public bits for WP7.

To fire up the images copy the 2 BIN files into the XDE folder and execute them using the XDE emulator. The XDE folder on a x64 machine is located at: C:\Program Files (x86)\Microsoft XDE\1.0

If your development machine does not have the latest Windows Phone 7 SDK installed, fear not, you can still install XDE as a stand-alone product. Instructions can be found at this excellent post by MacHackPC.

How to replace the default Visual Studio ROM with the Unlocked ROM?

When debugging in Visual Studio the default ROM used will be the Locked ROM. In this blog post we’ll explore why the unlocked ROM is so darn useful for developers when debugging applications.

In order to use the unlocked ROM as the default for VS2010 debugging: 1. Simply open up the default WP7 SDK Directory 2. Drop in the April10 Unlocked ROM BIN file 3. And rename it to “WM70C1.bin”

On a x64 machine the WP7 SDK Directory is located at: C:\Program Files (x86)\Microsoft SDKs\WindowsPhone\v7.0\Emulation\Images

By replacing the original WM70C1.bin file with our unlocked ROM, Visual Studio 2010 will now open up the unlocked ROM for debugging.

Why should developers care about the Unlocked ROM?

There’s a plethora of reasons why the unlocked ROM is important for application develoeprs. Let’s go over them .

Advantage #1: Developers can see the native Look & Feel of WP7

The WP7 UI is not just a fancy version of “desktop” Silverlight 3 UI. There are different patterns of user experience, different controls used and wildly divergent visual conventions. Developers who build entire WP7 applications without even trying to use the platform will end up building atrocious user experiences.

Panorama Control Switching between screens (Office)

Line-Of-Business Form for creating new appointments:

Pivot Control: (Contacts page)

There’s a lot of subtle details in how WP7 UI and UX work, and as developers on this brand new platform we should endeavour to fully understand it so we can recreate it in our applications.

Fin

In this short blog post we’ve introduced the concept of Unlocked WP7 ROMs, how to best use them and what functionality they have to offer developers. Specifically, they allow experimenting with native look & feel, using the built-in WP7 tasks, using0 the platform’s Task Manager and exploring local storage.

In subsequent blog posts we’ll talk about how to automate the Windows Phone 7 Emulator, Setup TFS2010 Windows Phone 7 Continuous Integration and other secrets the unlocked ROMs has to share with us.

Leave a Comment

Feel free to leave a comment with your take on the Windows Phone 7 Unlocked ROMs.