Strudelify

new super mario bros ds - title screen

Asuka Ota Hajime Wakai & Koji Kondo

KeyD majorTempo130 bpm
0:00/0:00
// new super mario bros ds - title screen — Asuka Ota Hajime Wakai & Koji Kondo
// 130 bpm, 4/4, key D major. Source: midi.
// Generated by strudelify. One cycle = one bar.
// note: duplicate parts dropped: ch 4 "Ocarina" ocarina (copy of ch 3 "Pan Flute" pan flute)
// note: Transcription provider: pdmx. https://musescore.com/score/5878115; license: https://creativecommons.org/publicdomain/zero/1.0/
// note: Full arrangement: all 50 bars on a 16-step grid, each part at one level. Source detail keeps the original performance.
setcpm(130/4)

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

// other · pan flute
const pan_flute = note("<~@2 A B C D ~@4 A B C D ~@4 A B C D ~@4 A B C D ~@4 A B C D ~@4 A B C D ~@4>".pickRestart({
  A: "a5 b5 ~ a5 b5 ~ a5 b5 ~ a5 b5 ~ d6 ~ [d6,f#6] ~", B: "[d6,g6] ~ [d6,f#6] d6 ~@11 d5",
  C: "a5 b5 ~ a5 b5 ~ a5 b5 ~ a5 b5 a5 d6 ~ [d6,f#6] ~", D: "[d6,g6] ~ [d6,f#6] d6 ~ [a6,d7] ~ [a6,d7] ~@8",
})).s("gm_pan_flute").gain(0.45)

// other · clarinet
const clarinet = note("a4 ~ a4 ~@2 b4 ~ c#5@2 ~@2 b4 ~ b4!2 ~").s("gm_clarinet").gain(0.22)

// other · clarinet
const clarinet_2 = note("f#4 ~ f#4 ~@2 g4 ~ a4@2 ~@2 g4 ~ g4!2 ~").s("gm_clarinet").gain(0.2)

// other · clarinet
const clarinet_3 = note("d4 ~ d4 ~@2 d4 ~ e4@2 ~@2 d4 ~ d4!2 ~").s("gm_clarinet").gain(0.19)

// other · marimba · "Marimba (Great Stave)"
const marimba = note("<A@6 B A@2 C A@4 B A@2 C A@4 B A@2 C A@4 B A@2 C A@4 B A@2 C A@4 B A@2 C>".pickRestart({
  A: "a4 d5 f#5 d5 b4 d5 g5 d5 c#5 e5 a5 e5 b4 d5 g5 d5", B: "a4 d5 f#5 d5 b4 d5 g5 d5 c#5 e5 a5 e5 g5 b4 d5 g5",
  C: "a4 d5 f#5 d5 g5 e5 c#5 g5 d5 a5 e5 c#5 g5 d5 a5 d5",
})).s("gm_marimba").gain(0.3)

// chords · marimba · "Xylomarimba"
const marimba_2 = note("<A@5 B A@3 B A@3 B A@3 B A@3 B A@3 B A@3 B A@3 B A@3 B A@3 B A@3 B A@3 B>".pickRestart({
  A: "[f#4,a4]@4 [g4,b4]@3 [a4,c#5]@5 [g4,b4]@4", B: "[f#4,a4]@4 [g4,b4]@3 [a4,c#5]@5 [b4,d5]@4",
})).s("gm_marimba").gain(0.3)

// drums · pedal hat
const pedal_hat = s("hh").struct("~ x!2 ~@2 x!2 ~@2 x!2 ~@2 x!2 ~").gain(0.3)

// drums · shaker
const shaker = s("sh").struct("x!3 ~ x!3 ~ x!3 ~ x!3 ~").gain(0.05)

stack(pan_flute, clarinet, clarinet_2, clarinet_3, marimba, marimba_2, pedal_hat, shaker)