Final Project for ECE4180, MIDI Controller

Dependencies:   mbed 4DGL-uLCD-SE

By Emeril Huang, Khayame Maiki, Mark Olorvida, Timothy Li

Overview

This final project is based on a Musical Instrument Digital Interface (MIDI) controller. The base idea of this is a device that allows a wide variety of electronic musical instruments or sounds to be played at the press of some buttons. This project uses a mbed hooked up to a PC with the standard USB, and utilizes a C# application on Windows to receive serial port messages and plays sound files.

/media/uploads/EvolutionOfWar/midicontrollerupdated.jpg

Components

Wiring

mbedCableuLCD
P28TXRX
P27RXTX
P30RESRESET
VU+5V+5V
GNDGNDGND

uLCD displays current Layer of sounds, and whether or not loops are on. Each layer allows for 8 different sound clips, with 3 layers total.

Push ButtonsPinsGND
Pushbutton1P8GND
Pushbutton2P9GND
Pushbutton3P10GND
Pushbutton4P11GND
Pushbutton5P12GND
Pushbutton6P13GND
Pushbutton7P14GND
Pushbutton8P15GND
Pushbutton9P16GND
Pushbutton10P17GND
Pushbutton11P18GND

The two rows of four Push buttons trigger sound clips when pressed. The top two buttons activate loops, recording current sounds and then continuously plays them over and over. If pressed again, the loop stops.

RGB LEDsRedGNDGreenBlue
LED1P26GNDP25P24
LED2P23GNDP22P21
LED3P5GNDP6P7

LEDs are used to indicate if something is on or not, or show the layer.

Demo

Program

Import programMIDI-Controller-4180FinalProject

Final Project for ECE4180, MIDI Controller

C# Files

This is the form generated by C# that allows for 24 total sounds to be played. /media/uploads/EvolutionOfWar/soundupload2.png

C# Program

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Mbed_MIDI_Project
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Form1 form1 = new Form1();
            Application.Run(form1);
        }
    }
}

C# Form

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Media;
using System.IO;
using System.IO.Ports;
using System.Windows.Media;
using System.Collections;
using System.Threading;

namespace Mbed_MIDI_Project
{
    public partial class Form1 : Form
    {
        public static string sound1_1 = "Nothing";   // filename of sound corresponding to layer1 PB 1. These will be initialized to an actual filepath later
        public static string sound1_2 = "Nothing";    // filename of sound corresponding to layer1 PB 2
        public static string sound1_3 = "Nothing";    // these are global so values can be assigned to them via the combo boxes
        public static string sound1_4 = "Nothing";
        public static string sound1_5 = "Nothing";
        public static string sound1_6 = "Nothing";
        public static string sound1_7 = "Nothing";
        public static string sound1_8 = "Nothing";
     
        public static string sound2_1 = "Nothing"; // layer 2 PB  1
        public static string sound2_2 = "Nothing";
        public static string sound2_3 = "Nothing";
        public static string sound2_4 = "Nothing";
        public static string sound2_5 = "Nothing";
        public static string sound2_6 = "Nothing";
        public static string sound2_7 = "Nothing";
        public static string sound2_8 = "Nothing";

        public static string sound3_1 = "Nothing";
        public static string sound3_2 = "Nothing";
        public static string sound3_3 = "Nothing";
        public static string sound3_4 = "Nothing";
        public static string sound3_5 = "Nothing";
        public static string sound3_6 = "Nothing";
        public static string sound3_7 = "Nothing";
        public static string sound3_8 = "Nothing";

        public static string filename1_1 = "Nothing";   
        public static string filename1_2 = "Nothing";   
        public static string filename1_3 = "Nothing";   
        public static string filename1_4 = "Nothing";
        public static string filename1_5 = "Nothing";
        public static string filename1_6 = "Nothing";
        public static string filename1_7 = "Nothing";
        public static string filename1_8 = "Nothing";

        public static string filename2_1 = "Nothing";
        public static string filename2_2 = "Nothing";
        public static string filename2_3 = "Nothing";
        public static string filename2_4 = "Nothing";
        public static string filename2_5 = "Nothing";
        public static string filename2_6 = "Nothing";
        public static string filename2_7 = "Nothing";
        public static string filename2_8 = "Nothing";

        public static string filename3_1 = "Nothing";
        public static string filename3_2 = "Nothing";
        public static string filename3_3 = "Nothing";
        public static string filename3_4 = "Nothing";
        public static string filename3_5 = "Nothing";
        public static string filename3_6 = "Nothing";
        public static string filename3_7 = "Nothing";
        public static string filename3_8 = "Nothing";


        public static string mbedString;
        public static int PBnumber = 0;
        public static int layer;

        public static ManualResetEvent signal = new ManualResetEvent(false);


        public class Looper // loop object to run in a separate thread
        {
            private System.Timers.Timer timer = new System.Timers.Timer();

            private ArrayList timing = new ArrayList();
            private ArrayList inputs = new ArrayList();
            private ArrayList layers = new ArrayList();
            private ArrayList ticks = new ArrayList();

            private bool exist = false;
            private bool on = false;

            public void Loop(object x)
            {
                Loop((int)x);
            }

