johnburnsonline.com

Rediscovering the HP Jornada 680: A Glimpse into Windows CE

Written on

The Legacy of Windows CE

History often revisits itself. In today's tech landscape, Apple's M1 and M2 ARM chips are celebrated milestones. However, few remember that in the late 1990s, Windows CE was adept at functioning on ARM, MIPS, and SH3 microprocessors. Developed by Microsoft, this version of Windows catered to portable, low-energy devices and has been around for over a decade.

What insights can we derive from Windows CE in today's context? In this article, I'll delve into the HP Jornada 680, released in 1998 and powered by Windows CE 2.11:

HP Jornada 680 handheld computer

I will evaluate the hardware and software of this device, concluding with a tutorial on creating a "Hello World" application for Windows CE using Embedded Visual Studio.

Before diving in, a brief note: I am not sponsored and purchase all the hardware I review. Testing real devices is enjoyable and essential for understanding usability, comfort, and the quality of features, such as the keyboard's responsiveness. While specifications are accessible online, they cannot replace the firsthand experience of using actual hardware. Crafting a narrative like this involves extensive research, sourcing components from eBay, testing software, and writing code. It can take over a month to complete, but I believe this is how thorough technical reviews should be conducted. If you appreciate this approach and wish to see more articles like this, consider supporting my work on Patreon.

Now, let's commence our exploration.

Understanding Windows CE

Most users are familiar with Windows today, with approximately 1.4 billion devices currently operating on it. Yet, even in the tech community, many remain unaware of Windows CE. So, what exactly was it? Let's start by reflecting on the tech landscape of the mid-1990s. A standard laptop from 1996, such as the IBM ThinkPad 365, featured a 10-inch screen with a resolution of 800x600, a 120 MHz Pentium processor, 8 MB of RAM, a 1 GB hard drive, and a 2.8 Ah NiMH battery, offering about two hours of usage:

IBM ThinkPad 365 laptop

This laptop weighed 2.8 kg and had an original price of $1,999 (equivalent to around $4,000 today). Clearly, both the price and weight were substantial, highlighting the evident market demand for portable devices. In response, Microsoft began developing a modified operating system based on the 32-bit NT kernel, optimized for low-power consumption. This OS, codenamed "Pegasus," aimed for devices weighing under 500 grams, with a minimum of 2 MB of RAM, and using specific microprocessors. The announcement of this system occurred in 1996, and reviewers were soon given their first pre-release models:

Windows CE review from 1996

Microsoft delivered on its promises. One of the pioneering devices, the NEC MobilePro 200, operated on Windows CE 1.0 with a 33 MHz MIPS processor, 2 MB of RAM, a 480x240 4-tone STN display, and a PCMCIA slot for expansion. For those interested in seeing it in action, a Comdex show from 1996 is available:

The MobilePro 200 was priced at $500 and utilized AA batteries, achieving an impressive 30 hours of operation—an achievement that still holds merit today. Notably, the NEC Mobile product line enjoyed a lengthy lifespan, with the latest MobilePro 900c released in 2004.

Now, let's return to our central figure: the HP Jornada 680.

Exploring the Hardware

Initial reviews of Windows CE 1.0 were less than favorable. Users found the devices sluggish, and the 480x240 screen too cramped. Although the concept of a "Windows PC in your pocket" was appealing, it did not meet expectations. Nevertheless, Microsoft took user feedback to heart, leading to significant improvements. The HP Jornada 680 represents the second generation of these devices, showcasing numerous advancements from its predecessor.

Let’s take a closer look at the hardware of the 680. The HP Jornada 680 operates on Windows CE 2.11, featuring a 133 MHz processor, 16 MB of RAM, and a half-VGA 256-color 640x240 display. It also comes with a lithium battery offering around 8 hours of use. While this is a reduction from the 30-hour battery life, it reflects the trade-off for enhanced processing power and display quality.

What stands out is the keyboard. HP has a long-standing history of producing laptops (the first was released in 1984), and their engineers crafted a surprisingly effective keyboard for this device:

