EMUSIC-L Digest Volume 32, Number 3 This issue's topics: Re: MM 2.0.1? (3 messages) Keynote language (8 messages) mc202 (2 messages) gmidi and sdl (3 messages) filter perception (5 messages) SoundBlaster Pro. (2 messages) ROLAND GS system roland mc-50 microcomposer Your EMUSIC-L Digest moderator is Joe McMahon . You may subscribe to EMUSIC-L by sending mail to listserv@american.edu with the line "SUB EMUSIC-L your name" as the text. The EMUSIC-L archive is a service of SunSite (sunsite.unc.edu) at the University of North Carolina. ------------------------------------------------------------------------- Date: Sun, 15 Sep 1991 10:40:47 MDT From: Adam Schabtach Subject: Re: MM 2.0.1? > Are there problems using MIDI Manager programs with old address-the-serial- > port-directly MIDI programs on the Mac? As far as I can tell, the answer is, unfortunately, "it depends." It depends on how the older program behaves, mostly. Some coexist with MM better than others. Nick might be more experienced with this than I, but I'll take a shot anyway: > 1) Use a MIDI Manager editor/librarian, then switch, under Multifinder, to > a non-MIDI Manager sequencer. a) both using an interface on the same > serial port b) using different MIDI interfaces on each port: For scenario (a), I think that what will usually happen is the non-MM program will clobber the MM driver. So the MM ed/lib will suddenly be unable to talk to the hardware, but the sequencer will be okay. Not what you're after. For (b) everything should be okay. MM lets you use either or both ports; you can tell it to ignore either port (or both) and any other program will have free access to it. > c) QUITTING the MIDI > Manager application before switching to the non-MIDI manager application. You'll probably have to tell MM to free the port, if the non-MM program wants to use it. > By using two MIDI interfaces creatively, could I run a MIDI manager program > which uses the printer port (say MAX doing MIDI effects for example) and then > run my non-MIDI manager program (say sequencer) out the modem port to a > different > MIDI interface, route the output of that interface into the input of the MIDI > manager interface (for added MIDI effects). Probably. The MM program should run in the background fairly happily. It depends a bit on how fast your Macintosh is, of course. I haven't tried a setup like this, but I think it should work. --Adam ------------------------------ Date: Tue, 17 Sep 1991 10:54:26 +0000 From: Nick Rothwell Subject: Re: MM 2.0.1? > Are there problems using MIDI Manager programs with old address-the-serial- >port-directly MIDI programs on the Mac? That is to say, not using them >simultaneously w/ the patcher but as follows: I don't see any reason why this shouldn't work offhand, as long as you've disabled the appropriate side of the Apple serial port driver. One thing to note: there's a gentlemans' agreement in older MIDI software: if an old MIDI program uses its own drivers, it will generally drop the drivers completely when switched to the background under MultiFinder/Sys7.0. This means a sequencer will stop running, for example. >Just >how truly "multi-tasking" are MIDI manager programs? Can I word process to a >backdrop of sequenced MIDI music? Yes (assuming your word processor is well-behaved, i.e. not Microsoft-written). Or you can do what I do: run a MIDI Manager sequencer and a MIDI Manager editor/librarian, and open and save library files and patch-edit a synth which is being sequenced at the same time. The sequencer will require access to its event loop from time to time, to pass data from its non-interrupt-level heap data structures into the drivers. This all works even with MIDI clock running (although the MIDI spec is actually ambiguous about whether MIDI clocks are allowed in SysEx messages, so this is probably a facet of the packet delivery rather than deliberate). Nick. ------------------------------ Date: Tue, 17 Sep 1991 12:17:14 +0000 From: Nick Rothwell Subject: Re: MM 2.0.1? >For scenario (a), I think that what will usually happen is the non-MM program >will clobber the MM driver. So the MM ed/lib will suddenly be unable to >talk to the hardware, but the sequencer will be okay. Not what you're after. Some combinations will share hardware. MOTU's MIDI Time Piece configuration DA has to use its own drivers to address the MTP directly (for a reason which currently escapes me, in fact, now I think about how it does it...). It can be told to share the port, in which case it passes data but doesn't install its own drivers. This works, but it's not nice. >> c) QUITTING the MIDI >> Manager application before switching to the non-MIDI manager application. > >You'll probably have to tell MM to free the port, if the non-MM program wants >to use it. MIDI Manager drops its port drivers when the last application signs out. This includes the PatchBay. So, assuming a well-behaved non-MM application, you should be able to launch an MM application, use it, and then quit it, as long as it's all you use, and you don't switch back to the sequencer in the meantime. Nick. ------------------------------ Date: Mon, 16 Sep 1991 12:09:40 +0200 From: Adam Mirowski Subject: Keynote language Hello everybody! I have heard of a awk-like language for processing MIDI (real-time? midifiles?), named Keynote (?). Have someone seen it? Is it commercial or public domain (source?). Is it worth something? Thanks for your time. -- Adam Mirowski, mir@chorus.fr (FRANCE), tel. +33 (1) 30-64-82-00 or 74 Chorus systemes, 6, av.Gustave Eiffel, 78182 Saint-Quentin-en-Yvelines CEDEX ------------------------------ Date: Mon, 16 Sep 1991 08:23:00 EDT From: cbema!wbf@ATT.ATT.COM Subject: KEYNOTE Bon jour Adam, I am a member of the Keynote mailing list and have Keynote running on my AT&T PC6300. That's not the best platform for Keynote but it works great anyway. Below is the description of Keynote that new members get when they join the mailing list. Keynote is part of the AT&T Tool Chest and is intended to work best in a UNIX environment. To join, send mail to: keynote-request@blink.att.com I'll request the availability file from the (Keynote) archive server and pass that along to emusic. Bill Fox ------------------------------ .....Discussion on the list will include availability and porting issues, usage hints and tutorials, sharing of user experiences, and discussion of further development. If you don't know what Keynote is, here's a short description: Keynote is an awk-like programming language and graphical editor for MIDI data, with both algorithmic and realtime applications. The graphical interface is based on only a few built-in functions - the entire user interface of a complete music editor (piano-roll style with pop-up menus) is written in Keynote itself, and is hence completely customizable and extensible by the user. Although it works best on UNIX systems under the X Window System, Keynote is portable and runs on the Macintosh and Amiga. The mailing address for the list is: keynote@blink.att.com The mailing list is run as a 'reflector' - ANYTHING sent to this address is mailed out immediately to all members of the mailing list, with no filtering or moderation. Addition/removal requests should make use of the administrative address: keynote-request@blink.att.com That is the address you should give to anyone you think might be interested in joining the list. ARCHIVE SERVICE: An archive and distribution service has been setup, allowing the retrieval of files containing details on availability, documentation, examples, music, etc... Below is a summary of the machines on which Keynote can run, and the advantages/disadvantages of each. - Any 386-based machine running UNIX and X Windows with an MPU-compatible interface. A device driver for the MPU is provided with Keynote. Specifically, I know that it has run under AT&T's System V (release 3 and 4), SCO's Open Desktop, and SunOS (on the 386i, with minor changes to the MPU device driver). This is the best-supported environment for running Keynote. Memory requirements for Keynote are perhaps 2 meg, but running X Windows typically requires 8 meg or more for good performance. For good realtime performance under SVR3.2, you want enough real memory to minimize paging. Under SVR4, good realtime performance is guaranteed by using the realtime scheduler class. - Commodore Amiga (using it's own OS, not UNIX). No problems, except for not using the native Amiga menus (this is common to all machines - Keynote implements its own nested pop-up menus). - Apple Macintosh (using it's own OS, not A/UX). Because the mouse only has 1 button, pop-up menus are accessed by holding down the option key. At least a megabyte is needed. Does not use the MIDI Manager. Compilation requires the MPW programming environment. - Any UNIX machine running X Windows, using a serial interface running at normal baud rates. The Key Electronics MS-114 is an RS232-to-MIDI box ($229) that does baud-rate conversion. Ideally, you run the serial interface at 38.4Kbaud, eliminating throughput problems. However, for MIDI-output-only applications, it can be run at 19.2 or 9.6Kbaud. (Since there is no flow control, MIDI input can be lost at those rates.) The MS-114 has been used (at 38.4Kbaud) with Keynote on SGI and Sun workstations. - Any UNIX machine running X Windows, with a serial interface that can be set to the exact MIDI baud rate. This kind of system requires only a small amount of extra hardware (similar to the interfaces used on Macs and Amigas). SPARCstations are capable of being used in this way. - Atari ST. The last Keynote version I compiled on the ST was 3.0, using the Megamax compiler. The graphics of 4.* have not yet been ported, although there are a couple of people who claim to have it "all but debugged". - Any PC-compatible under DOS with an MPU-compatible interface. Graphics have been ported (using both Turbo C and Zortech C), but DOS's memory limitations make the result virtually unusable. If you compile Keynote without the graphics (there is a #define to do it) and use it in text mode only, it is much more usable. Someone reported that with a custom graphics driver (presumably using less memory), that memory was not a problem. Keynote makes an attempt to "page" phrases out to disk when memory gets tight, but this is a hack I suspect I will remove at the first opportunity. Basically, I consider the DOS version of Keynote a dead end. However, there is no reason that a port to Windows 3.0 (or some other memory-expanding environment) cannot work quite well. All you really need is a couple megabytes of address space. ############# # The following is 'summary' from the keynote-archive. ############# The following describes some of the more interesting items in the Keynote mailing list archives. Use the 'list' request of the keynote-archive server to get a current and complete list of the files in the archive. The order in this summary is chronological, by the date the items were first put in the archive. --------------------------------------------------------------------- language.troff (6/29/91) This is troff source for the Keynote language reference manual. It's very terse, but is a complete description of the language and all built-in features. It does not describe the large library of user-level functions or graphical editor operations, since none of that is built into the actual language. language.ps (6/29/91) Postscript version of language.troff described above. changes.* (6/29/91) These files (e.g. changes.4.2, changes.4.3, etc.) describe the changes in recent versions of Keynote. availability (6/29/91) Details on availability of Keynote. music.tjt1 (7/7/91) A Standard MIDI File containing "Autograph" by Tim Thompson. It is designed to be played on a TX81Z, and will be difficult to use on other synths. Contains an algorithmic solo done with Keynote. ------------------------------ Date: Mon, 16 Sep 1991 19:12:49 +0200 From: Adam Mirowski Subject: Re: Keynote Thanks for your information, Bill! I just send a message to the request address, asking for subscription. How much does Keynote cost in fact (I hoped it was free..) ? -- Adam Mirowski, mir@chorus.fr (FRANCE), tel. +33 (1) 30-64-82-00 or 74 Chorus systemes, 6, av.Gustave Eiffel, 78182 Saint-Quentin-en-Yvelines CEDEX ------------------------------ Date: Mon, 16 Sep 1991 13:10:00 EDT From: cbema!wbf@ATT.ATT.COM Subject: availability from keynote archive As I promised.... Bill Fox (En France', c'est Guillaume Renard!) ############# # The following is 'availability' from the keynote-archive. ############# Keynote version 4.1 is now available in the AT&T UNIX System Toolchest. The Toolchest contains the complete source code for Keynote, with good machine-dependent support for the X Window System, Macintosh, and Amiga computers. The Toolchest prefers to distribute source code only, via uucp, although binaries for the Macintosh and Amiga are available on special request. Initial registration for the Toolchest is $100, and Keynote is $100. For more information on the Toolchest, dial 1-908-522-6900 at 1200/2400 bps and login as "guest", or mail to tcadmin@pluto.att.com, or call 1-908- 580-4124. Customers in Europe should address Toolchest inquiries to: AT&T UNIX Software Operation Europe, International House, Ealing Broadway, London W5 5DB, England. Phone: +44 81 567- 7711. Fax: +44 81 567-2420. Email: tcadmin@uel.co.uk. Jon Backstrom has sub-licensed Keynote for binary redistribution. His email address is viking@ux1.cso.uiuc.edu. If you have any questions, don't hesitate to contact me personally. If you purchase Keynote from the Toolchest, please send me email so that I can let you know about any upgrades that may be available (the software in the Toolchest is only updated once every year or so). ...Tim Thompson ...AT&T Bell Laboratories ...Room 3C-231 ...Crawfords Corner Rd. ...Holmdel, NJ 07733 ...(908)949-4339 (day) ...(908)363-0285 (night) ...tjt@twitch.att.com (email) ------------------------------ Date: Mon, 16 Sep 1991 19:38:25 GMT From: Mike Hoegeman Subject: Re: Keynote language In article <9109161009.AA05612@opus.chorus.fr> Adam Mirowski writes: >Hello everybody! > >I have heard of a awk-like language for processing MIDI yes it is awk-like, in flavor >(real-time? midifiles?), named Keynote (?). Have someone I do not know what you mean exactly by real-time but yes you can use it interactively and you can have it manipuilate midifiles or a mix of both. It also has a mouse based graphic interface integrated into the language. It's supposed to be pretty portable. I think it runs on suns, some flavor of 386 unix, and amiga's but take this with a grain of salt as it's second hand information. >seen it? Is it commercial or public domain (source?). Is >it worth something? It looks to be very much worth something, but i have not actually used it. It is not public domain, but it is available in source form. It is available via at&t toolchest. There is a usenix conference proceedings article which describes what it's like. I don't know the exact proceeding date the article appears. It's Somewhere in the 1990 or 1991 timeframe. For ordering information you can call the AT&T licensing number at 1-800-828-UNIX the cost is something like $100 for the licensing fee and $100 or $200 for the source. The $100 licencesing fee is a one time thing so if you order something else from the toolchest you do not have to pay for that again. The author (tim thompson) has the email address is tjt@blink.att.com. I would recommend anyone to get a hold of the usenix article first before you deluge him with questions, or ask me any specific question you might have and i can go look it up in the article. (it's at home right now). If I get questions about keynote I will post the specific usenix publication the article appears in. mike hoegeman, mh@awds.imsd.contel.com -- ------------------------------------------------------------------------------- Mike Hoegeman email: mh@awds.imsd.contel.com tel: (818)706-4145 Contel Federal Systems 31717 La Tienda Dr, Westlake Village CA. 91359 ------------------------------ Date: Mon, 16 Sep 1991 15:57:00 EDT From: cbema!wbf@ATT.ATT.COM Subject: Re: Keynote > Thanks for your information, Bill! > I just send a message to the request address, asking for subscription. > How much does Keynote cost in fact (I hoped it was free..) ? > Adam Mirowski, mir@chorus.fr (FRANCE), tel. +33 (1) 30-64-82-00 or 74 > Chorus systemes, 6, av.Gustave Eiffel, 78182 Saint-Quentin-en-Yvelines CEDEX Initial registration for the Toolchest is $100, and Keynote is $100. Bill ------------------------------ Date: Tue, 17 Sep 1991 11:28:03 +0200 From: Adam Mirowski Subject: Re: Keynote language Mike Hoegeman writes: >There is a usenix conference proceedings article which describes what >it's like. I don't know the exact proceeding date the article appears. >It's Somewhere in the 1990 or 1991 timeframe. I did found it in our library. Here is the reference: USENIX Association, "Proceedings of the Winter 1990 USENIX Conference, January 22-26, 1990 Washington, D.C., USA": "Keynote - A Language and Extensible Graphical Editor for Music", Tim Thompson, AT&T Bell Laboratories, p.89-100 Thanks for the pointer, Mike! -- Adam Mirowski, mir@chorus.fr (FRANCE), tel. +33 (1) 30-64-82-00 or 74 Chorus systemes, 6, av.Gustave Eiffel, 78182 Saint-Quentin-en-Yvelines CEDEX ------------------------------ Date: Tue, 17 Sep 1991 10:12:41 EDT From: blink!tjt@ATT.ATT.COM Subject: Re: Keynote language > It's supposed to be pretty portable. I think it runs on suns, some > flavor of 386 unix, and amiga's but take this with a grain of salt as The best environment is a 386 with an MPU interface running UNIX and X Windows. The Amiga and Mac are second best. An Atari version will be Real Soon Now. > There is a usenix conference proceedings article which describes what > it's like. I don't know the exact proceeding date the article appears. The best summary description is in COMPUTING SYSTEMS (Journal of the USENIX Association), Vol 3 No 2, Spring 1990. BTW, that entire issue is devoted to music (with articles by Peter Langston and Michael Hawley), and is accompanied by a CD. Order from Computing Systems, Univ. of Calif. Press, 2120 Berkeley Way, Berkeley, CA 94720, phone number is +1-415-642-4247. My normal offer: if you want a free hardcopy package with complete documentation on Keynote, send me your postal address. ...Tim Thompson...AT&T Bell Labs/Holmdel/NJ...tjt@blink.att.com... ------------------------------ Date: Tue, 17 Sep 1991 19:24:21 EDT From: blink!tjt@ATT.ATT.COM Subject: Keynote realtime examples For those interested, here are examples of Keynote code for realtime processing. These are imitations of the examples that were presented in an article on MAX programming in the August 1991 issue of Electronic Musician (a great article if you're interested in the nuts and bolts of MAX programming, by the way). They are *heavily* commented (almost 3/4 of the lines) to explain what's going on. If you eliminate all the comments, I think they compare quite favorably to the complexity of the MAX examples - I think it's interesting to see two completely different ways of doing the same thing. If you'd like to see algorithmic examples, let me know. ...Tim Thompson...tjt@blink.att.com... ############################################################# # doubler() - An imitation of the MAX example on page 54 # of the August 1991 Electronic Musician magazine. # # Purpose: Take each incoming MIDI note and play it on both # channel 1 and channel 2. # # Usage: Invoke "doubler()" at the Keynote interactive shell. ############################################################# function doubler() { # Set things up so whenever a MIDI note-on or note-off # message arrives, we invoke the function doubleit(), # passing the received note as an argument interrupt(doubleit, NOTEON | NOTEOFF ) # When Merge=1 (the default), MIDI input is automatically # echoed to MIDI output. In this case we want to do all # the MIDI output ourselves. Merge=0 # Enter the realtime mode, during which MIDI I/O and other # realtime things happen (like invocation of the interrupt function # established above). The realtime() function will not return # until a console key is pressed, the default method for # terminating the realtime mode. I.e. everything happens here. realtime() } # The argument passed to this function is the note we received on MIDI input. function doubleit(nt) { nt.chan = 1 # Set its MIDI channel. sched(nt,0) # Schedule the note for playing via MIDI output, # at a time 0 clicks into the future (i.e. Now). nt.chan = 2 # Ditto for channel 2. sched(nt,0) } ############################################################# # stacking() - An imitation of the MAX example on page 54 # of the August 1991 Electronic Musician magazine. # # Purpose: Every time you press the sustain pedal, generate # random patch changes on channels 1, 2, and 3. # # Usage: Invoke "stacking()" at the Keynote interactive shell. ############################################################# function stacking() { # Set things up so whenever a MIDI message that begins with # the bytes b0,40,7f (a sustain-pedal-on message on channel 1) # is received, we invoke the function randstack(). interrupt(randstack, MIDIBYTES, 'xb0407f' ) realtime() # See above. This is where it all happens. } function randstack(n) { # Generate random patch changes on channels 1, 2, 3 randchange(1) randchange(2) randchange(3) } # Generate a random patch change message on the specified channel (c) function randchange(c) { # Pick a random number from 0 to 127 p = rand(128) # Schedule the MIDI output of the patch change message (0==Now) sched( patchchange(c,p), 0) # Print things so we can see what patches were chosen print "channel =",c," patch =",p } # A utility function which returns the patch change # message for a given channel/patch-number function patchchange(c,p) { return ( midibytes( 0xc0 | (c-1), p) ) } ############################################################# # suspatch() - An imitation of the MAX example on page 56 # of the August 1991 Electronic Musician magazine. # # Purpose: Whenever the sustain pedal is depressed, convert # each received MIDI note into a patch change message # (with the patch number equal to the note's pitch). # # Usage: Invoke "suspatch()" at the Keynote interactive shell. ############################################################# function suspatch() { # Set things up so whenever a MIDI message that begins with # the bytes b0,40 (a sustain-pedal message on channel 1) # is received, we invoke the function toggle(). interrupt(toggle, MIDIBYTES, 'xb040' ) # Invoke gotanote() whenever a note-on or note-off is received. interrupt(gotanote, NOTEON | NOTEOFF) Dopatch = 0 # Initially, sustain-pedal is up, so we're not # converting notes to patch changes (Dopatch==0). Merge = 0 # See above. realtime() # See above. } function toggle() { Dopatch = 1 - Dopatch # Toggle between modes } # The received note is passed as the argument to gotanote(). function gotanote(n) { if ( Dopatch ) { # We're in Dopatch mode, schedule the output of the # patch change message, using the received note's pitch # as the patch number. sched ( patchchange(n.chan,n.pitch), 0 ) } else { # We're not in Dopatch mode, so we just want to # echo notes normally as their received. We do it # manually because we've set Merge=0. sched(n,0) } } ############################################################# # dresh() - An imitation of the MAX example on page 59 # of the August 1991 Electronic Musician magazine. # # Purpose: To control interactive recording and playback of loops. # When a low C is pressed on the MIDI keyboard, sequence #1 # is armed, meaning that recording of sequence #1 will begin # as soon as the next key is pressed. Recording will then # continue until the same low C is pressed, at which time # recording stops and the sequence is played back in an # infinite loop (over which you can play and improvise). # A low C# similarly controls sequence #2, which is recorded # and played back independently from sequence #1. Note that # this implementation easily allows any number of sequences. # # Usage: Invoke "dresh()" at the Keynote interactive shell. ############################################################# function dresh() { # An array named Armed will contain flags that tell whether a # given sequence has been armed. (e.g. Armed[2]==1 will mean # that sequence #2 has been armed.) arrayinit(Armed) # An array named Start will contain the time at which # recording was started for a given sequence. arrayinit(Start) # When interrupts and scheduled events are set up, you can # optionally give them a name (tag). This tag can then be # used to unschedule the event or disabled the interrupt. # An array named Tag will be used to store these tag names. arrayinit(Tag) Tag[1] = "1" ; Tag[2] = "2" # Set things up so that when a low C is pressed, we call seqarm(1). # Ditto for a low C#, which will call seqarm(2). interrupt( "{seqarm(1)}", NOTEON, 'co0' ) interrupt( "{seqarm(2)}", NOTEON, 'c#o0' ) realtime() # See above. This is where it all happens. } function seqarm(n) { # if sequence n hasn't been armed yet, do so. if ( Armed[n] == 0 ) { # If a previously-recorded sequence is currently looping, # we want to turn it off, so we unschedule it. unsched(Tag[n]) # "Arming" means that we want to begin recording as soon # as the next note is pressed. So we set up an interrupt() # to start recording. The first argument to interrupt() here # is the statement to be executed when a note-on is received. # This statement is constructed by using string concatenation # (i.e. the '+' operator when applied to strings). If n=1, # the constructed first argument would be: "{seqstart(1)}" # The last argument specifies a tag associated with this # interrupt, allowing us to disable it later. interrupt( "{seqstart("+string(n)+")}", NOTEON, 0, 127, Tag[n] ) Armed[n] = 1 # Sequence n is armed and ready } else { # If the sequence is already armed, a second press # of the trigger note will stop recording and begin playback. # The special "Recorded" phrase variable contains all MIDI input # recorded since the beginning of the realtime() mode. We use cut() # to get the part of Recorded we want - everything from the saved # start time (Start[n]) to the current time (Now). We use strip() # to get rid of all the blank time at the beginning of the cut phrase. p = strip(cut(Recorded,Start[n],Now)) # Schedule the playback of the sequence (which is now in phrase p). # Playback starts immediately (Now), and is repeated with # a cycle time of Now-Start[n] (i.e. the length of the sequence). # The tag is specified to allow it to be terminated (i.e. when # the next recording is begun, see above). sched(p,Now,Now-Start[n],Tag[n]) Armed[n] = 0 # We're no longer armed } } function seqstart(n) { # Recording of sequence n is beginning, save the start time. Start[n] = Now # Disable the interrupt function, since only the # first note is supposed to trigger the start of recording. unsched(Tag[n]) } ------------------------------ Date: Tue, 17 Sep 1991 13:49:15 EDT From: ronin Subject: mc202 well, i've reverted to my old sig file... that's the last time *i'll* be reactionary. anyway... an mc202 shouldn't really cost more than $50, although to the right person it's worth quite a lot. got an arp? now you've got a cv sequencer for it, as well as an extra voice. quite nifty. which brings up a question: has anyone ever heard of a device that will translate the fsk tone generated by an analog patchdump and convert it to midi, for storage on a more modern tool? -------------< Extremism in the Pursuit of Good Noise is no Vice >------- Eric Harnden (Ronin) or The American University Physics Dept. Washington, D.C ------------------------------ Date: Wed, 18 Sep 1991 10:51:08 EDT From: ronin Subject: mc202 mario wrote me a direct note regarding the mc202, and i thought i'd reply public, just for the sake of info dissemination... about that interface: the mc202 has cv in/out and tape sync only. what it doesn't have, that those middle-period roland sequencers did have, is a funny-looking connector that looks like a baby centronics. this was roland's DCB (digital control bus), that was, as you say, roland's pre-midi proprietary control system. it was digital, not cv. i've got specs on it, and it transmitted rather synth-specific data streams, such as vcf, vca, and eg control. oops... now i can't actually remember if it was parallel or serial. i *think* it was parallel... i'll have to go look. -------------< Extremism in the Pursuit of Good Noise is no Vice >------- Eric Harnden (Ronin) or The American University Physics Dept. ------------------------------ Date: Tue, 17 Sep 1991 13:54:22 EDT From: ronin Subject: gmidi and sdl well, well... EM has been interesting recently. how many of you, for instance, are now in the process of rearranging your patch banks to accomodate the general midi standard? i, for one, think it's a great idea, although its limitations are clear. but what the hell... everybody always sits in the same place in the orchestra, too. emusic has, i think, been lacking a formalism for some time. the standard is only as restrictive as one makes it, and it does make use of the recognition that, quite frankly, there *are* valid categorizations of the sounds available from a synthesizer. the 'universal sound engine' it is not. what say? i know that this topic has arisen on rec.music.synth, but i tend not to check in there much. on another thread, did you notice the call by that composer (i forget his name) for pulling together some kind of usable language for emusic composition and orchestration? was i projecting, or was my old idea for a Sound Description Language (remember that one, old timers?) somewhere at the heart of that? -------------< Extremism in the Pursuit of Good Noise is no Vice >------- Eric Harnden (Ronin) or The American University Physics Dept. Washington, D.C ------------------------------ Date: Wed, 18 Sep 1991 11:44:20 +0000 From: Nick Rothwell Subject: Re: gmidi and sdl >well, well... EM has been interesting recently. how many of you, for >instance, are now in the process of rearranging your patch banks to >accomodate the general midi standard? i, for one, think it's a great >idea, although its limitations are clear. Well, I don't want to run through the thread that's been passing through r.m.synth recently. Suffice to say, Joe put up a good argument against it, in terms of product development, as well as the erosion of timbral diversity (I *think* that was the argument, although it was a while ago), and one that I tend to agree with. As far as my own work goes, GMIDI is as much use to me as a chocolate firegrate. Nick. ------------------------------ Date: Wed, 18 Sep 1991 09:39:59 EDT From: Joe McMahon Subject: Re: gmidi and sdl Yeah, I thought it sounded a little like SDL, but he seemd to be interested in fitting the synth architecture to a language, which I think is a Bad Idea. "I'm sorry, we can't use your new idea, it doesn't fit into the language..." --- Joe M. ------------------------------ Date: Tue, 17 Sep 1991 14:04:16 EDT From: ronin Subject: filter perception oh, and while i'm around and dredging things up... this summer i posted a thought and got no response... on the optimistic assumption that this was due more to low summer traffic than to the stupidity of the thought, allow me to reiterate: us analog fogies are aware that what really sets our beasties apart from one another is their filters. a sawtooth is a sawtooth is a sawtooth... it's the coloring afforded by that low pass that makes an arp sound different from a roland. but has anyone characterized this? i, for one, find roland machines to have a very 'full' sound, as opposed say, to the prophet, which seems 'flat' to me. are these differences readily described/explained by the specifics of their filter responses. is it possible to say (has it been said), for instance, that such-and-such an octave rolloff with such-and-such a curve 'shape' will necessarily be 'rounder'? -------------< Extremism in the Pursuit of Good Noise is no Vice >------- Eric Harnden (Ronin) or The American University Physics Dept. Washington, D.C ------------------------------ Date: Tue, 17 Sep 1991 20:47:41 EDT From: Brian Adamson Subject: Re: filter perception I wonder if anyone has really taken a good look at the frequency response of the filters in different synths, that is beyond knowing whether they roll off at 12 dB or 24 dB per octave. I suspect the passband responses (besides the roll-off) of VCF's vary somewhat. Note that the 'favorite' microphones and alot of people's 'favorite' speakers offer far from what might be termed a 'flat response'. Who knows how the peaks and valleys of a frequency response spectrum (or the spectrum of any sound) match up against the 'sweet spots' of the human ear. Who knows what Darwinian developments in the human auditory system evoke a pleasurable response in our neural centers (i.e. the sound of a bubbling spring, prey on the run, sexual coos??) Maybe there is some linkage here to Metlay's old theory on orgasm as a response to sound....... Brian Adamson ------------------------------ Date: Wed, 18 Sep 1991 10:01:36 EDT Reply-To: Electronic Music Discussion List Sender: Electronic Music Discussion List From: Jonathan Subject: Re: filter perception >us analog fogies are aware that what really sets our beasties apart from >one another is their filters. a sawtooth is a sawtooth is a sawtooth... it's >the coloring afforded by that low pass that makes an arp sound different >from a roland. but has anyone characterized this? i, for one, find roland >machines to have a very 'full' sound, as opposed say, to the prophet, which >seems 'flat' to me. are these differences readily described/explained by >the specifics of their filter responses. is it possible to say (has it been >said), for instance, that such-and-such an octave rolloff with such-and-such >a curve 'shape' will necessarily be 'rounder'? >Eric Harnden (Ronin) Well, as an analog fogy (fogie?) you will understand that you can realize a given filter using a number of different topologies, and these different realizations will probably sound different. For example, in the ususal 4-pole lowpass, you cascade two 2-pole filters, and the order theoretically shouldn't matter, but probably does. (In general, you want to realize the poles closest to the jw axis last, because these have higher Q and consequently higher output near resonance, which could saturate the next filter in the cascade.) For voltage-controlled filters, you usually use transconductance amplifiers (the current equivalent of an op-amp) to make voltage-controlled resistors, and there's many different ways to to this. Not to mention thermal drift, off-tolerance components, etc., etc. It's actually a marvel of analog design that they got two of the same boxes to sound alike, let alone stay in tune. I don't know if anyone has ever compared the filter circuits from different synths; the actual filter circuitry, I gather, was as guarded as today's digital algorithms. (Everybody knows how FM synthesis works, but has anybody ever seen the actual code for a DX-7?) The distinctive Moog sound was due largely to Bob Moog's patented filter circuit. As far as "flat" and "round" sounds, these seem fairly subjective, but perhaps a spectrum analyzer could quantify the difference. If you can find the actual filter transfer function(s) (they vary with control voltage) you could theoretically use a digital IIR filter to mimic it perfectly. ------------------------------ Date: Wed, 18 Sep 1991 08:20:00 EDT From: MICHAET@CLEMSON.BITNET Subject: Re: filter perception > a bubbling spring, prey on the run, sexual coos??) Maybe there > is some linkage here to Metlay's old theory on orgasm as a response > to sound....... > > Brian Adamson Interesting . . . What was his theory? Michael ------------------------------ Date: Thu, 19 Sep 1991 12:47:59 +0000 From: Nick Rothwell Subject: Re: filter perception >> a bubbling spring, prey on the run, sexual coos??) Maybe there >> is some linkage here to Metlay's old theory on orgasm as a response >> to sound....... >Interesting . . . What was his theory? Oh, Mike didn't have a theory. What he did have was some empirical measurements... :-) Ouch. That hurt. Nick. ------------------------------ Date: Tue, 17 Sep 1991 15:23:38 -0700 From: miguel@TXIKI.RADIOLOGY.ARIZONA.EDU Subject: SoundBlaster Pro. Hi there! I have heard about the release of the SoundBlaster Pro for AT-PC clones it has a Midi interface built in, is stereo (11 voices per channel) and it's extremly cheap (under $300?). Well the question is if it is worth it to buy it or not, I mean, is there any software (music composition, transcriptions, Midi sequencing, etc) that supports that board. Specially does any of the available software supports both the Midi and the synthetiser. If not wath other options do I have? Thanks in advance. - Miguel Parra - ------------------------------ Date: Wed, 18 Sep 1991 10:55:34 +0200 From: Adam Mirowski Subject: Re: SoundBlaster Pro. >I have heard about the release of the SoundBlaster Pro for AT-PC clones >it has a Midi interface built in, is stereo (11 voices per channel) >and it's extremly cheap (under $300?). Well the question is if it is worth >it to buy it or not, I mean, is there any software (music composition, >transcriptions, Midi sequencing, etc) that supports that board. Specially >does any of the available software supports both the Midi and the >synthetiser. If not wath other options do I have? I have heard that SB Pro's MIDI interface is still not compatible with the MPU-401, although it has become bidirectional. It should be supported by Windows Multimedia extension however. As for the sound, there are simply 2 YM3812 instead of one. So you can place a sound on the left, on the right or in the middle, if you use TWO voices to produce one sound. That will give probably some kind of chorusing too. Adlib Gold seems to be much more interesting: MPU-401 compatibility (please check however), 4-op FM sound with limited but true stereo - compatible with the YM3812, 12 bit DAC (but it doesn't seem to support old SB's digitized sound.) -- Adam Mirowski, mir@chorus.fr (FRANCE), tel. +33 (1) 30-64-82-00 or 74 Chorus systemes, 6, av.Gustave Eiffel, 78182 Saint-Quentin-en-Yvelines CEDEX Washington, D.C ------------------------------ Date: Wed, 18 Sep 1991 12:00:04 GMT From: Piet van Oostrum Subject: ROLAND GS system Hi, I am a beginning keyboarder and have bought a simple machine: a Roland E15. Nice sounds, and enough possibilities for what I and my family want to do with it. The keyboard does not have patch possibilities from the panel, but the midi implementation manual has a great number of parameters that can be changed by either Controller changes or SysEx messages. Unfortunately, the manual does not explain what all the parameters mean. Some are evident, like decay, attack etc. But others I don't understand, e.g. partial reserves, different LFO parameters. The reverb and chorus have a couple of parameters (reverb macro, reverb character or so) which can have values from 0-7. I have tried to plug some random numbers in it and got some weird effects. Yet I would like to know what I am doing. The sound system is the new Roland GS system, which I suspect is Rolands implementation of General Midi. I have also seen on Sound Canvas ads that that is also a GS machine. From the description of the JX1 I suspect that that one may also use GS sounds. My question: does anyone know more of the parameters of this system? -- Piet* van Oostrum, Dept of Computer Science, Utrecht University, Padualaan 14, P.O. Box 80.089, 3508 TB Utrecht, The Netherlands. Telephone: +31 30 531806 Uucp: uunet!mcsun!ruuinf!piet Telefax: +31 30 513791 Internet: piet@cs.ruu.nl (*`Pete') ------------------------------ Date: Wed, 18 Sep 1991 21:52:00 EDT From: Johnny Gunn - Aviator To Be Subject: roland mc-50 microcomposer I am interested in buying a stand-alone sequencer, and the Roland MC-50 MicroComposer looks interesting. What are your opinions on this piece of equipment? John Gunson ------------------------------ End of the EMUSIC-L Digest ******************************