[comp.sys.ibm.pc.hardware] PC midi card survey results

herbie@bruce.cs.monash.OZ.AU (Andrew Herbert) (10/22/90)

Following is information regarding midi cards for IBM PCs.

As well as the cards mentioned (Music Quest MQX-16S, Roland MPU-IPC),
Voyetra also make midi cards (v-22, v-24 and variations) as discussed in
a recent news release.

	Andrew
------------------------------------------------------------
From: mike@relgyro.Stanford.EDU (Mike Macgirvin)

	I use a Music Quest card with Chase Lock. I forget the exact model
  nomenclature, but it is the '16' (MQ-16 or something like that).

>	Is programming information available?

	Music Quest sells a book and some sample programs for about $40 U.S.

>	What software is available for the card?
>	What (other cards) is the card compatible with?

	The card is 'MPU-401' compatible (the going standard) so most MIDI
  software will work with it. I have had no compatibility problems.
	
>	What are the special or distinguishing features?
>		(e.g. n byte transmit/receive buffers)
	
	I don't know the buffer sizes. This card is distinguished by 'chase-
  lock synchronization'. This allows me to use my software sequencer as a
  multi-track recorder, synchronized with an analog 8-track recorder,
  giving me (virtually) 19 mixeable tracks (This is dependant on the actual
  MIDI hardware involved; your mileage may vary).

	4 channels	- drum machine
	8 channels	- synthesizer (multi mode)
	7 channels	- analog
	
	1 channel	- wasted analog click track to sync things

	There are other 'sync' cards. This one allows you to start the
  tape recorder anywhere (not just the beginning) and the MIDI sequencer
  will start up at the right place.

>	What is the approximate cost?

	$200 U.S. A basic card without sync costs about $100 U.S. A low
  cost sync card (the tape has to start from the beginning each time) is
  available for $150 U.S.

>Also, a general question: are these cards necessarily interrupt-driven?
>I have a terrible feeling I don't have any spare interrupt lines (com1,
>inport mouse, 8514/A clone).

  Most all cards are interrupt driven. You may be lucky on the AT, however,
  since it contains a few extra interrupts that aren't available on a PC.
  Even with a PC, you can sometimes get away with sharing an interrupt with
  the COM port, since most people don't use the modem at the same time they
  are writing songs...

------------------------------------------------------------
From: 6600bori%ucsbuxa@hub.ucsb.edu (Boris Burtin)

I recently bought an MQX-16S, manufactured by Music Quest, and am extremely
happy with it.  Just with the software supplied, and a simple MIDIEX send/
receive program, I was able to load and save patches from my ESQ-1 and do
real-time chase-lock syncing to tape - both audio and video - that means that
as the tape plays, anywhere, the computer reads the sync track and drives the
sequencer to play at that same spot, using song position pointer.  The card
only ran me $199.  Music Quest offers two programming packages with routines
for all the major languages for $39.95 each.  The card is configurable to 
run on several interrupts, but the default for all standard MIDI cards is
int2.  Hope that helps!

[and in a later letter]

I have not yet ordered the programming supplements, so I couldn't answer your
question about that.  I do know that you need some assembly language routines
to access the MIDI card - those I don't understand - I just use some routines
a friend of mine gave me.  As far as the included software, you are able to:
	- use it as a simple, 1-track sequencer
	- interpret MIDI info, or display it in hex
	- stripe SMPTE or song position pointer info on tape
	- read SMPTE or SPP from tape and sync an EXTERNAL sequencer to tape

those are the major features.  As far as I understand, Cakewalk Pro, among
other software, supports the MQX cards specifically, allowing you to use SMPTE.

------------------------------------------------------------
From: krisku@ironman.hut.fi

Hi!

You wanted to know some things about Midi interfaces for the PC.
Let me shortly tell you about what I have...

ROLAND MPU-IPC
--------------

This is the official Midi interface for the PC, XT and AT.
It is fully compatible with the MPU-401 (in fact the
MPU-IPC is a MPU-401 with PC interface). MPU stands for
Midi Processing Unit. It is pretty hard for me to say
how much it costs because Finland is pretty expensive, 
but I should guess something around $150-200.

