Well, this could seem a bit complicated, but is the sollution which came to my mind. To use the same control to give and receive instructions, you must use local variables, or else you'll need a control to give instructions and an indicator to receive them. To avoid having the second, you could use a simple string array control. You could read the first element until something is written, and then wait for an answer, if that exists, place it in the array using a local variable, but in the second element. So, the next command should go to the third element, and so on... this forces you to have an exhaustive control of key focus, perhaps avoiding mouse click on this control. You can finish command entering hitting return (or a control). Hope I made myself clear, and that
my explanation meets your needs.