Monday, March 9, 2026

To Find Treasure, Read an Enchanted Scroll

He recommended that I write my documentation in TeX (“tech”), a typesetting language developed by Donald Knuth. As a result, I was hired by a medical records firm deeply invested in TeX for documentation. As it happened, TeX was the basis for SGML, the Standard Generalized Markup Language. SGML became HTML. In the meantime, I served as the secretary of our local DECUS chapter and produced the quarterly newsletter in TeX. In addition to writing the system maintenance manual for a MicroVAX, I also documented the game of Moria on the VAX using TeX. When HTML was invented, it was pretty easy for me to figure out. — https://necessaryfacts.blogspot.com/2013/08/claude-m-watson-1922-2013.html

"One of the major areas where TeX holds its own is as a “back end” to SGML and XML systems, where no human intervention is expected between data input (structured, not WYSIWYG) and removing the output from the printer or viewing it on a screen. Granted, this isn't “creative” in the sense most often discussed, but it's still important to the readability and usefulness of such documents that care is taken with the design and typography, and the flexibility and programmability of TeX makes that possible.

"In summary, TeX is a special-purpose programming language, and the program that interprets the language, that is the centerpiece of a typesetting system that produces publication quality mathematics (and surrounding text), available to and usable by individuals." https://www.tug.org/whatis.html


CTAN: The Comprehensive TeX Archive Network 

- https://ctan.org/tex?lang=en



%This is written in Donald Knuth's  \TeX 


\font\reg=amr10 scaled\magstep1

\font\ty=amtt10 scaled\magstep1

\font\sl=amsl10 scaled\magstep1

\font\it=ammi10 scaled\magstep1 

\font\nt=amssbx10 scaled\magstep0 


\def\nl{\hfil\break} 

\def\cl{\centerline} 

\def\ll{\leftline} 

\def\rl{\rightline} 

\def\p{\indent} 

\def\ub{\underbar}


\reg

\cl{A guide to {\nt{Rogue: The Dungeons of Doom}}}

\vskip.1in

The game of {\nt{Rogue}} was developed by Michael C. Toy, Kenneth C.R.C. Arnold, Jon Lane and Glenn Wichman.  Jon lane adapted the game for the IBM-PC.  It is marketed by Artificial Intelligence and Epyx.  This copy is pirated.


The object of the game is to fight your way down 26 levels to retrieve the {\sl{Amulet of Yendar},} then bring the Amulet up to the surface.

\vskip.1in


\ll{{\ty{\ub{Keyboard \& Keypad}}}}

\vskip.1in



You move left, right, up down and diagonally by using the cursor control keys on the numeric keypad.  To strike a monster, move into it.  If the monster is to the left, use the left arrow key.  Some {\ty{qwerty}} keys will also move you.


Function key {\ty{F1}} is {\ty{Help}.}


Function key {\ty{F3}} is the {\ty{Repeat}.}  If you want to throw a bunch of darts, press numeric keypad $+$ {\ty{(plus)}}, then the direction key, then the {\ty{qwerty}} key that corresponds to your darts.  To repeat the throwing sequence, press {\ty{F3}.}

 

Function key {\ty{F9}} is programmable. If you press {\ty{F9}} you will see the version number.  You can then key in {\ty{ALT-F9}} to program it, for instance with 3s to search the same place 3 times.


Function key {\ty{F10}} is the {\ty{Boss Key}.}  Press it and the screen goes blank and shows the MS-DOS  {\ty{C>}} prompt.


The {\ty{Del}} key is for waiting.  The {\ty{Ins}} key takes you down a stair case.  {\ty{Scroll Lock}} turns on {\ty{Fast Play}.}  You will dash down hallways and across rooms.


Pay close attention to {\ty{CASE}.}  UPPER CASE `T' means `Take off Armor' while lower case `t' means `throw weapon'.


\settabs 4 \columns

\+&{\ty{Key}}&{\nt{Function}}\cr

\vskip.1in

\+&{$+$}(plus)&throw weapon\cr

\+&{$-$}(minus)&zap with wand or staff\cr

\+&{$<$}&go UP stairs --- if you have the Amulet\cr

\+&{$>$}&go DOWN --- same as as {\ty{Ins}.}\cr

\+&e&eat\cr

\+&i&inventory\cr

\+&T&Take off armor\cr

\+&W&Wear armor\cr

\+&P&Put on ring\cr

\+&R&Remove ring\cr

\+&r&read a scroll\cr

\+&q&quaff a potion\cr

\+&w&wield a weapon\cr

\+&d&drop something\cr

\+&s&search\cr

\+&S&Save game\cr

\+&t&throw weapon\cr

\+&z&zap with wand or staff\cr


You can {\ub{repeat}} an action by keying in numbers.  10s means `search this spot 10 times' and 17{\ty{Del}} means `wait 17 turns'.


\par\vfill\eject


\ll{\nt{Statistics}}

\vskip.1in

At the bottom of the screen, you will see what Physical Level you are on, how many Hits you can take, how much Strength you have, how much Gold you have accumulated, the strength of your Armor and what your Experience Level is.


