<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -15,9 +15,22 @@ class FileMIDI
     @sequence.tracks &lt;&lt; (@track = MIDI::Track.new(@sequence))
     @track.events &lt;&lt; Tempo.new(Tempo.bpm_to_mpq(options[:tempo])) if options[:tempo]
     @track.events &lt;&lt; MetaEvent.new(META_SEQ_NAME, options[:name]) if options[:name]
+    
+    # I'm not sure if this is actually necessary (?)
+    @track.events &lt;&lt; Controller.new(0, CC_VOLUME, 127)
+    @track.events &lt;&lt; ProgramChange.new(0, 1, 0)
   end
   def play(note)
-    @track.events &lt;&lt; note
+    @track.events &lt;&lt; NoteOnEvent.new(note.channel,
+                                     note.number,
+                                     note.velocity,
+                                     0) # this number here should carry an offset representing the
+                                     # amount of time since the last message in this stream. it's still
+                                     # not clear to me how to handle simultaneous notes, however.
+    @track.events &lt;&lt; NoteOffEvent.new(note.channel,
+                                     note.number,
+                                     note.velocity,
+                                     @sequence.note_to_delta(&quot;16th&quot;)) # yeah, well, whatever
   end
 end
 </diff>
      <filename>lib/midi/file_output/file_midi.rb</filename>
    </modified>
    <modified>
      <diff>@@ -21,9 +21,9 @@ describe FileMIDI do
     end
     it &quot;adds notes to itself&quot; do
       2.times {@midi.play(@create_note[])}
-      @midi.instance_variable_get(&quot;@track&quot;).events.size.should == 2
-      @midi.instance_variable_get(&quot;@track&quot;).events.collect(&amp;:class).should == [Note, Note]
-      # note: I don't understand how this spec passes - I don't think I'm requiring ActiveSupport anywhere
+      (@midi.instance_variable_get(&quot;@track&quot;).events.select do |note|
+        note.class == MIDI::NoteOnEvent
+      end).size.should == 2
     end
     it &quot;has a MIDI sequence and track&quot; do
       @midi.instance_variable_get(&quot;@sequence&quot;).should be_an_instance_of MIDI::Sequence</diff>
      <filename>spec/midi_files_spec.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>d5c19c49db20f18d144501a9b2b7ed2ef8a12a4e</id>
    </parent>
  </parents>
  <author>
    <name>Giles Bowkett</name>
    <email>gilesb@gmail.com</email>
  </author>
  <url>http://github.com/gilesbowkett/archaeopteryx/commit/347d7cd2fee1f3ced93a0af267f9a9fbe4f5ba72</url>
  <id>347d7cd2fee1f3ced93a0af267f9a9fbe4f5ba72</id>
  <committed-date>2009-05-05T22:32:58-07:00</committed-date>
  <authored-date>2009-05-05T22:32:58-07:00</authored-date>
  <message>this is some broken shit on the pathway to awesome shit</message>
  <tree>c5f4ab3e4c90ee79c2c5d9d3a16141d223b9537d</tree>
  <committer>
    <name>Giles Bowkett</name>
    <email>gilesb@gmail.com</email>
  </committer>
</commit>
