The following is a list of programs I have written that don't properly fit into my Artificial Life page. Most of these programs can be downloaded for personal use. Comments are welcome.

CM1K Neuromorphic Chip Emulator

2016

An emulator of General Vision's CM1K neuromorphic chip.

Petri

2012

An abstract arcade style game for Android.

Trifid

2010

A model of CCD (digital camera) noise. Trifid generates images whose noise realistically reflects the types of noise that generally occur in digital (and film) cameras. Various imaging scenarios (lighting conditions) can easily be configured so as to generate a suite of images with varying noise.

WildSpectra Mobile

2009-2012

An adaptation of WildSpectra (see below) for the Android smart-phone operating system.

Shead Spreet

2008 - 2012

A simple spreadsheet for the Android smart-phone operating system.

Movie Hurl

2008

Movie Hurl is a perl-cgi enabled interactive website that permits users to determine — either by generic sampling and by more rigorous statistical correlation with other users — which movies are likely to make them motion sick. Users can then decide whether they want to waste their money on the movie. Please consider joining this site and service.

Druid

2003 - 2006 (PhD research and dissertation topic)

Druid is the program I developed for my PhD research. It is a vector drawing program that permits the construction of 2 1/2 D scenes of interwoven surfaces. This is very difficult to do in conventional drawing programs.

YetAnotherTetris

2005

The world would be a better place if more people played Tetris. This is my contribution to that glorious aspiration.

Keith's IPod Photo Reader

originated 2005, latest version 2008

A simple utility that reads in the .ithmb photo library stored on iPods. The user can browse through the library, view full size images, and save images to disk.

Mayan Forest Simulation

2004 - 2005

This is one of my most arduous programming projects. The goal was to create a visceral realtime 3D simulation of a dense rainforest, including overgrown Mayan ruins, with the secondary goal of designing a captivating, puzzle-oriented game in such an environment.

I have also provided the complete project diary I kept during my work on this project, should you have the curiousity to peruse its musings.

WildSpectra

originated 2000, latest version 2005

An audio analysis program which provides real time spectrograms and time-section and frequency-section analysis.

Keith's AstroImager

originated 2004, latest version 2007

A webcam capture program especially tailored to astrophotography including features such as histograms, channel separation, debayering (for RAW modded cameras), focusing aids, collimation circles, and cardinal axes for a variety of alignment procedures such as drift alignment, periodic error correction, and guiding.

Keith's Image Stacker

originated 2002, latest version 2010

An image processing program oriented primarily at astrophotography where the signal to noise ratio can be increased by averaging or summing a large number of similar images, say from a quicktime movie captured from a webcam.

Keith's Tuner

originated 2000, latest version 2004

A sophisticated instrument tuner with a detailed visual display of the frequency you are playing and the frequency you are aiming for. There is also a full 88-key piano keyboard, which can be tuned to your desired frequency (not just 440 A).

Vertigo

2001

A rich 3D game written with the Quesa framework. Vertigo is a 3D take on Asteroids. You view space from a cockpit oriented point-of-view, flying around blasting rocks while simultaneously evading and confronting hordes of enemy ships. Vertigo is $10 shareware incidently.

Distributed Mandelbrot Set Generator

2001

A distributed networking system for generating mandelbrot images in parallel that works by clienting out sections of the desired image and then building the whole image on the fly as each client sends its associated bitmap back to the server.

Gravity

1999

A java applet of planetoid gravitational forces. It's fun to try to set up initial conditions that result in orbitting bodies. Try it.