merging mma-1.1

This commit is contained in:
Matthias Neeracher 2007-04-29 06:47:40 +00:00
parent 52f8c7da38
commit 35300f3344
266 changed files with 34821 additions and 23252 deletions

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -30,6 +30,7 @@ import MMA.patDrum
import MMA.patScale
import MMA.patArpeggio
import MMA.patSolo
import MMA.patAria
import gbl
from MMA.common import *
@ -42,7 +43,9 @@ trkClasses = {
'DRUM' : MMA.patDrum.Drum,
'WALK' : MMA.patWalk.Walk,
'MELODY' : MMA.patSolo.Melody,
'SOLO' : MMA.patSolo.Solo }
'SOLO' : MMA.patSolo.Solo,
'ARIA' : MMA.patAria.Aria
}
def trackAlloc(name, err):

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -108,8 +108,7 @@ def libUpdate():
try:
outpath = file(os.path.join(libpath, mmadir), 'wb')
except:
error("Error creating lib-database file '%s'. CRITICAL!"
% libpath)
error("Error creating lib-database file '%s'. CRITICAL!" % libpath)
outpath.write("### mmaDB ... AUTOGENERATED BINARY DATA. "
"DO NOT EDIT!!!\n")
@ -253,3 +252,4 @@ def loadGrooveDir(g):
return None

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -27,12 +27,12 @@ import copy
from MMA.common import *
from MMA.chordtable import _chords
from MMA.chordtable import chords
def defChord(ln):
""" Add a new chord type to the _chords{} dict. """
""" Add a new chord type to the chords{} dict. """
emsg="DefChord needs NAME (NOTES) (SCALE)"
@ -42,8 +42,8 @@ def defChord(ln):
if not len(ln):
error(emsg)
name = ln.pop(0)
if name in _chords.keys():
warning("Redefining chordtype '%s'." % name)
if name in chords.keys():
warning("Redefining chordtype '%s'" % name)
if '/' in name:
error("A slash in not permitted in chord type name")
@ -58,12 +58,12 @@ def defChord(ln):
notes=ln[1][0].split(',')
if len(notes) < 2 or len(notes)>8:
error("There must be 2..8 notes in a chord, not '%s'." % len(note))
error("There must be 2..8 notes in a chord, not '%s'" % len(note))
notes.sort()
for i,v in enumerate(notes):
v=stoi(v, "Note offsets in chord must be integers, not '%s'." % v)
v=stoi(v, "Note offsets in chord must be integers, not '%s'" % v)
if v<0 or v>24:
error("Note offsets in chord must be 0..24, not '%s'." % v)
error("Note offsets in chord must be 0..24, not '%s'" % v)
notes[i]=v
scale=ln[1][1].split(',')
@ -71,25 +71,25 @@ def defChord(ln):
error("There must be 7 offsets in chord scale, not '%s'" % len(scale))
scale.sort()
for i,v in enumerate(scale):
v=stoi(v, "Scale offsets in chord must be integers, not '%s'." % v)
v=stoi(v, "Scale offsets in chord must be integers, not '%s'" % v)
if v<0 or v>24:
error("Scale offsets in chord must be 0..24, not '%s'." % v)
error("Scale offsets in chord must be 0..24, not '%s'" % v)
scale[i]=v
_chords[name] = ( notes, scale, "User Defined")
chords[name] = ( notes, scale, "User Defined")
if gbl.debug:
print "ChordType '%s', %s" % (name, _chords[name])
print "ChordType '%s', %s" % (name, chords[name])
def printChord(ln):
""" Display the note/scale/def for chord(s). """
for c in ln:
if not _chords.has_key(c):
if not chords.has_key(c):
error("Chord '%s' is unknown" % c)
print c, ':', _chords[c][0], _chords[c][1], _chords[c][2]
print c, ':', chords[c][0], chords[c][1], chords[c][2]
"""
@ -100,7 +100,7 @@ that with C as a midpoint we shift left for G/A/B and right for D/E/F.
Should the shifts take in account the current key signature?
"""
_chordAdjust = {
cdAdjust = {
'Gb':-6,
'G' :-5,
'G#':-4, 'Ab':-4,
@ -119,34 +119,34 @@ def chordAdjust(ln):
""" Adjust the chord point up/down one octave. """
if not ln:
error("ChordAdjust: Needs at least one argument.")
error("ChordAdjust: Needs at least one argument")
for l in ln:
try:
pitch, octave = l.split('=')
except:
error("Each arg must contain an '=', not '%s'." % l)
error("Each arg must contain an '=', not '%s'" % l)
if pitch not in _chordAdjust:
error("ChordAdjust: '%s' is not a valid pitch." % pitch)
if pitch not in cdAdjust:
error("ChordAdjust: '%s' is not a valid pitch" % pitch)
octave = stoi(octave, "ChordAdjust: expecting integer, not '%s'." % octave)
octave = stoi(octave, "ChordAdjust: expecting integer, not '%s'" % octave)
p=_chordAdjust[pitch]
p=cdAdjust[pitch]
if octave == 0:
if p < -6:
_chordAdjust[pitch] += 12
cdAdjust[pitch] += 12
elif p > 6:
_chordAdjust[pitch]-=12
cdAdjust[pitch]-=12
elif octave == -1 and p <= 6 and p >= -6:
_chordAdjust[pitch] -= 12
cdAdjust[pitch] -= 12
elif octave == 1 and p <= 6 and p >= -6:
_chordAdjust[pitch] += 12
cdAdjust[pitch] += 12
else:
error("ChordAdjust: '%s' is not a valid octave. Use 1, 0 or -1." % octave)
error("ChordAdjust: '%s' is not a valid octave. Use 1, 0 or -1" % octave)
@ -253,13 +253,13 @@ class ChordNotes:
return
if '/' in name and '>' in name:
error("You cannot use both an inversion and a slash in the same chord.")
error("You cannot use both an inversion and a slash in the same chord")
if '>' in name:
name, inversion = name.split('>', 1)
inversion = stoi(inversion, "Expecting interger after '>'.")
inversion = stoi(inversion, "Expecting interger after '>'")
if inversion < -5 or inversion > 5:
error("Chord inversions limited to -5 to 5 (more seems silly).")
error("Chord inversions limited to -5 to 5 (more seems silly)")
if name.startswith('-'):
name = name[1:]
@ -288,14 +288,14 @@ class ChordNotes:
ctype='M'
try:
notes = _chords[ctype][0]
adj = _chordAdjust[tonic] + octave
notes = chords[ctype][0]
adj = cdAdjust[tonic] + octave
except:
error( "Illegal/Unknown chord name: '%s'." % name )
error( "Illegal/Unknown chord name: '%s'" % name )
self.noteList = [ x + adj for x in notes ]
self.bnoteList = tuple(self.noteList)
self.scaleList = tuple([ x + adj for x in _chords[ctype][1] ])
self.scaleList = tuple([ x + adj for x in chords[ctype][1] ])
self.chordType = ctype
self.tonic = tonic
self.rootNote = self.noteList[0]
@ -311,10 +311,10 @@ class ChordNotes:
# Do inversions if there is a valid slash notation.
if slash:
if not _chordAdjust.has_key(slash):
error("The note '%s' in the slash chord is unknown." % slash)
if not cdAdjust.has_key(slash):
error("The note '%s' in the slash chord is unknown" % slash)
r=_chordAdjust[slash] # r = -6 to 6
r=cdAdjust[slash] # r = -6 to 6
# If the slash note is in the chord we invert
# the chord so the slash note is in root position.
@ -350,16 +350,13 @@ class ChordNotes:
break
if not c_roted and not s_roted:
warning("The slash chord note '%s' not in "
"chord or scale." % slash)
warning("The slash chord note '%s' not in chord or scale" % slash)
elif not c_roted:
warning("The slash chord note '%s' not in "
"chord '%s'" % (slash, name))
warning("The slash chord note '%s' not in chord '%s'" % (slash, name))
elif not s_roted: # Probably will never happen :)
warning("The slash chord note '%s' not in "
"scale for the chord '%s'" % (slash, name))
warning("The slash chord note '%s' not in scale for the chord '%s'" % (slash, name))
def reset(self):
@ -484,19 +481,4 @@ class ChordNotes:
def docs():
""" Print out a list of chord names and docs in LaTex. """
import copy
# Just in case someone else wants to use _chords, work on a copy
chords=copy.copy(_chords)
for n in sorted(chords.keys()):
nm=n.replace("#", '$\\sharp$')
nm=nm.replace('b', '$\\flat$')
print "\\insline{%s}{%s}" % (nm, chords[n][2])

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
@ -53,36 +53,44 @@ A = Bbb= 9
As = Bb = 10
B = Cb = 11
_chords = {
chords = {
'M': ((C, E, G ),
(C, D, E, F, G, A, B),
"Major triad. This is the default and is used in "
"the absense of any other chord type specification."),
'(b5)': ((C, E, Gb ),
(C, D, E, F, Gb, A, B),
"Major triad with flat 5th."),
'add9': ((C, E, G, D+12),
(C, D, E, F, G, A, D+12),
"Major chord plus 9th (no 7th.)"),
'm': ((C, Eb, G ),
(C, D, Eb, F, G, Ab, Bb),
"Minor triad."),
'mb5': ((C, Eb, Gb ),
(C, D, Eb, F, Gb, Ab, Bb),
"Minor triad with flat 5th."),
"Minor triad with flat 5th (aka dim)."),
'm#5': ((C, Eb, Gs ),
(C, D, Eb, F, Gs, Ab, Bb),
"Major triad with augmented 5th."),
"Minor triad with augmented 5th."),
'm6': ((C, Eb, G, A ),
(C, D, Eb, F, G, A, Bb),
"Minor 6th."),
"Minor 6th (flat 3rd plus a 6th)."),
'm6(add9)': ((C, Eb, G, D+12, A+12),
(C, D, Eb, F, G, A, B),
(C, D, Eb, F, G, A, Bb),
"Minor 6th with added 9th. This is sometimes notated as a slash chord "
"in the form ``m6/9''." ),
'm7': ((C, Eb, G, Bb ),
(C, D, Eb, F, G, Ab, Bb),
"Minor 7th."),
"Minor 7th (flat 3rd plus dominant 7th)."),
'mM7': ((C, Eb, G, B ),
(C, D, Eb, F, G, Ab, B),
@ -91,6 +99,18 @@ _chords = {
"(which \mma\ accepts); as well as the \mma\ \emph{invalid} "
"forms: ``-($\Delta$7)'', and ``min$\\natural$7''."),
'm+7b9': ((C, Eb, Gs, Bb, Db+12),
(C, Db, Eb, F, Gs, Ab, Bb),
"Augmented minor 7 plus flat 9th."),
'm+7#9': ((C, Eb, Gs, Bb, Ds+12),
(C, Ds, Eb, F, Gs, Ab, Bb),
"Augmented minor 7 plus sharp 9th."),
'mM7(add9)': ((C, Eb, G, B, D+12),
(C, D, Eb, F, G, Ab, B),
"Minor Triad plus Major 7th and 9th."),
'm7b5': ((C, Eb, Gb, Bb ),
(C, D, Eb, F, Gb, Ab, Bb),
"Minor 7th, flat 5 (aka 1/2 diminished). "),
@ -99,13 +119,13 @@ _chords = {
(C, Db, Eb, F, G, Ab, Bb),
"Minor 7th with added flat 9th."),
'm7#9': ((C, Eb, G, Bb, Ds+12 ),
(C, Ds, Eb, F, G, Ab, Bb),
"Minor 7th with added sharp 9th."),
'7': ((C, E, G, Bb ),
(C, D, E, F, G, A, Bb),
"Dominant 7th."),
'7#5': ((C, E, Gs, Bb ),
(C, D, E, F, Gs, A, Bb),
"7th, sharp 5."),
"7th."),
'7b5': ((C, E, Gb, Bb ),
(C, D, E, F, Gb, A, Bb),
@ -115,6 +135,10 @@ _chords = {
(C, D, Eb, F, Gb, Ab, Bbb ), # missing 8th note
"Diminished seventh."),
'dim7(addM7)': ((C, Eb, Gb, A, B),
(C, D, Eb, F, Gb, A, B),
"Diminished tirad with added Major 7th."),
'aug': ((C, E, Gs ),
(C, D, E, F, Gs, A, B ),
"Augmented triad."),
@ -142,20 +166,22 @@ _chords = {
'9': ((C, E, G, Bb, D+12 ),
(C, D, E, F, G, A, Bb),
"Dominant 7th plus 9th."),
"7th plus 9th."),
'sus9': ((C, E, G, D+12),
(C, D, E, F, G, A, D+12),
"Dominant 7th plus 9th, omit 7th."),
'9b5': ((C, E, Gb, Bb, D+12 ),
(C, D, E, F, Gb, A, Bb),
"Dominant 7th plus 9th with flat 5th."),
"7th plus 9th with flat 5th."),
'm9': ((C, Eb, G, Bb, D+12 ),
(C, D, Eb, F, G, Ab, Bb),
"Minor triad plus 7th and 9th."),
'm7b5b9': ((C, Eb, Gb, Bb, Db+12),
(C, Db, Eb, F, Gb, Ab, Bb),
"Minor 7th with flat 5th and flat 9th."),
'm9b5': ((C, Eb, Gb, Bb, D+12 ),
(C, D, Eb, F, Gb, Ab, Bb),
"Minor triad, flat 5, plus 7th and 9th."),
@ -168,29 +194,34 @@ _chords = {
(C, D, E, F, G, A, B),
"Major 7th plus 9th."),
'M9#11': ((C, E, G, B, D+12, Fs+12),
(C, D, E, Fs, G, A, B),
"Major 9th plus sharp 11th."),
'7b9': ((C, E, G, Bb, Db+12 ),
(C, Db, E, F, G, A, Bb),
"Dominant 7th with flat 9th."),
"7th with flat 9th."),
'7#9': ((C, E, G, Bb, Ds+12 ),
(C, Ds, E, F, G, A, Bb),
"Dominant 7th with sharp 9th."),
"7th with sharp 9th."),
'7#9b13': ((C, E, G, Bb, Ds+12, Ab+12 ),
(C, Ds, E, F, G, Ab, Bb),
"7th with sharp 9th and flat 13th."),
'7b5b9':((C, E, Gb, Bb, Db+12 ),
(C, Db, E, F, Gb, A, Bb),
"Dominant 7th with flat 5th and flat 9th."),
"7th with flat 5th and flat 9th."),
'7b5#9':((C, E, Gb, Bb, Ds+12 ),
(C, Ds, E, F, Gb, A, Bb),
"Dominant 7th with flat 5th and sharp 9th."),
"7th with flat 5th and sharp 9th."),
'7#5#9':((C, E, Gs, Bb, Ds+12 ),
(C, Ds, E, F, Gs, A, Bb),
"Dominant 7th with sharp 5th and sharp 9th."),
"7th with sharp 5th and sharp 9th."),
'7#5b9':((C, E, Gs, Bb, Db+12 ),
(C, Db, E, F, Gs, A, Bb),
"Dominant 7th with sharp 5th and flat 9th."),
'aug7': ((C, E, Gs, Bb ),
(C, D, E, F, Gs, A, Bb),
@ -198,69 +229,152 @@ _chords = {
'aug7b9':((C, E, Gs, Bb, Db+12 ),
(C, Db, E, F, Gs, A, Bb),
"Augmented 7th with flat 5th and sharp 9th."),
"An augmented chord (raised 5th) with a dominant 7th and flat 9th."),
'11': ((C, E, G, Bb, D+12, F+12 ),
'aug7#9':((C, E, Gs, Bb, Ds+12 ),
(C, Ds, E, F, Gs, A, Bb),
"An augmented chord (raised 5th) with a dominant 7th and sharp 9th."),
'aug9M7':((C, E, Gs, B, D+12 ),
(C, D, E, F, Gs, A, B),
"An augmented chord (raised 5th) with a major 7th and 9th."),
'+7b9#11': ((C, E, Gs, Bb, Db+12, Fs+12),
(C, Db, E, Fs, G, A, Bb),
"Augmented 7th with flat 9th and sharp 11th."),
'm+7b9#11': ((C, Eb, Gs, Bb, Db+12, Fs+12),
(C, Db, Eb, Fs, Gs, A, Bb),
"Augmented minor 7th with flat 9th and sharp 11th."),
'11': ((C, C, G, Bb, D+12, F+12 ),
(C, D, E, F, G, A, Bb),
"9th chord plus 11th."),
"9th chord plus 11th (3rd not voiced)."),
'm11': ((C, Eb, G, Bb, D+12, F+12 ),
(C, D, Eb, F, G, Ab, Bb),
"9th with minor 3rd, plus 11th."),
'm7(add11)': ((C, Eb, G, Bb, F+12 ),
(C, D, Eb, F, G, Ab, Bb),
"Minor 7th plus 11th."),
'm9#11': ((C, Eb, G, Bb, D+12, Fs+12),
(C, D, Eb, Fs, G, A, Bb),
"Minor 7th plus 9th and sharp 11th."),
'm7b9#11': ((C, Eb, G, Bb, Db+12, Fs+12),
(C, Db, Eb, Fs, G, A, Bb),
"Minor 7th plus flat 9th and sharp 11th."),
'm7(add13)': ((C, Eb, G, Bb, A+12 ),
(C, D, Eb, F, G, A, Bb),
"Minor 7th plus 13th."),
'11b9': ((C, E, G, Bb, Db+12, F+12 ),
(C, Db, E, F, G, A, Bb),
"9th chord plus flat 11th."),
"7th chord plus flat 9th and 11th."),
'9#5': ((C, E, Gs, Bb, D+12 ),
(C, D, E, F, Gs, A, Bb),
"Dominant 7th plus 9th with sharp 5th."),
"7th plus 9th with sharp 5th (same as aug9)."),
'9#11': ((C, E, G, Bb, D+12, Fs+12 ),
(C, D, E, Fs, G, A, Bb),
"Dominant 7th plus 9th and sharp 11th."),
"7th plus 9th and sharp 11th."),
'7#9#11':((C, E, G, Bb, Ds+12, Fs+12 ),
(C, Ds, E, Fs, G, A, Bb),
"Dominant 7th plus sharp 9th and sharp 11th."),
"7th plus sharp 9th and sharp 11th."),
'7b9#11': ((C, E, G, Bb, Db+12, Fs+12 ),
(C, Db, E, Fs, G, A, Bb),
"7th plus flat 9th and sharp 11th."),
'M7#11':((C, E, G, B, D+12, Fs+12 ),
'7#11':((C, E, G, Bb, Fs+12 ),
(C, D, E, Fs, G, A, Bb),
"7th plus sharp 11th (9th omitted)."),
'M7#11':((C, E, G, B, Fs+12 ),
(C, D, E, Fs, G, A, B),
"Major 7th plus 9th and sharp 11th."),
"Major 7th plus sharp 11th (9th omitted)."),
'm11b5': ((C, Eb, Gb, Bb, D+12, F+12),
(C, D, Eb, F, Gb, A, Bb),
"Minor 7th with flat 5th plus 11th."),
# Sus chords. Not sure what to do with the associated scales. For
# now just duplicating the 2nd or 3rd in the scale seems to make sense.
'sus4': ((C, F, G ),
(C, D, F, F, G, A, B),
"Suspended 4th, major triad with 3rd raised half tone."),
"Suspended 4th, major triad with the 3rd raised half tone."),
'7sus': ((C, F, G, Bb ),
(C, D, F, F, G, A, Bb),
"7th with suspended 4th, dominant 7th with 3rd "
"raised half tone."),
'7susb9': ((C, F, G, Bb, Db+12),
(C, Db, F, F, G, A, Bb),
"7th with suspended 4th and flat 9th."),
'sus2': ((C, D, G ),
(C, D, D, F, G, A, B),
"Suspended 2nd, major triad with major 2nd above "
"Suspended 2nd, major triad with the major 2nd above the "
"root substituted for 3rd."),
'7sus2':((C, D, G, Bb ),
(C, D, D, F, G, A, Bb),
"A sus2 with dominant 7th added."),
# these two chords should probably NOT have the 5th included,
'sus9': ((C, F, G, Bb, D+12),
(C, D, F, F, G, A, Bb),
"7sus plus 9th."),
'13sus': ((C, F, G, Bb, D+12, A+12),
(C, D, F, F, G, A, Bb),
"7sus, plus 9th and 13th"),
'13susb9': ((C, F, G, Bb, Db+12, A+12),
(C, Db, F, F, G, A, Bb),
"7sus, plus flat 9th and 13th"),
# these chords should probably NOT have the 5th included,
# but since a number of voicings depend on the 5th being
# the third note of the chord, they're here.
'13': ((C, E, G, Bb, A+12),
(C, D, E, F, G, A, Bb),
"Dominant 7th (including 5th) plus 13th."),
"7th (including 5th) plus 13th (the 9th and 11th are not voiced)."),
'13b5': ((C, E, Gb, Bb, A+12),
(C, D, E, F, Gb, A, Bb),
"7th with flat 5th, plus 13th (the 9th and 11th are not voiced)."),
'13#9': ((C, E, G, Bb, Ds+12, A+12),
(C, Ds, E, F, G, A, Bb),
"7th (including 5th) plus 13th and sharp 9th (11th not voiced)."),
'13b9': ((C, E, G, Bb, Db+12, A+12),
(C, Db, E, F, G, A, Bb),
"7th (including 5th) plus 13th and flat 9th (11th not voiced)."),
'M13': ((C, E, G, B, A+12),
(C, D, E, F, G, A, B),
"Major 7th (including 5th) plus 13th."),
"Major 7th (including 5th) plus 13th (9th and 11th not voiced)."),
'm13': ((C, Eb, G, Bb, A+12),
(C, D, Eb, F, G, A, Bb),
"Minor 7th (including 5th) plus 13th (9th and 11th not voiced)."),
'13#11': ((C, E, G, Bb, Fs+12, A+12),
(C, D, E, Fs, G, A, Bb),
"7th plus sharp 11th and 13th (9th not voiced)."),
'M13#11': ((C, E, G, B, Fs+12, A+12),
(C, D, E, Fs, G, A, B),
"Major 7th plus sharp 11th and 13th (9th not voiced)."),
# Because some patterns assume that the 3rd note in a chord is a 5th,
# or a varient, we duplicate the root into the position of the 3rd ... and
@ -269,6 +383,18 @@ _chords = {
'5': ((C, C, G, G ),
(C, D, E, F, G, A, B),
"Altered Fifth or Power Chord; root and 5th only."),
'omit3add9': ((C, C, G, D+12),
(C, D, E, F, G, A, Bb),
"Triad: root, 5th and 9th."),
'7omit3': ((C, C, G, Bb),
(C, D, E, F, G, A, Bb),
"7th with unvoiced 3rd."),
'm7omit5': ((C, Eb, Bb),
(C, D, Eb, F, G, A, Bb),
"Minor 7th with unvoiced 5th."),
}
@ -279,27 +405,40 @@ the original.
aliases = (
('aug9', '9#5', ''),
('+9', '9#5', ''),
('+9M7', 'aug9M7', ''),
('+M7', 'M7#5', ''),
('m(add9)', 'm(sus9)', ''),
('69', '6(add9)', ''),
('m69', 'm6(add9)', ''),
('m(b5)', 'mb5', ''),
('m7(b9)', 'm7b9', ''),
('m7(#9)', 'm7#9', ''),
('9+5', '9#5', ''),
('m+5', 'm#5', ''),
('M6', '6', ''),
('m7-5', 'm7b5', ''),
('m7(omit5)','m7omit5', ''),
('+', 'aug', ''),
('+7', 'aug7', ''),
('7(omit3)', '7omit3', ''),
('#5', 'aug', ''),
('7#5b9', 'aug7b9', ''),
('7-9', '7b9', ''),
('7+9', '7#9', ''),
('maj7', 'M7', ''),
('M7-5', 'M7b5', ''),
('M7+5', 'M7#5', ''),
('M7(add13)','13b9', ''),
('7alt', '7b5b9', ''),
('7sus4', '7sus', ''),
('7#11', '9#11' , ''),
('7+', 'aug7', ''),
('7+5', '7#5' , ''),
('7#5', 'aug7', ''),
('7+5', 'aug7', ''),
('7-5', '7b5', ''),
('sus', 'sus4', ''),
('maj9', 'M9', ''),
('maj13', 'M13', ''),
('m(maj7)', 'mM7', ''),
('m+7', 'mM7', ''),
('min(maj7)','mM7', ''),
@ -308,14 +447,15 @@ aliases = (
('dim', 'dim7', 'A dim7, not a triad!'),
('9sus', 'sus9', ''),
('9-5', '9b5', ''),
('dim3', 'mb5' , 'Diminished triad (non-standard notation).')
('dim3', 'mb5', 'Diminished triad (non-standard notation).'),
('omit3(add9)','omit3add9', '')
)
for a,b,d in aliases:
n=_chords[b][0]
s=_chords[b][1]
n=chords[b][0]
s=chords[b][1]
if not d:
d=_chords[b][2]
d=chords[b][2]
_chords[a] = (n, s, d)
chords[a] = (n, s, d)

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
These are a collection of miscellaneous routines used in various

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -91,6 +91,7 @@ fname = ''
author=""
notes=""
defs=[]
variables=[]
def docAuthor(ln):
global author
@ -113,6 +114,17 @@ def docNote(ln):
notes += ' '
notes += ' '.join(ln)
def docVars(ln):
""" Add a VARIABLE line (docs vars used in lib file)."""
global fname, variables
if not gbl.docs or not ln:
return
fname = os.path.basename(gbl.inpath.fname)
variables.append([ln[0], ' '.join(ln[1:]) ] )
def docDefine(ln):
""" Save a DEFGROOVE comment string.
@ -140,7 +152,7 @@ def docDefine(ln):
def docDump():
""" Print the LaTex docs. """
global fname, author, notes, defs
global fname, author, notes, defs, variables
if gbl.docs == 1: # latex docs
if notes:
@ -149,6 +161,13 @@ def docDump():
print "\\filehead{%s}{%s}" % (totex(fname), totex(notes))
print
if variables:
print " \\variables{"
for l in variables:
print " \\insvar{%s}{%s}" % ( totex(l[0]), totex(l[1]) )
print " }"
print
if defs:
for l in defs:
print " \\instable{%s}{%s}{%s}{" % \
@ -166,6 +185,24 @@ def docDump():
fname='.'.join(fname.split('.')[:-1])
print "<H1>%s</H1>" % fname.title()
print "<P>%s" % notes
if variables:
print "<P>"
print '<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">'
print ' <TR><TD>'
print ' <H2> Variables </H2> '
print ' </TD></TR>'
print ' <TR><TD>'
print ' <Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="100%">'
for l in variables:
print " <TR>"
print " <TD Valign=Top> <B> %s </B> </TD> " % l[0]
print " <TD Valign=Top> %s </TD>" % l[1]
print " </TR>"
print ' </Table>'
print ' </TD></TR>'
print '</Table>'
if defs:
print "<ul>"
for l in defs:
@ -173,7 +210,6 @@ def docDump():
print "</ul>"
for l in defs:
print '<A Name=%s></a>' % l[0]
print '<P>'
print '<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">'
print ' <TR><TD>'
print ' <H2> %s </H2> ' % l[0]
@ -189,6 +225,7 @@ def docDump():
print
print '</Body></HTML>'
defs = []
variables=[]
notes = ""
author = ""
@ -200,20 +237,20 @@ def totex(s):
Also handles proper quotation style.
"""
s = s.replace("$", "\\$")
s = s.replace("$", "\$")
s = s.replace("*", "$*$")
s = s.replace("\\", "\\\\")
s = s.replace("_", "\\_")
#s = s.replace("\\", "\\\\")
s = s.replace("#", "\\#")
s = s.replace("&", "\\&")
q="``"
while s.count('"'):
i=s.find('"')
s=s[:i] + q + s[i+1:]
s=s.replace('"', q, 1)
if q=="``":
q="''"
else:
a="``"
q="``"
return s

View File

@ -19,11 +19,10 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
import sys
import os
@ -178,7 +177,7 @@ class ReadFile:
error("Variables are not permitted as labels")
if label in labs:
gbl.lineno = lcount
error("Duplicate label specified in line %s." % lcount)
error("Duplicate label specified in line %s" % lcount)
elif label in nlabs:
gbl.lineno = lcount
error("Label '%s' duplicates line number label" % label)
@ -189,7 +188,7 @@ class ReadFile:
if label in labs:
gbl.lineno = lcount
error("Line number '%s' duplicates LABEL." % label)
error("Line number '%s' duplicates LABEL" % label)
if not label in nlabs:
nlabs.append(label)
@ -246,7 +245,7 @@ class ReadFile:
self.lineptr=i
return
error("Label '%s' has not be set." % l)
error("Label '%s' has not be set" % l)
def push(self, q, nums):

View File

@ -18,13 +18,13 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
import os
version = "1.0-rc2" # Version -- Oct 15/2006
version = "1.1" # Version -- March 7/2007
""" mtrks is storage for the MIDI data as it is created.
It is a dict of class Mtrk() instances. Keys are the
@ -113,6 +113,8 @@ swingSkew = None # this is just for $_SwingMode macro
barNum = 0 # Current line number
synctick = 0 # flag, set if we want a tick on all tracks at offset 0
############# Path and search variables. #############

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -77,7 +77,7 @@ def harmonize(hmode, note, chord):
elif tp == '24ABOVE':
hnotes.append( note + (3 * 12) )
else:
error("Unknown harmony type '%s'." % tp)
error("Unknown harmony type '%s'" % tp)
""" Strip out duplicate notes from harmony list. Cute trick here,
we use the note values as keys for a new dictionary, assign
@ -103,7 +103,7 @@ def gethnote(note, chord):
"""
wm="No harmony note found since no chord, using note " + \
"0 which will sound bad."
"0 which will sound bad"
if not chord: # should never happen!

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -110,13 +110,13 @@ class Lyric:
try:
a,v = l.split('=')
except:
error("Lyric options must be in CMD=VALUE pairs.")
error("Lyric options must be in CMD=VALUE pairs")
if a == 'EVENT':
if v == 'TEXT':
self.textev = 1
warning ("Lyric: Placing lyrics as TEXT EVENTS is not recommended.")
warning ("Lyric: Placing lyrics as TEXT EVENTS is not recommended")
elif v == 'LYRIC':
self.textev = None
@ -124,7 +124,7 @@ class Lyric:
print "Lyric: lyrics set as LYRIC events."
else:
error("Valid options for Lyric Event are TEXT or LYRIC.")
error("Valid options for Lyric Event are TEXT or LYRIC")
elif a == 'SPLIT':
@ -139,7 +139,7 @@ class Lyric:
print "Lyric: lyrics appear as one per bar."
else:
error("Valid options for Lyric Split are BAR or NORMAL.")
error("Valid options for Lyric Split are BAR or NORMAL")
elif a == 'VERSE':
@ -153,11 +153,11 @@ class Lyric:
self.versenum -= 1
else:
error("Valid options of Lyric Verse are <nn> or INC or DEC.")
error("Valid options of Lyric Verse are <nn> or INC or DEC")
if self.versenum < 1:
error("Attempt to set Lyric Verse to %s. Values "
"must be > 0." % self.versenum)
"must be > 0" % self.versenum)
if gbl.debug:
print "Lyric: verse number set to %s" % self.versenum
@ -182,7 +182,7 @@ class Lyric:
v = stoi(v, "Lyric Tranpose expecting value, not %s" % v)
if v < -12 or v > 12:
error("Lyric Tranpose %s out-of-range; must be -12..12." % v)
error("Lyric Tranpose %s out-of-range; must be -12..12" % v)
self.transpose = v
@ -208,7 +208,7 @@ class Lyric:
""" Just report leftovers on stack."""
if self.pushedLyrics:
warning("Lyrics remaining on stack.")
warning("Lyrics remaining on stack")
def extract(self, ln, rpt):
@ -224,7 +224,7 @@ class Lyric:
b=ln.count(']')
if a != b:
error("Mismatched []s for lyrics found in chord line.")
error("Mismatched []s for lyrics found in chord line")
if self.pushedLyrics:
if a or b:
@ -237,9 +237,9 @@ class Lyric:
if rpt > 1:
if self.dupchords:
error("Chord to lyrics not supported with bar repeat.")
error("Chord to lyrics not supported with bar repeat")
elif a or b:
error("Bars with both repeat count and lyrics are not permitted.")
error("Bars with both repeat count and lyrics are not permitted")
ln, lyrics = pextract(ln, '[', ']')
@ -320,9 +320,9 @@ class Lyric:
a,b = pextract(a, '<', '>', 1)
if b and b[0]:
beat = stof(b[0], "Expecting value in <%s> in lyric." % b)
beat = stof(b[0], "Expecting value in <%s> in lyric" % b)
if beat < 1 or beat > gbl.QperBar+1:
error("Offset in lyric <> must be 1 to %s." % gbl.QperBar)
error("Offset in lyric <> must be 1 to %s" % gbl.QperBar)
beat -= 1
bstep = (gbl.QperBar-beat)/float((len(lyrics)-t))

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
The macros are stored, set and parsed in this single-instance
class. At the top of MMAparse an instance in created with
@ -33,6 +33,7 @@ import MMA.midiC
import MMA.lyric
import MMA.translate
import MMA.patSolo
import MMA.patAria
import MMA.volume
import MMA.notelen
@ -49,6 +50,13 @@ class Macros:
self.vars={}
def clear(self, ln):
if ln:
error("VarClear does not take an argument.")
self.vars={}
if gbl.debug:
print "All variable definitions cleared."
def stackValue(self, s):
self.pushstack.append(' '.join(s))
@ -107,7 +115,7 @@ class Macros:
elif s == 'STACKVALUE':
if not self.pushstack:
error( "Empty push/pull variable stack.")
error( "Empty push/pull variable stack")
return self.pushstack.pop()
elif s == 'DEBUG':
@ -174,7 +182,7 @@ class Macros:
if gbl.tnames.has_key(tname):
t=gbl.tnames[tname]
else:
error("System variable $_%s refers to nonexistent track." % s)
error("System variable $_%s refers to nonexistent track" % s)
if func == 'ACCENT':
@ -197,6 +205,9 @@ class Macros:
return ' '.join([str(x) for x in t.compress])
elif func == 'DIRECTION':
if t.vtype == 'ARIA':
return ' '.join([str(x) for x in t.selectDir])
else:
return ' '.join([str(x) for x in t.direction])
elif func == 'DUPROOT':
@ -218,7 +229,7 @@ class Macros:
elif func == 'MALLET':
if t.vtype not in ("SOLO", "MELODY"):
error("Mallet only valid in SOLO and MELODY tracks.")
error("Mallet only valid in SOLO and MELODY tracks")
return "Mallet Rate=%i Decay=%i" % (t.mallet, t.malletDecay*100)
elif func == 'OCTAVE':
@ -273,7 +284,7 @@ class Macros:
return ' '.join([str(int(a * 100)) for a in t.volume])
else:
error("Unknown system track variable %s." % s)
error("Unknown system track variable %s" % s)
@ -303,7 +314,7 @@ class Macros:
ex=self.sysvar(s[1:])
elif not s in self.vars:
error("User variable '%s' has not been defined." % s )
error("User variable '%s' has not been defined" % s )
else:
ex=self.vars[s]
@ -360,7 +371,7 @@ class Macros:
""" Helper routine to validate variable name. """
if v[0] in ('$', '_'):
error("Variable names cannot start with a '$' or '_'.")
error("Variable names cannot start with a '$' or '_'")
return v.upper()
def rndvar(self, ln):
@ -376,6 +387,17 @@ class Macros:
if gbl.debug:
print "Variable $%s randomly set to '%s'" % (v, self.vars[v])
def newsetvar(self, ln):
""" Set a new variable. Ignore if already set. """
if not len(ln):
error("Use: NSET VARIABLE_NAME [Value] [[+] [Value]]")
if self.getvname(ln[0]) in self.vars:
return
self.setvar(ln)
def setvar(self, ln):
""" Set a variable. Not the difference between the next 2 lines:
Set Bar BAR
@ -444,7 +466,7 @@ class Macros:
error("Use: UNSET Variable")
v=ln[0].upper()
if v[0] == '_':
error("Internal variables cannot be deleted or modified.")
error("Internal variables cannot be deleted or modified")
if v in self.vars:
del(macros.vars[v])
@ -452,7 +474,7 @@ class Macros:
if gbl.debug:
print "Variable '%s' UNSET" % v
else:
warning("Attempt to UNSET nonexistent variable '%s'." % v)
warning("Attempt to UNSET nonexistent variable '%s'" % v)
def vexpand(self, ln):
@ -473,7 +495,7 @@ class Macros:
print "Variable expansion OFF"
else:
error("Use: Vexpand ON/Off.")
error("Use: Vexpand ON/Off")
def varinc(self, ln):
@ -483,7 +505,7 @@ class Macros:
inc=1
elif len(ln) == 2:
inc = stof(ln[1], "Expecting a value (not %s) for Inc." % ln[1])
inc = stof(ln[1], "Expecting a value (not %s) for Inc" % ln[1])
else:
error("Usage: INC Variable [value]")
@ -491,12 +513,12 @@ class Macros:
v=ln[0].upper()
if v[0] == '_':
error("Internal variables cannot be modified.")
error("Internal variables cannot be modified")
if not v in self.vars:
error("Variable '%s' not defined" % v)
vl=stoi(self.vars[v], "Variable must be a value to increment.") + inc
vl=stoi(self.vars[v], "Variable must be a value to increment") + inc
if vl == int(vl):
vl = int(vl)
@ -513,19 +535,19 @@ class Macros:
dec = 1
elif len(ln) == 2:
dec = stof(ln[1], "Expecting a value (not %s) for Inc." % ln[1])
dec = stof(ln[1], "Expecting a value (not %s) for Inc" % ln[1])
else:
error("Usage: DEC Variable [value]")
v=ln[0].upper()
if v[0] == '_':
error("Internal variables cannot be modified.")
error("Internal variables cannot be modified")
if not v in self.vars:
error("Variable '%s' not defined" % v)
vl=stoi(self.vars[v], "Variable must be a value to decrement.") - dec
vl=stoi(self.vars[v], "Variable must be a value to decrement") - dec
if vl == int(vl):
vl = int(vl)
@ -547,7 +569,7 @@ class Macros:
if l[:2] == '$$':
l=l[2:]
if not l in self.vars:
error("String Variable '%s' does not exist." % l)
error("String Variable '%s' does not exist" % l)
l=self.vars[l]
try:
@ -660,7 +682,7 @@ class Macros:
cmd, q1, qnum1 = readblk()
if cmd == 'ELSE':
error("Only one ELSE is permitted in IF construct.")
error("Only one ELSE is permitted in IF construct")
if not compare:
compare = 1

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -89,7 +89,7 @@ for i in rcfiles:
break
else:
if gbl.mmaRC:
error("Specified init file '%s' not found." % gbl.mmaRC)
error("Specified init file '%s' not found" % gbl.mmaRC)
if not rcread:
gbl.lineno = -1
@ -126,7 +126,7 @@ gbl.mtrks[0].addText(0, "Input filename: %s" % gbl.infile)
if docOption:
f=locFile(gbl.infile, None)
if not f:
error("File '%s' not found." % gbl.infile)
error("File '%s' not found" % gbl.infile)
MMA.parse.parseFile(f)
sys.exit(0)
@ -166,7 +166,7 @@ outfile=os.path.expanduser(outfile)
for f in gbl.mmaStart:
fn = locFile(f, gbl.incPath)
if not fn:
warning("MmaStart file '%s' not found/processed." % fn)
warning("MmaStart file '%s' not found/processed" % fn)
MMA.parse.parseFile(fn)
gbl.lineno = -1
@ -176,7 +176,7 @@ f = locFile(gbl.infile, None)
if not f:
gbl.lineno = -1
error("Input file '%s' not found." % gbl.infile)
error("Input file '%s' not found" % gbl.infile)
MMA.parse.parseFile(f)
@ -185,7 +185,7 @@ MMA.parse.parseFile(f)
for f in gbl.mmaEnd:
fn = locFile(f, None)
if not fn:
warning("MmaEnd file '%s' not found/processed." % f)
warning("MmaEnd file '%s' not found/processed" % f)
MMA.parse.parseFile(fn)
@ -244,7 +244,7 @@ if gbl.chshow:
# Dry run, no output
if gbl.noOutput:
warning( "Input file parsed successfully. No midi file generated.")
warning( "Input file parsed successfully. No midi file generated")
sys.exit(0)
@ -322,7 +322,7 @@ print "midi file (%s bars): '%s'" % (gbl.barNum, outfile)
try:
out = file(outfile, 'wb')
except:
error("Can't open file '%s' for writing." % outfile)
error("Can't open file '%s' for writing" % outfile)
MMA.midi.writeTracks(out)
out.close()

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
This class is used to parse lines of MDEFINE and stores
the sequences for later recall.
@ -40,7 +40,7 @@ class Mdefine:
try:
return self.defs[name]
except:
error("The MDEFINE pattern %s has not been defined." % name)
error("The MDEFINE pattern %s has not been defined" % name)
def set(self, name, ln):
@ -73,11 +73,11 @@ class Mdefine:
if c < 0:
c=stoi(l[1])
if c < 0 or c > 0x7f:
error("Controller values must be 0x00 to 0x7f.")
error("Controller values must be 0x00 to 0x7f")
d=stoi(l[2])
if d < 0 or d > 0x7f:
error("MIDI Control Datum value must be 0x00 to 0x7f.")
error("MIDI Control Datum value must be 0x00 to 0x7f")
evs.append( [off, chr(c) + chr(d)])

View File

@ -18,7 +18,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -41,7 +41,7 @@ def setSplitChannels(ln):
for a in ln:
c = stoi(a)
if c < 1 or c >16:
error("SplitChannels: Expecting value 1 to 16, not %s." % c)
error("SplitChannels: Expecting value 1 to 16, not %s" % c)
splitChannels.append(c)
if gbl.debug:
@ -334,6 +334,16 @@ class Mtrk:
tr=self.miditrk
""" To every MIDI track we generate we add (if the -0 flag
was set) an on/off beep at offset 0. This makes for
easier sync in multi-tracks.
"""
if gbl.synctick and self.channel >= 0:
self.addToTrack(0, chr(0x90 | self.channel) + chr(80) + chr(90) )
self.addToTrack(1, chr(0x90 | self.channel) + chr(80) + chr(0) )
if gbl.debug:
ttl = 0
lg=1

View File

@ -18,148 +18,13 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
This module contains the constant names for the various
MIDI controllers, and conversion routines.
This module contains interface for MIDI constants and conversion routines.
"""
from MMA.common import *
""" English names for midi instruments and drums.
These tables are used by the pattern classes to
convert inst/drum names to midi values and by the
doc routines to print tables.
"""
# The drum names are valid for tones 27 to 87
drumNames=[
'HighQ', 'Slap', 'ScratchPush', 'ScratchPull',
'Sticks', 'SquareClick', 'MetronomeClick',
'MetronomeBell', 'KickDrum2', 'KickDrum1',
'SideKick', 'SnareDrum1', 'HandClap',
'SnareDrum2', 'LowTom2', 'ClosedHiHat',
'LowTom1', 'PedalHiHat', 'MidTom2', 'OpenHiHat',
'MidTom1', 'HighTom2', 'CrashCymbal1',
'HighTom1', 'RideCymbal1', 'ChineseCymbal',
'RideBell', 'Tambourine', 'SplashCymbal',
'CowBell', 'CrashCymbal2', 'VibraSlap',
'RideCymbal2', 'HighBongo', 'LowBongo',
'MuteHighConga', 'OpenHighConga', 'LowConga',
'HighTimbale', 'LowTimbale', 'HighAgogo',
'LowAgogo', 'Cabasa', 'Maracas',
'ShortHiWhistle', 'LongLowWhistle', 'ShortGuiro',
'LongGuiro', 'Claves', 'HighWoodBlock',
'LowWoodBlock', 'MuteCuica', 'OpenCuica',
'MuteTriangle', 'OpenTriangle', 'Shaker',
'JingleBell', 'Castanets', 'MuteSudro',
'OpenSudro' ]
upperDrumNames = [name.upper() for name in drumNames]
voiceNames=[
'Piano1', 'Piano2','Piano3',
'Honky-TonkPiano', 'RhodesPiano', 'EPiano',
'HarpsiChord', 'Clavinet', 'Celesta',
'Glockenspiel', 'MusicBox', 'Vibraphone',
'Marimba', 'Xylophone', 'TubularBells', 'Santur',
'Organ1', 'Organ2', 'Organ3', 'ChurchOrgan',
'ReedOrgan', 'Accordion', 'Harmonica',
'Bandoneon', 'NylonGuitar', 'SteelGuitar',
'JazzGuitar', 'CleanGuitar', 'MutedGuitar',
'OverDriveGuitar', 'DistortonGuitar',
'GuitarHarmonics', 'AcousticBass',
'FingeredBass', 'PickedBass', 'FretlessBass',
'SlapBass1', 'SlapBass2', 'SynthBass1',
'SynthBass2', 'Violin', 'Viola', 'Cello',
'ContraBass', 'TremoloStrings',
'PizzicatoString', 'OrchestralHarp', 'Timpani',
'Strings', 'SlowStrings', 'SynthStrings1',
'SynthStrings2', 'ChoirAahs', 'VoiceOohs',
'SynthVox', 'OrchestraHit', 'Trumpet',
'Trombone', 'Tuba', 'MutedTrumpet', 'FrenchHorn',
'BrassSection', 'SynthBrass1', 'SynthBrass2',
'SopranoSax', 'AltoSax', 'TenorSax',
'BaritoneSax', 'Oboe', 'EnglishHorn', 'Bassoon',
'Clarinet', 'Piccolo', 'Flute', 'Recorder',
'PanFlute', 'BottleBlow', 'Shakuhachi',
'Whistle', 'Ocarina', 'SquareWave', 'SawWave',
'SynCalliope', 'ChifferLead', 'Charang',
'SoloVoice', '5thSawWave', 'Bass&Lead',
'Fantasia', 'WarmPad', 'PolySynth', 'SpaceVoice',
'BowedGlass', 'MetalPad', 'HaloPad', 'SweepPad',
'IceRain', 'SoundTrack', 'Crystal', 'Atmosphere',
'Brightness', 'Goblins', 'EchoDrops',
'StarTheme', 'Sitar', 'Banjo', 'Shamisen',
'Koto', 'Kalimba', 'BagPipe', 'Fiddle', 'Shanai',
'TinkleBell', 'AgogoBells', 'SteelDrums',
'WoodBlock', 'TaikoDrum', 'MelodicTom1',
'SynthDrum', 'ReverseCymbal', 'GuitarFretNoise',
'BreathNoise', 'SeaShore', 'BirdTweet',
'TelephoneRing', 'HelicopterBlade',
'Applause/Noise', 'GunShot' ]
upperVoiceNames = [name.upper() for name in voiceNames]
ctrlNames = [
### also see: http://www.midi.org/about-midi/table3.shtml
### 0-31 Double Precise Controllers
### MSB (14-bits, 16,384 values)
'Bank', 'Modulation', 'Breath', 'Ctrl3',
'Foot', 'Portamento', 'Data', 'Volume',
'Balance', 'Ctrl9', 'Pan', 'Expression',
'Effect1', 'Effect2', 'Ctrl14', 'Ctrl15',
'General1','General2','General3','General4',
'Ctrl20', 'Ctrl21', 'Ctrl22', 'Ctrl23',
'Ctrl24', 'Ctrl25', 'Ctrl26', 'Ctrl27',
'Ctrl28', 'Ctrl29', 'Ctrl30', 'Ctrl31',
### 32-63 Double Precise Controllers
### LSB (14-bits, 16,384 values)
'BankLSB', 'ModulationLSB', 'BreathLSB',
'Ctrl35', 'FootLSB', 'PortamentoLSB',
'DataLSB','VolumeLSB','BalanceLSB',
'Ctrl41','PanLSB','ExpressionLSB',
'Effect1LSB', 'Effect2LSB','Ctrl46', 'Ctrl47',
'General1LSB','General2LSB', 'General3LSB',
'General4LSB', 'Ctrl52','Ctrl53', 'Ctrl54',
'Ctrl55', 'Ctrl56', 'Ctrl57', 'Ctrl58',
'Ctrl59', 'Ctrl60', 'Ctrl61', 'Ctrl62',
'Ctrl63',
### 64-119 Single Precise Controllers
### (7-bits, 128 values)
'Sustain', 'Portamento', 'Sostenuto',
'SoftPedal', 'Legato', 'Hold2', 'Variation',
'Resonance', 'ReleaseTime','AttackTime', 'Brightness',
'DecayTime','VibratoRate','VibratoDepth', 'VibratoDelay',
'Ctrl79','General5','General6','General7',
'General8','PortamentoCtrl','Ctrl85','Ctrl86',
'Ctrl87', 'Ctrl88', 'Ctrl89', 'Ctrl90',
'Reverb', 'Tremolo', 'Chorus','Detune',
'Phaser', 'DataInc','DataDec',
'NonRegLSB', 'NonRegMSB',
'RegParLSB', 'RegParMSB',
'Ctrl102','Ctrl103','Ctrl104','Ctrl105',
'Ctrl106','Ctrl107','Ctrl108','Ctrl109',
'Ctrl110','Ctrl111','Ctrl112','Ctrl113',
'Ctrl114','Ctrl115','Ctrl116','Ctrl117',
'Ctrl118','Ctrl119',
### 120-127 Channel Mode Messages
'AllSoundsOff','ResetAll',
'LocalCtrl','AllNotesOff',
'OmniOff','OmniOn', 'PolyOff','PolyOn' ]
upperCtrlNames = [name.upper() for name in ctrlNames]
from MMA.miditables import *
def drumToValue(name):
""" Get the value of the drum tone (-1==error). """

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -57,7 +57,7 @@ def mvarlen():
byte=ord(midifile[offset])
offset += 1
except:
error("Invalid MIDI file include (varlen->int).")
error("Invalid MIDI file include (varlen->int)")
if byte < 0x80:
x = ( x << 7 ) + byte
@ -87,7 +87,7 @@ def m1i():
byte = midifile[offset]
offset += 1
except:
error("Invalid MIDI file include (byte, offset=%s)." % offset)
error("Invalid MIDI file include (byte, offset=%s)" % offset)
return ord(byte)
@ -103,7 +103,7 @@ def m32i():
byte = midifile[offset]
offset += 1
except:
error("Invalid MIDI file include (i32->int, offset=%s)." % offset)
error("Invalid MIDI file include (i32->int, offset=%s)" % offset)
x = (x << 8) + ord(byte)
return int(x)
@ -120,7 +120,7 @@ def m16i():
byte = midifile[offset]
offset += 1
except:
error("Invalid MIDI file include (i16->int, offset=%s)." % offset)
error("Invalid MIDI file include (i16->int, offset=%s)" % offset)
x = (x << 8) + ord(byte)
return int(x)
@ -162,13 +162,13 @@ def midiinc(ln):
elif cmd == 'OCTAVE':
octAdjust = stoi(opt)
if octAdjust < -4 or octAdjust > 4:
error("Octave adjustment must be -4 to 4, not %s." % opt)
error("Octave adjustment must be -4 to 4, not %s" % opt)
octAdjust *= 12
elif cmd == 'TRANSPOSE':
transpose = stoi(opt)
if transpose < -24 or transpose > 24:
error("Tranpose must be -24 to 24, not %s." % opt)
error("Tranpose must be -24 to 24, not %s" % opt)
elif cmd == 'START':
istart = stof(opt)
@ -200,20 +200,20 @@ def midiinc(ln):
else:
trackAlloc(cmd, 0)
if not cmd in gbl.tnames:
error("%s is not a valid MMA track." % cmd)
error("%s is not a valid MMA track" % cmd)
ch = stoi(opt)
if ch < 1 or ch > 16:
error("MIDI channel for import must be 1..16, not %s." % ch)
error("MIDI channel for import must be 1..16, not %s" % ch)
channels.append( (cmd, ch-1))
if not channels:
if doLyric or doText:
warning("MidiInc: no import channels specified, only text or lyrics imported.")
warning("MidiInc: no import channels specified, only text or lyrics imported")
else:
error("MidiInc: A channel to import and a destination track must be specified.")
error("MidiInc: A channel to import and a destination track must be specified")
if (istart >= iend) or (istart < 0) or (iend < 0):
error("MidiInc range invalid: start=%s, end=%s" % (istart, iend))
@ -254,7 +254,7 @@ def midiinc(ln):
hd=midifile[0:4]
if hd != 'MThd':
error("Expecting 'HThd', %s not a standard midi file." % filename)
error("Expecting 'HThd', %s not a standard midi file" % filename)
offset = 4
a = m32i()
@ -272,7 +272,7 @@ def midiinc(ln):
if beatDivision != gbl.BperQ:
warning("MIDI file '%s' tick/beat of %s differs from MMA's "
"%s. Will try to compensate." %
"%s. Will try to compensate" %
(filename, beatDivision, gbl.BperQ))
# Adjust start/end to the file's tick
@ -317,8 +317,7 @@ def midiinc(ln):
if ev < 0x80:
if not lastevent:
error("Illegal running status in %s at %s" \
% (midifile, offset))
error("Illegal running status in %s at %s" % (midifile, offset))
offset -= 1
ev=lastevent
@ -487,7 +486,7 @@ def midiinc(ln):
for n,c in channels:
if not len(events[c]):
warning("No data to assign from imported channel %s to track %s." % (c+1, n))
warning("No data to assign from imported channel %s to track %s" % (c+1, n))
inst=0
disc=0

View File

@ -18,7 +18,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
This module contains the MIDI number (un)packing routines.

166
mma/MMA/miditables.py Normal file
View File

@ -0,0 +1,166 @@
# miditables.py
"""
This module is an integeral part of the program
MMA - Musical Midi Accompaniment.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bob@mellowood.ca>
This module contains the constant names for the various
MIDI controllers.
Having only the constants in this separate file permits to
call this from other programs, mainly the mma doc creators.
"""
""" English names for midi instruments and drums.
These tables are used by the pattern classes to
convert inst/drum names to midi values and by the
doc routines to print tables.
"""
# The drum names are valid for tones 27 to 87
drumNames=[
'HighQ', 'Slap', 'ScratchPush', 'ScratchPull',
'Sticks', 'SquareClick', 'MetronomeClick',
'MetronomeBell', 'KickDrum2', 'KickDrum1',
'SideKick', 'SnareDrum1', 'HandClap',
'SnareDrum2', 'LowTom2', 'ClosedHiHat',
'LowTom1', 'PedalHiHat', 'MidTom2', 'OpenHiHat',
'MidTom1', 'HighTom2', 'CrashCymbal1',
'HighTom1', 'RideCymbal1', 'ChineseCymbal',
'RideBell', 'Tambourine', 'SplashCymbal',
'CowBell', 'CrashCymbal2', 'VibraSlap',
'RideCymbal2', 'HighBongo', 'LowBongo',
'MuteHighConga', 'OpenHighConga', 'LowConga',
'HighTimbale', 'LowTimbale', 'HighAgogo',
'LowAgogo', 'Cabasa', 'Maracas',
'ShortHiWhistle', 'LongLowWhistle', 'ShortGuiro',
'LongGuiro', 'Claves', 'HighWoodBlock',
'LowWoodBlock', 'MuteCuica', 'OpenCuica',
'MuteTriangle', 'OpenTriangle', 'Shaker',
'JingleBell', 'Castanets', 'MuteSudro',
'OpenSudro' ]
upperDrumNames = [name.upper() for name in drumNames]
voiceNames=[
'Piano1', 'Piano2','Piano3',
'Honky-TonkPiano', 'RhodesPiano', 'EPiano',
'HarpsiChord', 'Clavinet', 'Celesta',
'Glockenspiel', 'MusicBox', 'Vibraphone',
'Marimba', 'Xylophone', 'TubularBells', 'Santur',
'Organ1', 'Organ2', 'Organ3', 'ChurchOrgan',
'ReedOrgan', 'Accordion', 'Harmonica',
'Bandoneon', 'NylonGuitar', 'SteelGuitar',
'JazzGuitar', 'CleanGuitar', 'MutedGuitar',
'OverDriveGuitar', 'DistortonGuitar',
'GuitarHarmonics', 'AcousticBass',
'FingeredBass', 'PickedBass', 'FretlessBass',
'SlapBass1', 'SlapBass2', 'SynthBass1',
'SynthBass2', 'Violin', 'Viola', 'Cello',
'ContraBass', 'TremoloStrings',
'PizzicatoString', 'OrchestralHarp', 'Timpani',
'Strings', 'SlowStrings', 'SynthStrings1',
'SynthStrings2', 'ChoirAahs', 'VoiceOohs',
'SynthVox', 'OrchestraHit', 'Trumpet',
'Trombone', 'Tuba', 'MutedTrumpet', 'FrenchHorn',
'BrassSection', 'SynthBrass1', 'SynthBrass2',
'SopranoSax', 'AltoSax', 'TenorSax',
'BaritoneSax', 'Oboe', 'EnglishHorn', 'Bassoon',
'Clarinet', 'Piccolo', 'Flute', 'Recorder',
'PanFlute', 'BottleBlow', 'Shakuhachi',
'Whistle', 'Ocarina', 'SquareWave', 'SawWave',
'SynCalliope', 'ChifferLead', 'Charang',
'SoloVoice', '5thSawWave', 'Bass&Lead',
'Fantasia', 'WarmPad', 'PolySynth', 'SpaceVoice',
'BowedGlass', 'MetalPad', 'HaloPad', 'SweepPad',
'IceRain', 'SoundTrack', 'Crystal', 'Atmosphere',
'Brightness', 'Goblins', 'EchoDrops',
'StarTheme', 'Sitar', 'Banjo', 'Shamisen',
'Koto', 'Kalimba', 'BagPipe', 'Fiddle', 'Shanai',
'TinkleBell', 'AgogoBells', 'SteelDrums',
'WoodBlock', 'TaikoDrum', 'MelodicTom1',
'SynthDrum', 'ReverseCymbal', 'GuitarFretNoise',
'BreathNoise', 'SeaShore', 'BirdTweet',
'TelephoneRing', 'HelicopterBlade',
'Applause/Noise', 'GunShot' ]
upperVoiceNames = [name.upper() for name in voiceNames]
ctrlNames = [
### also see: http://www.midi.org/about-midi/table3.shtml
### 0-31 Double Precise Controllers
### MSB (14-bits, 16,384 values)
'Bank', 'Modulation', 'Breath', 'Ctrl3',
'Foot', 'Portamento', 'Data', 'Volume',
'Balance', 'Ctrl9', 'Pan', 'Expression',
'Effect1', 'Effect2', 'Ctrl14', 'Ctrl15',
'General1','General2','General3','General4',
'Ctrl20', 'Ctrl21', 'Ctrl22', 'Ctrl23',
'Ctrl24', 'Ctrl25', 'Ctrl26', 'Ctrl27',
'Ctrl28', 'Ctrl29', 'Ctrl30', 'Ctrl31',
### 32-63 Double Precise Controllers
### LSB (14-bits, 16,384 values)
'BankLSB', 'ModulationLSB', 'BreathLSB',
'Ctrl35', 'FootLSB', 'PortamentoLSB',
'DataLSB','VolumeLSB','BalanceLSB',
'Ctrl41','PanLSB','ExpressionLSB',
'Effect1LSB', 'Effect2LSB','Ctrl46', 'Ctrl47',
'General1LSB','General2LSB', 'General3LSB',
'General4LSB', 'Ctrl52','Ctrl53', 'Ctrl54',
'Ctrl55', 'Ctrl56', 'Ctrl57', 'Ctrl58',
'Ctrl59', 'Ctrl60', 'Ctrl61', 'Ctrl62',
'Ctrl63',
### 64-119 Single Precise Controllers
### (7-bits, 128 values)
'Sustain', 'Portamento', 'Sostenuto',
'SoftPedal', 'Legato', 'Hold2', 'Variation',
'Resonance', 'ReleaseTime','AttackTime', 'Brightness',
'DecayTime','VibratoRate','VibratoDepth', 'VibratoDelay',
'Ctrl79','General5','General6','General7',
'General8','PortamentoCtrl','Ctrl85','Ctrl86',
'Ctrl87', 'Ctrl88', 'Ctrl89', 'Ctrl90',
'Reverb', 'Tremolo', 'Chorus','Detune',
'Phaser', 'DataInc','DataDec',
'NonRegLSB', 'NonRegMSB',
'RegParLSB', 'RegParMSB',
'Ctrl102','Ctrl103','Ctrl104','Ctrl105',
'Ctrl106','Ctrl107','Ctrl108','Ctrl109',
'Ctrl110','Ctrl111','Ctrl112','Ctrl113',
'Ctrl114','Ctrl115','Ctrl116','Ctrl117',
'Ctrl118','Ctrl119',
### 120-127 Channel Mode Messages
'AllSoundsOff','ResetAll',
'LocalCtrl','AllNotesOff',
'OmniOff','OmniOn', 'PolyOff','PolyOn' ]
upperCtrlNames = [name.upper() for name in ctrlNames]

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""

View File

@ -18,7 +18,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -42,13 +42,14 @@ def opts():
try:
opts, args = getopt.gnu_getopt(sys.argv[1:],
"dpsS:ri:wneom:f:M:cgGvD:", [] )
"dpsS:ri:wneom:f:M:cgGvD:0", [] )
except getopt.GetoptError:
usage()
for o,a in opts:
if o == '-d':
gbl.debug = gbl.Ldebug = 1
@ -107,7 +108,7 @@ def opts():
if a in ['0', '1']:
gbl.cmdSMF = a
else:
error("Only a '0' or '1' is permitted for the -M arg.")
error("Only a '0' or '1' is permitted for the -M arg")
elif o == '-D':
if a == 'xl':
@ -130,39 +131,12 @@ def opts():
print "Not complete ... subcommands, comments, chords..."
sys.exit(0)
elif a == 'n':
MMA.chords.docs()
sys.exit(0)
elif a == 'da':
MMA.docs.docDrumNames("a")
sys.exit(0)
elif a == 'dm':
MMA.docs.docDrumNames("m")
sys.exit(0)
elif a == 'ia':
MMA.docs.docInstNames("a")
sys.exit(0)
elif a == 'im':
MMA.docs.docInstNames("m")
sys.exit(0)
elif a == 'ca':
MMA.docs.docCtrlNames("a")
sys.exit(0)
elif a == 'cm':
MMA.docs.docCtrlNames("m")
sys.exit(0)
else:
print "Unknown -D option."
usage()
elif o == '-0':
gbl.synctick = 1
else:
usage() # unreachable??
@ -188,13 +162,6 @@ def usage(msg=''):
" -Dk print list of MMA keywords",
" -Dxl eXtract Latex doc blocks from file",
" -Dxh eXtract HTML doc blocks from file",
" -Dn print Note/chord table",
" -Ddm print Midi drum names (by MIDI value)",
" -Dda print Midi drum names (alphabetical)",
" -Dim print Inst. names (by MIDI value)",
" -Dia print Inst. names (alphabetical)",
" -Dcm print Controller names (by value)",
" -Dca print Controller names (alphabetical)",
" -e show parsed/Expanded lines",
" -f <file> set output Filename",
" -g update Groove dependency database",
@ -209,7 +176,8 @@ def usage(msg=''):
" -s display Sequence info during run",
" -S <var[=data]> Set macro 'var' to 'data'",
" -v display Version number",
" -w disable Warning messages" ]
" -w disable Warning messages",
" -0 create sync at start of all channel tracks" ]
for a in txt:

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
This module does all file parsing. Most commands
@ -61,6 +61,8 @@ seqRndWeight = [1]
groovesList = None
groovesCount = 0
gmagic = 9988 # magic name for groove saved with USE
""" This table is passed to the track classes. It has
an instance for each chord in the current bar.
"""
@ -73,6 +75,7 @@ class CTable:
drumZ = None # set if drums are tacet
bassZ = None # set if bass is tacet
scaleZ = None # set if scale track is tacet
ariaZ = None # set if aria track is tacet
def __init__(self, offset):
self.offset=offset
@ -133,16 +136,16 @@ def parse(inpath):
key=l[0].upper()
if key == 'BEGIN':
if not l:
error("Use: BEGIN STUFF.")
error("Use: Begin STUFF")
beginPoints.append(len(beginData))
beginData.extend(l[1:])
continue
if key == 'END':
if len(l) > 1:
error("No arguments permitted for End")
error("No arguments permitted for END")
if not beginData:
error("No 'Begin' for 'End'")
error("No 'BEGIN' for 'END'")
beginData=beginData[:beginPoints.pop(-1)]
continue
@ -234,11 +237,11 @@ def parse(inpath):
if not l:
error("Expecting music (chord) data. Even lines with\n"
" lyrics or solos still need a chord.")
" lyrics or solos still need a chord")
i = gbl.QperBar - len(l)
if i<0:
error("Too many chords in line. Max is %s, not %s." %
error("Too many chords in line. Max is %s, not %s" %
(gbl.QperBar, len(l) ) )
if i:
l.extend( ['/'] * i )
@ -262,7 +265,7 @@ def parse(inpath):
for c in l:
if c == '/':
if not lastChord:
error("A chord has to be set before you can use a '/'.")
error("A chord has to be set before you can use a '/'")
c = lastChord
else:
lastChord = c
@ -280,7 +283,7 @@ def parse(inpath):
for x, i in enumerate(seqRndWeight):
tmp.extend([x] * i)
if not len(tmp):
error("SeqRndWeight has generated an empty list.")
error("SeqRndWeight has generated an empty list")
randomSeq = random.choice(tmp)
if gbl.seqRnd[0] == 1:
@ -306,7 +309,7 @@ def parse(inpath):
gbl.barNum += 1
if gbl.barNum > gbl.maxBars:
error("Capacity exceeded. Maxbar setting is %s. Use -m option."
error("Capacity exceeded. Maxbar setting is %s. Use -m option"
% gbl.maxBars)
gbl.tickOffset += (gbl.QperBar * gbl.BperQ)
@ -360,24 +363,24 @@ def parseZs(c, beat):
if not c:
if r=='!': # mute all for 'z!'
r='DCAWBS'
r='DCAWBSR'
c='z' # dummy chord name
elif not r: # mute all tracks except Drum 'z'
r='CBAWS'
r='CBAWSR'
c='z'
else:
error("To mute individual tracks you must "
"use a chord/z combination not '%s'." % l)
"use a chord/z combination not '%s'" % r)
else: # illegal construct -- 'Cz!'
if r=='!':
error("'%sz!' is illegal. 'z!' mutes all tracks "
"so you can't include the chord." % c)
"so you can't include the chord" % c)
elif not r:
error("'%sz' is illegal. You must specify tracks "
"if you use a chord." % c )
"if you use a chord" % c )
for v in r:
if v == 'C':
@ -392,9 +395,11 @@ def parseZs(c, beat):
ctab.drumZ = 1
elif v == 'S':
ctab.scaleZ = 1
elif v == 'R':
ctab.ariaZ = 1
else:
error("Unknown voice '%s' for rest in '%s'." % (v,r))
error("Unknown voice '%s' for rest in '%s'" % (v,r))
ctab.chord = MMA.chords.ChordNotes(c)
@ -409,7 +414,7 @@ def allTracks(ln):
ttypes = []
if len(ln) < 1:
error("AllTracks: argument required.")
error("AllTracks: argument (track?) required")
i = 0
while i < len(ln) and ln[i].upper() in allTypes:
@ -420,13 +425,13 @@ def allTracks(ln):
ttypes = allTypes
if i>=len(ln):
error("AllTracks: Additional argument required.")
error("AllTracks: Additional argument (command?) required")
cmd = ln[i].upper()
args = i+1
if not cmd in trackFuncs:
error("AllTracks: command '%s' doen't exist." % cmd)
error("AllTracks: command '%s' doen't exist" % cmd)
for n in gbl.tnames:
if not gbl.tnames[n].vtype in ttypes:
@ -442,19 +447,19 @@ def comment(ln):
pass
def repeatend(ln):
error("Repeatend/EndRepeat without Repeat.")
error("Repeatend/EndRepeat without Repeat")
def repeatending(ln):
error("Repeatending without Repeat.")
error("Repeatending without Repeat")
def endmset(ln):
error("EndMset/MSetEnd without If.")
error("EndMset/MSetEnd without If")
def ifend(ln):
error("ENDIF without IF.")
error("ENDIF without IF")
def ifelse(ln):
error("ELSE without IF.")
error("ELSE without IF")
@ -481,7 +486,7 @@ def repeat(ln):
l=gbl.inpath.read()
if not l:
error("EOF encountered processing Repeat.")
error("EOF encountered processing Repeat")
act=l[0].upper()
@ -507,7 +512,7 @@ def repeat(ln):
ending = 0
if ln:
error("REPEAT takes no arguments.")
error("REPEAT takes no arguments")
main, mainnum, act, l = repeatChunk()
@ -522,24 +527,24 @@ def repeat(ln):
warn=1
if len(l) != 1:
error("%s: Use [NoWarn] Count." % act)
error("%s: Use [NoWarn] Count" % act)
count=stoi(l[0], "%s takes an integer arg." % act)
count=stoi(l[0], "%s takes an integer arg" % act)
if count == 2 and warn:
warning("%s count of 2 duplicates default. Did you mean 3 or more?" % act)
elif count == 1 and warn:
warning("%s count of 1 means NO REPEAT." % act)
warning("%s count of 1 means NO REPEAT" % act)
elif count == 0 and warn:
warning("%s count of 0, Skipping entire repeated section." % act)
warning("%s count of 0, Skipping entire repeated section" % act)
elif count < 0:
error("%s count must be 0 or greater." % act)
error("%s count must be 0 or greater" % act)
elif count > 10 and warn:
warning("%s is a large value for %s." % (count, act) )
warning("%s is a large value for %s" % (count, act) )
else:
count=2
@ -564,21 +569,21 @@ def repeat(ln):
warn=1
if len(l) != 1:
error("REPEATENDING: Use [NoWarn] Count.")
error("REPEATENDING: Use [NoWarn] Count")
count=stoi(l[0], "RepeatEnding takes an integer arg.")
count=stoi(l[0], "RepeatEnding takes an integer arg")
if count < 0:
error("RepeatEnding count must be postive, not %s" % count)
error("RepeatEnding count must be postive, not '%s'" % count)
elif count == 0 and warn:
warning("RepeatEnding count of 0, skipping section.")
warning("RepeatEnding count of 0, skipping section")
elif count == 1 and warn:
warning("RepeatEnding count of 1 duplicates default.")
warning("RepeatEnding count of 1 duplicates default")
elif count > 10 and warn:
warning("%s is a large value for RepeatEnding." % count)
warning("%s is a large value for RepeatEnding" % count)
else:
count = 1
@ -616,12 +621,12 @@ def setTime(ln):
"""
if len(ln) != 1:
error("Use: Time N.")
error("Use: Time N")
n = stoi(ln[0], "Argument for time must be integer.")
n = stoi(ln[0], "Argument for time must be integer")
if n < 1 or n > 12:
error("Time (beats/bar) must be 1..12.")
error("Time (beats/bar) must be 1..12")
# If no change, just ignore this.
@ -638,13 +643,13 @@ def tempo(ln):
""" Set tempo. """
if not ln or len(ln) >2:
error("Use: Tempo [*,+,-]BperM [BARS].")
error("Use: Tempo [*,+,-]BperM [BARS]")
# Get new value.
a = ln[0][0]
if a in "+-*":
v = stof(ln[0][1:], "Tempo expecting value for rate adjustment, not '%s'." % ln[0])
v = stof(ln[0][1:], "Tempo expecting value for rate adjustment, not '%s'" % ln[0])
if a == '-':
v = gbl.tempo - v
elif a == '+':
@ -653,7 +658,7 @@ def tempo(ln):
v *= gbl.tempo
else:
v = stof(ln[0], "Tempo expecting rate, not '%s'." % ln[0])
v = stof(ln[0], "Tempo expecting rate, not '%s'" % ln[0])
# is this immediate or over time?
@ -672,7 +677,7 @@ def tempo(ln):
numbeats = int(bars * gbl.QperBar)
if numbeats < 1:
error("Beat count must be greater than 1.")
error("Beat count must be greater than 1")
# Vary the rate in the meta track
@ -708,7 +713,7 @@ def beatAdjust(ln):
if len(ln) != 1:
error("Use: BeatAdjust NN")
adj = stof(ln[0], "Expecting a value (not %s) for BeatAdjust." % ln[0])
adj = stof(ln[0], "Expecting a value (not %s) for BeatAdjust" % ln[0])
gbl.tickOffset += int(adj * gbl.BperQ)
@ -748,34 +753,31 @@ def fermata(ln):
error("Use: Fermata 'offset' 'duration' 'adjustment'")
offset = stof(ln[0], "Expecting a value (not '%s') "
"for Fermata Offset." % ln[0] )
"for Fermata Offset" % ln[0] )
if offset < -gbl.QperBar or offset > gbl.QperBar:
warning("Fermata: %s is a large beat offset." % offset)
warning("Fermata: %s is a large beat offset" % offset)
dur = stof(ln[1], "Expecting a value (not '%s') for Fermata "
"Duration." % ln[1])
dur = stof(ln[1], "Expecting a value (not '%s') for Fermata Duration" % ln[1])
if dur <= 0:
error("Fermata duration must be greater than 0.")
error("Fermata duration must be greater than 0")
if dur > gbl.QperBar:
warning("Fermata: %s is a large duration.")
warning("Fermata: %s is a large duration" % dur)
adj = stof(ln[2], "Expecting a value (not '%s') for Fermata "
"Adjustment." % ln[2])
adj = stof(ln[2], "Expecting a value (not '%s') for Fermata Adjustment" % ln[2])
if adj< 100:
warning("Fermata: Adjustment less than 100 is shortening beat value.")
warning("Fermata: Adjustment less than 100 is shortening beat value")
if adj == 100:
error("Fermata: using value of 100 makes no difference, "
"must be an error.")
error("Fermata: using value of 100 makes no difference, must be an error")
moff=int(gbl.tickOffset + (gbl.BperQ * offset))
if moff < 0:
error("Fermata offset comes before track start.")
error("Fermata offset comes before track start")
gbl.mtrks[0].addTempo(moff, int(gbl.tempo / (adj/100)) )
@ -819,10 +821,10 @@ def grooveDefine(ln):
# Slot names can't contain a '/' (reserved) or be an integer (used in groove select).
if '/' in slot:
error("The '/' is not permitted in a groove name.")
error("The '/' is not permitted in a groove name")
if slot.isdigit():
error("Invalid slot name '%s'. Cannot be only digits." % slot)
error("Invalid slot name '%s'. Cannot be only digits" % slot)
grooveDefineDo(slot)
@ -867,7 +869,7 @@ def groove(ln):
if ln[0].isdigit():
wh=stoi(ln[0])
if wh<1:
error("Groove selection must be > 0, not '%s'." % wh)
error("Groove selection must be > 0, not '%s'" % wh)
ln=ln[1:]
else:
wh = None
@ -878,7 +880,7 @@ def groove(ln):
if len(tmpList):
slot=tmpList[-1]
else:
error("A previous groove name is needed before a '/'.")
error("A previous groove name is needed before a '/'")
if not slot in gbl.settingsGroove:
@ -972,6 +974,34 @@ def grooveDo(slot):
gbl.seqCount = 0
def grooveClear(ln):
""" Delete all previously loaded grooves from memory."""
global groovesList, groovesCount
if ln:
error("GrooveClear does not have any arguments.")
groovesList = {}
groovesCount = 0
try:
a= gbl.settingsGroove[gmagic]
except:
a=None
gbl.settingsGroove={}
if a:
gbl.settingsGroove[gmagic]=a
gbl.lastGroove = ''
gbl.currentGroove = ''
if gbl.debug:
print "All grooves deleted."
#######################################
# File and I/O
@ -988,7 +1018,7 @@ def include(ln):
fn = MMA.file.locFile(ln[0], gbl.incPath)
if not fn:
error("Could not find include file '%s'." % ln)
error("Could not find include file '%s'" % ln)
else:
parseFile(fn)
@ -1009,14 +1039,14 @@ def usefile(ln):
fn = MMA.file.locFile(ln, gbl.libPath)
if not fn:
error("Unable to locate library file '%s'." % ln)
error("Unable to locate library file '%s'" % ln)
""" USE saves current state, just like defining a groove.
Here we use a magic number which can't be created with
a defgroove ('cause it's an integer). Save, read, restore.
"""
slot = 9988
slot = gmagic
grooveDefineDo(slot)
parseFile(fn)
grooveDo(slot)
@ -1047,7 +1077,7 @@ def setLibPath(ln):
""" Set the LibPath variable. """
if len(ln) > 1:
error("Only one path can be entered for LibPath.")
error("Only one path can be entered for LibPath")
f = os.path.expanduser(ln[0])
@ -1061,7 +1091,7 @@ def setAutoPath(ln):
""" Set the autoPath variable. """
if len(ln) > 1:
error("Only one path can be entered for AutoLibPath.")
error("Only one path can be entered for AutoLibPath")
f = os.path.expanduser(ln[0])
@ -1083,7 +1113,7 @@ def setIncPath(ln):
""" Set the IncPath variable. """
if len(ln)>1:
error("Only one path is permitted in SetIncPath.")
error("Only one path is permitted in SetIncPath")
f = os.path.expanduser(ln[0])
@ -1100,7 +1130,7 @@ def setOutPath(ln):
gbl.outPath = ""
elif len(ln) > 1:
error ("Use: SetOutPath PATH.")
error ("Use: SetOutPath PATH")
else:
gbl.outPath = os.path.expanduser(ln[0])
@ -1116,9 +1146,9 @@ def seqsize(ln):
global seqRndWeight
if len(ln) !=1:
error("Usage 'SeqSize N'.")
error("Usage 'SeqSize N'")
n = stoi(ln[0], "Argument for SeqSize must be integer.")
n = stoi(ln[0], "Argument for SeqSize must be integer")
# Setting the sequence size always resets the seq point
@ -1148,11 +1178,11 @@ def seq(ln):
elif len(ln)==1:
s = stoi(ln[0], "Expecting integer value after SEQ")
else:
error("Use: SEQ or SEQ NN to reset seq point.")
error("Use: SEQ or SEQ NN to reset seq point")
if s > gbl.seqSize:
error("Sequence size is '%d', you can't set to '%d'." %
error("Sequence size is '%d', you can't set to '%d'" %
(gbl.seqSize, s))
if s==0:
@ -1164,7 +1194,7 @@ def seq(ln):
gbl.seqCount = s-1
if gbl.seqRnd[0] == 1:
warning("SeqRnd has been disabled by a Seq command.")
warning("SeqRnd has been disabled by a Seq command")
seqRnd = [0]
@ -1185,7 +1215,7 @@ def seqClear(ln):
def setSeqRnd(ln):
""" Set random order for all tracks. """
emsg = "use [ON, OFF | TrackList ]."
emsg = "use [ON, OFF | TrackList ]"
if not ln:
error("SeqRnd:" + emsg)
@ -1202,7 +1232,7 @@ def setSeqRnd(ln):
for a in ln:
a = a.upper()
if not a in gbl.tnames:
error("SeqRnd: Track '%s' does not exist, %s." % (a, emsg))
error("SeqRnd: Track '%s' does not exist, %s" % (a, emsg))
if a in gbl.seqRnd:
error("SeqRnd: Duplicate track '%s' specified, %s" % (a, emsg))
gbl.seqRnd.append(a)
@ -1226,12 +1256,12 @@ def setSeqRndWeight(ln):
global seqRndWeight
if not ln:
error("Use: RndWeight <weight factors>.")
error("Use: RndWeight <weight factors>")
tmp = []
for n in ln:
n = stoi(n)
if n < 0: error("RndWeight: Values must be 0 or greater.")
if n < 0: error("RndWeight: Values must be 0 or greater")
tmp.append(n)
seqRndWeight = seqBump(tmp)
@ -1264,11 +1294,11 @@ def midiMarker(ln):
offset = 0
msg = ln[0]
else:
error("Usage: MidiMark [offset] Label.")
error("Usage: MidiMark [offset] Label")
offset = int(gbl.tickOffset + (gbl.BperQ * offset))
if offset < 0:
error("MidiMark offset points before start of file.")
error("MidiMark offset points before start of file")
gbl.mtrks[0].addMarker(offset, msg)
@ -1299,14 +1329,14 @@ def mdefine(ln):
""" Set a midi seq pattern. """
if not ln:
error("MDefine needs arguments.")
error("MDefine needs arguments")
name = ln[0]
if name.startswith('_'):
error("Names with a leading underscore are reserved.")
error("Names with a leading underscore are reserved")
if name.upper() == 'Z':
error("The name 'Z' is reserved.")
error("The name 'Z' is reserved")
MMA.mdefine.mdef.set(name, ' '.join(ln[1:]))
@ -1321,7 +1351,7 @@ def setMidiFileType(ln):
try:
mode, val = l.upper().split('=')
except:
error("Each arg must contain an '=', not '%s'." % l)
error("Each arg must contain an '=', not '%s'" % l)
if mode == 'SMF':
if val == '0':
@ -1363,14 +1393,14 @@ def setChPref(ln):
for i in ln:
if '=' not in i:
error("Each item in ChannelPref must have an '='.")
error("Each item in ChannelPref must have an '='")
n,c = i.split('=')
c = stoi(c, "Expecting an integer for ChannelPref, not '%s'." % c)
c = stoi(c, "Expecting an integer for ChannelPref, not '%s'" % c)
if c<1 or c>16:
error("Channel for ChannelPref must be 1..16, not %s." % c)
error("Channel for ChannelPref must be 1..16, not %s" % c)
gbl.midiChPrefs[n.upper()]=c
@ -1392,7 +1422,7 @@ def setTimeSig(ln):
ln=('2','2')
if len(ln) != 2:
error("TimeSig: Usage (num dem) or ('cut' or 'common').")
error("TimeSig: Usage (num dem) or ('cut' or 'common')")
nn = stoi(ln[0])
@ -1426,7 +1456,7 @@ def rndseed(ln):
random.seed()
elif len(ln)>1:
error("RNDSEED: requires 0 or 1 arguments.")
error("RNDSEED: requires 0 or 1 arguments")
else:
random.seed(stof(ln[0]))
@ -1435,11 +1465,11 @@ def transpose(ln):
if len(ln) != 1:
error("Use: Transpose N.")
error("Use: Transpose N")
t = stoi(ln[0], "Argument for Tranpose must be an integer, not '%s'" % ln[0])
if t < -12 or t > 12:
error("Tranpose %s out-of-range; must be -12..12." % t)
error("Tranpose %s out-of-range; must be -12..12" % t)
gbl.transpose = t
@ -1470,7 +1500,7 @@ def setDebug(ln):
msg=( "Use: Debug MODE=On/Off where MODE is one or more of "
"DEBUG, FILENAMES, PATTERNS, SEQUENCE, "
"RUNTIME, WARNINGS or EXPAND." )
"RUNTIME, WARNINGS or EXPAND" )
if not len(ln):
@ -1530,7 +1560,7 @@ def setDebug(ln):
elif mode == 'WARNINGS':
gbl.noWarn = not(setting)
if gbl.debug:
print "Warning display=%s." % val
print "Warning display=%s" % val
elif mode == 'EXPAND':
gbl.showExpand = setting
@ -1567,16 +1597,16 @@ def trackDefPattern(name, ln):
if ln:
pattern = ln.pop(0).upper()
else:
error("Define is expecting a pattern name.")
error("Define is expecting a pattern name")
if pattern in ('z', 'Z', '-'):
error("Pattern name '%s' is reserved." % pattern)
error("Pattern name '%s' is reserved" % pattern)
if pattern.startswith('_'):
error("Names with a leading underscore are reserved.")
error("Names with a leading underscore are reserved")
if not ln:
error("No pattern list given for '%s %s'." % (name, pattern) )
error("No pattern list given for '%s %s'" % (name, pattern) )
ln=' '.join(ln)
gbl.tnames[name].definePattern(pattern, ln)
@ -1648,7 +1678,7 @@ def trackSeqRnd(name, ln):
""" Set random order for specified track. """
if len(ln) != 1:
error("Use: %s SeqRnd [On, Off]." % name)
error("Use: %s SeqRnd [On, Off]" % name)
gbl.tnames[name].setRnd(ln[0].upper())
@ -1656,7 +1686,7 @@ def trackSeqRndWeight(name, ln):
""" Set rnd weight for track. """
if not ln:
error("Use: %s RndWeight <weight factors>." % name)
error("Use: %s RndWeight <weight factors>" % name)
gbl.tnames[name].setRndWeight(ln)
@ -1742,14 +1772,13 @@ def trackRvolume(name, ln):
""" Set random volume for specific track. """
if not ln:
error ("Use: %s RVolume N [...]." % name)
error ("Use: %s RVolume N [...]" % name)
gbl.tnames[name].setRVolume(ln)
def trackCresc(name, ln):
gbl.tnames[name].setCresc(1, ln)
#error("(De)Crescendo only supported in master context.")
def trackDeCresc(name, ln):
gbl.tnames[name].setCresc(-1, ln)
@ -1758,7 +1787,7 @@ def trackVolume(name, ln):
""" Set volume for specific track. """
if not ln:
error ("Use: %s Volume DYN [...]." % name)
error ("Use: %s Volume DYN [...]" % name)
gbl.tnames[name].setVolume(ln)
@ -1767,9 +1796,9 @@ def trackChannelVol(name, ln):
""" Set the channel volume for a track."""
if len(ln) != 1:
error("Use: %s ChannelVolume." % name)
error("Use: %s ChannelVolume" % name)
v=stoi(ln[0], "Expecting integer arg, not %s." % ln[0])
v=stoi(ln[0], "Expecting integer arg, not %s" % ln[0])
if v<0 or v>127:
error("ChannelVolume must be 0..127")
@ -1797,17 +1826,17 @@ def trackCut(name, ln):
error("Use: %s Cut Offset" % name)
offset = stof(ln[0], "Cut offset expecting value, (not '%s')." % ln[0])
offset = stof(ln[0], "Cut offset expecting value, (not '%s')" % ln[0])
if offset < -gbl.QperBar or offset > gbl.QperBar:
warning("Cut: %s is a large beat offset." % offset)
warning("Cut: %s is a large beat offset" % offset)
moff = int(gbl.tickOffset + (gbl.BperQ * offset))
if moff < 0:
error("Calculated offset for Cut comes before start of track.")
error("Calculated offset for Cut comes before start of track")
""" Insert allnoteoff directly in track. This skips the normal
queueing in pats because it would never take if at the end
@ -1827,7 +1856,7 @@ def trackMallet(name, ln):
""" Set repeating-mallet options for solo/melody track. """
if not ln:
error("Use: %s Mallet <Option=Value> [...]." % name)
error("Use: %s Mallet <Option=Value> [...]" % name)
gbl.tnames[name].setMallet(ln)
@ -1836,7 +1865,7 @@ def trackRtime(name, ln):
""" Set random timing for specific track. """
if not ln:
error ("Use: %s RTime N [...]." % name)
error ("Use: %s RTime N [...]" % name)
gbl.tnames[name].setRTime(ln)
@ -1846,7 +1875,7 @@ def trackRskip(name, ln):
""" Set random skip for specific track. """
if not ln:
error ("Use: %s RSkip N [...]." % name)
error ("Use: %s RSkip N [...]" % name)
gbl.tnames[name].setRSkip(ln)
@ -1856,7 +1885,7 @@ def trackArtic(name, ln):
""" Set articulation. """
if not ln:
error("Use: %s Articulation N [...]." % name)
error("Use: %s Articulation N [...]" % name)
gbl.tnames[name].setArtic(ln)
@ -1917,7 +1946,7 @@ def trackInvert(name, ln):
""" Set invert for track."""
if not ln:
error("Use: %s Invert N [...]." % name)
error("Use: %s Invert N [...]" % name)
gbl.tnames[name].setInvert(ln)
@ -1928,19 +1957,19 @@ def trackSpan(name, ln):
if len(ln) != 2:
error("Use: %s Start End" % name)
start = stoi(ln[0], "Expecting integer for SPAN 1st arg.")
start = stoi(ln[0], "Expecting integer for SPAN 1st arg")
if start <0 or start >127:
error("Start arg for Span must be 0..127, not %s." % start)
error("Start arg for Span must be 0..127, not %s" % start)
end = stoi(ln[1], "Expecting integer for SPAN 2nd arg.")
end = stoi(ln[1], "Expecting integer for SPAN 2nd arg")
if end <0 or end >127:
error("End arg for Span must be 0..127, not %s." % end)
error("End arg for Span must be 0..127, not %s" % end)
if end <= start:
error("End arg for Span must be greater than start.")
error("End arg for Span must be greater than start")
if end-start < 11:
error("Span range must be at least 12.")
error("Span range must be at least 12")
gbl.tnames[name].setSpan(start, end)
@ -2046,7 +2075,7 @@ def trackMidiClear(name, ln):
else:
ln=' '.join(ln)
if '{' in ln or '}' in ln:
error("{}s are not permitted in %s MIDIClear command." % name)
error("{}s are not permitted in %s MIDIClear command" % name)
gbl.tnames[name].setMidiClear( trackMidiExt( '{' + ln + '}' ))
@ -2106,7 +2135,7 @@ def trackOff(name, ln):
""" Turn a track off """
if ln:
error("Use: %s OFF with no paramater." % name)
error("Use: %s OFF with no paramater" % name)
gbl.tnames[name].setOff()
@ -2115,7 +2144,7 @@ def trackOn(name, ln):
""" Turn a track on """
if ln:
error("Use: %s ON with no paramater." % name)
error("Use: %s ON with no paramater" % name)
gbl.tnames[name].setOn()
@ -2124,7 +2153,7 @@ def trackMidiName(name,ln):
""" Set channel track name."""
if not ln:
error("Use: %s TrackName." % name)
error("Use: %s TrackName" % name)
gbl.tnames[name].setTname(ln[0])
@ -2133,7 +2162,7 @@ def trackTone(name, ln):
""" Set the tone (note). Only valid in drum tracks."""
if not ln:
error("Use: %s Tone N [...]." % name)
error("Use: %s Tone N [...]" % name)
gbl.tnames[name].setTone(ln)
@ -2142,7 +2171,7 @@ def trackGlis(name, ln):
""" Enable/disable portamento. """
if len(ln) != 1:
error("Use: %s Portamento NN, off=0, 1..127==on." % name)
error("Use: %s Portamento NN, off=0, 1..127==on" % name)
gbl.tnames[name].setGlis(ln[0])
@ -2150,7 +2179,7 @@ def trackForceOut(name, ln):
""" Force output of voice settings. """
if len(ln):
error("Use %s ForceOut (no options)." % name)
error("Use %s ForceOut (no options)" % name)
gbl.tnames[name].setForceOut()
@ -2163,10 +2192,9 @@ def trackDrumType(name, ln):
tr = gbl.tnames[name]
if tr.vtype not in ('SOLO', 'MELODY'):
error ("Only Solo and Melody tracks can be to DrumType, not '%s'."
% name)
error ("Only Solo and Melody tracks can be to DrumType, not '%s'" % name)
if ln:
error("No parmeters permitted for DrumType command.")
error("No parmeters permitted for DrumType command")
tr.setDrumType()
@ -2240,6 +2268,7 @@ simpleFuncs={
'DEFGROOVE': grooveDefine,
'DELETE': deleteTrks,
'DOC': MMA.docs.docNote,
'DOCVAR': MMA.docs.docVars,
'DRUMVOLTR': MMA.translate.drumVolTable.set,
'ELSE': ifelse,
'ENDIF': ifend,
@ -2249,6 +2278,7 @@ simpleFuncs={
'FERMATA': fermata,
'GOTO': goto,
'GROOVE': groove,
'GROOVECLEAR': grooveClear,
'IF': macros.varIF,
'IFEND': ifend,
'INC': macros.varinc,
@ -2266,6 +2296,7 @@ simpleFuncs={
'MMASTART': mmastart,
'MSET': macros.msetvar,
'MSETEND': endmset,
'NEWSET': macros.newsetvar,
'CHORDADJUST': MMA.chords.chordAdjust,
'PRINT': lnPrint,
'PRINTACTIVE': printActive,
@ -2295,6 +2326,7 @@ simpleFuncs={
'TONETR': MMA.translate.dtable.set,
'UNSET': macros.unsetvar,
'USE': usefile,
'VARCLEAR': macros.clear,
'VEXPAND': macros.vexpand,
'VOICEVOLTR': MMA.translate.voiceVolTable.set,
'VOICETR': MMA.translate.vtable.set,

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -98,16 +98,12 @@ class PC:
self.disable = 0
if self.vtype == 'DRUM':
self.setChannel('10')
if not gbl.mtrks[self.channel].trackname:
gbl.mtrks[self.channel].addTrkName(0, 'Drum')
self.clearSequence()
self.inited = 1
##########################################
## These are called from process() to set options
@ -120,11 +116,11 @@ class PC:
for n in ln:
n = stoi(n, "Argument for %s Compress must be a value." \
n = stoi(n, "Argument for %s Compress must be a value" \
% self.name)
if n < 0 or n > 5:
error("Compress %s out-of-range; must be 0 to 5." % n)
error("Compress %s out-of-range; must be 0 to 5" % n)
if n and self.vtype=='CHORD' and self.voicing.mode:
vwarn = 1
@ -134,11 +130,11 @@ class PC:
self.compress = seqBump(tmp)
if self.vtype not in ("CHORD", "ARPEGGIO"):
warning ("Compress is ignored in %s tracks." % self.vtype)
warning ("Compress is ignored in %s tracks" % self.vtype)
if gbl.debug:
print "Set %s Compress to " % self.name,
printList(ln)
print "Set %s Compress to:" % self.name,
printList(self.compress)
def setRange(self, ln):
@ -154,117 +150,30 @@ class PC:
if n == 0:
n=1
if n <= 0 or n >= 6:
error("Range %s out-of-range; must be between 0..6, not %s." % (self.name, n))
error("Range %s out-of-range; must be between 0..6, not %s" % (self.name, n))
tmp.append(n)
self.chordRange = seqBump(tmp)
if self.vtype not in ("SCALE", "ARPEGGIO"):
warning ("Range has no effect in '%s' tracks." % self.vtype)
if self.vtype not in ("SCALE", "ARPEGGIO", "ARIA"):
warning ("Range ignored in '%s' tracks" % self.vtype)
if gbl.debug:
print "Set %s Range to " % self.name,
printList(ln)
print "Set %s Range to:" % self.name,
printList(self.chordRange)
def setVoicing(self, ln):
""" set the Voicing Mode options. """
""" set the Voicing Mode options.
if self.vtype != "CHORD":
error("Voicing is not supported for %s tracks." % self.vtype)
This is a stub. The real code is in patChord.py (settings are
only valid for that type). """
for l in ln:
try:
mode, val = l.upper().split('=')
except:
error("Each Voicing option must contain a '=', not '%s'" % l)
error("Voicing is not supported for %s tracks" % self.vtype)
if mode == 'MODE':
valid= ("-", "OPTIMAL", "NONE", "ROOT", "COMPRESSED", "INVERT")
if not val in valid:
error("Valid Voicing Modes are: %s" % " ".join(valid))
if val in ('-', 'NONE',"ROOT"):
val = None
if val and (max(self.invert) + max(self.compress)):
warning("Setting both VoicingMode and Invert/Compress "
"is not a good idea")
""" When we set voicing mode we always reset this. This forces
the voicingmode code to restart its rotations.
"""
self.lastChord = []
self.voicing.mode = val
elif mode == 'RANGE':
val = stoi(val, "Argument for %s Voicing Range "
"must be a value." % self.name)
if val < 1 or val > 30:
error("Voicing Range '%s' out-of-range; "
"must be 1 to 30." % val)
self.voicing.range = val
elif mode == 'CENTER':
val = stoi(val, "Argument for %s Voicing Center "
"must be a value." % self.name)
if val < 1 or val > 12:
error("Voicing Center %s out-of-range; "
"must be 1 to 12." % val)
self.voicing.center = val
elif mode == 'RMOVE':
val = stoi(val, "Argument for %s Voicing Random "
"must be a value." % self.name)
if val < 0 or val > 100:
error("Voicing Random value must be 0 to 100 "
"not %s" % val)
self.voicing.random = val
self.voicing.bcount = 0
elif mode == 'MOVE':
val = stoi(val, "Argument for %s Voicing Move "
"must be a value." % self.name)
if val < 0 :
error("Voicing Move (bar count) must >= 0, not %s" % val)
if val > 20:
warning("Voicing Move (bar count) %s is quite large" % val)
self.voicing.bcount = val
self.voicing.random = 0
elif mode == 'DIR':
val = stoi(val, "Argument for %s Voicing Dir (move direction) "
"must be a value." % self.name)
if not val in (1,0,-1):
error("Voicing Move Dir -1, 0 or 1, not %s" % val)
self.voicing.dir = val
if gbl.debug:
v=self.voicing
print "Set %s Voicing MODE=%s" % (self.name, v.mode),
print "RANGE=%s CENTER=%s" % (v.range, v.center),
print "RMOVE=%s MOVE=%s DIR=%s" % (v.random, v.bcount, v.dir)
def setForceOut(self):
""" Set the force output flag. This does 2 things: assigns
@ -279,42 +188,26 @@ class PC:
def setDupRoot(self, ln):
""" set/unset root duplication. """
""" set/unset root duplication.
if self.vtype != 'CHORD':
error("RootDup can only be applied to CHORD tracks.")
This is a stub. Only valid for CHORDs and that is where the code is."""
ln=self.lnExpand(ln, 'DupRoot')
tmp = []
for n in ln:
n = stoi(n, "Argument for %s DupRoot must be a value." % self.name)
if n < -9 or n > 9:
error("DupRoot %s out-of-range; must be -9 to 9." % n)
tmp.append( n * 12 )
self.dupRoot = seqBump(tmp)
if gbl.debug:
print "Set %s DupRoot to " % self.name,
printList(ln)
warning("RootDup has no effect in %s tracks" % self.vtype)
def setChordLimit(self, ln):
""" set/unset the chordLimit flag. """
n = stoi(ln, "Argument for %s ChordLimit must be a value." % self.name)
n = stoi(ln, "Argument for %s ChordLimit must be a value" % self.name)
if n < 0 or n > 8:
error("ChordLimit %s out-of-range; must be 0 to 8." % n)
error("ChordLimit %s out-of-range; must be 0 to 8" % n)
self.chordLimit = n
if self.vtype not in ("CHORD", "ARPEGGIO"):
warning ("Limit is ignored in %s tracks." % self.vtype)
warning ("Limit is ignored in %s tracks" % self.vtype)
if gbl.debug:
print "Set %s ChordLimit to %s" % (self.name, n)
@ -349,8 +242,8 @@ class PC:
break
if c < 0:
error("No MIDI channel is available for %s.\n"
"Try CHShare or Delete unused tracks." % self.name)
error("No MIDI channel is available for %s,\n"
"Try CHShare or Delete unused tracks" % self.name)
else:
c = stoi(ln, "%s Channel assignment expecting Value, not %s" %
@ -365,21 +258,21 @@ class PC:
elif self.vtype in ('SOLO', 'MELODY') and self.drumType:
pass
else:
error("Channel 10 is reserved for DRUM, not %s." % self.name)
error("Channel 10 is reserved for DRUM, not %s" % self.name)
if self.vtype == 'DRUM' and c != 10:
error("DRUM tracks must be assigned to channel 10.")
error("DRUM tracks must be assigned to channel 10")
# Disable the channel.
if c == 0:
if gbl.midiAvail[self.channel]:
gbl.midiAvail[self.channel] -= 1
s="%s channel disabled." % self.name
s="%s channel disabled" % self.name
if gbl.midiAvail[self.channel]:
s+=" Other tracks are still using channel %s." % self.channel
s+=" Other tracks are still using channel %s" % self.channel
else:
s+=" Channel %s available." % self.channel
s+=" Channel %s available" % self.channel
warning(s)
self.channel = 0
self.disable = 1
@ -392,7 +285,7 @@ class PC:
continue
if tr.channel == c:
error("Channel %s is assigned to %s." % (c, tr.name ) )
error("Channel %s is assigned to %s" % (c, tr.name ) )
self.channel = c
if not self.name in gbl.midiAssigns[c]:
@ -404,7 +297,7 @@ class PC:
gbl.mtrks[c]=MMA.midi.Mtrk(c)
offset=0
if gbl.debug:
print "MIDI channel %s buffer created." % c
print "MIDI channel %s buffer created" % c
else:
offset = gbl.tickOffset
@ -417,7 +310,7 @@ class PC:
self.midiPending.append(('TNAME', 0, self.name.title() ))
if gbl.debug:
print "MIDI Channel %s assigned to %s." % (self.channel, self.name)
print "MIDI Channel %s assigned to %s" % (self.channel, self.name)
def setChShare(self, ln):
@ -425,7 +318,7 @@ class PC:
if self.channel: # If channel already assigned, ignore
warning("Channel for %s has previously been assigned "
"(can't ChShare)." % self.name)
"(can't ChShare)" % self.name)
return
""" Get name of track to share with and make sure it exists.
@ -439,10 +332,10 @@ class PC:
MMA.alloc.trackAlloc(sc, 1)
if not sc in gbl.tnames:
error("Channel '%s' does not exist. No such name." % sc)
error("Channel '%s' does not exist. No such name" % sc)
if sc == self.name:
error("%s can't share MIDI channel with itself." % sc)
error("%s can't share MIDI channel with itself" % sc)
if not gbl.tnames[sc].channel:
@ -452,7 +345,7 @@ class PC:
if not schannel:
error("CHShare attempted to assign MIDI channel for %s, but "
"none avaiable." % self.name)
"none avaiable" % self.name)
""" Actually do the assignment. Also copy voice/octave from
@ -521,35 +414,15 @@ class PC:
def setStrum(self, ln):
""" Set Strum time. """
""" Set Strum time. CHORD only option. """
# Strum is only valid for CHORD tracks.
if self.vtype != "CHORD":
error( "Strum is only valid in Chord tracks, you tried to "
"set it in a %s track." % self.name)
ln=self.lnExpand(ln, 'Strum')
tmp = []
for n in ln:
n = stoi(n, "Argument for %s Strum must be an integer" % self.name)
if n < 0 or n > 100:
error("Strum %s out-of-range; must be 0..100." % n)
tmp.append(n)
self.strum = seqBump(tmp)
if gbl.debug:
print "Set %s Strum to %s" % (self.name, self.strum)
warning("Strum has no effect in %s tracks" % self.name)
def setTone(self, ln):
""" Set Tone. Error trap, only drum tracks have tone. """
error("Tone command not supported for %s track." % self.name)
error("Tone command not supported for %s track" % self.name)
def setOn(self):
@ -580,10 +453,10 @@ class PC:
for n in ln:
n = stoi(n, "Argument for %s RVolume must be a value." % self.name)
n = stoi(n, "Argument for %s RVolume must be a value" % self.name)
if n < 0 or n > 100:
error("RVolume %s out-of-range; must be 0..100." % n)
error("RVolume %s out-of-range; must be 0..100" % n)
if n > 30:
warning("%s is a large RVolume value!" % n)
@ -593,7 +466,7 @@ class PC:
self.rVolume = seqBump(tmp)
if gbl.debug:
print "Set %s Rvolume to " % self.name,
print "Set %s Rvolume to:" % self.name,
for n in self.rVolume:
print int(n * 100),
print
@ -616,7 +489,7 @@ class PC:
self.rSkip = seqBump(tmp)
if gbl.debug:
print "Set %s RSkip to " % self.name,
print "Set %s RSkip to:" % self.name,
for n in self.rSkip:
print int(n * 100),
print
@ -631,15 +504,15 @@ class PC:
for n in ln:
n=stoi(n, "Expecting an integer for Rtime")
if n < 0 or n > 100:
error("RTime %s out-of-range; must be 0..100." % n)
error("RTime %s out-of-range; must be 0..100" % n)
tmp.append(n)
self.rTime = seqBump(tmp)
if gbl.debug:
print "Set %s RTime to " % self.name,
printList(ln)
print "Set %s RTime to:" % self.name,
printList(self.rTime)
def setRnd(self, arg):
@ -652,7 +525,7 @@ class PC:
self.seqRnd = 0
else:
error("SeqRnd: '%s' is not a valid option." % arg)
error("SeqRnd: '%s' is not a valid option" % arg)
if gbl.debug:
if self.seqRnd:
@ -670,7 +543,7 @@ class PC:
for n in ln:
n = stoi(n)
if n < 0: error("SeqRndWeight: Values must be 0 or greater.")
if n < 0: error("SeqRndWeight: Values must be 0 or greater")
tmp.append(n)
self.seqRndWeight = seqBump(tmp)
@ -689,7 +562,7 @@ class PC:
for n in ln:
n = n.upper()
if not n in ('UP', 'DOWN', 'BOTH', 'RANDOM'):
error("Unknown %s Direction '%s'." % (self.name, n) )
error("Unknown %s Direction '%s'" % (self.name, n) )
tmp.append(n)
self.direction = seqBump(tmp)
@ -700,31 +573,17 @@ class PC:
if gbl.debug:
print "Set %s Direction to " % self.name,
printList(ln)
print "Set %s Direction to:" % self.name,
printList(self.direction)
def setScaletype(self, ln):
""" Set scale type. """
""" Set scale type.
if self.vtype != 'SCALE':
error("ScaleType only valid in Scale tracks.")
ln = self.lnExpand(ln, "ScaleType")
tmp = []
for n in ln:
n = n.upper()
if not n in ( 'CHROMATIC', 'AUTO'):
error("Unknown %s ScaleType. Only Chromatic and Auto are valid." % self.name)
tmp.append(n)
self.scaleType = seqBump(tmp)
if gbl.debug:
print "Set %s ScaleType to " % self.name,
printList(ln)
This is a error stub. The real code is in the permitted track code.
"""
warning("ScaleType has no effect in %s tracks") % self.vtype
def setInvert(self, ln):
@ -736,6 +595,7 @@ class PC:
"""
ln=self.lnExpand(ln, "Invert")
vwarn = 0
tmp = []
@ -750,14 +610,14 @@ class PC:
self.invert = seqBump(tmp)
if self.vtype not in ("CHORD", "ARPEGGIO"):
warning ("Invert is ignored in %s tracks." % self.vtype)
warning ("Invert is ignored in %s tracks" % self.vtype)
if vwarn:
warning("Setting both Voicing Mode and Invert is not a good idea")
if gbl.debug:
print "Set %s Invert to " % self.name,
printList(ln)
print "Set %s Invert to:" % self.name,
printList(self.invert)
def setOctave(self, ln):
@ -769,18 +629,19 @@ class PC:
for n in ln:
n = stoi(n, "Argument for %s Octave must be an integer" % self.name)
if n < 0 or n > 10:
error("Octave %s out-of-range; must be 0..10." % n)
error("Octave %s out-of-range; must be 0..10" % n)
tmp.append( n * 12 )
self.octave = seqBump(tmp)
if gbl.debug:
print "Set %s Octave to" % self.name,
print "Set %s Octave to:" % self.name,
for i in self.octave:
print i/12,
print
def setSpan(self, start, end):
""" Set span.
@ -788,20 +649,19 @@ class PC:
"""
if self.vtype == "DRUM":
error("Span not supported in Drum tracks.")
if self.vtype == 'DRUM':
warning("Span has no effect in Drum tracks")
self.spanStart = start
self.spanEnd = end
if gbl.debug:
print "Set %s Span to %s...%s." % (self.name, self.spanStart, self.spanEnd)
print "Set %s Span to %s...%s" % (self.name, self.spanStart, self.spanEnd)
def setHarmony(self, ln):
""" Set the harmony. """
ln=self.lnExpand(ln, 'Harmony')
tmp = []
@ -818,7 +678,7 @@ class PC:
warning("Harmony setting for %s track ignored" % self.vtype)
if gbl.debug:
print "Set %s Harmony to" % self.name,
print "Set %s Harmony to:" % self.name,
printList(self.harmony)
@ -843,7 +703,7 @@ class PC:
warning("HarmonyOnly setting for %s track ignored" % self.vtype)
if gbl.debug:
print "Set %s HarmonyOnly to" % self.name,
print "Set %s HarmonyOnly to:" % self.name,
printList(self.harmonyOnly)
@ -866,7 +726,7 @@ class PC:
warning("HarmonyVolume adjustment for %s track ignored" % self.vtype)
if gbl.debug:
print "Set %s HarmonyVolume to" % self.name,
print "Set %s HarmonyVolume to:" % self.name,
printList(self.harmonyVolume)
@ -921,19 +781,18 @@ class PC:
a=stoi(n, "Expecting a valid voice name or value, "
"not '%s'" % n)
if a <0 or a > 127:
error("Voice must be 0..127.")
error("Voice must be 0..127")
tmp.append( a )
self.voice = seqBump(tmp)
if self.channel and len(gbl.midiAssigns[self.channel])>1:
a=''
for n in gbl.midiAssigns[self.channel]:
if n != self.name:
a += ' %s' % n
warning("Track %s is shared with %s.\n"
" Changing voice may create conflict." % (a,self.name))
warning("Track %s is shared with %s,\n"
" changing voice may create conflict" % (a,self.name))
if gbl.debug:
@ -962,7 +821,7 @@ class PC:
if self.midiSent:
if not self.midiClear:
warning("%s: Midi data has been inserted with MIDIVoice/Seq "
"but no MIDIClear data is present." % self.name)
"but no MIDIClear data is present" % self.name)
else:
for i in self.midiClear:
@ -1072,7 +931,7 @@ class PC:
self.volume = seqBump(tmp)
if gbl.debug:
print "Set %s Volume to " % self.name,
print "Set %s Volume to:" % self.name,
for a in self.volume:
print int(a * 100),
print
@ -1088,13 +947,11 @@ class PC:
vol = self.volume[0]
if self.volume.count(vol) != len(self.volume):
warning("(De)Crescendo being used with track with variable sequence volumes.")
warning("(De)Crescendo being used with track with variable sequence volumes")
self.futureVols = MMA.volume.fvolume(dir, vol, ln)
def setMallet(self, ln):
""" Mallet (repeat) settngs. """
@ -1108,7 +965,7 @@ class PC:
self.mallet = getNoteLen(val)
elif mode == 'DECAY':
val = stof(val, "Mallet Decay must be a value, not '%s'." % val)
val = stof(val, "Mallet Decay must be a value, not '%s'" % val)
if val < -50 or val > 50:
error("Mallet Decay rate must be -50..+50")
@ -1164,10 +1021,10 @@ class PC:
for b, v in zip(l[::2], l[1::2]):
b=self.setBarOffset( b )
v=stoi(v, "Bbeat offset must be a value, not '%s'." % v)
v=stoi(v, "Bbeat offset must be a value, not '%s'" % v)
if v < -100 or v > 100:
error("Velocity adjustment (as percentage) must "
"be -100..100, not '%s'." % v)
"be -100..100, not '%s'" % v)
tt.append( (b, v/100. ) )
tmp.append(tt)
@ -1191,9 +1048,9 @@ class PC:
tmp = []
for n in ln:
a = stoi(n, "Expecting value in articulation setting.")
a = stoi(n, "Expecting value in articulation setting")
if a < 1 or a > 200:
error("Articulation setting must be 1..200, not %s." % a)
error("Articulation setting must be 1..200, not %s" % a)
if a>150:
warning("Large Articulate value: %s" % a)
@ -1203,8 +1060,8 @@ class PC:
self.artic = seqBump(tmp)
if gbl.debug:
print "Set %s Articulation to " % self.name,
printList(ln)
print "Set %s Articulate to:" % self.name,
printList(self.artic)
def setUnify(self, ln):
@ -1225,7 +1082,7 @@ class PC:
self.unify = seqBump(tmp)
if gbl.debug:
print "Set %s Unify to " % self.name,
print "Set %s Unify to:" % self.name,
printList(self.unify)
@ -1234,7 +1091,7 @@ class PC:
""" Validate and expand a list passed to a set command. """
if len(ln) > gbl.seqSize:
warning("%s list truncated to %s patterns." % (self.name, gbl.seqSize) )
warning("%s list truncated to %s patterns" % (self.name, gbl.seqSize) )
ln = ln[:gbl.seqSize]
last = None
@ -1243,7 +1100,7 @@ class PC:
if n == '/':
if not last:
error ("You cannot use a '/' as the first item "
"in a %s list." % cmd)
"in a %s list" % cmd)
else:
ln[i] = last
else:
@ -1256,13 +1113,13 @@ class PC:
""" Copy the voicing from a 2nd voice to the current one. """
if not cp in gbl.tnames:
error("CopySettings does not know track '%s'." % cp)
error("CopySettings does not know track '%s'" % cp)
cp=gbl.tnames[cp]
if cp.vtype != self.vtype:
error("Tracks must be of same type for copy ... "
"%s and %s aren't." % (self.name, cp.name))
"%s and %s aren't" % (self.name, cp.name))
self.volume = cp.volume[:]
self.rVolume = cp.rVolume[:]
@ -1288,7 +1145,7 @@ class PC:
if gbl.debug:
print "Settings from %s copied to %s." % (cp.name, self.name)
print "Settings from %s copied to %s" % (cp.name, self.name)
@ -1299,6 +1156,7 @@ class PC:
""" Define a groove.
Called by the 'DefGroove Name'. This is called for
each track.
If 'gname' is already defined it is overwritten.
@ -1334,7 +1192,8 @@ class PC:
'MIDIVOICE':self.midiVoice[:],
'MIDICLEAR':self.midiClear[:],
'SPAN': (self.spanStart, self.spanEnd),
'MALLET': (self.mallet, self.malletDecay) }
'MALLET': (self.mallet, self.malletDecay),
}
if self.vtype == 'CHORD':
@ -1431,6 +1290,7 @@ class PC:
"""
ln=self.lnExpand(ln, 'Sequence')
tmp = [None] * len(ln)
@ -1446,7 +1306,7 @@ class PC:
else:
p= (self.vtype, n)
if not p in pats:
error("Track %s does not have pattern '%s'." % p )
error("Track %s does not have pattern '%s'" % p )
tmp[i] = pats[p]
self.sequence = seqBump(tmp)
@ -1454,8 +1314,10 @@ class PC:
if gbl.seqshow:
print "%s sequence set:" % self.name,
for a in ln:
if a in "Zz-": print "-",
else: print a,
if a in "Zz-":
print "-",
else:
print a,
print
@ -1471,6 +1333,9 @@ class PC:
self.sequence = [None]
self.seqRnd = 0
self.seqRndWeight = [1]
if self.vtype == 'ARIA':
self.scaleType = ['CHORD']
else:
self.scaleType = ['AUTO']
self.rVolume = [0]
self.rSkip = [0]
@ -1502,12 +1367,13 @@ class PC:
if self.riff:
if len(self.riff) > 1:
warning("%s sequence clear deleting %s riffs." % (self.name, len(self.riff)))
warning("%s sequence clear deleting %s riffs" % (self.name, len(self.riff)))
else:
warning("%s sequence clear deleting unused riff" % self.name )
self.riff = []
if self.vtype == 'CHORD':
self.voicing = Voicing()
self.direction = ['UP']
@ -1580,10 +1446,10 @@ class PC:
def mulPatRiff(oldpat, fact):
""" Multiply a pattern. """
fact = stoi(fact, "The multiplier arg must be an integer not '%s'." % fact)
fact = stoi(fact, "The multiplier arg must be an integer not '%s'" % fact)
if fact<1 or fact >100:
error("The multiplier arg must be in the range 2 to 100.")
error("The multiplier arg must be in the range 2 to 100")
""" Make N copies of pattern, adjusted so that the new copy has
@ -1612,7 +1478,7 @@ class PC:
def shiftPatRiff(oldpat, fact):
fact = stof(fact, "The shift arg must be a value, not '%s'." % fact)
fact = stof(fact, "The shift arg must be a value, not '%s'" % fact)
# Adjust all the beat offsets
@ -1622,7 +1488,7 @@ class PC:
n.offset += fact * gbl.BperQ
if n.offset < 0 or n.offset > max:
error("Pattern shift with factor %f has resulted in an "
"illegal offset." % fact )
"illegal offset" % fact )
return tuple( new )
@ -1652,8 +1518,7 @@ class PC:
for i,e in enumerate(ev):
if e.upper() in ('SHIFT', '*'):
if i == 0:
error("Pattern definition can't start with"
"SHIFT or *")
error("Pattern definition can't start with SHIFT or *")
more = ev[i:]
ev=ev[:i]
break
@ -1663,12 +1528,11 @@ class PC:
if nm in pats:
if nm[0].startswith('_'):
error("You can't use a pattern name beginning"
" with an underscore.")
error("You can't use a pattern name beginning with an underscore")
pt = pats[nm]
else:
error("%s is not an existing %s pattern." % (nm[1], nm[0].title()) )
error("%s is not an existing %s pattern" % (nm[1], nm[0].title()) )
else:
pt = [self.getPgroup(ev)]
@ -1676,7 +1540,7 @@ class PC:
while more:
cmd = more.pop(0)
if cmd not in ('SHIFT', '*'):
error("Expecting SHIFT or *, not '%s'." % cmd)
error("Expecting SHIFT or *, not '%s'" % cmd)
if not more:
error("Expecting factor after %s" % cmd)
@ -1790,7 +1654,7 @@ class PC:
gbl.tnames[a].ssvoice = v
if gbl.debug:
print "Track %s Voice %s inserted." \
print "Track %s Voice %s inserted" \
% (self.name, MMA.midiC.valueToInst(v) )
""" Our 2nd stab at MIDIVOICE. This time any sequences
@ -1842,13 +1706,13 @@ class PC:
for x, i in enumerate(self.seqRndWeight):
tmp.extend([x] * i)
if not len(tmp):
error("SeqRndWeight has generated an empty list.")
error("SeqRndWeight has generated an empty list")
self.seq = random.choice(tmp)
else:
self.seq = gbl.seqCount
sc = self.seq
#print self.name, sc
""" Get pattern for this sequence. Either a Riff or a Pattern. """
if self.riff:
@ -1893,19 +1757,19 @@ class PC:
if c == 'TNAME':
gbl.mtrks[self.channel].addTrkName(off, v)
if gbl.debug:
print "%s Track name inserted at offset %s." % \
print "%s Track name inserted at offset %s" % \
(self.name, off)
elif c == 'GLIS':
gbl.mtrks[self.channel].addGlis(off, v)
if gbl.debug:
print "%s Glis at offset %s set to %s." % \
print "%s Glis at offset %s set to %s" % \
(self.name, off, ord(chr(v)))
elif c == 'PAN':
gbl.mtrks[self.channel].addPan(off, v)
if gbl.debug:
print "%s Pan at offset %s set to %s." % \
print "%s Pan at offset %s set to %s" % \
(self.name, off, v)
elif c == 'CVOLUME':
@ -1915,7 +1779,7 @@ class PC:
(self.name, off, v)
else:
error("Unknown midi command pending. Call Bob.")
error("Unknown midi command pending. Call Bob")
@ -2040,13 +1904,13 @@ class PC:
if v < 0:
if v<-gbl.BperQ:
error("Defining %s Pattern, bar offset must be 0 or greater." %
error("Defining %s Pattern, bar offset must be 0 or greater" %
self.name)
else:
warning("Offset in '%s' is '%s ticks' before bar start!" % (self.name, -v))
if v >= gbl.QperBar * gbl.BperQ:
error("Defining %s Pattern, bar offset must be less than %s." %
error("Defining %s Pattern, bar offset must be less than %s" %
(self.name, gbl.QperBar + 1))

228
mma/MMA/patAria.py Normal file
View File

@ -0,0 +1,228 @@
# patAria.py
"""
This module is an integeral part of the program
MMA - Musical Midi Accompaniment.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bob@mellowood.ca>
"""
import gbl
from MMA.notelen import getNoteLen
from MMA.common import *
from MMA.harmony import harmonize
from MMA.pat import PC, seqBump
import random
class Aria(PC):
""" Pattern class for an aria (auto-melody) track. """
vtype = 'ARIA'
notes = []
selectDir = [1]
noteptr = 0
dirptr = 0
lastChord = None
lastStype = None
lastRange = None
def restoreGroove(self, gname):
""" Grooves are not saved/restored for aria tracks. But, seqsize is honored! """
self.setSeqSize()
def saveGroove(self, gname):
""" No save done for grooves. """
pass
def getPgroup(self, ev):
""" Get group for aria pattern.
Fields - start, length, velocity
"""
if len(ev) != 3:
error("There must be n groups of 3 in a pattern definition, "
"not <%s>" % ' '.join(ev) )
a = struct()
a.offset = self.setBarOffset(ev[0])
a.duration = getNoteLen( ev[1] )
a.vol = stoi(ev[2], "Note volume in Aria definition not int")
return a
def setScaletype(self, ln):
""" Set scale type. """
ln = self.lnExpand(ln, "ScaleType")
tmp = []
for n in ln:
n = n.upper()
if not n in ( 'CHROMATIC', 'AUTO', 'CHORD'):
error("Unknown %s ScaleType. Only Chromatic, Scale and Chord are valid" % self.name)
tmp.append(n)
self.scaleType = seqBump(tmp)
if gbl.debug:
print "Set %s ScaleType: " % self.name,
printList(self.scaleType)
def setDirection(self, ln):
""" Set direction for melody creation.
This function replaces the pattern function of the same name ...
the command name is shared, the function is different. Note we
need to use a different storage name as well since
self.direction is managed in the PC class.
"""
if not len(ln):
error("There must be at least one value for %s Direction." % self.name)
self.selectDir = []
for a in ln:
if a.upper() == 'R':
self.selectDir.append(a.upper())
else:
a=stoi(a, "Expecting integer value or 'r'.")
if a < -4 or a > 4:
error("Aria direction must be 'r' or -4 to 4, not '%s'" % a)
self.selectDir.append(a)
if gbl.debug:
print "Set %s Direction:" % self.name,
printList(self.selectDir)
def restart(self):
self.ssvoice = -1
def trackBar(self, pattern, ctable):
""" Do the aria bar.
Called from self.bar()
"""
sc = self.seq
unify = self.unify[sc]
for p in pattern:
ct = self.getChordInPos(p.offset, ctable)
if ct.ariaZ:
continue
thisChord = ct.chord.tonic + ct.chord.chordType
stype = self.scaleType[sc]
range = self.chordRange[sc]
### Generate notelist if nesc.
if self.lastChord != thisChord or self.lastStype != stype or \
self.lastRange != range:
self.lastChord = thisChord
self.lastStype = stype
self.lastRange = range
if stype == 'CHORD':
notelist = ct.chord.noteList
elif stype == 'CHROMATIC':
notelist = [ ct.chord.rootNote + x for x in range(0,12)]
else:
notelist = list(ct.chord.scaleList)
o=0
self.notes=[]
while range >= 1:
for a in notelist:
self.notes.append(a+o)
o+=12
range-=1
if range>0 and range<1: # for fractional scale lengths
range = int(len(notelist) * range)
if range < 2: # important, must be at least 2 notes in a scale
range=2
for a in notelist[:range]:
self.notes.append(a+o)
# grab a note from the list
if self.dirptr >= len(self.selectDir):
self.dirptr=0
a = self.selectDir[self.dirptr]
if a == 'R':
a = random.choice( (-1, 0, 1) )
self.noteptr += a
if self.noteptr >= len(self.notes):
if a > 0:
self.noteptr = 0
else:
self.noteptr = len(self.notes)-1
elif self.noteptr < 0:
if a < 0:
self.noteptr = len(self.notes)-1
else:
self.noteptr = 0
note = self.notes[self.noteptr]
self.dirptr += 1
# output
if not self.harmonyOnly[sc]:
self.sendNote(
p.offset,
self.getDur(p.duration),
self.adjustNote(note),
self.adjustVolume(p.vol, p.offset))
if self.harmony[sc]:
h = harmonize(self.harmony[sc], note, ct.chord.noteList)
for n in h:
self.sendNote(
p.offset,
self.getDur(p.duration),
self.adjustNote(n),
self.adjustVolume(p.vol * self.harmonyVolume[sc], -1))

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -49,11 +49,11 @@ class Arpeggio(PC):
a = struct()
if len(ev) != 3:
error("There must be exactly 3 items in each group "
"for apreggio define, not <%s>." % ' '.join(ev) )
"for apreggio define, not '%s'" % ' '.join(ev) )
a.offset = self.setBarOffset(ev[0])
a.duration = getNoteLen(ev[1])
a.vol = stoi(ev[2], "Type error in Arpeggio definition.")
a.vol = stoi(ev[2], "Type error in Arpeggio definition")
return a

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -46,7 +46,7 @@ class Bass(PC):
if len(ev) != 4:
error("There must be n groups of 4 in a pattern definition, "
"not <%s>." % ' '.join(ev) )
"not <%s>" % ' '.join(ev) )
a = struct()
@ -82,7 +82,7 @@ class Bass(PC):
else:
error("Only '- + # b &' are permitted after a noteoffset, not '%s'" % n)
a.vol = stoi(ev[3], "Note volume in Bass definition not int.")
a.vol = stoi(ev[3], "Note volume in Bass definition not int")
return a

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -29,7 +29,8 @@ import random
import gbl
from MMA.notelen import getNoteLen
from MMA.common import *
from MMA.pat import PC
from MMA.pat import PC, seqBump
class Chord(PC):
@ -38,6 +39,141 @@ class Chord(PC):
vtype = 'CHORD'
def setVoicing(self, ln):
""" set the Voicing Mode options. Only valid for CHORDS. """
for l in ln:
try:
mode, val = l.upper().split('=')
except:
error("Each Voicing option must contain a '=', not '%s'" % l)
if mode == 'MODE':
valid= ("-", "OPTIMAL", "NONE", "ROOT", "COMPRESSED", "INVERT")
if not val in valid:
error("Valid Voicing Modes are: %s" % " ".join(valid))
if val in ('-', 'NONE',"ROOT"):
val = None
if val and (max(self.invert) + max(self.compress)):
warning("Setting both VoicingMode and Invert/Compress is not a good idea")
""" When we set voicing mode we always reset this. This forces
the voicingmode code to restart its rotations.
"""
self.lastChord = []
self.voicing.mode = val
elif mode == 'RANGE':
val = stoi(val, "Argument for %s Voicing Range "
"must be a value" % self.name)
if val < 1 or val > 30:
error("Voicing Range '%s' out-of-range; "
"must be 1 to 30" % val)
self.voicing.range = val
elif mode == 'CENTER':
val = stoi(val, "Argument for %s Voicing Center "
"must be a value" % self.name)
if val < 1 or val > 12:
error("Voicing Center %s out-of-range; "
"must be 1 to 12" % val)
self.voicing.center = val
elif mode == 'RMOVE':
val = stoi(val, "Argument for %s Voicing Random "
"must be a value" % self.name)
if val < 0 or val > 100:
error("Voicing Random value must be 0 to 100 "
"not %s" % val)
self.voicing.random = val
self.voicing.bcount = 0
elif mode == 'MOVE':
val = stoi(val, "Argument for %s Voicing Move "
"must be a value" % self.name)
if val < 0 :
error("Voicing Move (bar count) must >= 0, not %s" % val)
if val > 20:
warning("Voicing Move (bar count) %s is quite large" % val)
self.voicing.bcount = val
self.voicing.random = 0
elif mode == 'DIR':
val = stoi(val, "Argument for %s Voicing Dir (move direction) "
"must be a value" % self.name)
if not val in (1,0,-1):
error("Voicing Move Dir -1, 0 or 1, not %s" % val)
self.voicing.dir = val
if gbl.debug:
v=self.voicing
print "Set %s Voicing MODE=%s" % (self.name, v.mode),
print "RANGE=%s CENTER=%s" % (v.range, v.center),
print "RMOVE=%s MOVE=%s DIR=%s" % (v.random, v.bcount, v.dir)
def setDupRoot(self, ln):
""" set/unset root duplication. Only for CHORDs """
ln=self.lnExpand(ln, 'DupRoot')
tmp = []
for n in ln:
n = stoi(n, "Argument for %s DupRoot must be a value" % self.name)
if n < -9 or n > 9:
error("DupRoot %s out-of-range; must be -9 to 9" % n)
tmp.append( n * 12 )
self.dupRoot = seqBump(tmp)
if gbl.debug:
print "Set %s DupRoot to " % self.name,
printList(ln)
def setStrum(self, ln):
""" Set Strum time. """
ln=self.lnExpand(ln, 'Strum')
tmp = []
for n in ln:
n = stoi(n, "Argument for %s Strum must be an integer" % self.name)
if n < 0 or n > 100:
error("Strum %s out-of-range; must be 0..100" % n)
tmp.append(n)
self.strum = seqBump(tmp)
if gbl.debug:
print "Set %s Strum to %s" % (self.name, self.strum)
def getPgroup(self, ev):
""" Get group for chord pattern.
@ -46,7 +182,7 @@ class Chord(PC):
if len(ev) < 3:
error("There must be at least 3 items in each group "
"of a chord pattern definition, not <%s>." % ' '.join(ev))
"of a chord pattern definition, not <%s>" % ' '.join(ev))
a = struct()
@ -55,11 +191,11 @@ class Chord(PC):
vv = ev[2:]
if len(vv)>8:
error("Only 8 volumes are permitted in Chord definition, not %s." % len(vv))
error("Only 8 volumes are permitted in Chord definition, not %s" % len(vv))
a.vol = [0] * 8
for i,v in enumerate(vv):
v=stoi(v, "Expecting integer in volume list for Chord definition.")
v=stoi(v, "Expecting integer in volume list for Chord definition")
a.vol[i]=v
for i in range(i+1,8): # force remaining volumes

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -36,6 +36,16 @@ class Drum(PC):
vtype = 'DRUM'
toneList = [38]
def __init__(self, ln):
""" init for drum track. """
PC.__init__(self, ln)
self.setChannel('10')
if not gbl.mtrks[self.channel].trackname:
gbl.mtrks[self.channel].addTrkName(0, 'Drum')
def setTone(self, ln):
""" Set a tone list. Only valid for DRUMs.
ln[] is not nesc. the right length.
@ -49,6 +59,7 @@ class Drum(PC):
self.toneList = seqBump( tmp )
def restart(self):
self.ssvoice = -1
@ -61,13 +72,13 @@ class Drum(PC):
if len(ev) != 3:
error("There must be at exactly 3 items in each "
"group of a drum define, not <%s>." % ' '.join(ev) )
"group of a drum define, not <%s>" % ' '.join(ev) )
a = struct()
a.offset = self.setBarOffset(ev[0])
a.duration = getNoteLen(ev[1])
a.vol = stoi(ev[2], "Type error in Drum volume.")
a.vol = stoi(ev[2], "Type error in Drum volume")
return a

View File

@ -19,20 +19,17 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
import random
from MMA.harmony import harmonize
from MMA.notelen import getNoteLen
import gbl
from MMA.common import *
from MMA.pat import PC
from MMA.pat import PC, seqBump
class Scale(PC):
@ -69,6 +66,25 @@ class Scale(PC):
return a
def setScaletype(self, ln):
""" Set scale type. """
ln = self.lnExpand(ln, "ScaleType")
tmp = []
for n in ln:
n = n.upper()
if not n in ( 'CHROMATIC', 'AUTO'):
error("Unknown %s ScaleType. Only Chromatic and Auto are valid" % self.name)
tmp.append(n)
self.scaleType = seqBump(tmp)
if gbl.debug:
print "Set %s ScaleType to " % self.name,
printList(ln)
def restart(self):
self.ssvoice = -1
self.lastNote = -1

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -58,14 +58,14 @@ class Melody(PC):
""" Set this track to be a drum track. """
if self.channel:
error("You cannot change a track to DRUM once it has been used.")
error("You cannot change a track to DRUM once it has been used")
self.drumType = 1
self.setChannel('10')
def definePattern(self, name, ln):
error("Melody/solo patterns cannot be defined.")
error("Melody/solo patterns cannot be defined")
def restart(self):
@ -75,20 +75,31 @@ class Melody(PC):
""" A solo track can have a tone, if it is DRUMTYPE."""
if not self.drumType:
error("You must set a Solo track to DrumType before setting Tone.")
error("You must set a Solo track to DrumType before setting Tone")
if len(ln) > 1:
error("Only 1 value permitted for Drum Tone in Solo tracks.")
error("Only 1 value permitted for Drum Tone in Solo tracks")
self.drumTone = MMA.translate.dtable.get(ln[0])
def getLine(self, pat, ctable):
""" Extract a melodyline for solo/melody tracks.
This is only called from trackbar(), but it's nicer
to isolate it here.
RETURNS: notes structure. This is a dictionary. Each key represents
an offset in MIDI ticks in the current bar. The data for
each entry is an array of notes, a duration and velocity:
notes[offset].dur - duration in ticks
notes[offset].velocity[] - velocity for notes
notes[offset].defaultVel - default velocity for this offset
notes[offset].nl[] - list of notes (if the only note value
is None this is a rest placeholder)
"""
sc = self.seq
@ -127,8 +138,6 @@ class Melody(PC):
length = getNoteLen('4') # default note length
lastc = '' # last parsed note
velocity = 90 # intial/default velocity for solo notes
harmony = self.harmony[sc]
harmOnly = self.harmonyOnly[sc]
notes={} # A dict of NoteList, keys == offset
@ -145,7 +154,7 @@ class Melody(PC):
if pat[0].startswith("~"):
pat[0]=pat[0][1:]
if not self.endTilde or self.endTilde[1] != gbl.tickOffset:
error("Previous line did not end with '~'.")
error("Previous line did not end with '~'")
else:
offset = self.endTilde[0]
else:
@ -168,7 +177,7 @@ class Melody(PC):
continue
if offset >= barEnd:
error("Attempt to start Solo note '%s' after end of bar." % a)
error("Attempt to start Solo note '%s' after end of bar" % a)
# strip out all '<volume>' setting and adjust velocity
@ -231,13 +240,12 @@ class Melody(PC):
name = c.pop(0)
if name == 'r' and (offset in notes or c):
error("You cannot combine a rest with a note in "
"a chord for solos.")
error("You cannot combine a rest with a note in a chord for solos")
if not isdrum:
if not name in midiNotes:
error("%s encountered illegal note name '%s'."
error("%s encountered illegal note name '%s'"
% (self.name, name))
v = midiNotes[ name ]
@ -306,38 +314,7 @@ class Melody(PC):
notes[offset].nl.append(v)
notes[offset].velocity.append(self.adjustVolume(velocity, offset))
""" Do harmony. This is done for each chord as they are
parsed out. So, after parsing out the "16g" from the solo
string "4a;16g;4c;" we add the harmony notes to the 'g' note.
The chord is not processed if this is a "drum-type", if there is
more than one note in the chord (we assume user harmony),
if the chord for the current beat is a 'z', or if the note
is a 'rest' (note==None).
"""
if harmony and offset in notes and not isdrum:
nn=notes[offset]
if len(nn.nl) == 1 and nn.nl[0] != None:
tb = self.getChordInPos(offset, ctable)
if not tb.chordZ:
h = harmonize(harmony, nn.nl[0], tb.chord.bnoteList)
""" If harmonyonly set then drop note, substitute harmony,
else append harmony notes to chord.
"""
for i in range(len(h)):
nn.velocity.append(self.adjustVolume(velocity *
self.harmonyVolume[sc], offset))
if harmOnly:
nn.nl = h
else:
nn.nl.extend(h)
notes[offset].defaultVel = velocity # needed for addHarmony()
lastOffset = offset
offset += l
@ -345,7 +322,7 @@ class Melody(PC):
if offset <= barEnd:
if self.endTilde:
error("Tilde at end of bar has no effect.")
error("Tilde at end of bar has no effect")
else:
if self.endTilde:
@ -357,21 +334,55 @@ class Melody(PC):
return notes
def addHarmony(self, notes, ctable):
""" Add harmony to solo notes. """
sc=self.seq
harmony = self.harmony[sc]
harmOnly = self.harmonyOnly[sc]
for offset in notes:
nn = notes[offset]
if len(nn.nl) == 1 and nn.nl[0] != None:
tb = self.getChordInPos(offset, ctable)
if tb.chordZ:
continue
h = harmonize(harmony, nn.nl[0], tb.chord.bnoteList)
""" If harmonyonly set then drop note, substitute harmony,
else append harmony notes to chord.
"""
if harmOnly:
nn.nl = h
nn.velocity = []
off=0
else:
nn.nl.extend(h)
off=1
# Create velocites for harmony note(s)
for i in range(off,len(nn.nl)):
nn.velocity.append(self.adjustVolume(nn.defaultVel *
self.harmonyVolume[sc], offset))
return notes
def trackBar(self, pat, ctable):
""" Do the solo/melody line. Called from self.bar() """
notes = self.getLine(pat, ctable)
""" The notes structure is a dictionary. Each key represents an offset
in MIDI ticks in the current bar. The data for each entry is an array
of notes, a duration and velocity:
notes[offset].dur - duration in ticks
notes[offset].velocity[] - velocity for notes
notes[offset].nl[] - list of notes (if the only note value is None
this is a rest placeholder)
"""
if self.harmony[self.seq] and not self.drumType:
self.addHarmony(notes, ctable)
sc=self.seq
unify = self.unify[sc]
@ -438,7 +449,7 @@ class KeySig:
mi = 0
if len(ln) < 1 or len(ln) > 2:
error("KeySig only takes 1 or 2 arguments.")
error("KeySig only takes 1 or 2 arguments")
if len(ln) == 2:
l=ln[1][0:3].upper()
@ -528,6 +539,7 @@ class KeySig:
keySig=KeySig() # single instance
#######################
""" When solos are included in a chord/data line they are
@ -546,15 +558,14 @@ def setAutoSolo(ln):
global autoSoloTracks
if not len(ln):
error("You must specify at least one track for autosolos.")
error("You must specify at least one track for autosolos")
autoSoloTracks = []
for n in ln:
n=n.upper()
MMA.alloc.trackAlloc(n, 1)
if gbl.tnames[n].vtype not in ('MELODY', 'SOLO'):
error("All autotracks must be Melody or Solo tracks, "
"not %s." % gbl.tnames[n].vtype)
error("All autotracks must be Melody or Solo tracks, not %s" % gbl.tnames[n].vtype)
autoSoloTracks.append(n)
@ -568,6 +579,7 @@ def setAutoSolo(ln):
###############
def extractSolo(ln, rptcount):
""" Parser calls this to extract solo strings. """
@ -575,17 +587,17 @@ def extractSolo(ln, rptcount):
b = ln.count('}')
if a != b:
error("Mismatched {}s for solo found in chord line.")
error("Mismatched {}s for solo found in chord line")
if a:
if rptcount > 1:
error("Bars with both repeat count and solos are not permitted.")
error("Bars with both repeat count and solos are not permitted")
ln, solo = pextract(ln, '{', '}')
if len(solo) > len(autoSoloTracks):
error("Too many melody/solo riffs in chord line. %s used, "
"only %s defined." % (len(solo), len(autoSoloTracks)) )
"only %s defined" % (len(solo), len(autoSoloTracks)) )
firstSolo = solo[0][:] # save for autoharmony tracks

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -47,7 +47,7 @@ class Walk(PC):
if len(ev) != 3:
error("There must be at exactly 3 items in each group in "
"a Walking Bass definition, not <%s>." % ' '.join(ev))
"a Walking Bass definition, not <%s>" % ' '.join(ev))
a = struct()

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
This module handles voice name translations.
@ -33,7 +33,8 @@ from MMA.common import *
""" Translation table for VOICE. This is ONLY used when a voice is set
from the VOICE command. If a translation exists the translation is
substituted. """
substituted.
"""
class Vtable:
@ -88,7 +89,8 @@ vtable=Vtable() # Create single class instance.
""" This is just like the Vtable, but it is used for DRUM TONES. We use
this translation when a TONE is set for a drum in setTone() and when a
tone is selected in a Solo/Melody DRUM track. """
tone is selected in a Solo/Melody DRUM track.
"""
class Dtable:
@ -149,7 +151,8 @@ dtable=Dtable()
""" Volume adjustment. Again, similar to voice/tone translations,
but this is for the volume. The table creates a percentage adjustment
for tones/voices specified. When a TRACK VOLUME is set in
MMApat.setVolume() the routine checks here for an adjustment. """
MMApat.setVolume() the routine checks here for an adjustment.
"""
class VoiceVolTable:
@ -183,7 +186,7 @@ class VoiceVolTable:
v=MMA.midiC.instToValue(v)
a=stoi(a)
if a<1 or a>200:
error("Voice volume adjustments must be in range 1 to 200, not %." % a)
error("Voice volume adjustments must be in range 1 to 200, not %s" % a)
self.table[v] = a/100.
if gbl.debug:
print "Voice Volume Adjustment: %s=%s" % (MMA.midiC.valueToInst(v), a)
@ -233,7 +236,7 @@ class DrumVolTable:
v=MMA.midiC.instToValue(v)
a=stoi(a)
if a<1 or a>200:
error("Drum volume adjustments must be in range 1 to 200, not %." % a)
error("Drum volume adjustments must be in range 1 to 200, not %s" % a)
self.table[v] = a/100.
if gbl.debug:
print "Drum Volume Adjustment: %s=%s" % (MMA.midiC.valueToDrum(v), a)

View File

@ -19,7 +19,7 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Bob van der Poel <bvdp@xplornet.com>
Bob van der Poel <bob@mellowood.ca>
"""
@ -54,14 +54,14 @@ def adjvolume(ln):
global vols, vTRatio, vMRatio
if not ln:
error("Use: AdjustVolume DYN=RATIO [..].")
error("Use: AdjustVolume DYN=RATIO [..]")
for l in ln:
try:
v,r = l.split('=')
except:
error("AdjustVolume expecting DYN=RATIO pair, not '%s'." % l)
error("AdjustVolume expecting DYN=RATIO pair, not '%s'" % l)
v=v.upper()
@ -70,7 +70,7 @@ def adjvolume(ln):
r=stof(r)
if r<0 or r>100:
error("VolumeRatio must be value 0 to 100.")
error("VolumeRatio must be value 0 to 100")
vTRatio = r/100
vMRatio = 1-vTRatio
@ -79,7 +79,7 @@ def adjvolume(ln):
vols[v] = calcVolume(r, vols[v])
else:
error("Dynamic '%s' for AdjustVolume is unknown." % v )
error("Dynamic '%s' for AdjustVolume is unknown" % v )
@ -96,7 +96,7 @@ def calcVolume(new, old):
""" Calculate a new volume "new" possibly adjusting from "old". """
if new[0] == '-' or new[0] == '+':
a = stoi(new, "Volume expecting value for %% adjustment, not %s." % new)
a = stoi(new, "Volume expecting value for %% adjustment, not %s" % new)
v = old + (old * a/100.)
elif new[0] in "0123456789":
@ -114,12 +114,12 @@ def calcVolume(new, old):
adj = '-' + adj
if not new in vols:
error("Unknown volume '%s'." % new)
error("Unknown volume '%s'" % new)
v=vols[new]
if adj:
a = stoi(adj, "Volume expecting adjustment value, not %s." % adj)
a = stoi(adj, "Volume expecting adjustment value, not %s" % adj)
v += (v * (a/100.))
return v
@ -133,7 +133,7 @@ def setVolume(ln):
lastVolume = volume
if len(ln) != 1:
error ("Use: Volume DYNAMIC.")
error ("Use: Volume DYNAMIC")
volume = calcVolume(ln[0], volume)
@ -157,11 +157,13 @@ def setCrescendo(dir, ln):
lastVolume = volume
if len(ln) not in (2, 3):
error("Usage: (De)Cresc [start-Dynamic] final-Dynamic bar-count")
if len(ln) == 3:
setVolume([ln[0]])
ln=ln[1:]
futureVol = fvolume(dir, volume, ln)
@ -174,19 +176,19 @@ def fvolume(dir, startvol, ln):
destvol = calcVolume(ln[0], startvol)
bcount = stoi(ln[1], "Type error in bar count for (De)Cresc, '%s'." % ln[1] )
bcount = stoi(ln[1], "Type error in bar count for (De)Cresc, '%s'" % ln[1] )
if bcount <= 0:
error("Bar count for (De)Cresc must be postive.")
error("Bar count for (De)Cresc must be postive")
if dir > 0 and destvol < startvol:
warning("Cresc volume less than current setting. " )
warning("Cresc volume less than current setting" )
elif dir < 0 and destvol > startvol:
warning("Decresc volume greater than current setting. " )
warning("Decresc volume greater than current setting" )
elif destvol == startvol:
warning("(De)Cresc volume equal to current setting. " )
warning("(De)Cresc volume equal to current setting" )
bcount -= 1
step = ( destvol-startvol ) / bcount

