I chose to use a comment to my previous post to clarify something that we covered in class today (the use of gate instead of switch).
Problems with the Example Patches
Michael Brown emailed me that he had a problem opening the example patches from the blog links. I’m not sure why this isn’t working. But to make the patch downloading a little bit easier, I’ve created a maxmsp_examples folder within my public folder on the musictech xserve. Follow the directions to connect to the xserve and my directory that were outlined in a previous post. But instead of copying to my Drop Box inside my public folder, open up the maxmsp_examples folder in my public folder.
Saving your data in a table object
By default the table object does not store any data you enter. You need to do a get info command on the table object and check the option to “save table with patcher.” Alternately, you can use table with an argument for a filename, and perform a Save command with the table editing window active. This will save your table and allow you to use it in other patchers.
The counter outputs a “carry flag” when it reaches its maximum number count. When the max is reached, the outlet puts out a “1” message. When the count starts over, the outlet puts out a “0” message. In order to stop playback of your scales, you need to use the carry flag message to turn the toggle off that controls the metro object. You’re going to have to figure out how to convert that message, or how that message can trigger the message you really want.
You also need to make sure your scale playing patch always starts with tonic when it plays back the scales.
gate (and graphic gate) let you open and close individual outlets to pass information through to specific places.
the menu object lets you insert a pop-up menu to control other objects in your patch. Use Get Info on the menu object to enter menu items (sep. by commas). I like to have my first menu item be some indication to the user regarding what they should do with the menu.
loadbang and loadmess
These two objects allow you to send out a bang (loadbang) message when the patch first loads, or a message (loadmess arg). loadbang and loadmess can be used to set initial patcher states (for objects like gate and menu).