HP Jornada 680 keyboard

While the keys are smaller than those on a full-size keyboard, their height surpasses that of my Apple MacBook M1. Although the HP 680's keyboard is inadequate for lengthy writing tasks, it's still sufficient for composing emails or short documents.

On the right side of the Jornada 680, there is a 56K modem port and a serial cable connector:

Modem and serial port on HP Jornada 680

The serial cable was meant for synchronizing the device with a desktop PC, a common practice for handhelds like Palm devices. The modem port connected the handheld to a phone line. In 1998, Wi-Fi was not yet available, so dial-up was the means for browsing the internet or sending emails. For those who wish to recall the sound of a modem connection, this video serves as a nostalgic reminder:

On the left side of the Jornada 680, you will find two now-obsolete ports: an infrared port and a PCMCIA/CF port.

Infrared and PCMCIA/CF port on HP Jornada 680

This combined slot accepts both PCMCIA expansion cards and CompactFlash cards for data storage. Using a PCMCIA-CF adapter, you can even utilize two CF cards simultaneously. The 90s and early 2000s saw PCMCIA as a popular standard for various expansion cards, including LAN connectivity:

PCMCIA LAN Adapter

Not only Ethernet, but Wi-Fi PCMCIA adapters were later developed, meaning that in theory, the Jornada 680 could have had Wi-Fi connectivity, although it's uncertain if manufacturers provided appropriate drivers for Windows CE.

Examining the Software

Let’s first assess the operating system. The early Windows CE versions drew from the Windows 95 interface, which many who grew up in the 80s or earlier will recognize:

Windows CE 2.11 interface

This familiar design made it easier for both users and developers, likely allowing Microsoft to leverage a significant portion of their existing codebase. Windows system menus and settings bore a striking resemblance:

Windows CE 2.11 configuration screen

Windows CE included various applications from the Office suite. While Pocket Word might not have all the features of the full Microsoft Word, it functions adequately for a portable device. I managed to save one of my articles in RTF format. Pocket Word could open this file but failed to display any images:

Pocket Word interface

Perhaps the inability to show images was due to the limited RAM; modern high-resolution images are too demanding for a device with only 16 MB of RAM. Nonetheless, text formatting worked correctly, and I could read and edit text written nearly 25 years after the Jornada 680's release:

Pocket Word text formatting

An impressive feat for a device that's a quarter of a century old.

Pocket Excel resembles any other spreadsheet application; its interface has remained consistent over the decades:

Pocket Excel interface

Pocket Access is intended for database management:

Pocket Access interface

Users can create and view presentations using Pocket PowerPoint, and interestingly, a PCMCIA to VGA adapter is mentioned in its example file:

Pocket PowerPoint interface

Internet Explorer provides a window into the 90s internet:

Internet Explorer on Windows CE

In theory, Windows CE 2.11 could access websites like http://www.google.com even today (note the http, not https). The Jornada HP 680 is limited to dial-up through its modem port:

Windows CE dial-up wizard

Using it today is undoubtedly challenging, and it's uncertain whether public dial-up connections still exist in the 2020s. Although theoretically possible, connecting via a serial cable and a Hayes modem emulator on a Raspberry Pi would be complicated due to the proprietary nature of the Jornada’s serial port.

The Pocket Outlook facilitates sending and receiving emails through POP and SMTP protocols:

Pocket Outlook email client Windows CE mail client interface

As for games, the only one included with Windows CE was Solitaire (which I’ve unfortunately forgotten how to play):

Solitaire game on Windows CE

The Jornada HP device was primarily designed for business use, with applications like Calendar and Contacts available:

Calendar on Windows CE Contacts application on Windows CE

Interestingly, Windows CE featured a command line interface, a capability that has largely disappeared from modern mobile devices:

Windows CE command line interface

While standard desktop binaries weren't compatible with the SH3 processor, various third-party tools, including Telnet and SSH clients, emerged. Some of these tools are surprisingly still accessible today.

In terms of multimedia, the HP Jornada 680 includes a speaker and microphone, with a preinstalled sound recording application for making audio notes during meetings:

