Under the MessagePad’s Hood
The MessagePad, Apple’s new Personal Digital Assistant, is a type of Newton. So, you may ask, what exactly is a Newton? Newton represents an architecture that combines hardware, software, and application technologies. The Newton architecture doesn’t try to create a miniature computer. Instead, by discarding bulky desktop computer trappings like keyboards and hard drives, the architecture provides mobile yet powerful systems that have rich communications functions. Importantly, Newton is not proprietary. Apple intends to license it, and has already done so to Sharp, Siemens, Motorola, Cirrus Logic, and Matsushita.
An Outside Glance — The MessagePad typifies the design goals of the Newton architecture. The system is diminutive enough to carry around like a paperback book. It weighs just under one pound, measures .75 inches thick, and has a 7.25 by 4.5 inch face. A low-power, reflective, LCD, 336- by 240-pixel, black-and-white screen displays information. The MessagePad has no keyboard; the primary input device is a passive plastic stylus. A resistive film over the screen senses and tracks the stylus motions. The MessagePad comes with an RS-422 serial port and a low-power, half-duplex, infrared transceiver built in. The serial port uses a Mac mini DIN-8 connector, and like the Mac, this port doubles as a modem port and LocalTalk network connection. The infrared transceiver uses Sharp’s infrared communications protocols to "beam" data at rates of up to 19,200 bps (typically 9,600 bps) to another Newton at distances up to three feet. For communications, there’s a seven-ounce fax modem that runs off the MessagePad’s power charger or two AA alkaline batteries.
Pad Power — Stand-alone power comes from four AAA alkaline cells or a rechargeable nickel-cadmium battery pack. Apple estimates battery life at two weeks for alkaline cells, and one week for the battery pack. A small lithium cell preserves memory while the batteries are changed, and an ingenious interlock mechanism prevents you from removing the battery pack and the lithium cell at the same time. You plug into the wall using a universal power adapter (100V – 240V, 50 – 80 Hz), which also recharges the battery pack. Different power adapters are available for the U.S., Japan, Australia, and Europe.
Inside the MessagePad — The heart of the MessagePad is a general-purpose 20 MHz ARM610 RISC microprocessor made by Advanced RISC Machines. The ARM610 combines on a single chip an ARM6 RISC CPU, a 4K cache, a write buffer, and an MMU (memory management unit) designed to Apple’s specifications. The write buffer enhances performance by storing up to eight 32-bit data values and writing them to main memory independently of the CPU. The MMU implements a two-level page-table structure and certain extensions that make it suitable for object-oriented systems. A read-lock-write operation performs indivisible memory updates, which are essential for testing and setting semaphores or handling shared memory in a multitasking operating system. The ARM610 can handle Big-Endian (Motorola) and Little-Endian (Intel) addressing modes, and has fast interrupt response features that make it ideal for real-time processing. It also consumes little power (less than .5 watts), and is fully static (when the processor’s clock stops, its internal state is preserved and it consumes little power). The small ARM instruction set (it has only ten basic instruction types) provides high-level language support, yet is straightforward enough to allow assembly language programming. Last but not least, the ARM610’s manufacturing costs less than $25 in quantities of 100,000.
A custom Apple ASIC (Application Specific Integrated Circuit) controls the MessagePad’s power and the various memory and I/O subsystems, including the serial port, the infrared transceiver, and the LCD screen. It handles sound generation, DMA (Direct Memory Access) for sound and serial data, the PCMCIA card interface, timing signals, and calendar functions. By the way, if you wondered, PCMCIA stands for Personal Computer Memory Card International Association.
The MessagePad uses 4 MB of ROM to store its operating system and several built-in applications. Included here is the handwriting recognition engine written by Paragraph International, a U.S.-Russian joint venture in Sunnyvale, California and Moscow.
The MessagePad has 640K of SRAM (Static RAM) for working memory and data storage, of which approximately 200K is free for user data. There’s no hard drive to save data, so users will probably want a flash memory card for backups. I had a chance to try the 2 MB PCMCIA RAM card from Epson. I inserted it into the card slot, and switched the MessagePad on. Although this card was originally designed for PC notebooks, the MessagePad recognized it, and asked to erase it. After several seconds, I had an additional 2 MB of memory to work with – a good show for Apple PIE, Epson, and hardware standards. The Newton Intelligence allows you to file individual schedules and notes to the card, or make a backup of all data.
Other cards let you add functionality to the MessagePad. Lots of cards should be coming from various vendors, and one of the main cards to look forward to using is the PCMCIA Messaging Card, which consists of a one-way wireless pager that can receive text messages.
The Newton Operating System — The MessagePad uses the Newton OS, or Newton Intelligence, in Apple parlance. The Newton Intelligence (NI) is an object-oriented, multitasking OS from the ground up. However, it borrows a number of useful components from the Macintosh. Portions of QuickDraw – the Mac imaging engine – handle the display. The NI uses the AppleTalk protocol stack to support name look-up, zones, data streams, and printing. There’s currently no support for AppleTalk Remote Access. However, the NI is designed to be extensible, and Apple plans to distribute software updates and extensions via online services. Apple built the NI on several software components: the Recognition Architecture, the Communications Architecture, the Information Architecture, and the Intelligent Assistance.
The Recognition Architecture — The Recognition Architecture deals with stylus input, and a text recognition engine – or recognizer – handles printed text, cursive text, or a mix of the two. The recognizer is trainable, and adapts to your handwriting over time (about 150 words, if you use the built-in training program). You can also specify the type of text you write and the character shapes in the Preferences section to short-circuit the training process. The recognizer uses a 10,000-word dictionary to assist in word recognition. This makes for fast word identification, but it also means that the results of a misinterpreted word, or for a word missing from the dictionary, can be wide off the mark. The user interface allows new words to be added to the dictionary. The overall design makes the MessagePad easy to adapt to overseas markets. By changing dictionaries, you can make the Newton Recognition Architecture handle new languages.
A graphics recognizer detects specific objects and stroke symmetries as you sketch. A round scribble becomes a circle; four perpendicular lines become a rectangle. These recognizers detect several predefined gestures to edit or erase text. Both the text and graphics recognizers can be switched off so that the MessagePad only records digital ink. However, it’s better to have the recognizers in action, because text and object-based graphics require less storage. Also text can be searched for, or used by other applications. Due to storage constraints and usability problems, the MessagePad doesn’t support deferred recognition – the ability to store screens of ink and then extract text and graphics later. However, nothing in the Architecture precludes this feature from being added in the future.
The Communications Architecture — The Communications Architecture supports a variety of I/O devices. With a serial cable, the MessagePad prints to Apple serial printers. An optional cable, available in the Print Pack, stores printer drivers and allows the MessagePad to print to a wide variety of parallel printers. The same serial port allows you to print to PostScript printers through a LocalTalk connection. The infrared transceiver lets you exchange data with another MessagePad or a Sharp Wizard 9600. This architecture is extensible, so new devices can join the repertoire.
The Information Architecture — The Information Architecture levers off the NI’s object-oriented design. As data enters the MessagePad, the Information Architecture tags (or names) it and compresses it as required. Data is saved in an object called a frame, a structure composed of data stored in tagged locations called slots. Slots can contain data values, code, and even other frames. Frames use a unified data model which eliminates data translation overhead and the redundant copies such translations often make. This common data format also promotes data sharing among Newton applications. As objects, high-level meanings can be attached to frames: address, for instance, can represent "One Phoenix Mill Lane."
A collection of related data frames is known as a soup, and soups reside in physical locations called stores. A soup of contact names might exist on a store that’s located on a RAM card. Soups maintain indexes to the frames within them. What this means is that all information entered into the MessagePad automatically becomes part of an object database that can be searched, modified, and displayed in different forms by various applications. All information is processed as Unicode, which means the MessagePad can readily handle foreign languages.
The Intelligent Assistance — The Intelligent Assistance uses the soup of data objects to make plausible connections between information and your actions. For instance, to see the Intelligent Assistance in action, draw a sketch in the NotePad and ask the MessagePad to "fax to Lisa." The Intelligent Assistance will assume you want to send the sketch. Next, it will locate everyone named Lisa in the object database. If there’s more than one, the MessagePad prompts you to make a choice. The Assistance then retrieves the fax number associated with the desired Lisa and generates a fax image. If a fax modem is connected to the MessagePad, the Assistance transmits the fax. Like the rest of the NI, the Intelligent Assistance rules can be extended to handle new applications or devices.
The synergy of the Intelligent Assistance with the object database makes the MessagePad a winner. The ability to locate information within the system and act on it in rational ways is a major improvement. Once a contact and her relevant information is captured in a MessagePad loaded with communications options, you can easily call her, fax her, schedule appointments with her, or send her email. The Newton OS eliminates the many redundant operations (launching an application, locating a file, opening the file, and searching for data in the file) that you do on a desktop computer to accomplish the same thing, and it’s a model desktop computers should adopt. The Newton implementation is by no means perfect, but it’s a huge step in the right direction.