            public void Loop(int num)
            {
                while (true)
                {
                    if (exist)
                    {
                        if ((num == 1 && turn1off) || (num == 2 && turn2off))
                        {
                            timer.Stop() ;
                            timer = new System.Timers.Timer();
                            inputs.Clear();
                            layers.Clear();
                            ticks.Clear();
                            exist = false;
                            if (num == 1)
                            {
                                turn1off = false;
                                loop1exist = false;
                            }
                            else if (num == 2)
                            {
                                turn2off = false;
                                loop2exist = false;
                            }
                        }
                    }
                    else if (!exist)
                    {
                        if ((num == 1 && loop1on) || (num == 2 && loop2on))
                        {
                            if (num == 1) exist = loop1exist;
                            else if (num == 2) exist = loop2exist;
                            
                            timing.Add(DateTime.Now);
                            on = true;

                            while (on)
                            {
                                // read next input
                                signal.WaitOne();
                                signal.Reset();
                                int PB = Form1.PBnumber;

                                if ((PB == 9 && num == 1) || (PB == 10 && num == 2)) // loop button pressed again
                                {
                                    if (num == 1) loop1on = false;
                                    else if (num == 2) loop2on = false;
                                    on = false;

                                    if (inputs.Count == 0) // check inputs are recorded
                                    {
                                        timing.Clear();
                                    }
                                    else
                                    {
                                        exist = true;
                                        if (num == 1) loop1exist = true;
                                        else if (num == 2) loop2exist = true;

                                        for (int i = 0; i < timing.Count - 1; i++)
                                        {
                                            ticks.Add(((DateTime)timing[i + 1]).Subtract((DateTime)timing[i]).TotalMilliseconds);
                                        }
                                        // begin timer for loop 1
                                        timer.Elapsed += looptick;
                                        timer.Start();
                                        looptick(null, null);
                                        timing.Clear();
                                    }
                                }
                                else // sound button
                                {
                                    inputs.Add(PB);
                                    layers.Add(layer);
                                    timing.Add(DateTime.Now);
                                }

                            }
                        }
                    }
                }
            }

            private void looptick(object sender, EventArgs e) // play sound and increment arraylist
            {
                int PB = (int)inputs[0];
                int lay = (int)layers[0];
                int tick = Convert.ToInt32(ticks[0]);

                PlaySound(PB, lay);
                timer.Interval = tick;

                inputs.Add(PB);
                inputs.RemoveAt(0);

                ticks.Add(tick);
                ticks.RemoveAt(0);

                layers.Add(lay);
                layers.RemoveAt(0);
            }
        }

        static bool loop1on = false;
        static bool loop2on = false;

        static bool loop1exist = false;
        static bool loop2exist = false;

        static bool turn1off = false;
        static bool turn2off = false;

        static bool thread1start = false;
        static bool thread2start = false;

        static Looper loop1 = new Looper();
        Thread thread1 = new Thread(new ParameterizedThreadStart(loop1.Loop));

        static Looper loop2 = new Looper();
        Thread thread2 = new Thread(new ParameterizedThreadStart(loop2.Loop));

        public Form1()
        {
            layer = 1;

            // int  PBnumber;

            //string mbedString;


            InitializeComponent();
            serialPort1.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
            
            serialPort1.Open();
        }



        
        private  void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
        {
            SerialPort sp = (SerialPort)sender;
          //  sp.ReadTo("\n");
            mbedString = sp.ReadLine();  // This function reads up to the NewLine value in the input buffer. Should be a string. Get rid of the fluff in the string (eg. instead of "The pushbutton is 1"
                                         // make it "1") in the mbed code
            
            PBnumber = Convert.ToInt32(mbedString); // converts whatever is read from the mbed to an int
            //Debug.WriteLine(PBnumber);
            if (loop1on || loop2on) signal.Set();
            if (PBnumber != 9 && PBnumber != 10) PlaySound(PBnumber, layer);
            if (PBnumber == 11) layer = ((layer + 1) % 3) + 1;
            else if (!loop1on || !loop2on) loop(PBnumber);

            serialPort1.DiscardInBuffer();
        }