View File

@ -15,15 +15,40 @@ def okay(msg):
# Simple python script to install mma from tarball
# This should be fixed to be more versatile. Volunteers?
###########################################
####### Banner, get destination
# Before we do anything, make sure we have an up-to-date python.
pyMaj=2
pyMin=4
if sys.version_info[0] < pyMaj or sys.version_info[1] < pyMin:
print
print "You need a more current version of Python to run MMA and this install script."
print "We're looking for something equal or greater than version %s.%s" % \
(pyMaj,pyMin)
print "Current Python version is ", sys.version
print
sys.exit(0)
# Banner. Check to make sure user has root permissions.
print """
This script will install mma, the standard library and the
python modules.
"""
YOU WILL NEED TO BE LOGGED IN AS ROOT TO CONTINUE!
try:
u=os.getuid()
except:
u=1
if u:
okay("""You do not appear to be running this script as 'root' user.
Continuing will probably cause all kinds of strange errors
and a generally unsatisfactory experience. But, we can try...
""")
print """
We recommend that you install the package with this script
in the default locations. This script will create a
directory 'mma' in /usr/local/share. If this isn't
@ -48,6 +73,7 @@ bin='/usr/local/bin/mma'
if os.path.exists(bin):
okay("Existing mma executable '%s' is being overwritten." % bin)
os.remove(bin)
print "Copying mma to", bin

View File

@ -48,6 +48,8 @@ information from the each library file:
<LI> The file description from the "Doc Note" directive.
<LI> Any user variables documented in "DocVar" directives.
<LI> Each groove description: This is the optional text following a
<em>DefGroove</em> directive.
@ -72,79 +74,92 @@ information from the each library file:
<CENTER> <H2> Index </H2> </CENTER>
<ul><li> <A Href=#stdlib> <h2> Stdlib </h2> </a> </li>
<li> <A Href=#kara> <h2> Kara </h2> </a> </li></ul><HR Size=3pt><P><h3>These grooves can be used from a program just by using their name.</h3>
<li> <A Href=#kara> <h2> Kara </h2> </a> </li>
<li> <A Href=#yamaha> <h2> Yamaha </h2> </a> </li></ul><HR Size=3pt><P><h3>These grooves can be used from a program just by using their name.</h3>
<A Name =stdlib></a>
<h2> Stdlib </h2>
<ul>
<li> <A Href = stdlib/folk.html> stdlib/folk.mma </a> </li>
<li> <A Href = stdlib/rhumba.html> stdlib/rhumba.mma </a> </li>
<li> <A Href = stdlib/tango.html> stdlib/tango.mma </a> </li>
<li> <A Href = stdlib/waltz.html> stdlib/waltz.mma </a> </li>
<li> <A Href = stdlib/50srock.html> stdlib/50srock.mma </a> </li>
<li> <A Href = stdlib/60srock.html> stdlib/60srock.mma </a> </li>
<li> <A Href = stdlib/8beat.html> stdlib/8beat.mma </a> </li>
<li> <A Href = stdlib/blues.html> stdlib/blues.mma </a> </li>
<li> <A Href = stdlib/foxtrot.html> stdlib/foxtrot.mma </a> </li>
<li> <A Href = stdlib/jazz-54.html> stdlib/jazz-54.mma </a> </li>
<li> <A Href = stdlib/swing.html> stdlib/swing.mma </a> </li>
<li> <A Href = stdlib/march.html> stdlib/march.mma </a> </li>
<li> <A Href = stdlib/ballad.html> stdlib/ballad.mma </a> </li>
<li> <A Href = stdlib/ballad128.html> stdlib/ballad128.mma </a> </li>
<li> <A Href = stdlib/basicrock.html> stdlib/basicrock.mma </a> </li>
<li> <A Href = stdlib/beguine.html> stdlib/beguine.mma </a> </li>
<li> <A Href = stdlib/dixie.html> stdlib/dixie.mma </a> </li>
<li> <A Href = stdlib/calypso.html> stdlib/calypso.mma </a> </li>
<li> <A Href = stdlib/bigband.html> stdlib/bigband.mma </a> </li>
<li> <A Href = stdlib/jazzwaltz.html> stdlib/jazzwaltz.mma </a> </li>
<li> <A Href = stdlib/softrock.html> stdlib/softrock.mma </a> </li>
<li> <A Href = stdlib/countryswing.html> stdlib/countryswing.mma </a> </li>
<li> <A Href = stdlib/bluegrass.html> stdlib/bluegrass.mma </a> </li>
<li> <A Href = stdlib/polka.html> stdlib/polka.mma </a> </li>
<li> <A Href = stdlib/blues.html> stdlib/blues.mma </a> </li>
<li> <A Href = stdlib/boggiewoggie.html> stdlib/boggiewoggie.mma </a> </li>
<li> <A Href = stdlib/bolero.html> stdlib/bolero.mma </a> </li>
<li> <A Href = stdlib/bossanova.html> stdlib/bossanova.mma </a> </li>
<li> <A Href = stdlib/broadway.html> stdlib/broadway.mma </a> </li>
<li> <A Href = stdlib/calypso.html> stdlib/calypso.mma </a> </li>
<li> <A Href = stdlib/chacha.html> stdlib/chacha.mma </a> </li>
<li> <A Href = stdlib/countryblues.html> stdlib/countryblues.mma </a> </li>
<li> <A Href = stdlib/countryswing.html> stdlib/countryswing.mma </a> </li>
<li> <A Href = stdlib/countrywaltz.html> stdlib/countrywaltz.mma </a> </li>
<li> <A Href = stdlib/desert.html> stdlib/desert.mma </a> </li>
<li> <A Href = stdlib/dixie.html> stdlib/dixie.mma </a> </li>
<li> <A Href = stdlib/dixiemarch.html> stdlib/dixiemarch.mma </a> </li>
<li> <A Href = stdlib/easyswing.html> stdlib/easyswing.mma </a> </li>
<li> <A Href = stdlib/fastblues.html> stdlib/fastblues.mma </a> </li>
<li> <A Href = stdlib/folk.html> stdlib/folk.mma </a> </li>
<li> <A Href = stdlib/foxtrot.html> stdlib/foxtrot.mma </a> </li>
<li> <A Href = stdlib/frenchwaltz.html> stdlib/frenchwaltz.mma </a> </li>
<li> <A Href = stdlib/guitarballad.html> stdlib/guitarballad.mma </a> </li>
<li> <A Href = stdlib/hillcountry.html> stdlib/hillcountry.mma </a> </li>
<li> <A Href = stdlib/jazz-54.html> stdlib/jazz-54.mma </a> </li>
<li> <A Href = stdlib/jazzguitar.html> stdlib/jazzguitar.mma </a> </li>
<li> <A Href = stdlib/jazzwaltz.html> stdlib/jazzwaltz.mma </a> </li>
<li> <A Href = stdlib/jive.html> stdlib/jive.mma </a> </li>
<li> <A Href = stdlib/lfusion.html> stdlib/lfusion.mma </a> </li>
<li> <A Href = stdlib/lighttango.html> stdlib/lighttango.mma </a> </li>
<li> <A Href = stdlib/lullaby.html> stdlib/lullaby.mma </a> </li>
<li> <A Href = stdlib/mambo.html> stdlib/mambo.mma </a> </li>
<li> <A Href = stdlib/march.html> stdlib/march.mma </a> </li>
<li> <A Href = stdlib/merengue.html> stdlib/merengue.mma </a> </li>
<li> <A Href = stdlib/metronome.html> stdlib/metronome.mma </a> </li>
<li> <A Href = stdlib/rockballad.html> stdlib/rockballad.mma </a> </li>
<li> <A Href = stdlib/ballad.html> stdlib/ballad.mma </a> </li>
<li> <A Href = stdlib/metronome3.html> stdlib/metronome3.mma </a> </li>
<li> <A Href = stdlib/modernjazz.html> stdlib/modernjazz.mma </a> </li>
<li> <A Href = stdlib/pianoballad.html> stdlib/pianoballad.mma </a> </li>
<li> <A Href = stdlib/polka.html> stdlib/polka.mma </a> </li>
<li> <A Href = stdlib/popballad.html> stdlib/popballad.mma </a> </li>
<li> <A Href = stdlib/quickstep.html> stdlib/quickstep.mma </a> </li>
<li> <A Href = stdlib/rb.html> stdlib/rb.mma </a> </li>
<li> <A Href = stdlib/rhumba.html> stdlib/rhumba.mma </a> </li>
<li> <A Href = stdlib/rock-128.html> stdlib/rock-128.mma </a> </li>
<li> <A Href = stdlib/rockballad.html> stdlib/rockballad.mma </a> </li>
<li> <A Href = stdlib/samba.html> stdlib/samba.mma </a> </li>
<li> <A Href = stdlib/shuffleboggie.html> stdlib/shuffleboggie.mma </a> </li>
<li> <A Href = stdlib/ska.html> stdlib/ska.mma </a> </li>
<li> <A Href = stdlib/slowblues.html> stdlib/slowblues.mma </a> </li>
<li> <A Href = stdlib/countrywaltz.html> stdlib/countrywaltz.mma </a> </li>
<li> <A Href = stdlib/frenchwaltz.html> stdlib/frenchwaltz.mma </a> </li>
<li> <A Href = stdlib/vienesewaltz.html> stdlib/vienesewaltz.mma </a> </li>
<li> <A Href = stdlib/50srock.html> stdlib/50srock.mma </a> </li>
<li> <A Href = stdlib/metronome3.html> stdlib/metronome3.mma </a> </li>
<li> <A Href = stdlib/rock-128.html> stdlib/rock-128.mma </a> </li>
<li> <A Href = stdlib/slowjazz.html> stdlib/slowjazz.mma </a> </li>
<li> <A Href = stdlib/jive.html> stdlib/jive.mma </a> </li>
<li> <A Href = stdlib/modernjazz.html> stdlib/modernjazz.mma </a> </li>
<li> <A Href = stdlib/lfusion.html> stdlib/lfusion.mma </a> </li>
<li> <A Href = stdlib/zydeco.html> stdlib/zydeco.mma </a> </li>
<li> <A Href = stdlib/60srock.html> stdlib/60srock.mma </a> </li>
<li> <A Href = stdlib/countryblues.html> stdlib/countryblues.mma </a> </li>
<li> <A Href = stdlib/rb.html> stdlib/rb.mma </a> </li>
<li> <A Href = stdlib/bolero.html> stdlib/bolero.mma </a> </li>
<li> <A Href = stdlib/basicrock.html> stdlib/basicrock.mma </a> </li>
<li> <A Href = stdlib/boggiewoggie.html> stdlib/boggiewoggie.mma </a> </li>
<li> <A Href = stdlib/lighttango.html> stdlib/lighttango.mma </a> </li>
<li> <A Href = stdlib/desert.html> stdlib/desert.mma </a> </li>
<li> <A Href = stdlib/dixiemarch.html> stdlib/dixiemarch.mma </a> </li>
<li> <A Href = stdlib/slowcountry.html> stdlib/slowcountry.mma </a> </li>
<li> <A Href = stdlib/hillcountry.html> stdlib/hillcountry.mma </a> </li>
<li> <A Href = stdlib/samba.html> stdlib/samba.mma </a> </li>
<li> <A Href = stdlib/quickstep.html> stdlib/quickstep.mma </a> </li>
<li> <A Href = stdlib/broadway.html> stdlib/broadway.mma </a> </li>
<li> <A Href = stdlib/softshoe.html> stdlib/softshoe.mma </a> </li>
<li> <A Href = stdlib/pianoballad.html> stdlib/pianoballad.mma </a> </li>
<li> <A Href = stdlib/guitarballad.html> stdlib/guitarballad.mma </a> </li>
<li> <A Href = stdlib/son.html> stdlib/son.mma </a> </li>
<li> <A Href = stdlib/mambo.html> stdlib/mambo.mma </a> </li>
<li> <A Href = stdlib/chacha.html> stdlib/chacha.mma </a> </li>
<li> <A Href = stdlib/merengue.html> stdlib/merengue.mma </a> </li>
<li> <A Href = stdlib/slowbolero.html> stdlib/slowbolero.mma </a> </li>
<li> <A Href = stdlib/slowcountry.html> stdlib/slowcountry.mma </a> </li>
<li> <A Href = stdlib/slowjazz.html> stdlib/slowjazz.mma </a> </li>
<li> <A Href = stdlib/softrock.html> stdlib/softrock.mma </a> </li>
<li> <A Href = stdlib/softshoe.html> stdlib/softshoe.mma </a> </li>
<li> <A Href = stdlib/son.html> stdlib/son.mma </a> </li>
<li> <A Href = stdlib/swing.html> stdlib/swing.mma </a> </li>
<li> <A Href = stdlib/tango.html> stdlib/tango.mma </a> </li>
<li> <A Href = stdlib/vienesewaltz.html> stdlib/vienesewaltz.mma </a> </li>
<li> <A Href = stdlib/waltz.html> stdlib/waltz.mma </a> </li>
<li> <A Href = stdlib/zydeco.html> stdlib/zydeco.mma </a> </li>
</ul>
<P><h3>Use the following grooves with a "use" directive.</h3>
<A Name =kara></a>
<h2> Kara </h2>
<ul>
<li> <A Href = kara/K50s_rock.html> kara/K50s_rock.mma </a> </li>
<li> <A Href = kara/twi.html> kara/twi.mma </a> </li>
<li> <A Href = kara/Kfunk1.html> kara/Kfunk1.mma </a> </li>
<li> <A Href = kara/twi.html> kara/twi.mma </a> </li>
</ul>
<A Name =yamaha></a>
<h2> Yamaha </h2>
<ul>
<li> <A Href = yamaha/mambo.html> yamaha/mambo.mma </a> </li>
<li> <A Href = yamaha/quando-g.s280.html> yamaha/quando-g.s280.mma </a> </li>
<li> <A Href = yamaha/w-rock.html> yamaha/w-rock.mma </a> </li>
<li> <A Href = yamaha/western.html> yamaha/western.mma </a> </li>
</ul>
<BR>
<HR Size=3pt>
@ -153,4 +168,4 @@ information from the each library file:
<P>It is a part of the MMA distribution
and is protected by the same copyrights as MMA (the GNU General Public License).
<P> Created: Sun Oct 15 11:26:36 2006<HTML>
<P> Created: Wed Mar 7 11:50:18 2007<HTML>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:45 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:15 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>K50S_Rock</H1>
@ -21,7 +21,6 @@
<LI><A Href=#50sFill-In-DD>50sFill-In-DD</a>
</ul>
<A Name=50sMain-A></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sMain-A </H2>
@ -39,7 +38,6 @@
</TD></TR>
</Table>
<A Name=50sFill-In-AA></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sFill-In-AA </H2>
@ -57,7 +55,6 @@
</TD></TR>
</Table>
<A Name=50sIntro-A></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sIntro-A </H2>
@ -75,7 +72,6 @@
</TD></TR>
</Table>
<A Name=50sEnding-A></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sEnding-A </H2>
@ -96,7 +92,6 @@
</TD></TR>
</Table>
<A Name=50sMain-B></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sMain-B </H2>
@ -114,7 +109,6 @@
</TD></TR>
</Table>
<A Name=50sFill-In-BB></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sFill-In-BB </H2>
@ -133,7 +127,6 @@
</TD></TR>
</Table>
<A Name=50sFill-In-BA></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sFill-In-BA </H2>
@ -152,7 +145,6 @@
</TD></TR>
</Table>
<A Name=50sIntro-B></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sIntro-B </H2>
@ -171,7 +163,6 @@
</TD></TR>
</Table>
<A Name=50sEnding-B></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sEnding-B </H2>
@ -193,7 +184,6 @@
</TD></TR>
</Table>
<A Name=50sMain-C></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sMain-C </H2>
@ -212,7 +202,6 @@
</TD></TR>
</Table>
<A Name=50sFill-In-CC></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sFill-In-CC </H2>
@ -232,7 +221,6 @@
</TD></TR>
</Table>
<A Name=50sIntro-C></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sIntro-C </H2>
@ -251,7 +239,6 @@
</TD></TR>
</Table>
<A Name=50sEnding-C></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sEnding-C </H2>
@ -273,7 +260,6 @@
</TD></TR>
</Table>
<A Name=50sMain-D></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sMain-D </H2>
@ -291,7 +277,6 @@
</TD></TR>
</Table>
<A Name=50sFill-In-DD></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sFill-In-DD </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:45 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:16 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Kfunk1</H1>
@ -14,7 +14,6 @@
<LI><A Href=#Ending-A>Ending-A</a>
</ul>
<A Name=Main-A></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Main-A </H2>
@ -35,7 +34,6 @@
</TD></TR>
</Table>
<A Name=Fill-In-AA></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Fill-In-AA </H2>
@ -57,7 +55,6 @@
</TD></TR>
</Table>
<A Name=Fill-In-AB></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Fill-In-AB </H2>
@ -80,7 +77,6 @@
</TD></TR>
</Table>
<A Name=Main-B></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Main-B </H2>
@ -104,7 +100,6 @@
</TD></TR>
</Table>
<A Name=Fill-In-BA></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Fill-In-BA </H2>
@ -130,7 +125,6 @@
</TD></TR>
</Table>
<A Name=Fill-In-BB></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Fill-In-BB </H2>
@ -155,7 +149,6 @@
</TD></TR>
</Table>
<A Name=Intro-A></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Intro-A </H2>
@ -179,7 +172,6 @@
</TD></TR>
</Table>
<A Name=Ending-A></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ending-A </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:45 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:16 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Twi</H1>
@ -14,7 +14,6 @@
<LI><A Href=#Ending-B>Ending-B</a>
</ul>
<A Name=Main-A></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Main-A </H2>
@ -32,7 +31,6 @@
</TD></TR>
</Table>
<A Name=Fill-In-AA></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Fill-In-AA </H2>
@ -51,7 +49,6 @@
</TD></TR>
</Table>
<A Name=Fill-In-AB></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Fill-In-AB </H2>
@ -73,7 +70,6 @@
</TD></TR>
</Table>
<A Name=Main-B></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Main-B </H2>
@ -94,7 +90,6 @@
</TD></TR>
</Table>
<A Name=Fill-In-BA></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Fill-In-BA </H2>
@ -116,7 +111,6 @@
</TD></TR>
</Table>
<A Name=Fill-In-BB></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Fill-In-BB </H2>
@ -136,7 +130,6 @@
</TD></TR>
</Table>
<A Name=Intro-B></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Intro-B </H2>
@ -155,7 +148,6 @@
</TD></TR>
</Table>
<A Name=Ending-B></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ending-B </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:37 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:03 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>50Srock</H1>
@ -12,7 +12,6 @@
<LI><A Href=#50sRockEnd>50sRockEnd</a>
</ul>
<A Name=50sRock></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sRock </H2>
@ -32,7 +31,6 @@
</TD></TR>
</Table>
<A Name=50sRockSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sRockSus </H2>
@ -53,7 +51,6 @@
</TD></TR>
</Table>
<A Name=50sRock1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sRock1 </H2>
@ -73,7 +70,6 @@
</TD></TR>
</Table>
<A Name=50sRock1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sRock1Sus </H2>
@ -94,7 +90,6 @@
</TD></TR>
</Table>
<A Name=50sRockIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sRockIntro </H2>
@ -114,7 +109,6 @@
</TD></TR>
</Table>
<A Name=50sRockEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 50sRockEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:39 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:03 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>60Srock</H1>
@ -11,7 +11,6 @@
<LI><A Href=#60sRockEnd>60sRockEnd</a>
</ul>
<A Name=60sRock></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 60sRock </H2>
@ -30,7 +29,6 @@
</TD></TR>
</Table>
<A Name=60sRock1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 60sRock1 </H2>
@ -48,7 +46,6 @@
</TD></TR>
</Table>
<A Name=60sRockSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 60sRockSus </H2>
@ -68,7 +65,6 @@
</TD></TR>
</Table>
<A Name=60sRock1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 60sRock1Sus </H2>
@ -87,7 +83,6 @@
</TD></TR>
</Table>
<A Name=60sRockEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 60sRockEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:29 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:03 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>8Beat</H1>
@ -8,10 +8,10 @@
<LI><A Href=#8BeatSus>8BeatSus</a>
<LI><A Href=#8Beat1>8Beat1</a>
<LI><A Href=#8Beat1Sus>8Beat1Sus</a>
<LI><A Href=#8BeatIntro>8BeatIntro</a>
<LI><A Href=#8BeatEnd>8BeatEnd</a>
</ul>
<A Name=8Beat></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 8Beat </H2>
@ -30,7 +30,6 @@
</TD></TR>
</Table>
<A Name=8BeatSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 8BeatSus </H2>
@ -50,7 +49,6 @@
</TD></TR>
</Table>
<A Name=8Beat1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 8Beat1 </H2>
@ -70,7 +68,6 @@
</TD></TR>
</Table>
<A Name=8Beat1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 8Beat1Sus </H2>
@ -90,8 +87,25 @@
</Table>
</TD></TR>
</Table>
<A Name=8BeatIntro></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 8BeatIntro </H2>
Straight-ahead four bar introduction. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> FingeredBass </TD></TR>
<TR><TD> Chord </TD> <TD> Honky-TonkPiano </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> CleanGuitar </TD></TR>
<TR><TD> Drum-Chh </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Ohh </TD> <TD> OpenHiHat </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum1 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=8BeatEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> 8BeatEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:35 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:04 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Ballad</H1>
@ -12,9 +12,9 @@
<LI><A Href=#BalladIntro1>BalladIntro1</a>
<LI><A Href=#BalladIntro2>BalladIntro2</a>
<LI><A Href=#BalladEnd>BalladEnd</a>
<LI><A Href=#Ballad1End>Ballad1End</a>
</ul>
<A Name=Ballad></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ballad </H2>
@ -40,7 +40,6 @@
</TD></TR>
</Table>
<A Name=BalladSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BalladSus </H2>
@ -67,7 +66,6 @@
</TD></TR>
</Table>
<A Name=Ballad1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ballad1 </H2>
@ -93,7 +91,6 @@
</TD></TR>
</Table>
<A Name=Ballad1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ballad1Sus </H2>
@ -120,7 +117,6 @@
</TD></TR>
</Table>
<A Name=BalladIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BalladIntro </H2>
@ -142,7 +138,6 @@
</TD></TR>
</Table>
<A Name=BalladIntro1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BalladIntro1 </H2>
@ -163,7 +158,6 @@
</TD></TR>
</Table>
<A Name=BalladIntro2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BalladIntro2 </H2>
@ -185,7 +179,6 @@
</TD></TR>
</Table>
<A Name=BalladEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BalladEnd </H2>
@ -210,5 +203,30 @@
</Table>
</TD></TR>
</Table>
<A Name=Ballad1End></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ballad1End </H2>
A simpler 4 bar ending. We still have a harp, but it's doing quarter note arpeggios. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> OrchestralHarp </TD></TR>
<TR><TD> Bass </TD> <TD> FretlessBass </TD></TR>
<TR><TD> Chord </TD> <TD> Atmosphere </TD></TR>
<TR><TD> Drum-Bongo </TD> <TD> LowBongo </TD></TR>
<TR><TD> Drum-Cabasa </TD> <TD> Cabasa </TD></TR>
<TR><TD> Drum-Cym </TD> <TD> RideCymbal1 </TD></TR>
<TR><TD> Drum-Hh </TD> <TD> PedalHiHat </TD></TR>
<TR><TD> Drum-Hiconga </TD> <TD> MuteHighConga </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Loconga </TD> <TD> LowConga </TD></TR>
<TR><TD> Drum-Mutetri </TD> <TD> MuteTriangle </TD></TR>
<TR><TD> Drum-Opentri </TD> <TD> OpenTriangle </TD></TR>
<TR><TD> Drum-Shake </TD> <TD> Shaker </TD></TR>
<TR><TD> Drum-Tamb </TD> <TD> Tambourine </TD></TR>
</Table>
</TD></TR>
</Table>
</Body></HTML>

View File

@ -0,0 +1,113 @@
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:04 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Ballad128</H1>
<P>A 12/8 Ballad. Written for "Memory" This is written in 4/4, so, when figuring tempo use a dotted quarter for the beat count.
<ul>
<LI><A Href=#Ballad128>Ballad128</a>
<LI><A Href=#Ballad128Plus>Ballad128Plus</a>
<LI><A Href=#Ballad128Sus>Ballad128Sus</a>
<LI><A Href=#Ballad128SusPlus>Ballad128SusPlus</a>
<LI><A Href=#Ballad128Intro>Ballad128Intro</a>
<LI><A Href=#Ballad128End>Ballad128End</a>
</ul>
<A Name=Ballad128></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ballad128 </H2>
A very simple, relaxed 12/8 ballad pattern. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> AcousticBass </TD></TR>
<TR><TD> Chord </TD> <TD> OrchestralHarp </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> SideKick </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum2 </TD></TR>
<TR><TD> Walk </TD> <TD> AcousticBass </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=Ballad128Plus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ballad128Plus </H2>
Adds arpeggiated . <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Piano1 </TD></TR>
<TR><TD> Bass </TD> <TD> AcousticBass </TD></TR>
<TR><TD> Chord </TD> <TD> OrchestralHarp </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> SideKick </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum2 </TD></TR>
<TR><TD> Walk </TD> <TD> AcousticBass </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=Ballad128Sus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ballad128Sus </H2>
Add in sustained TremoloStrings <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> AcousticBass </TD></TR>
<TR><TD> Chord </TD> <TD> OrchestralHarp </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> TremoloStrings </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> SideKick </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum2 </TD></TR>
<TR><TD> Walk </TD> <TD> AcousticBass </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=Ballad128SusPlus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ballad128SusPlus </H2>
Sustained strings and apreggiating piano. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Piano1 </TD></TR>
<TR><TD> Bass </TD> <TD> AcousticBass </TD></TR>
<TR><TD> Chord </TD> <TD> OrchestralHarp </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> TremoloStrings </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> SideKick </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum2 </TD></TR>
<TR><TD> Walk </TD> <TD> AcousticBass </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=Ballad128Intro></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ballad128Intro </H2>
This 4 bar intro plays bass notes and harp arpeggios. It pretty much assumes a 7th chord on the 4th bar. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> OrchestralHarp </TD></TR>
<TR><TD> Bass </TD> <TD> AcousticBass </TD></TR>
<TR><TD> Bass-Intro </TD> <TD> OrchestralHarp </TD></TR>
<TR><TD> Walk </TD> <TD> AcousticBass </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=Ballad128End></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ballad128End </H2>
A 2 bar ending. <B>(2)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> AcousticBass </TD></TR>
<TR><TD> Chord </TD> <TD> OrchestralHarp </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> SideKick </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum2 </TD></TR>
</Table>
</TD></TR>
</Table>
</Body></HTML>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:40 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:04 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Basicrock</H1>
@ -11,7 +11,6 @@
<LI><A Href=#BasicRockEnd>BasicRockEnd</a>
</ul>
<A Name=BasicRock></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BasicRock </H2>
@ -31,7 +30,6 @@
</TD></TR>
</Table>
<A Name=BasicRockSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BasicRockSus </H2>
@ -52,7 +50,6 @@
</TD></TR>
</Table>
<A Name=BasicRock4></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BasicRock4 </H2>
@ -71,7 +68,6 @@
</TD></TR>
</Table>
<A Name=BasicRock4Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BasicRock4Sus </H2>
@ -91,7 +87,6 @@
</TD></TR>
</Table>
<A Name=BasicRockEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BasicRockEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:31 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:04 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Beguine</H1>
@ -11,9 +11,9 @@
<LI><A Href=#BeguineFill>BeguineFill</a>
<LI><A Href=#BeguineIntro>BeguineIntro</a>
<LI><A Href=#BeguineEnd>BeguineEnd</a>
<LI><A Href=#Beguine2End>Beguine2End</a>
</ul>
<A Name=Beguine></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Beguine </H2>
@ -35,7 +35,6 @@
</TD></TR>
</Table>
<A Name=BeguineSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BeguineSus </H2>
@ -58,7 +57,6 @@
</TD></TR>
</Table>
<A Name=Beguine1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Beguine1 </H2>
@ -81,7 +79,6 @@
</TD></TR>
</Table>
<A Name=Beguine1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Beguine1Sus </H2>
@ -105,7 +102,6 @@
</TD></TR>
</Table>
<A Name=BeguineFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BeguineFill </H2>
@ -127,7 +123,6 @@
</TD></TR>
</Table>
<A Name=BeguineIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BeguineIntro </H2>
@ -149,7 +144,6 @@
</TD></TR>
</Table>
<A Name=BeguineEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BeguineEnd </H2>
@ -171,5 +165,25 @@
</Table>
</TD></TR>
</Table>
<A Name=Beguine2End></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Beguine2End </H2>
A more abrupt 2 bar ending. <B>(2)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> FretlessBass </TD></TR>
<TR><TD> Chord </TD> <TD> Piano2 </TD></TR>
<TR><TD> Drum </TD> <TD> Claves </TD></TR>
<TR><TD> Drum-Hconga </TD> <TD> MuteHighConga </TD></TR>
<TR><TD> Drum-Hh </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Lconga </TD> <TD> LowConga </TD></TR>
<TR><TD> Drum-Maraca </TD> <TD> Maracas </TD></TR>
<TR><TD> Drum-Toms1 </TD> <TD> MidTom1 </TD></TR>
<TR><TD> Drum-Toms2 </TD> <TD> MidTom2 </TD></TR>
</Table>
</TD></TR>
</Table>
</Body></HTML>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:32 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:04 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Bigband</H1>
@ -13,6 +13,7 @@
<LI><A Href=#BigBand8>BigBand8</a>
<LI><A Href=#BigBand8Sus>BigBand8Sus</a>
<LI><A Href=#BigBandFill>BigBandFill</a>
<LI><A Href=#BigBand1Fill>BigBand1Fill</a>
<LI><A Href=#BigBandIntro>BigBandIntro</a>
<LI><A Href=#BigBandEnd>BigBandEnd</a>
<LI><A Href=#BigBand1End>BigBand1End</a>
@ -20,7 +21,6 @@
<LI><A Href=#BigBand4End>BigBand4End</a>
</ul>
<A Name=BigBand></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBand </H2>
@ -39,7 +39,6 @@
</TD></TR>
</Table>
<A Name=BigBandSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBandSus </H2>
@ -58,7 +57,6 @@
</TD></TR>
</Table>
<A Name=BigBandPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBandPlus </H2>
@ -78,7 +76,6 @@
</TD></TR>
</Table>
<A Name=BigBandSusPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBandSusPlus </H2>
@ -98,7 +95,6 @@
</TD></TR>
</Table>
<A Name=BigBand1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBand1 </H2>
@ -118,7 +114,6 @@
</TD></TR>
</Table>
<A Name=BigBand1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBand1Sus </H2>
@ -139,7 +134,6 @@
</TD></TR>
</Table>
<A Name=BigBand8></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBand8 </H2>
@ -159,7 +153,6 @@
</TD></TR>
</Table>
<A Name=BigBand8Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBand8Sus </H2>
@ -180,7 +173,6 @@
</TD></TR>
</Table>
<A Name=BigBandFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBandFill </H2>
@ -196,8 +188,25 @@
</Table>
</TD></TR>
</Table>
<A Name=BigBand1Fill></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBand1Fill </H2>
Louder, 4 in the bar fill. <B>(1)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> AcousticBass </TD></TR>
<TR><TD> Chord </TD> <TD> Trombone </TD></TR>
<TR><TD> Chord-Hits1 </TD> <TD> MutedTrumpet </TD></TR>
<TR><TD> Drum-Hh </TD> <TD> OpenHiHat </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Ride </TD> <TD> RideCymbal1 </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum1 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=BigBandIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBandIntro </H2>
@ -216,7 +225,6 @@
</TD></TR>
</Table>
<A Name=BigBandEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBandEnd </H2>
@ -234,7 +242,6 @@
</TD></TR>
</Table>
<A Name=BigBand1End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBand1End </H2>
@ -253,7 +260,6 @@
</TD></TR>
</Table>
<A Name=BigBand2End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBand2End </H2>
@ -272,7 +278,6 @@
</TD></TR>
</Table>
<A Name=BigBand4End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BigBand4End </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:33 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:05 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Bluegrass</H1>
@ -12,7 +12,6 @@
<LI><A Href=#BlueGrassEnd>BlueGrassEnd</a>
</ul>
<A Name=BlueGrass></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BlueGrass </H2>
@ -30,7 +29,6 @@
</TD></TR>
</Table>
<A Name=BlueGrassClap></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BlueGrassClap </H2>
@ -49,7 +47,6 @@
</TD></TR>
</Table>
<A Name=BlueGrassBottle></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BlueGrassBottle </H2>
@ -69,7 +66,6 @@
</TD></TR>
</Table>
<A Name=BlueGrassBottleClap></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BlueGrassBottleClap </H2>
@ -89,7 +85,6 @@
</TD></TR>
</Table>
<A Name=BlueGrassSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BlueGrassSus </H2>
@ -108,7 +103,6 @@
</TD></TR>
</Table>
<A Name=BlueGrassEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BlueGrassEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:30 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:05 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Blues</H1>
@ -14,7 +14,6 @@
<LI><A Href=#BluesEnd>BluesEnd</a>
</ul>
<A Name=Blues></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Blues </H2>
@ -32,7 +31,6 @@
</TD></TR>
</Table>
<A Name=BluesTriple></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BluesTriple </H2>
@ -50,7 +48,6 @@
</TD></TR>
</Table>
<A Name=BluesSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BluesSus </H2>
@ -69,7 +66,6 @@
</TD></TR>
</Table>
<A Name=BluesTripleSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BluesTripleSus </H2>
@ -88,7 +84,6 @@
</TD></TR>
</Table>
<A Name=Blues1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Blues1 </H2>
@ -107,7 +102,6 @@
</TD></TR>
</Table>
<A Name=Blues1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Blues1Sus </H2>
@ -127,7 +121,6 @@
</TD></TR>
</Table>
<A Name=BluesIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BluesIntro </H2>
@ -145,7 +138,6 @@
</TD></TR>
</Table>
<A Name=BluesEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BluesEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:40 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:05 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Boggiewoggie</H1>
@ -11,7 +11,6 @@
<LI><A Href=#BoggieWoggieEnd>BoggieWoggieEnd</a>
</ul>
<A Name=BoggieWoggie></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BoggieWoggie </H2>
@ -25,7 +24,6 @@
</TD></TR>
</Table>
<A Name=BoggieWoggie1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BoggieWoggie1 </H2>
@ -39,7 +37,6 @@
</TD></TR>
</Table>
<A Name=BoggieWoggie2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BoggieWoggie2 </H2>
@ -53,7 +50,6 @@
</TD></TR>
</Table>
<A Name=BoggieWoggie3></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BoggieWoggie3 </H2>
@ -67,7 +63,6 @@
</TD></TR>
</Table>
<A Name=BoggieWoggieEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BoggieWoggieEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:40 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:05 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Bolero</H1>
@ -18,7 +18,6 @@
<LI><A Href=#Bolero1End>Bolero1End</a>
</ul>
<A Name=Bolero></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Bolero </H2>
@ -38,7 +37,6 @@
</TD></TR>
</Table>
<A Name=BoleroFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BoleroFill </H2>
@ -59,7 +57,6 @@
</TD></TR>
</Table>
<A Name=BoleroSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BoleroSus </H2>
@ -80,7 +77,6 @@
</TD></TR>
</Table>
<A Name=BoleroSusFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BoleroSusFill </H2>
@ -102,7 +98,6 @@
</TD></TR>
</Table>
<A Name=BoleroIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BoleroIntro </H2>
@ -122,7 +117,6 @@
</TD></TR>
</Table>
<A Name=BoleroEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BoleroEnd </H2>
@ -143,7 +137,6 @@
</TD></TR>
</Table>
<A Name=Bolero1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Bolero1 </H2>
@ -161,7 +154,6 @@
</TD></TR>
</Table>
<A Name=Bolero1Fill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Bolero1Fill </H2>
@ -180,7 +172,6 @@
</TD></TR>
</Table>
<A Name=Bolero1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Bolero1Sus </H2>
@ -199,7 +190,6 @@
</TD></TR>
</Table>
<A Name=Bolero1SusFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Bolero1SusFill </H2>
@ -219,7 +209,6 @@
</TD></TR>
</Table>
<A Name=Bolero1Intro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Bolero1Intro </H2>
@ -237,7 +226,6 @@
</TD></TR>
</Table>
<A Name=Bolero1End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Bolero1End </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:33 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:05 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Bossanova</H1>
@ -7,6 +7,8 @@
<LI><A Href=#BossaNova>BossaNova</a>
<LI><A Href=#BossaNovaSus>BossaNovaSus</a>
<LI><A Href=#BossaNova1Sus>BossaNova1Sus</a>
<LI><A Href=#BossaNova2Sus>BossaNova2Sus</a>
<LI><A Href=#BossaNova3Sus>BossaNova3Sus</a>
<LI><A Href=#BossaNovaFill>BossaNovaFill</a>
<LI><A Href=#BossaNovaIntro>BossaNovaIntro</a>
<LI><A Href=#BossaNovaIntro8>BossaNovaIntro8</a>
@ -15,7 +17,6 @@
<LI><A Href=#BossaNova2End>BossaNova2End</a>
</ul>
<A Name=BossaNova></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BossaNova </H2>
@ -38,7 +39,6 @@
</TD></TR>
</Table>
<A Name=BossaNovaSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BossaNovaSus </H2>
@ -62,7 +62,6 @@
</TD></TR>
</Table>
<A Name=BossaNova1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BossaNova1Sus </H2>
@ -85,8 +84,54 @@
</Table>
</TD></TR>
</Table>
<A Name=BossaNova2Sus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BossaNova2Sus </H2>
Basic Bossa with decending string pattern. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Bass-Sus </TD> <TD> Strings </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Drum </TD> <TD> Cabasa </TD></TR>
<TR><TD> Drum-Chh </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Clave </TD> <TD> Claves </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum2 </TD></TR>
<TR><TD> Drum-Lowbongo </TD> <TD> LowBongo </TD></TR>
<TR><TD> Drum-Lowconga </TD> <TD> LowConga </TD></TR>
<TR><TD> Drum-Muteconga </TD> <TD> MuteHighConga </TD></TR>
<TR><TD> Drum-Openhiconga </TD> <TD> OpenHighConga </TD></TR>
<TR><TD> Drum-Sidekick </TD> <TD> SideKick </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=BossaNova3Sus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BossaNova3Sus </H2>
A combination of BossaNova1Sus and BossaNova2Sus. Alternating bars of decending strings with full chords. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Bass-Sus </TD> <TD> Strings </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> Strings </TD></TR>
<TR><TD> Drum </TD> <TD> Cabasa </TD></TR>
<TR><TD> Drum-Chh </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Clave </TD> <TD> Claves </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum2 </TD></TR>
<TR><TD> Drum-Lowbongo </TD> <TD> LowBongo </TD></TR>
<TR><TD> Drum-Lowconga </TD> <TD> LowConga </TD></TR>
<TR><TD> Drum-Muteconga </TD> <TD> MuteHighConga </TD></TR>
<TR><TD> Drum-Openhiconga </TD> <TD> OpenHighConga </TD></TR>
<TR><TD> Drum-Sidekick </TD> <TD> SideKick </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=BossaNovaFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BossaNovaFill </H2>
@ -110,7 +155,6 @@
</TD></TR>
</Table>
<A Name=BossaNovaIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BossaNovaIntro </H2>
@ -133,7 +177,6 @@
</TD></TR>
</Table>
<A Name=BossaNovaIntro8></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BossaNovaIntro8 </H2>
@ -156,7 +199,6 @@
</TD></TR>
</Table>
<A Name=BossaNovaEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BossaNovaEnd </H2>
@ -180,7 +222,6 @@
</TD></TR>
</Table>
<A Name=BossaNova1End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BossaNova1End </H2>
@ -205,7 +246,6 @@
</TD></TR>
</Table>
<A Name=BossaNova2End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BossaNova2End </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:42 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:06 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Broadway</H1>
@ -12,7 +12,6 @@
<LI><A Href=#BroadWayEnd>BroadWayEnd</a>
</ul>
<A Name=Broadway></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Broadway </H2>
@ -32,7 +31,6 @@
</TD></TR>
</Table>
<A Name=Broadway1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Broadway1 </H2>
@ -53,7 +51,6 @@
</TD></TR>
</Table>
<A Name=BroadwaySus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BroadwaySus </H2>
@ -74,7 +71,6 @@
</TD></TR>
</Table>
<A Name=Broadway1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Broadway1Sus </H2>
@ -96,7 +92,6 @@
</TD></TR>
</Table>
<A Name=BroadwayIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BroadwayIntro </H2>
@ -116,7 +111,6 @@
</TD></TR>
</Table>
<A Name=BroadWayEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> BroadWayEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:32 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:06 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Calypso</H1>
@ -11,7 +11,6 @@
<LI><A Href=#CalypsoEnd>CalypsoEnd</a>
</ul>
<A Name=Calypso></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Calypso </H2>
@ -28,7 +27,6 @@
</TD></TR>
</Table>
<A Name=CalypsoSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CalypsoSus </H2>
@ -46,7 +44,6 @@
</TD></TR>
</Table>
<A Name=Calypso1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Calypso1 </H2>
@ -63,7 +60,6 @@
</TD></TR>
</Table>
<A Name=Calypso1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Calypso1Sus </H2>
@ -81,7 +77,6 @@
</TD></TR>
</Table>
<A Name=CalypsoEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CalypsoEnd </H2>

View File

@ -1,18 +1,41 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:44 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:06 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Chacha</H1>
<P>A popular, albeit somewhat dated and make trite by Americanized versions, The Cha-Cha-Cha remains a popular rhythm with broad audience appeal. I've used ``Rico Vacilon'' as a demo. This file was mostly developed from the patterns in``Latin Rhythms: Mystery Unraveled'' by Victor Lopez.
<P>The Cha-Cha-Cha remains a popular rhythm with broad audience appeal, despite the fact that it is somewhat dated and made trite by Americanized versions. I've used "Rico Vacilon" as a demo. This file was mostly developed from the patterns in "Latin Rhythms: Mystery Unraveled" by Victor Lopez.
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Variables </H2>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="100%">
<TR>
<TD Valign=Top> <B> ArpeggioOctave </B> </TD>
<TD Valign=Top> The Octave setting for the flute arpeggios (default=7) </TD>
</TR>
<TR>
<TD Valign=Top> <B> ArpeggioVoice </B> </TD>
<TD Valign=Top> Voice for the ChaCha1 Arpeggios (default=Flute) </TD>
</TR>
<TR>
<TD Valign=Top> <B> ScaleVoice </B> </TD>
<TD Valign=Top> Voice for the accending scale in ChaCha1Fill (default=Flute) </TD>
</TR>
</Table>
</TD></TR>
</Table>
<ul>
<LI><A Href=#ChaCha>ChaCha</a>
<LI><A Href=#ChaCha1>ChaCha1</a>
<LI><A Href=#ChaChaSus>ChaChaSus</a>
<LI><A Href=#ChaCha1Sus>ChaCha1Sus</a>
<LI><A Href=#ChaChaFill>ChaChaFill</a>
<LI><A Href=#ChaCha1Fill>ChaCha1Fill</a>
<LI><A Href=#ChaChaIntro>ChaChaIntro</a>
<LI><A Href=#ChaChaEnd>ChaChaEnd</a>
</ul>
<A Name=ChaCha></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ChaCha </H2>
@ -35,7 +58,6 @@
</TD></TR>
</Table>
<A Name=ChaCha1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ChaCha1 </H2>
@ -59,7 +81,6 @@
</TD></TR>
</Table>
<A Name=ChaChaSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ChaChaSus </H2>
@ -83,7 +104,6 @@
</TD></TR>
</Table>
<A Name=ChaCha1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ChaCha1Sus </H2>
@ -107,8 +127,52 @@
</Table>
</TD></TR>
</Table>
<A Name=ChaChaFill></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ChaChaFill </H2>
A one bar fill. <B>(1)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> Piano1 </TD></TR>
<TR><TD> Drum-Clave </TD> <TD> Claves </TD></TR>
<TR><TD> Drum-Hconga </TD> <TD> MuteHighConga </TD></TR>
<TR><TD> Drum-Hh </TD> <TD> RideCymbal1 </TD></TR>
<TR><TD> Drum-Htom </TD> <TD> HighTom2 </TD></TR>
<TR><TD> Drum-Lconga </TD> <TD> LowConga </TD></TR>
<TR><TD> Drum-Lguiro </TD> <TD> LongGuiro </TD></TR>
<TR><TD> Drum-Mtom </TD> <TD> MidTom2 </TD></TR>
<TR><TD> Drum-Sguiro </TD> <TD> ShortGuiro </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum1 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=ChaCha1Fill></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ChaCha1Fill </H2>
Fill with accending flute run. Makes a good section introduction. <B>(1)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> Piano1 </TD></TR>
<TR><TD> Drum-Clave </TD> <TD> Claves </TD></TR>
<TR><TD> Drum-Hconga </TD> <TD> MuteHighConga </TD></TR>
<TR><TD> Drum-Hh </TD> <TD> RideCymbal1 </TD></TR>
<TR><TD> Drum-Htom </TD> <TD> HighTom2 </TD></TR>
<TR><TD> Drum-Lconga </TD> <TD> LowConga </TD></TR>
<TR><TD> Drum-Lguiro </TD> <TD> LongGuiro </TD></TR>
<TR><TD> Drum-Mtom </TD> <TD> MidTom2 </TD></TR>
<TR><TD> Drum-Sguiro </TD> <TD> ShortGuiro </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum1 </TD></TR>
<TR><TD> Scale </TD> <TD> Flute </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=ChaChaIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ChaChaIntro </H2>
@ -131,7 +195,6 @@
</TD></TR>
</Table>
<A Name=ChaChaEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ChaChaEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:39 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:06 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Countryblues</H1>
@ -19,7 +19,6 @@
<LI><A Href=#CountryBluesEnd>CountryBluesEnd</a>
</ul>
<A Name=CountryBlues></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBlues </H2>
@ -38,7 +37,6 @@
</TD></TR>
</Table>
<A Name=CountryBluesSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBluesSus </H2>
@ -58,7 +56,6 @@
</TD></TR>
</Table>
<A Name=CountryBluesWalk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBluesWalk </H2>
@ -76,7 +73,6 @@
</TD></TR>
</Table>
<A Name=CountryBluesWalkSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBluesWalkSus </H2>
@ -95,7 +91,6 @@
</TD></TR>
</Table>
<A Name=CountryBlues1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBlues1 </H2>
@ -114,7 +109,6 @@
</TD></TR>
</Table>
<A Name=CountryBlues1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBlues1Sus </H2>
@ -134,7 +128,6 @@
</TD></TR>
</Table>
<A Name=CountryBlues1Walk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBlues1Walk </H2>
@ -152,7 +145,6 @@
</TD></TR>
</Table>
<A Name=CountryBlues1WalkSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBlues1WalkSus </H2>
@ -171,7 +163,6 @@
</TD></TR>
</Table>
<A Name=CountryBluesFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBluesFill </H2>
@ -191,7 +182,6 @@
</TD></TR>
</Table>
<A Name=CountryBluesWalkFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBluesWalkFill </H2>
@ -210,7 +200,6 @@
</TD></TR>
</Table>
<A Name=CountryBlues1Fill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBlues1Fill </H2>
@ -230,7 +219,6 @@
</TD></TR>
</Table>
<A Name=CountryBlues1WalkFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBlues1WalkFill </H2>
@ -249,7 +237,6 @@
</TD></TR>
</Table>
<A Name=CountryBluesEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryBluesEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:33 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:06 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Countryswing</H1>
@ -14,7 +14,6 @@
<LI><A Href=#CountrySwingEnd>CountrySwingEnd</a>
</ul>
<A Name=CountrySwing></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountrySwing </H2>
@ -31,7 +30,6 @@
</TD></TR>
</Table>
<A Name=CountrySwingSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountrySwingSus </H2>
@ -49,7 +47,6 @@
</TD></TR>
</Table>
<A Name=CountrySwing1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountrySwing1 </H2>
@ -67,7 +64,6 @@
</TD></TR>
</Table>
<A Name=CountrySwing1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountrySwing1Sus </H2>
@ -86,7 +82,6 @@
</TD></TR>
</Table>
<A Name=CountrySwing2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountrySwing2 </H2>
@ -104,7 +99,6 @@
</TD></TR>
</Table>
<A Name=CountrySwing2Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountrySwing2Sus </H2>
@ -123,7 +117,6 @@
</TD></TR>
</Table>
<A Name=CountrySwingIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountrySwingIntro </H2>
@ -139,7 +132,6 @@
</TD></TR>
</Table>
<A Name=CountrySwingEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountrySwingEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:36 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:07 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Countrywaltz</H1>
@ -19,7 +19,6 @@
<LI><A Href=#CountryWaltzEnd>CountryWaltzEnd</a>
</ul>
<A Name=CountryWaltz></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryWaltz </H2>
@ -36,7 +35,6 @@
</TD></TR>
</Table>
<A Name=CountryWaltzSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryWaltzSus </H2>
@ -54,7 +52,6 @@
</TD></TR>
</Table>
<A Name=CountryWaltz1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryWaltz1 </H2>
@ -72,7 +69,6 @@
</TD></TR>
</Table>
<A Name=CountryWaltz1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryWaltz1Sus </H2>
@ -91,7 +87,6 @@
</TD></TR>
</Table>
<A Name=CountryWaltz2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryWaltz2 </H2>
@ -109,7 +104,6 @@
</TD></TR>
</Table>
<A Name=CountryWaltz2Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryWaltz2Sus </H2>
@ -128,7 +122,6 @@
</TD></TR>
</Table>
<A Name=CountryWaltzWalk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryWaltzWalk </H2>
@ -145,7 +138,6 @@
</TD></TR>
</Table>
<A Name=CountryWaltzWalkSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryWaltzWalkSus </H2>
@ -163,7 +155,6 @@
</TD></TR>
</Table>
<A Name=CountryWaltz1Walk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryWaltz1Walk </H2>
@ -181,7 +172,6 @@
</TD></TR>
</Table>
<A Name=Countrywaltz2Walk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Countrywaltz2Walk </H2>
@ -199,7 +189,6 @@
</TD></TR>
</Table>
<A Name=CountryWaltz1SusWalk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryWaltz1SusWalk </H2>
@ -218,7 +207,6 @@
</TD></TR>
</Table>
<A Name=CountryWaltz2SusWalk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryWaltz2SusWalk </H2>
@ -237,7 +225,6 @@
</TD></TR>
</Table>
<A Name=CountryWaltzEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> CountryWaltzEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:41 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:07 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Desert</H1>
@ -10,7 +10,6 @@
<LI><A Href=#DesertEnd>DesertEnd</a>
</ul>
<A Name=Desert></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Desert </H2>
@ -28,7 +27,6 @@
</TD></TR>
</Table>
<A Name=DesertSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> DesertSus </H2>
@ -47,7 +45,6 @@
</TD></TR>
</Table>
<A Name=DesertFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> DesertFill </H2>
@ -66,7 +63,6 @@
</TD></TR>
</Table>
<A Name=DesertEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> DesertEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:31 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:07 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Dixie</H1>
@ -12,7 +12,6 @@
<LI><A Href=#DixieEnd>DixieEnd</a>
</ul>
<A Name=Dixie></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Dixie </H2>
@ -31,7 +30,6 @@
</TD></TR>
</Table>
<A Name=Dixie1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Dixie1 </H2>
@ -50,7 +48,6 @@
</TD></TR>
</Table>
<A Name=Dixie2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Dixie2 </H2>
@ -70,7 +67,6 @@
</TD></TR>
</Table>
<A Name=Dixie3></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Dixie3 </H2>
@ -90,7 +86,6 @@
</TD></TR>
</Table>
<A Name=DixieStrum></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> DixieStrum </H2>
@ -109,7 +104,6 @@
</TD></TR>
</Table>
<A Name=DixieEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> DixieEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:41 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:07 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Dixiemarch</H1>
@ -12,7 +12,6 @@
<LI><A Href=#DixieMarchEnd>DixieMarchEnd</a>
</ul>
<A Name=DixieMarch></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> DixieMarch </H2>
@ -29,7 +28,6 @@
</TD></TR>
</Table>
<A Name=DixieMarchPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> DixieMarchPlus </H2>
@ -47,7 +45,6 @@
</TD></TR>
</Table>
<A Name=DixieMarchSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> DixieMarchSus </H2>
@ -65,7 +62,6 @@
</TD></TR>
</Table>
<A Name=DixieMarchSusPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> DixieMarchSusPlus </H2>
@ -84,7 +80,6 @@
</TD></TR>
</Table>
<A Name=DixieMarchIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> DixieMarchIntro </H2>
@ -101,7 +96,6 @@
</TD></TR>
</Table>
<A Name=DixieMarchEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> DixieMarchEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:34 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:07 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Easyswing</H1>
@ -29,7 +29,6 @@
<LI><A Href=#EasySwingEnd>EasySwingEnd</a>
</ul>
<A Name=EasySwing></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing </H2>
@ -46,7 +45,6 @@
</TD></TR>
</Table>
<A Name=EasySwingSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwingSus </H2>
@ -64,7 +62,6 @@
</TD></TR>
</Table>
<A Name=EasySwingFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwingFill </H2>
@ -82,7 +79,6 @@
</TD></TR>
</Table>
<A Name=EasySwingWalk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwingWalk </H2>
@ -98,7 +94,6 @@
</TD></TR>
</Table>
<A Name=EasySwingWalkSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwingWalkSus </H2>
@ -115,7 +110,6 @@
</TD></TR>
</Table>
<A Name=EasySwingWalkFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwingWalkFill </H2>
@ -133,7 +127,6 @@
</TD></TR>
</Table>
<A Name=EasySwing1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing1 </H2>
@ -150,7 +143,6 @@
</TD></TR>
</Table>
<A Name=EasySwing1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing1Sus </H2>
@ -168,7 +160,6 @@
</TD></TR>
</Table>
<A Name=EasySwing1Fill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing1Fill </H2>
@ -186,7 +177,6 @@
</TD></TR>
</Table>
<A Name=EasySwing2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing2 </H2>
@ -203,7 +193,6 @@
</TD></TR>
</Table>
<A Name=EasySwing2Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing2Sus </H2>
@ -221,7 +210,6 @@
</TD></TR>
</Table>
<A Name=EasySwing2Fill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing2Fill </H2>
@ -239,7 +227,6 @@
</TD></TR>
</Table>
<A Name=EasySwing42></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing42 </H2>
@ -256,7 +243,6 @@
</TD></TR>
</Table>
<A Name=EasySwing42Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing42Sus </H2>
@ -274,7 +260,6 @@
</TD></TR>
</Table>
<A Name=EasySwing42Fill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing42Fill </H2>
@ -292,7 +277,6 @@
</TD></TR>
</Table>
<A Name=EasySwing42Walk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing42Walk </H2>
@ -308,7 +292,6 @@
</TD></TR>
</Table>
<A Name=EasySwing42WalkSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing42WalkSus </H2>
@ -325,7 +308,6 @@
</TD></TR>
</Table>
<A Name=EasySwing42WalkFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwing42WalkFill </H2>
@ -342,7 +324,6 @@
</TD></TR>
</Table>
<A Name=EasySwingIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwingIntro </H2>
@ -358,7 +339,6 @@
</TD></TR>
</Table>
<A Name=EasySwingIntro1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwingIntro1 </H2>
@ -374,7 +354,6 @@
</TD></TR>
</Table>
<A Name=EasySwingIntro2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwingIntro2 </H2>
@ -390,7 +369,6 @@
</TD></TR>
</Table>
<A Name=EasySwingIntro3></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwingIntro3 </H2>
@ -407,7 +385,6 @@
</TD></TR>
</Table>
<A Name=EasySwingEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> EasySwingEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:34 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:07 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Fastblues</H1>
@ -13,7 +13,6 @@
<LI><A Href=#FastBluesEnd>FastBluesEnd</a>
</ul>
<A Name=FastBlues></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FastBlues </H2>
@ -33,7 +32,6 @@
</TD></TR>
</Table>
<A Name=FastBluesSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FastBluesSus </H2>
@ -54,7 +52,6 @@
</TD></TR>
</Table>
<A Name=FastBluesWalk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FastBluesWalk </H2>
@ -74,7 +71,6 @@
</TD></TR>
</Table>
<A Name=FastBluesWalkSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FastBluesWalkSus </H2>
@ -95,7 +91,6 @@
</TD></TR>
</Table>
<A Name=FastBlues1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FastBlues1 </H2>
@ -116,7 +111,6 @@
</TD></TR>
</Table>
<A Name=FastBlues1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FastBlues1Sus </H2>
@ -138,7 +132,6 @@
</TD></TR>
</Table>
<A Name=FastBluesEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FastBluesEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:28 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:08 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Folk</H1>
@ -11,7 +11,6 @@
<LI><A Href=#FolkEnd>FolkEnd</a>
</ul>
<A Name=Folk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Folk </H2>
@ -26,7 +25,6 @@
</TD></TR>
</Table>
<A Name=FolkWalk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FolkWalk </H2>
@ -41,7 +39,6 @@
</TD></TR>
</Table>
<A Name=FolkArticulated></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FolkArticulated </H2>
@ -58,7 +55,6 @@
</TD></TR>
</Table>
<A Name=FolkIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FolkIntro </H2>
@ -73,7 +69,6 @@
</TD></TR>
</Table>
<A Name=FolkEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FolkEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:30 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:08 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Foxtrot</H1>
@ -16,7 +16,6 @@
<LI><A Href=#FoxTrot1End>FoxTrot1End</a>
</ul>
<A Name=Foxtrot></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Foxtrot </H2>
@ -36,7 +35,6 @@
</TD></TR>
</Table>
<A Name=FoxtrotSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FoxtrotSus </H2>
@ -57,7 +55,6 @@
</TD></TR>
</Table>
<A Name=FoxTrotPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FoxTrotPlus </H2>
@ -78,7 +75,6 @@
</TD></TR>
</Table>
<A Name=FoxTrotSusPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FoxTrotSusPlus </H2>
@ -100,7 +96,6 @@
</TD></TR>
</Table>
<A Name=Foxtrot1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Foxtrot1 </H2>
@ -122,7 +117,6 @@
</TD></TR>
</Table>
<A Name=FoxTrot1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FoxTrot1Sus </H2>
@ -145,7 +139,6 @@
</TD></TR>
</Table>
<A Name=FoxTrotIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FoxTrotIntro </H2>
@ -165,7 +158,6 @@
</TD></TR>
</Table>
<A Name=FoxtrotFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FoxtrotFill </H2>
@ -185,7 +177,6 @@
</TD></TR>
</Table>
<A Name=FoxTrotEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FoxTrotEnd </H2>
@ -203,7 +194,6 @@
</TD></TR>
</Table>
<A Name=FoxTrot1End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FoxTrot1End </H2>

View File

@ -1,35 +1,70 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:36 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:08 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Frenchwaltz</H1>
<P>These try to do the "French Cafe" sound.
<P>These try to do the "French Cafe" sound. The song "Pigalle" works quite well with this. Note the setting of the BassRegister variable which tries to emulate the "switches" on a real accordion. In this case we have an accordion with three reed banks labeled "L", "M" and "H"--this will make large changes to the accordion um-pa-pa stuff
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Variables </H2>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="100%">
<TR>
<TD Valign=Top> <B> BassRegister </B> </TD>
<TD Valign=Top> Sets the bass register, 1=L 2=LM 3=LH 4=LMH 5=M 6=MH 7=H (Default=4). </TD>
</TR>
<TR>
<TD Valign=Top> <B> CSeq </B> </TD>
<TD Valign=Top> Internal, Chord sequence list, </TD>
</TR>
<TR>
<TD Valign=Top> <B> BSeq </B> </TD>
<TD Valign=Top> Internal, Bass sequence list. </TD>
</TR>
</Table>
</TD></TR>
</Table>
<ul>
<LI><A Href=#FrenchWaltz>FrenchWaltz</a>
<LI><A Href=#FrenchWaltzSus>FrenchWaltzSus</a>
<LI><A Href=#FrenchWaltz1>FrenchWaltz1</a>
<LI><A Href=#FrenchWaltz1Fill>FrenchWaltz1Fill</a>
<LI><A Href=#FrenchWaltz1Sus>FrenchWaltz1Sus</a>
<LI><A Href=#FrenchWaltz1FillSus>FrenchWaltz1FillSus</a>
<LI><A Href=#FrenchWaltz2>FrenchWaltz2</a>
<LI><A Href=#FrenchWaltz2Fill>FrenchWaltz2Fill</a>
<LI><A Href=#FrenchWaltz2Sus>FrenchWaltz2Sus</a>
<LI><A Href=#FrenchWaltz2FillSus>FrenchWaltz2FillSus</a>
<LI><A Href=#FrenchWaltz3>FrenchWaltz3</a>
<LI><A Href=#FrenchWaltz3Fill>FrenchWaltz3Fill</a>
<LI><A Href=#FrenchWaltz2Sus>FrenchWaltz2Sus</a>
<LI><A Href=#FrenchWaltz3FillSus>FrenchWaltz3FillSus</a>
<LI><A Href=#FrenchWaltzIntro>FrenchWaltzIntro</a>
<LI><A Href=#FrenchWaltzEnd>FrenchWaltzEnd</a>
<LI><A Href=#FrenchWaltz1End>FrenchWaltz1End</a>
</ul>
<A Name=FrenchWaltz></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz </H2>
Accordion umm-paa. Ya either love it or hate it! <B>(8)</B>
Accordion umm-pa-pa. Ya either love it or hate it! <B>(8)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> NylonGuitar </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltzSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltzSus </H2>
@ -37,9 +72,13 @@
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> NylonGuitar </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> Strings </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
@ -47,7 +86,6 @@
</TD></TR>
</Table>
<A Name=FrenchWaltz1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz1 </H2>
@ -56,15 +94,37 @@
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> NylonGuitar </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltz1Fill></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz1Fill </H2>
Adds an accending run. <B>(8)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
<TR><TD> Scale </TD> <TD> Accordion </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltz1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz1Sus </H2>
@ -73,16 +133,219 @@
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> NylonGuitar </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> Strings </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltz1FillSus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz1FillSus </H2>
Arpeggios, run and sustained strings. <B>(8)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> Strings </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
<TR><TD> Scale </TD> <TD> Accordion </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltz2></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz2 </H2>
A simple, little counter melody on a piano. <B>(8)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Piano1 </TD></TR>
<TR><TD> Bass-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> NylonGuitar </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltz2Fill></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz2Fill </H2>
Add a piano run to the counter melody. <B>(8)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Piano1 </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
<TR><TD> Scale </TD> <TD> Piano1 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltz2Sus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz2Sus </H2>
Piano counter melody and sustained strings. <B>(8)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Piano1 </TD></TR>
<TR><TD> Bass-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> NylonGuitar </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> Strings </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltz2FillSus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz2FillSus </H2>
Piano counter melody and run with sustained strings. <B>(8)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Piano1 </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> Strings </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
<TR><TD> Scale </TD> <TD> Piano1 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltz3></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz3 </H2>
A simple, little counter melody on a viola. <B>(8)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Viola </TD></TR>
<TR><TD> Bass-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> NylonGuitar </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltz3Fill></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz3Fill </H2>
Add a string run to the counter melody. <B>(8)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Viola </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
<TR><TD> Scale </TD> <TD> Viola </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltz2Sus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz2Sus </H2>
Viola counter melody and sustained strings. <B>(8)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Viola </TD></TR>
<TR><TD> Bass-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> NylonGuitar </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> Strings </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltz3FillSus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz3FillSus </H2>
Viola counter melody and run with sustained strings. <B>(8)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Viola </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> Strings </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
<TR><TD> Scale </TD> <TD> Viola </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltzIntro></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltzIntro </H2>
A 4 bar intro. <B>(8)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> NylonGuitar </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=FrenchWaltzEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltzEnd </H2>
@ -90,8 +353,12 @@
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
<TR><TD> Scale </TD> <TD> Strings </TD></TR>
@ -99,7 +366,6 @@
</TD></TR>
</Table>
<A Name=FrenchWaltz1End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> FrenchWaltz1End </H2>
@ -107,8 +373,12 @@
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Bass-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-H </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-L </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-M </TD> <TD> Accordion </TD></TR>
<TR><TD> Drum-Tam </TD> <TD> Tambourine </TD></TR>
<TR><TD> Drum-Tri </TD> <TD> OpenTriangle </TD></TR>
<TR><TD> Scale </TD> <TD> Accordion </TD></TR>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:43 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:08 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Guitarballad</H1>
@ -12,7 +12,6 @@
<LI><A Href=#GuitarBalladEnd>GuitarBalladEnd</a>
</ul>
<A Name=GuitarBallad></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> GuitarBallad </H2>
@ -30,7 +29,6 @@
</TD></TR>
</Table>
<A Name=GuitarBallad1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> GuitarBallad1 </H2>
@ -49,7 +47,6 @@
</TD></TR>
</Table>
<A Name=GuitarBalladSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> GuitarBalladSus </H2>
@ -68,7 +65,6 @@
</TD></TR>
</Table>
<A Name=GuitarBallad1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> GuitarBallad1Sus </H2>
@ -88,7 +84,6 @@
</TD></TR>
</Table>
<A Name=GuitarBalladIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> GuitarBalladIntro </H2>
@ -106,7 +101,6 @@
</TD></TR>
</Table>
<A Name=GuitarBalladEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> GuitarBalladEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:41 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:08 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Hillcountry</H1>
@ -13,7 +13,6 @@
<LI><A Href=#HillCountryEnd>HillCountryEnd</a>
</ul>
<A Name=HillCountry></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> HillCountry </H2>
@ -29,7 +28,6 @@
</TD></TR>
</Table>
<A Name=HillCountryPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> HillCountryPlus </H2>
@ -46,7 +44,6 @@
</TD></TR>
</Table>
<A Name=HillCountrySus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> HillCountrySus </H2>
@ -63,7 +60,6 @@
</TD></TR>
</Table>
<A Name=HillCountrySusPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> HillCountrySusPlus </H2>
@ -81,7 +77,6 @@
</TD></TR>
</Table>
<A Name=HillCountryFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> HillCountryFill </H2>
@ -97,7 +92,6 @@
</TD></TR>
</Table>
<A Name=HillCountryIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> HillCountryIntro </H2>
@ -113,7 +107,6 @@
</TD></TR>
</Table>
<A Name=HillCountryEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> HillCountryEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:30 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:09 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Jazz-54</H1>
@ -9,7 +9,6 @@
<LI><A Href=#Jazz54Intro>Jazz54Intro</a>
</ul>
<A Name=Jazz54></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Jazz54 </H2>
@ -26,7 +25,6 @@
</TD></TR>
</Table>
<A Name=Jazz54Walk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Jazz54Walk </H2>
@ -43,7 +41,6 @@
</TD></TR>
</Table>
<A Name=Jazz54Intro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Jazz54Intro </H2>

View File

@ -0,0 +1,320 @@
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:09 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Jazzguitar</H1>
<P>For jazz ballads. This has ONLY a guitar (well, expect for the sustained versions). Mostly chords, but some bass and arpeggio is included. The song "Django" is a bit of a demo.
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Variables </H2>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="100%">
<TR>
<TD Valign=Top> <B> SustainVoice </B> </TD>
<TD Valign=Top> Voice for the sustained versions (default=TremoloStrings). </TD>
</TR>
</Table>
</TD></TR>
</Table>
<ul>
<LI><A Href=#JazzGuitar>JazzGuitar</a>
<LI><A Href=#JazzGuitarWalk>JazzGuitarWalk</a>
<LI><A Href=#JazzGuitar1>JazzGuitar1</a>
<LI><A Href=#JazzGuitar1Walk>JazzGuitar1Walk</a>
<LI><A Href=#JazzGuitar2>JazzGuitar2</a>
<LI><A Href=#JazzGuitar2Walk>JazzGuitar2Walk</a>
<LI><A Href=#JazzGuitar3>JazzGuitar3</a>
<LI><A Href=#JazzGuitar3Walk>JazzGuitar3Walk</a>
<LI><A Href=#JazzGuitarSus>JazzGuitarSus</a>
<LI><A Href=#JazzGuitar1Sus>JazzGuitar1Sus</a>
<LI><A Href=#JazzGuitar2Sus>JazzGuitar2Sus</a>
<LI><A Href=#JazzGuitar3Sus>JazzGuitar3Sus</a>
<LI><A Href=#JazzGuitarWalkSus>JazzGuitarWalkSus</a>
<LI><A Href=#JazzGuitar1WalkSus>JazzGuitar1WalkSus</a>
<LI><A Href=#JazzGuitar2WalkSus>JazzGuitar2WalkSus</a>
<LI><A Href=#JazzGuitar3WalkSus>JazzGuitar3WalkSus</a>
<LI><A Href=#JazzGuitarIntro>JazzGuitarIntro</a>
<LI><A Href=#JazzGuitar1Intro>JazzGuitar1Intro</a>
<LI><A Href=#JazzGuitarEnd>JazzGuitarEnd</a>
<LI><A Href=#JazzGuitarEnd1>JazzGuitarEnd1</a>
</ul>
<A Name=JazzGuitar></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar </H2>
A very basic 4 to the bar accompaniment. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitarWalk></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitarWalk </H2>
Changes the bass pattern to walking. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Walk </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar1></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar1 </H2>
Our basic pattern with arpeggios every 4th bar. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar1Walk></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar1Walk </H2>
Walking bass with arpeggios every 4th bar. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Walk </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar2></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar2 </H2>
Basic pattern with more strum and syncopation. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar2Walk></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar2Walk </H2>
The strum pattern with walking bass <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Walk </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar3></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar3 </H2>
Add arpeggios every 4 bars to the syncopated strumming. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar3Walk></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar3Walk </H2>
Aprpeggios and walking bass. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Walk </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitarSus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitarSus </H2>
Sustained strings added to basic pattern. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> TremoloStrings </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar1Sus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar1Sus </H2>
Sustained strings added to JazzGuitar1. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> TremoloStrings </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar2Sus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar2Sus </H2>
Sustained strings added to JazzGuitar2. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> TremoloStrings </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar3Sus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar3Sus </H2>
Sustained strings added to JazzGuitar3 <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> TremoloStrings </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitarWalkSus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitarWalkSus </H2>
Sustained strings added to JazzGuitarWalk. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> TremoloStrings </TD></TR>
<TR><TD> Walk </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar1WalkSus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar1WalkSus </H2>
Sustained strings added to JazzGuitarWalk1. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> TremoloStrings </TD></TR>
<TR><TD> Walk </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar2WalkSus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar2WalkSus </H2>
Sustained strings added to JazzGuitarWalk2. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> TremoloStrings </TD></TR>
<TR><TD> Walk </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar3WalkSus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar3WalkSus </H2>
Sustained strings added to JazzGuitarWalk3. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> TremoloStrings </TD></TR>
<TR><TD> Walk </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitarIntro></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitarIntro </H2>
A 4 bar, arpeggiating introduction. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitar1Intro></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitar1Intro </H2>
A 4 bar intro with a bass run on bar 4. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitarEnd></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitarEnd </H2>
Soft, 2 bar ending. <B>(2)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=JazzGuitarEnd1></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzGuitarEnd1 </H2>
Soft, 1 bar ending. <B>(1)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
</Body></HTML>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:32 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:09 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Jazzwaltz</H1>
@ -15,7 +15,6 @@
<LI><A Href=#JazzWaltz1End>JazzWaltz1End</a>
</ul>
<A Name=JazzWaltz></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzWaltz </H2>
@ -34,7 +33,6 @@
</TD></TR>
</Table>
<A Name=JazzWaltzSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzWaltzSus </H2>
@ -54,7 +52,6 @@
</TD></TR>
</Table>
<A Name=JazzWaltz1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzWaltz1 </H2>
@ -74,7 +71,6 @@
</TD></TR>
</Table>
<A Name=JazzWaltz1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzWaltz1Sus </H2>
@ -95,7 +91,6 @@
</TD></TR>
</Table>
<A Name=JazzWaltzIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzWaltzIntro </H2>
@ -114,7 +109,6 @@
</TD></TR>
</Table>
<A Name=JazzWaltzIntro8></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzWaltzIntro8 </H2>
@ -133,7 +127,6 @@
</TD></TR>
</Table>
<A Name=JazzWaltzFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzWaltzFill </H2>
@ -151,7 +144,6 @@
</TD></TR>
</Table>
<A Name=JazzWaltzEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzWaltzEnd </H2>
@ -169,7 +161,6 @@
</TD></TR>
</Table>
<A Name=JazzWaltz1End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JazzWaltz1End </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:38 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:09 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Jive</H1>
@ -20,7 +20,6 @@
<LI><A Href=#JiveEnd>JiveEnd</a>
</ul>
<A Name=Jive></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Jive </H2>
@ -38,7 +37,6 @@
</TD></TR>
</Table>
<A Name=JiveClap></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JiveClap </H2>
@ -57,7 +55,6 @@
</TD></TR>
</Table>
<A Name=JiveSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JiveSus </H2>
@ -76,7 +73,6 @@
</TD></TR>
</Table>
<A Name=JiveClapSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JiveClapSus </H2>
@ -96,7 +92,6 @@
</TD></TR>
</Table>
<A Name=JivePlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JivePlus </H2>
@ -115,7 +110,6 @@
</TD></TR>
</Table>
<A Name=JiveSusPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JiveSusPlus </H2>
@ -135,7 +129,6 @@
</TD></TR>
</Table>
<A Name=Jive1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Jive1 </H2>
@ -153,7 +146,6 @@
</TD></TR>
</Table>
<A Name=Jive1Clap></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Jive1Clap </H2>
@ -172,7 +164,6 @@
</TD></TR>
</Table>
<A Name=Jive1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Jive1Sus </H2>
@ -191,7 +182,6 @@
</TD></TR>
</Table>
<A Name=Jive1ClapSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Jive1ClapSus </H2>
@ -211,7 +201,6 @@
</TD></TR>
</Table>
<A Name=Jive1Plus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Jive1Plus </H2>
@ -230,7 +219,6 @@
</TD></TR>
</Table>
<A Name=Jive1SusPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Jive1SusPlus </H2>
@ -250,7 +238,6 @@
</TD></TR>
</Table>
<A Name=JiveIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JiveIntro </H2>
@ -269,7 +256,6 @@
</TD></TR>
</Table>
<A Name=JiveEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> JiveEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:38 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:09 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Lfusion</H1>
@ -12,7 +12,6 @@
<LI><A Href=#Lfusion1End>Lfusion1End</a>
</ul>
<A Name=LFusion></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LFusion </H2>
@ -41,7 +40,6 @@
</TD></TR>
</Table>
<A Name=LFusionSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LFusionSus </H2>
@ -70,7 +68,6 @@
</TD></TR>
</Table>
<A Name=LFusion1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LFusion1 </H2>
@ -98,7 +95,6 @@
</TD></TR>
</Table>
<A Name=LFusion1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LFusion1Sus </H2>
@ -127,7 +123,6 @@
</TD></TR>
</Table>
<A Name=LFusionEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LFusionEnd </H2>
@ -150,7 +145,6 @@
</TD></TR>
</Table>
<A Name=Lfusion1End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Lfusion1End </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:40 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:09 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Lighttango</H1>
@ -8,11 +8,11 @@
<LI><A Href=#LightTangoSus>LightTangoSus</a>
<LI><A Href=#LightTango1>LightTango1</a>
<LI><A Href=#LightTango1Sus>LightTango1Sus</a>
<LI><A Href=#LightTangoFill>LightTangoFill</a>
<LI><A Href=#LightTangoIntro>LightTangoIntro</a>
<LI><A Href=#LightTangoEnd>LightTangoEnd</a>
</ul>
<A Name=LightTango></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LightTango </H2>
@ -33,7 +33,6 @@
</TD></TR>
</Table>
<A Name=LightTangoSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LightTangoSus </H2>
@ -55,7 +54,6 @@
</TD></TR>
</Table>
<A Name=LightTango1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LightTango1 </H2>
@ -76,7 +74,6 @@
</TD></TR>
</Table>
<A Name=LightTango1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LightTango1Sus </H2>
@ -97,8 +94,26 @@
</Table>
</TD></TR>
</Table>
<A Name=LightTangoFill></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LightTangoFill </H2>
A one bar fill pattern. <B>(1)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> AcousticBass </TD></TR>
<TR><TD> Bass-Piano </TD> <TD> Piano1 </TD></TR>
<TR><TD> Chord-Accordion </TD> <TD> Accordion </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> NylonGuitar </TD></TR>
<TR><TD> Drum-Clave </TD> <TD> Claves </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Phh </TD> <TD> PedalHiHat </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum1 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=LightTangoIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LightTangoIntro </H2>
@ -119,7 +134,6 @@
</TD></TR>
</Table>
<A Name=LightTangoEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LightTangoEnd </H2>

View File

@ -0,0 +1,125 @@
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:10 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Lullaby</H1>
<P>Gentle, soft lullaby in 4. Written for "Good Night".
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Variables </H2>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="100%">
<TR>
<TD Valign=Top> <B> ChordVoice </B> </TD>
<TD Valign=Top> Voice used in Chord tracks (defaults to JazzGuitar). </TD>
</TR>
<TR>
<TD Valign=Top> <B> ChordOctave </B> </TD>
<TD Valign=Top> Octave for Chord track (default 4) </TD>
</TR>
</Table>
</TD></TR>
</Table>
<ul>
<LI><A Href=#Lullaby>Lullaby</a>
<LI><A Href=#Lullaby1>Lullaby1</a>
<LI><A Href=#LullabyWalk>LullabyWalk</a>
<LI><A Href=#LullabySus>LullabySus</a>
<LI><A Href=#Lullaby1Sus>Lullaby1Sus</a>
<LI><A Href=#LullabyWalkSus>LullabyWalkSus</a>
<LI><A Href=#LullabyEnd>LullabyEnd</a>
</ul>
<A Name=Lullaby></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Lullaby </H2>
Just a solo guitar in 4. <B>(1)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=Lullaby1></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Lullaby1 </H2>
Adds in a bit of bass. <B>(1)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=LullabyWalk></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LullabyWalk </H2>
Adds an 8th note walking bass line. <B>(1)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Walk </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=LullabySus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LullabySus </H2>
Add some sustained strings to our guitar. <B>(1)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> SlowStrings </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=Lullaby1Sus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Lullaby1Sus </H2>
A bit of bass with the strings. <B>(1)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> SlowStrings </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=LullabyWalkSus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LullabyWalkSus </H2>
Strings and walking bass. <B>(1)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> SlowStrings </TD></TR>
<TR><TD> Walk </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=LullabyEnd></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> LullabyEnd </H2>
Two half notes on the guitar. <B>(1)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
</Table>
</TD></TR>
</Table>
</Body></HTML>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:44 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:10 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Mambo</H1>
@ -16,7 +16,6 @@
<LI><A Href=#MamboEnd>MamboEnd</a>
</ul>
<A Name=Mambo></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Mambo </H2>
@ -37,7 +36,6 @@
</TD></TR>
</Table>
<A Name=Mambo1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Mambo1 </H2>
@ -58,7 +56,6 @@
</TD></TR>
</Table>
<A Name=Mambo2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Mambo2 </H2>
@ -80,7 +77,6 @@
</TD></TR>
</Table>
<A Name=Mambo3></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Mambo3 </H2>
@ -102,7 +98,6 @@
</TD></TR>
</Table>
<A Name=MamboSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> MamboSus </H2>
@ -124,7 +119,6 @@
</TD></TR>
</Table>
<A Name=Mambo1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Mambo1Sus </H2>
@ -146,7 +140,6 @@
</TD></TR>
</Table>
<A Name=Mambo2Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Mambo2Sus </H2>
@ -169,7 +162,6 @@
</TD></TR>
</Table>
<A Name=Mambo3Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Mambo3Sus </H2>
@ -192,7 +184,6 @@
</TD></TR>
</Table>
<A Name=MamboIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> MamboIntro </H2>
@ -213,7 +204,6 @@
</TD></TR>
</Table>
<A Name=MamboEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> MamboEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:31 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:10 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>March</H1>
@ -15,7 +15,6 @@
<LI><A Href=#MarchEnd>MarchEnd</a>
</ul>
<A Name=MilIntro4></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> MilIntro4 </H2>
@ -29,7 +28,6 @@
</TD></TR>
</Table>
<A Name=MilIntro2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> MilIntro2 </H2>
@ -43,7 +41,6 @@
</TD></TR>
</Table>
<A Name=March></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> March </H2>
@ -61,7 +58,6 @@
</TD></TR>
</Table>
<A Name=March1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> March1 </H2>
@ -80,7 +76,6 @@
</TD></TR>
</Table>
<A Name=March1Slow></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> March1Slow </H2>
@ -98,7 +93,6 @@
</TD></TR>
</Table>
<A Name=March2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> March2 </H2>
@ -116,7 +110,6 @@
</TD></TR>
</Table>
<A Name=March3></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> March3 </H2>
@ -136,7 +129,6 @@
</TD></TR>
</Table>
<A Name=March4></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> March4 </H2>
@ -155,7 +147,6 @@
</TD></TR>
</Table>
<A Name=MarchEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> MarchEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:44 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:10 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Merengue</H1>
@ -14,7 +14,6 @@
<LI><A Href=#MerengueEnd>MerengueEnd</a>
</ul>
<A Name=Merengue></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Merengue </H2>
@ -34,7 +33,6 @@
</TD></TR>
</Table>
<A Name=Merengue1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Merengue1 </H2>
@ -54,7 +52,6 @@
</TD></TR>
</Table>
<A Name=Merengue2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Merengue2 </H2>
@ -75,7 +72,6 @@
</TD></TR>
</Table>
<A Name=MerengueSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> MerengueSus </H2>
@ -96,7 +92,6 @@
</TD></TR>
</Table>
<A Name=Merengue1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Merengue1Sus </H2>
@ -117,7 +112,6 @@
</TD></TR>
</Table>
<A Name=Merengue2Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Merengue2Sus </H2>
@ -139,7 +133,6 @@
</TD></TR>
</Table>
<A Name=MerengueIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> MerengueIntro </H2>
@ -159,7 +152,6 @@
</TD></TR>
</Table>
<A Name=MerengueEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> MerengueEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:34 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:10 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Metronome</H1>
@ -9,7 +9,6 @@
<LI><A Href=#Metronome2-4>Metronome2-4</a>
</ul>
<A Name=Metronome2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Metronome2 </H2>
@ -23,7 +22,6 @@
</TD></TR>
</Table>
<A Name=Metronome4></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Metronome4 </H2>
@ -37,7 +35,6 @@
</TD></TR>
</Table>
<A Name=Metronome2-4></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Metronome2-4 </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:37 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:11 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Metronome3</H1>
@ -7,7 +7,6 @@
<LI><A Href=#Metronome3>Metronome3</a>
</ul>
<A Name=Metronome3></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Metronome3 </H2>

View File

@ -1,8 +1,22 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:38 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:11 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Modernjazz</H1>
<P>A jazz style which has a bit of raunch and swing. Works well with Peggy Lee's "Fever".
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Variables </H2>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="100%">
<TR>
<TD Valign=Top> <B> ApreggioVoice </B> </TD>
<TD Valign=Top> Voice for the alternating apreggios in ModernJazz1 (Default=MutedTrumpet). Also used in Introduction and Ending. </TD>
</TR>
</Table>
</TD></TR>
</Table>
<ul>
<LI><A Href=#ModernJazz>ModernJazz</a>
<LI><A Href=#ModernJazz1>ModernJazz1</a>
@ -12,7 +26,6 @@
<LI><A Href=#ModernJazzEnd>ModernJazzEnd</a>
</ul>
<A Name=ModernJazz></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ModernJazz </H2>
@ -32,7 +45,6 @@
</TD></TR>
</Table>
<A Name=ModernJazz1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ModernJazz1 </H2>
@ -54,7 +66,6 @@
</TD></TR>
</Table>
<A Name=ModernJazzSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ModernJazzSus </H2>
@ -75,7 +86,6 @@
</TD></TR>
</Table>
<A Name=ModernJazz1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ModernJazz1Sus </H2>
@ -98,7 +108,6 @@
</TD></TR>
</Table>
<A Name=ModernJazzIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ModernJazzIntro </H2>
@ -118,7 +127,6 @@
</TD></TR>
</Table>
<A Name=ModernJazzEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ModernJazzEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:43 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:11 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Pianoballad</H1>
@ -12,7 +12,6 @@
<LI><A Href=#PianoBalladEnd>PianoBalladEnd</a>
</ul>
<A Name=PianoBallad></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PianoBallad </H2>
@ -30,7 +29,6 @@
</TD></TR>
</Table>
<A Name=PianoBallad1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PianoBallad1 </H2>
@ -49,7 +47,6 @@
</TD></TR>
</Table>
<A Name=PianoBalladSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PianoBalladSus </H2>
@ -68,7 +65,6 @@
</TD></TR>
</Table>
<A Name=PianoBallad1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PianoBallad1Sus </H2>
@ -88,7 +84,6 @@
</TD></TR>
</Table>
<A Name=PianoBalladIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PianoBalladIntro </H2>
@ -106,7 +101,6 @@
</TD></TR>
</Table>
<A Name=PianoBalladEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PianoBalladEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:33 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:11 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Polka</H1>
@ -16,7 +16,6 @@
<LI><A Href=#PolkaEnd>PolkaEnd</a>
</ul>
<A Name=Polka></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Polka </H2>
@ -36,7 +35,6 @@
</TD></TR>
</Table>
<A Name=PolkaSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PolkaSus </H2>
@ -57,7 +55,6 @@
</TD></TR>
</Table>
<A Name=PolkaArp></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PolkaArp </H2>
@ -78,7 +75,6 @@
</TD></TR>
</Table>
<A Name=PolkaSusArp></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PolkaSusArp </H2>
@ -100,7 +96,6 @@
</TD></TR>
</Table>
<A Name=Polka1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Polka1 </H2>
@ -120,7 +115,6 @@
</TD></TR>
</Table>
<A Name=Polka1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Polka1Sus </H2>
@ -141,7 +135,6 @@
</TD></TR>
</Table>
<A Name=Polka1Arp></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Polka1Arp </H2>
@ -162,7 +155,6 @@
</TD></TR>
</Table>
<A Name=Polka1SusArp></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Polka1SusArp </H2>
@ -184,7 +176,6 @@
</TD></TR>
</Table>
<A Name=PolkaIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PolkaIntro </H2>
@ -203,7 +194,6 @@
</TD></TR>
</Table>
<A Name=PolkaEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PolkaEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:35 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:11 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Popballad</H1>
@ -7,10 +7,11 @@
<LI><A Href=#PopBallad>PopBallad</a>
<LI><A Href=#PopBallad1>PopBallad1</a>
<LI><A Href=#PopBallad2>PopBallad2</a>
<LI><A Href=#PopBalladSus>PopBalladSus</a>
<LI><A Href=#PopBalladIntro>PopBalladIntro</a>
<LI><A Href=#PopBalladEnd>PopBalladEnd</a>
</ul>
<A Name=PopBallad></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PopBallad </H2>
@ -31,7 +32,6 @@
</TD></TR>
</Table>
<A Name=PopBallad1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PopBallad1 </H2>
@ -55,7 +55,6 @@
</TD></TR>
</Table>
<A Name=PopBallad2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PopBallad2 </H2>
@ -74,8 +73,48 @@
</Table>
</TD></TR>
</Table>
<A Name=PopBalladSus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PopBalladSus </H2>
A slightly lighter version, with strings. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Atmosphere </TD></TR>
<TR><TD> Bass </TD> <TD> AcousticBass </TD></TR>
<TR><TD> Chord </TD> <TD> Piano2 </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> TremoloStrings </TD></TR>
<TR><TD> Drum-Cabasa </TD> <TD> Cabasa </TD></TR>
<TR><TD> Drum-Cym </TD> <TD> CrashCymbal1 </TD></TR>
<TR><TD> Drum-Hh </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Shake </TD> <TD> Shaker </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum1 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=PopBalladIntro></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PopBalladIntro </H2>
A simple introduction. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> Atmosphere </TD></TR>
<TR><TD> Bass </TD> <TD> AcousticBass </TD></TR>
<TR><TD> Chord </TD> <TD> Piano2 </TD></TR>
<TR><TD> Drum-Cabasa </TD> <TD> Cabasa </TD></TR>
<TR><TD> Drum-Cym </TD> <TD> CrashCymbal1 </TD></TR>
<TR><TD> Drum-Hh </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Shake </TD> <TD> Shaker </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum1 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=PopBalladEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> PopBalladEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:42 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:11 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Quickstep</H1>
@ -14,7 +14,6 @@
<LI><A Href=#QuickStepEnd>QuickStepEnd</a>
</ul>
<A Name=QuickStep></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> QuickStep </H2>
@ -32,7 +31,6 @@
</TD></TR>
</Table>
<A Name=QuickStepHit></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> QuickStepHit </H2>
@ -51,7 +49,6 @@
</TD></TR>
</Table>
<A Name=QuickStepSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> QuickStepSus </H2>
@ -70,7 +67,6 @@
</TD></TR>
</Table>
<A Name=QuickStepHitSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> QuickStepHitSus </H2>
@ -90,7 +86,6 @@
</TD></TR>
</Table>
<A Name=QuickStepDuh></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> QuickStepDuh </H2>
@ -109,7 +104,6 @@
</TD></TR>
</Table>
<A Name=QuickStepDuhSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> QuickStepDuhSus </H2>
@ -129,7 +123,6 @@
</TD></TR>
</Table>
<A Name=QuickStepIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> QuickStepIntro </H2>
@ -147,7 +140,6 @@
</TD></TR>
</Table>
<A Name=QuickStepEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> QuickStepEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:39 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:12 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Rb</H1>
@ -10,7 +10,6 @@
<LI><A Href=#R&BEnd>R&BEnd</a>
</ul>
<A Name=R&B></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> R&B </H2>
@ -32,7 +31,6 @@
</TD></TR>
</Table>
<A Name=R&BSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> R&BSus </H2>
@ -54,7 +52,6 @@
</TD></TR>
</Table>
<A Name=R&BIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> R&BIntro </H2>
@ -75,7 +72,6 @@
</TD></TR>
</Table>
<A Name=R&BEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> R&BEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:29 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:12 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Rhumba</H1>
@ -23,7 +23,6 @@
<LI><A Href=#RhumbaEnd1>RhumbaEnd1</a>
</ul>
<A Name=Rhumba></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Rhumba </H2>
@ -45,7 +44,6 @@
</TD></TR>
</Table>
<A Name=RhumbaSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RhumbaSus </H2>
@ -68,7 +66,6 @@
</TD></TR>
</Table>
<A Name=RhumbaTriple></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RhumbaTriple </H2>
@ -89,7 +86,6 @@
</TD></TR>
</Table>
<A Name=RhumbaTripleSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RhumbaTripleSus </H2>
@ -111,7 +107,6 @@
</TD></TR>
</Table>
<A Name=RhumbaTriple12></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RhumbaTriple12 </H2>
@ -132,7 +127,6 @@
</TD></TR>
</Table>
<A Name=RhumbaTriple12Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RhumbaTriple12Sus </H2>
@ -154,7 +148,6 @@
</TD></TR>
</Table>
<A Name=RhumbaTriple34></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RhumbaTriple34 </H2>
@ -176,7 +169,6 @@
</TD></TR>
</Table>
<A Name=RhumbaTriple34Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RhumbaTriple34Sus </H2>
@ -198,7 +190,6 @@
</TD></TR>
</Table>
<A Name=Rhumba1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Rhumba1 </H2>
@ -221,7 +212,6 @@
</TD></TR>
</Table>
<A Name=Rhumba1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Rhumba1Sus </H2>
@ -245,7 +235,6 @@
</TD></TR>
</Table>
<A Name=Rhumba2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Rhumba2 </H2>
@ -268,7 +257,6 @@
</TD></TR>
</Table>
<A Name=Rhumba2Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Rhumba2Sus </H2>
@ -292,7 +280,6 @@
</TD></TR>
</Table>
<A Name=Rhumba3></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Rhumba3 </H2>
@ -315,7 +302,6 @@
</TD></TR>
</Table>
<A Name=Rhumba3Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Rhumba3Sus </H2>
@ -339,7 +325,6 @@
</TD></TR>
</Table>
<A Name=RhumbaIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RhumbaIntro </H2>
@ -360,7 +345,6 @@
</TD></TR>
</Table>
<A Name=RhumbaEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RhumbaEnd </H2>
@ -383,7 +367,6 @@
</TD></TR>
</Table>
<A Name=RhumbaEnd1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RhumbaEnd1 </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:37 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:12 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Rock-128</H1>
@ -10,7 +10,6 @@
<LI><A Href=#Rock128End>Rock128End</a>
</ul>
<A Name=Rock128></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Rock128 </H2>
@ -27,7 +26,6 @@
</TD></TR>
</Table>
<A Name=Rock128Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Rock128Sus </H2>
@ -46,7 +44,6 @@
</TD></TR>
</Table>
<A Name=Rock128Intro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Rock128Intro </H2>
@ -63,7 +60,6 @@
</TD></TR>
</Table>
<A Name=Rock128End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Rock128End </H2>

View File

@ -1,17 +1,37 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:34 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:12 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Rockballad</H1>
<P>Written for slowish/doo-wop things like "You Belong To Me".
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Variables </H2>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="100%">
<TR>
<TD Valign=Top> <B> SusVoice </B> </TD>
<TD Valign=Top> Voice used for sustained voicing in RockBalladVoice (default=ChoirAahs). </TD>
</TR>
<TR>
<TD Valign=Top> <B> SusVoiceOctave </B> </TD>
<TD Valign=Top> Octave for sustained voices (default=4). </TD>
</TR>
</Table>
</TD></TR>
</Table>
<ul>
<LI><A Href=#RockBallad>RockBallad</a>
<LI><A Href=#RockBallad1>RockBallad1</a>
<LI><A Href=#RockBalladFill>RockBalladFill</a>
<LI><A Href=#RockBallad1Fill>RockBallad1Fill</a>
<LI><A Href=#RockBalladVoice>RockBalladVoice</a>
<LI><A Href=#RockBalladIntro>RockBalladIntro</a>
<LI><A Href=#RockBalladEnd>RockBalladEnd</a>
<LI><A Href=#RockBalladEnd1>RockBalladEnd1</a>
</ul>
<A Name=RockBallad></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RockBallad </H2>
@ -28,8 +48,24 @@
</Table>
</TD></TR>
</Table>
<A Name=RockBallad1></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RockBallad1 </H2>
Same as the basic pattern, but skips the chord triplet on bar 4. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> FretlessBass </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Drum </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum1 </TD></TR>
<TR><TD> Walk </TD> <TD> FretlessBass </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=RockBalladFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RockBalladFill </H2>
@ -47,8 +83,25 @@
</Table>
</TD></TR>
</Table>
<A Name=RockBallad1Fill></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RockBallad1Fill </H2>
Guitar apreggio fills without 4th bar triplets. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Bass </TD> <TD> FretlessBass </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Drum </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum1 </TD></TR>
<TR><TD> Walk </TD> <TD> FretlessBass </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=RockBalladVoice></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RockBalladVoice </H2>
@ -67,7 +120,6 @@
</TD></TR>
</Table>
<A Name=RockBalladIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RockBalladIntro </H2>
@ -85,7 +137,6 @@
</TD></TR>
</Table>
<A Name=RockBalladEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RockBalladEnd </H2>
@ -102,5 +153,21 @@
</Table>
</TD></TR>
</Table>
<A Name=RockBalladEnd1></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> RockBalladEnd1 </H2>
Simple 2 bar ending. <B>(2)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> FretlessBass </TD></TR>
<TR><TD> Chord </TD> <TD> JazzGuitar </TD></TR>
<TR><TD> Drum </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum1 </TD></TR>
</Table>
</TD></TR>
</Table>
</Body></HTML>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:42 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:12 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Samba</H1>
@ -14,7 +14,6 @@
<LI><A Href=#SambaEnd>SambaEnd</a>
</ul>
<A Name=Samba></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Samba </H2>
@ -35,7 +34,6 @@
</TD></TR>
</Table>
<A Name=SambaFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SambaFill </H2>
@ -57,7 +55,6 @@
</TD></TR>
</Table>
<A Name=SambaPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SambaPlus </H2>
@ -78,7 +75,6 @@
</TD></TR>
</Table>
<A Name=SambaSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SambaSus </H2>
@ -100,7 +96,6 @@
</TD></TR>
</Table>
<A Name=SambaSusFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SambaSusFill </H2>
@ -123,7 +118,6 @@
</TD></TR>
</Table>
<A Name=SambaSusPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SambaSusPlus </H2>
@ -145,7 +139,6 @@
</TD></TR>
</Table>
<A Name=SambaIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SambaIntro </H2>
@ -166,7 +159,6 @@
</TD></TR>
</Table>
<A Name=SambaEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SambaEnd </H2>

View File

@ -0,0 +1,137 @@
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:13 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Shuffleboggie</H1>
<P>A blues-like shuffle beat. Written for Kansas City.
<ul>
<LI><A Href=#ShuffleBoggie>ShuffleBoggie</a>
<LI><A Href=#ShuffleBoggie1>ShuffleBoggie1</a>
<LI><A Href=#ShuffleBoggieSus>ShuffleBoggieSus</a>
<LI><A Href=#ShuffleBoggieIntro>ShuffleBoggieIntro</a>
<LI><A Href=#ShuffleBoggieIntro4>ShuffleBoggieIntro4</a>
<LI><A Href=#ShuffleBoggieEnd>ShuffleBoggieEnd</a>
</ul>
<A Name=ShuffleBoggie></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ShuffleBoggie </H2>
Blues with a shuffle style. <B>(2)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> SlapBass1 </TD></TR>
<TR><TD> Bass-Piano </TD> <TD> Piano2 </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> MutedGuitar </TD></TR>
<TR><TD> Chord-Piano </TD> <TD> Piano2 </TD></TR>
<TR><TD> Chord-Sax </TD> <TD> TenorSax </TD></TR>
<TR><TD> Drum-Chh </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Clap </TD> <TD> HandClap </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Ohh </TD> <TD> OpenHiHat </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum2 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=ShuffleBoggie1></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ShuffleBoggie1 </H2>
Adds an articulated guitar riff to the basic beat. <B>(2)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Arpeggio </TD> <TD> CleanGuitar </TD></TR>
<TR><TD> Bass </TD> <TD> SlapBass1 </TD></TR>
<TR><TD> Bass-Piano </TD> <TD> Piano2 </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> MutedGuitar </TD></TR>
<TR><TD> Chord-Piano </TD> <TD> Piano2 </TD></TR>
<TR><TD> Chord-Sax </TD> <TD> TenorSax </TD></TR>
<TR><TD> Drum-Chh </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Clap </TD> <TD> HandClap </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Ohh </TD> <TD> OpenHiHat </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum2 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=ShuffleBoggieSus></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ShuffleBoggieSus </H2>
Blues with violins. Sort of odd, but we can call them fiddles! <B>(2)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> SlapBass1 </TD></TR>
<TR><TD> Bass-Piano </TD> <TD> Piano2 </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> MutedGuitar </TD></TR>
<TR><TD> Chord-Piano </TD> <TD> Piano2 </TD></TR>
<TR><TD> Chord-Sax </TD> <TD> TenorSax </TD></TR>
<TR><TD> Chord-Sus </TD> <TD> Strings </TD></TR>
<TR><TD> Drum-Chh </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Clap </TD> <TD> HandClap </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Ohh </TD> <TD> OpenHiHat </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum2 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=ShuffleBoggieIntro></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ShuffleBoggieIntro </H2>
A two bar intro. Short, loud and sweet. <B>(2)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> SlapBass1 </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> MutedGuitar </TD></TR>
<TR><TD> Chord-Piano </TD> <TD> Piano2 </TD></TR>
<TR><TD> Chord-Sax </TD> <TD> TenorSax </TD></TR>
<TR><TD> Drum-Chh </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Clap </TD> <TD> HandClap </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum2 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=ShuffleBoggieIntro4></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ShuffleBoggieIntro4 </H2>
A four bar intro. <B>(4)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> SlapBass1 </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> MutedGuitar </TD></TR>
<TR><TD> Chord-Piano </TD> <TD> Piano2 </TD></TR>
<TR><TD> Chord-Sax </TD> <TD> TenorSax </TD></TR>
<TR><TD> Drum-Chh </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Clap </TD> <TD> HandClap </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum2 </TD></TR>
</Table>
</TD></TR>
</Table>
<A Name=ShuffleBoggieEnd></a>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> ShuffleBoggieEnd </H2>
Very simple ending, hits on 1, 2 and 3 of last bar. <B>(2)</B>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="10%">
<TR><TD> Bass </TD> <TD> SlapBass1 </TD></TR>
<TR><TD> Chord-Guitar </TD> <TD> MutedGuitar </TD></TR>
<TR><TD> Chord-Piano </TD> <TD> Piano2 </TD></TR>
<TR><TD> Chord-Sax </TD> <TD> TenorSax </TD></TR>
<TR><TD> Drum-Chh </TD> <TD> ClosedHiHat </TD></TR>
<TR><TD> Drum-Clap </TD> <TD> HandClap </TD></TR>
<TR><TD> Drum-Kick </TD> <TD> KickDrum1 </TD></TR>
<TR><TD> Drum-Snare </TD> <TD> SnareDrum2 </TD></TR>
</Table>
</TD></TR>
</Table>
</Body></HTML>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:35 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:13 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Ska</H1>
@ -12,7 +12,6 @@
<LI><A Href=#SkaEnd>SkaEnd</a>
</ul>
<A Name=Ska></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ska </H2>
@ -34,7 +33,6 @@
</TD></TR>
</Table>
<A Name=Ska1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ska1 </H2>
@ -57,7 +55,6 @@
</TD></TR>
</Table>
<A Name=SkaSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SkaSus </H2>
@ -80,7 +77,6 @@
</TD></TR>
</Table>
<A Name=Ska1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Ska1Sus </H2>
@ -104,7 +100,6 @@
</TD></TR>
</Table>
<A Name=SkaClap></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SkaClap </H2>
@ -127,7 +122,6 @@
</TD></TR>
</Table>
<A Name=SkaEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SkaEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:36 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:13 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Slowblues</H1>
@ -18,7 +18,6 @@
<LI><A Href=#SlowBluesEnd>SlowBluesEnd</a>
</ul>
<A Name=SlowBlues></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBlues </H2>
@ -36,7 +35,6 @@
</TD></TR>
</Table>
<A Name=SlowBluesFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBluesFill </H2>
@ -54,7 +52,6 @@
</TD></TR>
</Table>
<A Name=SlowBluesFill1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBluesFill1 </H2>
@ -72,7 +69,6 @@
</TD></TR>
</Table>
<A Name=SlowBluesFill2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBluesFill2 </H2>
@ -90,7 +86,6 @@
</TD></TR>
</Table>
<A Name=SlowBluesFill3></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBluesFill3 </H2>
@ -108,7 +103,6 @@
</TD></TR>
</Table>
<A Name=SlowBluesSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBluesSus </H2>
@ -127,7 +121,6 @@
</TD></TR>
</Table>
<A Name=SlowBluesWalk4></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBluesWalk4 </H2>
@ -144,7 +137,6 @@
</TD></TR>
</Table>
<A Name=SlowBluesWalk4Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBluesWalk4Sus </H2>
@ -162,7 +154,6 @@
</TD></TR>
</Table>
<A Name=SlowBluesWalk8></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBluesWalk8 </H2>
@ -180,7 +171,6 @@
</TD></TR>
</Table>
<A Name=SlowBluesWalk8Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBluesWalk8Sus </H2>
@ -199,7 +189,6 @@
</TD></TR>
</Table>
<A Name=SlowBluesIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBluesIntro </H2>
@ -216,7 +205,6 @@
</TD></TR>
</Table>
<A Name=SlowBluesEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBluesEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:44 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:13 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Slowbolero</H1>
@ -10,7 +10,6 @@
<LI><A Href=#SlowBoleroEnd>SlowBoleroEnd</a>
</ul>
<A Name=SlowBolero></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBolero </H2>
@ -32,7 +31,6 @@
</TD></TR>
</Table>
<A Name=SlowBoleroSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBoleroSus </H2>
@ -55,7 +53,6 @@
</TD></TR>
</Table>
<A Name=SlowBoleroIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBoleroIntro </H2>
@ -77,7 +74,6 @@
</TD></TR>
</Table>
<A Name=SlowBoleroEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowBoleroEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:41 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:13 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Slowcountry</H1>
@ -14,7 +14,6 @@
<LI><A Href=#SlowCountryEnd>SlowCountryEnd</a>
</ul>
<A Name=SlowCountry></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowCountry </H2>
@ -32,7 +31,6 @@
</TD></TR>
</Table>
<A Name=SlowCountrySus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowCountrySus </H2>
@ -51,7 +49,6 @@
</TD></TR>
</Table>
<A Name=SlowCountryFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowCountryFill </H2>
@ -70,7 +67,6 @@
</TD></TR>
</Table>
<A Name=SlowCountryWalk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowCountryWalk </H2>
@ -86,7 +82,6 @@
</TD></TR>
</Table>
<A Name=SlowCountryWalkSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowCountryWalkSus </H2>
@ -103,7 +98,6 @@
</TD></TR>
</Table>
<A Name=SlowCountryWalkFill></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowCountryWalkFill </H2>
@ -122,7 +116,6 @@
</TD></TR>
</Table>
<A Name=SlowCountryIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowCountryIntro </H2>
@ -139,7 +132,6 @@
</TD></TR>
</Table>
<A Name=SlowCountryEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowCountryEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:37 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:13 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Slowjazz</H1>
@ -21,7 +21,6 @@
<LI><A Href=#SlowJazz2End>SlowJazz2End</a>
</ul>
<A Name=SlowJazz></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazz </H2>
@ -39,7 +38,6 @@
</TD></TR>
</Table>
<A Name=SlowJazzSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazzSus </H2>
@ -58,7 +56,6 @@
</TD></TR>
</Table>
<A Name=SlowJazzWalk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazzWalk </H2>
@ -75,7 +72,6 @@
</TD></TR>
</Table>
<A Name=SlowJazzWalkSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazzWalkSus </H2>
@ -93,7 +89,6 @@
</TD></TR>
</Table>
<A Name=SlowJazz1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazz1 </H2>
@ -111,7 +106,6 @@
</TD></TR>
</Table>
<A Name=SlowJazz1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazz1Sus </H2>
@ -130,7 +124,6 @@
</TD></TR>
</Table>
<A Name=SlowJazz1Walk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazz1Walk </H2>
@ -147,7 +140,6 @@
</TD></TR>
</Table>
<A Name=SlowJazz1WalkSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazz1WalkSus </H2>
@ -165,7 +157,6 @@
</TD></TR>
</Table>
<A Name=SlowJazz2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazz2 </H2>
@ -183,7 +174,6 @@
</TD></TR>
</Table>
<A Name=SlowJazz2Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazz2Sus </H2>
@ -202,7 +192,6 @@
</TD></TR>
</Table>
<A Name=SlowJazzIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazzIntro </H2>
@ -220,7 +209,6 @@
</TD></TR>
</Table>
<A Name=SlowJazz1Intro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazz1Intro </H2>
@ -238,7 +226,6 @@
</TD></TR>
</Table>
<A Name=SlowJazz2Intro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazz2Intro </H2>
@ -255,7 +242,6 @@
</TD></TR>
</Table>
<A Name=SlowJazzEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazzEnd </H2>
@ -272,7 +258,6 @@
</TD></TR>
</Table>
<A Name=SlowJazz2End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SlowJazz2End </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:32 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:14 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Softrock</H1>
@ -13,7 +13,6 @@
<LI><A Href=#SoftRockEnd>SoftRockEnd</a>
</ul>
<A Name=SoftRock></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SoftRock </H2>
@ -31,7 +30,6 @@
</TD></TR>
</Table>
<A Name=SoftRockSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SoftRockSus </H2>
@ -50,7 +48,6 @@
</TD></TR>
</Table>
<A Name=SoftRock1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SoftRock1 </H2>
@ -69,7 +66,6 @@
</TD></TR>
</Table>
<A Name=SoftRock1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SoftRock1Sus </H2>
@ -89,7 +85,6 @@
</TD></TR>
</Table>
<A Name=SoftRockIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SoftRockIntro </H2>
@ -106,7 +101,6 @@
</TD></TR>
</Table>
<A Name=SoftRockSusIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SoftRockSusIntro </H2>
@ -124,7 +118,6 @@
</TD></TR>
</Table>
<A Name=SoftRockEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SoftRockEnd </H2>

View File

@ -1,8 +1,22 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:42 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:14 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Softshoe</H1>
<P>Syncopated ditty for the old dancers. Written for "Me and My Shadow".
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Variables </H2>
</TD></TR>
<TR><TD>
<Table CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="100%">
<TR>
<TD Valign=Top> <B> ChordVoice </B> </TD>
<TD Valign=Top> Voice used in Chord tracks (defaults to Piano2). </TD>
</TR>
</Table>
</TD></TR>
</Table>
<ul>
<LI><A Href=#Softshoe>Softshoe</a>
<LI><A Href=#SoftShoePlus>SoftShoePlus</a>
@ -12,7 +26,6 @@
<LI><A Href=#SoftShoeEnd>SoftShoeEnd</a>
</ul>
<A Name=Softshoe></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Softshoe </H2>
@ -30,7 +43,6 @@
</TD></TR>
</Table>
<A Name=SoftShoePlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SoftShoePlus </H2>
@ -49,7 +61,6 @@
</TD></TR>
</Table>
<A Name=SoftShoeSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SoftShoeSus </H2>
@ -68,7 +79,6 @@
</TD></TR>
</Table>
<A Name=SoftShoeSusPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SoftShoeSusPlus </H2>
@ -88,7 +98,6 @@
</TD></TR>
</Table>
<A Name=SoftShoeIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SoftShoeIntro </H2>
@ -105,7 +114,6 @@
</TD></TR>
</Table>
<A Name=SoftShoeEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SoftShoeEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:43 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:14 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Son</H1>
@ -10,7 +10,6 @@
<LI><A Href=#SonEnd>SonEnd</a>
</ul>
<A Name=Son></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Son </H2>
@ -33,7 +32,6 @@
</TD></TR>
</Table>
<A Name=SonSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SonSus </H2>
@ -57,7 +55,6 @@
</TD></TR>
</Table>
<A Name=SonIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SonIntro </H2>
@ -80,7 +77,6 @@
</TD></TR>
</Table>
<A Name=SonEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SonEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:30 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:14 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Swing</H1>
@ -34,7 +34,6 @@
<LI><A Href=#Swing2End>Swing2End</a>
</ul>
<A Name=Swing></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing </H2>
@ -55,7 +54,6 @@
</TD></TR>
</Table>
<A Name=SwingWalk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SwingWalk </H2>
@ -76,7 +74,6 @@
</TD></TR>
</Table>
<A Name=SwingTriple></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SwingTriple </H2>
@ -97,7 +94,6 @@
</TD></TR>
</Table>
<A Name=SwingPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SwingPlus </H2>
@ -119,7 +115,6 @@
</TD></TR>
</Table>
<A Name=SwingWalkPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SwingWalkPlus </H2>
@ -141,7 +136,6 @@
</TD></TR>
</Table>
<A Name=SwingSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SwingSus </H2>
@ -163,7 +157,6 @@
</TD></TR>
</Table>
<A Name=SwingPlusSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SwingPlusSus </H2>
@ -186,7 +179,6 @@
</TD></TR>
</Table>
<A Name=SwingWalkSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SwingWalkSus </H2>
@ -208,7 +200,6 @@
</TD></TR>
</Table>
<A Name=SwingWalkPlusSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SwingWalkPlusSus </H2>
@ -231,7 +222,6 @@
</TD></TR>
</Table>
<A Name=Swing1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing1 </H2>
@ -252,7 +242,6 @@
</TD></TR>
</Table>
<A Name=Swing1Walk></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing1Walk </H2>
@ -273,7 +262,6 @@
</TD></TR>
</Table>
<A Name=Swing1Triple></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing1Triple </H2>
@ -293,7 +281,6 @@
</TD></TR>
</Table>
<A Name=Swing1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing1Sus </H2>
@ -315,7 +302,6 @@
</TD></TR>
</Table>
<A Name=Swing1WalkSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing1WalkSus </H2>
@ -337,7 +323,6 @@
</TD></TR>
</Table>
<A Name=Swing1Plus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing1Plus </H2>
@ -359,7 +344,6 @@
</TD></TR>
</Table>
<A Name=Swing1PlusSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing1PlusSus </H2>
@ -382,7 +366,6 @@
</TD></TR>
</Table>
<A Name=Swing1WalkPlus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing1WalkPlus </H2>
@ -404,7 +387,6 @@
</TD></TR>
</Table>
<A Name=Swing1WalkPlusSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing1WalkPlusSus </H2>
@ -427,7 +409,6 @@
</TD></TR>
</Table>
<A Name=Swing2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing2 </H2>
@ -449,7 +430,6 @@
</TD></TR>
</Table>
<A Name=Swing2Triple></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing2Triple </H2>
@ -469,7 +449,6 @@
</TD></TR>
</Table>
<A Name=Swing2Plus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing2Plus </H2>
@ -492,7 +471,6 @@
</TD></TR>
</Table>
<A Name=Swing2Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing2Sus </H2>
@ -515,7 +493,6 @@
</TD></TR>
</Table>
<A Name=Swing2PlusSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing2PlusSus </H2>
@ -539,7 +516,6 @@
</TD></TR>
</Table>
<A Name=SwingIntro></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SwingIntro </H2>
@ -560,7 +536,6 @@
</TD></TR>
</Table>
<A Name=SwingIntro2></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SwingIntro2 </H2>
@ -581,7 +556,6 @@
</TD></TR>
</Table>
<A Name=SwingEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> SwingEnd </H2>
@ -600,7 +574,6 @@
</TD></TR>
</Table>
<A Name=Swing1End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing1End </H2>
@ -621,7 +594,6 @@
</TD></TR>
</Table>
<A Name=Swing2End></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Swing2End </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:29 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:15 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Tango</H1>
@ -9,7 +9,6 @@
<LI><A Href=#TangoEnd>TangoEnd</a>
</ul>
<A Name=Tango></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Tango </H2>
@ -30,7 +29,6 @@
</TD></TR>
</Table>
<A Name=Tango1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> Tango1 </H2>
@ -51,7 +49,6 @@
</TD></TR>
</Table>
<A Name=TangoEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> TangoEnd </H2>

View File

@ -1,4 +1,4 @@
<!-- Auto-Generated by MMA on: Sun Oct 15 11:20:36 2006 -->
<!-- Auto-Generated by MMA on: Wed Mar 7 11:50:15 2007 -->
<HTML>
<BODY BGCOLOR="#B7DFFF" Text=Black>
<H1>Vienesewaltz</H1>
@ -11,7 +11,6 @@
<LI><A Href=#VieneseWaltzEnd>VieneseWaltzEnd</a>
</ul>
<A Name=VieneseWaltz></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> VieneseWaltz </H2>
@ -28,7 +27,6 @@
</TD></TR>
</Table>
<A Name=VieneseWaltzSus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> VieneseWaltzSus </H2>
@ -46,7 +44,6 @@
</TD></TR>
</Table>
<A Name=VieneseWaltz1></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> VieneseWaltz1 </H2>
@ -64,7 +61,6 @@
</TD></TR>
</Table>
<A Name=VieneseWaltz1Sus></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> VieneseWaltz1Sus </H2>
@ -83,7 +79,6 @@
</TD></TR>
</Table>
<A Name=VieneseWaltzEnd></a>
<P>
<Table Border=3 CELLSPACING=0 CELLPADDING=5 BGColor="#eeeeee" Width="60%">
<TR><TD>
<H2> VieneseWaltzEnd </H2>

Some files were not shown because too many files have changed in this diff Show More