***************************************************************************
**                                                                       **
**          MED - music editor, İ 1989 - 1991 Teijo Kinnunen             **
**                                                                       **
**          Instructions for MED V3.2                                    **
**                                                                       **
***************************************************************************

Welcome  to  use the MED music editor!!!  MED is an all-purpose music editor
that  can  be  used  to  compose music for demos, games etc., and works as a
stand-alone program as well.

First  few  words  about  editing.  If you've used any Tracker, you probably
know  these  things.  MED can display "standard" notes, but often you'll use
the "Tracker-style" editing, in which the music is represented by note names
and numbers.  For example:
		01  C-2 1000  --- 0000  E-5 K210  --- 0F20
		02  D-2 1000  E#1 4000  --- 0000  --- 0000
		03  --- 0000  --- 0000  --- 0000  --- 0000

In this form, the music is quite fast and handy to edit when you get used to
it, but it's quite useless when printed (nobody could play it).

The  song consists of blocks, every block contains 1 - 256 lines.  There can
be  up  to  100 blocks and they can be played in any order and any number of
times.   In addition, there can be up to 99 songs in memory at once (sharing
the set of up to 63 instruments).

The  user  interface  of MED is divided in ten "panels", each one containing
different  gadgets.  Only one of these panels is visible on the screen.  You
can  select  the  displayed panel with ten gadgets which are always visible.
There  are  lots of keyboard shortcuts.  After you've learned the use of the
program,  you  probably  want to learn these shortcuts because they make the
program  much  more  powerful  to use.  There are also some things which are
available  only  by  using  the  keyboard,  so  you  should read the list of
keyboard shortcuts at the end of this manual.

There  are  also  four  different  big  displays.   Normally  the  notes are
displayed  in  this  area.  Optionally you can choose the synthsound editor,
sample editor or the sample list to be displayed on this area.


Entering the notes
==================
Notes are entered with Amiga's keyboard (entering with MIDI-keyboard is also
possible).  The keys are ordered in piano style:

	 2 3   5 6 7   9 0   ´ \
	Q W E R T Y U I O P Ċ ]
	  S D   G H J   L Ö
	 Z X C V B N M , . /

This way you can enter about 2,5 octaves of the 5,2 octaves available.  Keys
F1 - F4 can be used to switch the octaves.  The lower row of keys (Z - /) is
the lower octave, Q - U is the higher octave and keys I - \ are part of even
higher octave.

If  you have an instrument loaded, you can hear the sound when you press the
keys.   If  you want to enter notes onto the block, you must turn on editing
(Esc).   DEL-key  is used to enter the pause (---).  The cursor can be moved
with the cursor keys.

Blocks and the playing sequence
===============================
When you compose a song, you do it block-by-block.  Fill a block with notes,
create new block, fill it with notes...

In order to get the blocks played in correct order, you must also create the
playing  sequence  list.  It is just a list of block numbers, which are then
played  in that order, from beginning to end.  This way you can use the same
block  many  times in your song.  When the last block from the list has been
played,  the song will start again from the beginning (it's also possible to
stop  the  playing).   The  maximum  length  of  the playing sequence is 256
numbers.

Status bar
==========
Between  the  panel  and the block display is the status bar, which displays
some "strategic" information which is always good to be visible.

                                                          Song/# of songs
                                                                       |
                                                Song selection gadgets |
                                                                  / \  |
 +-------+-----+--+-+--+----+--------+--+------------------------+-+-+-----+
 |001/003|00/02|12|E|SP|CHRD|::::::::|01|AnalogString            |<|>|01/02|
 +-------+-----+--+-+--+----+--------+--+------------------------+-+-+-----+
     |       |  |  |  |  |      |      |         |
Playseq-ptr  |  |  |  |  |    Tracks  Instr #   Instrument name
             |  |  |  |  Chord mode on/off
        Block # |  |  Insert empty space between notes
                |  |
 Keyboard octaves  Editing on

Playseq-ptr: The first number is the current playing sequence number
             (starting from 1) and the second is the number of playing
             sequence numbers in the song. The 1st number is meaningful
             when you're playing the song or editing the playseq list.

Block #:     The first number is the number of the current block (starting
             from 0) and the 2nd is the number of the last block. It does
             not tell how many blocks there are, but if you add 1 to it,
             it does. In the example there are 3 blocks, and the first
             is currently displayed.

Keyboard octaves:
             This number tells you which octaves are currently in use
             when you play the Amiga keyboard. The first number is the
             octave number of the lower row of keys and the 2nd is the
             higher. It can be changed with F1 - F4.

Editing on:  This is a quite important option. When the editing is off,
             you can't insert notes or numbers to the song. To turn it
             on/off press Esc or click the "E" with mouse. When the "E"
             is highlighted, editing is on.

SP:          This switch activates the extra space between the notes you
             enter. It is useful when you're entering slow pieces of music.
             You don't have to hit DEL so often.

CHRD:        This turns the chord entering mode on/off.

Tracks:      It's possible to switch tracks on/off during editing. The 16
             points represent the 16 possible tracks. When the point is
             red (default) the track is turned on. When it's white, then
             this track is turned off.

Instr #:     The number of the current instrument. The maximum number of
             instruments is 63. The instruments are numbered 01 - 1V
             (01 - 09, 0A - 0V, 10 - 19, 1A - 1V).

Instrument name:
             The name of the current instrument.

Song handling gadgets are discussed below.

You  can change the instrument number, current block and current playseq ptr
by  clicking  on  the number you want to change with the mouse.  Left button
increases,  right  button  decreases.   This  is  the fastest way to advance
playseq ptr for example by 100:  click the 100's number with LMB.

Instruments
===========
As  noted  above,  there can be up to 63 instruments in one song.  There are
currently  four  types  of instruments:  samples, synthsounds, hybrid sounds
and MIDI instruments.

Samples: These are the instruments which are played through four Amiga
         audio channels. They can be played only within tracks 0 - 3.
         MED can load raw samples and IFF 8SVX 1, 3 and 5-octave samples.
         It means that you can load practically any sample to MED and
         use it in your songs. Note that raw samples and 1-octave 8SVX
         samples can use only octaves 1 - 3. Octaves 4 and 5 play from
         octave 3.

Synthsounds:
         These are a special instruments, that allow you to construct
         a sound from simple pieces of waveforms, and controlling things
         like waveform #, volume, pitch, arpeggio and vibrato using a
         simple "programming language". Synthsounds sound usually quite
         simple (C-64 style), but they don't take much memory, either.

Hybrid sounds:
         This is a normal sample, but it can be controlled using the
         same "programming language" as synthsounds.

MIDI instruments:
         These are not actually instruments. They are just few settings
         which cause the notes played with that instrument to be sent
         through MIDI-interface. They don't take memory like the samples.
         When you want some instrument to be a MIDI-instrument, you must
         set the MIDI channel which is used when playing notes/effects.
         You can also set the preset value for the instrument. Then
         the instrument is automatically played using that preset number
         of your MIDI-device (synthesizer, keyboard...). You can also
         set the preset number to 0. Then the preset which is already
         set in that channel is used.

Sample loading
==============
Because  many  people  have  hundreds/thousands of samples, spread over many
different disks/directories, the samples have to be organized some way.  MED
handles  the organization using a file "MED_paths" (path file).  It contains
the  name  of the directory, names of the samples in that directory, name of
another directory...and so on.  This way MED knows what samples each of your
sample  disks/directories  contain  and can load samples from correct disks.
The  path  file is loaded when starting up MED and it must be located in the
current  directory  or  S:-directory.   This  file can be produced with text
editor,  but it is easier to do it with MED.  Detailed instructions later in
this manual.

Note
====
The note and the numbers:

                command
                   |
         D # 3   5 1 0 F
           |     |   \ |
         note    |    \|
         instrument #  data byte (more information about command)

"note" is the note to be played (or "---" for no note)
"instrument #" is the number of the instrument (01 - 1V). The leading
               zero is displayed as a space. The number can also be 0.
               It means that the note is played with same instrument
               number and with same volume as previous note in that
               track.
"command" is the number of command/effect to play. If there are no
          effect or commands, command nibble and data byte are zero.
"data byte" gives more information about command/effect to the player.

Effects/commands are documented later...

The  numbers  can  be  changed  simply  with positioning the cursor over the
number  to  be changed and typing the new number.  If you have to change the
5th  number (between the note and the other numbers:  C-212000), which means
that  sample  10  -  1V  is  used, position the cursor over the first number
that's  always  visible  (the  second  '2' in above example), hold Shift and
enter  the  1st  number.  For example, to change instr.  number to 1E, press
Shift-E.   Because  Shift-0  -  9 have other use, press Amiga-Shift-0 - 9 to
change  the  instr.  number to 10 - 19.  This is not very handy, but because
there  won't  probably  be a lot of songs which have over 31 instruments, it
doesn't matter very much.

