Subject: MAX Digest - 4 Jan 1998 to 5 Jan 1998
Date: Tue, 6 Jan 1998 00:00:37 -0500
From: Automatic digest processor 
Reply-To: MAX - interactive music/multimedia standard environments
     
To: Recipients of MAX digests 

There are 11 messages totalling 454 lines in this issue.

Topics of the day:

  1. G3's+OS8
  2. BINARYCLOCKER
  3. old mac. formats
  4. bank select help
  5. Finder and standalones
  6. msp and polyphony
  7. Question regarding use of Quicktime Movie in MAX
  8. mousetheremin
  9. display the name of my new app
 10. Bank select, etc
 11. MegaMAX v1.2.1

----------------------------------------------------------------------

Date:    Mon, 5 Jan 1998 00:13:45 -0500
From:    Stephen Kay 
Subject: G3's+OS8

>The major problem that our four engineers have with being forced to use
OS8 is
>the fact that whoever aquired Now Software (can't remember who right now=
)
>seems to have no intention of updating Now Utilities for OS8.

Bummer.  I highly agree that it would be hell to live without it. That
alone
makes me hesitate.

>Anyway, can anyone tell me why, when I have made a stand alone app. from=
 a
>collective that all of my Max files display the name of my new app in th=
e
>"kind" field of Finder windows?

Because, because, because, because, because....
    Because of the wonderful things the finder does!

I should just program a QuickKeys to spew the answer to this one, judging=

by the number of times I've answered it ;)

If you do not give your app a custom creator type, it will use max's
'max2'.
The finder will then update itself when you lunch your app, and everythin=
g
that used to say "Max3.5 document" will now say "mystupidapp document". =

The
problem will remain until you either delete your app and rebuild the
desktop,
or change the creation date of your app to be less than max's (and rebuil=
d
your desktop).  Such a simple thing to avoid - just use a different creat=
or
type - anything that doesn't conflict with other applications.

As a matter of fact, question to David Z.: since so many people seem
to have trouble with this, maybe the default value in the application
creator could be something other than 'max2' ? How about 'XL2S' (MicroSof=
t
Excel ;)

Stephen Kay
----------------------- The MegaMAX Collection -----------------------
  Over 30 Max objects for the creation of more professional looking, =

         feeling, and functioning patchers and applications.
                      http://www.musikinetix.com
                          sk@musikinetix.com
----------------------------------------------------------------------

------------------------------

Date:    Mon, 5 Jan 1998 00:13:36 -0500
From:    Stephen Kay 
Subject: BINARYCLOCKER

>PLEASE,  SOMEBODY,  HOW CAN I MAKE A NUMBERBOX FLOW FROM
>0 TO 2047 IN 1 SECOND.
>I NEED THIS INFORMATION URGENTLY

>     HAPPY NEW YEAR

> RAYMOND

If you want every value at even spacings,
you would need the "floating point millisecond metro" David Z. once
hinted at, since 1000 ms/ 2048 =3D .4882812 ms per increment.

The only way to approximate it I could think of quickly would be if
you didn't care if you got every value at even spacings, or even
every value, or how accurate you wanted it to be. For example,
you could use a 1 ms metro (I think the one in 3.5.8 goes that fast
now?) to bang a counter from 0 to 999 multiplied by 2.048, which means
that over the course of 1 second you would get 1000 incremental values
from 0 to 2048 (or so).

Hope this is of some help,

Stephen Kay
----------------------- The MegaMAX Collection -----------------------
  Over 30 Max objects for the creation of more professional looking, =

         feeling, and functioning patchers and applications.
                      http://www.musikinetix.com
                          sk@musikinetix.com
----------------------------------------------------------------------

------------------------------

Date:    Mon, 5 Jan 1998 00:13:40 -0500
From:    Stephen Kay 
Subject: old mac. formats

> > i had some patches i wrote while using and old mac, today i have a
power
> > pc and for some, only some(so strange...) patches i get the following=

