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())