-
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathfour-on-the-floor.cn
88 lines (74 loc) · 1.91 KB
/
four-on-the-floor.cn
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
let
bpm 124
note 58 # A#3
let
en bpm * 8 # Eight Notes
qn bpm * 4 # Quarter Notes
hn bpm * 2 # Half Notes
fn bpm * 1 # Full Notes
let n note # Shorthand
let
o1 n + 12 * 0
o2 n + 12 * 1
o3 n + 12 * 2
# MIDI Channels
let
c_bd 1 # Bass Drum
c_sn 2 # Snare Drum
c_oh 3 # Open HiHat
c_ch 4 # Closed HiHat
c_cb 5 # Cowbell
c_gb 6 # Gritty Bass
c_sh 7 # Shaker
c_bs 8 # Bass
# MIDI Base Notes
let
bd 69 # Bass Drum Base Note
sn 69 # Snare Drum Base Note
oh 69 # Open HiHat Base Note
ch 69 # Closed HiHat Base Note
cb 69 # Cowbell Base Note
sh 1 # Shaker Base Note
# Bars
# seconds = 60 / bpm * steps
4:16 @ qn ** 4 => b_bd # !...!...!...!... (x4=64) @ 496bpm = 7.74s
2:16 > 4 @ qn ** 4 => b_sn # ....!.......!... (x4=64) @ 496bpm = 7.74s
4:16 > 2 @ qn ** 4 => b_ch # ..!...!...!...!. (x4=64) @ 496bpm = 7.74s
1:16 > 3 @ qn ** 4 => b_cb # ...!............ (x4=64) @ 496bpm = 7.74s
16:128 > 10 @ en ** 1 => b_sh # ..!.......!..... (x8=128) @ 992bpm = 7.74s
!..! ..!. ..!. ..!! @ qn ** 4 => b_bs # !..!..!...!...!! (x4=64) @ 496bpm = 7.74s
20:64 @ qn ** 1 => b_gb # !...!..!..!..!.. (x4=64) @ 496bpm = 7.74s
b_bd map bd ~> c_bd $
b_sn map sn ~> c_sn $
b_ch map ch ~> c_ch $
b_cb map cb ~> c_cb $
b_sh map sh ~> c_sh $
b_bs map
o1 - 4 o2 - 4 o1 - 4 o2 - 4
o1 - 7 o2 - 7 o1 - 7 o2 - 7
o1 - 5 o2 - 5 o1 - 5 o2 - 5
o1 o2 o1 o2
~> c_bs $
b_gb map
o1 + 3 o1 + 3 o1 + 3 o1 + 5
o1 + 3 o1 + 5 o1 + 5 o1 + 8
o1 + 5 o1 + 8 o1 + 8 o1
o1 + 8 o1 o1 o1
~> c_gb
b_bd map bd ~> c_bd $
b_sn map sn ~> c_sn $
b_ch map ch ~> c_ch $
b_cb map cb ~> c_cb $
b_sh map sh ~> c_sh $
b_bs map
o1 - 4 o2 - 4 o1 - 4 o2 - 4
o1 - 7 o2 - 7 o1 - 7 o2 - 7
o1 - 5 o2 - 5 o1 - 5 o2 - 5
o1 o2 o1 o2
~> c_bs $
b_gb map
o1 + 3 o1 + 3 o1 + 3 o1 + 5
o1 + 3 o1 + 5 o1 + 5 o1 + 8
o1 + 5 o1 + 8 o1 + 8 o1
o1 + 8 o1 o1 o1
~> c_gb