The shape file is a binary format, which contains the following simple vector shape commands:
int8 = 8 bit byte
int16 = 16 bit int (little endian)
Set Color:
'S' R G B
83 INT8 INT8 INT8
Polyline: 16 bit integers, little endian, followed by 8 bit deltas,
terminated by an dx and dy value of 0
deltax, deltay are 8 bit signed bytes (byte). A polygon may have
up to 1023 points in it.
'p' x1 y1 dx2 dy2 ... 0 0
INT16 INT16 deltax deltay
'P' x1 y1 x2 y2 ... 65535 // all 16 bit ints
Polygon fill (delta format):
'f' x1 y1 dx2 dy2 ... 0 0
INT16 INT16 INT8 INT8
Polygon fill (absolute point):
'F' x1 y1 x2 y2 ... 0 0
INT16 INT16 INT16 INT16
Text: null terminated string
'T' x1 y1 c1 c2 c3 ... \000
16 16 INT8 INT8 INT8
* Draw bitmap (gif) image
'I' x1 y1 URL \000
INT16 INT16 charstring
End map:
'E'
A URL is a null terminated string such as "resource:///foo.gif" or "bar.gif"
(A relative URL is implicitly treated as an HTTP request to the app host server)


