-------------------------
     A3000Rmt (0.06)
(c) 1998 Richard Millican
-------------------------


Legal Stuff
===========

This program is freeware. You may copy, distribute and rant
about it freely as long as you always include this file in
distributions.

Since it is free, I take absolutely no responsibility for
ANY damage WHATSOEVER, direct, indirect, physical, mental,
financial, social, etc. as a result of using this software.


Requirements
============

- A3000 with OS version 2.00. (Bits will work on 1.20, but 
	the text mode for one won't)

- PC running Windows 95 or NT 4.0 or higher.

- Working MIDI interface with MIDI out connected to the A3K's
  MIDI in. Note that the program only sends information, so you
  don't need your A3k connected back to your computer.


Introduction
============

A3000Rmt is a program which lets you press and turn the buttons
and knobs on your A3000 via your PC. 

A3000Rmt also provides various useful shortcuts which aim to save
you time.


Instructions
============

Setup
-----

Copy the exe to a convienient location and run it.

A dialog should appear. If it doesn't, chances are you need to
download the required MFC dlls from microsoft. A3000Rmt currently
uses MFC4.2.

If all goes well and a dialog appears, you'll firstly need to
set your MIDI output device in the pull-down list. The value
you set this to will be stored in the registry so that next time
you run the program, you won't need to do this.

Right, power up your A3000 and make sure your PC's MIDI out is
going somewhere near your A3000's MIDI in, and you should be off...


In Use
------

Currently the dialog is divided into 5 groups:

===============================================================

1. Settings

The top-left group is the settings group, and contains
various MIDI related settings.

The pull-down list is used to dictate your MIDI output device.

Pause is a value (in milliseconds) for which the program will
pause between each sysex message sent out. The reason for this
is that the A3000 takes time to update itself after each button
press, so inundating it with button presses is bound to end in
tears.

If you do have problems, try increasing this value. Sensible
values seem to be 35-50, but you may need more, or be able
to get away with less. 35 works reliably for me.

===============================================================

2. Text Entry

The group below the settings group, with the edit control, is
the text entry group.

I always found entering text on the A3000 to be a real chore,
so much so that I decided to do something about it... and here's
the result.

IMPORTANT: BEFORE USING THIS MODE, MAKE SURE YOUR A3000 IS IN
A TEXT ENTRY MODE SITUATION (you know, with the paste, case,
jump sort of options). IF YOUR A3000 IS NOT IN THIS MODE, AND
YOU HIT THE 'SEND TEXT' BUTTON, VERY BAD THINGS MAY HAPPEN TO
YOUR A3000, AND THERE WILL BE TEARS !

(In version 0.03 and on this should be safer now, since it
tries to edit the current sample name first if not in name
edit mode...)

Right, so once you're in a text entry situation, type some text
into the edit control and hit 'send text'. Read and respond
to the warning, then sit back and enjoy the show.

When you start to find the warning annoying, you can turn it
off via the check-box. The program will always startup with
this box checked for safety reasons.

Incidentally, this probably won't work on 1.20 anymore, since
it uses the 'jump' facility quite a bit for speed. If anyone's
still using 1.20, I could possibly try and do a version which
works on that. 

===============================================================

3. The Knobs

The group below the text entry group, and at the bottom left
of the dialog, is the 'knobs' group.

The 5 'knobs' here simulate the knobs on your A3000. Clicking
on the textual button is the same as pressing in a knob on the
A3000. Clicking on the up arrow is the same as turning the knob
to the right, and clicking on the down arrow is the same as
turning the knob to the left.

The up and down arrows actually have some hidden features:

* You can hold the mouse button down to auto-repeat.

* If you hold <SHIFT> down whilst clicking on an arrow, it will
	increase or decrease the related value by 4 (instead of 1)

* If you hold <CTRL> down whilst clicking on an arrow, it will
	increase or decrease the related value by 8 (instead of 1)

* If you hold both <SHIFT> and <CTRL> down whilst clicking on
	an arrow, it will increase or decrease the related value
	by 63 (instead of 1)

===============================================================

4. The A3000 modes

The main group to the right of the dialog contains an
approximate layout of the remaining buttons on your
A3000.

There is no magic here, pressing one of these buttons will
just cause the A3000 to think you pressed the related button.

===============================================================

5. The Macros

The final group is hidden away inside the A3000 mode group,
and contains 3 controls.

The combo-box control lists all the available macros. These
macros are just text files (*.rmt) which live live in a
directory.

The Go button executes the currenly selected macro in the list.

The ... button lets you specify the location of the macros
directory.

===============================================================

Versions
========

0.01 (26/09/98) (3hrs) - Buttons and knobs all mirrored via simple CButtons in a dialogue box.
						 MIDI output device combo box
0.02 (29/09/98) (5hrs) - Knobs now use spin controls
						 Bulk Dump Protect button for turning off MIDI bulk dump protect
						 Text Edit option which mimics much knob dialing to enter a string
						 Pause field which specifies pause in milliseconds between each sysex
						 Brushed aluminium bitmap background
0.03 (29/09/98)  (1hr) - Fixed Bulk Dump Protect button so it did what it should
						 Made the Text Edit option safer by trying to edit the current sample name
0.04 (14/10/98) (6hrs) - Simple macro language with global loop and pause added
						 Basic macro UI with a combo-box, go and browse button
						 SysEx routine doesn't close the midi port after every call, so should be quicker
0.05 (20/10/98) (5hrs) - Buttons and language defns added for CTRLASSIGN and CTRLAUDITION
						 Support for sending MIDI notes added via NOTE commands
						 Support for obtaining user input in macro files added via BOX commands
						 Fixed <RETURN> problems in dialog. <Return> in the text edit ctrl now presses 'Send Text'
						 Specified AUTHOR, TITLE, VERSION, INVOKE, DESCRIPTION fields in language document
						 Changing MIDI output device after pressing a button now changes it
						 Increased maximum macro pause value to 5000
0.06 (19/02/99) (1hr)  - Command button didn't work for some samplers - fixed for all

Feedback
========

Comments, bug reports, ideas, pizzas and large sums
of cash are always welcome. 

Either send an e-mail to the A3K-list (with A3000Rmt
somewhere in the title), or mail me directly at:
a3000@richardm.force9.net

For more info on the A3K-list or other A3K related info,
check out http://www.teklab.com/~a3k

Hope someone finds this useful,

Richard Millican
September 29th, 1998

