home *** CD-ROM | disk | FTP | other *** search
- Nroff Driver Table Compiler/De-compiler Utility
- -----------------------------------------------
-
- There are two programs in this package. Table compiles an
- nroff terminal driver table from source, and elbat, the inverse
- operator, de-compiles an existing formatted table to produce a
- source. There is also a sample driver source, kindly provided by
- Bo Thide', for the HP LaserJet+ using a Math Elite font cartridge.
- A man page, a Makefile, and this README file are also provided.
-
- This is version 2.0 of the table utility, superceding versions
- 1.1 and 1.2. New features of version 2.0 are:
- - Support for Kanji characters. There is a new element in the table
- called Kchar. This is a feature of HP's latest release for their
- 9000 series computers.
- - A better Makefile.
- - A -d debug option for elbat.
- - The compiled table should now be bit-for-bit identical to that
- supplied with your system, given the same source file. To test this,
- decompile a supplied tabfile with elbat, recompile the resultant
- source, and cmp the result with the supplied tabfile. This is true
- at least for the files on my system (HP9000 series 520, HPUX 5.2)
- - Several bugs fixed.
- - A man page, table.5
-
- Sources for the tab files are in 'C', and consist simply of
- an initialized structure. This structure is compiled and linked to
- the main program module, table.o (compiled from table.c), to
- produce an executable a.out file. This file when executed produces
- the compiled tab file.
- A Makefile is provided to formalize this procedure. The
- sources for the various terminals (all files named tabXXXX.c, where
- XXXX is replaced by a short acronym for the terminal: e.g. tab450.c)
- are included the the SOURCES definition in the Makefile. Typing
- "make" or "make all" compiles these sources, and runs the executable
- a.out files to produce the compiled tab files, calling them tabXXXX.tab.
- Typing "make install" renames the tabXXXX.tab files to tabXXXX, and
- copies them to the /usr/lib/term directory, where nroff will find
- them when the -TXXXX option is used.
- Typing "make elbat" makes the elbat program, which can take
- a compiled tabXXXX file and produce a source tabXXXX.c file. Using
- the -d (debug) option with elbat produces a dump of the actual
- character data in the file.
- Be VERY CAREFUL with "make install" (try "make -n install
- first). You don't likely want to delete system-supplied tab files!
-
- The table.5 man page contains more information.
-
- IF YOU HAVE PROBLEMS...
- It is quite possible that the tab file format on your machine
- differs in minor or major ways from that embodied by this utility. Since
- the tabfile format was inferred from careful examination of a small number
- of supplied tab files on one system only, there is no guarantee that it
- will work on all systems. One major potential problem is in the
- inclusion/exculsion of the Kchar (Kanji) element in the tabfile structure.
- Use elbat to decompile an existing tabfile; it should tell you if the
- tabfile size is inconsistent with the content. If this is so, change
- the "#define KANJI" line in the Makefile, and try again.
-
- Acknowledgements:
- Ian Darwin tested out the first (very buggy) version of
- this utility, and suggested many useful changes, including the
- introduction of the Makefile.
-
- Matt Crawford wrote the elbat program originally for
- Berkeley systems.
-
- Caveat:
- This utility was written to permit the author to configure nroff
- on his machine for terminals/fonts unsupported by the supplied tabfiles.
- It was not intended as a universal utility applicable to all machines
- or versions of unix. It has been released without any guarantee whatsoever.
- The author does not intend to support this software to any extent, and
- users should understand that future changes to their system software may
- break this utility. This being so, it would be foolish to depend too
- heavily on the functionality that this utility provides.
-
- Copyright (c) 1987 by Bruce Townsend and Bell-Northern Research.
- Permission is granted to use and distribute, except for profit,
- providing this copyright notice and the author's name is included.
- No warranty of any kind is expressed or implied, and no liability of
- any kind is assumed by either the author or Bell-Northern Research.
-
- ---
- Bruce Townsend (bnr-vpa!bruce) Phone: (613) 726-3008
- Bell-Northern Research Usenet: {utzoo, utcs}!bnr-vpa!bruce
- P.O. Box 3511, Station C, Ottawa, Ontario, Canada, K1Y 4H7
-