Author: Dan Walker (MIDI programmer)