Appendix F

Case 6:20-cv-00507-ADA Document 71-8 Filed 04/14/23 Page 1 of 3
Microsoft Windows CE: A New Handheld Computing Platform 

Robert O'Hara 

Development Manager 

Microsoft Corporation. One Microsoft Way, Redmond WA 98052-6399 

ROHara@Microsoft.com 

Windows CE, Handheld PC, PDA, mobile computing 

Abstract 

This paper describes the goals and key features of Microsoft 

Windows CE. Windows CE is the system and application 

software for a new class of computer, the handheld PC, or 

HPC. Microsoft produced the operating system, shell, and a 

suite of standard applications. The Windows CE team 

worked closely with several hardware manufacturers as they 

designed their HPC devices to ensure the best possible 

integration of hardware and software. 

Product Goals 

The Windows CE design was founded on reaching three 

primary goals. These were: 

1. Not he a PDA. The Windows CE team rejected the 

ambitious vision of PDAs such as the Newton and 

Magic Cap. So Windows CE does not Ely to be your 

assistant; rather it is just a useful tool. Handwriting 

recognitiun was also rejected for the first release 

(although reeognizers are available from two vendors). 

The must successful existing handheld computers (HP 

200LX. Psion 3a. Sharp Zaurus) all featured keyboards 

as the primary (or only) data entry mechanism. Thus 

the device on which Windows CE would run was called 

a "handheld PC". Finally, a "stealth" marketing 

approach was adopted. The feeling was that almost any 

marketing "hype" would he fatal to the product. 

Re a companion to the Windows desktop. The target 

customer for Windows CE is someone who uses 

Microsoft Windows. Thus it is essential for Windows 

CE to leverage the user's knowledge and experience in 

using Windows and its applications. It is also critical 

that the user's data be easily moved between the 

desktop PC and the Windows CE device. A user 

should simply have to plug the handheld PC into the 

docking cradle and all data would be synchronized. 

3. Deliver a device with a street price of $500. Market 

research conducted by the team in 1995 revealed this as 

a critical number. A product delivered at a price above 

this was predicted to face considerable consumer 

resistance. And indeed. the existing PDAs priced 

Permission to make digital or hard copies of part or all of this work for 

ersonal or classroom use is granted without fee provided that copies are not 

lade or distributed for profit or commercial advantage and that copies bear 

its notice and the full citation on the first page. Copyrights for components 

f this work owned by others than ACM must be honored. Abstracting with 

redit is permitted. To copy otherwise, to republish, to post on servers or to 

.distribute to lists, requires prior specific permission and/or a fee.-

: 1997 ACM 0-89791-850-9 97 0002 3.50 

above $500 have not sold well. To achieve this goal. 

the Windows CE team worked closely with the initial 

OEMs to ensure their designs could be delivered at the 

desired price. 

Hardware 

Part of the definition of a computing platform is that it be 

available from multiple hardware vendors. This is the case 

with Windows PCs, and it is the case with Windows CE. 

Like Windows NT, Windows CE was designed to support 

several different processors. The initial product supports, 

two, the Hitachi SH3 32-bit RISC processor, and the MIPS 

R4000 family of 32-bit RISC processors. Other 32-bit 

processors can be readily supported. 

A typical handheld PC is quite similar to existing products 

such as the HP 200 LX, the Psion 3a, or the Sharp Zaurus. 

It is of clamshell design, with a 60-key keyboard. Physical 

size is about 3 3/4" x 7" x 1", and it weighs about .75 lb. 

with two AA batteries installed. The screen is a gray scale 

240 x 480 LCD screen, with two bits per pixel. This 

provides for colors: black, white, and two shades of gray. 

Some of the devices have backlit screens. Instead of a 

mouse or other pointing device, the screen has a resistive 

touch surface. This allows the user to use a simple plastic 

stylus or the finger to select and operate on screen objects. 

Operating System 

The Pegasus operating system is the smallest member of the 

