A simple drum solo song coded in spi. Music sheet : https://drumeoblog.s3.amazonaws.com/beat/wp-content/uploads/2021/11/08134344/1.-Another-One-Bites-The-Dust.pdf
use_bpm 110
BD = [1,0,1,0,1,0,1,0]
CH = [1,1,1,1,1,1,1,1]
SN = [0,0,1,0,0,0,1,0]
n = 0
(18*(SN.length)).times do
tick
if 0 == n
sample :drum_bass_hard if BD.look == 1
else
sample :drum_bass_soft if BD.look == 1
end
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.5
n = n + 1
n = n%(SN.length)
end
BD = [1,0,1,0,1,0,1,0]
CH = [1,1,1,1,1,1,1,1]
SN = [0,0,1,0,0,0,1,0]
n = 0
(SN.length/2).times do
tick
if 0 == n
sample :drum_bass_hard if BD.look == 1
else
sample :drum_bass_soft if BD.look == 1
end
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.5
n = n + 1
n = n%(SN.length)
end
BD = [1,0,0,0,0,1,0,0]
CH = [1,0,0,0,1,0,0,0]
SN = [0,1,1,1,1,0,0,0]
(SN.length).times do
tick
sample :drum_bass_soft if BD.look == 1
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.25
end
BD = [1,0,1,0,1,0,1,0]
CH = [1,1,1,1,1,1,1,1]
SN = [0,0,1,0,0,0,1,0]
n = 0
(18*(SN.length)).times do
tick
if 0 == n
sample :drum_bass_hard if BD.look == 1
else
sample :drum_bass_soft if BD.look == 1
end
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.5
n = n + 1
n = n%(SN.length)
end
BD = [1,0,1,0,1,0,1,0]
CH = [1,1,1,1,1,1,1,1]
SN = [0,0,1,0,0,0,1,0]
n = 0
(SN.length/2).times do
tick
if 0 == n
sample :drum_bass_hard if BD.look == 1
else
sample :drum_bass_soft if BD.look == 1
end
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.5
n = n + 1
n = n%(SN.length)
end
BD = [1,0,0,0,0,1,0,0]
CH = [1,0,0,0,1,0,0,0]
SN = [0,1,1,1,1,0,0,0]
(SN.length).times do
tick
sample :drum_bass_soft if BD.look == 1
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.25
end
BD = [1,0,1,0,1,0,1,0]
CH = [1,1,1,1,1,1,1,1]
SN = [0,0,1,0,0,0,1,0]
n = 0
(17*(SN.length)).times do
tick
if 0 == n
sample :drum_bass_hard if BD.look == 1
else
sample :drum_bass_soft if BD.look == 1
end
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.5
n = n + 1
n = n%(SN.length)
end
BD = [1,0,1,0,1,0,1,0]
CH = [1,1,1,1,1,1,1,1]
SN = [0,0,1,0,0,0,1,0]
n = 0
(SN.length/2).times do
tick
if 0 == n
sample :drum_bass_hard if BD.look == 1
else
sample :drum_bass_soft if BD.look == 1
end
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.5
n = n + 1
n = n%(SN.length)
end
BD = [1,0,0,0,0,1,0,0]
CH = [1,0,0,0,1,0,0,0]
SN = [0,1,1,1,1,0,0,0]
(SN.length).times do
tick
sample :drum_bass_soft if BD.look == 1
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.25
end
1.times do
play :r
sleep 16
end
BD = [1,0,1,0,1,0,1,0]
CH = [1,1,1,1,1,1,1,1]
SN = [0,0,1,0,0,0,1,0]
n = 0
(11*(SN.length)).times do
tick
if 0 == n
sample :drum_bass_hard if BD.look == 1
else
sample :drum_bass_soft if BD.look == 1
end
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.5
n = n + 1
n = n%(SN.length)
end
BD = [1,0,1,0,1,0,1,0]
CH = [1,1,1,1,1,1,1,1]
SN = [0,0,1,0,0,0,1,0]
n = 0
(SN.length/2).times do
tick
if 0 == n
sample :drum_bass_hard if BD.look == 1
else
sample :drum_bass_soft if BD.look == 1
end
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.5
n = n + 1
n = n%(SN.length)
end
BD = [1,0,0,0,0,1,0,0]
CH = [1,0,0,0,1,0,0,0]
SN = [0,1,1,1,1,0,0,0]
(SN.length).times do
tick
sample :drum_bass_soft if BD.look == 1
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.25
end
BD = [1,0,1,0,1,0,1,0]
CH = [1,1,1,1,1,1,1,1]
SN = [0,0,1,0,0,0,1,0]
n = 0
(15*(SN.length)).times do
tick
if 0 == n
sample :drum_bass_hard if BD.look == 1
else
sample :drum_bass_soft if BD.look == 1
end
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.5
n = n + 1
n = n%(SN.length)
end
BD = [1,0,1,0,1,0,1,0]
CH = [1,1,1,1,1,1,1,1]
SN = [0,0,1,0,0,0,1,0]
n = 0
(SN.length/2).times do
tick
if 0 == n
sample :drum_bass_hard if BD.look == 1
else
sample :drum_bass_soft if BD.look == 1
end
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.5
n = n + 1
n = n%(SN.length)
end
BD = [1,0,0,0,0,1,0,0]
CH = [1,0,0,0,1,0,0,0]
SN = [0,1,1,1,1,0,0,0]
(SN.length).times do
tick
sample :drum_bass_soft if BD.look == 1
sample :drum_cymbal_closed if CH.look == 1
sample :drum_snare_hard if SN.look == 1
sleep 0.25
end
sample :drum_bass_hard
sleep 1