home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gold Fish 1
/
GoldFishApril1994_CD2.img
/
d4xx
/
d483
/
med
/
med.lzh
/
MED
/
Docs
/
MEDV3.10.doc
< prev
next >
Wrap
Text File
|
1991-05-08
|
76KB
|
1,633 lines
***************************************************************************
** **
** MED - music editor, © 1989 - 1991 Teijo Kinnunen **
** **
** Instructions for V3.10 and OctaMED V1.00 1.4.1991 **
** **
***************************************************************************
Welcome to use MED-music editor!!! MED is a music editor that is designed
for making music for programs (e.g. demos, games...), but works well as
a stand-alone music program.
First few words about editing. If you've used any Tracker, you probably
know these things. MED doesn't use standard notation (like DMCS, for
example). Instead the music is represented by note names and numbers.
Example:
01 C-2 1000 --- 0000 E-5 K210 --- 0F20
02 D-2 1000 E#1 4000 --- 0000 --- 0000
03 --- 0000 --- 0000 --- 0000 --- 0000
etc.
There are both advantages and disadvantages. A disadvantage is that you
can't print notes that anybody could play. The advantages are for example
faster and more powerful editing and the possibility to control the sound
more powerfully.
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.
Then about the program itself:
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 using the keyboard, so you should read the list of keyboard
shortcuts at the end of this file.
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 to 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...
To get the blocks played in correct order, you must create also 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 play 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.
This should be enough for any use (if not, write me and I may fix that in a
future version).
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.
+-------+-----+--+-+--+----+--------+--+------------------------+
|001/003|00/02|12|E|SP|CHRD|::::::::|01|AnalogString |
+-------+-----+--+-+--+----+--------+--+------------------------+
| | | | | | | | |
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.
Instrument name:
The name of the current instrument.
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, they 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 file.
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, hold Shift and enter the 1st number. This is a bit
hard to explain, but try it. Because Shift-0 - 9 have other use, press
Amiga-Shift-0 - 9. 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.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
That was some introduction...now is coming complete reference for all
features of MED (at least those I remember...). Maybe I should design
a bigger headline here:
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
***************************************************************************
* *
* +-------------------------------------------------------------------+ *
* | MED V3.10 reference | *
* +-------------------------------------------------------------------+ *
* *
***************************************************************************
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
All right, that was nice...and now to the reference:
+=========================================================+
| 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). When you have started up MED, you can load the
current directory by just activating the gadget and then 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/without path).
------- Load
Song: This is the gadget used to load songs. Loads songs
with following formats:
MED V1.12, MED V2.00, MED V2.1x/V3.00/V3.10,
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 not 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 to MED with
"ST MOD".
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 SoundTracker and
NoiseTracker modules. Because 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 few
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 clean (but big)
file which contains everything needed. This is a good selection
if you want to create a demo disk using the music and MEDPlayer.
The files load faster and there's no need to hassle with copying
the samples to the disk.
Module (MMD0)
If you're a programmer and want to include songs in your programs,
then you need this format. It saves both the song and the samples
in one file. It differs from "Sng+samples" many ways. First,
the file is not packed. Second, the file will contain ONLY the
information which is needed by the player. It doesn't contain
for example instrument names. There are also other differences
in the structure of the file. These files can be loaded back to
MED (they load very fast, because no unpacking is needed).
I have included routines to load modules in the distribution
disk (see directory "Programmers").
ST-Module
If you want to export the music to SoundTracker 2.x or NoiseTracker,
you can use this gadget to save it 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
Obj1, Obj2
These are needed only by programmers. The song is saved in MMD0
format, but it is saved directly as Amiga Object File. Obj1 and
Obj2 have small differences - see the docs for programmers.
Don't include ".o"-suffix to the filename, it'll be automatically
added. Also, MED cannot load object files so if you don't want
to meet the meditating guru, don't try it.
+=========================================================+
| 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 I said
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 of it.
Continue song starts playing from the current playseq entry and cursor pos
Play block plays the current block (starts from 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
Stop playing stops playing the song. You can also use it to kill the
notes played from the Amiga-keyboard/MIDI.
The spacebar is used in 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 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. NOTE: With Amiga 1000s, it's not possible
to turn off the filter without modifications to the
computer. Please keep the filter off.
The state of this switch will be saved with songs.
E1, E2, E3 If you've played something with MED, you have found the
three "equalizers". E1 turns off/on the red bars at the
bottom of the screen (PAL machines). E2 turns off/on the
four colorful sprites. E3 turns off/on the signal 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
same pulse with playing notes. This is the way the
Trackers do that, and this switch is for compatibility.
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.
------- 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 accidentaly,
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 (what a difficult
word!!) of them. First I should note out few very important actions which
are available with keyboard:
Shift-Cursor Left/Right = previous/next sample
Shift-Alt-Cursor L/R = 16 samples forward/backward
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", "Kill"). "Jump" causes
jumping when this instrument is played. "Kill" 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 R/S is the repeat start offset, R/L is the
length. If the repeat length is lower than 4, no repeat will happen.
------- 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 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.
Finally there's a big proportional gadget. It can be used to set the
default volume of this instrument: 64 = maximum, 0 = silent. It's displayed
in both hex and decimal.
+=========================================================+
| Block
+=========================================================+
This panel contains most of the block handling things and the copy
operations.
Track: 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
Block: 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 MED, 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.
New here
Creates a new block here, shifts all following blocks forward.
The playseq numbers are corrected so that the song won't change.
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.
----- these were formerly in Transpose-panel but are now here (as they should)
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).
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.
From V3.00 it's possible to pick up ranges of notes (they can't be edited
any more when they're picked).
"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.
SH0-9 Shows the current Shift-number key definition, the number is
shown between the arrows (above R.Alt) and the number can be
changed using the arrows.
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 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. If you want to change
several numbers, you don't have to release the button. Just point the number
to be changed.
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 definitions 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 only remember that the colors are saved
when you save your song (they can give some expression).
Jumping: Off 8th Smp
When you don't want the mousepointer to jump, select Off.
When you want him to jump every 8th notes, 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, Clr song only, Exit MED
These are very dangerous functions, in fact they're so dangerous
that you must click OK! 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.
"Clr 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).
"Exit MED" 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 ;-)
Add paths, Rem paths
These affect the sample names when loading songs/samples.
"Add paths" 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 paths" usually songs made with Trackers have sample names
like "ST-02:AhhVox". If you want that the samples
load 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.
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
Depth (Dep2)
Space = Del
Keypad mode
Automatic advance settings
Current programmable key definitions
Dep2 This changes the MED 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).
S2FST When this switch is selected, samples are loaded into fast ram.
This is useful only in OctaMED 8-channel mode. Note that samples
that are in fast mem can't be played using the keyboard, so this
is useful mostly for listening to finished tunes.
+=========================================================+
| Vol
+=========================================================+
Many people have requested that I add "some kind of proportional track
on/off". Here it is!!! You can select the relative volume for each track.
When it's 64, the track is played with full volume, when it's 32, it's
played with half volume. You can set it freely from 1 to 64. Finally
there's a master volume, which affects all the tracks e.g. if the track
volume is 32 and the master volume is also 32, and the sample volume is 64,
the "real" volume of the note played in that track will be 16.
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 which track, by clicking the numbers above the gadgets. The
number which will be currently changed is highlighted with red.
This is quite easy, so no problems should appear. The track volumes and
master volume is 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 is 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 this instrument are sent in MIDI channel
2 (simple, isn't?).
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 "Act.sens"-gadget. Now you
can try to play with this instrument and you should hear the sound from you
MIDI-device (remember to set the default volume of the sample
[Sample-panel]).
MED uses now 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 pr. #"-gadgets. Preset number 0 means that the default preset is
used (the preset is never changed for this instrument).
You can have instruments with differents preset numbers, but which will use
the same MIDI channel. In that case, MED will automatically send the
"preset change"-command ($Cx $yy) 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.
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 that and thinks that the
preset is not changed. Ctrl-Space causes MED to resend "preset change" for
all channels, when playing. There's now a gadget: "Res.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.
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 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.
+=========================================================+
| Transp
+=========================================================+
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.tr 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 sel". 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 fadings 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).
Sel: 0, 1, 2, ... E, F
These gadgets are used to select tracks (not range). Some track-
based operations may need this (e.g. Paste sel), 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
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 now 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
Synthetic sound editor
Sample editor
Sample list
The Horizontal note display is removed!! It was in MED V3.00 only as an
experimental feature, and because in my opinion it wasn't very useful, I
removed it. The space it occupied may be filled with new features in the
future...
*===========================================================================
* Synthetic sound editor
*===========================================================================
See the doc file "Synthsounds.doc" for description about this.
*===========================================================================
* 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 (formerly 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.
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.10 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.
Currently recognized commands are 0, 1, 2, 3, 4, 5, A, B, C, D, E and F.
Here are the descriptions of each one:
+---------------------------------------------------+
| Command 0: ARPEGGIO MIDI: no action |
+---------------------------------------------------+
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.
+---------------------------------------------------+
| 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: no action |
+---------------------------------------------------+
This is another slide command (if you've used the previous versions of
MED and think that this is vibrato, see command 5). 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).
+---------------------------------------------------+
| Command 4: VIBRATO MIDI: modulation wheel |
+---------------------------------------------------+
This is the new vibrato command (compatible with NoiseTracker). This
is far better than the poor vibrato from previous MEDs.
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: no action |
+---------------------------------------------------+
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
+---------------------------------------------------+
| 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: no action |
+---------------------------------------------------+
This command exists for Tracker compability. Please use command D
(if I run out of free command numbers some day, I'll use number A!!).
+---------------------------------------------------+
| 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
+---------------------------------------------------+
| Command D: VOLUME SLIDE MIDI: no action |
+---------------------------------------------------+
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
+---------------------------------------------------+
| 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.10 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
Backspace Deletes the note and moves following notes up
Shift-Backspace Inserts an empty note slot
Shift-Cursor up Previous block
Shift-Cursor down Next block
Shift-Cursor left Previous sample
Shift-Cursor right Next sample
Alt-Cursor up First block
Alt-Cursor down Last block
Alt-Cursor left Cursor over previous track
Alt-Cursor right Cursor over 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 (chip, fast, largest chip)
Ctrl-R Revert filename
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 this 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