Home again, Home again, jiggedy jig
Listen to music created by Zel
Learn Zel
Download Zel
Blog
Send zel files or donate
Information about Zel
Listen to music created by Zel
Download Zel
Blog
Send zel files or donate
Information about Zel
Learn Zel
Structure
Arranging tunes

To play different MIDI instruments, you set up a "track" for each instrument and set it's MIDI channel to a number from 1 to 16. For example track mytrack $$4 would create a track called "mytrack" and set its MIDI channel to 4. You then set the instrument by sending a MIDI patch. For example  patch 14 would set the instrument to tubular bells. Check out GM.zel for a list of patches. You can change the default octave of your track using @@, for example @@3 would change the default octave of the C note to 3. Now you can add notes to the track. To switch between tracks, simply call out the name you gave the track. Finally, to move around in time, you use the barline symbol "|" which can be followed by the bar number. For example |1 would take you back to the start.

There you go!  You have just learned enough to write and arrange an infinite number of tunes!

Making Tunes

You create music in Zel by writing code which is converted to a MIDI file and played whenever you click on the "play" button.  Notes are created by using the lowercase letters  a through g and the uppercase etters  A  through G. Lowercase c  is the lowest pitch of the range, and B  is the highest. Here are the pitches in order:

c d e f g a b C D E F G A B

This playable fragment produces an ascending scale in the key of C major. You can make scales in any key, for example

key E e f g a b C D E

is a scale in the key of E major. key e would set the key to E minor.
You can use the "
#"  symbol for sharpening (raising the pitch) and the "&"  symbol for flattening (lowering the pitch) of notes. The octave of the C is 5 by default. You can follow the note with the @ character to lower the octave of lowercase notes, or raise the octave of uppercase notes.

To set the duration of a note, follow the note with an integer or a fraction. For example,
E4 would be four times as long. E1/4 (or E/4) is one quarter as long. You can also use E/ as a shorthand for E1/2 and "E." as a shorthand for E3/2 . To set the tempo to 90 beats per minute, use the code tempo=90 . Setting the meter is done with a fraction, e.g. meter 3/4 .