Jazz Jackrabbit Font Format
The font files in Jazz are stored in two slightly different ways, some font characters are stored in non-font files. (For example the bonus font is stored in BONUS.000 with the bonus sprites.)
The standard .0FN files (Fontbig, fontiny, fontmn1, fontmn2 and font2) consist of a 23 byte header ('Digital Dimensions + $1A followed by the h and v spacing between font characters when displayed and two blank bytes.) followed by font characters. Font characters can either contain data, or be placeholders. Placeholders are simply a blank word, and tend to end up in blocks in the font file.
Font characters consist of a character size word (Uncompressed character size + 4) followed by a Jazz Jackrabbit RLE compression compressed block. (RLE block size word followed by compressed data.)
Uncompressed character data consists of two words, the character width and height, followed by the character pixel data stored in the 'normal' way. Fonts contain no palette, so the color of the font will depend on the level it is in.
This font file is similar to the others, but with some differences. Its header contains only word dictating how many font characters are in the file (Default 37), followed by characters themselves. (There is no h or v spacing for this font.)
Characters are uncompressed and consist of a header of 8 bytes. (Four words; width of character \ 4; height of character; height * width / 4; and a blank word.) followed by the character data.
Character data is stored as four interlaced images. Each image is one quarter of the columns of pixels making up the character. Image 1 is columns 1,5,9... image 2 is 2,6,10... and so on.
This contains the bonus level font and sprites. It is not a font file per se but a graphics file.