Software

BD

Another elderly program; it was written to convert the output of nroff (now groff) to use terminal escape characters instead of backspace and underline. The task is done by "less" these days, but "bd" can do it for arbitrary terminal types, even printers.

KRoC for ARM

The Kent Retargetable Occam Compiler was started a long time ago now to provide a high quality compiler for those wishing to use the occam language. With knowledge of ARM assembler, I decided to try a port of KRoC for the ARM processor. I didn't finish it, but did get as far as generating smaller chunks of machine code.

PaperDB

A php project now hosted on sourceforge that I created to manage conference proceedings and papers for the WoTUG community, hosted on its website. The program manages complex relationships; it is possible, for example, for a paper to be included in more than one conference, and to have attached to it multiple files (for example, PDF and PS versions of the paper).

Placemarks

This is a very useful hack. The National Monument Record office department of English Heritage can search for aerial photographs. They return searches as Excel files with the location of each photo as an OS grid reference (e.g. TL 483 607).

This Perl program reads the Excel file and creates a Google Earth KML (layer) file of pushpins for each photo. Loading that into GE shows you each photo on the map and you can "point at" the photos to get the associated date, reference numbers etc.

Rencase

A program originally written for the C= Amiga, which had a case-insensitive file system like the Apple Mac, it renames files to either upper, lower or title case (by first renaming to a temp name, then back to the revised one).

serzgrep

This is a tool to enable textual search through directories of files compressed using the serz.exe compression algorithm, such as those used by RailWorks. The utility is used from the command line to locate files that contain specific strings and is perhaps most powerful when used in conjunction with find and xargs.