Strudelify
Tell It to My Heart cover art

Tell It To My Heart

Tell It to My Heart

Taylor Dayne

KeyE♭ majorTempo130 bpm
0:00/0:00
// Tell It to My Heart — Taylor Dayne
// 130 bpm, 3/4, key D# major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: bank select 127 (Roland MT-32 map) read through the MT-32 patch table: 
// note: Full arrangement: all 150 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(130/3)

// Notation: c3@3 lasts 3 steps · ~ is a rest · [c3,e3] is a chord · "a, b" plays two voices at once · [...]/2 spreads a riff over 2 bars.
// A part's distinct bars are riffs (A, B, C...) played in order: edit a riff to change every repeat.

// bass · slap bass 2 · "SLAP BASS"
const bass = note(`<
  ~ A B C D E F G H I J K L M N O L P Q R S T F U S V W X Y Z AA AB AC A B C D E F G H I J K L M N O L P Q R S T F U S V
  W X Y Z AA AB AC A B C D E F G H I J K AD@2 AE AF AG AH AI C D AJ AK AL AM AN AO AP AM AQ AR AS AT ~@3 AD@2 AE AF AG
  AH AI C D AJ AK AU H I AV AW AX AY AE AZ AG BA B C D E BB AU H I AV AW AX AY AE AZ AG BA B C D E F G H I J BC BD BE
>`.pickRestart({
  A: "~@5 db2 ~@2 db2 ~@2 db2!2 ~@2 db2", B: "~ db2 ~@3 ab2 ~ bb2 ab2 g2 ~ eb2 ~ eb2 ~@2, ~@2 db2 ~@5",
  C: "eb2!2 ~@2 eb2 ~@2 eb2 ~ eb2 ~ eb2!2 ab2 ~ bb2", D: "c2 ~@2 c2 ~ c2 ~ c2 ~ c2 ~@2 c2 ~@2 c2",
  E: "c2!2 ~ g2 ab2 f2 ~@2 f2 ~@2 f2!2 ~@2 f2", F: "~ f2 ~@2 f2!2 ~ f2 g2 ab2 ~ db2 ~ db2 ~@2",
  G: "db2!2 ~@2 c3 ~@2 db3 ~ c3 ~ bb2 ~ ab2 ~@2", H: "eb2 ~@2 eb2 ~ eb2 ~ eb2 ~ eb2 ~@2 eb2 ~@2 eb2",
  I: "eb2!2 ~ ab2 bb2 c2 ~@2 c2 ~@2 c2!2 ~@2 c2", J: "~ c2 ~@2 c2!2 ~ c2 ~ ab2 ~ f2 ~ f2 ~@2, ~@4 g2 ~@3",
  K: "f2!2 ~@2 f2 ~@2 f2 ~ f2 ~ f2 c3 eb3 ~ f3", L: "f2 ~@2 f2 ~ f2 ~@2 f2!2 ~@2 f2 ~@2 f2",
  M: "f2!2 ~ g2 ab2 eb2 ~@2 eb2 ~@2 eb2 ~ eb2 ~ eb2", N: "~ eb2 ~@2 eb2!2 ~ eb2 f2 g2 ~ eb2 ~ eb2 ~@2",
  O: "eb2 ~@2 eb2!2 ~@2 eb2 ~ eb2 ~ eb2!2 g2 ~ ab2", P: "f2!2 ~ ab2 bb2 f2 ~@2 f2 ~@2 f2 ~ f2 ~ f2",
  Q: "~ f2 ~@2 f2!2 ~ f2 g2 ab2 ~ eb2 ~ eb2 ~@2", R: "eb2 ~@2 eb2!2 ~@2 eb2 ~ eb2 ~ eb2 ~ f2 ~ g2, ~@6 eb2 ~",
  S: "c2 ~@2 c2 ~ c2 ~@2 c2!2 ~@2 c2 ~@2 c2", T: "eb2 c2 ~@2 ab2 f2 ~@2 f2 ~@2 f2 ~ f2 ~ f2, ~@3 g2@2 ~@11",
  U: "db2 ~@2 db2!2 ~@2 db2 ~ db2 ~@2 eb2 f2 ~ eb2, ~@11 db2@2 ~@3",
  V: "c2!2 ~@2 f2 c2 ~@2 c2 ~@2 c2 ~ c2 ~ c2, ~@3 eb2@2 ~@11", W: "~ c2 ~@2 c2 bb2 ~ ab2 f2 eb2 ~ bb1 ~ bb1 ~@2",
  X: "bb1 ~@2 bb1!2 ~@2 bb1 ~ bb1 ~ bb1!3 ~ c2", Y: "db2 ~@2 db2 ~ db2 ~@2 db2!2 ~@2 db2 ~@2 db2",
  Z: "bb2 ab2 ~ f2 eb2 bb1 ~@2 bb1 ~@2 bb1 ~ bb1 ~ bb1", AA: "~ bb1 ~@2 bb1 bb2 ~ ab2 f2 eb2@2 c2 ~ c2 ~@2",
  AB: "c2 ~@2 c2!2 ~@2 c2 ~ c2 ~ c2 g2 bb2 ~ c3", AC: "c2 ~@2 c2 ~ c2 ~@2 c2!2 ~@6",
  AD: "[db2 ~@2 db2 ~ db2 ~ db2 ~ db2 ~@2 db2 ~@3 ab2 bb2 ~ ab2 g2 eb2 ~@2 eb2 ~@2 eb2!2 ~@2 eb2, ~@15 db2@2 ~@15]/2",
  AE: "~ eb2 ~@2 eb2!2 ~ eb2 ab2 bb2 ~ c2 ~ c2 ~@2", AF: "c2!2 ~@2 c2 ~@2 c2 ~ c2 ~ c2!2 g2 ~ ab2",
  AG: "f2 ~@2 f2 ~ f2 ~ f2 ~ f2 ~@2 f2 ~@2 f2", AH: "f2!2 ~ g2 ab2 db2 ~@2 db2 ~@2 db2!2 ~@2 c3",
  AI: "~ db3 ~@2 c3 bb2 ~@2 ab2 ~@2 eb2 ~ eb2 ~@2", AJ: "c2!2 ~@2 ab2 f2 ~@2 f2 ~@2 f2!2 ~@2 f2, ~@3 g2@2 ~@11",
  AK: "~ f2 ~@2 f2!2 ~ c3 eb3 f3 ~ db2 ~ db2 ~@2", AL: "db2!2 ~@2 db2 ~@2 db2 ~ db2 ~ db2!3 ~ db2",
  AM: "db2 ~@2 db2 ~ db2 ~ db2 ~ db2 ~@2 db2 ~@2 db2", AN: "db2!2 ~ db2!2 c2 ~@2 c2 ~@2 c2!2 ~@2 c2",
  AO: "~ c2 ~@2 c2!2 ~ c2!3 ~ f2 ~ f2 ~@2", AP: "f2!2 ~@2 f2 ~@2 f2 ~ f2 ~ f2!3 ~ f2",
  AQ: "db2!2 ~ db2!3 ~@2 db2 ~@2 db2!2 ~@2 db2", AR: "~ db2 ~@2 db2!2 ~ db2!3 ~ c2 ~ c2 ~@2",
  AS: "c2!2 ~@2 c2 ~@2 c2 ~ c2 ~ c2!3 ~ c2", AT: "f2 ~@15", AU: "db2!2 ~@2 db2 ~@2 db2 ~ db2@2 ab2 bb2 ab2 ~ g2",
  AV: "~ c2 ~@2 c2!2 ~ c2 g2 ab2 ~ f2 ~ f2 ~@2", AW: "f2!2 ~@2 f2 ~@2 f2 ~ f2 ~ f2!2 g2 ~ ab2",
  AX: "db2 ~@2 db2 ~ db2 ~ db2 ~ c3 ~@2 db3 ~@2 c3", AY: "bb2 ~@2 ab2 ~ eb2 ~@2 eb2 ~@2 eb2!2 ~@2 eb2",
  AZ: "c2!2 ~@2 c2 ~@2 c2 ~ c2 ~ c2!2 g2@2 ab2", BA: "f2 c3 ~ eb3 f3 db2 ~@2 db2 ~@2 db2!2 ~@2 db2",
  BB: "~@11 db2 ~ db2 ~@2", BC: "f2!2 ~@2 f2 ~@11", BD: "db2 ~@2 db2 ~@7 eb2 ~ eb2 ~@2",
  BE: "~ c2 ~ eb2 f2 ~@11, bb1 ~@7",
})).s("gm_slap_bass_2").gain(0.35)

