Those Secret Fonts from the ISA-16 PS/2 Models (Again)
Here's a bit of an update on one of the more obscure little oddities in IBM PC history. To recap: certain PS/2 models (those based on the 16-bit ISA bus) have an extra set of screen fonts in their system ROMs, on top of the basic ones you get with every standard VGA BIOS. My first entry on the topic has the details on how they were actually meant to be used, and explains why this only really worked on some of the machines that had them - the PS/2 Models 30-286 and 25-286 (and those only in their very earliest BIOS revisions).
One thing that still wasn't clear was where they came from, or how they ended up in those BIOS ROMs. Well, there's good news for all you uncounted legions lying awake at night over this.
A while ago I was made aware of an interesting software package that made the rounds inside IBM around the late '80s, and went by the unlikely name of HOWARD the FONT (capitalization in original). Version 3.61 can be found here as a disk image, although that clearly wasn't the original distribution format: according to "what passes for documentation", it was originally published on an internal IBM 'conference' system as a pack of smaller archives. Below the prominent "IBM Internal Use Only" notice, we learn that it was authored at IBM's Austin, TX site by one Alan E. Beelitz - the same person who brought us the font management utilities in the Model 30-286's Starter Disk.
The title doesn't do this thing any favors, because HOWARD isn't just about fonts: it's more like the Swiss Army Knife of tweaking IBM PC text modes in surgically precise ways you didn't know you needed. The package seems to have been inspired by the inescapable observation that the video BIOS routines were slow, occasionally buggy, and generally a few pins short of a socket, and that the standard text styles weren't the pinnacle of type design either. What you get is a set of tools to make things a little better across the board: device drivers and command-
So if you're one of those rare (but undoubtedly fine-smelling) individuals who use an EGA card with the 5151 Monochrome Display and you find that its text output needs a little kick up the backside, or you'd like your DOS screen in swanky yellow-ANSI.SYS, or you just want to spruce up the character set of your MCGA or even your PC Convertible, then Howard (well, Alan) will fix you up. The fonts, utilitles and drivers are named after the author's colleagues and co-
Below are some samples of each style in HOWARD the FONT, not including the "NLSFONTS" (which cover the Latin/HOWARD.ANN. For this image, they're all rendered in an 8x16 grid regardless of their actual height, but it should give you a fairly good idea of what they look like:
HOWARD: the Fonts (click for larger image)
You could squint at these next to the above-mentioned PS/2 fonts and try to figure out the relationship, but I'll save you the ocular migraine: out of the PS/2 30-286's four extra fonts, three have exact duplicates in the HOWARD pack. The fourth is clearly based on yet another one, although they're not bit-
-------------------- ------------------------
PS/2 30-286 ROM Font Name in HOWARD the FONT
-------------------- ------------------------
Elite E000:9F00 ELITE16.FNT (identical)
Oak8 E000:AF00 OAKLEY16.FNT (identical)
Oak9 E000:BF00 OAKLYB16.FNT (identical)
Sanserif E000:CF00 HOWARD16.FNT (modified)
As for that last one on the list, below are both versions next to each other to highlight the differences (this time in VGA aspect, showing the character grid). HOWARD v3.61 is later than the original 30-286 BIOS ROM, so the HOWARD16 font represents the tweaks and improvements; most of the modified characters were simply shifted around by one dot, but others were edited further. If there's still any doubt that the two fonts are related, the eagle-
We can start making sense of the timeline if we look at some dates. For reference, the earliest 30-286 BIOS (the only revision that plays nice with the Starter Disk's font utilities) is dated 25 Aug 1988, and the utilities themselves say 08 Jul 1988.
Now, in the absense of earlier versions of HOWARD the FONT, it's hard to tell for sure when this package was initially put together. Most of the files bear dates stamps from 1988-9, but some fonts like APL16 are as old as 1985; the two Oakley fonts (which appear in these PS/2 models as 'Oak8' and 'Oak9') have mid-1986 dates. ELITE16 is stamped 12 Dec 1988, although it's exactly the same as the version in the 'rev. 0' BIOS (some four months older). As for HOWARD16, the (revised) version in here says 7 June 1989.
Alan E. Beelitz was involved in the original revision of the BIOS; whether the HOWARD package already existed in mid-1988 or not, he evidently decided to throw in some extra fonts that he and his friends had come up with. By September 1989, these fonts were still being maintained and updated (HOWARD v3.61), although their BIOS equivalents were already bit-
It's worth a chuckle when the author (at IBM Austin) takes a little swipe at the PC and PS/2 teams at Boca Raton, with his description of "BOCAPC16" (which is just the standard VGA ROM font). It's also a bit odd seeing 8x16 fonts dating from 1985/6, when none of IBM's PC adapters would have supported them (the EGA technically does, but that's non-
In the HOWARD.PAC file, you might also notice that the programming language is specified as TASM 1.0. IBM's own assemblers back then were derived from MASM, which at the time was still pre-5.0, so I couldn't fault any IBMer who sprang for the competition. Then again, we've already seen evidence that Hercules graphics cards were used internally at IBM, so this wasn't an isolated case of declining to "eat their own dog food".
The included text files make me sort of curious about the nature of the internal conference/
As for the actual choice of fonts that ended up in the Model 30-286 ROM... My apologies to Richard Oakley; I'm sure he is a man of immaculate talent and debonaire tastes, but I suppose everyone has their off days. The NEIL fonts would've made a better choice than the two 'Oak' variants - I was already mystified that the latter were deemed worthy of inclusion, and now I'm positively bewildered to learn that they were "designed by a professional typographer". On the other hand, so was Lucida Console, and I think that's even more of an eyesore, so what do I know.
15 comments:
Great post! Love me some font archeology!
Indeed, echoing Losso, it's always a pleasure when your blog shows up in my RSS reader. Thank you for the investigative reporting on these cold cases ;) !
Insider IBM software is uncommon, the other one I know is EPLCopy:
https://forum.vcfed.org/index.php?threads/eplcopy-4-21-copy-protection-schemes.76750/
"EPLcopy name comes from EPL, the IBM division in charge of software distribution. EPL copy was an IBM confidential program . Its distribution was forbidden even within IBM without some “need to know” or “need to use” reasons.
The main purpose of this program was to replicate copy protected diskette for sold software. The copy protection scheme was some non-standard sectors number , size and position shift. These elements are stored within the image file. EPL used this program to send commands and data to diskette replicators, including diskette label."
Hello!
Maybe for the people here could be interresting my font editor for DOS named Fontana.
It can import, edit and export quite a lot of bitmap formats. You may find it handy to work with such a font archeology.
http://laaca.borec.cz/blocek
@anr:
True, I remember that one. There were others that escaped into the wild more easily: IBM's E3 text editor was also 'Internal Use Only' and was everywhere for a while, even before they bundled a different version with PC-DOS. That was actually my favorite editor before the MS EDIT style came along (to be fair, it's much more powerful than EDIT).
Of course, an eclectic bunch of video/font drivers wasn't a confidential trade secret like EPLcopy... although the text file indicates that IBM automagically acquired a license for any software shared on that internal system.
@Laaca:
Thanks for sharing this! Should be useful for sure - I have a few "archeology" features in the pipeline to add to my own editor (Fontraption), but yours seems to cover more use cases than plain text mode with 8-bit encodings.
hello, is there any way to subscribe to this blog? so i get notified when new post
There's the RSS feed at the top. I don't see myself putting up anything that sends out emails or similar... spam filters have real twitchy trigger fingers these days, and ending up on a blacklist is all too easy.
In retrospect, Terminus-16 from terminus-bitmap-fonts has quite the neil16.fnt vibe.
would you consider posting a bitmap showing the full charset for HOWARD8 as you did Sanserif in the previous blog post ? thanks ! :-]
@offal - sure, here are the character set images for all fonts in the pack: howardfonts.zip
Cool stuff, mate.
My family's computer circa 1989 was an IBM 5140 Convertible and we used WANDA on it. Later that year we got a Model 25 (pre-286), and ran HOWARD the FONT on it. That was MCGA so the 8x16 fonts looked nice on it.
I disassembled GLUECK.SYS here:
https://github.com/JoshRodd/HOWARD
PCTOOLS was a "minidisk" on the mainframe that IBM employees used; a minidisk was sort of like a shared network drive. You could map it into your local session and upload and download files to/from it. Filenames would consist of an 8-character extension; so "HOWARD.ANN" would have been "HOWARD ANNOUNCE" on the host. I really wish someone had a complete archive of PCTOOLS.
Somewhere in my parents' house is a stack of old diskettes that might have some unreleased versions of other similar stuff. I need to go through them and see if there's anything on there that hasn't been archived yet.
@Josh: excellent info about PCTOOLS, thank you. The readme had such non-DOS filenames in it, so that did make me wonder. Those old disks sound like a great thing to mine for potential nuggets...
And good work on disassembling the driver! I might have a look there and see if any ideas are worth "adapting" for my font TSRs. ;)
Hello! I love your work with the fonts. As the old nerd that I am, I remember with nostalgia those moments and late nights when I’d sit staring at the screen in the dark, in awe of everything the computer was back then. I’m not that old—I’m 43 now and talking about the mid-90s—but I still feel like part of the old guard, because back then you still had to jump IRQs and DMAs on the cards if you wanted your peripherals to work. A big THANK YOU for the work, straight from Brazil!