Home ... FAQ ... Music ... Software ... Forums ... Articles ... Contact


The Most Amazing Amusing MIDI Amousement

Version 3.60B (April 2003)




By Harry Koopman
Released as Freeware SEPTEMBER 2000, version 3.50
New version 3.60B released April 2003

In the year 2000 I was contacted by Harry Koopman, a pianist / music teacher from the Netherlands who graciously offered his program MIDIJOY to be released as Freeware to the Atari-MIDI Community. MIDIJOY is an "Alternate Controller" program inspired by Laurie Spiegels MUSIC MOUSE. It uses the same concept as Lauries program of using X and Y axis's in a grid to control the music. However the similarities end there as MIDIJOY expands on this concept giving it a very unique sound.


Here is a discription of MIDIJOY by the "Great Harry" himself:

In the late eighties and the beginning of the nineties (the previous century..) I programmed a lot on the Atari ST with omikron basic. Fascinated by MIDI and music (I am a pianist/ pianoteacher) I started writing MIDIJOY. The idea is derived from a MIDI-program I used on the Mac, called MUSIC MOUSE, programmed by Laurie Spiegel. The concept of MUSIC MOUSE was simple: The X and Y position of the mousecursor generates a value. Transform these values into midi note-on values, and there is music.

I used this concept and expanded it. To make the interpretation of the mouse movement more musical, I assigned scales to the X- and Y-keyboard. I also fiddled around with the other midi- parameters, such as velocity, program changes, control changes (modulation, panning), even pitch bend. Scales can be transposed, the note length can be changed, the mouse can be assigned to have different functions. The scales can be edited, the function keys can be used to assign a X-Y position and a scale, and so on. A Midijoy session can be recorded, and can be saved. Not in the way of 'midifiles', but keyboard actions and mouse actions are played back. You can load/save sets of parameters (.MDJ), load/save performances (.R_P), load/save piles of values from the value tables on the right side of the screen (.MAP files).


In order to control as much as possible while playing with MIDIJOY, I used the atari-keyboard. Almost every key has a function.

Therefore, the basic idea mentioned before, has expanded dramatically. Looking back after, say 8 years, I agree, MIDIJOY is complicated. Nice results can be obtained just starting and fiddling around, but when you don't refer to the manual, you do not use a tenth of its possibilities.


MIDIJOY was never sold out to a software-company. I distributed it myself, and sold about 10 copies of it. In some way, the programming is primitive, because the generation of the MIDI-data is not done on machine-code level. You might notice this when using a high tempo with lots of notes, and then moving the mouse fast: the processor involved with the mouse movement, slows down the midistream a tiny bit. But due to the fact that the Atari- concept about MIDI is so tight and fast (if any MIDI-award is to be given to a computer-firm, Atari reaches far above the stars) this is hardly a problem. And within this limitation I used all the tricks you can think of within the code, to get the best result concerning the tightness of the MIDI-stream.



The version as published freeware (not quite true, it's emailware, which means, if you like it send an email and tell others) in september 2000 was accompanied by an unfinished html version of the manual. A complete version of the manual was only available in dutch. April 2003 a COMPLETE html manual was published in English, and together with the finishing of this manual, Harry Koopman has made additions and some improvements to MIDIJOY, resulting in version 3.60 B.

Some improvements made in version 3.60 compared to version 3.50:

QPLAY, queued play of a series of up to 30 R_P files. The next QP-file is loaded automatically.
Bounce areas (mouse bouncing) can be defined.
A bug that could cause MIDIJOY to go to its error catching routine with a bus-error has been fixed.
Display errors caused by a different interpretation by the (TT-compatible) compiler were fixed.
Discarding of program changes if you choose so, overriding the program change settings of MDJ- or R_P files.


MIDIJOY works on the Atari ST or mega ST with at least 1 Mb memory. It also works on the TT and the Falcon. It makes use of the MIDI-OUT, not the MIDI-IN. MIDIJOY.PRG is 'stand-alone', everything needed is in it, there are no RSC files. Due to not be able to get hold of the right 'cutlib' programs to attach some library code into the program itself a file called BASLIB35 needs to be on your disk in order to get MDJ360B.PRG to work.

You are adviced to use a screen-accelerator on the ST. I included Turbo-ST in the folder. Turbo-ST is an accessory and can be turned on and off. Do not use NVDI as it causes unpredictable screen-effects.


These are the two files you need at minimum to be able to run MIDIJOY.


When DEF.MDJ is found in the folder where MIDIJOY is stored, MIDIJOY will load DEF.MDJ after start-up. A MDJ-file contains a bunch of Midijoy parameters.

>DEF.MAP Some other parameters can be loaded saved from MIDIJOY. Please refer to the manual.


This folder contains MDJ-files and R_P-files. The latter is an extention of the first, also containing a performance (in fact a series of mouse-movements and keyboard strokes).

> TURBO_ST_ACC (mentioned before)


In dutch, some version history.


the most recent version history

This folder contains several MDJ and R_P files. In my days, I used the good old Roland MT-32. A lot of MDJ- and R_P files are set up for this instrument, nowadays surpassed by much better synthesizers and modules. Some newer data were set up in GM-mode. I used the Roland JV 1080 for that.

In order to demonstrate QPLAY from version 3.60 a series of QP-files is provided here. They use the GM-mode (of the Roland JV 1080)


These are the electronic ways to reach me:


my site:http://www.marsandmc.nl/atari/midijoy/

On the site the most recent information about MIDIJOY can be read, and you can download MIDIJOY here too.

Also look at: P-ART


Install TurboST as an accessory. It speeds up the MIDIJOY screen and has effects on the MIDI too. DISABLE NVDI. Causes unpredictable screen effects. Tired of the start-up sounds? Make your own file and save it in the MIDIJOY folder as DEF.MDJ You want a DEF.MAP automatically loaded? When present in the MIDIJOY- folder, put an exclamation mark (!) on the first position in the last line of the Notepad. All about DEF.MAP's is in the manual. Try clicking on the words in the line CH VEL PCH MOD VOL TRP DLAY LEN. Then you enter a somewhat hidden screen, but very useful. Do you own a french AZERTY-keyboard layout? Save a MDJ file as AZERTY.MDJ in your MIDIJOY folder.

Harry Koopman



Even though MIDIJOY does not save as a standard MIDI file, it is possable to record it's output directly into a sequencer on another computer or hardware sequencer. Many Atarians these days have 1 or more Atari computers as well as a PC or Mac for digital audio purposes.It would be easy to simply record into a track on the "other"Sequencer.Then more material can be added. This is what I do for MUSIC MOUSE compositions. as well. Using two Atari computers can also be benificial in that you can use MIDI JOYs output to be used to input patterns or scales in other programs such as M, Pulsar, or Tunesmith.


When first running the program you will be amazed at the beautiful permutations of sound that comes forth from simply moving the mouse. However there is much more to this program then meets the eye as you start to click into the various icons and boxes and wonderful screens pop up waiting to be tampered with. It is programs like this that make the Atari Platform unique. A one of a kind program ,and the only place you will find it, apart from the site from Harry Koopman is the DOWNLOAD link below! ENJOY!