To: bdenckla@media.mit.edu, cyu@mit.edu Subject: Rogus McBogus 1.2a is released! Date: Sun, 05 Nov 1995 19:43:43 EST From: Patrick E Pelletier I have decided to release version 1.2a of Rogus McBogus, since I have finished a number of improvements to it. Features of version 1.2a: * Score Player * Utility Classes * uses SIOUX for I/O (you can actually scroll backwards) * global pointers to scheduler and OMS app (schedp and oap) * supports ParserRegistration for switching between parsers * Rogus code is in its own library and cleanly separated from user code Version 1.2a does not have Recorder, sysex, or channel management. Hopefully these features will be in 1.3a. There is one trick to the parser registration. My intention had been for parsers to be simply linked in, without need for any source file to list all the parsers. Unfortunately, this is not quite possible, because CodeWarrior does not link files in unless there are symbol references to them. So, while I am still using ParserRegistration to register the parsers, I have resorted to an ugly trick to make them get linked in. See the comments in the file fooFinder.cp. I have eliminated the flashing mouse pointer problem I had with SIOUX, however there still seems to be two disadvantages it has. One is that it sometimes takes a very long time for the program to start up. The other is that the max lateness is usually around 30 or 40. (Wasn't it less late with the earlier text_win?) The Rogus headers and library are now located in a uniform place on Schlep and Kvetch, so it is no longer necessary for Rogus code to clutter up users' project directories. This release of Rogus McBogus is located in Development:Rogus McBogus:1.2a on both machines. Since Rogus has been reorganized quite a bit, you will probably want to start with the project stationary and then add your parsers to it. The project stationary for this verison of Rogus is located at Development:Rogus McBogus:1.2a:Rogus McBogus 1.2a.u. This reorganization should make it much easier to migrate to future versions of Rogus. If the documentation is insufficient or you have any comments about this vesion of Rogus, please let me know. --Patrick To: bdenckla@media.mit.edu, cyu@mit.edu Subject: Rogus release notes continued Date: Mon, 06 Nov 1995 00:40:52 EST From: Patrick E Pelletier Hi again. There's a couple of things I forgot to mention in my last message about Rogus McBogus 1.2a. First, when modifying fooFinder.cp, (or any of the parser files) be sure to copy the file into your project directory first. Otherwise, you'll be editing the master copy of the file in the shared directory. Second, I forgot to mention how I handled the closing of input nodes. (Although right now it's not a big deal since we're only using one input node in all of our applications right now.) Rather than requiring the parser to close its inputs in its destructor, Rogus automatically closes all open inputs whenever the parser is changed. So all the parser has to do is open the inputs it wants in its constructor. However, if a parser wishes to close all inputs while it is running, it can call oap->closeAllInputs() to close any open inputs. (But this is called automatically when the parser is changed.) --Patrick