> > error: powerpc version can't read old format files.
> > does anybody have ANY idea?
> > tnx oron schwartz

The old format was dropped for the power pc version.  I believe you could=

resolve this by opening up the files in an older version of max, and
resaving them in "new format" or whatever it's called (binary), then
try opening them in the PPC version.  Or perhaps you can use the current
version, just use the 68k version.

Stephen Kay

----------------------- The MegaMAX Collection -----------------------
  Over 30 Max objects for the creation of more professional looking, =

         feeling, and functioning patchers and applications.
                      http://www.musikinetix.com
                          sk@musikinetix.com
----------------------------------------------------------------------

------------------------------

Date:    Mon, 5 Jan 1998 00:13:31 -0500
From:    Stephen Kay 
Subject: bank select help

>I know that the solution to this is simple but I'm somewhat stumped on a=
n
>efficient way
>to select banks on my XG compatible synth (Yamaha Csx1).

>I know that I need to send an MSB value 0, followed by an LSB 32 and the=
n
a
>program change...

>could someone demonstrate how to format this into one message to send
>midiout
>(preferably someone who uses bank select messages on an XG device)

>PS I searched High and low for a comprehensive explanation of what MSB a=
nd
>LSB are
>and couldn't find anything!  Everyone assumes so much in their tutorials=
=2E

Simple explanation:
Since MIDI only goes from 0 - 127,  MSB and LSB is a way of combining 2
7-bit values into 1 14-bit value, for larger numbers.  MSB stands for
"most significant bit" and LSB for "least..."

Although I'm not that familiar with Yamaha gear, the example you give
above seems to have something missing.  MSB and LSB messages are "pairs"
of values.  In other words, you should send  MSB "0 n" and LSB "32 n" or
something like that, then the program change.

The easiest way to format such a bank change message is to use
a ctlout set to the proper channel, and then this in a message box:

"0 $1, 32 $2", where you use a pack to send the desired numbers
through the message box.  Or, you could just "hardwire" the values,
i.e. "0 0, 32 0" then follow it with a program change.

However, my documentation on the Yamaha MU-80 (XG) makes no mention of
LSB.  You simply send the MSB (controller 0) with the bank number, then =

a program change. i.e. "0 n" where "0" is controller 0 (bank change MSB)
and "n" is the bank number, and follow it
with a MIDI program change message.  I can't test this cause I don't
have one at the moment...

Hope this was of some help...

Stephen Kay
----------------------- The MegaMAX Collection -----------------------
  Over 30 Max objects for the creation of more professional looking, =

         feeling, and functioning patchers and applications.
                      http://www.musikinetix.com
                          sk@musikinetix.com
----------------------------------------------------------------------

------------------------------

Date:    Sun, 4 Jan 1998 22:59:11 -0800
From:    David Zicarelli 
Subject: Finder and standalones

JohnBrit  writes:

>Anyway, can anyone tell me why, when I have made a stand alone app. from a
>collective that all of my Max files display the name of my new app in the
>"kind" field of Finder windows?

Because the new app is the most recent one with the creator
linked to all of your Max files. If you use a creator other
than 'max2' for your standalone app, this won't happen.

David Z.

------------------------------

Date:    Sun, 4 Jan 1998 23:20:01 -0800
From:    David Zicarelli 
Subject: Re: msp and polyphony

Kevin Walker  writes:

>Suppose I've created an msp instrument and I want two or more of them to
>sound at once (in response to, say, a score reader or midi messages).
>What's the best way to do this?

Without going into any details, I would refer you to the
MSP Tutorials 19 and 20, and the polyphonic versions of the
synth~ and samp~ in the MSP Examples. The former are a bit
simpler than the latter.

>Put the instrument in a subpatch; create several instances of this
subpatch;
>feed the score output (or midi messages) through another subpatch
responsible
>for allocating voices and making sure the extra copies of the instrument
>are not eating cpu time when they are not playing.

