Last updated 24 June 1998
In 1993, I was working on a consulting project involving printing documents in many European languages, and thus I came to be interested in the various "symbol sets" that Hewlett-Packard LaserJet printers support (along with the corresponding MS DOS "code pages").
I was also fooling around with Borland's Turbo Assembler product at the time. So, for my first non-trivial assembler project since college, I wrote a little DOS program called HPSYMSET to print a one-page chart of all the characters in any given HP symbol set. The upper-left corner of a sample page is shown at the right.
Download HPSYMSET.COM and execute it from an MS DOS window. (You'll probably have to right-click this link and choose "Save Link As..." or "Save Target As...".)
For those doing Web work, you'll want the chart produced by the command:
HPSYMSET 19U = Windows 3.1 Latin 1 (ANSI)
The original PC DOS character set can be produced by the command:
HPSYMSET 10U = PC-8 (IBM Extended ASCII)
FYI, here's a list of HP symbol sets:
0D = ISO 60: Norwegian 1 1E = ISO 4: United Kingdom 9E = Windows 3.1 Latin 2 1F = ISO 69: French 1G = ISO 21: German 0I = ISO 15: Italian 6J = Microsoft Publishing 7J = DeskTop 10J = PS Text 12J = MC Text 13J = Ventura International 14J = Ventura US 579L = Wingdings 5M = PS Math 8M = Math-8 19M = Symbol 0N = ISO 8859-1 (ECMA-94) Latin 1 2N = ISO 8859-2: Latin 2 5N = ISO 8859-9: Latin 5 0S = ISO 11: Swedish 2S = ISO 17: Spanish 5T = Windows 3.1 Latin 5 9T = Turkish 0U = ISO 6: ASCII 1U = Legal 8U = Roman-8 (HP Factory Default) 9U = Windows 3.0 Latin 1 10U = PC-8 (IBM Extended ASCII) 11U = PC-8 D/N 12U = PC 850 15U = Pi Font 17U = PC-852 19U = Windows 3.1 Latin 1 (ANSI)
If HPSYMSET is executed with no argument, it displays a help message:
HPSYMSET.COM: Prints a chart displaying a LaserJet symbol set Argument: The first "word" of the argument specifies the desired HP symbol set code (Be sure that the code ends with an upper-case letter) Use "*" to display your printer's default symbol set Any additional text is added to the chart title Examples: HPSYMSET * My Printer's Default HPSYMSET 8U is Roman-8 (HP Factory Default) HPSYMSET 10U = PC-8 (IBM Extended ASCII) HPSYMSET 8M Requires: HP LaserJet III, IIID, IIISi, IIIP, or 4 (Probably any HP LaserJet model III or better) Author: Rex Swain · 8 South Street · Washington, CT 06793 · 860-868-0131
It still amazes me that the program file is only 1,948 bytes -- and about 600 of those bytes (30%) are the help message! That's smaller than this HTML file. No CD-ROM drive required. No need to ZIP it. Bare metal programming.
6/19/2005 -- Note that this DOS program prints to LPT1:, and modern versions of Windows do not know how to deal with that ancient technique. My friend Charles Brenner has a page explaining Printing from Windows XP, which may help you.
You are visitor since 23 June 1998
Copyright © 1998-2005 Rex Swain
E-mail firstname.lastname@example.org, Web http://www.rexswain.com