Strudelify

Super Mario Bros Trio

Koji Kondo

KeyC majorTempo200 bpm
0:00/0:00
// Super Mario Bros Trio — Koji Kondo
// 200 bpm, 4/4, key C major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: Tempo changes preserved in elapsed time; displayed bars use the dominant tempo.
// note: metre changes (4/4 at bar 1, 3/4 at bar 64, 2/4 at bar 85, 4/4 at bar 86, ...) are rendered on a constant 4/4 grid of one bar per cycle
// note: Transcription provider: pdmx. https://musescore.com/score/4904769; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 166 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(200/4)

// Notation: c3@3 lasts 3 steps · ~ is a rest · "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.

// melody · flute
const flute = note(`<
  A B C D E F C D E F ~ G ~ H ~ G I J K L M N K O P Q R S T U R S V W R S T U R S V W N X N Y N Z P Q AA AB AC@5 AD AE@2
  AF AG ~@2 N@2 ~ N Y ~@3 AH AI AJ AK AL Y ~ Z ~@4 AM AN AO@2 AG ~@3 AP@2 AQ AR AS AT@3 AU@3 AV AW AX AY AZ@2 BA@2 BB BC
  BD BE@3 BF BG ~ A BH BI BJ BK@3 BL BM BN@3 BO@2 BP@2 BQ BR@4 BS BT@2 BS BU@2 BV BW@2 BX@2 BY BZ CA CB CC@3 CD@2 CE CF
  CG@3
>`.pickRestart({
  A: "e5!2 ~ e5 ~ c5 e5@2", B: "g5 ~ g6 ~", C: "c6@2 ~ g5@2 ~ e5@2", D: "~ a5 ~ b5@2 a#5 a5@2",
  E: "g5@3 e6@2 g6@3 a6@4 f6@2 g6@2", F: "~ e6@2 c6 d6 b5@2 ~", G: "~ g#5 a5 c6 ~ a5 c6 d6", H: "~ c6@2 c6 c6@2 ~@2",
  I: "~@2 d#6@2 ~ d6@3", J: "c6 ~@3", K: "g#5", L: "g5@15 ~", M: "g#5 a#5", N: "~@4 b5 e6@3", O: "g5@2 e5 ~",
  P: "e6!2 ~ e6 ~ c6 e6@2", Q: "g6 ~@3", R: "e6 c6@2 g5 ~ g#5@3", S: "a5 f6@2 f6 a5@2 ~@2",
  T: "b5@3 a6@2 a6@3 a6@3 g6@2 f6@3", U: "e6 c6@2 a5 g5@2 ~@2", V: "b5@2 f6@4 f6@2 f6@3 e6@2 d6@3", W: "c6 ~",
  X: "b5 e6 b5 e6@3 ~@2", Y: "~@2 g5 c6 e6 c6 d6 g6", Z: "b5 e6@3 ~@4", AA: "c6@2 ~ c6@2 c6@4 c6@2 ~ c6@4",
  AB: "c6@2 c6@2 ~ b5@2 ~ b5@2 b5@4 b5@2",
  AC: "[~ b5@4 b5@2 b5@2 ~ c6@2 ~ c6@2 c6@4 c6@2 ~ c6@4 c6@2 ~ c6@2 b5@2 ~ b5@2 b5@4 b5@2 ~ b5@4 b5@2 ~ b5@2 b5 ~ e6@3 b5 ~ e6 b5 e6@6 ~ b5 e6 ~ e6@2 b5 ~ e6@4 b5]/5",
  AD: "e6@4 ~@2 g5 ~ c6 e6 c6 ~ d6 g6 ~@2",
  AE: "[~@4 b5 e6 b5 ~ e6 b5 e6 b5 ~ e6 e6@5 ~@3 g5 c6 ~ e6 c6 d6 ~ g6 ~@2]/2",
  AF: "~ g5 c6 e6 c6 ~ d6 g6 e6@2 e6@2 ~@2 e6@2", AG: "~ c6 e6@2 g6@2 ~@2", AH: "~@8 g#5 ~ c6 d#6 a#5 ~ d6 f6",
  AI: "c6 ~ e6 g6 ~@12", AJ: "~@4 b5 e6 b5 e6", AK: "b5 e6@3 ~@2 g5 c6", AL: "e6 c6 d6 g6 ~@4", AM: "~@4 f#6 g6 g#6 a6",
  AN: "~@4 b5 f6 ~ f6", AO: "[f6@2 e6@2 ~@2 d6@2 c6@11 ~@5 e6@2 e6@2 ~@2 e6@2]/2",
  AP: "[~@5 g6@2 g6@2 ~ g6@2 ~@3 g6@2 ~@15]/2", AQ: "~@6 c6@5 e6@5", AR: "~@5 b5@4 d#6@5 ~@2", AS: "~@3 c6@5 e6@5 ~@3",
  AT: "[~ c6@5 e6@5 ~@4 c6@5 e6@5 ~@5 c6@5 e6@5 ~@4 c6@4]/3",
  AU: "[~ e6@5 ~@4 c6@5 e6@5 ~@5 b5@4 d6@5 ~@5 a#5@5 d#6@4]/3", AV: "~@5 b5@5 d6@5 ~", AW: "~@3 b5@5 d6@5 ~@3",
  AX: "~@2 b5@5 d6@5 ~@4", AY: "d6@5 f6@5 ~@6", AZ: "[~@13 g5@4 c6@5 ~@5 g5@5]/2",
  BA: "[e6@5 ~@4 g5@5 d6@5 ~@4 g5@5 c#6@4]/2", BB: "~@6 g5@5 e6@5", BC: "~@4 a5@5 f6@5 ~@2", BD: "~@2 a5@5 f6@5 ~@4",
  BE: "[~ a5@4 f6@5 ~@5 g5@5 f6@5 ~@4 g5@5 e6@5 ~@4 d5@5]/3", BF: "d5@5 f5@2 f5@2 ~ f5@2 ~@4", BG: "~@3 g5@13",
  BH: "g5@4 ~@11 d5", BI: "e5@5 d5@2 e5@5 ~ b5@3, ~@6 c6 ~", BJ: "~@4 g5@3 ~@9",
  BK: "[~@8 c6@3 a5@3 ~ f5@3 c6@3 a5@3 ~ f5@3 c6@9 ~ c6@3 c6@3 ~ c6@3]/3", BL: "c#6@3 g#5@3 ~ f5@3 c#6@3 g#5@3",
  BM: "~ f5@3 c#6@9 ~ c#6@2", BN: "[~ c#6@3 ~ c#6@3 d#6@3 a#5@3 ~ g5@3 d#6@3 a#5@3 ~ g5@3 d#6@9 ~ f6@3 f6@3 ~ f6@3]/3",
  BO: "[g6@19 ~ e6@3 e6@3 ~@4 e6@2]/2", BP: "[~@5 c6@3 e6@6 ~ g6@6 ~@11]/2", BQ: "~@9 b5@2 ~ d6@2 ~@2",
  BR: "[d6@2 ~ d6@4 c6@2 ~ d#6@2 ~@3 d#6@2 d#6@2 ~@3 c#6@2 e6@2 ~@3 e6@2 e6@2 ~@3 f6@5 f6@9 c6@3 ~@11]/4",
  BS: "~@8 c6@3 g5@3 ~@2", BT: "[~@14 d6@4 ~ c6@3 ~@10]/2", BU: "[~@15 d6@4 c5@3 ~@10]/2",
  BV: "~@2 c6@2 ~@5 c6@2 ~ c6@3 ~", BW: "[~@15 c6@3 c6 ~ c6 ~@3 f#6 ~ f6 d#6@3 e6 ~, ~@23 g6@2 ~@7]/2",
  BX: "[~ g#5@2 a5 c6 ~@2 a5@2 c6 ~ d6 ~@3 d#6@3 ~@2 f6@4 c6@3 ~@5]/2", BY: "~@4 c6 ~ c6 ~@2 c6 ~@2 c6 d6@3",
  BZ: "e6 ~ c6 ~@2 a5 g5@3 ~@4 c6!2 ~", CA: "~ c6 ~@2 c6 ~ d6 e6 ~@8", CB: "~@5 c6!2 ~@2 c6 ~@2 c6 ~ d6@2",
  CC: "[~ e6@4 c6@4 ~ g5@3 e6@2 e6@2 e6@2 e6@2 c6@2 e6@2 g6@12 ~@11]/3",
  CD: "[~ g5@2 ~ c5@2 e5@2 g5@2 c6@2 e6@2 ~ g6@6 e6@6 ~ g#5@2 c5@2]/2", CE: "d#5@2 ~ g#5@2 c6@2 d#6@2 g#6@6 ~",
  CF: "d#6@6 ~ a#5@2 d5@2 f5@2 a#5@2 ~", CG: "[d6@2 f6@2 a#6@6 ~ a#6@2 a#6@2 a#6@2 c6@19 ~@12]/3",
})).s("gm_flute").gain(0.3)

stack(flute)

More by Koji Kondo