// chords · epiano1 · "E.PIANO"
const epiano1 = note(`<
  ~ A@3 B@4 C@4 D@4 E@4 F@4 G@4 H@4 I J@3 K@4 L@4 D@4 E@4 F@4 G@4 H@4 I J@3 K@4 M@4 N@4 O P@3 Q@4 R@4 S@4 T@2 ~@2 N@4 O
  P@3 U@4 V@4 W@4 X@4 Y@2 Z@2 AA@4 AB@4 AC AD@3 AE@4 AF@4 AG AH
>`.pickRestart({
  A: "[~@5 [db4,db5]@19 ~@3 [eb2,eb4,g4,bb4,eb5]@19 ~@2, ~@5 db2@21 ~@22, ~@5 [f4,ab4]@17 ~@26]/3", // Db Eb Fm
  B: "[[eb4,g4,bb4,eb5]@17 ~@4 [f4,ab4,c5,f5]@12 ~@4 [eb2,eb4,bb4,eb5]@5 ~ [db4,f4,ab4,db5]@19 ~@2, c2@20 ~ f2@15 ~ g4@3 ~@3 db2@21]/4", // Eb Fm Eb5 Db
  C: "[[eb2,eb4,g4,bb4,eb5]@19 ~@2 [eb4,g4,bb4,eb5]@19 ~@3 [f2,f4,ab4,c5,f5]@17 ~@4, ~@21 c2@22 ~@21]/4", // Eb Fm
  D: "[[c4,f4,ab4]@17 ~@4 [eb2,bb3,eb4,g4]@20 ~@2 [eb2,bb3,eb4]@20 ~, f2@21 ~@22 g4@18 ~@3]/4", // Fm Eb Eb5
  E: "[[f2,c4,f4,ab4]@20 ~ [f2,f4,ab4]@19 ~@3 [eb2,bb3,eb4,g4]@20 ~, ~@21 c4@17 ~@26]/4", // Fm Eb
  F: "[[c2,c4,eb4]@20 ~ [f2,c4,f4,ab4]@19 ~@3 [db2,db4,f4,ab4]@20 ~, g4@9 ~@23]/4", // Cm Fm Db
  G: "[[c2,c4,eb4,ab4]@19 ~@2 [c2,g4]@20 ~@2 [bb1,bb3,db4,f4]@20 ~, ~@21 [c4,eb4]@18 ~@25]/4", // Ab C5 Bbm Cm
  H: "[[db2,db4,ab4]@20 ~ [bb1,bb3,db4,f4]@20 ~@2 [c2,c4,f4,g4]@15 ~ [c2,c4,f4,g4]@4 ~, f4@9 ~@23]/4", // Db5 Bbm Csus4
  I: "[c2,c4,e4,g4]@5 ~@3", J: "[~@5 [db4,f4,ab4,db5]@16 ~@6 [eb4,g4,bb4,eb5]@16 ~@5, ~@5 db2@21 ~ eb2@21]/3",
  K: "[[bb3,eb4,g4,bb4]@16 ~@5 [c4,f4,ab4,c5]@11 ~@5 [eb2,eb4,g4,bb4]@5 ~ [db4,f4,ab4,db5]@16 ~@5, c2@21 f2@16 ~@6 db2@21]/4", // Eb Fm Eb Db
  L: "[[eb4,g4,bb4,eb5]@16 ~@5 [bb3,eb4,g4,bb4]@16 ~@6 [f2,c4,f4,ab4,c5]@21, eb2@21 c2@21 ~@22]/4", // Eb Fm
  M: "[[eb4,g4,bb4,eb5]@16 ~@5 [bb3,eb4,g4,bb4]@16 ~@6 [f2,ab4]@16 [eb2,bb3,eb4,g4]@4 ~, eb2@21 c2@21 ~ [c4,f4]@13 ~@8]/4", // Eb Fm Eb F5
  N: "[[db2,db4]@21 [eb2,eb4,g4,bb4]@20 ~@2 [c4,eb4,g4]@17 ~@4, [f4,ab4]@19 ~@24 c2@21]/4", // Db Eb Cm Fm
  O: "[f2,c5]@15 ~, [f4,ab4]@13 ~@3", // F5 Fm
  P: "[[eb2,bb4]@5 [db4,ab4]@19 ~@3 [eb4,g4,bb4]@18 ~@3, [eb4,g4]@4 ~ db2@21 ~ eb2@21, ~@5 f4@17 ~@26]/3", // Eb5 Db5 Eb
  Q: "[[c4,eb4,g4]@19 ~@2 [f2,f4,ab4,c5]@20 ~@2 [db4,f4,ab4,db5]@17 ~@4, c2@21 ~@22 db2@19 ~@2]/4", // Cm Fm Db
  R: "[[db2,eb4,g4,eb5]@20 ~ [eb4,bb4,eb5]@18 ~@4 [f4,ab4,c5,f5]@17 ~@4, bb4@18 ~@3 c2@21 ~ f2@19 ~@2, ~@21 g4@16 ~@27]/4", // Eb7 Eb5 Fm
  S: "[[db4,f4,ab4,db5]@17 ~@4 [db2,eb4,g4,bb4,eb5]@21 ~ [eb4,g4,bb4,eb5]@17 ~@4, db2@20 ~@23 c2@20 ~]/4", // Db Eb7 Eb
  T: "[[f2,f4,ab4,c5,f5]@9 ~@7, e5 ~@31]/2", // Fm
  U: "[[c4,eb4,g4]@19 ~@2 [f2,f4,ab4,c5]@20 ~@2 [db4,f4,ab4,db5]@16 ~@5, c2@21 ~@22 db2@21]/4", // Cm Fm Db
  V: "[[eb4,g4,bb4,eb5]@16 ~@5 [bb3,eb4,g4,bb4]@16 ~@6 [c4,f4,ab4,c5]@11 ~@5 [eb2,eb4,g4,bb4]@5, eb2@21 c2@21 ~ f2@16 ~@5]/4", // Eb Fm Eb
  W: "[[db4,f4,ab4,db5]@16 ~@5 [eb4,g4,bb4,eb5]@16 ~@6 [bb3,eb4,g4,bb4]@16 ~@5, db2@21 eb2@21 ~ c2@21]/4", // Db Eb
  X: "[[f2,c4,f4,ab4,c5]@21 [db4,f4,ab4,db5]@17 ~@5 [eb2,eb4,g4,eb5]@20 ~, ~@21 db2@21 ~ bb4@18 ~@3]/4", // Fm Db Eb
  Y: "[[eb4,g4,bb4,eb5]@17 ~@4 [f2,f4,ab4,c5,f5]@11, c2@21 ~@11]/2", Z: "[~@11 [db4,f4,ab4,db5]@16 ~@5, ~@11 db2@21]/2",
  AA: "[[eb2,eb4,g4,eb5]@21 [eb4,g4,bb4,eb5]@16 ~@6 [f4,ab4,c5,f5]@11 ~@5 [eb2,eb4,g4,bb4,eb5]@5, bb4@16 ~@5 c2@21 ~ f2@16 ~@5]/4", // Eb Fm Eb
  AB: "[[f4,ab4,db5]@16 ~@5 [eb2,eb4,g4,eb5]@21 ~ [eb4,g4,bb4,eb5]@16 ~@5, [db2,db4]@21 bb4@16 ~@6 c2@21]/4", // Db Eb Db
  AC: "[f2,f4,ab4,c5,f5]@11 ~@5", AD: "[~@5 [db4,f4,ab4,db5]@16 ~@6 [eb2,eb4,g4,eb5]@21, ~@5 db2@21 ~ bb4@16 ~@5]/3",
  AE: "[[eb4,g4,bb4,eb5]@16 ~@5 [f4,ab4,c5,f5]@11 ~@5 [eb2,eb4,g4,bb4,eb5]@5 ~ [f4,ab4,db5]@16 ~@5, c2@21 f2@16 ~@6 [db2,db4]@21]/4", // Eb Fm Eb Db
  AF: "[[eb2,eb4,g4,eb5]@21 [eb4,g4,bb4,eb5]@16 ~@6 [f2,f4,ab4,c5,f5]@11 ~@10, bb4@16 ~@5 c2@21 ~@22]/4", // Eb Fm
  AG: "[db2,db4,f4] ~@2 [db2,db4,f4] ~@7 [eb2,eb4,g4,bb4] ~ [eb2,eb4,g4,bb4] ~@2, ab4@2 ~ ab4@2 ~@11", // Db Eb
  AH: "~@4 [f2,f4,ab4,c5] ~@11", // Fm
})).s("gm_epiano1").gain(0.2)

