Subject: MAX Digest - 9 Nov 1999 to 10 Nov 1999 (#1999-323)
Date: Thu, 11 Nov 1999 00:00:19 -0500
Automatic digest processor <LISTSERV@LISTS.MCGILL.CA>
Reply-To: MAX - Interactive Music/Multimedia Standard Environments <MAX@LISTS.MCGILL.CA>
To: Recipients of MAX digests <MAX@LISTS.MCGILL.CA>

There are 8 messages totalling 359 lines in this issue.

Topics of the day:

  1. update on various Max subjects
  2. concatinating symbols
  3. serial control of videonics MX-1?
  4. Re : Sound level meter (vu)
  5. message to coll ->??
  6. Video Control Help/Request/Plead :)
  7. jMax/Max compatibilities
  8. Concatenation


Date:Tue, 9 Nov 1999 21:51:04 -0800
From:David Zicarelli <zicarell@CYCLING74.COM>
Subject: update on various Max subjects

A couple of things of note:

  1. Mac OS 9 compatible versions of all the software, including (and
    especially) classic good ol' Opcode Max, have been stymied by
    bugs in the new PACE release. PACE promised new versions early last
    week, but they've since gone dark. I like how when I report bugs
    to them they always speak of the problems in the passive
    voice, as if they independently discovered the problems at exactly
    the same time I reported them. Personally, I believe in giving people
    credit for exposing my many weaknesses.
  1. Still nothing to report as far as a new home for Max. Good
    will has been expressed by the parties, but little else. I've
    been told by an informed source to expect that things will take
    a very long time. How much time do you think I have?

David Z.


Date:Wed, 10 Nov 1999 01:11:32 -0500
From:Stephen Kay <sk@COMPUSERVE.COM>
Subject: concatinating symbols

>>I'm using a combination of message boxes and sprintf to create pathname=
>>but I am running into problems maintaining the smart quotes in sprintf.=

>I have just placed a new Lobject at
>Lsymcat addresses the above problem by combining symbols in a simple way=

I wrote an object awhile back that does something similar.
It takes many symbols, floats, ints, whatever (lists, mixed lists) and
them all together into one big symbol, either concatenating everything
(no spaces) or allowing a user specifed "separator" to be between each


The separator can be a space, an underline, another word, etc.

Don't know if it will handle all problems, but it is available at:

It is called "ListToSymbol" .

Stephen Kay


Date:Wed, 10 Nov 1999 01:43:01 -0600
From:Ken Gregory <kgregory@PANGEA.CA>
Subject: Re: serial control of videonics MX-1?

I was wondering if anyone knew of an object that has been written to
>> control the MX-1 via the serial port. The following was taken from the LEV
>> list:
>> >I don't know of anyone who's written an object for it, but you could write
>> >a patch that sent the correct opcodes for the MX-1 out the serial object of
>> >Max, yes.
>> >- --
>> Does anyone know if this object in fact exists? This would give the ability
>> to switch live inputs via max/nato. Sound exciting to anyone? Any
>> information regarding this and other video siwtcher would be grealty
>> appreciated. Thanks.
>I have managed to do this. The main problem is not the
>control, rather that the MX-1 uses a 5V TTL level serial
>interface which needs a chip (e.g. a maxim chip whose
>name I forget) to convert to/from RS232. This is pretty
>trivial too, but not just a connector.
>Once this is done control is still a bit slow, but usable
>(as far as I remember, it was a while ago).

Actually, the Mac serial out is RS-422 and can communicate serially with
RS-232 serial devices with the use of a null modem adapter. The null modem
adapter grounds the positive side of each RS-422 receiver and leaves
unconnected the positive side of each transmitter.

Mostcommercial video switchers have RS-232 serial ports, but you need the
code reference docs for each manufacturers device to format the messages in
Max. There are some standards though. Take a closer look at your MX-1
documentation to see what it has. You may have to contact the MX-1
manufacturers customer service dept for the serial comm docs.

A RS485/RS422 to TTL converter is what you need to communicate with TTL
devices ( microprocessors, etc) Maxim part # MAX3081

Maximmakes chips that do this as well as converters for all the other
conversions. You can get a couple free samples through their wsite.
Otherwise they are approx. 2$ to 6$ each.

