Click on the music note icon (or press F7) to edit the music tracks.
The music you create here can be played in your program using the [music] command.
You'll see five coloumns and below a piano.
Music Tracks
On the left the first coloumn selects which music track to edit (1).
Key Combination | Description |
---|---|
Page Up | Switch to previous track. |
Page Down | Switch to next track. |
Space | Start / stop playing the track. |
Below the track selector you can see the DSP status registers (2), but this block only comes alive when music playback is on.
Next to it, you'll see four similar coloumns, each with notes (3). These are the 4 channels that the music can simultaniously play. This is similar to standard music sheets, for more info read the [General MIDI] section below.
Key Combination | Description |
---|---|
◂ | Switch to previous channel. |
▸ | Switch to next channel. |
▴ | Switch to previous row. |
▾ | Switch to next row. |
Home | Switch to first row. |
End | Switch to last row. |
Ins | Insert a row. Move everything below down one row. |
Del | Delete a row. Move everything below up one row. |
Backspace | Clear note. |
Under the channels you can see the note editor (4), with some buttons on the left and a big piano on the right.
INFO: When you select a note, it's current configuration is saved to history. You can revert to this by pressing undo until you select another note. If you have pressed undo, then you will be able to do a redo until you don't modify. (The modifications won't be saved in history one-by-one, only the state when you've selected that note.)
Notes have three parts, the first one (on the top in the editor), the pitch consist of further three sub-parts: the note itself,
like C
or D
. Then the -
character if it's a flat note, or #
for sharp notes. The third part is simply the octave, from
0
(lowest pitch) to 7
(highest pitch). The 440 Hz pitch for the standard musical note A for example is therefore written as
A-4
. Using the piano you can easily select the pitch.
After the pitch comes the aforementioned instrument (the middle part of the note) that chooses the waveform to be used, from
01
to 1F
. The value 0 is printed as ..
and means keep using the same waveform as before.
Finally, you can also add special effects to the notes (the last part of the note), like arpeggio (make it sound like a chord),
portamento, vibrato, tremolo etc. See the [note effects] for a full list. This has a numeric parameter, usually interpreted as
"how much". It is printed as three hex numbers, where the first represents the effect type and the last two are the parameter,
or ...
if it's not set. For example C00
means set the volume to zero, so silence the channel.
Piano Keyboard arrangement
Key Combination | Description |
---|---|
1 - 0 | Select wave 1 to 10 (or if pressed with Shift 11 to 20). |
Q | Clear all effects on note (but leave pitch and sample untouched). |
W | Arpeggio dur (major chord). |
E | Arpeggio moll (minor chord). |
R | Slide up a full note. |
T | Slide up a half note. |
Y | Slide down a half note. |
U | Slide down a full note. |
I | Vibrato small. |
O | Vibrato large. |
P | Tremolo small. |
[ | Tremolo large. |
] | Silence the channel "effect". |
Z | Switch one octave down. |
. | Switch one octave up. |
X | C note on the current octave. |
D | C# note on the current octave. |
C | D note on the current octave. |
F | D# note on the current octave. |
V | E note on the current octave. |
B | F note on the current octave. |
H | F# note on the current octave. |
N | G note on the current octave. |
J | G# note on the current octave. |
M | A note on the current octave. |
K | A# note on the current octave. |
, | B note on the current octave. |
NOTE: Keys on the English keyboard have been used in this table. But it doesn't actually matter what keyboard layout you use, the only thing that matters is the location of these keys on the English keyboard. For example, if you have AZERTY layout, then clearing effects will be A for you, and on a QWERTZ keyboard Z will add slide down effect, and Y will change the octave.
It is important to mention that not all features have a keyboard shortcut. For example you might have 31 wavepatterns, but only the first 20 have shortcuts. Similarily, there are several magnitudes more effects than what's accessible through shortcuts.
You can import music (at least the note sheets) from MIDI files. Very simply put, if a classic music note sheet is stored on a computer in a digitalized form, then it is using the MIDI format to do so. Now these are suitable from a single instrument to a huge orchestra, so they can store a lot more than what the MEG-4 is capable of, therefore
WARN: Not all MIDI files can be imported properly.
Before we could continue, we must talk about the terms, because unfortunately both the MIDI specification and the MEG-4 uses the same nomenclature - but for totally different things.
To avoid confusion, hereafter we'll talk about one MEG-4 track only, and "track" will refer to MIDI channels, and "channel" will refer to MEG-4 channels.
Concerning instruments, in total there are 16 families with 8 instruments in each. MEG-4 doesn't have 128 wave banks, so best it can do is, assigning two wavepatterns per family (families 15 and 16 are for sound effects):
Family | SF | Patch | How should sound like | SF | Patch | How should sound like |
---|---|---|---|---|---|---|
Piano | 01 | 1-4 | Acoustic Grand Piano | 02 | 5-8 | Electric Piano |
Chromatic | 03 | 9-12 | Celesta | 04 | 13-16 | Tubular Bells |
Organ | 05 | 17-20 | Church Organ | 06 | 21-24 | Accordion |
Guitar | 07 | 25-28 | Acoustic Guitar | 08 | 29-32 | Electric Guitar |
Bass | 09 | 33-36 | Acoustic Bass | 0A | 37-40 | Slap Bass |
Strings | 0B | 41-44 | Violin | 0C | 45-48 | Orchestral Harp |
Ensemble | 0D | 49-52 | String Ensemble | 0E | 53-56 | Choir Aahs |
Brass | 0F | 57-60 | Trumpet | 10 | 61-64 | French Horn |
Reed | 11 | 65-68 | Saxophone | 12 | 69-72 | Oboe |
Pipe | 13 | 73-76 | Piccolo | 14 | 77-80 | Blown Bottle |
Synth Lead | 15 | 81-84 | Synth 1 | 16 | 85-88 | Synth 2 |
Synth Pad | 17 | 89-92 | Synth 3 | 18 | 93-96 | Synth 3 |
In short, the General MIDI instrument will become the (patch - 1) / 4 + 1
th wave in the soundfont.
Note that MEG-4 assigns waves dynamically, so these number mean the soundfont's wave number. For example if your MIDI file uses two instruments only, let's say Grand Piano and Electric Guitar, then piano would be assigned wave 1, and guitar wave 2. You can load all waves apriori from the soundfont in the [sound effects] editor, and then your imported MIDI file will use exactly these wave numbers.
The MEG-4 patterns are analogous to classic music note sheets, but while on a classic sheet time goes from left to right and each MIDI track is tied to an instrument, in MEG-4 the time goes from top to bottom, and you can dynamically assign which waveform to use on a particular channel. Consider the following example (taken from the General MIDI specification):
Classic musical note sheet on the left, its MEG-4 pattern equivalent on the right
On the left we have three tracks, Electric Piano 2, Harp and Bassoon. The first notes to be played are on the bassoon, right two notes at the same time. Note the bass key on the 3rd track, so these are notes C on octave 3 and C on octave 4, and they both last 4 quoter-notes, so whole notes.
On the right you can see the MEG-4 pattern equivalent. The first row describes these two notes played on a bassoon: C-3
on the
first channel, and C-4
on the second. The sample 12
(hex, provided that you have manually loaded the soundfont apriori,
otherwise the number would be different) selects the oboe waveform, which isn't exactly a bassoon, but that's the closest we have
in the soundfont. The C30
part means the velocity at which these notes are played, which is analogous to the volume (the harder
you hit a key on the piano, the louder its sound will be). MEG-4 note volumes go from 0 (silence) to 64 (40 in hex, full volume).
So 30 in hex means 75% of the full volume.
The next note to be played is on the harp, starts a quoter-note later than the bassoon, it is a G on octave 4 and lasts 3
quoter-notes long. On the MEG-4 pattern you can see this as G-4
in the fourth row (because it starts at that time), and since
channels 1 and 2 are still playing the bassoon, it is played on channel 3. If we were to put this on channel 1 or 2, then the
previously played note on that channel would be silenced and replaced by this new one. The sample here is 0C
(hex), which
is Orchestral Harp.
The last note is on the first MIDI track, which starts half a note later from the start, is an E on octave 5, and lasts 2
quoter-notes, or with other words a half-note long. Because it starts half a note from the start, you can see E-5
in the
8th row, and since we already have 3 notes to be played, so it is assigned to channel 4. The sample 02
selects the waveform
for Electric Piano, which isn't the same as MIDI Electric Piano 2, but pretty close.
Now we have two whole long notes, one half and a quoter long and another half note long; started at the beginning, quoter and half
note later in this order. This means they all must end at the same time. You can see this in the 16th (or 10 in hex) row, all
channels have a C00
, "set volume to 0" command.
MIDI silently assumes 120 BPM and defines a divisor to quoter-notes. Then it might also define the length of a quoter-note in milliseconds, or not. The point is, it is very complex, and not all combinations can be translated to MEG-4 properly. I've written the importer in a way to discard accumulating rounding errors, and only care about the same relative delta times between two consecutive notes. This way the MEG-4 song's tempo never will be exactly the same as the MIDI song's, but it should sound similar and should never deviate too much either.
The tempo on the MEG-4 is much simpler. You have a fixed 3000 ticks per minute, and the default tempo is 6 ticks per row. This
means to achive 125 BPM using the default tempo, you should put notes in every 4th rows (because 3000 / 6 / 4 = 125). If you set
the tempo (see effect Fxx
) to half of that, 3 ticks per row, then each row will last half the time, therefore you'll get 250 BPM
if you were using every 4th row. To get 125 BPM with tempo 3, you would have to use every 8th rows. If you set the tempo to 12,
then each row will last twice the time, therefore every 4th row will get you 62.5 BPM, and you'd have to use every 2nd rows for
125 BPM. Hope this makes sense to you.
This only sets when a note should be started to play, and totally independent of how long that sound lasts. For the latter you
should use a new note on the same channel, or you should use a C00
"set volume to 0" effect in the row when you want the note
to be cut off. If you change the tempo in between, that won't influence the sound played, just how long it's played (because
the row to turn it off would now reached at a different time).
Now notes will stop playing too if their wavepattern ends. When that happens, depends on the pitch and the number of samples in the wavepattern (playing at C-4 requires 882 samples of the wave to be sent to the speaker on every ticks). There's a trick here: you can set a so called "loop" on the wavepattern, which means after all the samples are played once, the selected region of the wave will be repeated indefinitely (so you'll have to explicitly cut it off, otherwise the sound would really never stop).