3 assert instrument.Key
is not None
4 assert instrument.Queue
is not None
5 assert instrument.Voice
is not None
6 assert instrument.Oscillator
is not None
7 assert instrument.ADSR
is not None
8 assert instrument.mult_signed
is not None
10 q = instrument.Queue()
11 assert q.write(4) == 0
23 assert q.write(i) == 0, i
26 assert q.write(1023) == 1
34 osc = instrument.Oscillator()
37 assert osc.output() == -0x80000000, hex(osc.output())
39 assert osc.output() == -0x80000000, hex(osc.output())
41 assert osc.output() == -0x80000000, hex(osc.output())
45 assert osc.output() == -0x4cccccc0, hex(osc.output())
47 assert osc.output() == -0x19999980, hex(osc.output())
49 assert osc.output() == -0x80000000, hex(osc.output())
53 assert osc.output() == 0x20, hex(osc.output())
55 assert osc.output() == 0x7fffffbe, hex(osc.output())
57 assert osc.output() == 0x7fffffff, hex(osc.output())
61 assert osc.output() == 0x73333370, hex(osc.output())
63 assert osc.output() == -0x666666e2, hex(osc.output())
65 assert osc.output() == 0x7fffffff, hex(osc.output())
68 assert osc.output() == -0x7fffffc0, hex(osc.output())
70 assert osc.output() == -0x7fffff80, hex(osc.output())
72 assert osc.output() == -0x80000000, hex(osc.output())
74 adsr = instrument.ADSR()
79 assert adsr.output() == 0, hex(adsr.output())
82 assert adsr.output() == 0xa3d70a, hex(adsr.output())
84 assert adsr.output() == 0x147ae14, hex(adsr.output())
86 assert adsr.output() == 0x1eb851e, hex(adsr.output())
88 assert adsr.output() == 0x28f5c28, hex(adsr.output())
89 for i
in range(400 - 4):
91 assert adsr.state() == 1, adsr.state()
92 assert adsr.output() == 0xffffffa0, hex(adsr.output())
94 assert adsr.state() == 2, adsr.state()
95 assert adsr.output() == 0xffffffff, hex(adsr.output())
97 assert adsr.output() == 0xffffffff, hex(adsr.output())
99 assert adsr.output() == 0xfff14197, hex(adsr.output())
100 for i
in range(4000):
102 assert adsr.output() == 0x6e568fc8, hex(adsr.output())
103 for i
in range(4000):
105 assert adsr.output() == 0x38c5f8f4, hex(adsr.output())
108 assert adsr.output() == 0x38c256e5, hex(adsr.output())
110 assert adsr.output() == 0x38beb511, hex(adsr.output())
111 for i
in range(25000):
113 assert adsr.output() == 0x1c033c, hex(adsr.output())
114 for i
in range(25000):
116 assert adsr.output() == 0, hex(adsr.output())