        private static void PlaySound(int PBnumber, int lay)
        {
            switch (lay)
            {
                case 1: // layer 1
                    switch (PBnumber)
                    {
                        case 1:
                                var play1_1 = new System.Windows.Media.MediaPlayer();
                                play1_1.Open(new System.Uri(filename1_1));
                                play1_1.Play();
                            break;
                        case 2:
                                var play1_2 = new System.Windows.Media.MediaPlayer();
                                play1_2.Open(new System.Uri(filename1_2));
                                play1_2.Play();
                            break;
                        case 3:
                            var play1_3 = new System.Windows.Media.MediaPlayer();
                                play1_3.Open(new System.Uri(filename1_3));
                                play1_3.Play();
                            break;
                        case 4:
                            var play1_4 = new System.Windows.Media.MediaPlayer();
                                play1_4.Open(new System.Uri(filename1_4));
                                play1_4.Play();
                            break;
                        case 5:
                            var play1_5 = new System.Windows.Media.MediaPlayer();
                                play1_5.Open(new System.Uri(filename1_5));
                                play1_5.Play();
                            break;
                        case 6:
                            var play1_6 = new System.Windows.Media.MediaPlayer();
                                play1_6.Open(new System.Uri(filename1_6));
                                play1_6.Play();
                            break;
                        case 7:
                            var play1_7 = new System.Windows.Media.MediaPlayer();
                                play1_7.Open(new System.Uri(filename1_7));
                                play1_7.Play();
                            break;
                        case 8:
                            var play1_8 = new System.Windows.Media.MediaPlayer();
                                play1_8.Open(new System.Uri(filename1_8));
                                play1_8.Play();
                            break;
                    }
                    break;

                case 2:
                    switch (PBnumber)
                    {
                        case 1:
                            var play2_1 = new System.Windows.Media.MediaPlayer();
                                play2_1.Open(new System.Uri(filename2_1));
                                play2_1.Play();
                            break;
                        case 2:
                            var play2_2 = new System.Windows.Media.MediaPlayer();
                                play2_2.Open(new System.Uri(filename2_2));
                                play2_2.Play();
                            break;
                        case 3:
                            var play2_3 = new System.Windows.Media.MediaPlayer();
                                play2_3.Open(new System.Uri(filename2_3));
                                play2_3.Play();
                            break;
                        case 4:
                            var play2_4 = new System.Windows.Media.MediaPlayer();
                                play2_4.Open(new System.Uri(filename2_4));
                                play2_4.Play();
                            break;
                        case 5:
                            var play2_5 = new System.Windows.Media.MediaPlayer();
                                play2_5.Open(new System.Uri(filename2_5));
                                play2_5.Play();
                            break;
                        case 6:
                            var play2_6 = new System.Windows.Media.MediaPlayer();
                                play2_6.Open(new System.Uri(filename2_6));
                                play2_6.Play();
                            break;
                        case 7:
                            var play2_7 = new System.Windows.Media.MediaPlayer();
                                play2_7.Open(new System.Uri(filename2_7));
                                play2_7.Play();
                            break;
                        case 8:
                            var play2_8 = new System.Windows.Media.MediaPlayer();
                                play2_8.Open(new System.Uri(filename2_8));
                                play2_8.Play();
                            break;
                    }
                    break;

                case 3:
                    switch (PBnumber)
                    {
                        case 1:
                                var play3_1 = new System.Windows.Media.MediaPlayer();
                                play3_1.Open(new System.Uri(filename3_1));
                                play3_1.Play();
                            break;
                        case 2:
                            var play3_2 = new System.Windows.Media.MediaPlayer();
                                play3_2.Open(new System.Uri(filename3_2));
                                play3_2.Play();
                            break;
                        case 3:
                            var play3_3 = new System.Windows.Media.MediaPlayer();
                                play3_3.Open(new System.Uri(filename3_3));
                                play3_3.Play();
                            break;
                        case 4:
                            var play3_4 = new System.Windows.Media.MediaPlayer();
                                play3_4.Open(new System.Uri(filename3_4));
                                play3_4.Play();
                            break;
                        case 5:
                            var play3_5 = new System.Windows.Media.MediaPlayer();
                                play3_5.Open(new System.Uri(filename3_5));
                                play3_5.Play();
                            break;
                        case 6:
                            var play3_6 = new System.Windows.Media.MediaPlayer();
                                play3_6.Open(new System.Uri(filename3_6));
                                play3_6.Play();
                            break;
                        case 7:
                            var play3_7 = new System.Windows.Media.MediaPlayer();
                                play3_7.Open(new System.Uri(filename3_7));
                                play3_7.Play();
                            break;
                        case 8:
                            var play3_8 = new System.Windows.Media.MediaPlayer();
                                play3_8.Open(new System.Uri(filename3_8));
                                play3_8.Play();
                            break;
                    }
                    break;
            

            }

            // serialPort1.DiscardInBuffer();

            //  } // while bracket


        }