// chords · synth strings 1 · "SYN STRING"
const synth_strings_1 = note(`<
  ~ A@3 B@4 C@4 ~@10 D@2 E@4 F@4 G A@3 B@4 C@4 ~@10 D@2 E@4 F@4 G H@3 I@4 J@4 K@4 L M@3 N@4 O@4 P@4 Q@2 ~@2 R@4 S T@3
  U@2 V@2 W@4 X@4 Y@4 Z@2 AA@2 AB@4 AC@4 AD AE@3 AF@4 AG@4 AH AI
>`.pickRestart({
  A: "[~@5 [f4,ab4,db5]@20 ~@2 [g4,bb4,eb5]@20 ~]/3", // Db Eb
  B: "[[g4,bb4]@18 ~@3 [ab4,c5,f5]@15 ~ [g4,bb4,eb5]@4 ~@2 [f4,ab4]@18 ~@3, eb5@20 ~@23 db5@20 ~]/4", // Gm Fm Eb Fm
  C: "[[g4,bb4,eb5]@19 ~@2 [g4,bb4]@17 ~@5 [ab4,c5,f5]@21, ~@21 eb5@19 ~@24]/4", // Eb Gm Fm
  D: "[~@11 [ab4,db5]@20 ~, ~@11 f4@18 ~@3]/2", // Db5
  E: "[[eb4,ab4,c5]@18 ~@3 [eb4,c5]@20 ~@2 [f4,bb4,db5]@20 ~, ~@21 g4@18 ~@25]/4", // Ab Cm Bbm
  F: "[[f4,ab4,db5]@19 ~@2 [f4,bb4,db5]@19 ~@3 [f4,g4,c5]@15 ~ [f4,g4,c5]@4 ~]/4", G: "[e4,g4,c5]@9 ~@7",
  H: "[~@5 [f4,ab4,db5]@20 ~@2 [g4,bb4,eb5]@19 ~@2]/3", // Db Eb
  I: "[[g4,bb4,eb5]@19 ~@2 [ab4,c5,f5]@14 ~@2 [g4,bb4,eb5]@4 ~@2 [f4,ab4,db5]@19 ~@2]/4", // Eb Fm Eb Db
  J: "[[g4,bb4,eb5]@20 ~ [g4,bb4,eb5]@19 ~@3 [ab4,c5,f5]@14 ~@2 [g4,bb4,eb5]@4 ~]/4", // Eb Fm Eb
  K: "[[f4,ab4]@18 ~@3 [g4,bb4,eb5]@20 ~@2 [bb4,eb5]@20 ~, db5@20 ~@23 g4@18 ~@3]/4", L: "[ab4,c5,f5]@7 ~",
  M: "[[g4,bb4,eb5]@4 ~ [f4,ab4]@18 ~@4 [g4,bb4,eb5]@20 ~, ~@5 db5@20 ~@23]/3", // Eb Fm Eb
  N: "[[g4,bb4]@18 ~@3 [ab4,c5,f5]@21 ~ [ab4,db5,f5]@17 ~@4, eb5@5 ~@11]/4", // Gm Fm Db
  O: "[[bb4,eb5,g5]@19 ~@2 [bb4,eb5,g5]@19 ~@3 [f5,ab5]@19 ~@2, ~@43 c5@17 ~@4]/4", // Eb Fm
  P: "[[ab4,f5]@20 ~ [bb4,eb5,g5]@19 ~@3 [bb4,eb5,g5]@19 ~@2, db5@9 ~@23]/4", Q: "[[c5,f5,ab5]@21 ~@11]/2",
  R: "[[ab4,db5,f5]@18 ~@3 [bb4,eb5,g5]@19 ~@3 [bb4,eb5,g5]@19 ~@2]/4", S: "[c5,f5,ab5]@7 ~",
  T: "[[bb4,eb5,g5]@4 ~ [ab4,db5,f5]@19 ~@3 [bb4,eb5,g5]@19 ~@2]/3", U: "[[bb4,eb5,g5]@19 ~@2 [c5,f5,ab5]@11]/2",
  V: "[~@11 [ab4,db5,f5]@18 ~@3]/2", // Db
  W: "[[bb4,eb5,g5]@19 ~@2 [bb4,eb5,g5]@19 ~@3 [c5,f5,ab5]@14 ~@2 [bb4,eb5,g5]@4 ~]/4", // Eb Fm Eb
  X: "[[ab4,f5]@20 ~ [bb4,eb5,g5]@19 ~@3 [bb4,eb5,g5]@20 ~, db5@9 ~@23]/4", // Db Eb
  Y: "[[c5,f5,ab5]@20 ~ [ab4,db5,f5]@20 ~@2 [bb4,eb5,g5]@20 ~]/4", Z: "[[bb4,eb5,g5]@20 ~ [c5,f5,ab5]@11]/2",
  AA: "[~@11 [ab4,db5,f5]@20 ~]/2", // Db
  AB: "[[bb4,eb5,g5]@19 ~@2 [bb4,eb5,g5]@20 ~@2 [f5,ab5]@14 ~@2 [bb4,eb5,g5]@5, ~@43 c5@12 ~@9]/4", // Eb Fm Eb
  AC: "[[ab4,db5,f5]@19 ~@2 [bb4,eb5,g5]@20 ~@2 [bb4,eb5,g5]@19 ~@2]/4", AD: "[c5,f5,ab5]",
  AE: "[~@5 [ab4,db5,f5]@20 ~@2 [bb4,eb5,g5]@20 ~]/3", // Db Eb
  AF: "[[bb4,eb5,g5]@19 ~@2 [f5,ab5]@15 ~ [bb4,eb5,g5]@5 ~ [ab4,f5]@20 ~, ~@21 c5@13 ~@9 db5@18 ~@3]/4", // Eb Fm Eb Db
  AG: "[[bb4,eb5,g5]@19 ~@2 [bb4,eb5,g5]@20 ~@2 [c5,f5,ab5]@13 ~@8]/4", // Eb Fm
  AH: "[db5,f5,ab5] ~@2 [db5,f5] ~@7 [eb5,g5,bb5] ~ [eb5,g5,bb5] ~@2, ~@3 ab5@2 ~@11", AI: "~@4 [f5,ab5,c6] ~@11",
})).s("gm_synth_strings_1").gain(0.05)