I don't think that worrying about the CPU usage of non-playing
voices is going to buy a lot, since presumably you need as
much CPU as the maximum number of voices you want to play,
and you probably don't have a choice about what you're going
to do with the CPU when you're playing less than the maximum
number of voices (unless you're trying to maximize the speed
of a file transfer while the music is playing).

David Z.

------------------------------

Date:    Mon, 5 Jan 1998 01:40:13 -0800
From:    David Zicarelli 
Subject: Re: Question regarding use of Quicktime Movie in MAX

morley robertson  writes:

>I am trying to build a patch which simulates a 'thermin', responding to
>vertical and horizontal mouse movement.  The patch intends to simulate a
>particular function of the software Hyperprism. Its pitch is controlled
>by the "rate x y" message, where x and y are the ratios of playback speed.
>The quicktime movie (sine tone) is actually an AIFF file converted to a
>movie with no video track. In building this patch, I have faced a problem.
>>Based on the documentation of the "movie" object alone, I could not find
>a way to make the quicktime movie/sound loop back on itself.

I know this is unfair and blatant self-promotion but it's hard for me
to resist saying that such an application could be constructed in
about a minute using MSP. In any event, I looked into the possibility
of looping movies, and it was very easy to add to the "playbar" object.
So I'll sneak it into the 3.5.9 update, since I am still waiting for
some files from Opcode before I can release it.

In the meantime, anyone interested in trying playbar to do movie
looping can download a new object at

ftp://ftp.cycling74.com/playbar.hqx

I also verified that one can control the rate of a movie while it
is looping under playbar control by directly sending the rate
message to an imovie object.

David Z.

------------------------------

Date:    Mon, 5 Jan 1998 19:33:12 +0000
From:    BUYO-BUYO-IGOR 
Subject: mousetheremin

BUYO-BUYO-IGOR@SaRiGaMa's Oil Vending Orchestra writing..

Looping the aiff thangs...
yeah I also want to know the simple way to do it on MAX.
This is not an direct answer...
but as an alternative what about QT-Atomic-Editor?
It seems to make "creating your original QT-musical-intrument
from aiff-files" possible..but I only could create the extention....
does somebody know how to call the new instrument from MAX?

BTW.
This guy has a mousetheremin(max version) on his site already:
http://www.din.or.jp/~onoue/
....but he's not using mov. nor aiff....it just MIDI-oriented.

Automatic digest processor wrote:

> Date:    Sun, 4 Jan 1998 18:59:16 +0900
> From:    morley robertson 
> Subject: Question regarding use of Quicktime Movie in MAX

>  In building this patch, I have faced a problem.  Based on the
> documentation of the
> "movie" object alone, I could not find a way to make the quicktime
> movie/sound loop
> back on itself.

------
BUYO-BUYO-IGOR
SaRiGaMa's Oil Vending Orchestra
http://www.mars.dti.ne.jp/~buyobuyo
gianthead@bigfoot.com

------------------------------

Date:    Mon, 5 Jan 1998 13:16:38 +0100
From:    Andreas Weixler 
Subject: Re: display the name of my new app

>  Anyway, can anyone tell me why, when I have made a stand
>  alone app. from a collective that all of my Max files
>  display the name of my new app in the "kind" field of
>  Finder windows?
>
>  John Williams.

The reason is that in Your standalone.app is a max-player included
within the creation date of the day You made this app. The Mac OS is
always looking for the newest version of a software, and therefore
Your app is recognized as the newest Max.Version, which could be
found. If You click now on any Max-patch, Your MAX-Version will not
be opened anymore but..Your Newst Max-Stand-Alone-App and it will
play the Max-patch as a Max-player.

To get aorund this: Change the Creation date BEFORE the date of the
MAX Programm You use. You can do this with ResEdit or some other
Apps, You might have.

best wishes

--------------------------------------------------------------------------------
 -------
|   Andreas Weixler, composer, lecturer
|
--------------------------------------------------------------------------------
 -------
|    IEM - Institute for Electronic Music
|    University of Music and dramatic Art Graz
|    Austria
|   e-mail:     aweixler@iem.mhsg.ac.at
|-------------------------------------------------------------------------------
 --------