Sound recording application on HP Jornada 680

The absence of a headphone jack indicates that the Jornada 680 was not designed for music playback. However, it can play mono or stereo WAV files at 11KHz or 16KHz quality. The three hardware keys on the front edge were specifically intended for recording or playing sounds, underscoring the importance HP placed on this feature.

Lastly, Microsoft developed an application called ActiveSync for synchronizing files between a desktop computer and Windows CE devices:

ActiveSync interface

ActiveSync was compatible with all Windows CE and Pocket PC devices, with the last version released in 2007. Surprisingly, ActiveSync 4.5 remains available for download from Microsoft’s website even as of this writing.

Third-party applications were also created. One notable example is Total Commander, which, while different from its original form, retains a similar two-panel interface:

Total Commander for Windows CE

While various applications were developed for CE, finding many of them today is challenging. Old software archives reveal that numerous applications, including media players, horoscopes, and calculators, were once available. Notably, Winamp, Doom, and Quake have been discovered for Windows CE, but their authenticity as official versions or fan-made clones remains uncertain. Some specialized applications, like PocketCAD, were also created for Windows CE, likely designed for field use. However, a device with a small screen, no hard drive, and only 8 MB of RAM was not suited for demanding tasks.

On the subject of RAM, I found it astonishing that this version of Windows CE runs on a device with just 16 MB of RAM. Given that half of this memory is reserved for storage, only 8 MB is available as "real" RAM for applications:

Windows CE memory allocation

Despite this limitation, the Jornada 680 can execute Word, Excel, Access, PowerPoint, and Internet Explorer, as well as manage emails and more. Today, a simple Google page requires around 80 MB of RAM, while a Gmail page can consume up to 480 MB! What explains this discrepancy? I don't have a definitive answer.

Creating Applications for Windows CE

In conclusion, let’s explore how to develop applications for Windows CE. A special version of Microsoft Visual Studio, known as Embedded Visual Studio, was utilized for this purpose. Originally designed for Windows NT 4.0, Embedded Visual Studio is a 32-bit application, theoretically compatible with modern PCs, though its installer faces issues on Windows 10 or 11. Nevertheless, running Windows NT 4.0 in Apache VirtualBox is straightforward:

Windows NT 4.0 interface

Once Windows NT is set up, we can proceed to install Embedded Visual Studio:

Embedded Visual Studio installation

For demonstration, I decided to create a Windows CE MFC Dialog-based Application:

Creating an MFC application Embedded Visual Studio application wizard

MFC (Microsoft Foundation Classes) consists of C++ libraries and classes for app development, event handling, and control management. While it's uncertain if MFC is still widely used by developers today, the documentation is accessible on Microsoft's website.

After successfully creating our application, I opened the resource file and added a text label and button to the dialog:

Resource editor in Embedded Visual Studio

Using the “MFC ClassWizard,” I incorporated an event handler for the button. I added a BN_CLICKED handler, calling the EndDialog method:

MFC ClassWizard and source code

In this image, we can see the processors available for compiling the application. In the 90s, multiple Windows CE models were on the market, necessitating developers to create binaries for each architecture—ARM, MIPS, and SH3 (as noted on the Total Commander download page). For this project, I selected SH3, as it's the CPU in my Jornada 680.

We can compile the application, transfer it onto a CF card, and execute it on Windows CE:

Running the application on HP Jornada 680

(While copying files and debugging can also be done via a serial cable, I do not possess one.)

Interestingly, the Visual Studio interface has remained consistent over the years. After completing this test, I opened Visual Studio 2015, over 15 years later, and was surprised to find that the MFC Application Wizard, MFC ClassWizard, and code editor look nearly identical:

Visual Studio 2015 interface Visual Studio 2015 code editor

Visual Studio 2015 offers more features, such as Azure integration, but the core logic remains unchanged. I replicated the steps outlined earlier and successfully created an MFC application for Windows 10:

MFC application on modern PC