// other · pad new age · "FANTASIA"
const pad_new_age = note(`<
  A B C D E F G@2 H I J K L ~@19 A B C D E F G@2 H I J K L ~@19 A B C D E F G@2 H I J K L ~@9 M ~@12 N O P Q R S T U V W
  X ~@16 Y@2 Z AA AB AC AD AE AF AG@2 AH U AI E AJ AF AK AL AM AN AO AP AQ
>`.pickRestart({
  A: "~@11 bb5@2 c6@2 ~", B: "bb5@2 ~ ab5@2 f5@9 ~@2", C: "bb5@2 ~ c6@2 bb5@2 ~ ab5@3 f5@2 eb5@2 ~",
  D: "eb5@5 bb5@2 ~ c6@2 ~ bb5@2 ab5@3", E: "f5@5 g5@5 ~ ab5@5", F: "c6@3 bb5@5 ab5@2 ~ ab5@4 ~",
  G: "[bb5@2 ~ c6@2 bb5@2 ~ ab5@3 f5@8 ~@2 bb5@2 ~ c6@2 ~ bb5@2 ab5@3]/2", H: "f5@3 eb5@2 eb5@4 ~@2 bb5@2 c6@2 ~",
  I: "bb5@3 ab5@2 f5@6 g5@5", J: "ab5@5 c6@3 bb5@5 ab5@2 ~", K: "ab5@4 ~ bb5@2 ~ c6@2 ~ bb5@2 ab5@3", L: "f5@9 ~@7",
  M: "~@11 f5@5, ~@11 ab5 ~@4", N: "~@5 bb5@3 c6@3 bb5@2 ab5@3", O: "f5@9 ~@2 bb5@2 c6@2 ~",
  P: "bb5@3 ab5@2 f5@3 eb5 ~@2 eb5@4 ~", Q: "bb5@2 ~ c6@2 bb5@2 ~ ab5@2 ~ f5@5", R: "g5@4 ~ ab5@4 ~@2 c6@2 bb5@3",
  S: "~@3 ab5@2 ab5@4 ~@2 bb5@2 c6@2 ~", T: "bb5@2 ~ ab5@2 f5@6 ~@5", U: "bb5@2 ~ c6@2 bb5@3 ab5@3 f5@2 eb5 ~@2",
  V: "eb5@3 ~@2 bb5@2 ~ c6@2 ~ bb5@2 ab5@2 ~", W: "f5@5 g5@4 ~@2 ab5@4 ~", X: "c6@2 ~ bb5@4 ~ ab5@2 ~ ab5@2 ~@3",
  Y: "[bb5@2 ~ c6@2 bb5@2 ~ ab5@3 f5@9 ~ bb5@2 ~ c6@3 bb5@2 ab5@3]/2", Z: "f5@3 eb5 ~ eb5@4 ~@2 bb5@2 c6@2 ~",
  AA: "bb5@3 ab5@2 f5@5 ~ g5@5", AB: "ab5@5 c6@2 ~ bb5@5 ab5@2 ~", AC: "ab5@3 ~@2 bb5@2 ~ c6@2 ~ bb5@2 ab5@3",
  AD: "f5@7 ~@4 bb5@2 c6@2 ~", AE: "bb5@3 ab5@2 f5@3 eb5@2 ~ eb5@3 ~@2", AF: "bb5@2 ~ c6@2 bb5@3 ab5@3 f5@5",
  AG: "[g5@4 ~ ab5@5 ~ c6@2 bb5@5 ~ ab5 ~ ab5@3 ~@3 bb5@2 c6@3]/2", AH: "bb5@3 ab5@2 f5@6 ~@5",
  AI: "eb5@3 ~@2 bb5@2 ~ c6@3 bb5@2 ab5@2 ~", AJ: "c6@3 bb5@4 ~ ab5@2 ~ ab5@3 ~@2", AK: "~@5 bb5@2 ~ c6@3 bb5@2 ab5@3",
  AL: "f5@3 eb5 ~ eb5@3 ~@3 bb5@2 c6@2 ~", AM: "bb5@3 ab5@2 f5@5 ~ g5@4 ~", AN: "ab5@4 ~ c6@2 ~ bb5@4 ~ ab5@2 ~",
  AO: "ab5@3 ~@2 bb5@2 ~ c6@3 bb5@2 ab5@2 ~", AP: "f5 ~@2 f5 ~ bb5 ~@2 bb5 ab5 ~ f5@2 eb5 ~@2, ~@7 c6@2 ~@7",
  AQ: "bb4 c5 ~ eb5 f5 ~@11",
})).s("gm_pad_new_age").gain(0.4)

