Putting Pen to Paper
Fingers to the Keyboard

Code 521



These are articles that I submitted or had planned to submit to magazines. The text of the articles is as-submitted, not as-published; a couple of them were edited by the magazines, much to my distress!

"Farmer Brown on a 6800", incomplete and unpublished.
An article I wrote about KIM-1-like subroutines for keyboard input and LED display output on a Motorola MEK6800D2 Evaluation Kit—512 bytes of memory! I had planned on submitting the article to one of the early microprocessor magazines: Byte, Kilobaud, who knows ...

"Permutations on a TI-58 Programmable Calculator", nonexistent and unpublished.
An article I wrote about a recursive, alphanumeric permutation generator—for a TI-58 programmable calculator with printer! I had planned to submit it to Byte, back when Byte might have published an article like that. Although I don't know what I did with the article, I still have the program itself.

"You've Got a Tin Ear!", incomplete and unpublished.
Playing the blues on a Commodore VIC 20!

"Faster than Run-Time: An Optimized ASCII-to-Binary Floating Point Conversion Routine", The DEC Professional, March 1985.
A VAX assembly language function that reduced the daily CPU time required by one of our programs from 2 hours to 20 minutes.

"F$USEFUL: A Look at Some Mundane VMS Utilities", VAX Professional, April 1988.
FORTRAN implementations of the VMS lexical functions, F$PARSE() and F$SEARCH().

"Put the Power of DCL into Your Programs", VAX Professional, August 1989.
Spawning a CLI subprocess and feeding it commands.

"Turning a Tree Upside Down: Automatic Structure Chart Generation", unpublished.
Generating cflow(1)-like structure charts from VMS object modules.

"Enhanced Command Line Processing", The C Users Journal, June 1991.
Enhancing the getopt(3) function.

"C Packages", The C Users Journal, June 1992.
Implementing Ada-style packages in C. (Based on a memo I wrote.)


TPOCC and Object-Oriented Programming: A Tutorial/Proposal
This unfinished document started out as a proposal to use Eiffel on our satellite control system, but ended up being an organized memory dump of what I knew (at the time) about object-oriented programming.

Primality Testing
... testing if numbers are prime ...
Fast Integer Square Roots
... testing if numbers are prime ...


On this project, we built racks of equipment to automatically test Milstar satellite (Wikipedia) components. I wrote the systems firmware that ran on the embedded 80286 single-board computers; i.e., the core firmware used by the application-specific tasks to communicate with each other and the outside, off-rack world. This project was FUN!

Universal Firmware Design
Universal Firmware User's Manual


Jumping on the UNIX workstation bandwagon early, we developed a generic, satellite control center for NASA called TPOCC (Transportable Payload Operations Control Center). I wrote numerous how-to memos, a sampling of which follow. These were informal, internal memos that left our second manager aghast at my lack of professionalism.

Networking for Netwits! (1989?)
Written when I was much younger than today; read with a grain of salt.
TSTOL Issues and Answers (02/08/1990)
Fending off attacks on my ego!
Hashing Out XDR and Miscellaneous Other Topics (04/02/1990)
A look at XDR on the network.
Naming Conventions (02/05/1991)
Fending off attacks on our code by folks not knowledgeable about C!
Second-Hand RPC Timeout Code Considered Harmful (07/26/1991)
The "not-invented-here" syndrome has some advantages!
TPOCC Configuration Monitor Design (1991)
Object-based design in C.
Non-Blocking I/O, One Way or Another (10/28/1991)
VMS-like queued I/O under UNIX.

I also wrote:

TSTOL Reference Manual
The reference manual for TSTOL, the TPOCC version of NASA's Systems Test and Operations Language (STOL).


A joint venture of the United States and European space agencies, the Spaceborne Imaging Radar-C/X-Band Synthetic Aperture Radar (SIR-C/X-SAR) was flown on two shuttle missions in 1994. We built the "one-shot" (or two-shot) operations control center based on TPOCC (see above). We ported the TPOCC Unix/C software to VAX/VMS and developed our own GUIs. The port went smoothly, in large part due to VMS's relatively complete implementation of the C Library and the BSD socket library—and in small part due to my in-depth knowledge of TPOCC and my extensive experience with VMS! Let me take a bow! Despite the project being on a very tight schedule (which we met), it was a lot of fun and I got to work with a great group of people. A few employees had travelled to Italy to work out the requirements with our Italian customer (Agenzia Spaziale Italiana) and, when they returned, they established a daily "brewing of the espresso" ritual every afternoon!

XSAR and the TPOCC Display Subystem (05/21/1992)
A proposal to use Tcl/Tk as the basis for the XSAR GUI.
A Prototype XSAR Menuing System (07/07/1992)
Tcl in action: a rapidly prototyped, scripted, Motif menuing system.
An XSAR Forms Library (07/10/1992)
A Forms Management System for X Windows?
Static X/Y Plot Hardcopies and PRINT Buttons (09/04/1992)
Generating screen dumps from within an X application.
Solving the History Replay Problem
A generic telemetry decommutation library?

Code 521

Extensible I/O (03/14/1994)
A proposal for an extensible I/O package that dynamically loads application-specific, user-level device drivers.
Generic Card Debugger
Proposes a script-programmable card debugger designed to exercise and monitor in-house-designed VLSI ASICs mounted on VME cards; see gentle.
C'est Moi!" (02/16/1995)
Shows how an early version of gentle was coupled with a Tk-based GUI, moi, for the purpose of monitoring and controlling our VxWorks systems. I subsequently developed a Motif equivalent to moi, called plum, which resulted in a reworking of the display classes so that the same status page definitions could be used by both the Tk and Motif versions of the GUI.
SCTGEN Scripting Language (02/23/1995)
The advantages of using Tcl scripts in place of application-specific configuration files.
You're an 8-Track Kind of Guy (03/15/1995)
A proposed, Tcl-based design for the ETS Tape Recording Subsystem software.


The TPOCC, X-SAR, and Code 521 memoranda above were printed and distributed in hard-copy form to the intended audiences. In late 1996, I began working in an environment in which E-mail was widely available and heavily used. Consequently, self-contained writings like those above were replaced by the back and forth of E-mail discussions.

GLoC's DECnet Interface to EPOCH (09/30/1997)
Proposes and evaluates three methods of linking a customer's legacy application (DECnet, VMS) with EPOCH (TCP/IP, UNIX).

Alex Measday  /  E-mail