Interestingly, the file size increased from 82 KB to 3 MB (due to static linking with MFC libraries in both instances). I have not yet verified if the latest Visual Studio 2022 continues to support MFC; readers are encouraged to explore this for themselves.

Final Thoughts

In this article, I explored the HP Jornada 680 handheld device operating on Windows CE 2.11, and it was an enjoyable experience. This compact and charming device resembles a "smaller desktop counterpart," packed with functionality. However, was using a Windows CE device genuinely practical? In my view, it was not. From a hardware standpoint, the 16 MB of RAM (with only half available for actual use due to memory partitioning), the absence of a hard drive, and the modest 640x200 screen limited users to running Windows and a few applications, but little else.

The Jornada's keyboard, while commendable for its size, remained too small for extensive text work, and editing capabilities were restricted. For comparison, the IBM ThinkPad, a typical laptop from the same period, boasted a 200 MHz CPU, an 800x600 display, a 6 GB drive, and 64–128 MB of RAM—making it clear that a pocket device could not compete with those specifications. A "pocket" version of Windows simply couldn't deliver the seamless experience Microsoft aimed for. The last HP Jornada model, the 728, which ran Windows CE 3.0, was produced in 2002, marking the end of the line for HP's offerings in this domain.

Was this all for naught? Not quite. It became evident that, similar to today, pocket devices excel at content consumption rather than creation. There was little marketing incentive to include keyboards in compact devices, as users primarily sought to read books, watch films, or check messages. A more user-friendly form factor emerged with Windows Mobile, utilized in Pocket PC devices like the HP iPAQ:

HP iPAQ Pocket PC

This design was far more practical for daily tasks. Despite being built on the same Windows CE foundation, its interface was optimized for smaller screens.

While Windows CE may not have gained traction in the consumer market, it found its niche in industrial applications. Devices like the Honeywell rugged PC exemplified this:

Honeywell rugged computer

These portable computers served industries and retail sectors where high computational power was unnecessary, but reliability was paramount. The last version of Windows CE, 7.0, was released in 2011, with support ending in 2021. Today, while many new industrial devices run on Linux or Android, some hardware continues to operate on Windows CE and will likely do so for the foreseeable future.

If you found this exploration engaging, consider subscribing to Medium for notifications on new articles, along with access to countless stories from other authors. Additionally, if you wish to see more pieces like this, your support through Patreon would be greatly appreciated.

For those intrigued by the history of computers and portable devices, feel free to check out my other reviews: - Télétel: The French Internet of the 80s (1982) - Compaq Plus Portable (1983) - Toshiba T1100 (1985) - Toshiba T3100 (1986) - Toshiba T3200 (1989) - Compaq LTE (1997) - Nokia 9110 Communicator (1998) - Psion 5MX PDA (1999) - BlackBerry Bold 9900 (1999) - Palm TX PDA (2005)

Thank you for your time!

Share the page:

Twitter Facebook Reddit LinkIn

-----------------------

Recent Post:

Confronting Elderly Hunger: The Silent Crisis in America

A look into the growing issue of hunger among seniors in America and how we can help.

Embracing Change: Understanding Your Worth in Activism

A reflection on self-worth and patience in activism, emphasizing the importance of individual journeys and contributions.

Effective Techniques to Beat Procrastination and Boost Productivity

Discover actionable strategies to combat procrastination and enhance productivity through practical methods.

The 21-Day Positivity Challenge: Transforming Your Mindset for Good

Explore a 21-day positivity challenge designed to shift your mindset and enhance your mental well-being.

Car Infotainment Systems: Why They’re Frustrating Drivers

A look into the frustrations of car infotainment systems and the need for improvement.

Creating Cross-Platform Applications with Tauri and Rust

A guide to using Tauri for building cross-platform applications, highlighting its advantages over Electron and integrating Rust for serial communication.

# Nintendo's Online Experience: A Frustrating Misstep

An exploration of the disappointing user experience of Nintendo's online services compared to competitors like Xbox and PlayStation.

Effortless Drag and Drop with Framer Motion in React

Explore how to implement drag, drop, and gesture handling in React using Framer Motion.