If you are just SENDING TTL messages from a TTL device, IE Stamp
microprocessors, to the Mac serial port, you don't need an adapter. Just
connect the Stamp serial out pin directly to pin5 on the Mac serial port
and connect the ground to the Mac serial pin4.

Hope this helps.



Date:Wed, 10 Nov 1999 08:46:28 +0100
From:Le Quan Ninh <ninh@MUSIQUE.NET>
Subject: Re : Sound level meter (vu)

> Hi, does anyone have or know of an object or patch for a vu meter for Max=
> I would like to monitor my audio input either through the CD or audio
> inputs to control other devices. Also, a frequency meter would be pretty
> cool too? Is that possible in real time? I realize I can do it with a
> MIDI device, but then I would have to buy the thing.
> thanks,
> Brian Dressel

vu1~ by Zack Settel (in the Jimmies)

vumeter~ by Danny Chong


+[]+ ou/or +[]+
+[si l'adresse ne r=E9pond pas utilisez :]+
+[If the address doesn't work, use :]+


Date:Wed, 10 Nov 1999 11:39:56 +0200
From:Tom Mays <tmays@HOL.GR>
Subject: Re: message to coll ->??

>the messages it creates and sends to 'coll' look just like the ones typed in
>manually (something like [2 something]), but they don't work.
>do i miss something obvious?

No, I wouldn't call it obvious. The int-space-symbol is really
acting like one whole symbol without the smart quotes, as far as
I can tell. Developing a way of dealing with message types in a more
consistent and controllable manner is what many of us dearly hope
that David Z. will be able to do in max4. In the mean time, here's my
hack for this one. Note Ellison's atoi (once again) which turns the "int
as symbol" into a list of ascii values. This time, running it
into itoa wouldn't do any good because that would just turn it back to
a symbol. Sprintf, however, knows how to convert ascii numbers for
ints into real ints. What it doesn't know is "how long the number is".
For this reason I had to pre-determine a max number of digits (in
this case 6) by unpacking from the atoi output and then converting
with sprintf - having preloaded the possible empty digits with ascii 32.
This works for numbers from -99999 to 999999...

max v2;
#N vpatcher 108 59 445 570;
#P message 21 401 50 196617 sort 1 -1;
#P message 128 305 20 196617 32;
#P newex 13 272 125 196617 t l b;
#P newex 13 293 92 196617 unpack 0 0 0 0 0 0;
#P newex 13 338 125 196617 sprintf %c%c%c%c%c%c;
#P newex 13 252 27 196617 atoi;
#P number 13 358 49 9 0 0 0 3;
#P newex 13 233 65 196617 route symbol;
#P message 138 445 50 196617 999999 bigplus;
#P newex 138 421 60 196617 prepend set;
#P newex 117 392 45 196617 pack 0 x;

#P message 152 60 108 196618 add something to coll;
#P button 13 177 15 0;
#P newex 13 213 105 196617 dialog Enter a Number;
#P message 13 195 75 196617 symbol number;
#P button 152 82 15 0;
#P newex 152 122 110 196617 dialog Enter Something;
#P message 152 103 78 196617 symbol Untitled;
#N coll samplelist;
#T flags 1 0;
#T -99999 bigminus;
#T 1 sissi;
#T 2 susi;
#T 3 herta;
#T 4 hedwig;
#T 5 bruenhilden;
#T 999999 bigplus;
#P newobj 42 435 73 196617 coll samplelist;
#P connect 2 0 6 0;
#P connect 6 0 4 0;
#P connect 4 0 5 0;
#P connect 5 0 11 0;
#P connect 11 0 13 0;
#P connect 13 0 16 0;
#P connect 16 0 15 0;
#P connect 15 0 14 0;
#P connect 14 0 12 0;
#P connect 17 0 14 1;
#P connect 15 1 14 1;
#P connect 18 0 0 0;
#P connect 8 0 0 0;
#P connect 17 0 14 2;
#P connect 15 2 14 2;
#P connect 17 0 14 3;
#P connect 15 3 14 3;
#P connect 17 0 14 4;
#P connect 15 4 14 4;
#P connect 12 0 8 0;
#P connect 16 1 17 0;
#P connect 17 0 14 5;
#P connect 15 5 14 5;
#P connect 8 0 9 0;
#P connect 9 0 10 0;
#P connect 7 0 3 0;
#P connect 3 0 1 0;
#P connect 1 0 2 0;
#P connect 2 0 8 1;
#P pop;


Date:Tue, 9 Nov 1999 23:17:07 -0600
From:"D. Studen" <iai@RMI.NET>
Subject: Video Control Help/Request/Plead :)

Greetings Maxers.....

We are currently researching the incorporating of multiple video streams
into an upcoming longterm, continually changing/evolving installation.
What we need is your advice about how to best tackle such an

We ideally need:

To trigger playback of multiple fullscreen 30fps video clips. Clips
will be triggered either by an active sensor in the floor, ceiling
(infrared) or wall (again infrared)..

We are not ruling any approach out. If we need to use, say a dedicated
iMac for each video playback system we will (the thought of even doing
some touchscreen stuff is possible with this scenario)...

DVD? Friend or foe at this point?

Any possible way to set up a video server and stream these clips to the

Please include within your responses detailed ideas about how each video
"station" could best be controlled from a central MAX server... I am
yet to understand how MAX could best control these remote units (perhaps
over 100baseT ethernet?)Please also include what specific products,
objects etc you would recommend...

Long live this teriffic list!

Thanks Ever So Much,
DR Studen
Intelligent Audio Industries


Date:Wed, 10 Nov 1999 15:53:47 +0100
From:Vincent Puig <Vincent.Puig@IRCAM.FR>
Subject: jMax/Max compatibilities

> >> Date:Wed, 3 Nov 1999 23:23:00 -0800
> >> From:
David Zicarelli <zicarell@CYCLING74.COM>
> >> Subject: Re: jMax
> >>
> >> Louis Klepner <lou@EXPRESSIVEIMAGING.COM> writes:
> >>
> >> Can you comment at all on how IRCAM's jMax will relate to Max? Will
> >> >there be hope of porting patches created in Max to JMax for use on
> >>PC's? Any
> >> >information regarding the intergration of Max and JMax would be greatly
> >> >appreciated. Thanks.
> >>
> >> Shortly after MSP was released, I gave IRCAM an "FTS Compatibility
> >> library" that implements most of the functions and limitations
> >> of FTS in MSP. As far as I'm concerned, it's up to the person
> >> writing the destination environment to ensure compatibility with
> >> the source environment. If the developers of jMax wish to
> >> provide a similar "MSP Compatibility Mode" it is certainly
> >> an opportunity open to them. As part of a distribution agreement,
> >> I provided the MSP source code to IRCAM, so that could be of
> >> some help in this area.
> >>
> >> David Z.

There are in fact 2 points: the file format and the object set.

Regarding file format, jMax can load .pat files saved by "ircam-max" (the
Max running on the Ircam Signal Processing Workstation). It can also load
patches saved by Max/MSP, but there may remain some incompatibilities, like
break-points connections. On the contrary, jMax saves patches in a binary
format that cannot be loaded by Max/MSP. It is planed to add soon a "save
as .pat" functionnality to jMax, but there is no guaranty of a 100%

For the object set, there are objects that are the same, objects that do
the same but have different names, and objects which are differents. There
are a few solutions to deal with that: templates (in jMax), abstractions
(in Max/MSP) and doctors. "doctors" are a jMax specific functionnality that
work like macros: a doctor can for instance replace one object by another
with different arguments, and still save the old name.

Vincent Puig
1 place Igor Stravinsky
75004 Paris
Tel: (33) (0)1 44 78 49 59
Fax: (33) (0)1 44 78 15 40
email :


Date:Wed, 10 Nov 1999 09:57:19 -0500
From:Brian Willkie <bwillkie@ARCHES.UGA.EDU>
Subject: Concatenation

Along the lines of concatenating, it might be nice if coll objects
(perhaps all objects) could concatenate argument names e.g. #1#2 -> AB
for (#1 = A, #2 = B). This could be valuable in the case of building large
banks where the lowest level stores data in a coll which could be
identified by a string of indexes indicating which bank:sub_bank:object
the coll is in. Is this a bad idea? Would anyone else find this useful?

Brian Willkie


End of MAX Digest - 9 Nov 1999 to 10 Nov 1999 (#1999-323)