Windows family of operating systems. Like Windows NT. it 

is a fully 32-bit, multitasking, multithreaded system that 

runs on multiple CPU architectures. Yet the kernel occupies 

only 64K bytes of ROM, and the system plus multiple 

application programs can run in less than 400K bytes of 

RAM. The kernel supports a single address space. with 

process protection. Up to 32 concurrent processes are 

supported, and each process may have as many threads as 

available memory permits. The operating system and all 

built-in applications execute in place from ROM. 

Built-in support is provided for communications with other 

handheld PCs, the desktop PC, and the Internet. IrDA is 

used for infrared inter-machine communications, while 

Sockets, TCP/IP, and PPP provide desktop and Internet 

access. A subset of PCMCIA card and socket services 

support moderns. Support for installable client drivers is 

also provided. 

The Windows CE operating system implements an object 

store that is exposed to applications through three interfaces. 

The first is the native Windows CE database, and the API 

set is exclusive to Windows CE. The other two APIs are the 

3 

C15 

L. 

Microsoft Windows CE: A New Handheid Computing Platform 

Robert O'Hara 

Development Manager 

Microsoft Corporation, One Microsoft Way, Redmond WA 98052-6399 

ROHara@Microsoft.com 

Windows CE, Handheld PC, PDA, mobile computing 

Abstract 

This paper describes the goals and key features of Microsoft 

Windows CE. Windows CE is the system and application 

s~ware for a new class of computer, the handheld PC, or 

HPC. Microsoft produced the operating system, shell, and a 

suite of standard applications. The Windows CE team 

worked closely with several hardware manufacturers as they 

designed their HPC devices to ensure the best possible 

integration of hardware and software. 

Product Goals 

The Windows CE design was founded on reaching three 

primary goals. These were: 

1. Not be a PDA. The Windows CE team rejected the 

ambitious vision of PDAs such as the Newton and 

Magic Cap. So Windows CE does not try to be your 

assistant: rather it is just a useful tool. Handwriting 

rect~gnitit,n was also rejected fi:,r the first release 

(ahh~ugh recognizers are available from two vendors). 

The most successful existing handheld computers (HP 

200LX, Psion 3a, Sharp Zaurus) all featured keyboards 

as the primary (or only) data entry mechanism. Thus 

the device on which Windows CE would run was called 

a "handheld PC". Finally, a "stealth" marketing 

approach was adopted. The feeling was that ahnost any 

marketing "'hype" would be fatal to the product. 

2. Be a ctm~panion to the Windows desktop. The target 

cust~m~er for Windows CE is someone who uses 

Micr~,s~ft Windows. Thus it is essential for Windows 

CE tt, leverage the user's knowledge and experience in 

using Windows and its applications. It is also critical 

that the user's data be easily moved between the 

desktop PC and the Windows CE device. A user 

should simply have to plug the handbeld PC into the 

d~cking cradle and all data would be synchronized. 

Deliver a device with a street price of S500. Market 

research conducted by the team in 1995 revealed this as 

a critical number. A product delivered at a price above 

this was predicted to face considerable consumer 

resistance. Anti indeed, the existing PDAs priced 

3. 

Permission to make digital or hard copies of part or all of this work for 

ersonal or classroom use is granted without lee provided that copies are not 

rode or distributed tbr profit or commercial advantage and that copies bear 

1is notice and the full citation on the first page. Copyrights for components 

fthis work owned by others than ACM must be honored. Abstracting with 

redit is permitted. To cop} otherwise, to republish, to post on servers or to 

,:dislribute to lists, requires prior specific permission and/or a fee." 

