You may have noticed a number of Windows Mobile devices coming out with 240×240 screens. And you’re probably asking yourself, “Who came up with this 240 number, anyway? Why aren’t they doing 320×320?”
Now, please don’t interpret this entry as my trying to convince you that 240×240 is somehow better than 320×320. In almost all cases, it’s not. I’m just trying to explain how we got here.
Those who cannot remember the past…
We’ve been doing Windows CE devices for around ten years now. We did a bunch of devices that were, basically, small versions of laptops–“clamshell” devices with screens that were wider than high (landscape) and qwerty keyboards. Then, somewhere around 1998 (I don’t remember the exact year), we released what we called the “Palm-sized PC.” It was intended to be held in one hand with a stylus in the other. It had no keyboard and a portrait orientation. Basically, it was the predecessor of Windows Mobile PocketPCs. And its screen resolution was 240×320.
As a quick aside, 320×240 (a 240×320 screen turned on its side) is frequently called “QVGA” or “Quarter VGA.” This is because many of them were made, effectively, from a 640×480 (VGA) screen that was cut into quarters.
Fast forward to 2003. All PocketPCs since that original one had QVGA screens turned portrait. But we were starting to see higher resolution screens that were physically the same size as the normal ones. We decided that it was time for Pocket PC to start supporting higher resolution screens.
To scale or not to scale, that is the question
First we had to decide what to do with the extra pixels. On the desktop, more dots means you see more stuff on the screen. You see more of the web page at a time, or more of the long email at once, etc. The trouble with that approach, however, is that everything gets smaller. Conceptually, the desktop compensates for this by making the screen physically larger, but the code really doesn’t pay attention to screen size. You can buy a 14 inch 1280×1024 screen and you can buy a 17 inch 1280×1024 screen. Everything will be much smaller on the smaller screen.
We knew that our higher resolution screens wouldn’t be any larger than our normal resolution screens. And we were worried that, if we went the desktop route, everything would be too small on the high resolution screens. So we made the controversial decision to not go the desktop route. Rather than showing more stuff on the higher resolution screen, we’d show the same amount of stuff, only we’d make it look a lot better.
I call decision “controversial” because I was against it. (-: I felt that the higher resolution screens should let you see more stuff. Of course, I have better than 20/20 vision. At the time I was running my 17 inch desktop monitors at the insane resolution of 1600×1200. So the claims that people wouldn’t be able to see the tiny text kind of fell on deaf ears here.
I eventually came around to their way of thinking, but it wasn’t until I really got to play with a high res device and saw how much better it looked with same-sized text but more dots. Also, the setting at Start->Settings->System->Screen->Text Size gave me something of a best of both worlds. Check it out if you don’t know about it. It works on both high and normal resolution screens.
A double by any other name
Now, for devices using QVGA (320×240) screens, the most natural place to go is VGA (640×480). The advantage of this is that you can do backward compatibility with apps that were written to assume PocketPCs would always be QVGA. In those situations we could “pixel double” the screen and make the app think it was still 240×320. “Pixel double” is kind of a misnomer. We double the pixels in both the horizontal and vertical directions. So “double” here really means “multiply by 4.” But what you end up with when you do this is a screen that looks exactly like the lower resolution one. Everything scales correctly, and everything looks fine.
So we went with VGA screens as our second PocketPC resolution. We had our art teams do a second set of icons and bitmaps that were four times as big but that would take up the same amount of space on the screen, and we scaled our fonts to match. Backward compatibility with low res apps worked through pixel doubling.
We also wanted to enable devices with keyboards on the front, like the ones you’re seeing now. And we knew that a portrait rectangular screen with a qwerty keyboard would make the device too big. So, while we were doing the work to lay stuff out for higher resolution, we also did it for square. It was pretty natural to take a 240×320 screen, lop off 80 pixels, and make it 240×240. It was similarly natural to take a 480×640 screen and support 480×480. So those are the square resolutions we support.
We actively talked about doing 320×320. But we decided against it for a number of reasons. The first was that there’s no good backward compatibility story for it. You can pixel double, but “pixel one and a half” doesn’t work very well. The next was that there’s not much of a growth path for 320×320. Hardware vendors told us that they had no plans to make 640×640 screens (where they do have plans to make 480×480 screens).
So, why did Palm go with 320×320 for their non-WM devices? If you study their history, you’ll find that they made all the same decisions we made. It’s just that their original resolution was 160×160. So, when it came time to choose their higher resolution, it was natural for them to pixel double up to 320×320. We’re in an unfortunate situation at the moment where we’re comparing the high res PalmOS device to the low res WM device.
Where do we go from here?
Windows Mobile fully supports 480×480 devices. But the cost of those screens is a bit too high at the moment. As those costs come down, we will start to see devices that use them. In the mean time, as you’re looking at your 240×240 screen, don’t start thinking, “if this were 320×320, I’d see 50% more of my email at a time.” You wouldn’t. It’s just that the text of your email would be clearer. Small compensation, I know, but it’s all I can really offer.