|   SAMT - Studio for Advanced Music & Media Technology
|       Bruckner- conservatory Linz / Austria
|    e-mail: aweixler@samt.co.at
--------------------------------------------------------------------------------
 -------
|   member of the directors board of
|       GEM - the society for electroacoustic music, Austria
----------------------------------------------------------------------

------------------------------

Date:    Mon, 5 Jan 1998 10:44:34 -0800
From:    Peter Elsea 
Subject: Bank select, etc

Johnny DeKam writes
>I'm somewhat stumped on an efficient way
>to select banks on my XG compatible synth (Yamaha Csx1).
>I know that I need to send an MSB value 0, followed by an LSB 32 and then a
>program change... could someone demonstrate how to format this into one
>message to send
>midiout
>PS I searched High and low for a comprehensive explanation of what MSB and
>LSB are and couldn't find anything!  Everyone assumes so much in their
>tutorials.

They are talking about control change MSB and LSB.
MSB means most significant byte. In MIDIland it is the top 7 bits of a 14
bit number. Control changes 0-31 are defined as MSBs, 32-63 are LSBs.
Control change 0 is defined as Bank Select, control change 32 is the LSB.
The official spec is to send the MSB, LSB, Program.
A few synthesizers insist on a control 0 with data 0, then control 32 with
the bank number. Most are happy with just control 0 [bank]. Most need a
prgram change before the bank switch takes, some (such as the QS7 I am
currently playing with) change immediatedly.
Since the channel number needs to be imbedded in control change mesages, I
suggest you use ctlout instead of midiout.

 ryohros shouts
>PLEASE,  SOMEBODY,  HOW CAN I MAKE A NUMBERBOX FLOW FROM
>0 TO 2047 IN 1 SECOND.

You can't. (Assuming you mean hit all the intervening numbers.) The
shortest timing period available in MAX is 1 millisecond, and as you well
know, there are only 1000 of them in a second. Even if you could, MIDI
probably couldn't keep up. To approximate your request use [line 0 5] with
an input list of [2047 1000]. That will count by 10s. You could go faster
(don't forget to loadbang a [; max interval 1] message box to speed up the
timing interval.) but the number box won't display the numbers.

Kevin walker asks
>Suppose I've created an msp instrument and I want two or more of them to
>sound at once (in response to, say, a score reader or midi messages).
>What's the best way to do this?

Subpatchers and borax. Investigate the use of the begin~ object to conserve
cpu cycles.

And from yet another wayward soul....
>Anyway, can anyone tell me why, when I have made a stand alone app. from a
>collective that all of my Max files display the name of my new app in the
>"kind" field of Finder windows?
You forgot to change the creator ID when you went through application maker.

Various questions over the holidays were about dealing with large batches
of data, saving sysex to files, etc. I suggest you check out Larray,
available as one of the Lobjects at ftp://arts.ucsc.edu/pub/ems . This
simply accumulates bulk data and saves it. I have made custom versions of
this for a few folks- let me know your application and I'll see if I can
add some useful features to the next release.

Peter Elsea
Electronic Music Studios
University of California, Santa Cruz
http://arts.ucsc.edu/EMS/Music/index.html
 elsea@cats.ucsc.edu

------------------------------

Date:    Mon, 5 Jan 1998 22:48:31 -0500
From:    Stephen Kay 
Subject: MegaMAX v1.2.1

Demos of MegaMAX v1.2.1 are now available at:

http://www.musikinetix.com/Download/Download.html

It incorporates a few minor bug fixes.

Regards,
Stephen Kay

----------------------- The MegaMAX Collection -----------------------
  Over 30 Max objects for the creation of more professional looking, =

         feeling, and functioning patchers and applications.
                          Demos available at:
                      http://www.musikinetix.com
----------------------------------------------------------------------

------------------------------

End of MAX Digest - 4 Jan 1998 to 5 Jan 1998
********************************************