        private void loop(int PBnum)
        {
            if (PBnum == 9)
            { // which loop#
                if (!thread1start)
                {
                    thread1.Start(1);
                    thread1start = true;
                }
                if (loop1exist) turn1off = true;
                else if (!loop1on) loop1on = true;
            }
            else if (PBnum == 10)
            {
                if (!thread2start)
                {
                    thread2.Start(2);
                    thread2start = true;
                }
                if (loop2exist) turn2off = true;
                else if (!loop2on) loop2on = true;
            }
        }

        



        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) // there are 24 total combo boxes. Each one selects a filename for a specific pushbutton / layer combination
        {
            sound1_1 = comboBox1.Text;   // add concatenation to rest of filepath
                                         // MediaPlayer play1_1 = new SoundPlayer(sound1_1)
             filename1_1 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound1_1);


        }

        private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound2_1 = comboBox2.Text;
            filename2_1 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound2_1);
       ;

        }

        private void comboBox3_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound3_1 = comboBox3.Text;
             filename3_1 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound3_1);
          

        }

        private void comboBox4_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound1_2 = comboBox4.Text;
             filename1_2 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound1_2);
         

        }

        private void comboBox5_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound2_2 = comboBox5.Text;
             filename2_2 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound2_2);
          

        }

        private void comboBox6_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound3_2 = comboBox6.Text;
             filename3_2 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound3_2);
           

        }

        private void comboBox7_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound1_3 = comboBox7.Text;
             filename1_3 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound1_3);
          

        }

        private void comboBox8_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound2_3 = comboBox8.Text;
             filename2_3 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound2_3);
       

        }

        private void comboBox9_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound3_3 = comboBox9.Text;
             filename3_3 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound3_3);
          

        }

        private void comboBox10_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound1_4 = comboBox10.Text;
             filename1_4 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound1_4);
         

        }

        private void comboBox11_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound2_4 = comboBox11.Text;
             filename2_4 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound2_4);
           
        }

        private void comboBox12_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound3_4 = comboBox12.Text;
             filename3_4 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound3_4);
          
        }

        private void comboBox13_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound1_5 = comboBox13.Text;
             filename1_5 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound1_5);
           
        }

        private void comboBox14_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound2_5 = comboBox14.Text;
             filename2_5 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound2_5);
            
        }

        private void comboBox15_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound3_5 = comboBox15.Text;
             filename3_5 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound3_5);
           
        }
        private void comboBox16_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound1_6 = comboBox16.Text;
             filename1_6 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound1_6);
          
        }

        private void comboBox17_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound2_6 = comboBox17.Text;
             filename2_6 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound2_6);
            
        }

        private void comboBox18_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound3_6 = comboBox18.Text;
             filename3_6 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound3_6);
           
        }

        private void comboBox19_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound1_7 = comboBox19.Text;
             filename1_7 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound1_7);
            
        }

        private void comboBox20_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound2_7 = comboBox20.Text;
             filename2_7 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound2_7);
        
        }

        private void comboBox21_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound3_7 = comboBox21.Text;
             filename3_7 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound3_7);
            
        }

        private void comboBox22_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound1_8 = comboBox22.Text;
             filename1_8 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound1_8);
          
        }

        private void comboBox23_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound2_8 = comboBox23.Text;
             filename2_8 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound2_8);
        
        }

        private void comboBox24_SelectedIndexChanged(object sender, EventArgs e)
        {
            sound3_8 = comboBox24.Text;
             filename3_8 = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound3_8);
          
        }
        
        private void textBox1_TextChanged(object sender, EventArgs e)
        {

        }

        private void textBox2_TextChanged(object sender, EventArgs e)
        {

        }

        private void textBox4_TextChanged(object sender, EventArgs e)
        {

        }

        private void textBox9_TextChanged(object sender, EventArgs e)
        {
           
           
        }

        //  private void comboBox7_SelectedIndexChanged_1(object sender, EventArgs e)
        //  {
        //   sound1_3 = comboBox7.Text;
        //   string filename = Path.Combine(Environment.CurrentDirectory, @"sounds\", sound1_3);
        //   Debug.WriteLine(filename);
        //   play1_3.SoundLocation = filename;
        //   play1_3.Load();
        //}
    }


}

C# Form Designer

namespace Mbed_MIDI_Project
{
    partial class Form1
    {
        /// <summary>
        /// Required designer variable.
        /// </summary>
        private System.ComponentModel.IContainer components = null;

        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