Prompts
=======
MED  often  (especially  during file operations) wants to ask you something.
For this purpose MED displays a line of text on the title bar e.g.

	Remap instruments (Y/N)?

You  always  answer to these questions with keyboard, in this case you would
press  'Y'  for  a  positive, and 'N' for a negative answer.  If you want to
cancel the operation (loading, saving...), you can usually press 'Esc' to do
that.

Multiple songs
==============
MED  can  have  more  than one song in memory at a time.  However, all songs
share the same set of instruments.  This allows you to, for example, compose
different songs for each level of a game, without having to load or keep the
same instrument in memory more than once.

On the status bar there are two gadgets which control this feature (see the
description of the status bar above).

If  you  click  the right gadget (assuming you've just booted MED), MED will
request  "Add  new  song  (Y/N)?".   If  you  answer 'Y', a new song will be
created.  You can now move from song 1 to song 2 with these gadgets.  If you
want  to delete the last song, press the left gadget while holding the Shift
key.  Again, MED will request you before proceeding.

Note:  If you want to add a new song without the prompt, you can hold Shift
       while clicking the right song selection gadget.

MED  can  automatically remap instruments while loading.  This feature saves
you  from  a lot of work.  For example, you have one song in memory, and you
add  another (by clicking the right song selection gadget).  If you now load
a  second  song from disk, MED will ask:  "Remap instrument (Y/N)?".  If you
reply  'N', all previous instruments will be lost and the instruments of the
new  song  will  be  loaded.   But if you reply 'Y', some magic will happen.
First,  the  instruments  of  the  new  song  will be loaded to empty slots,
instruments  already  in  memory  will be preserved.  Second, the instrument
numbers of the loaded song will be remapped so that they point to new places
of the instruments.

Sometimes,  when there are unused instruments in memory, MED will ask if you
want  to flush them.  This can happen when you Clear the song, or load a new
song (replacing another).

You  can  also  save  all  the songs as a single multi-module.  You have to
select  "Module" in the save format requester, and answer 'N' at "Save only
current  song"  prompt.   If you select 'Y', only the current song is saved
(unused instruments won't be saved).

To get rid of all the songs/instruments, click "Clear all" on Misc panel.

 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 ***************************************************************************
 *                                                                         *
 *  +-------------------------------------------------------------------+  *
 *  |                     Summary of the features                       |  *
 *  +-------------------------------------------------------------------+  *
 *                                                                         *
 ***************************************************************************
 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

+=========================================================+
|           Files
+=========================================================+
This  panel  contains  the tools you need when handling files.  You can save
and load with many different formats and also delete them.

First  of  all,  there's  a file requester.  There should be no difficulties
with  using it.  It is simple, but it works.  Directory names are printed in
white  and files in black.  There are three gadgets that allow you to choose
what  is  displayed  in the requester.  If the Currdir is selected, files in
the  current directory are displayed.  Devices lists all devices e.g.  DF0:,
DF1:,  DH0:   etc..   Assign  lists  all assigned directories (e.g.  C:, S:,
FONTS:).  You can also load a directory by typing its name on the Dir-gadget
(and  pressing  Return).

The  File-gadget  contains the filename.  If you know already the filename,
you  can ignore the file requester and type the filename (with correct path
from the startup directory).

------- Load
Song:       This is the gadget used to load songs. Loads songs
            with following formats:
                  MED V1.12 - V3.20,
                  OctaMED V1.00 - V2.00 (only 4 channels can be played)
                  MMD0 (MED modules), SoundFX/old SoundTrackers.
            The samples are automatically loaded after the song.
            WARNING: Don't try to load anything as a song!!!
            If MED can't identify the file, it is loaded as an old
            SoundTracker file. If it is an old SoundTracker file, it
            should load well, but if it isn't, you may meet the GURU!!!!
            MED can't load packed SoundTracker/NoiseTracker files. To
            import songs, save them as modules, then load into MED with
            "ST MOD". MED also recognizes Noise/Protracker modules
            and prompts if you want to load it as a such (usually you should
            answer 'Y').

Instr:      Loads the sample. The title bar will display the length of
            the sample if it loaded ok. This will load synthsounds and
            hybridsounds as well.

ST MOD:     With this gadget you can load 31-instrument Sound/Noise/Pro-
            tracker modules. There are some differences between MED's and
            Tracker's commands, they're converted automatically.

------- Save
Song:       When you choose this one, a requester appears and asks you to
            select the save format. The save formats are described a couple
            of lines later. There's also "Icon" gadget. When it is selected,
            MED will create an icon file when saving Song or Sng+samples.
            If you don't need the icon, turn it off to save some disk
            space.

Instr:      Saves the current sample/synthsound/hybrid sound. If you want
            to save samples in IFF-format, set the switch in sample editor.

Delete:     Deletes the file. MED requests if you really want to delete
            it.

======= Save formats

There are several different file formats available:

Song     This is the normal song, which you will probably use most often.
         The song is saved using a highly-compressing file format. The
         samples are not saved. They are loaded from your instrument disk(s)
         using the path list (or absolute paths if instrument names are e.g.
         ST-01:Ringpiano).

Sng+samples
         Saves the song like the previous one, but also attaches the
         samples to the end of the file. The result is one big file which
         contains everything needed. This format makes usually a bit
         shorter files than Module, but I recommend that you now save
         your songs as a module, at least if they'll be distributed.

Module (MMD0)
         This is the most flexible file format, which allows you to save
         all song information, like Sng+samples, but this format is most
         likely understood by external programs, because Sng+samples is
         quite tricky to load and use. Also, multiple songs can be saved in
         one module. In general, files saved in this format are longer than
         Sng+samples files.

         When you save a module, you'll be asked "Save instrument names etc".
         If you answer 'Y', all data is saved. Otherwise only the data
         required for playing the song is saved. The copyright/annotation
         text is always saved.

ST-Module
         If you want to export music to Sound/Noise/Protracker,
         you can use this gadget to save the song as a module.
         NOTE: Because there are many things in MED that are not supported
               by Trackers, some information may be lost:
               - samples 10 - 1V won't work
               - only 4 tracks saved, no MIDI support
               - blocks longer than 64 lines will be truncated to 64 lines
               - no color or pointer jump information
               - no relative volume settings, no play/instrument transpose
               - no hold/decay
               - no support for synthsound/hybrid sounds
         NOTE 2: The resulted file will be a 31-instrument module. If you
                 try to use it with programs supporting only old modules,
                 it'll most likely fail.

+=========================================================+
|            Play
+=========================================================+
This  is  a very important panel.  Here you can control the playing, set the
playback speed (tempo), handle the playseq list...

Beginning from the left, there is a tall box which contains numbers "00" if
there's  no  song  in  memory.   This  is a window to the playseq list.  As
mentioned above, the playseq list is the list of blocks to be played.  This
window  show  5  numbers  of  the list at a time.  There are gadgets on the
right side of the box which scroll the list up/down/beginning/end.

The keyboard equivalent is to hold down the Ctrl-key and then press number 8
from  numeric  keypad  to  scroll  up,  2  to  scroll  down, 7 (home) to the
beginning, 1 (end) to the end.

On the right side of the scroll gadgets are the following gadgets:
         +   -   Ins   Del   Ins (with small arrow pointing down)

         +      increases the current playseq number (Ctrl - keypad 6)
         -      decreases the playseq number (Ctrl - keypad 4)
         Ins    inserts a new sequence number (zero) under the cursor
                (Ctrl - keypad 0 (Ins))
         Del    deletes the current sequence number (Ctrl - keypad . (Del))
         Ins (w/arrow) inserts a new sequence number, the new number
                will be the number of current block (Ctrl - keypad 5)

------- Controlling the playing

Play song       starts playing the song from the beginning.
Continue song   starts playing from the current playseq entry and cursor pos.
Play block      plays the current block (starts from the beginning).
"D" (next to Play Block) starts playing block when you enter a note (editing
                must be on).
Continue block  starts playing the current block from the cursor position.
Stop playing    stops playing the song. You can also use it to kill the
                notes played from the Amiga/MIDI keyboard.

The shortcuts of these commands:
ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ
Stop playing    press just Space
Play song       press Space with Alt+Shift held down
Continue song   press Space with Shift down
Continue block  press Space with Alt held down
Play block      no shortcut, sorry.

------- Tempo (playing speed)

To understand this completely, you need to know some technical aspects.  MED
uses the CIAB timers for timing.  They give "timing pulses" that trigger the
MED's  player  interrupt.   On  each  timing pulse effects are handled (e.g.
commands  1,2,3,4,5,D, hold/decay, synthsounds), but new note is usually not
played  on  each  pulse.   The  time  between  timing  pulses can be changed
(primary  tempo).   The  new  note is usually played on every 6th pulse, but
this  can  be  changed  too  (secondary tempo), for example, if new note was
played  on  every 3th pulse, the playing speed would be twice as fast.  This
doesn't affect the speed of effects.

Graphically:
pulse   \         PLAY NOTE
         the time between pulses can be changed (primary tempo)
pulse   /         DO EFFECTS  \
                               \
pulse             DO EFFECTS    \ The number of pulses between
                                / notes can be changed (4 in this example).
pulse             DO EFFECTS   /  This is the secondary tempo.
                              /
pulse             PLAY NOTE
...

The left proportional gadget controls the primary tempo.  It can be 1 - 240.
The  bigger  the  number, the faster the speed.  Note that tempos 1 - 10 are
Tracker-compatible (but obsolete, because secondary tempo can be used now).

The  right one controls the secondary tempo (default = 6).  It can be 1 - 20
(note:   hexadecimal!!).   The  lower,  the faster.  This allows quite rough
setting of playing speed (it's the way NoiseTracker etc.  set their tempos).
In MIDI use (especially for syncing), you should leave this to 6 and use the
primary tempo instead.

LP-Filter       with this gadget you can turn on/off the audio filter
                built into your Amiga. When this gadget is selected
                and the power-LED is bright, the filter is on. If
                the LED is dim, the filter is off. You probably want
                to keep it off.
                The state of this switch will be saved with songs.

		NOTE: With Amiga 1000's, it's not possible
                to turn off the filter without modifications to the
                computer. Please keep the filter off.

E1, E2, E3      If you've played something with MED, you have found the
                three "equalizers" (in fact, they are not equalizers, but
                I'll use this word, because many others do so too...)
                E1 turns off/on the red bars at the bottom of the screen
                (PAL machines only). E2 turns off/on the four colorful
                sprites. E3 turns off/on the signal "oscilloscope" displays.

                These all are turned off to save processor time when
                you click the right mouse button to show the title bar,
                but if you want to disable something, it probably is E3.
                The signal display eats lots of the processor time (on
                standard 68000). Because of that, the display is turned
                off during disk access to speed loading/saving. You may
                want to keep E3 disabled all the time.

STS             Normally effects are done on every timing pulse (see above).
                When this switch is on, the effects are NOT done on the
                first pulse (when the note is played). This is the way the
                Trackers do that, and this switch is for compatibility only.

V: Hex/Dec      This is another compability switch. While the data bytes
                of the commands are usually hex numbers, it's possible to
                use the volume-command with hex or decimal argument.
                When Hex is selected, the acceptable volumes are 00 - 40.
                When Dec is selected, the volume can be 00 - 64.
                If you are not a programmer (and even if you are), it may
                be easier to think the numbers in decimal. It is the
                default.
                The state of this switch will be saved with songs.

                You can easily convert all volume commands from decimal to
                hex and vice versa. If Dec is selected and you click Hex
                while holding the Shift key down, automatic conversion is
                done (works on the same way to the opposite direction too).

                I recommend using Hex volumes whenever possible. It is
                slightly faster (not noticeably, but faster anyway).

Channels 4 5 6 7 8
                These are the channel configuration selection gadgets of
                OctaMED. On MED, they just don't work.

------- Panic stop
It's  possible  to  make  a song, which takes all of the processor time.  It
will therefore be impossible to stop it.  This shouldn't happen accidentally,
but  if  you  fill  a block with notes and command FF3 and set tempo to 240,
you'll  get the idea.  To stop playing in this case, hold both mouse buttons
down about 5 - 6 seconds.

+=========================================================+
|           Instr
+=========================================================+

Here  you can load samples and alter some characteristics of them.  First I
should note out some important actions which are available on the keyboard:
	Shift-Cursor Left/Right = select previous/next sample
	Shift-Alt-Cursor L/R    = 16 samples forward/backwards
	Amiga-I                 = activate sample name gadget
	Shift-Amiga-I           = clear and activate sample name gadget
	Amiga-R                 = activate repeat gadget
	Amiga-J                 = jump on/off

At the top left corner of this panel is the sample number (01 - 1V) followed
by  the sample name gadget followed by the length of current sample in bytes
("-" if no sample loaded).

To  load  a  sample, you can write the name of it in the string gadget, then
click "^ Load Sample ^" (or just press Return).

Above  the  Load Sample gadget are gadgets that select first, previous, next
or  last  sample.   L.U.   (Last  Used)  selects  the last sample that is in
memory.

On  the  left side of them are two gadgets ("Jump", "Flush").  "Jump" causes
jumping when this instrument is played. "Flush" removes this instrument.  It
frees  the  memory  used  by  it  (handy when you're very low on memory) and
clears all the values.  Jumpings will be saved with songs.

"Transpose"  is  one  of  the  new  features  of V2.10.  It works like "Play
transpose"  but  only  for  this  instrument.  So, if "Transpose" is -2, for
example, then this instrument is played two halfsteps lower.

Repeat  means  that when you play a note with some instrument, the note will
play  forever,  until  you  play a new note.  A picture tells more than 1000
words:

         the beginning              repeat start offset           the end
         v                                v                             v
Sample:	| This part is played only once  | This part is looped forever | |

         \__________repeat_______________/ \________repeat length______/

"Repeat" is the length of the part which is played only once (in bytes).
"Repeat length" is the length of the part which is played forever (also
in bytes).

When  you load IFF-instruments, these values are automatically loaded.  They
can  be also set in path file, so that when you load a sample, you will also
get  the  repeat values.  Gadget REP/BEG is the repeat start offset, REP/LEN
is the length.  If the repeat length is lower than 4, no repeat will occur.

The  big  proportional  gadget  controls  the  default volume of the current
instrument:   64  =  maximum,  0  =  silent.  It's displayed in both hex and
decimal.

------- Hld/Dec (Hold/Decay)
(again a thing, that is difficult to explain...)
With  Hold,  you  can set the exact duration of the note (in timing pulses).
The  note  is  then turned off (if decay is 0) or decay is started.  In this
example,  I  assume  that  the  secondary tempo is 6 (one line is one timing
pulse)

1. no hold

0 PLAY+fx C-2 1000 <= play note
1 fx
2 fx
3 fx
4 fx
5 fx
0 PLAY+fx D-3 1000 <= stop previous and play new
1 fx
...

2. with hold set to '2'

0 PLAY+fx C-2 1000 <= play note
1 fx
2 STOP+fx          <= stop it
3 fx
4 fx    (silence here)
5 fx
0 PLAY+fx D-3 1000 <= play new note

In  example  1,  (without  hold)  you can set the note duration only roughly
(accuracy  of 6 timing pulses).  In example 2, the note duration is only two
timing pulses (because hold = 2).

So,  this  allows  a  powerful definition of note length, but it can't be
used with long notes, because the note stops immediately??  Wrong!!

Look at this:

000 C-2 1000               / line# pulse# action
001 -|- 1000              /   003    0    continue note...
002 -|- 1000             /    003    1    continue note...
003 -|- 1000 => ZOOMED =>     003    2    STOP NOTE
004 --- 0000             \    003    3    (silence)
005 D-3 1000              \   003    4    (silence)
...

So,  the keep holding -symbol (-|-) allows you to make the note longer.  The
keep  holding  -symbol  can  be entered by clearing the note and setting the
instrument number only, or easier:  by pressing Return.

If  the  decay  is  0, the note is turned off immediately after the stopping
point.   You  can  set  the  decay  to  happen as well (1 = slowest).  Decay
doesn't work with MIDI-instruments.

If  you're  using synthsounds or hybrid sounds, see Synthsounds.doc, because
the decay is handled quite differently with them.

The  hold/decay  is  a quite useful feature, so I recommend you learn to use
it!!  (Thanks to ZAP for suggesting me this feature!!)

+=========================================================+
|           Block
+=========================================================+
This  panel  contains  most  of  the  block  handling  things  and  the copy
operations.

Trk: Cut Copy Paste Swap
         These gadgets are used to cut/copy/paste tracks. Swap swaps
         the contents of the copy buffer and current track.
         The keyboard shortcuts for Cut/Copy/Paste are:
                Amiga-X, Amiga-C, Amiga-V

Blk:  Cut Copy Paste Swap
         These work just like the previous, they just affect the entire
         block. The keyboard shortcuts are also just like the previous
         except hold down the Shift key too (Amiga-Shift-X...).

Del buff
         When you don't need the contents of the buffer any more, you
         can click this gadget to free the memory allocated for the buffer.
         It's useful when you're very low on memory. The buffer is freed
         automatically when you exit, so you may not need this gadget
         at all.

Then there are the block commands.

Trks: 4 8 12 16
         You can select how many tracks you want this block to have.
         Note that tracks 4 - F can be used only with MIDI devices.
         Note also that when you decrease the number of tracks, the
         higher tracks will be lost (no Are you sure? requesters).

Lines: 64 < > Ğ ğ
         These gadgets are used for selecting the number of lines in
         this block. Ğ ğ gadgets increase/decrease the number by 10,
         < > gadget by 1. The preferred way is to write the number
         directly into the string gadget (less memory fragmentation).

1 2 3 4 8 16 C
         It may be helpful for easier positioning of notes to be able to
         "mark" lines some way (especially if the block is long). You
         can make some lines appear with reversed colors, if you want.
         1 highlight every line, 2 highlights every other line, 3 high-
         lights every third line and so on. C clears all highlighting from
         this block. You can also mark individual lines with TAB-key.
         The highlighting can be removed by highlighting the line(s) again.
         The highlightings are saved with songs.

New block
         This gadget creates a new block after the last block. The new
         block will have the same number of tracks and lines as the
         current block.
DEF      This is the same as 'New block' except that the block length
         is always set to 64 and the number of tracks to four (eight,
         if you're in 5 - 8 channel mode).

New here
         Creates a new block here, shifts all following blocks forward.
         The playseq numbers are corrected so that the song won't change.
DEF      Uses default length/number of tracks, see DEF definition above.

Del last
         Deletes the last block (no warning messages, be careful).

Del this
         Deletes the current block. Playseq numbers corrected.

Split    Splits the current block so that the current line will be the
         first line of the next block.

Join     Joins this block and the following block together.

Ins.L.   Inserts an empty line under the cursor. The block length is
         increased by one and the notes are shifted one step forward.

Del.L.   Deletes the current line. Block length is decreased and the lines
         are shifted backwards.

Ins.Trk  Inserts a new track. The subsequent tracks are shifted one step to
         right, and the rightmost track is lost.

Del.Trk  Deletes current track, and the subsequent tracks are shifted to
         left one step.

Expand   When you have created a nice-sounding block, but you would like
         to include e.g. some fast rhythm patterns, but you notice that
         the block plays too slowly for the patterns. "Expand" changes
         the size of the block and creates empty lines between notes.
         Now you can increase the tempo and insert the rhythm patterns.

         NOTE: The maximum length of the expanded block may not be greater
         than 256 lines. In that case, you'll get a warning, and expansion
         is not done. Also, if you want to make fast rhythm patterns, see
         first instructions for commands FF1, FF2, FF3. They may be an
         easier way.

Shrink   When you have expanded the block, you can return it to the
         original state by pressing shrink. This function exists for
         symmetry. It has not much real use.

The number gadget between these two gadgets is the amount of expanding.
E.g. 2 doubles the length (inserts one empty line between each note).
3 would triple the length, and so on.

+=========================================================+
|           Edit
+=========================================================+
Edit-panel contains functions that help editing.

On:             These are the switches that allow you to switch temporarily
                any track off and back on. The 16 lights in the status bar
                show you which tracks are on, when you're not using the
                Edit panel. ST sets all tracks on, CL sets all tracks off.

Edit and SPC    at the right corner are the bigger equivalents of
                "E" and "SP" in the status bar. "Edit" turns editing
                on/off and SPC turns on/off extra spacing between notes.
                You can type the space value in the string gadget next
                to the SPC-gadget (1 - 16). When you enter notes during
                playing (in real time) with SPC on, the notes will be
                quantized e.g. if SPC = 2, the notes will be placed only
                on even-numbered lines.
                Keyboard: Edit on/off = Esc, SPC = ~ (below ESC)

1+2, 2+3, 3+4, 4+5 on the left corner select the keyboard octaves which
                are used. This can be done also with F1 - F4 keys.


------- Programmable keys
It's  possible  to assign 10 different notes/commands to number 0 - 9.  Then
you  can  insert  the  note/command  with Shift- 0 - 9.  You can also assign
commands to Left and Right Alt.  When you then enter notes, holding down the
Alt,  command is inserted to the note.  The programmable keys are especially
useful when entering drum-rhythms etc.  The definitions can be saved so that
they're automatically loaded when you start MED next time.

It's  also possible to pick up a range of notes (they can't be edited after
picking).

"Edit"-panel  contains  gadgets,  which  you can use to edit the notes/cmds.
Only one note/cmd of the 12 is displayed at a time.

0-9      Shows the current 'Shift-number key' definition, the number is
         shown above the arrow gadgets, which can be used to change it.

L.Alt    Shows the definition of Left Alt

R.Alt    Shows the definition of Right Alt

The current definition of each key is displayed on the Edit-panel. If some
number is marked as "x", it's "transparent", the existing number will not
be changed when the note is entered to the block (with Shift 0 - 9).

You can change the definition by picking a note, but you can change it in
another  way  as  well.   Click  the  number to be changed, and enter a new
number from keyboard while still holding the mouse button, and pointing the
number  to  be  changed.   If you want to change several numbers, you don't
have  to  release  the button.  Just position the mouse over the number you
want to change.

For  example, if you wanted to clear all commands from this track (but leave
the notes) you could make a following definition:

         xxx  xx000

Because  the  note  is  "xxx"  and  instrument number is "xx", they won't be
changed,  and  only the command is cleared.  Then you can just hold down the
Shift and the number key and let the key-repeat do the job.

R.Alt  and  L.Alt  are a bit different:  the note number is always "xxx" and
the instrument number by default is "xx".

Pick note
       copies the note currently under the cursor to this key. You can
       also pick, for example #7 by pressing Shift-Ctrl-7.
Pick range
       picks the current range as a definition of this key
Pick buf
       picks the copy buffer as a definition of this key
Clr    clears the definition of this key.

SPACE=DEL
       Some people may prefer using the space bar instead of DEL when
       entering blank notes. This switch makes it possible.

Keypad: Track on/off / Sel.instr
       This allows you to set the keypad operating mode. When it's set
       to "Track on/off", the keypad can be used to turn tracks 0 - F
       on/off. When "Sel.instr" is selected, you can select quickly the
       first 16 instruments. The layout is as follows:
        [ = 0  ] = 1  / = 2  * = 3
        7 = 4  8 = 5  9 = 6  - = 7
        4 = 8  5 = 9  6 = 10 + = 11
        1 = 12 2 = 13 3 = 14 . = 15

Advance
        Here are some quite useful editing options, that control the
        automatic advancing of the cursor after entering something.

        (down arrow)  When this is selected, the cursor automatically
                      moves to the next line when a note is entered.
                      Shortcut: Ctrl-A
        (up arrow)    Moves the cursor to the previous line, when note
                      entered. This is probably not very useful (but
                      interesting...)
        >             When entering effect numbers, the cursor is moved
                      to right (but not to next line).
        <             When entering numbers, the cursor moves to left.
                      (again, not too useful...)
        >>            When entering notes, the cursor is moved to the next
                      track.
        <<            When entering notes, cursor is moved to the previous
                      track.

+=========================================================+
|           Misc
+=========================================================+
Some  miscellaneous and not very important things and a VERY important thing
(quitting).

On  the  left  there are gadgets for changing the screen colors.  No need to
explain??   All right, I won't.  But just remember that the colors are saved
when you save your song (they can give some "feel and expression").  You can
also set the default colors of MED by clicking Save prefs.

Jumping: Off 8th Smp
         When you don't want to see the "funny" mouse pointer, select Off.
         When you want him to jump every 8th note, select 8th.
         When you want him to jump when some sample is played, select
         Smp. The instruments which cause him to jump are selected from
         "Instr"-panel (gadget name: Jump).

         The name of the pointer is Topi (according to my cousin).

Clear All, Clear song only, Quit
         These are very dangerous functions, in fact they're so dangerous
         that you must click 'Confirm' after you've selected one of them:

         "Clear All" does just as it says. Clears the song, removes all
         instruments from memory. In two words: clears everything.
         Note: This clears ALL songs.

         "Clear song only" is not as destructive. While it destroys the
         song, it leaves the instruments (if you want to create a new
         song without reloading the instruments).
         Note: This clears only the current song.

         "Quit" is the most destructive. It does everything "Clear
         All" does, but even worse, it quits MED!!!!!!
         This function was made for program testing and it probably
         doesn't have any real use ;-)

Paths: Add/Rem
         These affect the sample names when loading songs/samples.

          Add        Adds the complete path of the sample when you
                     load e.g. if you load sample "PopSnare2" from
                     "ST-01:", the sample name will be "ST-01:PopSnare2".

          Rem        Usually songs made with Trackers have sample names
                     like "ST-02:AhhVox". If you want that the samples are
                     loaded using the path list instead of absolute names
                     (if your samples are in hard disk, for example) you
                     can remove "ST-xx:" from sample names and reload them,
                     but when you "Rem paths" is selected, any paths before
                     the sample names are removed quickly and easily during
                     loading.

         Both of these can be active at the same time. In that case the
         original path is removed, instrument is loaded using the path list,
         and the path name from the path list will be added.
         Note that the maximum length of a instrument name is 39 chars,
         so if the path name is very long, something may be lost.

H->B:
         This selects the name of the note between A# and C.
         In some countries, it's H. In some other countries it's B.

WB: Open/Close
         These gadgets allow you to easily close/reopen the Workbench
         screen to give you extra memory space.

Save prefs
         This will save the default settings of MED to S:med.config.
         When you start MED next time, these settings will be loaded.
         The following things will be saved:
                Current screen colors as default colors
                H->B
                State of E1, E2 and E3 switches
                Screen depth (Dep2)
                NO16
                Space = Del
                Keypad mode
                Automatic advance settings
                Current programmable key definitions
                Jump: Off
                PTKey

Dep2    This changes the screen depth from 8-colors to 4 colors. This
        frees some chip memory, but most important: it releases lots of
        DMA-time. In plain English: MED will run faster (but looks
        less pretty).

NO16    This gadget disables the 12/16 track display on OctaMED. On MED,
        it does nothing.

PTKEY   This switch changes the keyboard operation so, that the most common
        Protracker keyboard options will be recognized. This is helpful for
        those who have got used to Protracker keyboard layout. The following
        PT shortcuts are recognized:

        Right shift     Turns editing on, starts playing the block (= record)
        Right alt       Continue song
        Right Amiga     Play block
        L-Alt+curs.L/R  Previous/next block
        Shift+curs.L/R  Increase/decrease playseq position
        Space           Stops playing/toggles editing.
        TAB             Next track
        Shift-TAB       Previous track
        Shift-F3 - F5   Cut/Copy/Paste track
        Alt-F3 - F5     Cut/Copy/Paste block

        If there are any other Protracker options you'd like MED to recognize,
        please let me (Teijo) know.

+=========================================================+
|         Vol
+=========================================================+

This  panel  allows  you  to  set the proportional volume of each track.  In
addition  you can also set the master volume.  The proportional value can be
1  -  64.   If both the master volume and the volume of a track are 64, that
track  is  played  on  full volume.  If the master volume was 32 and a track
volume was 32, the volume of that track would be 1/4 of the full volume.

There  are  two  sets  of  Ğ  < 64 > ğ gadgets.  The one on the right is the
master  volume.  The left one changes the volume of the selected track.  You
can select the track, by clicking a number above the gadgets.  The currently
selected number is highlighted.

This  is  quite  easy,  so no problems should appear.  The track volumes and
the master volume are saved with songs.

+=========================================================+
|           MIDI
+=========================================================+
MED  can output notes and some commands to external MIDI-devices (keyboards,
synthesizers...).   The  MIDI-panel  contains the MIDI-stuff which is needed
for that.

When you decide that some instrument should be a MIDI-instrument, you select
the  MIDI  channel  for  it.   "MIDI  ch"-gadgets are used for that.  If you
select e.g.  MIDI channel 2, the notes of the current instrument are sent in
MIDI  channel  2  (simple,  isn't  it?).  Remember to set the default volume
(Sample panel).

Also,  you  need to activate MIDI (click "MIDI active").  If the serial port
is  used by some other program, you can't use MIDI.  Then you must terminate
the other program and try again.

After  you have activated MIDI, MED starts sending "active sensing" messages
($FE).  Active sensing can be turned off with the "Act.sensing"-gadget.

By  default  MED uses the default preset of that channel (which you have set
on your MIDI device).  If you want to use other presets, you can select them
using  the "MIDI pres #"-gadgets, in that case the program change message is
transmitted  when  a note is played.  Preset number 0 means that the default
preset  is  used  (the preset is never changed for this instrument).  If you
want to send a preset change command, but don't want to play a note yet, use
the  command  C00  with any note.  In that case, the preset will be changed,
but no note will be transmitted.

You  can have instruments with differents preset numbers, but which will use
the  same  MIDI  channel.   In  that  case,  MED will automatically send the
program  change message whenever the instrument with different preset number
is used.

You can use MIDI-instruments on all 16 tracks (if there are 16 tracks on the
current block).  You can also freely mix samples and MIDI-instruments on the
same track (tracks 0 - 3 only).

One  helpful  keyboard  command  is  Ctrl-Space.  This command resets pitch-
benders  and  modulation  wheels on all channels.  Also, if you have changed
presets  on  your  MIDI-device,  MED  can't  detect this and thinks that the
preset  is  not  changed.   Ctrl-Space  causes  MED to resend program change
commands for all channels, when playing.  There's a gadget:  "Reset pb+pres"
that does the same thing.

The "MIDI reset"-gadget sends a MIDI reset command ($FF).

If  you  turn "Send sync" on, MED will send MIDI sync information, and allow
other  devices  to  synchronize with MED.  When "Ext sync" is on, MED can be
synced  externally.  You must also have input active when this is turned on.
The  synchronization  works  only  when you play song, when you're playing a
single block, the syncing is disabled.

L.Ctrl  on/off  gadgets  allow  you  to  easily  send  Local  control on/off
messages.

Suppr.N.Off  suppresses  Note  Off messages of the current instrument.  Some
devices  may  have  some  instruments  (e.g.   one-shot  drum  sounds) which
actually  ignore  the Note Off messages.  When Suppr.N.Off is selected, Note
Offs are not sent for the current instrument.  This reduces some unnecessary
MIDI output (slightly faster).

There  are  commands  which  control  the pitchbender, modulation wheel etc.
Detailed documetation later (again??).

------- Entering notes with MIDI
You  can  use  your  keyboard, synthesizer or whatever, to insert notes (you
don't need to use your Amiga's keyboard to entering).  You must activate the
"Input"-gadget.   If  editing  is  on and your MIDI-device is sending notes,
they  will be entered.  You can also enter Amiga-samples with MIDI.  Next to
the  Input-gadget, there's a integer gadget, that contains the number of the
input  MIDI  channel.   If  it's 0, then MED will accept input from all MIDI
channels.

"Read volume" gadget may be sometimes quite useful.  If you have a velocity-
sensitive  keyboard, the volume will be entered in the command-part when you
enter  notes  and  this gadget is selected.  "Read key-up" is not as useful.
When  it's  active,  MED records key-up events.  It can be used in real-time
recording (and mostly for long notes).

You  may  have noticed that you can't directly use all the octaves which are
available  on  the MIDI device.  "Instrument transpose" helps this.  You can
have two instruments with identical settings except for different instrument
transpose.  With instrument transpose you can reach nearly the full range of
notes.

NOTE: When you have a MIDI-instrument, its name doesn't really have any use.
      However it's good practice to type in the names of the presets. This
      way you can easily see the presets, and, if you give the song to
      somebody else who may have different MIDI-equipment, he/she can
      easily change the preset numbers to use the correct presets on his/her
      MIDI-device.

+=========================================================+
|        Trans
+=========================================================+

Starting  from  the  bottom,  there's  a long string gadget that can hold an
annotation  text  for  the  song.   When you save the song, the text in this
gadget will be saved, and it will be displayed when loading the song.

The  other  functions  of  this  panel  has something to do with transposing
notes.

When  you're doing some transposing, you should first decide which areas the
transposing  should  affect.   At  the top of the panel there are gadgets to
select this:
    Affect/song     the functions of this panel will affect the whole song
    Affect/block    the functions will affect the current block
    Affect/track    current track will be affected
    Affect/sel.trks selected tracks in this block will be affected
    Affect/range    the range selected with mouse will be affected

    Instr/all       all instruments affected
    Instr/curr      only the current instrument affected

First there are some simple transposing operations:
    1/2 ^ (<-arrow up) transposes the affection area up one half-step
    1/2 v (<-arrow down) transposes down one half-step
    oct ^ transposes one octave up
    oct v transposes one octave down

------- Note (ex)change
Suppose  you want to change all D-3's of instr 2 in your song to C-1.  First
you  set  Affect/song  (affect the whole song).  The you go to instrument #2
and select Instr/curr (to affect only this instrument).

Now  you  click the box at the right of the text "Note", hold down the mouse
button,  and  enter note D-3 from keyboard (D-3 will be displayed).  This is
the  source  note  name.   Then you click the box at the right of the source
note  box, hold the mouse button again, and enter C-1.  Now you have set the
destination note.

Finally  you just click the "->" gadget at the right of the dest.  note box.
If  you  had  wanted  to exchange the notes (D-3 => C-1 AND C-1 => D-3), you
would have clicked the "<->" gadget instead.

------- Instrument deletion/changing
The left instrument number is the source number and the right one is
the destination number. To set them, select the instrument (e.g. Shift-
cursor left/right) and click on the number.
Del        Deletes the notes with source instrument number.
->         Changes the source instrument number to dest. instrument number
<->        Exchanges the source and instrument numbers

------- Play transpose
This gadgets allows you transpose the whole song quickly.  It doesn't change
the notes, it only affects playing.

+=========================================================+
|       Range
+=========================================================+

This  panel  contains  many  of  the  range-editing options.  The range is a
rectangular  area of notes in a block.  It is selected by dragging using the
right  mouse  button and (then moving the mouse).  It only works on vertical
note display.

The  numbers  at the right bottom corner show you the starting/ending tracks
and starting/ending lines of the block.

At  the left side of the panel, there are gadgets "Select track" and "Select
block".   These allow you to select a single track or block quickly.  To the
right  of  them,  there  are  gadgets for range operations.  The simplest is
"Clear".   It  clears  all  notes in the range.  Above it is "Cut".  It also
clears  the  notes,  but  copies  them to the copy buffer for later pasting.
"Copy"  doesn't  clear  the notes, just copies them to the copy buffer.  You
can  paste  the  contents  of the copy buffer with "Paste".  The copy buffer
will  then  be  copied  starting at the cursor.  If the copy buffer contains
e.g.   3  tracks, and you don't want to copy them to consecutive tracks, but
e.g.   tracks  2,  7,  and  9,  You  would  select  tracks  2, 7, and 9 with
track-selection  gadgets  (at  the top), and then click "Paste select".  The
notes  will  be  pasted only to selected tracks.  The "Cancel" gadget can be
used to forget the range (e.g.  if you've accidentaly hit the RMB).  You can
achieve the same effect with moving to another block.

Spread  2/3/4  allow you to spread notes on one track to consecutive tracks.
For  example,  get  an  empty block, fill track 0 with notes, select track 0
(with "Select track" for example), and try these gadgets.

S1, S2          These gadgets can perform the quite tedious task of
                creating slides. Here's how it works (example):

                You want to make a slide from C-2 to G-2:

                    000 C-2 1000
                    001 --- 0000
                    002 --- 0000
                    003 --- 0000
                    004 --- 0000
                    005 G-2 1000
                    006 --- 0000

                Move the cursor to the line where you want the
                slide to begin (in this example, line 002). Then click
                S1 or S2. Result:

                If you click S1         If you click S2
                   000 C-2 1000            000 C-2 1000
                   001 --- 0000            001 --- 0000
                   002 G-2 1306            002 --- 0108
                   003 --- 0306            003 --- 0108
                   004 --- 0306            004 --- 0108
                   005 --- 0306            005 G-2 1000
                   006 --- 0000            006 --- 0000

                The better result is usually achieved using S1. S1 and S2
                use the different sliding commands (that's the difference).
                With S2, the second note is also replayed. The commands
                itself are documented later.
                        Keyboard: S1 = Amiga-T, S2 = Shift-Amiga-T

VOL             Creates a volume slide. With this option, it's possible
                to create easily fades etc. Example:

                009 --- 0C50 <-start volume   \    009 --- 0C50
                010 --- 0000  =================\   010 --- 0C47
                011 --- 0000  | Click "VOL"     \  011 --- 0C44
                012 --- 0000  |                 /  012 --- 0C40
                013 --- 0000  =================/   013 --- 0C37
                014 --- 0C34 <-end volume     /    014 --- 0C34

                The cursor must be positioned somewhere between the C-
		commands (on lines 10 - 13 in this example).

Select: 0, 1, 2, ... E, F
        These gadgets are used to select tracks (not range). Some track-
        based operations may need this (e.g. Paste select), or you can set
        the transpose operations to affect the selected tracks.
        ST selects all tracks, while CL deselects them.

Chord
        This gadget can be used if you want to enter chords. First you
        should select the tracks, which the chord entering affects (with
        above gadgets). The chord always starts from the current track and
        then continues to the next selected track etc...
        After you've selected this gadget and turned editing on, you can
        try entering a major C-chord (select all tracks now, because this is
        just an example!!).
        Press Q (C), hold it down. Then press E (E) holding both keys still
        down. Finally T (G). Now you can release the keys, and the cursor
        moves back to the starting track and advances line.
        Chord editing works well with MIDI too.

============================================================================
============================================================================
        Big displays

MED  has  some panels, that are displayed in the large area (where the notes
usually  are).   The  rightmost strip of panel-selection gadgets are used to
select one of the five possible big displays.  The displays (gagdets) are:

        Vertical note display
        (Notation editor, in OctaMED V2 only!)
        Synthetic sound editor
        Sample editor
        Sample list

*===========================================================================
*       Synthetic sound editor
*===========================================================================
See the doc file "Synthsounds.doc"...

*===========================================================================
*       Sample editor
*===========================================================================
See the doc file "Sample_editor.doc"...

*===========================================================================
*       Sample list
*===========================================================================

------- What is it??
Sample list is a list of all your samples and sample disks/directories.  You
can  easily scan through your sample lists and load a sample by clicking its
name.   When  you've  constructed  the  sample  list, it is saved and always
loaded  when you run MED.  You don't have to load directories of your sample
disks  more  than  once.   Sample  list  (MED_paths)  contains the directory
declarations, so MED can automatically load your samples from correct disks,
minimizing disk swappings, when you load songs.

------- How to create a Sample list??

          Using the filerequester, load the directory of your sample
          disk/dir. Then go to the "SList"-panel. Now click Dir/ADD.
          You should see the filenames of the directory to appear.
          You can now examine the list, and if there are files which
          are not samples, destroy them from the list with Instr/DEL.
          Repeat this procedure for each sampledisk/dir you have.
          You can select the displayed directory with the right display,
          which displays the directory names.

          When you have made the list, you probably want to save it.
          Save/S: does the job. If you click CD, the path file will be
          saved to the current directory (be sure that it is the same where
          you started MED). If you click "S:", the file will be saved
          to the S:-directory. I prefer placing the file in S:, because
          then it doesn't matter which is the current directory when
          starting MED. The file is called "MED_paths".

          If you later want to add entries to the directory, you can
          delete the whole directory from the list with Dir/DEL. Then you
          must click the name of the directory to remove.
          Then you can reload the directory. You can also add entries
          one at a time. If you click Instr/ADD, the name of the
          current sample is added to the list. Also the repeat/rep.length
          values are then added to the list (form: Asia::480/5362).
          Note that the previous entry with same name is not deleted,
          so you must delete it by hand (using Instr/DEL), if you want to
          add rep./rep.len values to the list.

          If the current instrument is a MIDI-instrument when you add
          the name, the name will be a form E.Piano::M6/4 . The 1st
          number is the channel, the 2nd is the preset. When you later
          load instrument of that name, the MIDI-channel/preset will be
          set. Note that the instrument with this name doesn't really
          have to exist in that directory, it's like a "dummy" entry.
          You may want to create a "dummy" directory for these dummy
          MIDI entries (empty dir).

          At the top is the box displaying the directory name and number.
          The right display only displays the last 16 chars of the dir
          name, because it's the most meaningful. For example
          some of my instruments are located in directory:

                work:samples/ST-01/

          If the box showed the first 16 chars, it would be
          "work:samples/ST-" (which isn't as helpful).

          The instrument loading is simple. Just click the instrument name
          on the left display, and it's loaded.

------- Loading MED_paths

          You can load a new MED_paths file, using the file requester.
          If you select a file called MED_paths, you'll be immediately
          requested if you want to load it. If you press 'R', the list
          in the memory will be lost and the new one will be loaded. If
          'A' is pressed, the current path list is preserved and the new
          one will be appended to it.

          Finally, I reveal the keyboard shortcuts...

                Alt-numeric keypad-8 = scroll the list up (very useful)
                Alt-numeric keypad-2 = scroll the list down (very too)
                Alt-keypad-9 (PgUp)  = scroll the list up fast
                Alt-keypad-3 (PgDn)  = scroll the list down fast
                Alt-keypad-7 (Home)  = to the beginning of the list
                Alt-keypad-1 (End)   = to the end of the list

+-------------------------------------------------------------------+
|+-----------------------------------------------------------------+|
||             MED V3.2 player commands/effects                    ||
|+-----------------------------------------------------------------+|
+-------------------------------------------------------------------+

This  section  gives  information  about  commands/effects.  They are events
which affect the playing and they are handled by the MED player routine.

         C - 2  1 2 3 4
                  | \ |
     command number  \|
                      data byte

You insert the commands usually by hand (turn editing on, move cursor on the
command  numbers  and type the numbers).  It may be a bit easier if you turn
off automatic-advance with Ctrl-A.

Here are the descriptions of each of the currently recognized commands:


+---------------------------------------------------+
| Command 0:  ARPEGGIO       MIDI: controller value |
+---------------------------------------------------+

This command changes the pitch of the note quickly (6 times during 1 note).
It can be used to create "chords" or special effects. If you've listened
to music made with the C-64, you MUST have heard arpeggios. The pitch is
changed between 3 different pitches during one note:
         the 1st pitch is the pitch of the original note
         the 2nd pitch is the pitch of the original note + the 1st number
                of databyte halfsteps up
         the 3rd pitch is the pitch of the original note + the 2nd number
                of databyte halfsteps up

Note: 3rd pitch | 2nd pitch | 1st pitch | 3rd pitch | 2nd pitch | 1st pitch
      changed 6 times during note

It may be a bit difficult to understand, so here's an example:
You want to make an arpeggio which sounds like C-major chord.

The lowest pitch is C (C-2 in this example).
The second is E-2 (4 halfsteps higher than C-2).
The third is G-2 (7 halfsteps higher than C-2).

4 halfsteps from C-2 -+ 7 halfsteps from C-2
                      |/
That produces:  C-2 1047
                --- 0047
                --- 0047 and so on...

Data byte for a minor chord would be 37.

The arpeggios sound better with some instruments than others.

MIDI: See command 5 for a description.

+---------------------------------------------------+
| Command 1:  SLIDE UP       MIDI: pitchbender up   |
+---------------------------------------------------+

This command slides up the pitch of the current track.

With Amiga samples:
         Decreases the period of the note the amount of databyte on each
         timing pulse. Sounds rather technical?? Yes... The instructions for
         previous (before 2.10) versions of MED contained detailed
         instructions for making good-sounding slides with this command.
         Because this version now contains the easy automatic slide making
         (Amiga-T), I felt that these instructions are not necessary any more.
         If you use this function for special effects (not real slides) then
         you can experiment with the values for the databyte.
         Example:
                A-1 1000
                --- 0000
                --- 010F <- slide up a bit

With MIDI:
         This commands works very differently with MIDI. It actually
         "turns" the pitchbender 8 * databyte steps up on each timing pulse.
         Because the actual range of the pitchbender may be different with
         different MIDI-devices, you must find the right value by
         experimenting. There's also one thing you should know: when a new
         note is played, the pitchbender is not resetted automatically. To
         reset the pitchbender, you use this command with databyte zero.
         Example:
                G-2 L1FF <-turn it up very quick
                --- 0000
                --- 0100 <- then reset the pitchbender


+---------------------------------------------------+
| Command 2:  SLIDE DOWN     MIDI: pitchbender down |
+---------------------------------------------------+

Not much about this command. It's just like command 1 except it slides
down.


+---------------------------------------------------+
| Command 3:  PORTAMENTO     MIDI: set pitchbender  |
+---------------------------------------------------+

This is another slide command (on some old MED versions (2.00) this
was a vibrato command, see command 5 now). It can be used to
make perfect slides more easily. First an example:

         C-2 5000 <- played note C
         --- 0000
         E-2 5305 <- this note is not played!! Instead, slide target is set
         --- 0300    to G-2 and slide speed is 5
         --- 0300 <- when speed is zero, use the previous speed
         --- 0306 <- the speed can be changed, of course

This example would slide from C-2 to E-2, but the slide stops EXACTLY
when E-2 is reached. The remaining 3's have no effect. This command
is easier to handle with automatic slide making (see Edit/S1 above).

MIDI: By using this command, you can set the pitchbender to an absolute
value, instead of sliding as commands 1 and 2 do. The data byte is the
pitchbender value, expressed as a signed hexadecimal digit (a nightmare
to non-programmers!).
        00 = center position
        80 (-7F) = smallest value
        7F = largest value

Example:
        C-2 3000
        --- 037F <- pitchbender to max. value
        --- 0300 <- reset


+---------------------------------------------------+
| Command 4:  VIBRATO        MIDI: modulation wheel |
+---------------------------------------------------+

The first number of the data byte is vibrato speed, the second is
vibrato depth. If the numbers are zeros, the previous speed and depth
is used.

Example: F-215000
         --- 0000
         --- 0433 <- slow, not much depth
         --- 0437 <- more depth
         --- 043F <- full depth
         --- 0482 <- fast, not very deep

MIDI: This command affects the modulation wheel of the current channel.
      The data byte can be 00 - 7F. 00 = no modulation, 7F = maximum.
      Values 80 - FF are reserved for future expansion (and won't work).


+---------------------------------------------------+
| Command 5:  OLD VIBRATO    MIDI: controller number|
+---------------------------------------------------+

This is the old vibrato command (previously it was 3). The command 3 is
automatically converted to 5 when loading old MED songs. The pitch of
the note is changed between two values, databyte is the depth.

Example: A#1 J502
         --- 0507 increasing depth
         --- 0517 v
         --- 0527
         --- 0537

MIDI: Command 5 in conjunction with command 0 allows you to change any
controller of MIDI (command $Bx cc vv, where cc = controller number,
vv = value).

First you set the number of controller you want to change with command
5. Then you can select the value with command 0. Subsequent uses of
command 0 will affect the controller previously set with command 5.
Each channel has its own controller number. If the controller value is
$00, you can't use '00', because the command '000' means 'do nothing'.
Instead, you type '80'. Acceptable controller numbers and values are
$00 - $7F.

For example: (assuming instrument 3 is set to MIDI channel 1)
        C-2 3000
        --- 0507 <- controller $07, volume, according to MIDI standard
        D-2 307F <- set max. volume ($7F), command $B0 $07 $7F is sent
        --- 0000
        F-3 3001 <- small volume ($01)
        --- 055C <- select controller $5C (tremolo depth)
        G-4 3080 <- set to 0 (note: $80 = $00)

+---------------------------------------------------+
| Command 8:  SET HOLD/DECAY MIDI: set hold only    |
+---------------------------------------------------+

This command must be located on the same line with a note. The command
assigns the hold and decay values for the note (see above for description
about hold/decay).

                hold value
decay----------+|
               ||
Example: C-3 3824
         -|- 3000
         -|- 3000
         --- 0000

+---------------------------------------------------+
| Command 9:  SEC. TEMPO     MIDI: no action        |
+---------------------------------------------------+

This command sets the secondary tempo (the number of timing pulses/note).
The argument must be 01 - 20.

Example: --- 0903 <= double tempo
         --- 0000

+---------------------------------------------------+
| Command A:  VOLUME SLIDE   MIDI: polyph aftertouch|
+---------------------------------------------------+

This is the same as command D (for Noise/Protracker compatibility).
However, please use D instead of this. If I some day find that there
are no free commands, I'll use this!!

MIDI: Command A changes the polyphonic aftertouch of the most recent note.
The value should be $00 - $7F.
Example:
        C-3 4000
        --- 0A30 <- aftertouch $30
        --- 0000
        --- 0A00 <- aftertouch $00

+---------------------------------------------------+
| Command B:  POSITION JUMP  MIDI: position jump    |
+---------------------------------------------------+

This command lets you make songs that have beginning which is played
only once and then some part which is looped forever. Position jump
causes the jump to playsequence number pointed by the data byte. If the
data byte is 0, then the playseq jumps to the first entry.

Example:	--- 0B02 <- start playing from playsequence number 3

+---------------------------------------------------+
| Command C:  SET VOLUME     MIDI: set volume       |
+---------------------------------------------------+

You can override the default volume of the instrument with this command.
Example:
         A-3 4C20 <- played with volume 20

There are 65 volume levels (0 - 64), 0 = no sound, 64 = maximum. The
data byte of command C can be 00 - 64 or 00 - 40 (decimal or hex).
Non-programmers will probably want to use the decimal numbers. See
(Play/[Dec/Hex]). If you want the playroutine to have maximum performance,
then use hex values.

It is also possible to change the volume of already played note. Note
that it doesn't work with MIDI-instruments.

Example:
         A-3 4000
         --- 0000
         --- 0C10 <- volume to 10

It's possible to change the default volume of an instrument (MED V2 and
later). The value must be between 80 and C0 (always hex!). Value $80 = volume
0, and $C0 = 64. Note: This can cause trouble in multi-modules, because the
set of instruments (and their default volumes) are common. I recommend that
you change the default volume only on non-multi-modules.

+---------------------------------------------------+
| Command D:  VOLUME SLIDE   MIDI: channel pressure |
+---------------------------------------------------+

You can increase/decrease volume smoothly with this command. The data
byte is divided in two parts:

         C-3 3D01
               ||
               |+- Amount of decresdendo
               +-- Amount of crescendo

If crescendo is zero, then the decrescendo is performed. Otherwise only
crescendo is performed.

Example:
         C-2 3C40
         --- 0D01 <- a bit more quiet
         --- 0D01 <- even more
         --- 0D20 <- and crescendo back to original

One unit in these commands means six actual volume units, so this example
would look like this, when using the C-command (except that it doesn't
sound so smooth):
         C-2 3C40 (volumes are decimal in this example)
         --- 0C34 <- -6
         --- 0C28 <- -6
         --- 0C40 <- +12

MIDI: This command sends a channel pressure (channel aftertouch) message
using the channel in which the most recent note was sent. The databyte
should be $00 - $7F.
         D#5 J000
         --- 0D40 <- channel aftertouch $40
         --- 0D00 <- to $00

+---------------------------------------------------+
| Command E:  SYNTH/JMP      MIDI: pan control      |
+---------------------------------------------------+

When used with synth/hybrid instruments, this command triggers a jump
in the waveform command sequence. The databyte is the jump destination
(line number).

Example: C-4 4000 <- this should be synth/hybrid instrument
         --- 0000
         --- 0E05 <- cause a jump to line # 5

With MIDI-instruments, this command controls the stereo location of the
sound. The data byte can be 00 - 7F.

        left           mid            right
         |              |               |
        00             3F               7F

If you've used MED V2.00/V2.01 or Noise/SoundTracker, you may remember
that this command controlled the low-pass filter. I think that it was
unnecessary to spend the command E only for controlling only a single
switch. See command F.

+---------------------------------------------------+
| Command F:  TEMPO/MISC.    MIDI: tempo/misc.      |
+---------------------------------------------------+

Command F has many different actions depending on the data byte.

If the data byte is zero (00), this command causes the immediate jumping
to the next block on the playing sequence (or to the beginning of this
block if you're only playing the block). This function is better to
implement by making the block shorter (takes less memory).

Example:
         C-2 4F00 <- this is the last note of this block

When the data byte if 01 - F0, the command changes the tempo. This is the
primary tempo (length of the pause between timing pulses).

If the new tempo is 01 - 0A, it is compatible with Trackers, but now you
should use the command 9 instead of this command, as it's directly
Tracker-compatible (set the primary tempo to 33).

Example:
         E-3 6FF0 <- highest tempo
         --- 0000
         --- 0F0B <- slowest

Data bytes FF1 - FFF are reserved for special actions, some of them
are currently used:

FF1 causes the same note played actually twice. This way it's possible
to create fast rhythms.

         C-3 2FF1 is same as C-3 2000
                             C-3 2000 with double tempo

FF2 plays the note only once, but it is not started immediately:

         C-3 2FF2 is same as --- 0000
                             C-3 2000 with double tempo

FF3 works like FF1 except the note is played three times (very fast).

FF8 turns off the low-pass filter (power-LED will dim).

FF9 turns the low-pass filter on (bright LED).

FFA sends MIDI "hold pedal on"-command (works only with MIDI-instruments).

FFB sends MIDI "hold pedal off"-command (works only with MIDI-instruments).

FFD works only with Amiga-samples. It causes the pitch of the channel to
    be set to the pitch of the new note, but the new note is not replayed.

         C-1 2000 <- play note
         --- 0000
         C-2 2FFD <- don't replay the note, just set the pitch to C-2

FFE stops playing immediately. If you want to make a song which plays only
    once, put this command to the end of the song. This command can be
    easily entered: Click "Stop playing" while holding the Shift-key.

FFF Stops the note on the current track. Works with both Amiga- and MIDI-
    instruments. Nearly identical to "C00" on Amiga-samples, but because
    "C00" doesn't work with MIDI, I made this command.


+-------------------------------------------------------------------+
|+-----------------------------------------------------------------+|
||             MED V3.20 keyboard equivalents/functions            ||
|+-----------------------------------------------------------------+|
+-------------------------------------------------------------------+

      Cursor up              Cursor up
      Cursor down            Cursor down
      Cursor right           Cursor right
      Cursor left            Cursor left
-- then a bit more complex ones
      DEL                    Delete note or number under cursor
      Shift-DEL              Delete the note and the command numbers
      Alt-DEL                Delete only the command numbers
      Backspace              Deletes the note and moves following notes up
      Shift-Backspace        Inserts an empty note slot
      Alt-Backspace          Deletes the current track
      Alt-Shift-Backspace    Inserts a new track
      Shift-Cursor up        Previous block
      Shift-Cursor down      Next block
      Shift-Cursor left      Previous sample
      Shift-Cursor right     Next sample
      Left-Alt-Cursor up     First block
      Left-Alt-Cursor down   Last block
      Alt-Cursor left        Cursor onto previous track
      Alt-Cursor right       Cursor onto next track
      Alt-Shift-Cursor right 16 samples forward
      Alt-Shift-Cursor left  16 samples backward
      Ctrl-Cursor left       Previous screenful of tracks
      Ctrl-Cursor right      Next screenful of tracks
      Space bar              Stop playing (or delete note if SPC=CLR active)
      Alt-Space              Continue block
      Ctrl-Space             Reset MIDI pitchbenders/mod. wheels/presets
      Shift-Space            Continue song
      Shift-Alt-Space        Play song
      Esc                    Editing on/off
      ~                      Extra space on/off
      F1 - F4                Select keyboard octaves 1+2 - 4+5.
      F6                     Cursor to the first line of the block
      F7                     Cursor to the second quarter of the block
      F8                     Cursor to the middle of the block
      F9                     Cursor to the last quarter of the block
      F10                    Cursor to the last line of the block
      Ctrl-F1 - F10          Select displayed panel
      Ctrl-Shift-0 - 9       Pick note 0 - 9
      Ctrl-A	             Automatic advance down on/off
      Ctrl-F                 Display free memory
      Amiga-F                Low-pass filter on/off
      Amiga-I                Activate sample name gadget.
      Shift-Amiga-I          Clear and activate sample name gadget
      Amiga-J                Jumping on/off for this sample
      Amiga-L                Load song
      Amiga-P                Play song (Shift-Alt-Space)
      Amiga-R                Activate repeat gadget (in Sample-panel)
      Amiga-T                Create slide using command 3 (transform)
      Amiga-Shift-T          Create slide using command 1 and 2
      Amiga-X/C/V            Cut/copy/paste current track
      Amiga-Shift-X/C/V      Cut/copy/paste current block
      Shift-0 - 9            Enter note 0 - 9
      TAB                    Highlight current line

Numeric keypad (the non-shifted operations are described in Edit/pad on/off)
      Ctrl-8             Scroll the playing sequence list up
      Ctrl-2             Scroll the playing sequence list down
      Ctrl-4             Decrease the block number of the psl
      Ctrl-6             Increase the block number of the psl
      Ctrl-7             Move to the beginning of the psl (psl = the
      Ctrl-1             Move to the end of the psl        playing
      Ctrl-5             Insert this block to the psl      sequence
      Ctrl-0             Insert number 0 to the psl        list)
      Ctrl-.             Delete the block number from the psl
      Alt-8              Scroll samplelist up
      Alt-2              Scroll samplelist down
      Alt-9              Scroll samplelist up fast
      Alt-3              Scroll samplelist down fast
      Alt-7              Beginning of the samplelist
      Alt-1              End of the samplelist
