Sharp Wizard Presentation Protocol

This page is incomplete ...

For their Wizard-series organisers, Sharp devised a presentation layer protocol to encode data for transmission using the IR link between devices. Apple subsequently used this protocol in their Newton-series devices.

The Wizard's have a number of built-in applications, each of which uses a specific data format. They share a common encoding style with different elements for each application.

This page documents what information I have been able to decipher through observation of the Newton protocol, together with the observations of Wizard owners (I only have a Newton). See Mike Van Emmerik's page for some additional, Wizard-specific information.

Please mail me if you discover any inaccuracies or additional information regarding this protocol.


Packet Format

Each item transferred consists of four parts, identified by a single ASCII character enclosed in double quotes, occupying the first 3 bytes on a line (lines are separated by CR/LF).

I - Item
Sent first, the "I" is followed by a series of 4-character labels, each enclosed in double quotes and separated by commas with no white space. Each of these labels matches an element in the Type and Data parts.

F - File
A single string (double quoted), of the form "S1:TEL1.BOX" where the TEL1 is dependent upon the sending application (in this case Telephone 1). I speculate that the S1: refers to a storage device and the .BOX represents a data format.

T - Type
A sequence of comma-separated string type names for each of the data elements.

D - Data
A sequence of comma-separated string data elements. So far, all observed elements are double-quoted strings. Some elements are an empty string ("") while others are a single quoted space (" ").

Line breaks in the string are represented by the ASCII Unit Separator character (0x1f).

The packet is completed by an ASCII EOF character (0x1a).


Application Item Formats

Memo

This format is also used by the Newton Notes application.

ITD
"SCRT" "ATTRIBUTE" A single, double-quoted, ASCII space character.
"HIST" "" (an empty string) "1" (not sure what this means)
"PCID" "PCID" "" (an empty string)
"TXNM" "TITLE" The title of the memo, as a doubled-quoted string.
"MEM1" "T DATA" Content of the memo as a single double-quoted string, each line break represented using the ASCII US character.
"TXTA" "T ATTR" "" (an empty string)
"LINA" "L ATTR" "" (an empty string)
"TIMN" "TIME" eg. "3171FD1306"
Timestamp for the item.

After some fine decoding work by Nathan Lamont, we now understand this field. It is the hex representation of a 40 bit field, constructed like

Byte #43210
Bit #7654321076543210765432107654321076543210
 YYYYYYYYYYYYMMMMDDDDDHHHHHmmmmmm00SSSSSS

where
Y = years since 1900,
M = month (1-12),
D = day of month (1-31),
H = hour of day (0-23),
m = minute of hour (0-59),
S = second of minute (0-59)
It appears that Wizards "maximise" the time fields upon reception (hour=31, minutes=63, seconds=63).
"PAGE" "PAGE" "01" (I don't know if this ever increases)
"FMTN" "FORMAT" "0101640020036400A0010004080C1014181C20"
This example is from a Wizard -- I'm not sure what it means.

Telephone 1

This seems a little more complex. The Wizard entry, as recorded by Mike Van Emmerik, contains the following elements. Note that the "Net Address" field ("FRE4") was user-defined).

"SCRT" "ATTRIBUTE" " "
"HIST" ""  
"PCID" "PCID" "1"
"NAME" "Name" Name data for the entry.

It seems that "NAME", "TEL1" and "ADR1" are elements 1, 2 and 3, respectively. The user-defined "Net Address" field has an I field of "FRE4", and then there are the "NULx" entries.

Outline


David Arnold
Last updated: $Date: 2003/03/31 07:19:54 $ $Revision: 1.1 $