This implementation supports buffering of input and output. Right now the input and output are split into two fields, and maybe I'll fix this later. If you can suggest any changes or improvements, email me at firstname.lastname@example.org. For background, please see Google's archive regarding my initial post to news and the responses I got. There is a tutorial with step-by-step instructions on how to use the class. You are free to peruse the files:
Example screenshots are below. The unix-style console is on the left, and the Windows dialog box is on the left.
Copyright 1997 David Coppit. Permission to use and modify this code for research purposes is granted to provided that this copyright statement retained in all derivative software.
Back to my code.