MARPLOT BINARY LAYER FILE FORMAT: OBJ (object) RECORD FORMAT

offset + 0 - 3 z=Object Length (bytes) (not counting 4 bytes for length) (long)
         4 - 7 Owner Code (long)
         8 -11 Modifier Code (long)
        12 -16 Location Code (state+county for Tiger objects) (5 bytes)
        17 -20 Modification Date (num of secs past midnight Jan 1, 1904 = long)
        21 -24 Object Version Flags (nth even bit = app #n can read obj;
               nth odd bit = app #n can write obj) (long)
        25.0-6 Object Type (high bit=0, reserved for future use) (byte)
                 1 Rectangle
                 2 Ellipse
                 3 Point/Symbol
                 4 Polyline
                 5 Polygon
                 6 Text
                 7 PICT
                 8 Alias
        25.7   Object Link (boolean)
        26-33  Object ID (8 bytes)
               object 1 low-long + 180000000 (long)  <- low long/lat used to
                                                        hold ID of original
               object 1 low-lat + 90000000 (long)    <- for alias objects
               object 1 hi-long + 180000000 (long) 
               object 1 hi-lat + 90000000 (long)

	Additional Notes on Object ID:

       /34-37  W Longitude \
       |38-41  S Latitude  |
    MBR|42-45  E Longitude |
       \46-49  N Latitude  /   

        50-53  Digitization Scale (long)
        54-57  CFCC (long)
        58-61  FIPS Place-code (place code of majority of segments, or 0 if no
               places; high order bit set if in more than one place) (long)
        62-65  State/County (long)
        66     Alias Count (byte)

       /67     x=Name Prefix Length (num bytes allocated for prefix) (byte)
       |68 - 67+x Name Prefix (variable, might contain 0-terminator and thus
       |          not use all bytes allocated)
   NAME|68+x   y=Name Length (total num of bytes allocated for name) (byte)
       \69+x - 68+x+y Name (variable, might contain 0-terminator and thus
                      not use all bytes allocated)

offset2=69+x+y - <-1 GRAPHICS (see below) 

GRAPHICS FIELDS

POINT OBJECTS:       (type=3)
offset2+ 0.0-3  Color (4 bits)
         0.4-7  Width (4 bits)
         1      Symbol Character (byte)

RECT/CIRCLE OBJECTS:
	 0.0-3  Color (4 bits)      \
   	 0.4-7	Line-Width (4 bits)  \ (total = byte) +
  	 1.0-3	Line-Pattern (4 bits) \
         1.4-7  Fill-Pattern (4 bits)  \ (total = byte)

PICT OBJECTS:  (type=7)
         0      Frame
         1-32   Filename (32 bytes)

TEXT OBJECTS:  (type=6)
         0.0-3  Color (4 bits)
         0.4-7  Frame (4 bits) (total = byte)
         1-2    Font  (short)
         3      Style (byte)
         4      n=length of text (short) 
         5- 4+n Text (variable, might end with 0-space)

RECT (1), ELLIPSE (2), POLYLINE (4), POLYGON (5)
         0.0-3  Color (4 bits)
         0.4-7  Line Width (4 bits)   (total = byte)
         1.0-3  Line Pattern (4 bits)
         1.4-7  Fill Pattern (4 bits)  (total = byte)
      polyline and polygon only:
         2-5    n=Number of Segments
                (long; high order bit: 1=compressed lat/longs, 0=uncompressed)
                segment 1 long + 180000000 (long; High order bit: 1 = FROM
                                            0 = TO)
                segment 1 lat + 90000000 (long)
                segment 1 flags (see below) (short)
                segment 1 attribute 0 (long)
   		. . .
     		segment 1 attribute n (n <= 15) (long)
		< repeat for number of segments; possibility of extra 0-filled
 		  segment space at the end >

flag:		bit	indicates presence, in order of
		---	-------------------------------
		0	TLID
		1	CFCC
		2	VER (+ polyID * 100 for Tiger Polygons)
		3-4	available for application use
		5	start address left
		6	start address right
		7	end address left
		8	end address right
		9	zip code left
		10	zip code right
		11-15	reserved for future use

Additional Notes on points: 

      /m+6-9.6  point Longitude
      |  9.7    To(0) or From(1) Point?
Points|  10-13  Latitude
 (n*) |  14-15  Flags (i=# of set bits)
      |  16- 15+i*4 Attributes
      \  m+= 16+i*4 next point

segments are arranged thus:
From point
To point
To point
To point
To point
...
From point (new disconnected string)
To point
To point
To point
...