        #region Windows Form Designer generated code

        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {
            this.components = new System.ComponentModel.Container();
            this.serialPort1 = new System.IO.Ports.SerialPort(this.components);
            this.comboBox1 = new System.Windows.Forms.ComboBox();
            this.comboBox2 = new System.Windows.Forms.ComboBox();
            this.comboBox4 = new System.Windows.Forms.ComboBox();
            this.comboBox3 = new System.Windows.Forms.ComboBox();
            this.comboBox5 = new System.Windows.Forms.ComboBox();
            this.comboBox6 = new System.Windows.Forms.ComboBox();
            this.comboBox7 = new System.Windows.Forms.ComboBox();
            this.comboBox8 = new System.Windows.Forms.ComboBox();
            this.comboBox9 = new System.Windows.Forms.ComboBox();
            this.comboBox10 = new System.Windows.Forms.ComboBox();
            this.comboBox11 = new System.Windows.Forms.ComboBox();
            this.comboBox12 = new System.Windows.Forms.ComboBox();
            this.comboBox13 = new System.Windows.Forms.ComboBox();
            this.comboBox14 = new System.Windows.Forms.ComboBox();
            this.comboBox15 = new System.Windows.Forms.ComboBox();
            this.comboBox16 = new System.Windows.Forms.ComboBox();
            this.comboBox17 = new System.Windows.Forms.ComboBox();
            this.comboBox18 = new System.Windows.Forms.ComboBox();
            this.comboBox19 = new System.Windows.Forms.ComboBox();
            this.comboBox20 = new System.Windows.Forms.ComboBox();
            this.comboBox21 = new System.Windows.Forms.ComboBox();
            this.comboBox22 = new System.Windows.Forms.ComboBox();
            this.comboBox23 = new System.Windows.Forms.ComboBox();
            this.comboBox24 = new System.Windows.Forms.ComboBox();
            this.textBox1 = new System.Windows.Forms.TextBox();
            this.textBox2 = new System.Windows.Forms.TextBox();
            this.textBox3 = new System.Windows.Forms.TextBox();
            this.textBox4 = new System.Windows.Forms.TextBox();
            this.textBox5 = new System.Windows.Forms.TextBox();
            this.textBox6 = new System.Windows.Forms.TextBox();
            this.textBox7 = new System.Windows.Forms.TextBox();
            this.textBox8 = new System.Windows.Forms.TextBox();
            this.textBox9 = new System.Windows.Forms.TextBox();
            this.SuspendLayout();
            // 
            // serialPort1
            // 
            this.serialPort1.PortName = "COM4";
            // 
            // comboBox1
            // 
            this.comboBox1.FormattingEnabled = true;
            this.comboBox1.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox1.Location = new System.Drawing.Point(58, 322);
            this.comboBox1.Name = "comboBox1";
            this.comboBox1.Size = new System.Drawing.Size(121, 21);
            this.comboBox1.TabIndex = 1;
            this.comboBox1.SelectedIndexChanged += new System.EventHandler(this.comboBox1_SelectedIndexChanged);
            // 
            // comboBox2
            // 
            this.comboBox2.FormattingEnabled = true;
            this.comboBox2.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox2.Location = new System.Drawing.Point(58, 349);
            this.comboBox2.Name = "comboBox2";
            this.comboBox2.Size = new System.Drawing.Size(121, 21);
            this.comboBox2.TabIndex = 2;
            this.comboBox2.SelectedIndexChanged += new System.EventHandler(this.comboBox2_SelectedIndexChanged);
            // 
            // comboBox4
            // 
            this.comboBox4.FormattingEnabled = true;
            this.comboBox4.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox4.Location = new System.Drawing.Point(206, 322);
            this.comboBox4.Name = "comboBox4";
            this.comboBox4.Size = new System.Drawing.Size(121, 21);
            this.comboBox4.TabIndex = 4;
            this.comboBox4.SelectedIndexChanged += new System.EventHandler(this.comboBox4_SelectedIndexChanged);
            // 
            // comboBox3
            // 
            this.comboBox3.FormattingEnabled = true;
            this.comboBox3.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox3.Location = new System.Drawing.Point(58, 376);
            this.comboBox3.Name = "comboBox3";
            this.comboBox3.Size = new System.Drawing.Size(121, 21);
            this.comboBox3.TabIndex = 7;
            this.comboBox3.SelectedIndexChanged += new System.EventHandler(this.comboBox3_SelectedIndexChanged);
            // 
            // comboBox5
            // 
            this.comboBox5.FormattingEnabled = true;
            this.comboBox5.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox5.Location = new System.Drawing.Point(206, 349);
            this.comboBox5.Name = "comboBox5";
            this.comboBox5.Size = new System.Drawing.Size(121, 21);
            this.comboBox5.TabIndex = 6;
            this.comboBox5.SelectedIndexChanged += new System.EventHandler(this.comboBox5_SelectedIndexChanged);
            // 
            // comboBox6
            // 
            this.comboBox6.FormattingEnabled = true;
            this.comboBox6.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox6.Location = new System.Drawing.Point(206, 376);
            this.comboBox6.Name = "comboBox6";
            this.comboBox6.Size = new System.Drawing.Size(121, 21);
            this.comboBox6.TabIndex = 5;
            this.comboBox6.SelectedIndexChanged += new System.EventHandler(this.comboBox6_SelectedIndexChanged);
            // 
            // comboBox7
            // 
            this.comboBox7.FormattingEnabled = true;
            this.comboBox7.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox7.Location = new System.Drawing.Point(366, 322);
            this.comboBox7.Name = "comboBox7";
            this.comboBox7.Size = new System.Drawing.Size(121, 21);
            this.comboBox7.TabIndex = 10;
            this.comboBox7.SelectedIndexChanged += new System.EventHandler(this.comboBox7_SelectedIndexChanged);
            // 
            // comboBox8
            // 
            this.comboBox8.FormattingEnabled = true;
            this.comboBox8.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox8.Location = new System.Drawing.Point(366, 349);
            this.comboBox8.Name = "comboBox8";
            this.comboBox8.Size = new System.Drawing.Size(121, 21);
            this.comboBox8.TabIndex = 9;
            this.comboBox8.SelectedIndexChanged += new System.EventHandler(this.comboBox8_SelectedIndexChanged);
            // 
            // comboBox9
            // 
            this.comboBox9.FormattingEnabled = true;
            this.comboBox9.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox9.Location = new System.Drawing.Point(366, 376);
            this.comboBox9.Name = "comboBox9";
            this.comboBox9.Size = new System.Drawing.Size(121, 21);
            this.comboBox9.TabIndex = 8;
            this.comboBox9.SelectedIndexChanged += new System.EventHandler(this.comboBox9_SelectedIndexChanged);
            // 
            // comboBox10
            // 
            this.comboBox10.FormattingEnabled = true;
            this.comboBox10.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox10.Location = new System.Drawing.Point(531, 322);
            this.comboBox10.Name = "comboBox10";
            this.comboBox10.Size = new System.Drawing.Size(121, 21);
            this.comboBox10.TabIndex = 19;
            this.comboBox10.SelectedIndexChanged += new System.EventHandler(this.comboBox10_SelectedIndexChanged);
            // 
            // comboBox11
            // 
            this.comboBox11.FormattingEnabled = true;
            this.comboBox11.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox11.Location = new System.Drawing.Point(531, 349);
            this.comboBox11.Name = "comboBox11";
            this.comboBox11.Size = new System.Drawing.Size(121, 21);
            this.comboBox11.TabIndex = 18;
            this.comboBox11.SelectedIndexChanged += new System.EventHandler(this.comboBox11_SelectedIndexChanged);
            // 
            // comboBox12
            // 
            this.comboBox12.FormattingEnabled = true;
            this.comboBox12.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox12.Location = new System.Drawing.Point(531, 376);
            this.comboBox12.Name = "comboBox12";
            this.comboBox12.Size = new System.Drawing.Size(121, 21);
            this.comboBox12.TabIndex = 17;
            this.comboBox12.SelectedIndexChanged += new System.EventHandler(this.comboBox12_SelectedIndexChanged);
            // 
            // comboBox13
            // 
            this.comboBox13.FormattingEnabled = true;
            this.comboBox13.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox13.Location = new System.Drawing.Point(58, 156);
            this.comboBox13.Name = "comboBox13";
            this.comboBox13.Size = new System.Drawing.Size(121, 21);
            this.comboBox13.TabIndex = 16;
            this.comboBox13.SelectedIndexChanged += new System.EventHandler(this.comboBox13_SelectedIndexChanged);
            // 
            // comboBox14
            // 
            this.comboBox14.FormattingEnabled = true;
            this.comboBox14.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox14.Location = new System.Drawing.Point(58, 183);
            this.comboBox14.Name = "comboBox14";
            this.comboBox14.Size = new System.Drawing.Size(121, 21);
            this.comboBox14.TabIndex = 15;
            this.comboBox14.SelectedIndexChanged += new System.EventHandler(this.comboBox14_SelectedIndexChanged);
            // 
            // comboBox15
            // 
            this.comboBox15.FormattingEnabled = true;
            this.comboBox15.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox15.Location = new System.Drawing.Point(58, 210);
            this.comboBox15.Name = "comboBox15";
            this.comboBox15.Size = new System.Drawing.Size(121, 21);
            this.comboBox15.TabIndex = 14;
            this.comboBox15.SelectedIndexChanged += new System.EventHandler(this.comboBox15_SelectedIndexChanged);
            // 
            // comboBox16
            // 
            this.comboBox16.FormattingEnabled = true;
            this.comboBox16.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox16.Location = new System.Drawing.Point(206, 156);
            this.comboBox16.Name = "comboBox16";
            this.comboBox16.Size = new System.Drawing.Size(121, 21);
            this.comboBox16.TabIndex = 13;
            this.comboBox16.SelectedIndexChanged += new System.EventHandler(this.comboBox16_SelectedIndexChanged);
            // 
            // comboBox17
            // 
            this.comboBox17.FormattingEnabled = true;
            this.comboBox17.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox17.Location = new System.Drawing.Point(206, 183);
            this.comboBox17.Name = "comboBox17";
            this.comboBox17.Size = new System.Drawing.Size(121, 21);
            this.comboBox17.TabIndex = 12;
            this.comboBox17.SelectedIndexChanged += new System.EventHandler(this.comboBox17_SelectedIndexChanged);
            // 
            // comboBox18
            // 
            this.comboBox18.FormattingEnabled = true;
            this.comboBox18.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox18.Location = new System.Drawing.Point(206, 210);
            this.comboBox18.Name = "comboBox18";
            this.comboBox18.Size = new System.Drawing.Size(121, 21);
            this.comboBox18.TabIndex = 11;
            this.comboBox18.SelectedIndexChanged += new System.EventHandler(this.comboBox18_SelectedIndexChanged);
            // 
            // comboBox19
            // 
            this.comboBox19.FormattingEnabled = true;
            this.comboBox19.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox19.Location = new System.Drawing.Point(366, 156);
            this.comboBox19.Name = "comboBox19";
            this.comboBox19.Size = new System.Drawing.Size(121, 21);
            this.comboBox19.TabIndex = 22;
            this.comboBox19.SelectedIndexChanged += new System.EventHandler(this.comboBox19_SelectedIndexChanged);
            // 
            // comboBox20
            // 
            this.comboBox20.FormattingEnabled = true;
            this.comboBox20.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox20.Location = new System.Drawing.Point(366, 183);
            this.comboBox20.Name = "comboBox20";
            this.comboBox20.Size = new System.Drawing.Size(121, 21);
            this.comboBox20.TabIndex = 21;
            this.comboBox20.SelectedIndexChanged += new System.EventHandler(this.comboBox20_SelectedIndexChanged);
            // 
            // comboBox21
            // 
            this.comboBox21.FormattingEnabled = true;
            this.comboBox21.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox21.Location = new System.Drawing.Point(366, 210);
            this.comboBox21.Name = "comboBox21";
            this.comboBox21.Size = new System.Drawing.Size(121, 21);
            this.comboBox21.TabIndex = 20;
            this.comboBox21.SelectedIndexChanged += new System.EventHandler(this.comboBox21_SelectedIndexChanged);
            // 
            // comboBox22
            // 
            this.comboBox22.FormattingEnabled = true;
            this.comboBox22.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox22.Location = new System.Drawing.Point(531, 156);
            this.comboBox22.Name = "comboBox22";
            this.comboBox22.Size = new System.Drawing.Size(121, 21);
            this.comboBox22.TabIndex = 25;
            this.comboBox22.SelectedIndexChanged += new System.EventHandler(this.comboBox22_SelectedIndexChanged);
            // 
            // comboBox23
            // 
            this.comboBox23.FormattingEnabled = true;
            this.comboBox23.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox23.Location = new System.Drawing.Point(531, 183);
            this.comboBox23.Name = "comboBox23";
            this.comboBox23.Size = new System.Drawing.Size(121, 21);
            this.comboBox23.TabIndex = 24;
            this.comboBox23.SelectedIndexChanged += new System.EventHandler(this.comboBox23_SelectedIndexChanged);
            // 
            // comboBox24
            // 
            this.comboBox24.FormattingEnabled = true;
            this.comboBox24.Items.AddRange(new object[] {
            "1b1.wav",
            "1b2.wav",
            "1b3.wav",
            "1b4.wav",
            "1t1.wav",
            "1t2.wav",
            "1t3.wav",
            "1t4.wav",
            "2b1.wav",
            "2b2.wav",
            "2b3.wav",
            "2b4.wav",
            "2t2.wav",
            "2t4.wav",
            "3b2.wav",
            "3b3.wav",
            "3t2.wav",
            "3t3.wav",
            "3t4.wav",
            "BassDrum.wav",
            "Bounce.wav",
            "ContactBoom.wav",
            "EDMKick.wav",
            "FingerSnaps.wav",
            "GenericEDMBeatLOOPTHIS.wav",
            "Hi-Hat.wav",
            "Hi-HatRun.wav",
            "LongSnare.wav",
            "LowDrumKick.wav",
            "PianoA.wav",
            "PianoAb.wav",
            "PianoB.wav",
            "PianoBb.wav",
            "PianoC.wav",
            "PianoD.wav",
            "PianoDb.wav",
            "PianoE.wav",
            "PianoEb.wav",
            "PianoF.wav",
            "PianoG.wav",
            "PianoGb.wav",
            "RideEcho.wav",
            "SnareDrum.wav"});
            this.comboBox24.Location = new System.Drawing.Point(531, 210);
            this.comboBox24.Name = "comboBox24";
            this.comboBox24.Size = new System.Drawing.Size(121, 21);
            this.comboBox24.TabIndex = 23;
            this.comboBox24.SelectedIndexChanged += new System.EventHandler(this.comboBox24_SelectedIndexChanged);
            // 
            // textbox1
            this.comboBox1.SelectedIndex = 0;
            this.comboBox2.SelectedIndex = 8;
            this.comboBox3.SelectedIndex = 16;
            this.comboBox4.SelectedIndex = 1;
            this.comboBox5.SelectedIndex = 9;
            this.comboBox6.SelectedIndex = 17;
            this.comboBox7.SelectedIndex = 2;
            this.comboBox8.SelectedIndex = 10;
            this.comboBox9.SelectedIndex = 18;
            this.comboBox10.SelectedIndex = 3;
            this.comboBox11.SelectedIndex = 11;
            this.comboBox12.SelectedIndex = 19;
            this.comboBox13.SelectedIndex = 4;
            this.comboBox14.SelectedIndex = 12;
            this.comboBox15.SelectedIndex = 20;
            this.comboBox16.SelectedIndex = 5;
            this.comboBox17.SelectedIndex = 13;
            this.comboBox18.SelectedIndex = 21;
            this.comboBox19.SelectedIndex = 6;
            this.comboBox20.SelectedIndex = 14;
            this.comboBox21.SelectedIndex = 22;
            this.comboBox22.SelectedIndex = 7;
            this.comboBox23.SelectedIndex = 15;
            this.comboBox24.SelectedIndex = 23;
            // 
            this.textBox1.Location = new System.Drawing.Point(58, 287);
            this.textBox1.Name = "textBox1";
            this.textBox1.ReadOnly = true;
            this.textBox1.Size = new System.Drawing.Size(100, 20);
            this.textBox1.TabIndex = 26;
            this.textBox1.Text = "Button 1";
            this.textBox1.TextChanged += new System.EventHandler(this.textBox1_TextChanged);
            // 
            // textBox2
            // 
            this.textBox2.Location = new System.Drawing.Point(206, 287);
            this.textBox2.Name = "textBox2";
            this.textBox2.ReadOnly = true;
            this.textBox2.Size = new System.Drawing.Size(100, 20);
            this.textBox2.TabIndex = 27;
            this.textBox2.Text = "Button 2";
            this.textBox2.TextChanged += new System.EventHandler(this.textBox2_TextChanged);
            // 
            // textBox3
            // 
            this.textBox3.Location = new System.Drawing.Point(366, 287);
            this.textBox3.Name = "textBox3";
            this.textBox3.ReadOnly = true;
            this.textBox3.Size = new System.Drawing.Size(100, 20);
            this.textBox3.TabIndex = 28;
            this.textBox3.Text = "Button 3";
            // 
            // textBox4
            // 
            this.textBox4.Location = new System.Drawing.Point(531, 287);
            this.textBox4.Name = "textBox4";
            this.textBox4.ReadOnly = true;
            this.textBox4.Size = new System.Drawing.Size(100, 20);
            this.textBox4.TabIndex = 29;
            this.textBox4.Text = "Button 4";
            this.textBox4.TextChanged += new System.EventHandler(this.textBox4_TextChanged);
            // 
            // textBox5
            // 
            this.textBox5.Location = new System.Drawing.Point(58, 118);
            this.textBox5.Name = "textBox5";
            this.textBox5.ReadOnly = true;
            this.textBox5.Size = new System.Drawing.Size(100, 20);
            this.textBox5.TabIndex = 30;
            this.textBox5.Text = "Button 5";
            // 
            // textBox6
            // 
            this.textBox6.Location = new System.Drawing.Point(206, 118);
            this.textBox6.Name = "textBox6";
            this.textBox6.ReadOnly = true;
            this.textBox6.Size = new System.Drawing.Size(100, 20);
            this.textBox6.TabIndex = 31;
            this.textBox6.Text = "Button 6";
            // 
            // textBox7
            // 
            this.textBox7.Location = new System.Drawing.Point(366, 118);
            this.textBox7.Name = "textBox7";
            this.textBox7.ReadOnly = true;
            this.textBox7.Size = new System.Drawing.Size(100, 20);
            this.textBox7.TabIndex = 32;
            this.textBox7.Text = "Button 7";
            // 
            // textBox8
            // 
            this.textBox8.Location = new System.Drawing.Point(531, 118);
            this.textBox8.Name = "textBox8";
            this.textBox8.ReadOnly = true;
            this.textBox8.Size = new System.Drawing.Size(100, 20);
            this.textBox8.TabIndex = 33;
            this.textBox8.Text = "Button 8";
            // 
            // textBox9
            // 
            this.textBox9.BackColor = System.Drawing.SystemColors.Info;
            this.textBox9.ForeColor = System.Drawing.SystemColors.InfoText;
            this.textBox9.Location = new System.Drawing.Point(291, 62);
            this.textBox9.Name = "textBox9";
            this.textBox9.ReadOnly = true;
            this.textBox9.Size = new System.Drawing.Size(133, 20);
            this.textBox9.TabIndex = 34;
            this.textBox9.Text = "mbed MIDI Sound Loader";
            this.textBox9.TextChanged += new System.EventHandler(this.textBox9_TextChanged);
            // 
            // Form1
            // 
            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(759, 498);
            this.Controls.Add(this.textBox9);
            this.Controls.Add(this.textBox8);
            this.Controls.Add(this.textBox7);
            this.Controls.Add(this.textBox6);
            this.Controls.Add(this.textBox5);
            this.Controls.Add(this.textBox4);
            this.Controls.Add(this.textBox3);
            this.Controls.Add(this.textBox2);
            this.Controls.Add(this.textBox1);
            this.Controls.Add(this.comboBox22);
            this.Controls.Add(this.comboBox23);
            this.Controls.Add(this.comboBox24);
            this.Controls.Add(this.comboBox19);
            this.Controls.Add(this.comboBox20);
            this.Controls.Add(this.comboBox21);
            this.Controls.Add(this.comboBox10);
            this.Controls.Add(this.comboBox11);
            this.Controls.Add(this.comboBox12);
            this.Controls.Add(this.comboBox13);
            this.Controls.Add(this.comboBox14);
            this.Controls.Add(this.comboBox15);
            this.Controls.Add(this.comboBox16);
            this.Controls.Add(this.comboBox17);
            this.Controls.Add(this.comboBox18);
            this.Controls.Add(this.comboBox7);
            this.Controls.Add(this.comboBox8);
            this.Controls.Add(this.comboBox9);
            this.Controls.Add(this.comboBox3);
            this.Controls.Add(this.comboBox5);
            this.Controls.Add(this.comboBox6);
            this.Controls.Add(this.comboBox4);
            this.Controls.Add(this.comboBox2);
            this.Controls.Add(this.comboBox1);
            this.Name = "Form1";
            this.Text = "Form1";
            this.ResumeLayout(false);
            this.PerformLayout();

        }