: 1997ACM(I-89791-850o9 97 0002 3.50 

above $500 have not sold well. To achieve this goal, 

the Windows CE team worked closely with the initial 

OEMs to ensure their designs could be delivered at the 

desired price. 

Hardware 

Part of the definition of a computing platform is that it be 

available from multiple hardware vendors. This is the case 

with Windows PCs, and it is the case with Windows CE. 

Like Windows NT, Windows CE was designed to support 

several different processors. The initial product supports, 

two, the Hitachi SH3 32-bit RISe processor, and the MIPS 

R4000 family of 32-bit RISe processors. Other 32-bit 

processors can be readily supported. 

A typical handheld PC is quite similar to existing products 

such as the HP 200 LX, the Psion 3a, or the Sharp Zaurus. 

It is of clamshell design, with a 60-key keyboard. Physical 

size is about 3 3/4" x 7" x 1", and it weighs about .75 lb. 

with two AA batteries installed. The screen is a gray scale 

240 x 480 LCD screen, with two bits per pixel. This 

provides for colors: black, white, and two shades of gray. 

Some of the devices have backlit screens. Instead of a 

mouse or other pointing device, the screen has a resistive 

touch surface. This allows the user to use a simple plastic 

stylus or the finger to select and operate on screen objects. 

Operating System 

The Pegasus operating system is the smallest member of the 

Windows family of operating systems. Like Windows NT, it 

is a fully 32-bit, multitasking, multithreaded system that 

runs on multiple CPU architectures. Yet the kernel occupies 

only 64K bytes of ROM, and the system plus multiple 

application programs can run in less than 400K bytes of 

RAM The kernel supports a single address space, with 

process protection. Up to 32 concurrent processes are 

supported, and each process may have as many threads as 

available memory permits. The operating system and all 

built-in applications execute in place from ROM. 

Built-in support is provided for communications with other 

handheld PCs, the desktop PC, and the Internet. IrDA is 

used for infrared inter-machine communications, while 

Scx:kets, TCP/IP, and PPP provide desktop and Internet 

access. A subset of PCMCIA card and socket services 

support modems. Support for installable client drivers is 

also provided. 

The Windows CE operating system implements an object 

store that is exposed to applications through three interfaces. 

The first is the native Windows CE database, and the AP[ 

set is exclusive to Windows CE. The other two APls are the 

295 

Case 6:20-cv-00507-ADA Document 71-8 Filed 04/14/23 Page 2 of 3
Win32 file system and Registry APIs, and Windows CE 

implements a large subset of those found on Windows 95 or 

Windows NT. 

Finally, a set of RPC calls are supported to facilitate desktop 

application programs that communicate with Windows CE 

while it is docked. Through this interface, a desktop 

program has access to all of the database, file system, and 

Registry calls. 

User Interface 

Windows CE is instantly recognizable as a member of the 

Windows family. It includes key Windows 95 components 

as the taskbar with its enunciator and start button, the start 

menu. the desktop explorer, and shortcuts. 

This key design point has been repeatedly validated in focus 

groups and extensive usability testing. The comment we 

hear is, "I already know how to use it!", and we repeatedly 

observe Windows users new to Windows CE immediately 

begin to use it without any introduction. We believe 

Windows CE will have a shorter learning curve and offer 

greater leverage of users' existing Windows PC knowledge 

than any other handheld computer. In addition, its position 

as a new platform is strengthened as Windows CE extends 

the industry-standard operating system to the handheld 

market for the first time. 

Compatibility with Windows 95 extends beyond the 

operating system to the applications. Whenever possible, 

Windows CE applications look, feel, and work like their 

desktop counterparts. 

Built-in Applications 

Windows CE comes with a rich set of applications resident 

in ROM. All of them were written by the members of the 

Windows CE team. The applications include: 

• A personal information manager, comprised of three 

components, Contacts, Calendar, and Tasks. The 

Windows CE PIM is a subset of Microsoft Schedule+ 

on the desktop. When the Windows CE is connected to 

the desktop, changed data in any of the components is 

automatically synchronized with that on the desktop. 

• Companions to Microsoft Word and Microsoft Excel. 

Each of these programs is a small subset of its desktop 

counterpart. but implements the most-used features. 

Transfer and translation of documents between the 

handheld PC and desktop is a simple drag and drop 

operation. As the data conversion from the desktop to 

Pegasus is a lossy operation, automatic synchronization 

is not supported here. 

• A subset of Microsoft Internet Explorer. It 

automatically shrinks graphics and converts color 

spaces to maximize their readability on the handheld 

PC screen. 

• An inbox that provides electronic mail access to any 

server that supports SMTP and POPS. It provides APIs 

to allow transports to be developed by third parties to 

extend its reach. 

Solitaire It wouldn't be Windows without it. 

SDK and Development Environment 

The Windows CE SDK provides software developers with 

everything needed to write application programs for 

Windows CE. The SDK is delivered as extensions to the 

Microsoft Visual C++ development environment, and thus, 

in comparison with other handheld computers, is extremely 

comprehensive, robust, and mature. Windows programmers 

who are familiar with the Win32 API will find a very 

familiar environment here. Our experience has been that the 

learning curve for programming for Windows CE is 

measured in hours. 

Windows CE provides a large subset of the Win32 API. 

Most of the standard functions are there, but some major 

subsystem APIs are missing, as they are not supported on 

Windows CE. These include MFC, security, MAPI, ODBC, 

OLE, DirectX, and so on. In addition, there are some new 

Windows CE-specific APIs that support the features of this 

new platform. These include the Windows CE database, 

address book, notifications, mail client, and PCMCIA card 

drivers. 

Programmers develop Windows CE applications at a 

Windows NT desktop computer. Here the Windows CE 

SDK provides a very faithful emulation of the Windows CE 

operating system, so that most of the program development 

can take place entirely on the NT system. Of course, 

performance and hardware-specific features are not 

emulated. It is our experience that about 90% of the 

application development process can take place entirely in 

emulation. 

The Windows CE SDK provides cross compilers for both 

supported processors. As part of the build process. 

executables are automatically downloaded to the retail 

Windows CE device connected to the NT desktop via a 

serial cable. Remote debugging is supported from the 

development environment, along with other remote tools 

such as Spy (views messages), Zoomin (expands and 

captures screen images), RegEdit (edits the Registry), 

MemView (views memory), and Pview (displays process 

status). The remote object store browser lets developers 

view and manipulate data residing in the object store or file 

system, on both the real and emulated Windows CE. 

As of this writing (November, 1996), over 600 independent 

software vendors are developing applications for Windows 

CE. 

Currently you must use C or C++ to develop applications for 

Windows CE. Support for Java is currently under 

development, and support for Visual Basic is a future 

objective. 

Summary 

Windows CE is designed to be a platform; the newest 

member of the Windows family of operating systems. Its 

true success will come if it is able to grow the handheld 

computer market to the point where most professionals view 

a handheld computer as an essential business tool. 

More information on Windows CE is available at 

lutp:11www.microsqft.comlwindowslwindowsce. 

'96 

Win32 file system and Registry APEs, and Windows CE 

implenlents a large subset of those found on Windows 95 or 

Windows NT. 

Finally, a set of RPC calls are supported to facilitate desktop 

application programs that communicate with Windows CE 

while it is docked. Through this interface, a desktop 

program has access to all of the database, file system, and 

Registry calls. 

User Interface 

Windows CE is instantly recognizable as a member of the 

Windows family. It includes key Windows 95 components 

as the taskbar with its enunciator and start button, the start 

menu, the desktop explorer, and shortcuts. 

This key design point has been repeatedly validated in focus 

groups and extensive usability testing. The comment we 

hear is, "I already know how to use it!", and we repeatedly 

observe Windows users new to Windows CE immediately 

begin to use it without any introduction. We believe 

Windows CE will have a shorter learning curve and offer 

greater leverage of users" existing Windows PC knowledge 

than any other handheld computer. In addition, its position 

as a new platform is strengthened as Windows CE extends 

the industry-standard operating system to the handheld 

market for the first time. 

Ctmq~atibility with Windows 95 extends beyond the 

~perating system to the applications. Whenever possible, 

Wind,ws CE applications look, feel, and work like their 

desktop c~mnterparts. 

Built-in Applications 

Windows CE comes with a rich set of applications resident 

m R()M. All {~f them were written by the members of the 

Win&~ws CE team. The applications include: 

• A personal information manager, comprised of three 

c~mD~nents, Contacts, Calendar, and Tasks. The 

Win&~ws CE PIM is a subset of Microsoft Schedule+ 

~m the dcskt~p. When the Windows CE is connected to 

the deskmp, changed data in any of the components is 

auummticatty synchronized with that on the desktop. 

• Companions t~ Microsoft Word and Microsoft Excel. 

Each of these programs is a small subset of its desktop 

counterpart, but implements the most-used features. 

Transfer and translation of documents between the 

handheld PC and desktop is a simple drag and drop 

operation. As the data conversion from the desktop to 

Pegasus is a Iossy operation, automatic synchronization 

is n~t supp~rted here. 

• A subset of Microsoft lnternet Explorer. It 

autLmmtically shrinks graphics and converts color 

spaces tt, maximize their readability on the handheld 

PC screen. 

• An inbux that provides electronic mail access to any 

server that supports SMTP and POP3. It provides APls 

tt~ allnw transports to be developed by third parties to 

extend its reach. 

• Stditaire It wouldn't be Windows without it. 

SDK and Development Environment 

The Windows CE SDK provides software developers with 

everything needed to write application programs for 

Windows CE. The SDK is delivered as extensions to the 

Microsoft Visual C++ development environment, and thus, 

in comparison with other handheld computers, is extremely 

comprehensive, robust, and mature. Windows programmers 

who are familiar with the Win32 API will find a very 

familiar environment here. Our experience has been that the 

learning curve for programming for Windows CE is 

measured in hours. 

Windows CE provides a large subset of the Win32 API. 

Most of the standard functions are there, but some major 

subsystem APIs are missing, as they are not supported on 

Windows CE. These include MFC, security, MAPI, ODBC, 

OLE, DirectX, and so on. In addition, there are some new 

Windows CE-specific APIs that support the features of this 

new platform. These include the Windows CE database, 

address book, notifications, mail client, and PCMCIA card 

drivers. 

Programmers develop Windows CE applications at a 

Windows NT desktop computer. Here the Windows CE 

SDK provides a very faithful emulation of the Windows CE 

operating system, so that most of the program development 

can take place entirely on the NT system. Of course, 

performance and hardware-specific features are not 

emulated. It is our experience that about 90% of the 

application development process can take place entirely in 

emulation. 

The Windows CE SDK provides cross compilers for both 

supported processors. As part df the build process. 

executables are automatically downloaded to the retail 

Windows CE device connected to the NT desktop via a 

serial cable. Remote debugging is supported from the 

development environment, along with other remote tools 

such as Spy (views messages), Zoomin (expands and 

captures screen images), RegEdit (edits the Registry), 

MemView (views memory), and Pview (displays process 

status). The remote object store browser lets developers 

view and manipulate data residing in the object store or file 

system, on both the real and emulated Windows CE. 

As of this writing (November, 1996), over 600 independent 

software vendors are developing applications for Windows 

CE. 

Currently you must use C or C++ to develop applications for 

Windows CE. Support tbr Java is currently under 

development, and support for Visual Basic is a future 

objective. 

Summary 

Windows CE is designed to be a platform; the newest 

member of the Windows family of operating systems. Its 

true success will come if it is able to grow the handheld 

computer market to the point where most professionals view 

a handheld computer as an essential business tool. 

More information on Windows CE is available at 

http ://~,~'.micros{~.corn/windows/windowsce. 

296 

Case 6:20-cv-00507-ADA Document 71-8 Filed 04/14/23 Page 3 of 3