Skip to content
ISSOtm edited this page Jun 21, 2024 · 5 revisions

This page describes the raw data format used by gb-vwf, for example if you intend to write code manipulating it, or if you want to write a custom conversion script. If you only want to make images for the bundled conversion script, please see Fonts.

Note

Last updated as of commit a9229398da90aac7c51b8fdbfab7f005cf0ea594. Like all internals, it is subject to change, and sometimes this page is forgotten about... Please open an issue if this appears to be outdated.

Overall structure

The font data has two parts: the pixel data, and the glyph lengths.

The font's "base" pointer lies before the glyph data, but after the glyph lengths.

Glyph data

Each glyph's pixels are stored, left-justified (i.e. the MSB contains the leftmost pixel), and in 1bpp tile format.

Caution

Bit 0 of all rows must be unset! Otherwise, the shifting code will misbehave.

Glyph lengths

Each glyph's length is stored in a single byte, but the twist is that they are stored backwards, right before the font's base pointer.