        #endregion

        private System.IO.Ports.SerialPort serialPort1;
        private System.Windows.Forms.ComboBox comboBox1;
        private System.Windows.Forms.ComboBox comboBox2;
        private System.Windows.Forms.ComboBox comboBox4;
        private System.Windows.Forms.ComboBox comboBox3;
        private System.Windows.Forms.ComboBox comboBox5;
        private System.Windows.Forms.ComboBox comboBox6;
        private System.Windows.Forms.ComboBox comboBox7;
        private System.Windows.Forms.ComboBox comboBox8;
        private System.Windows.Forms.ComboBox comboBox9;
        private System.Windows.Forms.ComboBox comboBox10;
        private System.Windows.Forms.ComboBox comboBox11;
        private System.Windows.Forms.ComboBox comboBox12;
        private System.Windows.Forms.ComboBox comboBox13;
        private System.Windows.Forms.ComboBox comboBox14;
        private System.Windows.Forms.ComboBox comboBox15;
        private System.Windows.Forms.ComboBox comboBox16;
        private System.Windows.Forms.ComboBox comboBox17;
        private System.Windows.Forms.ComboBox comboBox18;
        private System.Windows.Forms.ComboBox comboBox19;
        private System.Windows.Forms.ComboBox comboBox20;
        private System.Windows.Forms.ComboBox comboBox21;
        private System.Windows.Forms.ComboBox comboBox22;
        private System.Windows.Forms.ComboBox comboBox23;
        private System.Windows.Forms.ComboBox comboBox24;
        private System.Windows.Forms.TextBox textBox1;
        private System.Windows.Forms.TextBox textBox2;
        private System.Windows.Forms.TextBox textBox3;
        private System.Windows.Forms.TextBox textBox4;
        private System.Windows.Forms.TextBox textBox5;
        private System.Windows.Forms.TextBox textBox6;
        private System.Windows.Forms.TextBox textBox7;
        private System.Windows.Forms.TextBox textBox8;
        private System.Windows.Forms.TextBox textBox9;
    }
}
Download repository: zip gz

Files at revision 10:669d8d991de9

Name Size Actions
[up]
4DGL-uLCD-SE.lib 62 Revisions Annotate
main.cpp 7732 Revisions Annotate
mbed.bld 65 Revisions Annotate