The proposed file structure looks fine.  I presume that the font name in the
pre-amble is an array of 12 characters (left aligned, space padded) and not an
imp-string.

My main purpose in separating dimension from raster information was to reduce
the redundancy which is likely to occur in small simple fonts.  As the maximum
saving in a 128 character font is about 1Kbyte, I accept that the other
arguments are stronger, particularly regarding hardware assist.

The standard control information needs some clarification.  The character width
and height values at -12 and -10 should be called X increment and Y increment. 
They are signed values added to the cursor position to give they location of the
next character.  My terminology is 'cursor' for the point of reference with
respect to which a character is placed, and 'origin' for the point of reference
of the raster.  Origin = Cursor + Offset.  The origin is definitely the top left
corner of the raster.  MIT's cursor is at the left of the character, on the
baseline (i.e. the bottom of most charcters, other than those with descenders). 
This arrangement makes the characters independant of one another's size,
basically by begging the question of how far the biggest characters extend above
and below the baseline.  Page make-up programs would have to scan through to
find these maxima.  I agree that it is probably preferable to have the cursor at
the top left.  Together with the font height value in the pre-amble the vertical
situation is clear.  It does mean though that if an extra-high character is
added to the font, all the other Y offset values have to be fixed.

With both origin and cursor at top left, it certainly would be consistent to
consider the page origin likewise, and have the y-axis increasing downward.