Most software is made for use with the MPU-401 or
compatibles (I have heard about some MQX), so if you
have a MPU-401 you can use every kind of software unless
it is stated that a you MUST have a special card (like
AdLib, Soundblaster, CM32L or other similar products).

When I bought my MPU-IPC I only got with it a few sheets
of paper, including some hardware specifications and
a circuit diagram. I contacted the Finnish Roland-center
and from there I got a technical reference manual, which
was about 100 pages thick and included instructions on
how to program the card and several programming examples.

Hardware: the MPU-IPC consists of two pieces connected
to each other with a cable; the interface-card to put
into the computer and the actual MPU-unit where all
connectors are. The MPU-unit is 165*50*31 mm in size
and contains the following connectors:
	1 MIDI IN
	2 MIDI OUT (identical)
	1 TAPE IN (FSK SYNC)
	1 TAPE OUT (FSK SYNC)
	1 METRONOME OUT (if you find the built-in speaker to weak)
	1 MIDI SYNC (some MPU-IPCs don't have it!)

The MPU-IPC uses I/O ports 0330h, 0331h and IRQ2, but they can
all be changed with jumpers on the interface card. Most
programs allow you to change the addresses and IRQs used by
the program also.

Features of the MPU-401:
a) an intelligent interface allowing the HOST (computer) to
   perform other tasks while the MPU-401 is recording and/or
   playing. The MPU-401 operates as a 'background' processor 
   using interrupts to request data to and/or from the host.
b) because of the above, disk I/O, screen updates, and all
   kinds of other tasks can be performed while recording or
   playing MIDI data.
c) the MPU-401 functions as an 8 track MIDI data recorder, taking
   care of all aspects of recording and playing. Each track
   can be polyphonical and multichanneled. By using interrupts
   the MPU-401 requests data for every channel and also signals
   if there is some incoming data to be read from the port.
d) The MPU-401 internally takes care of TEMPO, BEATS PER MEASURE,
   METRONOME (with or without accents or quiet), RELATIVE TEMPO, 
   internal or external syncronization (miditiming clocks, Roland
   DIN sync or FSK sync). In addition the internal TIMEBASE
   can be set to one of seven different divisions per beat;
   48, 72, 96, 120, 144, 168 or  192.
e) the most commonly used functions are enabled at power up as
   defaults, but these values may be changed on the fly by the
   computer. The computer can become the conductor of the MPU-401
   and so change the tempo gradually or immediately in real time.
f) the MPU-401 contains 1 RECORD COUNTER, 8 PLAY COUNTERS and
   1 CONDUCTOR TIMER for timing special data, a MIDI IN TABLE which
   flags each incoming midi note on and clears it upon receiving
   note off or all notes off, 4 CHANNEL REFERENCE TABLES working
   like the midi in table but on outgoing notes. 8 PLAY BUFFERS
   which hold the next MIDI data to be sent for each internal track.
   A PROGRAM CHANGE BUFFER which holds the last midi program change
   since the most recent stop. A MIDI CHANNEL FILTER to allow only
   selected MIDI channels to pass, and a MIDI MESSAGE FILTER for
   screening out selected MIDI controllers. A programmable AUDIO
   METRONOME which will play any time signature with or without
   accents. etc, etc...
g) for simpler applications the MPU-401 also features a UART mode
   which turn off all intelligent commands in the interface and
   after that the interface can simply be used for receiving
   or sending raw MIDI data.
h) and much more...

As a conclusion it can be said that the MPU-401 is a very powerful
interface and it doesn't require too much to make a simple
sequencer program as the interface can take care of all timing
and processing. The computer need only to manage memory
and make sure that the MPU-401 gets all the the data it requires.

Many new games (especially from Sierra) nowadays include music
for several popular sound systems. If for example the MT-32
is listed in the game (the MT-32 is a pretty cheap multitimbral
synthesizer), then it's assumed that you have a MPU-401 compatible
MIDI interface in your computer so the game can access the synth.

I now realize that this became a rather long text, but I
hope you get something out of it. If you want to know more
about the feel very free to contact me about it...

With friendly greetings...    Kai Risku  -  krisku@niksula.hut.fi
------------------------------------------------------------

End of summary.