Subject: MAX Digest - 31 May 1999 to 1 Jun 1999 (#1999-164)
Date: Wed, 2 Jun 1999 00:00:00 -0400
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 16 messages totalling 574 lines in this issue.

Topics of the day:

  1. MAX application without MIDI (reprise) (2)
  2. lgate and bgate bugs
  3. atombuf_free question
  4. "intelligent" realtime live sequencing (2)
  5. MAX Digest - 9 May 1999 to 10 May 1999 (#1999-142)
  6. Network Communication under Max
  7. Thanks.
  8. AMIII SPDIF out q:
  9. to OMS or not OMS
  10. Dreaming/Conceiving of Sequencers
  11. bgate bug
  12. Off topic: please help
  13. movie ready
  14. views on PB 5300 alternatives...


Date:Mon, 31 May 1999 21:28:24 -0700
From:Edward Spiegel <espiegel@SIRIUS.COM>
Subject: MAX application without MIDI (reprise)


I posted this last week and didn't get an answer. So, I thought I'd try
again. Is there a way when using the application builder to have it NOT
initialize midi?

I have a couple of simple MAX apps I've put together that don't use the
serial ports or midi that I'd like to be able to run without having them
initialize OMS.

Is this possible?

Thanks in advance,



Date:Mon, 31 May 1999 23:06:48 -0700
From:Robert Ostertag <rostert@IBM.NET>
Subject: lgate and bgate bugs

While on the subject of gate bugs, this patch shows a bug with bgate
which has harrassed me for a while. Note that this patch works fine
with lgate, igate or fgate.

max v2;
#N vpatcher 50 40 450 340;
#P button 182 121 15 0;
#P toggle 160 122 15 0;
#P newex 125 222 27 196617 i 0;
#P newex 144 189 28 196617 t b b;
#P button 162 231 15 0;
#P newex 160 162 32 196617 bgate;

#P connect 2 0 3 0;
#P connect 0 0 2 0;
#P connect 4 0 0 0;
#P fasten 3 0 0 0 130 246 85 246 85 148 165 148;
#P connect 2 1 1 0;
#P connect 5 0 0 1;
#P pop;

thanks for your attention,
Bob Ostertag


Date:Tue, 1 Jun 1999 01:52:51 -0700
From:David Zicarelli <zicarell@CYCLING74.COM>
Subject: Re: atombuf_free question

Kevin Walker <kwalker@XMISSION.COM> asks:

>Which memory does atombuf_free free? The entire structure or just ab->a_argv?

The entire structure.

>Also, does atombuf_text free the memory of the old atombuf before replacing


David Z.


Date:Tue, 1 Jun 1999 11:18:14 +0200
From:Hans Timmermans <hans.timmermans@KMT.HKU.NL>
Subject: "intelligent" realtime live sequencing

On:Mon, 31 May 1999 18:37:42 +0300
Jukka Ylitalo <juylital@CC.HELSINKI.FI> wrote:

>Subject: "intelligent" realtime live sequencing
>Hello maxers,
>Have any of you dreamed or even conceived a following sequencer feature
>with max:
>"intelligent" realtime live sequencing:
>-it should do the following:
>1. you
play live a pattern that loops, say 3 - 7 notes long
>2. max records the pattern
>3. as soon as max has detected that the pattern is "fairly" steady it
>starts to loop playback it automatically on fly
>4. you
continue bulding another loop with another soundon top of the
>previous (repeat 1. -3. with new sound )
>-when playing live it is most likely impossible that the delta time and
>duration of notes in milliseconds are repeating the exact same values,
>there should be maybe adjustable % level that determines what is "fairly"
>steady pattern.
>any hints to realize this would be great
>I suppose i should try this with detonate object?
>I wonder how to realize the periodic scan
through the sequence (after
>every played note)
to see if there is a "fairly" steady pattern (of
>pitches, delta times, durations) repeating at least twice for triggering

>the jump into playing it back automatically

Joost Boomkamp is one of my students and he reacted:

Hello Jukka,

It might work if you check for repeating note numbers only.
let max go through an array (table I think?) of recorded notes and if it
finds a repeated note, let it check if the next note is also the next note
of the original pattern, and then if the third note...etc.
You'll need to run this check for every note in the recorded pattern but as
most checks will turn out false anyway, so it should be fast enough.

I think this should also work on repeated notes within the loop.

>>any hints to realize this would be great
>>I suppose i should try this with detonate object?
a cascade of identical expr's: "expr if $i1==$i2 ..."
and if you want to double check, calculate the loopsize and check if
note[currentnote+loopsize] matches also. Sorry, I hope you get my point but
I've been hacking other languages for too long ;-) anyway, there's an
example down here:


>>I wonder how to realize the periodic scanthrough the sequence (after
>>every played note)
after a notein you could bang your check routine, like zis:

input: note 60-
check: the rest of the table are all 0, so no match

input: note 67-
check: 60-67-no loop


input: note 60
check: 60-67-70-72-60-no further notes (so not an 'official' loop yet)

input: note 67
check:60-67-70-72-60-67- 'oy, that's a match!


I think that after three complete patterns have passed the test, you should
return a 'true'.
Also, minimum loop size must be big enough to prevent repeating notes (e.g.
60-60-60-60-70-72) from turning into a played back loop, or disable
"repeating note loop" altogether.

playback: this patcher will get a bang if loop=true
you'll have to remember everything about the notes, but I -think- there's a
seuqencer type object in MAX...
Else you might want to try to record every raw MIDI byte into a huge table,
including time stamp, if possible (or use another table to record the time
of the MIDI event) and start dumping it back to the port when loop=true has
been established.

good luck, great idea!

Joost Boomkamp
Utrecht School of the Arts
fac: Arts, Media & Technology
dep: Music Technology & Audio Design
student of Sound & Music Software Development
student of Sound Design

Hans Timmermans
Senior Lecturer in Computer Music and in Music Software Development.

School of Music
Graduate and Postgraduate Programs in Composition, Music Production and
Music Technology
Faculty of Art, Media & Technology
Utrecht School of the Arts

phone:(+31) 35 6836464
fax:(+31) 35 6836480

PO-BOX 2471


Date:Tue, 1 Jun 1999 13:21:34 +0200
From:hollek <hollek@STUTTGART.NETSURF.DE>
Subject: Re: MAX Digest - 9 May 1999 to 10 May 1999 (#1999-142)

can anybody help ?

I need the MIDI Implementation of the
Tascam TMD 8000 - to remote it with

Matthias Schneider-Hollek
Heusteigstr. 44
70180 Stuttgart

phone xx-711-6070780
fax xx-711-6070783


Date:Tue, 1 Jun 1999 15:30:28 +0200
From:Rainer Gutkas <rainer.gutkas@JK.UNI-LINZ.AC.AT>
Subject: Network Communication under Max

Hi there!

I'm currently working on my Diploma Theses 'NetMusic' which is a
cooperative composing enviroment. For this need I was looking for a good
networking patch for Max. The needs of the Patch would be the
possibility to spread messages, pictures and midi data. Better said a

ground to implement the functionality of virtual enviroments on.
I had a look at the WC Object, but didn't find it appropriate for my
needs. As a max novice I couldn't find any other higer level Networking
Anybody any idea of Max networking patches I could use?

Thanks for your help,



Date:Tue, 1 Jun 1999 10:18:09 -0400
From:Michael Sweet <msweet@BWAY.NET>
Subject: Re: MAX application without MIDI (reprise)

You can turn off the OMS extension but I assume you wouldn't be asking
unless you needed that on. I don't think there is any way of turning the
initialization of OMS feature off unless OMS is not installed. Does the
initialization of OMS disrupt your patch?

--Michael Sweet

Edward Spiegel wrote:

> I posted this last week and didn't get an answer. So, I thought I'd try
> again. Is there a way when using the application builder to have it NOT
> initialize midi?
> I have a couple of simple MAX apps I've put together that don't use the
> serial ports or midi that I'd like to be able to run without having them
> initialize OMS.


Date:Tue, 1 Jun 1999 10:10:43 +0000
From:Pablo Silva <hpsilva@SERVIDOR.UNAM.MX>
Subject: Thanks.


Thanks to Dave for a most enlightening explanation on Netscape's inner
quirks. I always had the gut feeling that it was a total machine hog,
but now you lend new support to my paranoia... :-) But why is it that
this keeps happening, on the other hand:

> Naturally, Opcode never told me anyone was complaining
> about incompatibilities with Netscape.

We all know that MAX is hardly a priority proyect for Opcode, but have
we got to this point?

Pablo Silva


Date:Wed, 2 Jun 1999 08:39:49 -0800
From:anechoic audio engine <anechoic@SIRIUS.COM>
Subject: AMIII SPDIF out q:

I'm using an AMIII card with Max/MSP and am not getting anything out the
SPDIF out...I've tested this with other audio apps that use the
DigiInit/DAE and it exhibits the same behavior: no signal out from the
SPDIF...what's odd is that I am able to get SPDIF into my card from my DAT
machine...anyone had trouble with the 3.4.1 DigiInit? is anyone using the
Opcode Acadia engine? btw: my card is config'd properly (; dsp driver

setup)...please see my config below...
thanks in advance,


Out Now:

blueCube( ) (Rastermusic)
nb2e_Vortex.aiff (Mille Plateaux)
vortexShedding (Caipirinha Music)

"the medium is no longer the message, the tool has become the message"


Date:Tue, 1 Jun 1999 13:24:42 EDT
Subject: Re: to OMS or not OMS

Someone asked recently why it was always necessary for stand alone apps
written in MAX to log onto OMS even if there are no MIDI objects in the app.
I 've asked this on the list before (and got the same response - nothing). I
have many tools that I have written in MAX that I use daily. Several of them
have absolutely nothing to do with MIDI. Yet I still have to wait the age for
them to launch and have to cancel the dialog box which opens if my modem port
happens to be switched to a device other than the Studio 4. Would it not be
easy to give the option of including OMS or not in the Application Installer ?
(If enough of us grumble about this, at least there might be a reply)


Date:Tue, 1 Jun 1999 14:13:49 -0400
From:Stephen Kay <sk@COMPUSERVE.COM>
Subject: "intelligent" realtime live sequencing

>1. youplay live a pattern that loops, say 3 - 7 notes long
>2. max records the pattern
>3. as soon as max has detected that the pattern is "fairly" steady it
>starts to loop playback it automatically on fly
>4. you
continue bulding another loop with another soundon top of the
>previous (repeat 1. -3. with new sound )

Instead of having Max try to decide where to start looping,
why not just make a certain key (or button, or footswitch)
start the loop. Obviously you yourself know better than
Max where you want the thing to loop. I can't see what the
advantage would be to having it done automatically according
to some pattern detection, unless having Max decide you
had made a pattern before you really thought you had is
some sort of advantage.

Stephen Kay
The MegaMAX Collection of professional development-oriented Mac objects.


Date:Tue, 1 Jun 1999 12:06:32 PDT
From:Chris Tignor <ctignor@HOTMAIL.COM>
Subject: Dreaming/Conceiving of Sequencers


>Have any of you dreamed or even >conceived a following sequencer >feature
>with max:

>"intelligent" realtime live >sequencing:
>-it should do the following:

>1. youplay live a pattern that loops, >say 3 - 7 notes long
>2. max records the pattern
>3. as soon as max has detected that >the pattern is "fairly" steady it
>starts to loop playback it >automatically on fly
>4. you
continue bulding another >loop with another soundon top of >the
>previous (repeat 1. -3. with new >sound )

As described in my previous posting describing the live-performance
sequencer I have created, all of the above features you have mentioned are
currently integrated. The sequencer does in fact center around the detonate
object, or should I say, several detonate objects. Three recordable
sequence banks exist, allowing the instrumentalist to play any arrangement
of notes over a loop playing by another detonate object, when the loop is
finished it simply stops recording and plays back your new "layer".
Obviously, three recordable layers can be created (and of course recorded
over) in addition to the two stand-alone sequencers which store
-preprogrammed sequences pasted together during the performance in too many
ways to reiterate here.

Implementation of this feature posed some unique hurdles in coercing
detonate to do my bidding. It is simple enough to get detonate to record
and playback loops, but syncing up the separate loops means having to first,
"tag" the recorded sequence with an unheard "dummy" note /*on a spearate
track*/ at the very end of a sequence because, using the loop example given
in the detonate section of the Max3.5 Manual Addendum /*study this section
well*/, detonate will re-loop after the duration of its last note is played.
If this duration ends before the entire sequence ends your loop starts
over too early. Tag a dummy note in there at the end so your new sequence
finishes up at the right time. Aslo, I was interested in playing with/over
sequences in different time signatures, so that meant changing the playback
rate of detonate /*mathmatically, 3/4 bars are just 4/4 bars at 1.333 times
the speed*/ so I needed to inform the recordable detonate object of this
playback rate, so it would know at what rate to properly *record* (in the
above 3/4 example at .75 times the original 4/4 speed, get me?). Perhaps
this info won't make much sense until you start getting into the nitty
grittyof detonate. You'll have your own questions which I'll be glad to
help answer /*if I can*/ then.

If you want the sequences to play different "sounds", record on different
tracks and route the tracks to different samples, controlers,
brainwave-type-device-entangled performers/victims, whatever...

If you want your recorded data to be more accurate than you played it, you
could easily just quantize it to the nearest 16,32,etc. note /*again this
value changes based on the rate of recording/time signature!*/. This might
be a real shame though as the possibilty exists here in Max to create some
interesting feeling rythms that commercial sequences would simply round up
to the nearest booty shake...


Get Free Email and Do More On The Web. Visit


Date:Tue, 1 Jun 1999 12:28:50 PDT
From:Chris Tignor <ctignor@HOTMAIL.COM>
Subject: bgate bug

I get bugs with bgate too which also result in stack overflow. After
signifigant tracing I discovered the problem is that when I use the ouput of
a bgate to bang a number which changes the routing of the same bgate, the
bgate then, instead of just switching outlets and waiting for input, spits
out another bang out the same outlet, repeating the cycle until the stack
goes kaplooe. My workaround was to use igates instead and bang numbers
through them which triggered bangs, so I guess that means I don't get this
bug with igate. Thanks.


Get Free Email and Do More On The Web. Visit


Date:Tue, 1 Jun 1999 16:08:13 +0000
From:Pablo Silva <hpsilva@SERVIDOR.UNAM.MX>
Subject: Off topic: please help

Hello everybody:

I have been having the weirdest problem with my system here and wanted
to know if anybody here can give me an idea of a possible solution...

I run System 8.1 on a Mac G3 desktop (grey box). My system runs OK save
for the fact that for the last few days whenever I create a new folder
anywhere on my startup disk (but not on other disks) the new folder will
come up with no icon at all. This would sound like a typical disk
directory/finder info problem save for the fact that repeated tests with
Norton Utilities, Norton Antivirus, TechTool Pro have shown no problem
at all. I have rebuilt the desktop several times now, some after
revision with Norton Utilities and TechTool Pro, to no avail. I've tried
substituting the non-icon for the folder with new ones in the finder
info windows too, with no results. It's the first time I see something
this bizarre. And the weirdest thing is that except for all this I keep
running normally.

Any ideas? Thanks for your help.

Pablo Silva


Date:Tue, 1 Jun 1999 19:10:04 -0400
From:Alejandro Cremaschi <cremasch@OAK.CATS.OHIOU.EDU>
Subject: movie ready

Hello. I'm a fairly new user of MAX and I'm already addicted to it...

Just a short question. Is there any way to know when a movie object has
finished loading a file and is ready to send the length of
the movie out the left outlet?

Thank you,


Alejandro Cremaschi

Assistant Professor of Piano
Coordinator of Class Piano

School of Music
Ohio University
Athens, Ohio 45701
(740) 597-2594
Fax: (740) 593-1429


Date:Tue, 1 Jun 1999 20:44:41 -0400
From:Neal Farwell <nfarwell@FAS.HARVARD.EDU>
Subject: Re: views on PB 5300 alternatives...

Thanks for all your reponses to my PB 5300 query. To sum them up: MIDI
good, DSP bad...

So, to turn the question around: which sub-$400 powerbook would people
favor best for MIDI-only work, on stage and as a supplement to my base



End of MAX Digest - 31 May 1999 to 1 Jun 1999 (#1999-164)