type glyph [display="Glyph"] { u16 letter [ui, readonly, display="Letter"]; i8 x0 [ui, readonly, display="X0"]; i8 y0 [ui, readonly, display="Y0"]; i8 dx [ui, readonly, display="DX"]; i8 pixel_width [ui, readonly, display="Pixel Width"]; i8 pixel_height [ui, readonly, display="Pixel Height"]; i8 pitch [ui, readonly, display="Pitch"]; // UV coordinates (4 floats = 16 bytes) // Read as raw bytes since we don't have float type yet uv_coords = read(16) [ui, readonly, display="UV Coords"]; // Padding to align to 32 bytes total (8 + 16 = 24, need 8 more) skip(8); }