[comp.unix.i386] UNIX Driver for Roland MPU-401-IPC

ronb@otc.otca.oz.au (Ron Barrett) (04/11/90)

Does anyone know where I get get my hands on a UNIX driver for a Roland
MPU-401-IPC that'll be running in a 386 box. SCO Unix/Xenix or 386-ix drivers
preferred.

Thanks in advance

                Ron Barrett
		Network R&D
                |||| OTC ||
ACSnet: ronb@otc.oz        UUCP: {uunet,mcvax}!otc.oz!ronb
PHONE:  +61 2 287 4834     FAX: +61 2 287 4990

root@nebulus.UUCP (Dennis S. Breckenridge) (04/11/90)

In article <1400@otc.otca.oz> ronb@otc.otca.oz.au (Ron Barrett) writes:
> 
> Does anyone know where I get get my hands on a UNIX driver for a Roland
> MPU-401-IPC that'll be running in a 386 box. SCO Unix/Xenix or 386-ix drivers
> preferred.
> 
Contact the AT&T Toolchest folks at 1-201-522-6900. There is a package
called "keynote" that supports the MPU401 and provides a "AWK" like 
language for MIDI programming. It's not a perfect world, the timing 
does go awry after 6 or 7 bars. Apparently there will be a correction
for SVr4 (the kernel has a better timekeeper).

-- 
-----------------------------------------------------------------------------
Dennis S. Breckenridge  (604) 277-7413   dennis@nebulus.uucp           VE7TCP
               EMACS: Eight Megabytes And Constantly Swapping!
-----------------------------------------------------------------------------

tynor@prism.gatech.EDU (Steve Tynor) (04/11/90)

In article <1400@otc.otca.oz> ronb@otc.otca.oz.au (Ron Barrett) writes:
>
>Does anyone know where I get get my hands on a UNIX driver for a Roland
>MPU-401-IPC that'll be running in a 386 box. SCO Unix/Xenix or 386-ix drivers
>preferred.

Send mail to psl@bellcore.com (Peter Langston). He has a very nice toolset of
MIDI/Unix tools (including a MPU device driver). All his stuff was written for
Suns (3's and 386i's), but I would think that the driver could be modified to
run on other flavors of Unix. I got my original version from the UUNET
archives, but I think there has been an update since then.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
inherit STD_DISCLAIMER;
                     
    Steve Tynor
    Georgia Tech Research Institute
    Artificial Intelligence Branch
    tynor@prism.gatech.edu

t31662k@kaira.hut.fi (Andreas Gustafsson) (04/11/90)

In article <1400@otc.otca.oz> ronb@otc.otca.oz.au (Ron Barrett) writes:
> Does anyone know where I get get my hands on a UNIX driver for a Roland
> MPU-401-IPC that'll be running in a 386 box. SCO Unix/Xenix or 386-ix drivers
> preferred.

A MPU-401 driver for System V 3.2 was posted to the net by Tim
Thompson (tjt@twitch.att.com) some time ago.  I have ported it to SCO
Xenix 386.  If anyone wants the Xenix version, send me mail; if there
is sufficient interest I might post it.  Please note that for SCO Unix
and other non-Xenix systems, Thompson's original driver is probably
more appropriate.
-- 
Andreas Gustafsson
Internet: gson@niksula.hut.fi
Voice: +358 0 563 5592

tjt@cbnewsh.ATT.COM (timothy.j.thompson) (04/12/90)

From article <1990Apr11.112224.13861@nebulus.UUCP>, by root@nebulus.UUCP (Dennis S. Breckenridge):
> In article <1400@otc.otca.oz> ronb@otc.otca.oz.au (Ron Barrett) writes:
> Contact the AT&T Toolchest folks at 1-201-522-6900. There is a package
> called "keynote" that supports the MPU401 and provides a "AWK" like 
> language for MIDI programming. It's not a perfect world, the timing 
> does go awry after 6 or 7 bars. Apparently there will be a correction
> for SVr4 (the kernel has a better timekeeper).

What kind of system were you running it on?  On a 20Mhz 386 it keeps pretty
good time for an arbitrarily long time, as long as the system has sufficient
memory to prevent paging and is otherwise idle (e.g. uucico doesn't start up).
There's no guarantees, though, so it's not a system to be used on stage.
I have also seen it work well on a 16Mhz 386, although I think that may start
to get marginal.  As you say, SVR4 has hooks to guarantee better realtime
control, although I have yet to try them out (or even get details on exactly
what they are).

    ...Tim Thompson...AT&T Bell Labs/Holmdel/NJ...tjt@twitch.att.com...

tjt@cbnewsh.ATT.COM (timothy.j.thompson) (04/12/90)

In article <1400@otc.otca.oz> ronb@otc.otca.oz.au (Ron Barrett) writes:
>Does anyone know where I get get my hands on a UNIX driver for a Roland
>MPU-401-IPC that'll be running in a 386 box. SCO Unix/Xenix or 386-ix drivers
>preferred.

I posted a System V/386 device driver for MPU-compatible interfaces several
(6?) months ago.  It's available in the ucsd archives, I think.  I'll mail
a copy to anyone who wants it.  It supports only the 'uart' mode of the MPU.

    ...Tim Thompson...AT&T Bell Labs/Holmdel/NJ...tjt@twitch.att.com....

root@nebulus.UUCP (Dennis S. Breckenridge) (04/12/90)

tjt@cbnewsh.ATT.COM (timothy.j.thompson) writes:

>What kind of system were you running it on?  On a 20Mhz 386 it keeps pretty
>good time for an arbitrarily long time, as long as the system has sufficient
>memory to prevent paging and is otherwise idle (e.g. uucico doesn't start up).

I have tried it on a AT&T 6386 16mhz, AT&T 6386E 20mhz, Consensys 386 25mhz.
It's more than a context switch that knocks the timing out. As it starts 
chewing up the CPU it gets less run time. I have tried it with a Caching
disk controller and did see an improvment. 
SysVR4 has a millitick function that times out at a kernel tick as opposed
to a process tick. This will give 1/100 of a second resolution. Your right
about trying to use it on stage. I too, wait for the SVR4 version, what you
have written so far is excellent!
-- 
-----------------------------------------------------------------------------
Dennis S. Breckenridge  (604) 277-7413   dennis@nebulus.uucp           VE7TCP
               EMACS: Eight Megabytes And Constantly Swapping!
-----------------------------------------------------------------------------