Text, characters, symbol mapping, part N of M.

Machine words
July 2000

There isn't much to see here yet. It's part of my plan to put words on everything; this version accepts simple motion commands from compiled PostScript and produces analog XYZ voltages, in this case to drive an old storage-tube oscilloscope(*). The screen is split into upper and lower halves which can be individually erased, seen here in this excreble close-up (photos of CRTs never work out). The sample text (ahhh) was generated in Illustrator, saved as EPS (version 5, level 2), manually edited into a PostScript program provided by Don Lancaster and compiled by Distiller (I have to get away from this manual-editing crap)! Distiller produces an ASCII file (ahhh) that contains a zillion north-south-east-west pen up/down commands. This command file is read by a simple program that converts to a primitive (fast!) command protocol, using a serial port, to a PIC-based device (built on my WPS Model 01 CPU/IO card) containing two 10-bit DACs that generate the voltages. My apologies, when I took the photo here I hadn't got the "pen" (Z axis) hardware working, so the "pen" is always touching the screen, eg. it draws a line where it oughta be blank. It's working now but I'm too lazy to take new photos until I re-package the hardware to fit the nice 'scope cart I got for the project.

Oh yeah, it may not be obvious from where you are, but this is a vector display, not raster, you computer-weenies. The XYZ Adaptor resolves 1024x1024 and is admittedly digital. The Tektronix 'scope tube is probably older than you are, and has seen better days. It stores images, written by the usual beam of electrons inflaming rare-earth phosphors to quantum nocturnal emissions, by capturing and refreshing electrons in a layer on the screen. The image here takes about 60 seconds to draw, and is retained by the tube itself. Turning off the storage function produces a truly weird artifact, it looks like a living oily liquid is pulling away, the tiny photo-sequence doesn't do it justice, as is typical for most of the non-digital world.

CODE

These are the basic chunks of the code used to drive the Postscript-to-XY-motion system. It's all old (1999 - 2003) code, but hopefully the comments will get you the general idea.

I was doing mainly text, but images are identically processed. The work is done in two phases: offline pre-preparation (postscript editor eg. Inkscape, or Illustrator set to make level2 EPS) followed by squishing, and punching on paper tape in WPS record format (back up, at the point where your eyes glazed over, substitute "save as text file").

The paper tape (erm, text file) contains a string of characters that is the resulting motion commands; eg. to draw a box it's DNNNEEESSSWWWU where D and U are pen down/up commands, NSEW are compass direction motion commands. Simple!

A desktop computer does the pre-processing; a machine dumb-as-a-bag-of-hammers receives each character from the text file, one by one, and executes them by moving the plotter mechanism (sic) and moving the pen, virtual or otherwise, up and down onto the (real, virtual) paper.

The fundamental point and beauty of this scheme is that the machine that executes the command string need not keep any history at all; each command exists separately and has no bearing on, or is affected by, any previous or next command. This makes implementation trivial. You can (I did) add history to do convenient things.

Here is my old code. Note that I changed the command set from letters to digits; this made coding easier. 0=N, 1=NE, etc.

(*) I love these old 'scopes. It has everything I love about cold-war era technology; it's got high-performance electron tubes (octal, miniature bases), nuvistors (sub-miniature tubes, still-born in the late 50's), and transistors, plugged into little sockets like tiny cold electron tubes. Never mind the bizarre storage tube. Or the open silver-soldered ceramic strips with many hundreds of hand-soldered components, and the little spool of solder for repairs, bolted inside the chassis. I actually used these things at Ocean Research Equipment (Falmouth, MA) in the mid 70's, they were slightly old then but quite usable and still expensive. This one cost me $50.00. I have another non-storage 500-series 'scope for parts, cost me $20.00.

If you care about this stuff, go look at Arnoud van der Wel's Museum of Tektronix scopes.


WPS HOME