From UFOpaedia
Jump to navigation Jump to search

An array of Font Glyphs for rendering the small text. Each character is represented by an 8x9 bitmap of up to six colors (including transparency), using one byte per pixel (72 bytes per character. These color indexes are remapped to different parts of the palette in use at run time (so text using this font may appear in many different shades or colors).

The standard table starts at the first printable ASCII character, 33 ('!'), and continues to character 161 - For a total of 128 characters (9,216 bytes). Viewed from left to right, top to bottom, they are:


The CE version adds an extra 45 characters for a total of 173 (12,456 bytes).



The space used in smallset.dat and biglets.dat is the same for each character - 8x9. However, characters like capital A though Z will overlap adjacent characters if they are edited to be larger than the original characters when they are rendered in the game. This seems to be handled by the executable and isn't controllable by editing smallset.dat or biglets.dat. So characters will be limited in practical size. You can have edited characters fit without overlapping by making any edited characters no larger than the originals are. Importantly, they need to fit inside the original character boundaries (and position) as they are in the unedited DAT files. The boundaries for the characters are usually the corners colored in (greyscale) hex value 05. The boundaries vary, and so the effective character size varies. Compare the capital A and capital I with an editor to see the difference.

Greyscale key for smallset.dat and biglets.dat

In smallset and biglets.dat they can be the following values. Except, smallset.dat doesn't use 03 normally, the game runs when 03 is used but any side effects about this haven't been discovered.

  • Hexadecimal value - description
  • 00 - Transparency
  • 01 - Brightest
  • 02 - Bright
  • 03 - Medium
  • 04 - Dark
  • 05 - Darkest (not black)

Suggested ways to view and save smallset and biglets.dat
Using a hex editor like the freeware program HxD, use the following settings :

  • View bytes per row - 8
  • Charset - DOS/IBM-ASCII

Image editors
Image editors like the Gnu Image Manipulation Program (the GIMP) are able to load these files if they are loaded as RAW images. Correct saving may not be possible with some image editing programs. Hex editing is probably the safer option, so use caution and compare file sizes with hex editors if you attempt to save with one of these. Image editors can make seeing (read only) new characters as they will look in the game easy, but the game is needed to see overlap problems.
Use settings like the following to load these dat files into an image editor :

  • Image type : Indexed
  • Offset : 0
  • Width : 8 (dos version)
  • Height : 1152 (dos version)
  • Palette Type : RGB Normal
  • Palette Offset : 0
  • Palette file : None

Other notes
Characters 0 through 9 seem to use up to 8x8, with one (x dimension) row cropped, but they can overlap other nearby characters like capitals A through Z do if they are larger than the original characters, for example on finance screens or the load game screen. Period can edited to be larger than the original but can overlap itself on the load game screen.

See Also