// other · synth brass 1 · "SYNTHBRASS"
const synth_brass_1 = note(`<
  ~@16 A B ~@2 C D@3 ~@2 E@3 ~ F@2 G ~@15 A B ~@2 C D@3 ~@2 E@3 ~ F@2 G ~@11 H I J K H L M N O P Q ~@22 R S T U@2 V W
  X@2 Y Z AA AB@2 AC AD@2 ~@23 AE
>`.pickRestart({
  A: "~@3 eb5 ~ f5 ~ c5 ~ bb4 ~@2 c5 ~@2 ab4", B: "~ bb4 ~ f4 ~@12", C: "c5 bb4",
  D: "[ab4@4 ~ ab4@16 g4@6 f4@17 ~@4]/3", E: "[~@15 eb5@4 f5 ~ c5@4 eb5 ~@3 bb4@5 ~ ab4@3 ~@10]/3",
  F: "[~@11 f4@7 ~ g4@8 c5@5]/2", G: "c5@11 ~@5", H: "~ f4 ~ ab4 f4 bb4 ~@2 c5 f4 ~@2 f4 ab4 ~ f4",
  I: "bb4 ~@2 ab4 bb4 ~@2 f4 ab4 f4 ~ bb4 ~ c5 ~ f4", J: "~ f4 ~ ab4 f4 bb4 ~@2 bb4 ~@3 f4 ab4 ~ f4",
  K: "bb4 ~@2 c5 f4 ~@2 f4 ab4 f4 ~ bb4 ~ c5 ~@2", L: "eb5 ~@2 c5 ~@3 f4 ab4 f4 ~ bb4 c5 ab4 ~ f4",
  M: "~ f4 ~ ab4 f4 c5 ~ f4 ab4 f4 ~@2 f4 ab4 ~ f4", N: "bb4 c5 ~ ab4 f4 ~@2 f4 ab4 f4 ~ c5 f4 bb4 ~ f4",
  O: "~ f4 ~ ab4 f4 bb4 ~ c5 ab4 f4 ~@2 f4 ab4 ~ f4", P: "bb4 f4 ~ c5 f4 ~@2 f4 ab4 f4 ~ bb4 c5 ab4 ~ f4",
  Q: "~ f4 ~ bb4 f4 c5 ~ f4 ~@8", R: "~@13 c5 ~ eb5", S: "~ c5 ~ eb5!3 ~ bb4 c5 eb5 ~ f5!3 ~@2",
  T: "eb5 ~@2 c5 eb5 ~@2 eb5@2 f5@2 ~ c5 eb5 ~ c5",
  U: "[eb5!2 ~ eb5 ~ f5@2 ~ eb5 g5 ~@2 g5@2 ~ eb5@2 c5 ~ eb5 c5 f5 ~ f5!2 ~@2 eb5@2 c5 ~ eb5]/2",
  V: "~ eb5 ~@2 f5@2 ~ c5 eb5 c5 ~ f5!2 eb5 ~@2", W: "f5 ~@2 eb5 f5 ~@2 f5 eb5 f5 ~ g5!2 ab5 ~@2",
  X: "[f5!2 ~ f5@2 eb5@2 ~ c5 eb5@2 ~ eb5@2 ~ f5@2 c5 ~ eb5 c5 eb5 ~ eb5 eb5@2 ~ f5@2 eb5 ~ g5]/2",
  Y: "~ g5@2 ~ eb5@2 ~ c5 eb5 c5 ~ f5!2 f5@2 ~", Z: "eb5@2 ~ c5 eb5@2 ~ eb5@2 f5@2 ~ c5 eb5 ~ c5",
  AA: "f5!2 ~ eb5@2 f5@2 ~ eb5 f5 ~@2 f5 eb5@2 f5",
  AB: "[ab5 ab5@2 g5 ~ f5 ~ f5 f5@2 ~ eb5@2 c5 ~ eb5@2 eb5@2 ~ f5@2 ~ c5 eb5 c5 ~ eb5!2 eb5@2 ~]/2",
  AC: "f5@2 ~ eb5 g5 ~@2 g5@2 eb5@2 ~ c5 eb5 ~ c5",
  AD: "[f5!2 ~ f5@2 eb5@2 ~ c5 eb5@2 ~ eb5@2 ~ f5@2 c5 ~@2 c5 f5 ~ f5 eb5@2 ~ f5@2 eb5 ~ f5, ~@19 eb5@2 ~@11]/2",
  AE: "~ bb5 ~ ab5 f5 ~@11, c6 ~@7",
})).s("gm_synth_brass_1").gain(0.45)

