Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!clyde!rutgers!cmcl2!brl-adm!umd5!uvaarpa!virginia!boole!pmy From: pmy@boole.UUCP Newsgroups: comp.sys.amiga Subject: Re: Amiga and MIDI Message-ID: <338@boole.acc.virginia.edu> Date: Wed, 2-Dec-87 12:12:27 EST Article-I.D.: boole.338 Posted: Wed Dec 2 12:12:27 1987 Date-Received: Sun, 6-Dec-87 15:31:07 EST References: <447@nuchat.UUCP> <32160@auc.UUCP> <528@otto.COM> <35179@sun.uucp> Organization: Academic Computing Center, University of Va. Lines: 41 Keywords: MIDI Amiga In article <35179@sun.uucp>, cmcmanis%pepper@Sun.COM (Chuck McManis) writes: > There are conflicts when you > multitask two MIDI programs but that is to be expected, one of them can't > get the serial port because the other one has it. This won't be a problem > for a while on the Mac or the ST (or even the IBM-PC for that matter.) There is a PD amiga .library which addresses this very problem. This library provides for the creation, deletion and management of MIDI "nodes" and the "routes" that connect them. There are two types of nodes: destination (receiving) and source (sending). Any number of sources may write to a destination, with automatic message merging. A source may write to any number of destinations, with automatic message copying (fan-out). Furthermore, the routes drawn between sources and destinations can be programmed to filter by message and/or channel, to transpose notes, and a few other things. Anyway, as to the multi-tasking problem, the library starts up by creating two resident task-nodes, MidiIn and MidiOut, which do the actual talking to serial.device. Any process which wants to speak/hear MIDI goes through these nodes (which, as mentioned above, handle all fan-in/fan-out), thus eliminating resource conflicts. All message handling is done in the traditional Amiga manner, with routines such as GetMidiMsg() and PutMidiMsg(). As a diagnosed MIDIot, I'm pretty excited about the possibilities this library offers. I'm in the process of writing MIDI filter and soft device modules which, through a graphic patch bay, can be interconnected in any conceivable manner. I've already written a polyrhythm generator which can tickle my synths directly, or be used to sync other MIDI tasks. I'd really like to see this library become a popular standard and trigger an explosion of modular PD MIDI stuff. If anyone's interested, I can send more info. -- Pete Yadlowsky Academic Computing Center University of Virginia e-mail: pmy@vivaldi.acc.virginia.EDU