Also, hidden in the software are other stats typical of D-and-D games: such as your dexterity and luck. 


Your Experience Level increases with the doubling of experience points.  You get, say, 1 point for killing a Bat and 20 or so points for killing an Aquator.  At the start of the game you have 10 Experience Points.  At 20 points, you increase your Experience Level and Hit Points.  Also at 40, 80, ..., 2560,... 


When you die, your rank is determined by 90\% of the Gold you have found.

\vskip.1in


\ll{\nt{Hademetry}}

\vskip.1in

Generally, each level is layed out as a 3-by-3 array of rooms.  As you move lower and lower, this is mutated.  Rooms are replaced by mazes or hallways.  At any level, one or more room will be missing.  You will develop a sense of rightness, a feel for whether or not there should be a room or a passage.  A wall of a room will look solid until you {\ty{s = search}} along it.

\vskip.1in


\ll{\it{Scrolls}}

\vskip.1in

Scrolls are made up of random syllable that change with each game. {\it{Glows\ blue}} means enchant weapon or armor. {\it{Red \ hands}} is confuse monster (after you hit it).  {\it{Maniacal \ laughter}} is scare monster and the laughing means you wasted the scroll.  You have to stand on this scroll.  When facing a tough guy, like a Troll or a Jaberwocky, {\ty{d = drop}} this scroll and the monster will not harm you.  Try to pick it up again and it crumbles to dust.  {\it{High \ pitched \ humming}} is aggravate monsters: they come looking for you.  {\it{Someone \ watching \ over \ you}} is remove curse and you can deal with cursed armor or weapon.  There are also Teleport, Identify and Create Monster.  If a scroll seems to do nothing, it is probably Hold Monster and you must have a monster in the room or hallway with you.  The blank scroll does nothing. 

\vskip.1in 


\ll{\nt{Potions}}

\vskip.1in

