Andys web pages

Updated 22 Jan 2012.

I maintain a Memotech website, which includes projects such as MEMU, MFLOPPY, LOADMTX and MEMOrizer.

Homebrew software

Various homebrew software packages are available, grouped by section into java, FIX, editors, graphics, utilities, modules and games.

Java

JMS Adapter - A JMS implementation which translates messages
A JMS implementation which is a thin layer on top of an underlying JMS implementation. Intercepts sends, receives, publishes, subscribes and browses, and translates messages in flight. Working, but not performance optimised.
Shared Repository - A replicated content repository with web interface
Peer-to-peer replicates content between locations. Read-write access using a simple client API. Read-only access over HTTP (uses nyangau.se servlet engine). API also provides XPath based search. Working, but no caching as yet.
Tunnel - Tunnel TCP connections over a remote access client
Port forwarding over SSH, Telnet, etc.. Works even if /etc/ssh/sshd_config has AllowTcpForwarding no.
Mini-AWT - Minimal plug-in replacement for java.awt.*
Implements rectangle drawing and text writing portions of AWT. For use in environments where AWT not available or operable (eg: UNIX server not running XWindows). Updated to Java 5.
Servlet Engine - nyangau.se servlet engine
Implements bare minimum subset of servlet API. Updated to Java 5, and added SSL support.
WebServer - Simple Web Server
Implemented as WebServlet, hosted in the nyangau.se servlet engine. Updated to Java 5, and added SSL support.
TrendServer - Serves trend information graphically
Trivial shell script logs CPU and memory utilitisation samples to a file, and TrendServer converts this information to a graphical form, which may be accessed from a web browser. Implemented as TrendServlet, hosted in the nyangau.se servlet engine. Updated to Java 5, and added SSL support.

FIX

FIX Converter - Convert between FIX tag=value and FIXML
A reference implementation which uses the Unified FIX Repository as its configuration, and understands FIX.4.4 onwards. [NEW]
FIX Retro - Retrofit FIX.4.4 FIXML goodness to earlier versions
Retrofit FIXML related metadata to FIX.4.3 and earlier in the Unified FIX Repository, thus allowing the generation of an XML representation of FIX.4.3 and earlier, in the style of FIXML 4.4 onwards. [NEW]

Editors

AE - Andys Source Code Folding Editor.
Is a small portable folding editor which runs on a variety of common platforms. Note: All the source code downloadable from here is folded. This tool is probably the secret of my success!
BE - Andys Binary Folding Editor.
Is a binary editor which can decode a variety of file formats. The data presented may be edited, and the set of understood file formats may be user extended. Can also edit non-files, by using user written plug-in 'Extension' DLLs. An extremely powerful data debugger.
BEBIG - Binary Editor Memory Extension for accessing big files.
Allows BE to edit huge files, by not reading them into memory, and by seeking around an open file instead.
BEDEV - Binary Editor Memory Extension for accessing devices
Allows BE to edit device special files, by seeking, reading and writing.
BEEXEC - Binary Editor Memory Extension for viewing output of programs.
Allows BE to view data which originates from some other script or executable. Provided to help when your only way to get the data is through some other program for which you don't have source. Basically the plug-in keeps shelling out to the program, to ask it for data at a given location, and caches everything it gets back.
BENWMEM - Binary Editor Memory Extension for editing NetWare 4 memory
Allows BE to peek into other modules memory and decode it. (Under NetWare 4, all NLMs etc. share the same address space).
BEZ80 - Binary Editor Disassembler Extension for Z80
Allows BE to disassemble Z80 opcodes. A good example to use as a reference when writing your own.
TERMINFO - Andys Terminfo Package.
Is a package you can use to improve the terminal support you get when running full screen text mode programs under various UNIXes.

Graphics

GBM - The Generalised Bitmap Module.
Is a module which handles the reading and writing and general manipulation of a variety of image file formats, including GIF, TIFF, PCX, JPEG, TGA, etc., along with simple command line programs to drive the functionality.
MR - Modular Renderer.
C++ class library providing CSG Raytracing, Polygon Rendered and Wireframe graphics capabilities. The raytracing engine supports planes, spheres, cylinders, elliptical cylinders, ellipsoids, cones, general quadratics, torii and general quartics [new]. It supports reflection, refraction and both 2D and 3D texture maps, which may be linear, cylindrical polar or spherically polar. Includes simple classes for the display of images on XWindows or Windows. Uses GBM to handle image file formats. Cross platform portable to many platforms.
RTMR - RT Raytracer, implemented using MR
This is an enhancement of my earlier RT raytracer (no longer available), and is implemented using the MR library. It can show the tracing as it happens on XWindows or Windows. Cross platform portable to many platforms.
SHOW - Show image
Very simple program which uses MR to load and show a bitmap on XWindows or Windows.
PLAY - Play image sequence
Very simple program which uses MR to load and show a sequence of bitmaps on XWindows or Windows.
CUBE - Rubiks Cube animation
Uses MR to polygon render a scrambling Rubiks Cube. Displays the animation on XWindows or Windows. Can be made to write successive frames to files. Cross platform portable to many platforms.
LADYBIRD - Ladybird animation
Uses MR to raytrace in real time a picture of a ladybird, from a continually changing viewpoint. Displays the animation on XWindows or Windows. Can be made to write successive frames to files. Cross platform portable to many platforms.

Utilities

FL - File Lister.
Is a variation on UNIX find, implemented using ERE and DIRT.
FINDERE - Find Extended Regular Expression.
Is a variation on UNIX egrep implemented using ERE and DIRT.
LA - Log Accumulator
A simple program which watches multiple logs and produces a single consolidated log.

Modules

TH - Andys Terminal Handler.
Is a code module which provides OS independant access to the text mode screen, as used by AE, BE and other tools.
ERE - Andys Extended Regular Expression Handler.
Is a code module which provides support for Extended Regular Expressions, as used by AE, BE, FINDERE and FL.
DIRT - Directory Traversal.
Is a simple library providing support for enumerating the files in a directory, as used by AE, BE, FINDERE and FL.
DLL - Andys Dynamic Link Library routines.
Is a code module which provides support for dynamic linking to librarys and routines whose names are determined at run time (rather than compile time), in a largely platform independant way.
MPP - Makefile Pre-Processor.
A simple UNIX sh/awk script to allow you to take a makefile suitable for use with GNU make, which uses ifdef directives, and to produce a pre-processed version of the makefile, suitable for use on versions of make with differing or no support for conditional directives. All my UNIX makefiles I supply are GNU make compatible, so if you plan to use them on a system without it, it is well worth downloading this tiny script.

Games

ALPHA - Mission Alphatron
Is a scramble variant, originally written for the Memotech MTX computer, later ported to 16-bit Windows 3.1, now available for 32-bit Windows and the iPhone 1.x. [NEW]

My iPhone 1.x Installer Source: http://www.nyangau.org/iphone/repo.xml.


This page maintained by Andy Key
andy.z.key@googlemail.com