RTMHWNOD - The Theta Band RTMIDI hardware node utility

This application is used to debug problems with the MPU-401 device driver.
You should only use this application when instructed to do so by Theta Band
Software technicaly support.

This software allows you to interact with RTMIDI hardware nodes on a low
level.  Each hardware node corresponds to one MIDI hardware device.

When you start RTMHWNOD, a menu appears:

   0. Exit
   1. Enable a hardware node for send (recording)
   2. Disable a hardware node for send
   3. Enable a hardware node for receive (playback)
   4. Disable a hardware node for receive
   5. Send a MIDI message to a hardware node
   6. Send System Exclusive Message
   7. Record (you must enable a node for sending first)
   8. Connect one hardware node to another
   9. Disconnect one hardware node from another

The options are:

0) Exits the program. Make sure all nodes are disabled first

1) Enables a hardware node for sending. In layman's terms, sending is akin
   to recording MIDI, in that the hardware node "sends" the MIDI data to
   an application node, which is what an RTMIDI app uses to receive the MIDI
   data.

2) Disables a hardware node for sending. It's the opposite of option 1

3) Enables a hardware node for receiving. In layman's terms, sending is akin
   to playing MIDI, in that the hardware node "receives" the MIDI data from
   an application node, which is what an RTMIDI app uses to send the MIDI
   data.  Whenever a hardware node receives any MIDI data, it outputs the
   data to the hardware.

4) Disables a hardware node for receiving. It's the opposite of option 3

5) Sends a 3-byte MIDI message to any hardware node that's enabled for
   receiving.  This is akin to sending a MIDI message to the hardware.

6) Sends a multi-byte System Exclusive MIDI message to any hardware node
   that's enabled for receiving. This is similar to open 5, except that the
   MIDI message can be any length.

7) Record MIDI messages from any hardware node that's enabled for sending.
   Press a key to begin recording, and each message will be displayed, byte
   by byte. To stop recording, press any key again, and recording will stop
   after the next message. This means that in order to stop, you need to
   send a MIDI message to the hardware AFTER you press a key.  If recording
   is not working, then the session is hung.

   Warning: For the "Record" command, it is very easy to hang RTMHWNOD.  The
   rest of the system will continue to operate, but you will not be able to
   close RTMHWNOD.EXE nor will you be able to use another instance of RTMHWNOD.
   This bug will be fixed in a future release.

8) Creates a link from one hardware node to another, thereby creating a
   "MIDI pass-thru", where any MIDI message sent to one node is echoed out
   the other.

9) Removes the link created by option 8