Potions come in colors (including plaid!) that change with each game.  They can restore your strength ({\nt{`warm all over'}}), heal you, poison you and blind you, increase your Experience Level, and allow you to see monsters, magic, and food in other rooms. {\nt{Mango juice}} is  `see invisible' which allows you to perceive otherwise invisible Phantoms and will also cure blindess.  (Healing and Extra Healing will also cure blindess.) 


\par\vfill\eject


\ll{\nt{Rings}}

Alas, there is no ring to rule them all -- which is probably just as well: it would only corrupt you.  Rings use up food.  Cursed rings include {\nt{Aggravate Monster, Teleportation, Negative strength, Negative damage, and Negative dexterity}.}  Good rings include {\nt{Stealth}} (for sneaking up on otherwise awake monsters), {\nt{Slow digestion,}} and {\nt{Positive strength, dexterity, etc}.} A scroll of {\it{Remove \ curse}} will allow you to Remove a cursed ring.

\vskip.1in

\ll{\sl{Wands and Staffs}}

\vskip.1in

Wands and staffs are made of various metals and woods.  They work the same kinds of magic.  In one game a Mercury Wand will be Haste Monster; in another game Haste Monster will be and Oak Staff.  There are also lightning, cold, Hold Monster, teleport to, teleport away, slow monster, light, striking and magic missile. 

\vskip.1in 

\ll{\nt{Weapons and Armor}}

\vskip.1in

Dagger, spear, bows and arrows, bolts, mace, long sword and two handed sword.  Clearly, the larger the weapon the better it is. If you wield a bow, it will increase the effectiveness of an arrow you throw (unless the bow is cursed, of course).

\vskip.1in

Leather, studded leather, ring, chain, banded, and plate.  The heavier it is, the better it will protect you.  There is some leeway in this.  Obviously, ring mail with a rating of {$+3$ \ 7}  is better than plate mail of {0\ 4.} Cursed armor is always a drag.  Wearing (or carrying around) heavy armor uses is food but is generally worth it.  Interestingly enough, if you Win the Game and cash in at the Thieves' Guild, they pay well for armor because it doesn't do you any good while you are fighting your way ``there and back again''.  That is, carrying around five suits of plate mail won't do you as much good as a couple of staves of Lightning, a Scare Monster and a couple of Extra healings.  If you get the Amulet of Yendar, you can load up on armor on your way back up the stairs.


Aquators rust armor.  Aquators cannot rust Leather.

\vskip.1in


\ll{\nt{Monsters}}

There are 26 of them, from Aquator to Zombie.  The lower you go, the uglier they get.  Leprechauns steal your gold and Nymphs steal anything in your inventory. Get across the room and shoot them with arrows.)  Vampires make you weak and Wraiths drain away your Experience.  Rattlesnakes take your Strength.  (There is a wand of {\it{Cancellation} } which will negate those powers.)


\ll{\nt{Summary}}

\vskip.1in

There is more to the game.  The above should get you started.  There have been some interesting theories about the design philosophy.  For instance, the game knows the {\ty{ROGUE.SRC}} scoreboard file and will set the environment accordingly.  Do not expect to find the Amulet of Yendar on the first try: you have to establish a track record.  Some believe that it is the number of steps you can take before you die, or the level you will die on, is fixed when the program starts. Other believe that there exists a maximum allocation of your magic you can win the first time you play.  Indeed, those who have played Dungeons and Dragons tend to do better at Rogue than those who do not.  

Good luck. 


\bye 



PREVIOUSLY ON NECESSARY FACTS

Ruby Methods the Ruby Way 

Digital Literacy and Artificial Intelligence

Visualizing Complex Data

Knowledge Maps

Fortune Cookie in Hex Code



Sunday, March 8, 2026

Frank Romano's History of Desktop Publishing

“The combination of the LaserWriter, PostScript, PageMaker and the Mac’s GUI and built-in AppleTalk networking would ultimately create desktop publishing.” (page 84). Today, everyone is a publisher. To read is to print. To download is to copy. Copies are stored and retrieved. Sources are cited. This is how we got here. History of Desktop Publishing by Frank Romano is a narrative catalog. The story ends just before now and suggests some of the probable next generation of media, means, and methods. 

From The Rational Optimist by Matt Ridley

By the standards of the past in the time before the Renaissance in Italy any improvement from the first typewriter could have sustained three generations over a century and today we would be enjoying the first teletypes in our homes. In science fiction we call that subgenre Steampunk: life in 2000 as seen from 1865. But that is not what happened. Instead, we have experienced a rapid evolution of tools for thinking and for the communication of those thoughts.


In the human lifetime after individual letters in lead type were no longer pulled from job cases and placed in composition sticks, type met ink and paper via keys, wheels, balls, film images, and matrices of 7, 9, or 24 striking wires. Ink was and is blown through magnets or fixed by electrical charges or by heat or both or chemical reaction with the paper and air.


Storage evolved through magnetic tape on large reels and small cassettes, floppy disks (first large and then soon smaller and denser), driven by direct friction contact or floating on a cushion of air. Semiconductor memory arrays are still mounted on the computer motherboard while others are conveniently removable even to be carried on a keychain. 




The genius of these rapid intellectual achievements, is exactly that many of them were incremental and just as many were truly new attempts to solve the same problems of transmitting ideas by giving permanent form to words.


In the 12th grade, his guidance counselor sent him to
Mergenthaler to seek a job interview. Romano went with a
classmate. Frank got the job but his classmate did not.

Frank Romano has a lot of good visibility as the historian of modern printing. Modern printing needed his formal investigations and detailed reports because the evolution was so rapid. Gordon Moore’s Law (observation) is that overall commonly available computing power has and will double every 2.5 years. “Moore’s Law is Dead” is a meme that asserts changes in the dimensions of understanding of the tools themselves. One path is that the changes are much greater; another is that they cease. 




Fortunately for us, Frank Romano is not alone and his Museum of Printing in Havehill, Massachusetts, is one of several institutions that preserve the tools, techniques, and traditions of the arts and sciences that instantiate and transubstantiate our thoughts across time and space. 

  • Museum of Printing
    • 15 Thornton Avenue, Haverhill, MA 01832
    • The Museum of Printing is dedicated to preserving the rich history of the graphic arts, printing and typesetting technology, and printing craftsmanship.
      The collection contains hundreds of antique printing, typesetting, and bindery machines, as well as a library of books and printing-related documents.
      A unique holding is the Mergenthaler Font Library, the original drawings that were the starting point for manufacturing matrices for Linotype machines. Other font libraries are those for the Intertype Photosetter and the remains of the font library of the Photon Corporation (after the unfortunate destruction of much of this resource).
    • The Museum will also become the home for the archives of the TUGboat editor, including many items related to TeX and to the typography of mathematics.
  • Providence Public Library Special Collections
  • The Updike Collection on the History of Printing
    • 150 Empire Street, Providence, RI 02903
    • Daniel Berkeley Updike was proprietor of the Merrymount Press in Boston.
    • In addition to thousands of books (among them many early type specimen books), prints, ephemera, and some artifacts (including the matrices for the Montallegro and Merrymount types, commissioned by Mr. Updike for his own use), the collection includes Mr. Updike’s personal correspondence from 1878 to his death in 1941.
    • An annual event is the Updike Prize for Student Type Design
    • For more information, call +1 (401) 455-8021.
    • It is best to plan ahead and make arrangements to see this collection.
  • Rochester Institute of Technology
  • Cary Graphic Arts Collection
    • 90 Lomb Memorial Drive, Rochester, NY 14623-5604, USA
      Phone: (585) 475-3961
      Fax: (585) 475-6900
    • Dedicated to graphic communication history and practices, this library is included in the curriculum of several courses offered by RIT's College of Imaging Arts and Sciences.
    • Among the holdings is the most substantial collection in America on the work of Hermann Zapf, who held the Melbert B. Cary Distinguished Professorship at RIT from 1977-1987.
    • They have many videos posted on their YouTube channel, including a tour of the press room and use of their Goudy printing press.
  • Stanford University Library
  • Information about opening hours and library locations can be found here.

These preservations are valuable because they are beautiful and their operations are harmonious and parsimonious. And they work. These are the moorings and anchors of our fragile civilization. 

PREVIOUSLY ON NECESSARY FACTS