// chords · synth brass 1 · "SYNTHBRASS"
const synth_brass_1_2 = note(`<
  ~@22 A@2 B C D ~ E F G@2 H ~@21 A@2 B C D ~ E F G@2 H ~@10 I ~@34 J ~@25 K L ~@9 I M N
>`.pickRestart({
  A: "~@11 [db5,f5,ab5]@2 ~@3", B: "[c5,eb5,ab5] ~@7", C: "[eb5,ab5]@2 ~@3 [eb5,g5,bb5]@2 ~@9, c5 ~@15",
  D: "~@5 [bb4,eb5,g5]@3 ~@8", E: "[db5,f5,ab5]@3 ~@13", F: "[db5,f5,ab5]@3 ~@2 [db5,f5,bb5]@3 ~@8",
  G: "[~@5 [db5,f5,bb5]@2 ~@4 [c5,f5,g5,c6]@15 ~ [c5,f5,g5,c6]@5]/2", H: "[c5,e5,g5,c6] ~",
  I: "~@7 [eb5,g5,bb5] ~@3 [eb5,g5,bb5]@4 ~", J: "~ [eb5,g5,bb5] ~@3 [eb5,g5,bb5]@4 ~@7", K: "~@12 [eb5,g5,bb5] ~@3",
  L: "[eb5,g5,bb5] ~@3", M: "[ab4,db5] ~@2 [f4,ab4,db5] ~@7 [g4,bb4,eb5] ~ [g4,bb4,eb5] ~@2", N: "~@4 [ab4,c5,f5] ~@11",
})).s("gm_synth_brass_1").gain(0.3)

