-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathaudio.urcl
83 lines (79 loc) · 1.58 KB
/
audio.urcl
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
BITS == 16
@DEFINE d16 100 // 16th note
@DEFINE d8 200 // 8th note
@DEFINE d4 400 // quarter note
@DEFINE d2 800 // half note
@DEFINE df 1600 // full note
@DEFINE d3_8 600 // 3/8th note
@DEFINE d6 267 // triplet
@DEFINE fs 0
@DEFINE g 1
@DEFINE gs 2
@DEFINE a 3
@DEFINE as 4
@DEFINE b 5
@DEFINE c 6
@DEFINE cs 7
@DEFINE d 8
@DEFINE ds 9
@DEFINE e 10
@DEFINE f 11
@DEFINE fs1 12
@DEFINE g1 13
@DEFINE gs1 14
@DEFINE a1 15
@DEFINE as1 16
@DEFINE b1 17
@DEFINE c1 18
@DEFINE d1 19
@DEFINE ds1 20
@DEFINE e1 21
@DEFINE f1 22
@DEFINE a2 23
@DEFINE as2 24
@DEFINE b2 25
@DEFINE c2 26
@DEFINE len r8
@DEFINE i r7
.bar0
DW [ e1 d8 e1 d8 0 d8 e1 d8 0 d8 c1 d8 c1 d4 ]
.bar1
DW [ g1 d4 0 d4 g d4 0 d4 ]
.bar2
DW [ c1 d4 0 d8 g d4 0 d8 e d4 ]
.bar3
DW [ 0 d4 a1 d4 b1 d4 as1 d8 a1 d4 ]
.bar4
DW [ g d6 e1 d6 g1 d6 a2 d4 f1 d8 g1 d8 ]
.bar5
DW [ 0 d8 e1 d4 c1 d8 d1 d8 b1 d4 0 d8 ] // play from bar 2 again
.bar6
DW [ 0 d4 g1 d8 fs1 d8 ds1 d8 e1 d8 ]
.bar7
DW [ gs d8 a1 d8 c1 d8 0 d8 a1 d8 c1 d8 d1 d8 ]
.bar8
DW [ 0 d4 g1 d8 fs1 d8 ds1 d4 e1 d8 ]
.bar9
DW [ 0 d8 c2 d4 c2 d8 c2 d4 0 d8 ]
.bar10
DW [ 0 d4 g1 d8 fs1 d8 ds1 d4 e1 d8 ]
.bar11
DW [ 0 d8 gs d8 a1 d8 c1 d8 0 d8 a1 d8 c1 d8 d1 d8 ]
.bar12
DW [ 0 d4 ds1 d4 0 d8 d1 d4 0 d8 ]
.bar13
DW [ c1 d4 0 d2 0 d4 ]
.bar14
DW [ c1 d8 c1 d8 0 d8 c1 d8 0 d8 c1 d8 d1 d4 ]
.end
DW
.play
SUB r1 len 20
OUT %NLEG r1
OUT %WAIT len
IN r0 %WAIT
RET
.wait
OUT %WAIT len
IN r0 %WAIT
RET