## Some notes about text in the Windows version of "Star Trek: The Next Generation Interactive Technical Manual" (trektech) The text is stored on-disc in an app-specific one-byte encoding that is somewhat similar to "MacRoman" but has a bunch of app-specific symbols. The custom WinFont is made to match this pseudo-MacRoman encoding. The text displays as intended when the bytes are passed through from disk to font display directly (so byte 0xd5 on disk shows glyph 0xd5, a right-single-quote symbol). ScummVM's Director engine (at the time) seemed to make a couple of mistakes. It tried (in at least one place) to decode the custom single-byte encoding as if it were UTF-8, which treated 0xd5 as the start of an invalid multi-byte sequence, which eventually displays something that looks like "CAPTAIN?" instead of something that looks like "CAPTAIN'S". Also, trektech's Lingo scripts dynamically populate on-screen text fields based on these text files. Just around the time I was researching trektech, ScummVM's Director engine started resetting text formatting when text was emptied... and so showed the default font instead. (I partially reverted this commit 77582aa8233b3037dec2ef71e6220205a31fbcda while I was investigating.) (Update: apparently that commit was mostly reverted a few months later in dc52513ed3141480931c89cee4d3386dd50f62ae .) I didn't investigate whether trektech uses Director's font mapping subsystem, but it probably does because seems that trektech was authored on and for the Macintosh environment then exported to Windows. The font mapping subsystem can map font names, font sizes, and encoding bytes, so it seems like it might be relevant. (Update: trektech does include a font mapping resource, and it does mention the custom font but without any size mapping.)