// drums · kick
const kick = s("bd").struct(`<
  ~ A B C D E F G H A B I D E J G H A B C D E K G H A B C L E J M N O B C D E J G H A B C D E J G H A B C D E K G H A B
  C L E J M N O B C D E J G H A B C D E J G H A B C D E J G H A B C D E J G P Q ~ R D E J G H A B C D E J G H A B C D E
  J G H A B C D E S G H A B C D E J G H A B C D E J G H A B T U V
>`.pickRestart({
  A: "~@5 x ~@2 x!2 ~@3 x ~@2", B: "~@3 x!2 ~@2 x!2 ~@2 x!3 ~@2", C: "~ x ~@2 x!2 ~ x ~ x ~@6",
  D: "x ~@2 x!2 ~@3 x ~@4 x ~ x", E: "~ x ~ x ~ x ~ x!2 ~@3 x ~@2 x", F: "~ x ~@2 x ~@6 x ~ x ~ x",
  G: "~@3 x ~@4 x!2 ~@2 x!2 ~@2", H: "x!2 ~ x ~@3 x ~ x ~ x!2 ~@2 x", I: "~ x ~@2 x ~@2 x ~ x ~@6",
  J: "x!2 ~@2 x ~@6 x ~ x ~ x", K: "x!2 ~@2 x!2 ~@5 x ~ x ~ x", L: "x ~@2 x!2 ~@3 x!2 ~@3 x ~ x",
  M: "~@3 x!2 ~@3 x!2 ~@2 x!2 ~@2", N: "x!2 ~@7 x ~@2 x!2 ~ x", O: "x!2 ~ x ~ x ~@2 x!2 ~@3 x ~@2",
  P: "x ~@4 x ~@5 x ~@4", Q: "x ~@4 x ~@10", R: "x", S: "~ x ~ x!3 ~ x!2 ~@2 x ~ x ~ x",
  T: "~ x ~@2 x ~@2 x!3 ~ x!3 ~@2", U: "x ~@2 x ~@3 x!3 ~@6", V: "~ x ~@2",
})).gain(0.35)

// drums · snare
const snare = s("sd").struct(`<
  ~ A B C B D E D B F B C B D B D B F B D B D G D B F B C B D B D H A B C B D E D B F B C B D B D B F B D B D G D B F B
  C B D B D H A B C B D E D B F B C B D E D B F B C B D E D B F B C B D E D ~@4 B D E D B F B C B D E D B F B C B D E D
  B F B C B D I D B F B C B D E D B F B C B D E D B F B J K I
>`.pickRestart({
  A: "~@11 x ~@4", B: "~@5 x ~@10", C: "x ~@10 x ~ x ~ x", D: "x ~@10 x ~@4", E: "~@5 x ~@2 x!2 ~@6",
// … 76 more lines

More by Taylor Dayne